Errors beim Ticket System

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
  • Guten Tag,


    Ich habe Errors bei meinem giveticket Befehl über ocmd.


    Hier der Befehl:


    ocmd:giveticket(playerid, params[])
    {
    new pID, adminid;
    if(sscanf(params,"uu",pID,adminid)){
    return SendClientMessage(playerid, COLOR_GREY,"[Benutzung]: /giveticket [ticketid] [adminid]");
    }
    if(!IsPlayerConnected(adminid)) // Ob die angegebene ID online ist.
    {
    return SendClientMessage(playerid, COLOR_GREY,"Admin nicht online");
    }
    if(pInfo[adminid][admin] == 0) // Ob die angegebene ID Admin ist
    {
    return SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist kein Admin");
    }
    new pname[MAX_PLAYERS],save[512];
    GetPlayerName(pID,pname,sizeof pname);
    format(save,sizeof save,"Tickets/%s.ini",pname);
    if(!dini_Exists(save)) // Ob ein Ticket besteht
    {
    return SendClientMessage(playerid, COLOR_GREY,"Die ID hat kein offenes Ticket");
    }
    new NeuerAdmin[MAX_PLAYER_NAME], AlterAdmin[MAX_PLAYER_NAME], Fragender[MAX_PLAYER_NAME];
    GetPlayerName(playerid, AlterAdmin , sizeof(AlterAdmin));
    GetPlayerName(adminid, NeuerAdmin, sizeof(NeuerAdmin));
    GetPlayerName(pID, Fragender , sizeof(Fragender));
    DeinSupport[pID] = adminid;
    new string2[128], string3[128], string4[256], string5[256], string6[256];
    format(string2, sizeof(string2), "[SUPPORT] %s hat dein Ticket an %s weitergegeben.", AlterAdmin, NeuerAdmin);
    SendClientMessage(pID, COLOR_YELLOW, string2);
    SendClientMessage(playerid, COLOR_YELLOW, "Erfolgreich weitergeleitet");
    format(string3, sizeof(string3), "[SUPPORT] %s hat dir %s´s Ticket gegeben. Er schrieb folgendes:", AlterAdmin, Fragender);
    string4 = dini_Get(save, "Suptext");
    string5 = dini_Get(save, "Suptext2");
    string6 = dini_Get(save, "Suptext3");
    SendClientMessage(adminid, COLOR_YELLOW, string3);
    SendClientMessage(adminid, COLOR_YELLOW, string4);
    SendClientMessage(adminid, COLOR_YELLOW, string5);
    SendClientMessage(adminid, COLOR_YELLOW, string6);
    return 1;
    }


    Hier die Errors:


    C:\Users\Alex\Desktop\Testserver\gamemodes\Selfmade.pwn(1161) : error 017: undefined symbol "pInfo"
    C:\Users\Alex\Desktop\Testserver\gamemodes\Selfmade.pwn(1161) : warning 215: expression has no effect
    C:\Users\Alex\Desktop\Testserver\gamemodes\Selfmade.pwn(1161) : error 001: expected token: ";", but found "]"
    C:\Users\Alex\Desktop\Testserver\gamemodes\Selfmade.pwn(1161) : error 029: invalid expression, assumed zero
    C:\Users\Alex\Desktop\Testserver\gamemodes\Selfmade.pwn(1161) : fatal error 107: too many error messages on one line


    Die Errors sind alle in dieser Zeile:if(pInfo[adminid][admin] == 0)


    Dringend Hilfe

  • Zitat

    if(pInfo[adminid][admin] == 0)


    pinfo ist nicht definiert..

  • Du hast doch bestimmt so einen enum für SpielerInfos ? Login-& Registersystem? Da ist die Variable niht definiert.
    Beispiel:
    enum pInfo
    {
    pLevel,
    pMember,
    // Hier musst du dann das "admin" hinzufügen.
    };
    //edit: Klammer vergessen o.o

    Liebe Grüße


    Marcel

  • Ich habe sowas:


    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Wanteds",dini_Int(Spielerdatei,"Wanteds"));
    SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.\n Solltest du zu Unrechte gebannt sein melde dich im Forum.");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    dini_IntSet(Spielerdatei,"timeban",GetPVarInt(playerid,"timeban"));
    dini_IntSet(Spielerdatei,"Wanteds",GetPlayerWantedLevel(playerid));
    }
    return 1;
    }

  • Habe doch aber schon eine eigene Adminabfrage


    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,Grau,"Du bist kein Admin oder dein Rank ist zu Niedrig.");