Errors bei Kampfstyle dialog...

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
  • Hei :)


    Hier ist der Code:



    if(dialogid==DIALOG_FIGHTINGSTYLE)
    {
    if(response)
    {
    switch(listitem)
    {
    case 0: //normal
    {
    if(sInfo[playerid][level]>1)
    {
    if(sInfo[playerid][money]<100);
    {
    GivePlayerMoney(playerid, -100);
    SetPlayerFightingStlye(playerid,FIGHT_STYLE_NORMAL);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 100$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 1 sein um diesen Kampfstyle erwerben zu können"!);
    }
    }
    case 1: //boxen
    {
    if(sInfo[playerid][level]>3)
    {
    if(sInfo[playerid][money]<5000);
    {
    GivePlayerMoney(playerid, -5000);
    SetPlayerFightingStlye(playerid,FIGHT_STYLE_BOXING);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 5000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 3 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 2: //kong fu
    {
    if(sInfo[playerid][level]>7)
    {
    if(sInfo[playerid][money]<10000);
    {
    GivePlayerMoney(playerid, -10000);
    SetPlayerFightingStlye(playerid,FIGHT_STYLE_KUNGFU);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 10000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 7 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 3: //knee head
    {
    if(sInfo[playerid][level]>10)
    {
    if(sInfo[playerid][money]<15000);
    {
    GivePlayerMoney(playerid, -15000);
    SetPlayerFightingStlye(playerid,FIGHT_STYLE_KNEEHEAD);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 10000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 10 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 4: //Grab Kick
    {
    if(sInfo[playerid][level]>15)
    {
    if(sInfo[playerid][money]<25000);
    {
    GivePlayerMoney(playerid, -25000);
    SetPlayerFightingstlye(playerid,FIGHT_STYLE_GRABKICK);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 25000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 15 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 5: //elbow
    {
    if(sInfo[playerid][level]>20)
    {
    if(sInfo[playerid][money]<40000);
    {
    GivePlayerMoney(playerid, -40000);
    SetPlayerFightingstlye(playerid,FIGHT_STYLE_ELBOW);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 40000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 20 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    }
    else
    {
    return 1;
    }
    }
    return 1;
    }



    und dann kommen diese errors:


    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3526) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3526) : error 036: empty statement
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3529) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3531) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3538) : error 001: expected token: "-string end-", but found "-identifier-"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3538) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3538) : warning 215: expression has no effect
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3545) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3545) : error 036: empty statement
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3548) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3550) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3564) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3564) : error 036: empty statement
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3567) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3569) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3583) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3583) : error 036: empty statement
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3586) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3588) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3602) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3602) : error 036: empty statement
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3605) : error 017: undefined symbol "SetPlayerFightingstlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3607) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3621) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3621) : error 036: empty statement
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3624) : error 017: undefined symbol "SetPlayerFightingstlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3626) : error 029: invalid expression, assumed zero


    Und noch was:
    Ich muss danach noch die funkltin einfügen das bei dem enum bei "fightingstyle" z.B 2 für kong fu eingesetzt wird.
    Das ist ja kein problem aber wie erkennt er das "2" im fightingstyle bedeutet das wenn er on ist auch jedes mal den style "kong fu" bekommt?

  • SetPlayerFightingstlye zu SetPlayerFightingStyle ändern.
    Möglicherweise behebt das schon alle Errors. Wenn money noch immer nicht definiert ist, dann musst du es in das sInfo enum dazu schreiben.


    Außerdem muss das Semikolon hinter den if-Abfragen weg:
    if(sInfo[playerid][money]<15000);
    zu:
    if(sInfo[playerid][money]<15000)

  • Ok jz hab ich noch diese errors:


    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3526) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3529) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3538) : error 001: expected token: "-string end-", but found "-identifier-"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3538) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3538) : warning 215: expression has no effect
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3545) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3548) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3564) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3567) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3583) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3586) : error 017: undefined symbol "SetPlayerFightingStlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3602) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3605) : error 017: undefined symbol "SetPlayerFightingstlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3621) : error 017: undefined symbol "money"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3624) : error 017: undefined symbol "SetPlayerFightingstlye"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3637) : error 029: invalid expression, assumed zero

  • Aso hab nur ein teil deiner nachricht gelesen grade, SRY...


    So ich habe jz nurnoch diese error codes:
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3540) : error 001: expected token: "-string end-", but found "-identifier-"
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3540) : error 029: invalid expression, assumed zero
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3540) : warning 215: expression has no effect
    C:\Users\Spiele\Desktop\Server Ordner\Server Projekt\gamemodes\ServerProjekt.pwn(3647) : error 029: invalid expression, assumed zero


    Das ist der verbesserte Code:


    if(dialogid==DIALOG_FIGHTINGSTYLE)
    {
    if(response)
    {
    switch(listitem)
    {
    case 0: //normal
    {
    if(sInfo[playerid][level]>1)
    {
    if(sInfo[playerid][geld]<100)
    {
    GivePlayerMoney(playerid, -100);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_NORMAL);
    sInfo[playerid][fightingstyle] = 1;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 100$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 1 sein um diesen Kampfstyle erwerben zu können"!); //Zeile 3540
    }
    }
    case 1: //boxen
    {
    if(sInfo[playerid][level]>3)
    {
    if(sInfo[playerid][geld]<5000)
    {
    GivePlayerMoney(playerid, -5000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_BOXING);
    sInfo[playerid][fightingstyle] = 2;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 5000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 3 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 2: //kong fu
    {
    if(sInfo[playerid][level]>7)
    {
    if(sInfo[playerid][geld]<10000)
    {
    GivePlayerMoney(playerid, -10000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_KUNGFU);
    sInfo[playerid][fightingstyle] = 3;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 10000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 7 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 3: //knee head
    {
    if(sInfo[playerid][level]>10)
    {
    if(sInfo[playerid][geld]<15000)
    {
    GivePlayerMoney(playerid, -15000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_KNEEHEAD);
    sInfo[playerid][fightingstyle] = 4;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 10000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 10 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 4: //Grab Kick
    {
    if(sInfo[playerid][level]>15)
    {
    if(sInfo[playerid][geld]<25000)
    {
    GivePlayerMoney(playerid, -25000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_GRABKICK);
    sInfo[playerid][fightingstyle] = 5;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 25000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 15 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 5: //elbow
    {
    if(sInfo[playerid][level]>20)
    {
    if(sInfo[playerid][geld]<40000)
    {
    GivePlayerMoney(playerid, -40000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_ELBOW);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 40000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 20 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    }
    else //Zeile 3647
    {
    return 1;
    }
    }
    return 1;
    }


  • Das else hast du an den switch gesetzt, das war falsch. Und in Zeile 3540 war das " und das ! vertauscht.
    So:

    Spoiler anzeigen
    if(dialogid==DIALOG_FIGHTINGSTYLE)
    {
    if(!response) return 1;
    else
    {
    switch(listitem)
    {
    case 0: //normal
    {
    if(sInfo[playerid][level]>1)
    {
    if(sInfo[playerid][geld]<100)
    {
    GivePlayerMoney(playerid, -100);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_NORMAL);
    sInfo[playerid][fightingstyle] = 1;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 100$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 1 sein um diesen Kampfstyle erwerben zu können!"); //Zeile 3540
    }
    }
    case 1: //boxen
    {
    if(sInfo[playerid][level]>3)
    {
    if(sInfo[playerid][geld]<5000)
    {
    GivePlayerMoney(playerid, -5000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_BOXING);
    sInfo[playerid][fightingstyle] = 2;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 5000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 3 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 2: //kong fu
    {
    if(sInfo[playerid][level]>7)
    {
    if(sInfo[playerid][geld]<10000)
    {
    GivePlayerMoney(playerid, -10000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_KUNGFU);
    sInfo[playerid][fightingstyle] = 3;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 10000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 7 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 3: //knee head
    {
    if(sInfo[playerid][level]>10)
    {
    if(sInfo[playerid][geld]<15000)
    {
    GivePlayerMoney(playerid, -15000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_KNEEHEAD);
    sInfo[playerid][fightingstyle] = 4;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 10000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 10 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 4: //Grab Kick
    {
    if(sInfo[playerid][level]>15)
    {
    if(sInfo[playerid][geld]<25000)
    {
    GivePlayerMoney(playerid, -25000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_GRABKICK);
    sInfo[playerid][fightingstyle] = 5;
    SendClientMessage(playerid, COLOR_GREEN, "Du hast den Fightingstyle erfolgreich gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 25000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 15 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    case 5: //elbow
    {
    if(sInfo[playerid][level]>20)
    {
    if(sInfo[playerid][geld]<40000)
    {
    GivePlayerMoney(playerid, -40000);
    SetPlayerFightingStyle(playerid,FIGHT_STYLE_ELBOW);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du benötigst mindestens 40000$ um diesen Kampfstyle zu erwerben!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst mindestens Level 20 sein um diesen Kampfstyle erwerben zu können!");
    }
    }
    }
    }
    return 1;
    }

  • Beim Login, dort wo du es aus der Datei lädst eben wieder SetPlayerFightingStyle machen.
    Den Fightingstyle würde ich dann lieber so in's enum schreiben:
    sInfo[playerid][fightingstyle] = FIGHT_STYLE_NORMAL;
    (bei allen)


    Dann kannst du einfach
    SetPlayerFightingStyle(playerid,sInfo[playerid][fightingstyle]);
    machen.

  • Was denn?
    In deinem Befehl bei der Auswahl:
    sInfo[playerid][fightingstyle] = 1;
    zu:
    sInfo[playerid][fightingstyle] = FIGHT_STYLE_NORMAL;
    Ebenso für alle anderen Styles.


    Und beim Login lädst du es ja wieder aus der Datei/Datenbank, danach kannst du dann
    SetPlayerFightingStyle(playerid,sInfo[playerid][fightingstyle]);
    machen.


    :rolleyes:

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen