Beiträge von DarkShadow.

    Guten Abend,
    ich habe schnell eine kurze Frage, ich habe mir einen Befehl gebastelt, der nicht so ganz will :)
    Ich habe heute einen schlechten Tag, weil wirklich nichts klappt :cursing:

    if (strcmp("/stats", cmdtext, true, 10) == 0 || strcmp("/statistik", cmdtext, true, 10) == 0)
    {
    new reihe[444];
    new herkunf[44], ges[44], job[44], njob[44];
    switch(Spieler[playerid][Herkunft])
    {
    case 1:{herkunf="Deutschland";}
    case 2:{herkunf="Österreich";}
    case 3:{herkunf="Schweiz";}
    }
    switch(Spieler[playerid][Fraktion])
    {
    case 0:{job="Penner";}
    case 1:{job="Los Santos Police Department";}
    case 2:{job="Medic";}
    }
    switch(Spieler[playerid][Nebenjob])
    {
    case 0:{njob="Obdachloser";}
    case 1:{njob="Dektektiv";}
    case 2:{njob="Busfaherer";}
    }
    switch(Spieler[playerid][Geschlecht])
    {
    case 1:{ges="männlich";}
    case 2:{ges="weiblich";}
    }
    format(reihe,sizeof(reihe),"Statistik von %s",GetPlayerName(playerid)); // Fehler Zeile ..
    ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"Statistik",reihe,"Koffer","Abbrechen");
    return 0;
    }


    Der Fehler


    Code
    F:\Selfmade 0.1\gamemodes\Selfmade.pwn(184) : warning 202: number of arguments does not match definition
    F:\Selfmade 0.1\gamemodes\Selfmade.pwn(184) : warning 202: number of arguments does not match definition
    F:\Selfmade 0.1\gamemodes\Selfmade.pwn(461) : warning 213: tag mismatch
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    3 Warnings.


    Mit freundlichen Grüßen
    DarkShadow.


    Ist eine gute Idee aber das bringt mich nicht gerade voran. Das Problem habe ich trotzdem immer
    noch X(

    Create3DTextLabel(text[], color, Float:X, Float:Y, Float:Z, Float:DrawDistance, virtualworld, testLOS)


    Create3DTextLabel("Tanke mit\n /tanken",ROT,1005.5516,-940.0248,42.1797,5.0,0,1);



    So gehört es :)


    Also noch mal an dich, dass geht nicht?


    Zitat

    Ansonsten mach eben ein Fake CMD:

    PAWN Quelltext
    1
    ocmd:geld(playerid,params[]){ SetPVarInt(playerid,"Geld",50000);SpielerSpeichern(playerid);return 1;}


    Geht leider auch nicht, bitte woran kann das liegen? :cursing:

    Zitat

    Naja du musst überall SpielerSpeichern(playerid); mit reinmachen sonst geht es ja auch logischer weise nicht da die acc-daten nicht gespeichert werden.


    Habe ich doch, es geht auch nicht wenn ich /Q mache ^^



    Zitat

    Hallo.
    Du setz ja bei (Stock register) Alles auf (0)
    Sprich: Der spieler Hat 0 Geld usw.
    Also das ist kein Fehler von deinem Login / Register System


    MFG
    ShiNuX


    Bitte keine solche Antworten mehr ich glaube das haben wir schon geklärt ... 8|


    Aber schau mal in Dialog, nach registrieren kommt die Frage männlich/weiblich und da setze ich dann
    nicht auf 0 sondern auf 1 ^^

    Guten Tag liebe Community,
    ich habe schon wieder ein Problem mit diesem Register Login System. Ingame
    sieht alles super aus aber wenn ich die .txt Datei des Spielers öffne steht überall
    0. Ich glaube ich habe etwas übersehen und brauche euere Hilfe ..
    Hier der Screen von der .txt Datei

    Und hier mein Script
    //////////////////////////////////////////////////////////////////////////////////////////////////////////
    // Selfmade Script by DarkShadow .... Version 0.1
    // erstellt vom 5.07.2012 bis --.--.----#
    /////////////////////////////////////////////////////////////////////////////////////////////////////////
    // Features
    // Register Login / System


    // ==========
    #include <a_samp>
    #include <ocmd>
    #include <sscanf>
    #include <dini>
    // ==========
    #define ROT 0x910000FF
    #define ORANGE 0xFF9600FF
    #define GRAU 0xC8C8C8FF
    #define WEISS 0xFFFFFFFF
    // ==========
    #define DIALOG_REGISTER 1
    #define DIALOG_LOGIN 2
    #define DIALOG_WILKOMMENZ 3
    #define DIALOG_WILKOMMENB 4
    #define DIALOG_A 5
    #define DIALOG_B 6
    #define DIALOG_C 7
    // ==========
    main()
    {
    print(" Selfmade by DarkShadow ");
    }
    // ==========
    public OnGameModeInit()
    {
    SetGameModeText("German Reallife");
    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)
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.txt",name);
    if(dini_Exists(Playerdatei))
    {
    ShowPlayerDialog(playerid,DIALOG_WILKOMMENZ,DIALOG_STYLE_MSGBOX,"Wilkommen","Schön, dass du wieder einmal auf meinem Selfmade Server vorbeischaust.\nDrücke auf 'Login' und dich einzuloggen.\nViel Spaß","Login","Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_WILKOMMENB,DIALOG_STYLE_MSGBOX,"Wilkommen","Erstmal wilkommen auf meinen Selfmade Server.\nDu bist neu hier und dein Account wurde noch nicht registriert. Drücke auf 'Registrieren'\num dir einen Account zu erstellen.\nWeitere Regeln und eine kleine Einführung erfolgen dann.\n\nBei Fragen melde dich bitte an einen Admin [/admins].\n\tDas Adminteam","Registrieren","Abbrechen");
    }
    return 1;
    }


    // ==========
    public OnPlayerDisconnect(playerid, reason)
    {
    if(GetPVarInt(playerid,"Eingeloggt")==1)
    {
    SpielerSpeichern(playerid);
    }
    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_WILKOMMENZ)
    {
    if(response==0)
    {
    Kick(playerid);
    }
    if(response==1)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Einloggen","Bitte gebe nun dein Passwort ein","Einloggen","Abbrechen");
    }
    }
    if(dialogid==DIALOG_WILKOMMENB)
    {
    if(response==0)
    {
    Kick(playerid);
    }
    if(response==1)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Dein Account wurde erstellt.\nBitte wähle ein Passwort um regelmäßig mit diesem Account zu spielen.","Einloggen","Abbrechen");
    }
    }
    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Log In Vorgang abgebrochen!");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,ORANGE,"Dein eingegebenes Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Log In Vorgang","Dein Account wurde in unserer Datenbank gefunden!\nBitte gib nun dein Passwort ein! ","LogIn", "Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,ORANGE,"Dein eingegebenes Passwort war nicht lang genug!");
    Kick(playerid);
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    ShowPlayerDialog(playerid,DIALOG_A,DIALOG_STYLE_LIST,"Informationen","männlich\nweiblich","Weiter","Abbrechen");
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_A)
    {
    if(response==1)
    {
    switch(listitem)
    {
    case 0:
    {
    SetPVarInt(playerid,"Geschlecht",1);
    ShowPlayerDialog(playerid,DIALOG_B,DIALOG_STYLE_LIST,"Herkunft","Deutschland\nOesterreich\nSchweiz","Weiter","Abbrechen");
    }
    case 1:
    {
    SetPVarInt(playerid,"Geschlecht",2);
    ShowPlayerDialog(playerid,DIALOG_B,DIALOG_STYLE_LIST,"Herkunft","Deutschland\nOesterreich\nSchweiz","Weiter","Abbrechen");
    }
    }
    }
    }
    if(dialogid==DIALOG_B)
    {
    if(response==1)
    {
    switch(listitem)
    {
    case 0:
    {
    SetPVarInt(playerid,"Herkunft",1);
    ShowPlayerDialog(playerid,DIALOG_C,DIALOG_STYLE_MSGBOX,"Tutorial","Es wird nun ein kleines Tutorial folgen, was dir den Server zeigen soll.\nPass gut auf um einen guten Start in den Server zu haben.","Tutorial","Abbrechen");
    }
    case 1:
    {
    SetPVarInt(playerid,"Herkunft",2);
    ShowPlayerDialog(playerid,DIALOG_C,DIALOG_STYLE_MSGBOX,"Tutorial","Es wird nun ein kleines Tutorial folgen, was dir den Server zeigen soll.\nPass gut auf um einen guten Start in den Server zu haben.","Tutorial","Abbrechen");
    }
    case 2:
    {
    SetPVarInt(playerid,"Herkunft",3);
    ShowPlayerDialog(playerid,DIALOG_C,DIALOG_STYLE_MSGBOX,"Tutorial","Es wird nun ein kleines Tutorial folgen, was dir den Server zeigen soll.\nPass gut auf um einen guten Start in den Server zu haben.","Tutorial","Abbrechen");
    }
    }
    }
    }
    return 1;


    }



    // ==========
    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    return 1;
    }
    // ==========
    stock Register(playerid,key[])
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.txt",name);
    dini_Create(Playerdatei);
    SetPlayerScore(playerid,0);
    dini_Set(Playerdatei,"Passwort",key);
    dini_IntSet(Playerdatei,"Adminlevel",0);
    dini_IntSet(Playerdatei,"Geschlecht",0);
    dini_IntSet(Playerdatei,"Geld",0);
    dini_IntSet(Playerdatei,"Level",0);
    dini_IntSet(Playerdatei,"Herkunft",0);
    return 1;
    }
    stock Login(playerid,key[])
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.txt",name);
    if(!strcmp(key,dini_Get(Playerdatei,"Passwort"),false))
    {
    AccountLaden(playerid);
    }
    else
    {
    SendClientMessage(playerid,ORANGE,"Dein hast ein falsches Passwort eingegeben!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Log In Vorgang","Dein Account wurde in unserer Datenbank gefunden!\nBitte gib nun dein Passwort ein! ","LogIn", "Abbrechen");
    }
    return 1;
    }
    stock AccountLaden(playerid)
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Playerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Playerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Playerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Geschlecht",dini_Int(Playerdatei,"Geschlecht"));
    SetPVarInt(playerid,"Herkunft",dini_Int(Playerdatei,"Herkunft"));
    SetPVarInt(playerid,"Eingeloggt",1);
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,ROT,"Du bist vom Server gebannt!");
    Kick(playerid);
    }
    return 1;
    }
    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"Eingeloggt")==1)
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Playerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Playerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Playerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Playerdatei,"Geschlecht",GetPVarInt(playerid,"Geschlecht"));
    dini_IntSet(Playerdatei,"Herkunft",GetPVarInt(playerid,"Herkunft"));
    dini_IntSet(Playerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    }
    }
    stock IstSpielerEinAdmin(playerid,rang)
    {
    if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
    return 0;
    }
    stock SpielerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }
    // ==========
    ocmd:makeadmin(playerid,params[])
    {
    new pID, rang, string[128];
    if(IsPlayerAdmin(playerid))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
    if(sscanf(params,"ui",pID,rang))return SendClientMessage(playerid,ROT,"Benutzung: /makeadmin [ID] [rang]");
    if(rang < 0 || rang > 5000)return SendClientMessage(playerid,ROT,"Der Rang darf nicht 0 oder unter 0 oder über 5000 sein!");
    SetPVarInt(pID,"Adminlevel",rang);
    format(string,sizeof(string),"Du hast %s zu einem Admin rang %d gemacht.",SpielerName(pID),rang);
    SendClientMessage(playerid,ROT,string);
    format(string,sizeof(string),"Admin %s hat dich zu einem Admin rang %d gemacht!",SpielerName(playerid),rang);
    SendClientMessage(pID,ROT,string);
    return 1;
    }
    Würde mich sehr freuen wenn jemand den Fehler schnell finden würde.


    Mit freundlichen Grüßen
    DarkShadow

    Guten Tag liebe Community,
    ich habe eine Frage. Ich möchtet einen Godfather editieren, weiß
    aber nicht welchen ich nehmen soll. Ich habe mich schon im Showroom
    umgesehe, aber keinen guten gesehen. Ich kenne mich gut aus und möchte
    einfach ein paar Systeme darin ändern. Ich würde mich freuen wenn ihr mir
    einen guten zeigen könnt.


    Danke .


    PS: Ich mache keinen Server auf. Ich möchte nur üben um danach ein
    richtiges dynamisches Selfmade machen zu könne :)


    Gehört das hier her, wenn nicht bitte entschuldigen wusste nicht wohin ^^

    Ich habe es mal bei einem Freund gespielt, aber die Steuerung ist
    schlimm, dass reagiert irgendwie. Sorry aber ich würde dir
    das Spiel nicht empfehlen. Aber lies dir mal das hier durch ist
    sehr informativ ...


    Lessssen


    if(strcmp(cmdtext, "/stats", true)==0)
    {
    new string[128];
    new fraktname[64];
    new money=GetPlayerMoney(playerid);
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{fraktname="Keine";}
    case 1:{fraktname="SAPD";}
    case 2:{fraktname="Army";}
    }
    SendClientMessage(playerid, Blau,string);
    //1 Reihe
    format(string,sizeof(string),"[Name: %s] [Level: %i] [Adminlevel: %i] [Fraktion: %s] [Geld: %i]",SpielerName(playerid),GetPlayerScore(playerid),GetPVarInt(playerid,"Adminlevel"),fraktname,money);
    SendClientMessage(playerid, Blau, string);
    return 1;
    }



    Mach es so ... ^^



    (e) so müsste es jetzt ganz sicher gehen ...

    Zitat

    Ich würde eher aus dem true ein False machen.
    Denn beim Passwort sollte man schon genau auf die Rechtschreibung achten

    PAWN Quelltext
    1
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))


    Das kommt dann ja auf das gleiche, wie ich gesagt habe 8|

    Ich habe mich mal bei euch ein bisschen umgesehen. Das Forum
    ist sehr schön, finde es aber ein bisschen unübersichtlicht. Die Vorstellung
    ist sehr sehr schön und spricht mich an. Den Server werde ich jetzt mal testen
    gehen :)


    8/10 Insgesamt :D

    if(strcmp(key,dini_Get(Spielerdatei,"Passwort"),true))
    {
    LoadAccount(playerid);
    SendClientMessage(playerid,TÜRKIS,"Du hast dich erfolgreich eingeloggt.");
    return 1;
    }


    Ich glaube das muss so sein, bin mir aber nicht ganz sicher ... Probier mal aus :thumbup: