/makeadmin Problem

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
  • Nabend Breadfish,
    ich habe ein Problem mit meinem /makeadmin Befehl.


    Hier einmal der Error Code:
    C:\Users\GeForceOne\Desktop\ForSelfmade.pwn(321) : error 017: undefined symbol "idx"
    C:\Users\GeForceOne\Desktop\ForSelfmade.pwn(327) : error 017: undefined symbol "idx"
    C:\Users\GeForceOne\Desktop\ForSelfmade.pwn(333) : error 017: undefined symbol "ReturnUser"
    C:\Users\GeForceOne\Desktop\ForSelfmade.pwn(334) : error 017: undefined symbol "idx"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    Der Befehl:
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new cmd[256];
    new tmp[256];
    new string[128];
    new giveplayer[MAX_PLAYER_NAME];
    new sendername[MAX_PLAYER_NAME];
    new para1;
    new level;
    cmd = strtok(cmdtext, idx);

    if(strcmp(cmd, "/makeadmin", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Verwende: /makeadmin [playerid] [LEVEL]");
    return 1;
    }
    para1 = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    level = strval(tmp);
    if(AccountInfo[playerid][aAdmin] >= 1338)
    {
    if(IsPlayerConnected(para1))
    {
    if(para1 != INVALID_PLAYER_ID)
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    AccountInfo[para1][aAdmin] = level;
    printf("AdmCmd: %s hat %s zu einem Level %d Admin gemacht!.", sendername, giveplayer, level);
    format(string, sizeof(string), " Du wurdest zu einem Level %d Admin von ADMIN %s gemacht!", level, sendername);
    SendClientMessage(para1, COLOR_WHITE, string);
    format(string, sizeof(string), " Du hast %s zu einem Level %d Admin gemacht!.", giveplayer,level);
    SendClientMessage(playerid, COLOR_WHITE, string);
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Du bist nicht befugt diesen Befehl zu nutzen!");
    }
    }
    return 1;
    }
    return 0;
    }


    Error Zeilen:
    321: cmd = strtok(cmdtext, idx); Obwohl ich: new cmd[256]; gemacht habe.
    327: tmp = strtok(cmdtext, idx); Obwohl ich: new tmp[256]; gemacht habe.
    333: para1 = ReturnUser(tmp); Obwohl ich: new para1; gemacht habe.
    334: tmp = strtok(cmdtext, idx); Obwohl ich: new tmp[256]; gemacht habe.


    Kann mir vileicht jemand sagen woran das liegen kann?
    Ich hoffe mir kann jemand helfen.
    Mit freundlichen grüßen
    [FoR]Hardcore


    P.s
    Danke im Vorraus

  • füg des mal ganz unten ein^^


    ReturnUser(string[])
    {
    new retuser = -1,
    nameplayer[MAX_PLAYER_NAME];
    if(!strlen(string))return retuser;
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(!IsPlayerConnected(i) || IsPlayerNPC(i))continue;
    GetPlayerName(i,nameplayer,sizeof nameplayer);
    if(strlen(string) > strlen(nameplayer))continue;
    for(new j = 0;j<((strlen(nameplayer)-strlen(string))+1);j++)
    {
    if(strcmp(string,nameplayer[j],true,strlen(string)))continue;
    retuser = i;
    break;
    }
    if(retuser!=-1)break;
    }
    return retuser;
    }