Gebe 1 und kommt 0

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Bei meinem makeleader Befehl gibt es ein Problem und zwar: Ich gebe /makeleader 0 1 ein und dann steht da:"Du wurdest zum Team 0 invitet."Why ?
    Und dann mach ich /invite 0 steht da "Du bist kein Leader."Hier mal makeleader und invite Befehl:
    ocmd:invite(playerid,params[])
    {
    if(Spieler[playerid][friedhof] == 1 && Spieler[playerid][adminrank] == 0)
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"Du kannst jetzt keinen Befehl nutzen!");
    }
    else
    {
    new pID;
    if(Spieler[playerid][leader] != 0)
    {
    if(sscanf(params, "u",pID))
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"NUTZE: /invite [Spieler-ID/Teil des Namens]");
    }
    if(!IsPlayerConnected(pID))
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"Kein Spieler mit angegebener ID Online!");
    }
    new leaderteam = Spieler[playerid][leader];
    Spieler[pID][team] = leaderteam;
    SendClientMessage(playerid,0xFFFF00FF,"Du hast den Spieler invitet!");
    SendClientMessage(pID,0xFFFF00FF,"Du wurdest in eine Fraktion invitet!");
    Spieler[pID][noob] = 0;
    SpawnPlayer(pID);
    Spieler[pID][frank] = 1;
    if(leaderteam == 1)
    {
    isbeamter[pID] = 1;
    }
    if(leaderteam == 2)
    {
    isbeamter[pID] = 0;
    }
    if(leaderteam == 3)
    {
    isbeamter[pID] = 1;
    }
    if(leaderteam == 4)
    {
    isbeamter[pID] = 0;
    }
    }
    else
    {
    SendClientMessage(playerid,0xAAAAAAFF,"Du bist kein Leader!");
    }
    return 1;
    }
    }


    und makeleader:
    ocmd:makeleader(playerid,params[])
    {
    new pID, tID;
    new string[128];
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof pname);
    if(Spieler[playerid][adminrank] == 3)
    {
    if(sscanf(params, "ud",pID,tID))
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"NUTZE: /makeleader [Spieler-ID/Teil des Namens] [Team-ID]");
    }
    if(!IsPlayerConnected(pID)) {
    return SendClientMessage(playerid,0xAAAAAAFF,"Kein Spieler mit angegebener ID Online!");
    }
    format(string, sizeof string, "Du hast %s einen neuen Leaderposten im Team %d gegeben!", pname, tID);
    GetPlayerName(playerid,pname,sizeof pname);
    Spieler[pID][leader] = tID;
    Spieler[pID][frank] = 6;
    SetPlayerTeam(playerid,tID);
    new str[128];
    SendClientMessage(playerid,0xFFFF00FF,string);
    format(str, sizeof str, "Du wurdest von %s als Leader in Team %d invitet!", pname, tID);
    SendClientMessage(pID,0xFFFF00FF,str);
    Spieler[playerid][frank] = 6;
    }
    else
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"Du musst den Adminrank 3 besitzen!");
    }
    return 1;
    }
    Hoffe ihr könnt mir helfen.Danke im Vorraus
    MFG
    @frin

  • Bei Makeleader new tID;
    tID = strval(tmp);


    Du hast nur eine Variable erstellt...

  • Wohin denn ?
    Kopier mal den makeleader und poste es hier und wohin es soll.
    MFG
    @frin

  • ocmd:makeleader(playerid,params[])
    {
    new pID, tID;
    tID = strval(tmp);
    new string[128];
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof pname);
    if(Spieler[playerid][adminrank] == 3)
    {
    if(sscanf(params, "ud",pID,tID))
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"NUTZE: /makeleader [Spieler-ID/Teil des Namens] [Team-ID]");
    }
    if(!IsPlayerConnected(pID)) {
    return SendClientMessage(playerid,0xAAAAAAFF,"Kein Spieler mit angegebener ID Online!");
    }
    format(string, sizeof string, "Du hast %s einen neuen Leaderposten im Team %d gegeben!", pname, tID);
    GetPlayerName(playerid,pname,sizeof pname);
    Spieler[pID][leader] = tID;
    Spieler[pID][frank] = 6;
    SetPlayerTeam(playerid,tID);
    new str[128];
    SendClientMessage(playerid,0xFFFF00FF,string);
    format(str, sizeof str, "Du wurdest von %s als Leader in Team %d invitet!", pname, tID);
    SendClientMessage(pID,0xFFFF00FF,str);
    Spieler[playerid][frank] = 6;
    }
    else
    {
    return SendClientMessage(playerid,0xAAAAAAFF,"Du musst den Adminrank 3 besitzen!");
    }
    return 1;
    }

  • Bekomme nen error:

    Zitat

    C:\Users\sebastiancheff\Desktop\Anfang mit Selfmade\Reallife.pwn(3448) : error 017: undefined symbol "tmp"

    in der Zeile:
    tID = strval(tmp);
    MFG
    @frin

  • mit dem strval ist totaler blödsinn hier hast meinen ocmd ... ;)


    ocmd:leader(playerid,params[]){
    new pid,lid,string[64],string2[64];
    if(unformat(params,"ud",pid,lid)) return SendClientMessage(playerid,COLOR_YELLOW,"Benutzung:/leader [ID] [Fraktion]");
    if(!IsPlayerConnected(pid)) return SendClientMessage(playerid,COLOR_RED,"Kein Spieler mit der angegebenen ID ist Online");
    if (Spieler[playerid][pAdmin] < 4) return SendClientMessage(playerid,COLOR_RED,"Du bist kein AdminLevel 4 ");
    if(lid>10) return SendClientMessage(playerid,COLOR_GREY,"Es gibt nur 10 Fraktionen");
    Spieler[pid][pLeader] = lid;
    gTeam[pid] = lid;
    format(string,64,"Du wurdest von %s zum Leader ernannt",gPlayerName[playerid]);
    format(string2,64,"Du hast %s zum Leader ernannt",gPlayerName[pid]);
    SendClientMessage(playerid,COLOR_GREEN,string2);
    SendClientMessage(pid,COLOR_GREEN,string);
    return 1;
    }


    Musst halt noch auf deine Bedürfnisse ändern

  • Ich möchte das jetzt aber mit meinem makeleader Befehl machen.Kannste meinen richtig bearbeiten dass es geht ?