[HILFE] Errors

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
  • Hi,
    ich habe das Login/Register System versucht aber ich bekomme da viele Errors. ;( ;(


    Könnte mir jemand per TeamViewer helfen?


    Bitte ;(


    Errors:


    Spoiler anzeigen
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(48) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(50) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(52) : error 001: expected token: ")", but found ","
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(55) : error 017: undefined symbol "SpielerName"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(56) : error 017: undefined symbol "DIEALOG_STYLE_PASSWORD"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(60) : error 017: undefined symbol "SpielerName"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(63) : warning 217: loose indentation
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(63) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(66) : warning 225: unreachable code
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(66) : warning 217: loose indentation
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(66) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(66) : error 004: function "OnPlayerDisconnect" is not implemented
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(68) : error 017: undefined symbol "Spielerdatei"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(70) : error 017: undefined symbol "SpielerSpeicher"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(72) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(75) : warning 225: unreachable code
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(75) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(75) : error 004: function "OnPlayerSpawn" is not implemented
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(78) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(81) : warning 225: unreachable code
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(81) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(81) : error 004: function "OnPlayerDeath" is not implemented
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(83) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(86) : warning 225: unreachable code
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(86) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(86) : error 004: function "OnVehicleSpawn" is not implemented
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(88) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(91) : warning 225: unreachable code
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(91) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(91) : error 004: function "OnVehicleDeath" is not implemented
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(93) : error 079: inconsistent return types (array & non-array)
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(96) : warning 225: unreachable code
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(96) : error 029: invalid expression, assumed zero
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(96) : error 004: function "OnPlayerText" is not implemented

    Spoiler anzeigen
    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

    Spoiler anzeigen
    26 Errors.



    EDIT:


    Das Systeam hab ich hiervon: http://forum.sa-mp.de/archiv/9…pvars-basierend-auf-dini/

  • #include <a_samp>
    #include <Dini>
    #include <MD5>


    // ******FARBEN******
    #define COLOR_WHITE 0xFAFAFAFF
    #define COLOR_BLUE 0x00FFFF62
    #define COLOR_DARKBLUE 0x002DA06E
    #define COLOR_GREEN 0x23FF007F
    #define COLOR_DARKGREEN 0x3F9C009F
    #define COLOR_RED 0xFF3835D1


    //*******DEFINES********
    #define DIALOG_REGISTER 1
    #define DIALOG_LOGIN 2


    //********NEW'S********


    main()
    {
    print("\n----------------------------------");
    print(" Serious-Life Version 1.a By German_Clan");
    print("----------------------------------\n");
    }


    public OnGameModeInit()
    {
    return 1;
    }


    public OnGameModeExit()
    {
    return 1;
    }


    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1128.1479,-1541.9180,22.7536);
    SetPlayerCameraPos(playerid, 1165.0212,-1364.3213,42.8927);
    SetPlayerCameraLookAt(playerid, 1133.6624,-1416.4635,30.1500);
    return 1;
    }


    public OnPlayerConnect(playerid);
    {
    if(IsPlayerNPC(playerid))return 1;
    new Spielerdatei[128],string[128],string2[128];
    format(Spielerdatei,sizeof(Spielerdatei,"/Accounts/%s.ini",SpielerName(playerid));
    if(dini_Exists(Spielerdatei))
    {
    format(string,sizeof(string),"{FFFFFF}Herzlich Willkommen zurück auf Serious-Life! {FFFA00}%s.\n{FFFFFF}Gib unten bitte dein Passwort ein!",SpielerName(playerid));
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIEALOG_STYLE_PASSWORD,"Loginvorgang",string,"Einloggen","Abbrechen");
    }
    else
    {
    format(string2,sizeof(string2),"{FFFFFF}Herzlich Willkommen {FFFA00}%s.\n{FFFFFF}Da dies dein erster Besuch hier ist musst du dich erst registrieren!\nBitte gib unten dein gewünschtes Passwort ein!",SpielerName(playerid));
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrierungsvorgang",string2,"Registrieren","Abbrechen");
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    if(GetPVarInt(Spielerdatei,"loggedin") == 1
    {
    SpielerSpeicher(playerid);
    }
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    SetPlayerPos(playerid, 1128.1479,-1541.9180,22.7536);
    return 1;
    }


    public OnPlayerDeath(playerid, killerid, reason)
    {
    return 1;
    }


    public OnVehicleSpawn(vehicleid)
    {
    return 1;
    }


    public OnVehicleDeath(vehicleid, killerid)
    {
    return 1;
    }


    public OnPlayerText(playerid, text[])
    {
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/credits", cmdtext, true, 7) == 0)
    {
    SendClientMessage(playerid,COLOR_DARKGREEN," ");
    SendClientMessage(playerid,COLOR_DARKGREEN," ");
    SendClientMessage(playerid,COLOR_DARKGREEN,"|_______Credits_______|");
    SendClientMessage(playerid,COLOR_WHITE,"Projektleiter: [SL]German_Clan");
    SendClientMessage(playerid,COLOR_WHITE,"Stlv. Projektleiter: [SL]G_Arslan");
    SendClientMessage(playerid,COLOR_WHITE,"Scripter: [SL]German_Clan");
    SendClientMessage(playerid,COLOR_WHITE,"TeamSpeak³Inhaber: ");
    return 1;
    }

    if (strcmp("/serverinfo", cmdtext, true, 10) == 0)
    {
    SendClientMessage(playerid,COLOR_DARKGREEN," ");
    SendClientMessage(playerid,COLOR_DARKGREEN," ");
    SendClientMessage(playerid,COLOR_DARKGREEN,"|_______Serverinformationen_______|");
    SendClientMessage(playerid,COLOR_WHITE,"Forumadresse: www.serious-life.de.to");
    SendClientMessage(playerid,COLOR_WHITE,"TeamSpeak³ Adresse: Kommt noch!");
    SendClientMessage(playerid,COLOR_WHITE,"Serveradresse: Steht noch nicht fest ;)");
    SendClientMessage(playerid,COLOR_WHITE,"Weitere Info's über den Server findet ihr unter '/credits' !");
    SendClientMessage(playerid,COLOR_WHITE,"Bei Fragen meldet euch bitte bei '/report' !");
    return 1;
    }


    return 0;
    }


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    return 1;
    }


    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    return 1;
    }


    public OnPlayerEnterCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnRconCommand(cmd[])
    {
    return 1;
    }


    public OnPlayerRequestSpawn(playerid)
    {
    return 1;
    }


    public OnObjectMoved(objectid)
    {
    return 1;
    }


    public OnPlayerObjectMoved(playerid, objectid)
    {
    return 1;
    }


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    return 1;
    }


    public OnVehicleMod(playerid, vehicleid, componentid)
    {
    return 1;
    }


    public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
    {
    return 1;
    }


    public OnVehicleRespray(playerid, vehicleid, color1, color2)
    {
    return 1;
    }


    public OnPlayerSelectedMenuRow(playerid, row)
    {
    return 1;
    }


    public OnPlayerExitedMenu(playerid)
    {
    return 1;
    }


    public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
    {
    return 1;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    return 1;
    }


    public OnRconLoginAttempt(ip[], password[], success)
    {
    return 1;
    }


    public OnPlayerUpdate(playerid)
    {
    return 1;
    }


    public OnPlayerStreamIn(playerid, forplayerid)
    {
    return 1;
    }


    public OnPlayerStreamOut(playerid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamOut(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast den Loginvorgang abgebrochen und wirst deshalb vom Server gekickt!");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,COLOR_RED,"Dein angegebenes Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Loginvorgang","Dein Account wurde in unserer Datenbank gefunden!\nBitte gib nun dein Passwort ein! ","Login", "Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,MD5_Hash(inputtext));
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast den Registrierungsvorgang abgebrochen und wirst deshalb vom Server gekickt!");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,COLOR_RED,"Dein eingegebenes Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrierung","Willkommen auf meinem Server\n bitte gib nun dein gewünschtes Passwort ein","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,MD5_Hash(inputtext));
    return 1;
    }
    }
    }
    return 1;
    }


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


    //********STOCK'S********


    stock SpielerName(playerid)
    {
    new GetName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,GetName,sizeof(GetName));
    return GetName;
    }


    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts%s.ini",SpielerName(playerid));
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,COLOR_GREEN," ");
    SendClientMessage(playerid,COLOR_GREEN,"|_______Registration_______|");
    SendClientMessage(playerid,COLOR_WHITE,"Du hast dich erfolgreich registriert!");
    SendClientMessage(playerid,COLOR_WHITE,"Viel Spaß wünscht dir das [SL]-Team!");
    dini_IntSet(Spielerdatei,"Level",0);
    dini_IntSet(Spielerdatei,"Banned",0);
    dini_IntSet(Spielerdatei,"Adminlevel",0);
    dini_IntSet(Spielerdatei,"Fraktion",0);
    dini_IntSet(Spielerdatei,"Geld",0);
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    stock Login(playerid,key[])
    {
    new Spielerdatei[128];
    new string2[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    SpielerLadenn(playerid);
    SendClientMessage(playerid,COLOR_WHITE,"Du hast dich erfolgreich eingeloggt!");
    format(string2,sizeof(string2),"[Join] %s hat den Server betreten!",SpielerName(playerid));
    SendClientMessageToAll(COLOR_GREEN,string2);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Loginvorgang","Das angegebene Passwort war leider falsch!/nBitte gib nun unten dein Passwort erneut ein!","Login","Abrrechen");
    }
    return 1;
    }


    stock SpielerLaden(playerid)
    {
    new Spielerdatei[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"loggedin",1);
    SetPVarInt(playerid,"Banned",dini_Int(Spielerdatei,"Banned"));
    if(GetPVarInt(playerid,"Banned")==1)
    {
    SendClientMessage(playerid,COLOR_RED,"Du kannst mit diesem Account nicht spielen, da du gebannt bist\nBei Fragen oder Einwänden melde dich bei einem Admin im Forum!");
    Kick(playerid);
    return 1;
    }
    return 1;
    }

    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Banned",GetPVarInt(playerid||pID,"Banned"));
    return 1;
    }
    return 1;
    }


    Edit: Script nach behobenen Errors aktualisiert

    3 Mal editiert, zuletzt von DerCooper ()

  • Okey danke, sry. Ausgerechnet das einzige was ich kopiert habe ist falsch :pinch: . Naja, die sind noch übrich ;( :


    Spoiler anzeigen
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(51) : warning 217: loose indentation
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(61) : warning 217: loose indentation
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(66) : error 017: undefined symbol "Spielerdatei"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(68) : error 017: undefined symbol "SpielerSpeicher"
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(279) : warning 217: loose indentation
    C:\Users\ziegler\Desktop\_\SA-MP Server\gamemodes\selfmade.pwn(345) : error 017: undefined symbol "SpielerLadenn"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

    Spoiler anzeigen
    3 Errors.



    EDIT: Alles was ich selber machen konnte hab ich gemacht. Nur noch 3 Errors

    2 Mal editiert, zuletzt von DerCooper ()

  • public OnPlayerDisconnect(playerid, reason)
    {
    if(GetPVarInt(Spiuelerdatei,"loggedin") == 1 // zu if(GetPVarInt(playerid,"loggedin") == 1)
    {
    SpielerSpeicher(playerid); // zu SpielerSpeichern(playerid);
    }
    return 1;
    }


    stock Login(playerid,key[])
    {
    new Spielerdatei[128];
    new string2[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    SpielerLadenn(playerid); // zu SpielerLaden(playerid);
    SendClientMessage(playerid,COLOR_WHITE,"Du hast dich erfolgreich eingeloggt!");
    format(string2,sizeof(string2),"[Join] %s hat den Server betreten!",SpielerName(playerid));
    SendClientMessageToAll(COLOR_GREEN,string2);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Loginvorgang","Das angegebene Passwort war leider falsch!/nBitte gib nun unten dein Passwort erneut ein!","Login","Abrrechen");
    }
    return 1;
    }


    Edit: Login beigefügt

  • Bin am Handy, deswegen ists bisschen umständlich. Loose indendation heißt generell, dass etwas falsch eingerückt ist. Und "Spielerladenn" existiert nicht, da deine stock Funktion "Spielerladen" heißt.
    So schwer ist das ganze nicht.