Kann wer dieses FS ein wenig verändern

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 möchte bei meinem Cops and Robbers Server ein Register Login System reinmachen dazu habe ich mir ein Filterscript gedownloaded was auch gut Funktioniert aber könnte mir wer vll noch paar Sachen hinzufügen?
    Hinzugefügt werden soll:
    - /stats wo man sieht wieviel Geld man hat wieviele Wanteds wie oft man gestorben ist, wie oft man jemanden umgebracht hat....
    - Es sollen die Kills und Tode gespeichert werden das es mit /stats funktioniert.
    Falls Möglich:
    - Wie oft man schon jemanden verhaftet hat mit /ar
    - Wieviele Casinos man schon ausgeraubt hat.


    Hier das FS:
    // Register / Login Filterscript //


    #include
    #include
    #include
    #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1


    //Colors//
    #define COLOR_SYSTEM 0xEFEFF7AA
    #define green 0x33FF33AA
    #define blue 0x00FFFFAA


    new PLAYERLIST_authed[MAX_PLAYERS];


    #if defined FILTERSCRIPT


    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print("Register / Login System");
    print("--------------------------------------\n");
    return 1;
    }


    public OnFilterScriptExit()
    {
    return 1;
    }


    #else


    main()
    {
    print("\n----------------------------------");
    print("Register / Login System");
    print("----------------------------------\n");
    }


    #endif


    public OnPlayerRequestSpawn(playerid)
    {
    if (udb_Exists(PlayerName(playerid))){
    if (!PLAYERLIST_authed[playerid]){
    SendClientMessage(playerid,green,"Dein Account ist bereits registriert, benutze /login [Passwort] um dich einzuloggen.");
    return 0;
    }
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid) {
    if (PLAYERLIST_authed[playerid]) {
    // If someone has logged in, it saves money and score.
    dUserSetINT(PlayerName(playerid)).("money",GetPlayerMoney(playerid));
    dUserSetINT(PlayerName(playerid)).("score",GetPlayerScore(playerid));
    dUserSetINT(PlayerName(playerid)).("Wanteds",GetPlayerWantedLevel(playerid));
    }
    PLAYERLIST_authed[playerid]=false;
    return 1;
    }


    public OnPlayerConnect(playerid)
    {


    if (PLAYERLIST_authed[playerid]==0){
    if (udb_Exists(PlayerName(playerid))){
    SystemMsg(playerid,"Dein Account ist bereits registriert, benutze /login [Passwort] um dich einzuloggen.");
    }
    else{ SystemMsg(playerid,"Du hast noch keinen Account benutze /register [Passwort] um dich zu registrieren");
    }


    return 0;
    }
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(login,5,cmdtext);
    dcmd(register,8,cmdtext);
    return 0;
    }


    stock SystemMsg(playerid,msg[]) {
    if ((IsPlayerConnected(playerid))&&(strlen(msg)>0)) {
    SendClientMessage(playerid,COLOR_SYSTEM,msg);
    }
    return 1;
    }


    stock PlayerName(playerid) {
    new name[255];
    GetPlayerName(playerid, name, 255);
    return name;
    }


    dcmd_register(playerid,params[]) {


    if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Du hast bereits einen Account.");
    if (udb_Exists(PlayerName(playerid))) return SystemMsg(playerid,"Du hast bereits einen Account erstellt, benutze /login [Passwort] um dich einzuloggen.");
    if (strlen(params)==0) return SystemMsg(playerid,"Benutze: /register [password]");
    if (udb_Create(PlayerName(playerid),params)) return SystemMsg(playerid,"Du hast deinen Account erfolgreich registriert benutze /login [Passwort].");
    return true;


    }


    dcmd_login(playerid,params[]) {


    if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Du bist bereits eingeloggt.");
    if (!udb_Exists(PlayerName(playerid))) return SystemMsg(playerid,"Du hast noch keinen Account, benutze /register [Passwort] um einen Account zu registrieren");
    if (strlen(params)==0) return SystemMsg(playerid,"Benutze: /login [password]");
    if (udb_CheckLogin(PlayerName(playerid),params)) {
    SetPlayerScore(playerid,dUserINT(PlayerName(playerid)).("score"));
    SetPlayerMoney(playerid,dUserINT(PlayerName(playerid)).("money"));
    SetPlayerWantedLevel(playerid,dUserINT(playerName(playerid)).("Wanteds"));
    PLAYERLIST_authed[playerid]=true;
    return SystemMsg(playerid,"Du hast dich erfolgreich eingeloggt.");
    }
    return SystemMsg(playerid,"Falsches Passwort oder Nickname!");
    }</a_samp>

  • so ein loginscript ist nicht grade schwer zu schreiben und damit solche fehler nicht auftreten würde ich dir raden des selber zu bauen es gibt hier ihn forum genug tutorials darüber. Am besten nimsat du ne tut mit dini.

    Teamspeak zum Quatschen?

    IP: 217.79.182.216:9999

    Jeder kann Semi-Permanent Channel erstellen ;)