Selfmade ERRORS(Brauche Hilfe)

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 beschäftige mich wieder mit meinem Selfmade.
    Leider habe ich bemerkt das dort einige ERRORS vorkommen.
    Ich würde mich riesig über Hilfe freuen.
    Hier die ERRORS:
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(1137) : error 017: undefined symbol "strtok"
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(1137) : error 033: array must be indexed (variable "tmp")
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(1134) : warning 203: symbol is never used: "idx"
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(1515) : error 017: undefined symbol "strtok"
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(1515) : error 033: array must be indexed (variable "cmd")
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(1514) : warning 203: symbol is never used: "idx"
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(3391) : error 017: undefined symbol "isNumeric"
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(3459) : error 017: undefined symbol "isNumeric"
    C:\Users\daniel\Desktop\Scripte aka Server\Gta SA\gamemodes\Reallife.pwn(3490) : error 017: undefined symbol "isNumeric"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    7 Errors.

    Zeile 1131 - Zeile1159:
    if(strcmp(cmdtext, "/dance", true) == 0)
    {
    new tmp[256];
    new idx;


    // Get the dance style param
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp) || strlen(tmp) > 2) {
    SendClientMessage(playerid,0xFF0000FF,"USAGE: /dance [style 1-4]");
    return 1;
    }


    dancestyle = strval(tmp);
    if(dancestyle < 1 || dancestyle > 4) {
    SendClientMessage(playerid,0xFF0000FF,"USAGE: /dance [style 1-4]");
    return 1;
    }


    if(dancestyle == 1) {
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1);
    } else if(dancestyle == 2) {
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE2);
    } else if(dancestyle == 3) {
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE3);
    } else if(dancestyle == 4) {
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE4);
    }
    return 1;
    }
    Zeile 1501 - Zeile 1515:
    if(strcmp(cmdtext,"/restart",true)==0)//Den Server restarten.
    {
    if(!isPlayerAnAdmin(playerid,3))
    {
    SendRconCommand("gmx");
    return 1;
    }
    else
    {
    SendClientMessage(playerid,BLAU,"Du bist kein Admin.");
    }
    return 1;
    }
    new cmd[128], idx;
    cmd = strtok(cmdtext, idx);
    Zeile 3381 - Zeile 3411:
    if(dialogid == DIALOG_PIN_ERSTELLEN)
    {
    if(response == 0)
    {
    return SCM(playerid, COLOR_WHITE,"Bank: Vielen Dank für ihren Besuch.");
    }
    if(response == 1)
    {
    if(strlen(inputtext) == 4)
    {
    if(isNumeric(inputtext))
    {
    new string[256];
    format(string,sizeof(string),"Ihr Konto wurde erstellt. Ihr PIN lautet: %d", strval(inputtext));
    SCM(playerid,COLOR_WHITE,string);
    Bank[playerid][sHatKonto] = 1;
    Bank[playerid][sKonto] = STARTBONUS;
    Bank[playerid][sBankPIN] = strval(inputtext);
    BankSpeichern(playerid);
    }
    else
    {
    SPD(playerid, DIALOG_PIN_ERSTELLEN, DIALOG_STYLE_INPUT,"LS Bank - Konto erstellen","Bitte geben sie hier ihren gewünschten PIN ein.\n{CC0000}Es MÜSSEN genau 4 Zahlen sein.!!!","Erstellen","Abbrechen");
    }
    }
    else
    {
    SPD(playerid, DIALOG_PIN_ERSTELLEN, DIALOG_STYLE_INPUT,"LS Bank - Konto erstellen","Bitte geben sie hier ihren gewünschten PIN ein.\n{CC0000}Es MÜSSEN genau 4 Zahlen sein.!!!","Erstellen","Abbrechen");
    }
    }
    }
    Zeile 3451 - Zeile 3511:
    if(dialogid == DIALOG_ABHEBEN)
    {
    if(response == 0)
    {
    return SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Los Santos Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen\r\nEC-Karte beantragen","Weiter","Abbrechen");
    }
    if(response == 1)
    {
    if(isNumeric(inputtext))
    {
    new geld = Bank[playerid][sKonto];
    new summe = strval(inputtext);
    new string[128];
    if(geld <= strval(inputtext))
    {
    SCM(playerid,COLOR_WHITE,"Du hast nicht genügend Geld auf dem Konto.");
    }
    else
    {
    GivePlayerMoney(playerid, summe);
    Bank[playerid][sKonto] -= summe;
    format(string,sizeof(string),"Sie haben %d$ von ihrem Konto abgehoben.\nAktueller Kontostand: %d", summe, Bank[playerid][sKonto]);
    SPD(playerid,DIALOG_FERTIG,DIALOG_STYLE_MSGBOX,"LS Bank - Erfolgreich",string,"Ok","");
    }
    }
    else
    {
    return SCM(playerid,COLOR_WHITE,"Du musst Zahlen eingeben!");
    }
    }
    }
    if(dialogid == DIALOG_EINZAHLEN)
    {
    if(response == 0)
    {
    return SPD(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Los Santos Bank","{FFFFFF}Kontostand\r\nAbheben\r\nEinzahlen\r\nÜberweisen\r\nEC-Karte beantragen","Weiter","Abbrechen");
    }
    if(response == 1)
    {
    if(isNumeric(inputtext))
    {
    new summe = strval(inputtext);
    new string[128];
    if(GetPlayerMoney(playerid) <= strval(inputtext))
    {
    SCM(playerid,COLOR_WHITE,"Du hast nicht genügend Geld in deiner Tasche.");
    }
    else
    {
    GivePlayerMoney(playerid, -summe);
    Bank[playerid][sKonto] += summe;
    format(string,sizeof(string),"Sie haben %d$ auf ihr Konto eingezahlt.\nAktueller Kontostand: %d", summe, Bank[playerid][sKonto]);
    SPD(playerid,DIALOG_FERTIG,DIALOG_STYLE_MSGBOX,"LS Bank - Erfolgreich",string,"Ok","");
    }
    }
    else
    {
    return SCM(playerid,COLOR_WHITE,"Du musst zahlen eingeben !");
    }
    }
    }


    MFG

  • von mir kannst mein ocmd command haben zu /dance

    ocmd:dance(playerid,params[])
    {
    new dancestyle;
    if(sscanf(params,"i",dancestyle))return SendClientMessage(playerid,COLOR_GRAD1,"Benutzung: /dance [1-4]");
    if(dancestyle<1||dancestyle>4)return SendClientMessage(playerid,COLOR_GRAD1,"Benutzung: /dance [1-4]");
    if(dancestyle == 1){ SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1);}
    else if(dancestyle == 2){ SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1);}
    else if(dancestyle == 3){ SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE3);}
    else if(dancestyle == 4){ SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE4);}
    return 1;
    }
    }


    dazu benötigst wie oben genannt sscanf und die ocmd include aber allgemein zu deinen Errors du solltest du die strtok Funktion einfügen


    strtok(const stringstrtok[], &index)
    {
    new length = strlen(stringstrtok);
    while ((index < length) && (stringstrtok[index] <= ' ')) { index++; }


    new offset = index, result[20];
    while ((index < length) && (stringstrtok[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
    result[index - offset] = stringstrtok[index];
    index++;
    }
    result[index - offset] = EOS;
    return result;
    }