/register

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,
    ich wollte mal fragen, ob mir jemand dazu:
    if(strcmp(cmd, "/login", true)==0)
    {
    new tmp[MAX_STRING];

    if(loggedin[playerid])
    { return SendClientMessage(playerid, COLOR_RED, "Du bist bereits eingeloggt."); }

    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    { return SendClientMessage(playerid, COLOR_WHITE, "Benutze: /login [Passwort]"); }


    if(udb_CheckLogin(PlayerName(playerid), tmp))
    {
    beruf[playerid] = dUserINT(PlayerName(playerid)).("Job");
    berufsebene[playerid] = dUserINT(PlayerName(playerid)).("Rang");


    if(dUserINT(PlayerName(playerid)).("Nitroschein") == 1)
    { nitroschein[playerid] = true; }
    else
    { nitroschein[playerid] = false; }


    for(new i=0; i<4; i++)
    {
    format(tmpstring,sizeof(tmpstring), "fschein%d", i);
    if(dUserINT(PlayerName(playerid)).(tmpstring) == 1)
    { fschein[playerid][i] = true; }
    }


    wschein[playerid] = dUserINT(PlayerName(playerid)).("Waffenschein");
    totzeit[playerid] = dUserINT(PlayerName(playerid)).("totzeit");
    klingelton[playerid] = dUserINT(PlayerName(playerid)).("klingelton");


    format(string,sizeof(string),"Du hast dich erfolgreich eingeloggt. Viel Spaß!");
    SendClientMessage(playerid, COLOR_GREEN, string);
    printf("%s hat sich erfolgreich eingeloggt.", PlayerName(playerid));


    format(string, sizeof(string), "%s betritt den Server!", PlayerName(playerid));
    SendClientMessageToAll(COLOR_PINK, string);


    loggedin[playerid] = true;


    if(dUserINT(PlayerName(playerid)).("Auszahlung")==-1)
    {
    new pid = playerid;
    new pname[256];
    new leasingbetrag, bankkonto;


    pname = PlayerName(playerid);


    for(new s; s<200; s++)
    {
    new hatleasing;
    new ratenzahlung;
    new string1[256];


    format(string, sizeof(string),"leasing%d",s);
    ratenzahlung = strval(dUser(pname).(string)) - 1;


    if(ratenzahlung > 0)
    {
    format(string, sizeof(string), "%d", ratenzahlung);
    format(string1, sizeof(string1), "leasing%d", s);
    dUserSet(pname).(string1,string);
    format(string, sizeof(string), "leasingbetrag%d", s);


    hatleasing = strval(dUser(pname).(string));
    if(hatleasing > 0 && ratenzahlung > 0)
    { leasingbetrag += hatleasing; }

    if(ratenzahlung == 1)
    {
    format(string1, sizeof(string1), "leasingbetrag%d", s);
    format(string, sizeof(string), "%d", 0);
    dUserSet(pname).(string1,string);
    format(string, sizeof(string), "%d", 0);
    format(string1, sizeof(string1), "leasing%d", s);
    dUserSet(pname).(string1,string);
    }
    }
    }
    print("Bis hierhin gehts!");
    GiveFirmaMoneyEx(dUserINT(pname).("Job"), -(dUserINT(pname).("grundgehalt")));
    print("Auch bis hierher?");


    SendClientMessage(pid, COLOR_LIGHTBLUE,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    format(tmpstring, sizeof(tmpstring), "Bankkonto: %d $", dUserINT(pname).("konto"));
    SendClientMessage(pid, COLOR_YELLOW, tmpstring);
    format(tmpstring, sizeof(tmpstring), "+ Grundgehalt: %d $", dUserINT(pname).("grundgehalt"));
    SendClientMessage(pid, COLOR_GREEN, tmpstring);
    format(tmpstring, sizeof(tmpstring), "+ Zuschuss vom Staat: %d $", dUserINT(pname).("unterstuetzung"));
    SendClientMessage(pid, COLOR_GREEN, tmpstring);
    format(tmpstring, sizeof(tmpstring), "+ Eigenverdienst: %d $", dUserINT(pname).("Auszahlungsmenge"));
    SendClientMessage(pid, COLOR_GREEN, tmpstring);
    format(tmpstring, sizeof(tmpstring), "- Ratenzahlungen: %d $", leasingbetrag);
    SendClientMessage(pid, COLOR_RED, tmpstring);

    print("und bis hier?");

    bankkonto = strval(dUser(pname).("konto"));
    bankkonto += dUserINT(pname).("grundgehalt") + dUserINT(pname).("unterstuetzung") + dUserINT(pname).("Auszahlungsmenge") - leasingbetrag;

    print("un hier?");

    format(string, sizeof(string),"%d", bankkonto);
    dUserSet(pname).("konto", string);
    format(tmpstring, sizeof(tmpstring), "= Neuer Kontostand: %d $", dUserINT(pname).("konto"));
    SendClientMessage(pid, COLOR_YELLOW, tmpstring);
    SendClientMessage(pid, COLOR_LIGHTBLUE, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");


    dUserSetINT(PlayerName(playerid)).("Auszahlung",0);


    }


    GameTextForPlayer(playerid, "~g~Profil erfolgreich geladen", 5000, 5);
    }
    else
    {
    GameTextForPlayer(playerid,"~r~Profil konnte nich geladen werden",5000,5);
    format(string,sizeof(string),"Fehler! Das angegebene Passwort ist falsch! Bitte erneut versuchen!");
    SendClientMessage(playerid, COLOR_RED, string);
    format(string,sizeof(string),"%s hat ein falsches Passwort (%s) eingegeben.",PlayerName(playerid),tmp);
    printf(string);
    }
    return 1;
    }



    Ein /register Befehl schreiben kann, denn zur Zeit können nur Administratoren per /adminreg einen User registrieren.


    //edit: Der /adminreg Befehl:
    if (strcmp(cmd, "/adminreg", true)==0)
    {
    new pname[256];
    new tmp[256];
    new pw[256];


    if(IsPlayerAdmin(playerid))
    {


    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /adminreg [Name] [passwort]");
    return 1;
    }
    pname = tmp;


    tmp = strtok(cmdtext, idx);


    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /adminreg [Name] [passwort]");
    return 1;
    }
    pw = tmp;



    if (!udb_Exists(pname))
    {
    udb_Create(pname,pw);
    format(string,sizeof(string),"%s wurde erstellt. Passwort: %s",pname,pw);
    SendClientMessage(playerid, COLOR_GREEN, string);
    format(string,sizeof(string),"%d",0);
    dUserSet(pname).("virtualworld",string);
    format(string,sizeof(string),"%d",startgeld);
    dUserSet(pname).("geld",string);


    printf(string);


    if (!udb_Exists("Member"))
    {
    udb_Create("Member",pw);
    }
    udb_Create(pname,pw);
    new ma = dUserINT("Member").("Memberanzahl");
    format(tmpstring,sizeof(tmpstring),"Member%d",ma);
    dUserSet("Member").(tmpstring,pname);
    dUserSetINT("Member").("Memberanzahl",ma + 1);
    dUserSetINT(pname).("geld",15000);
    format(string,sizeof(string),"t");

    dUserSetINT(pname).("haus", -1);
    MovePlayerIntoHouse(pname, 0);
    printf("%s hat einen Account namems %s angelegt",PlayerName(playerid),pname);


    }
    else
    {
    format(string,sizeof(string),"%s wurde nicht erstellt. Grund: Existiert bereits!",pname);
    SendClientMessage(playerid, COLOR_RED, string);
    print(string);
    }
    return 1;


    }

    }

    20€ geschenkt - bei Fragen gerne PN an mich


    Mehr über reCyclix
    reCyclix - more than recycling
    reyCyclix ist ein polnisches Recyclingunternehmen, welches jedem die Möglichkeit bietet, sich an ihrem Geschäftsmodell gewinnbringend zu beteiligen. Normalerweise passiert das, in dem man eine beliebige Summe in Kunststoffmüll investiert, allerdings schenkt reCyclix zur Zeit noch jedem neuem Nutzer 20€, die zur Investition genutzt werden können.

    2 Mal editiert, zuletzt von Key ()