Problem Errors gehen einfach nicht weg

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
  • Hallo seit heute um 11 Uhr Morgens sitze ich dran die Erros weg zu bekommen doch wenn ich 1 Error wegbekomme kommt gleich wieder ein weiterer Error
    könnte sich bitte jemand mal das Script anschauen ich bin nicht so lange im Script bereich aber ich hoffe mir kann jemand mal helfen






    Ich währe dem jenigen sehr dankbar!

  • So haben denn fehler gefunden sind aber trozdem noch 3 Weitere Errors


  • Als erstes musst du


    #include <Dini>


    Und solltest dir auch diese Datei Runterladen und in SAMP so wie richtigen Script Ordner packen


    Wie oben schon gesagt das Problem mit Dini habe ich gelöst aber es kommen jetzt nur noch 3 Erros



    PHP
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(287) : error 029: invalid expression, assumed zero
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(287) : error 004: function "OnPlayerClickPlayer" is not implemented
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(293) : warning 225: unreachable code
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(309) : error 030: compound statement not closed at the end of file (started at line 295)
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    3 Errors.
  • public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])//der Callback
    {
    //so nun haben wir die wahl ob man erst if(response) / if(response == 1) / if(response == true) oder erst die dialogid kommen soll wir machen mal zu erst die dialogid
    if(dialogid == Dialog_Login)
    {
    if(!response) return Kick(playerid); //wenn response == false / == 0 wird der Spieler zu kicken
    if(!strlen(inputtext))//wenn du nichts in den dialog eingibst
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    //nun kommen wir zu den PVars dazu benutzen wir SetPVarInt/-String/-Float
    //nun erstmal abfragen ob das Passwort was gespeichert wurde auch richtig ist
    new string[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(string,sizeof string,"Accounts/%s.ini",name);
    if(!strcmp(dini_Get(string,"Passwort"),inputtext,false))//wenn das passwort was du in den dialog eingibst FALSCH ist
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast dein Passwort falsch eingegeben.");
    }
    SetPVarInt(playerid,"Adminlevel",0);
    //Weitere Sachen
    }
    return 1;
    }


    Wenn ich mich nicht täusche sollte da noch eine Klammer hin.
    Also ist schon drin.


    Füg das mal anstatt von deinem ein.

  • du kannst kein dialog unter onplayerclickplayer abrufen das must du unter OnDialogResponse machen


    Aber poste mal mehr zeilen


    Hier irgend wo steckt der fehler aber ich finde einfach nichts -.-"



  • Da fehlt eine Klammer hier der Richtige Code.



    public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])//der Callback
    {
    //so nun haben wir die wahl ob man erst if(response) / if(response == 1) / if(response == true) oder erst die dialogid kommen soll wir machen mal zu erst die dialogid
    if(dialogid == Dialog_Login)
    {
    if(!response) return Kick(playerid); //wenn response == false / == 0 wird der Spieler zu kicken
    if(!strlen(inputtext))//wenn du nichts in den dialog eingibst
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    //nun kommen wir zu den PVars dazu benutzen wir SetPVarInt/-String/-Float
    //nun erstmal abfragen ob das Passwort was gespeichert wurde auch richtig ist
    new string[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(string,sizeof string,"Accounts/%s.ini",name);
    if(!strcmp(dini_Get(string,"Passwort"),inputtext,false))//wenn das passwort was du in den dialog eingibst FALSCH ist
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast dein Passwort falsch eingegeben.");
    }
    SetPVarInt(playerid,"Adminlevel",0);
    //Weitere Sachen
    }
    return 1;
    }



    //edit


    Ich verstehe deinen Code nicht ganz, ist der vollständig?


    Füg mal DialogResponse ein und Click Player.


    Alle DIalog müssen unter DIALOGRESPONSE.


    /EDIT



    public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])//der Callback
    {
    //so nun haben wir die wahl ob man erst if(response) / if(response == 1) / if(response == true) oder erst die dialogid kommen soll wir machen mal zu erst die dialogid
    if(dialogid == Dialog_Login)
    {
    if(!response) return Kick(playerid); //wenn response == false / == 0 wird der Spieler zu kicken
    if(!strlen(inputtext))//wenn du nichts in den dialog eingibst
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    //nun kommen wir zu den PVars dazu benutzen wir SetPVarInt/-String/-Float
    //nun erstmal abfragen ob das Passwort was gespeichert wurde auch richtig ist
    new string[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(string,sizeof string,"Accounts/%s.ini",name);
    if(!strcmp(dini_Get(string,"Passwort"),inputtext,false))//wenn das passwort was du in den dialog eingibst FALSCH ist
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast dein Passwort falsch eingegeben.");
    }
    SetPVarInt(playerid,"Adminlevel",0);
    //Weitere Sachen
    return 1;
    }
    //nun den register dialog
    if(dialogid == Dialog_Reg)
    {
    if(!response) return Kick(playerid); //siehe bei Dialog_Login
    if(!strlen(inputtext))//siehe oben
    {
    ShowPlayerDialog(playerid,Dialog_Reg,DIALOG_STYLE_INPUT,"Registration","Bitte gebe dein Passwort zur Registrierung ein","Register","Disconnect");//dialog zum registrieren
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    new name[MAX_PLAYER_NAME],accFormat[128];
    GetPlayerName(playerid,name,sizeof name);
    format(accFormat,sizeof accFormat,"Accounts/%s.ini",name);
    dini_Create(accFormat);//die datei %s.ini wird dadurch erstellt
    SetPVarString(playerid,"Passwort",inputtext);//das Passwort wird geändert
    dini_Set(accFormat,"Passwort",inputtext);
    SetPVarInt(playerid,"Adminlevel",0);//adminlevel wird so geändert
    //weitere....


    Das da ganz unten ins Script..
    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    return 1;
    }


  • public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])//der Callback
    {
    //so nun haben wir die wahl ob man erst if(response) / if(response == 1) / if(response == true) oder erst die dialogid kommen soll wir machen mal zu erst die dialogid
    if(dialogid == Dialog_Login)
    {
    if(!response) return Kick(playerid); //wenn response == false / == 0 wird der Spieler zu kicken
    if(!strlen(inputtext))//wenn du nichts in den dialog eingibst
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    //nun kommen wir zu den PVars dazu benutzen wir SetPVarInt/-String/-Float
    //nun erstmal abfragen ob das Passwort was gespeichert wurde auch richtig ist
    new string[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(string,sizeof string,"Accounts/%s.ini",name);
    if(!strcmp(dini_Get(string,"Passwort"),inputtext,false))//wenn das passwort was du in den dialog eingibst FALSCH ist
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast dein Passwort falsch eingegeben.");
    }
    SetPVarInt(playerid,"Adminlevel",0);
    //Weitere Sachen
    //nun den register dialog
    if(dialogid == Dialog_Reg)
    {
    if(!response) return Kick(playerid); //siehe bei Dialog_Login
    if(!strlen(inputtext))//siehe oben
    {
    ShowPlayerDialog(playerid,Dialog_Reg,DIALOG_STYLE_INPUT,"Registration","Bitte gebe dein Passwort zur Registrierung ein","Register","Disconnect");//dialog zum registrieren
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    new name[MAX_PLAYER_NAME],accFormat[128];
    GetPlayerName(playerid,name,sizeof name);
    format(accFormat,sizeof accFormat,"Accounts/%s.ini",name);
    dini_Create(accFormat);//die datei %s.ini wird dadurch erstellt
    SetPVarString(playerid,"Passwort",inputtext);//das Passwort wird geändert
    dini_Set(accFormat,"Passwort",inputtext);
    SetPVarInt(playerid,"Adminlevel",0);//adminlevel wird so geändert
    //weitere....


    return 1;
    }


    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    return 1;
    }


    //Du hast Dialog Response unterbrochen mit ClickPlayer So stimmts jetzt


    public Inkompetenz
    {
    return 2;
    }

  • Danke an alle die mir gerade helfen.


    Jetzt habe ich noch 3 Erros


    PHP
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(305) : error 029: invalid expression, assumed zero
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(305) : error 004: function "OnPlayerClickPlayer" is not implemented
    C:\Users\Morino\Desktop\Home\gamemodes\New-World.pwn(309) : error 030: compound statement not closed at the end of file (started at line 264)
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    3 Errors.



    Ich habe alles befolgt wie es hier steht http://forum.sa-mp.de/san-andr…-aktualisiert/#post474019


  • Das ist eine Katastrophe -.-



    public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])//der Callback
    {
    if(dialogid == Dialog_Login)
    {
    if(!response) return Kick(playerid); //wenn response == false / == 0 wird der Spieler zu kicken
    if(!strlen(inputtext))//wenn du nichts in den dialog eingibst
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    new string[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(string,sizeof string,"Accounts/%s.ini",name);
    if(!strcmp(dini_Get(string,"Passwort"),inputtext,false))//wenn das passwort was du in den dialog eingibst FALSCH ist
    {
    ShowPlayerDialog(playerid,Dialog_Login,DIALOG_STYLE_INPUT,"Login","Logge dich bitte mit deinem Passwort ein","Login","Disconnect");//dialog zum Einloggen
    return SendClientMessage(playerid,BLAU,"Du hast dein Passwort falsch eingegeben.");
    }
    SetPVarInt(playerid,"Adminlevel",0);
    return 1;
    }
    if(dialogid == Dialog_Reg)
    {
    if(!response) return Kick(playerid); //siehe bei Dialog_Login
    if(!strlen(inputtext))//siehe oben
    {
    ShowPlayerDialog(playerid,Dialog_Reg,DIALOG_STYLE_INPUT,"Registration","Bitte gebe dein Passwort zur Registrierung ein","Register","Disconnect");//dialog zum registrieren
    return SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben.");
    }
    new name[MAX_PLAYER_NAME],accFormat[128];
    GetPlayerName(playerid,name,sizeof name);
    format(accFormat,sizeof accFormat,"Accounts/%s.ini",name);
    dini_Create(accFormat);//die datei %s.ini wird dadurch erstellt
    SetPVarString(playerid,"Passwort",inputtext);//das Passwort wird geändert
    dini_Set(accFormat,"Passwort",inputtext);
    SetPVarInt(playerid,"Adminlevel",0);//adminlevel wird so geändert
    }
    return 1;
    }


    Klammer , vergiss die Klammern nicht.

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