Beiträge von Blood.

    ocmd:stats(playerid)
    {
    new string[50],string2[128],pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof(pname));
    new Float:kdrate = Spieler[playerid][Kills]/Spieler[playerid][Deaths];
    format(string,sizeof(string),"Stats von %s",pname);
    new player = GetPlayerScore(playerid);
    format(string2,sizeof(string2),"Name: %s\nLevel: %d\nGeld: %d\nSkin ID: %d\nKills: %d\nDeaths: %d\nK/D Rate: %.2f",pname,GetPlayerScore(playerid),GetPlayerMoney(playerid),player,Spieler[playerid][Kills],Spieler[playerid][Deaths],kdrate);
    ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,string,string2,"Ok","");
    return 1;
    }


    Wenn sich der Dialog öffnet & ich auf OK Drücke respawne ich, worran liegt das?


    MFG

    Hallo.
    Könnte mir wer erklären/zeigen, wie man abfragt, welche Waffen der Spieler hat & Muniton dazu?
    Und wie man diese ausgibt?


    Also es gibt ja Slots und dann halt
    Slot 0: [Waffen ID: 24 | Munition: 400] (( Beispiel ))
    Slot 1:
    Slot 3:
    Slot 4:
    Slot 5:


    So was in der Art halt..


    MfG

    Hi. ich wollte fragen, warum dieser Befehl nicht funktioniert?


    ocmd:makeadmin(playerid, params[])
    {
    new pID, adm, pname[MAX_PLAYERS], name[MAX_PLAYERS], string1[128], string2[128];
    if(Spieler[playerid][Admin] < 5)return SendClientMessage(playerid,Weiss,"{FF0000}Fehler {FFFFFF}Du bist kein Projektleier.");
    if(sscanf(params,"ud",pID,adm))return SendClientMessage(playerid,Weiss,"{FF0000}Fehler: {FFFFFF}/makeadmin [ID] [Adminlevel]");
    GetPlayerName(playerid,name,sizeof(name));
    GetPlayerName(pID,pname,sizeof(pname));
    if(sscanf(params,"d",adm) == 0)
    {
    format(string1,sizeof(string1),"Du hast %s zum Spieler gemacht.",pname);
    format(string2,sizeof(string2),"%s hat dich zum Spieler gemacht.",name);
    }
    if(sscanf(params,"d",adm) == 1)
    {
    format(string1,sizeof(string1),"Du hast %s zum Volunteer gemacht.",pname);
    format(string2,sizeof(string2),"%s hat dich zum Volunteer gemacht.",name);
    }
    if(sscanf(params,"d",adm) == 2)
    {
    format(string1,sizeof(string1),"Du hast %s zum Supporter gemacht.",pname);
    format(string2,sizeof(string2),"%s hat dich zum Supporter gemacht.",name);
    }
    if(sscanf(params,"d",adm) == 3)
    {
    format(string1,sizeof(string1),"Du hast %s zum Administrator gemacht.",pname);
    format(string2,sizeof(string2),"%s hat dich zum Administrator gemacht.",name);
    }
    if(sscanf(params,"d",adm) == 4)
    {
    format(string1,sizeof(string1),"Du hast %s zum Head Administrator gemacht.",pname);
    format(string2,sizeof(string2),"%s hat dich zum Head Administrator gemacht.",name);
    }
    if(sscanf(params,"d",adm) == 5)
    {
    format(string1,sizeof(string1),"Du hast %s zum Projektleiter gemacht.",pname);
    format(string2,sizeof(string2),"%s hat dich zum Projektleiter gemacht.",name);
    }
    return 1;
    }


    MfG

    if(IsPlayerAnAdmin(pID,1)) return SendClientMessage(playerid,-1,"Du kannst kein Admin kicken");


    ehhh falsch? ER will das z.B.
    Adminlvl 4 nicht 5 kicken kann
    aber Admnilevel 5 4..


    Hier:
    if(Spieler[playerid][Admin] > Spieler[pID][Admin])
    Also wen Spieler der den CD ausführt (playerid) ein größeren Admlevel hat als die ID die eingegeben wird, (pID) soll er ausgeführt werden.

    Ich bekomme bei der folgenden Zeile ein Warning 'Tag Mismatch'
    if(!vehid == 425 || 520 || 432 || 447 && Spieler[playerid][Admin] < 5)


    Was genau ist falsch?



    MfG

    Hallo
    nach einem Relogg ist das ganze Geld weg, woran kann das liegen?


    Hier die Codes:
    public OnPlayerDisconnect(playerid, reason)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"Spieler/%s.ini",pname);
    if(fexist(accFormat) && Spieler[playerid][eingeloggt])
    {
    dini_IntSet(accFormat,"skin",Spieler[playerid][skin]);
    dini_IntSet(accFormat,"Premium",Spieler[playerid][Premium]);
    dini_IntSet(accFormat,"Mute",Spieler[playerid][Mute]);
    dini_IntSet(accFormat,"Mutetime",Spieler[playerid][Mutetime]);
    dini_IntSet(accFormat,"Kills",Spieler[playerid][Kills]);
    dini_IntSet(accFormat,"Deaths",Spieler[playerid][Deaths]);
    dini_IntSet(accFormat,"Admin",Spieler[playerid][Admin]);
    dini_IntSet(accFormat,"Geld",Spieler[playerid][Geld]);
    dini_IntSet(accFormat,"Warns",Spieler[playerid][Warns]);
    dini_IntSet(accFormat,"Spielzeit",Spieler[playerid][Spielzeit]);
    dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
    }
    Spieler[playerid][eingeloggt] = 0;


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    new string[256];
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"Spieler/%s.ini",pname);
    if(response)
    {
    switch(dialogid)
    {
    case DIALOG_LOGIN:
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden! Du kannst dich nun Einloggen.","Abbrechen","Weiter");
    return SendClientMessage(playerid,0xFFFFFFFF,"Du hast kein Passwort angegeben!");
    }
    if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
    {
    Spieler[playerid][skin] = dini_Int(accFormat,"skin");
    Spieler[playerid][eingeloggt] = 1;
    Spieler[playerid][Premium] = dini_Int(accFormat, "Premium");
    Spieler[playerid][Mute] = dini_Int(accFormat, "Mute");
    Spieler[playerid][Mutetime] = dini_Int(accFormat, "Mutetime");
    Spieler[playerid][Kills] = dini_Int(accFormat, "Kills");
    Spieler[playerid][Deaths] = dini_Int(accFormat, "Deaths");
    SetPlayerScore(playerid, dini_Int(accFormat, "Score"));
    //GivePlayerMoney(playerid, dini_Int(accFormat, "Geld")-GetPlayerMoney(playerid));
    Spieler[playerid][Warns] = dini_Int(accFormat, "Warns");
    GivePlayerMoney(playerid, dini_Int(accFormat, "Geld"));
    Spieler[playerid][Spielzeit] = dini_Int(accFormat, "Spielzeit");
    Spieler[playerid][Admin] = dini_Int(accFormat, "Admin");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dich {CC0000}Eingeloggt{FFFFFF}.");
    DarfVeh[playerid] = 1;
    SpawnPlayer(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden! Du kannst dich nun Einloggen.","Abbrechen","Weiter");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast ein falsches Passwort eingegeben!");
    }
    }
    case DIALOG_REG:
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Abbrechen","Weiter");
    return SendClientMessage(playerid,0xFFFFFFFF,"Dein Passwort ist zukurz!");
    }
    dini_Create(accFormat);
    dini_Set(accFormat,"Passwort",inputtext);
    dini_IntSet(accFormat, "Admin" , 0);
    dini_IntSet(accFormat, "Score", 0);
    dini_IntSet(accFormat, "Geld", 0);
    dini_IntSet(accFormat, "Warns", 0);
    dini_IntSet(accFormat, "Spielzeit", 0);
    dini_IntSet(accFormat, "Premium", 0);
    dini_IntSet(accFormat, "Mute", 0);
    dini_IntSet(accFormat, "Mutetime", 0);
    dini_IntSet(accFormat, "Kills", 0);
    dini_IntSet(accFormat, "Deaths", 0);
    Spieler[playerid][skin] = 1;
    Spieler[playerid][Admin] = 0;
    Spieler[playerid][eingeloggt] = 1;
    SpawnPlayer(playerid);
    DarfVeh[playerid] = 1;
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir einen Account auf Rambo Deathmatch angelegt. {CC0000}Viel Spaß!");
    }
    }
    }
    else
    {
    switch(dialogid)
    {
    case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Bitte logge dich ein","Abbrechen","Weiter");
    case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","{FFFFFF}Dein Account wurde {CC0000}nicht{FFFFFF} gefunden. Wir freuen uns das du unseren\nServer gefunden hast. Bitte gib dein Passwort ein!","Abbrechen","Weiter");
    }
    }
    if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
    {
    Spieler[playerid][skin] = dini_Int(accFormat,"skin");
    Spieler[playerid][Admin] = dini_Int(accFormat, "Admin");
    Spieler[playerid][Premium] = dini_Int(accFormat, "Premium");
    Spieler[playerid][Mute] = dini_Int(accFormat, "Mute");
    Spieler[playerid][Mutetime] = dini_Int(accFormat, "Mutetime");
    SetPlayerScore(playerid, dini_Int(accFormat, "Score"));
    Spieler[playerid][Spielzeit] = dini_Int(accFormat, "Spielzeit");
    Spieler[playerid][Kills] = dini_Int(accFormat, "Kills");
    Spieler[playerid][Deaths] = dini_Int(accFormat, "Deaths");
    //GivePlayerMoney(playerid, dini_Int(accFormat, "Geld")-GetPlayerMoney(playerid));
    GivePlayerMoney(playerid, dini_Int(accFormat, "Geld"));
    Spieler[playerid][Warns] = dini_Int(accFormat, "Warns");
    Spieler[playerid][eingeloggt] = 1;
    SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
    DarfVeh[playerid] = 1;
    SpawnPlayer(playerid);
    }


    Hoffentlich könnt ihr mir helfen.


    MFG

    Hallo.


    Ich habe einen Code, jedoch sehenn alle spiele die FPS von ID 0.
    Wie kann man dies fixxen?
    Mein Code:
    stock UpdateFPS()
    {
    new string[126];
    for(new i; i != MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    TextDrawHideForPlayer(i,FPS);
    format(string,sizeof(string),"FPS: %i",pFPS[i]);
    TextDrawSetString(FPS,string);
    TextDrawShowForPlayer(i,FPS);
    }
    }
    return 1;
    }


    FPS = TextDrawCreate(546.000000, 59.000000, "FPS: 1");
    TextDrawBackgroundColor(FPS, 255);
    TextDrawFont(FPS, 1);
    TextDrawLetterSize(FPS, 0.500000, 0.599998);
    TextDrawColor(FPS, 16711935);
    TextDrawSetOutline(FPS, 1);
    TextDrawSetProportional(FPS, 1);


    new drunknew;
    drunknew = GetPlayerDrunkLevel(playerid);
    if (drunknew < 100)
    {
    SetPlayerDrunkLevel(playerid, 2000);
    }
    else
    {
    if(pDrunkLevelLast[playerid] != drunknew)
    {
    new wfps = pDrunkLevelLast[playerid] - drunknew;
    if ((wfps > 0) && (wfps < 200))
    pFPS[playerid] = wfps;
    pDrunkLevelLast[playerid] = drunknew;
    }
    }


    MfG


    if(Geschichte[playerid] == 0)


    Hab ich doch geschrieben?
    Abgesehen davon nicht =0 sondenr == 0
    da du mit = 0 etwas setzt ..

    Ich versteh das mit dem [MAX_PLAYER] und dem ==0 oder ==1 nicht so wirklich. Sowas hab ich noch nicht gelernt.


    MAX_PLAYERS ist von SAMP aus defiinert und bedeutet soviel wie 500, da die MAX_PLAYER Anzahl auf 500 liegt, ist deine Serverslot anzahl auf 50 ist MAX_PLAYERS 50,
    heißt soviel wie:
    Es ist für jeden Spieler gedacht
    Wenn es jetzt nur
    new geschichte;
    wäre, könntest du das nur für 1nen Spieler machen, bzw. Global, aber da du nicht willst, dass jeder das gleiche hat wie Spieler 1 erstellst du eine Variable für jeden einzelnen Spieler
    also MAX_PLAYERS.
    Und Abfragen tust du mit
    if(geschichte[playerid] == 1)
    {
    //Dies das
    }
    usw.


    MfG



    Angaben ohne Gewähr

    Bin mir nicht sicher aber beim public OnPlayerEnterCheckpoint(playerid), muss dan icht noch eine Positions abfrage vom Checkpoint rein?
    Ich meine woher soll das System wissen, welchen Checkpoint du meinst.


    Er will doch eh, dass alle Checkpoints verschwinden wenn man reingeht,
    man muss doch CP´s nicht noch definieren um diesen dann zu "Disablen"..