Error 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
  • Ja hi, ich bin grad dabei mir ein Script zu basteln und bin grad dabei mir ein Loginsystem als erstens rein zu bauen Aber ich verstehe nicht die Probleme wo hier auftauchen, also erstmal die Errors:

    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(221) : error 001: expected token: ";", but found "return"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(233) : error 017: undefined symbol "Register"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(246) : error 001: expected token: "-identifier-", but found "("
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(250) : error 021: symbol already defined: "GetPlayerName"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(252) : error 021: symbol already defined: "dini_Create"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(253) : error 021: symbol already defined: "dini_Set"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(255) : error 010: invalid function or declaration
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(260) : warning 203: symbol is never used: "Spielerdatei"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(260) : warning 203: symbol is never used: "name"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    7 Errors.


    Und Mein Script


    #include <a_samp>
    #include <dini>


    #define DUNKELORANGE 0xFF5000FF


    #define DIALOG_REGISTER 1
    #define DIALOG_LOGIN 2



    main()
    {
    print("\n----------------------------------");
    print(" Blank Gamemode by your name here");
    print("----------------------------------\n");
    }


    public OnGameModeInit()
    {
    // Don't use these lines if it's a filterscript
    SetGameModeText("Blank Script");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
    }


    public OnGameModeExit()
    {
    return 1;
    }


    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das Geschwünschte Passwort ein","Register","Abbrechen");
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    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("/mycommand", cmdtext, true, 10) == 0)
    {
    // Do something here
    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_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,DUNKELORANGE,"Du hast den Vorgang abbgebrochen.");
    Kick(playerid)
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,DUNKELORANGE,"Das Passwort war nicht lang genung.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das Geschwünschte Passwort ein","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    }
    return 1;
    }


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


    stock(Register(playerid,[key])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,DUNKELORANGE,"Erfolgreich registriert.");
    return 1;
    }



    Scripter


  • Erstensmal Danke aber da gibt es ein Problem. Es ist kein Error sondern was schlimmeres:


    Du hast mir nicht erklärt was die Fehler sind oder?
    Und wenn man das nicht macht ist das nur Copy & Paste und fertig!


    Also beim nächsten Mal auch die Fehler sagen damit ich lerne ^^

    Scripter


  • Ich kann se dir ja mal erklären.


    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(221) : error 001: expected token: ";", but found "return"

    Er hat ein return gefunden, aber kein Semikolon ;
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(233) : error 017: undefined symbol "Register"

    Register war nicht definiert.
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(246) : error 001: expected token: "-identifier-", but found "(*
    Ok ka wie ich den erklären soll, hatte den selbst noch net :D
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(250) : error 021: symbol already defined: "GetPlayerName"

    GetPlayerName scheinst du irgentwo ein zweites mal definiert zu haben. Mag PAWN nicht, er will nur eine Definition.
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(252) : error 021: symbol already defined: "dini_Create"

    Siehe GetPlayerName. Nur hier wurde dini_Create ein zweites mal definiert.
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(253) : error 021: symbol already defined: "dini_Set"

    Und hier ist dini_Set ein zweites mal definiert.
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(255) : error 010: invalid function or declaration
    Den kann ich auch net so recht erklären. Er sagt afaik die Funktion gibt es nicht.
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(260) : warning 203: symbol is never used: "Spielerdatei"
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\ServerMechanical.pwn(260) : warning 203: symbol is never used: "name"
    Die 2 holen wir jetzt auf einmal. Diese beiden Warnungen (nicht mit Error verwechseln) beschweren sich, dass du name und Spielerdatei nirgends im Script verwenden würdest.

  • Jo ich habe jetzt wieder ein problem ich habe es jetzt etwas ausgebessert aber habe ich da folgendes Problem: Wenn ich mich registriere kann ich mich mit jedem Passwort anmelden. Jedoch sollte das nicht passieren da ich es so gescriptet habe dass man sich nochmal anmelden muss wenn das Passwort falsch ist.


    Es hat zwar keine Errors aber ja ich hoffe ihrkönnt mir helfen.


    Hier das Script : http://pastebin.com/KBeiXXga


    Lg Slezkh

    Scripter


  • Du hast die Passwortabfrage doch dann sicherlich vergessen (if..)


    Doubleposts sind nicht erlaubt
    #reported.