Beiträge von thacoga308

    hey Leute,


    ich suche jemand der mir kurz helfen kann, ich möchte meine Timer/Counter im script kurz testen. Das script ist nix besonderes ich will nur sichergehen ob das mit mehr als 1Person auf dem Server läuft.
    Wenn ich über den localhost und den clienten connecte, laufen die timer/Counter iwie nicht richtig. Ich denke das könnte daran liegen... oder vielleicht wenn man das game pausiert ka ^^
    Kein Plan ob man das über LAN zu zweit testen kann aber ich denke mal über hamachi oder iwas sollte das schon laufen :P


    Schreibt mir ne PM oder added mich Skype dann reden wir weiter



    danke

    Hey Leute,


    kurze Frage, wie erstell ich eine Variable die mir die Spieler die online sind verrät?


    Zum Beispiel was simples wie
    Sendclientmessage es sind %d spieler online.


    Z.b.
    Ich erstelle eine new Variable:
    new variable[MAX_PLAYERS];


    und erhöhe diese dann im Code:
    ++variable[MAX_PLAYERS];


    Ist das korrekt?:D
    Wird diese Variable überhaupt im debug modus bzw. LAN modus erhöht?
    Wie löse ich das ganze, hoffe ihr versteht mein Problem.


    danke

    das war jetzt auf die schnelle hingeklatscht nicht mehr als 1tag arbeit, dafür müsste ich mich dann demnächst nochmal ransetzen. Mal schauen ob ich auch die Lust dafür finde.
    Du kannst versuchen das filterscript auseinanderzunehmen und einzeln in dein gamemode einfügen, wenn du probleme hast kanns dich ja per pm melden. :P
    danke

    Hey Leute,

    ich veröffentliche hier mein allererstes Filterscript was ich bis jetzt gemacht habe, ich hoffe es gefällt euch ist zwar nix besonderes trotzdem immerhin etwas :D
    Ich hoffe es hagelt nicht zuviel an kritik, vergebt mir bitte ich habe erst vor kurzen angefangen zu scripten da kann man nich viel erwarten.



    Feature:
    When Player dies:
    -Spawn Player after 60 seconds in front of Los Santos Hospital
    -Spawn Player with 50% of his health.

    -Display Gametext for player when dead
    -When a Player dies and disconnect from the game, he will spawn at hospital and have to wait 60seconds again.


    Installation:


    Damit das ganze auch Funktioniert benötigt ihr die includes Dini und y_timers Include von Y_LESS, wenn ihr diese nicht schon habt.
    Dann nurnoch in der server.cfg unter filterscript einfügen,gamemode starten, sterben und freuen.


    //edit: Hab vergessen zu erwähnen, dass ihr noch im Ordner scriptfiles einen Ordner erstellen müsst, diesen nennt ihr bitte Accounts.
    Falls ihr den Namen des Ordners ändern möchtet, öffnet die *.pwn Datei und folgt der Anweisung.


    Kleines Video zum Filterscript:

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    blödes fraps hab leider nich alles erwischt aber ihr wollt ja keine 60sec im video warten wollen oder ?:P


    Download:


    Download via. solidfiles - mit includes
    Download via. pastebin


    danke


    thacoga308

    hi leute,


    wie schaffe ich es das man nach dem man stirbt nicht mehr spawnt?
    Ich brauch das für einen Death timer, wenn man im krankenhaus liegt soll man halt ne zeit lang warten und dann wieder gespawnt werden z.b.
    Nur das Problem ist, dass er bei mir nach dem sterben nach 1-2sec respawnt also der automatismus, denk ich mal. wie krieg ich den weg ? :D
    Ich benutze nirgends Spawnplayer o.ä
    außer hier: // so in der art sieht mein timer aus (mit y_timers.inc)

    timer TOTTimer[60000]()
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(i,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(IsPlayerConnected(i))
    {
    if(dini_Int(Spielerdatei,"pTot") == 1)
    {
    dini_IntSet(Spielerdatei,"pTot",0);
    SetPlayerVirtualWorld(i,0);
    SetPlayerSpawn(i);
    SpawnPlayer(i);
    SendClientMessage(i, COLOR_LIGHTBLUE, "Du wurdest aus dem Krankenhaus entlassen!");
    LoadAccount(i);
    TogglePlayerControllable(i, 1);
    }
    }
    }
    return 1;
    }
    dieser wird in OnPlayerDeath verwendet mit: defer TOTTimer();


    Ich Spawne immer in der luft irgendwo, fehlt da noch die onplayerstatechange und wenn ja was soll da rein das der nicht mehr spawnt :D


    Ich hätte den Topic Spawn nach Tod unterdrücken? nennen sollen, wär wohl verständlicher ^^


    //*************************** EDIT ********************************** //


    Hey da keiner antwortet :P
    hier mein Code, mein Ziel ist es Den Spieler nach dem sterben nicht sofort nach 1-2sec zu spawnen.



    public OnPlayerDeath(playerid, killerid, reason)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_IntSet(Spielerdatei,"pTot",1); // 1 == WAHR 0 == FALSCH
    if(dini_Int(Spielerdatei,"pTot") == 1)
    {
    SendClientMessage(playerid,COLOR_LIGHTBLUE, "Du wurdest schwer verletzt ins Krankenhaus gebracht!");
    GameTextForPlayer(playerid, "~w~IN BEHANDLUNG ~n~~r~ DAUER CA. 60 SEKUNDEN", 5000, 3);
    SetPlayerCameraPos(playerid, 1223.379028, -1333.354126, 33.809105);
    SetPlayerCameraLookAt(playerid, 1178.824829, -1325.804077, 13.284119);
    TogglePlayerControllable(playerid,0);
    return 1;
    }
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {


    if(newstate == PLAYER_STATE_SPAWNED)
    {
    new Float: lwx, Float:lwy, Float:lwz;
    GetPlayerPos(playerid, lwx, lwy, lwz);
    if(lwz > 530.0) //the highest land point in sa = 526.8
    {
    SetPlayerSpawn(playerid);
    }
    }
    return 1;
    }


    timer SetPlayerSpawn[3000](playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(dini_Int(Spielerdatei,"pTot") == 1)
    {
    SetPlayerPos(playerid,1181.9417,-1323.1649,13.5815);
    SetPlayerFacingAngle(playerid,260.3822);
    TogglePlayerControllable(playerid,0);
    defer TOTTimer();
    return 1;
    }
    else
    {
    SetPlayerPos(playerid,1107.4147,-1796.2593,16.5938);
    SetPlayerFacingAngle(playerid,89.0384);
    SetPlayerCameraPos(playerid,1107.4147,-1796.2593,16.5938);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }


    timer TOTTimer[60000]()
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(i,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(IsPlayerConnected(i))
    {
    if(dini_Int(Spielerdatei,"pTot") == 1)
    {
    dini_IntSet(Spielerdatei,"pTot",0);
    SetPlayerVirtualWorld(i,0);
    LoadAccount(i);
    SetPlayerSpawn(i);
    SpawnPlayer(i);
    SendClientMessage(i, COLOR_LIGHTBLUE, "Du wurdest aus dem Krankenhaus entlassen!");
    TogglePlayerControllable(i, 1);
    }
    }
    }
    return 1;
    }


    // hier noch meine login fkt wenn ihr euch für die interessiert :P


    timer Login[3000](playerid,string:key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    if(SpielerInfo[playerid][Banned] == 1)
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Dein Account wurde gebannt!");
    Kick(playerid);
    }
    LoadAccount(playerid);
    SetPlayerSpawn(playerid);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast dich erfolgreich eingeloggt!");
    SpawnPlayer(playerid);
    TogglePlayerControllable(playerid,1);
    SpielerInfo[playerid][LoggedIn] = 1;
    return 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Passwort Falsch! Versuch es erneut!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Passwort eingeben:","Einloggen","Abbrechen");
    return 1;
    }
    }



    Meine Frage wäre dann noch, wird nach dem OnPlayerDeath cb das OnPlayerStateChange cb aufgerufen ?? wenn ja was mach ich falsch?:D wenn nein wie kann ich das anders machen?


    hat sich erledigt habs iwie hinbekommen :P

    hey Leute,


    meine Frage wäre, ob und wie es möglich ist mit einem erstellten timer weiterzuarbeiten, ich erhalte die ID und was kann ich damit tun?
    Dazu finde ich leider nicht genügend auskunft könnte mich da jemand aufklären ;)


    In Samp-wiki wird beschrieben wie man timer definiert,startet,verwendet(im einfachsten fall) und zerstört.


    Mich interressiert es, ob es möglich ist den rückgabewert des timers oda den timer selbst in Bedingungen oder Schleifen etc. packen zu können?
    z.B.
    if(timervariable)
    {
    //tuh das
    }


    oder ähnlich. Oder kann man diese nur aufrufen und zerstören ?? ka:D
    Also ich möchte dem Server sagen, WENN der timer zuende gelaufen ist bzw. ausgeführt ist, mach weiter mit dem iwas. Sozusagen das ganze Script stoppen solange der timer läuft dann weiterarbeiten :P


    Ich kenst aus c/c++ das man dort pausieren und weiter machen kann wo man will, ist dies auch hier möglich ?


    hoffe ihr versteht meine Problemstellung :)
    danke

    lag scheinbar echt an der md5 Verschlüsellung


    Zitat

    Ebenfalls schalte doch einfach während der Entwicklungsphase das Debugging ein. Das wird dir unheimlich Zeit sparen.


    was meinst du damit?^^


    Jetz hab ich das prob dass beim ersten login der server abstürzt^^
    Lese ich die rows falsch aus oder ist das sscanf falsch ? :o


    Zudem würde ich gerne wissen ob man den onplayerrequestclass cb bzw. andere ausschalten kann^^

    stock LoginPlayer(playerid, pass[])
    {
    new query[1000];
    format(query, sizeof(query),"SELECT * FROM userdata WHERE pName = '%s' AND pPassword = '%s'",playerdb[playerid][pName],pass);
    printf("Der Spieler %s hat sich Regestriert, die Query lautet %s",playerdb[playerid],query); // bist hierhin kommt der noch
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows() != 0)
    {
    if(mysql_fetch_row(query, "|")) // wrong ??
    {
    sscanf(query,"e<p<|>s[24]s[32]iii>", playerdb[playerid]); // wrong??
    new str[80];
    format(str, sizeof(str),"Welcome %s, you have been loged to your account",playerdb[playerid][pName]);
    printf("der string lautet: %s",str); // das wird nicht mehr ausgegeben
    SendClientMessage(playerid, COLOR_BLUE, str);
    SetPlayerInterior(playerid, 0);
    SetPlayerVirtualWorld(playerid, 0);
    SetPlayerScore(playerid, playerdb[playerid][pLevel]);
    GivePlayerMoney(playerid, playerdb[playerid][pMoney]);
    SetPlayerSkin(playerid,playerdb[playerid][pMoney]);
    SpawnPlayer(playerid);
    playerdb[playerid][pLogged] = 1; // set player loged variable true
    }
    }
    else
    {
    ShowPlayerDialog(playerid,LOGIN_DIALOG,DIALOG_STYLE_PASSWORD,"Login to Account.","Wrong password:","Login","Cancel");
    }
    }


    +--------+-----------+--------+--------+------+-------+--------+
    | pName | pPassword | pLevel | pMoney | IP | pSkin | pAdmin |
    +--------+-----------+--------+--------+------+-------+--------+
    | Player | 12345 | 1 | 20000 | NULL | 24 | NULL |
    +--------+-----------+--------+--------+------+-------+--------+
    1 row in set (0.00 sec)


    mysql> So sieht meine tabelle aus^^ Wie muss ich das sscanf formatieren(bei null werten)?;D


    hier ist der error der beim eingeben des Login dialoges erscheint:^^


    SQL
    [join] Player has joined the server (0:127.0.0.1)
    [MySQL] Error (0): Failed to exeute query. You have an error in your SQL syntax;
     check the manual that corresponds to your MySQL server version for the right sy
    ntax to use near '' at line 1.


    schaut so aus als ob der den string garnich einliest is die format fkt also falsch?:P

    hi leute,


    ich will mir ein login&register system mit mysql machen...


    ich hab den mysql plugin von strickenKid, wenn ihr bessere kennt sagt bescheid^^


    Nun hab ich das Problem wenn ich meinen Server starte und mich einloggen möchte, ein sql-error kommt...
    Unter mysql wird die abfrage ausgeführt.... deshalb denk ich mal das die formatierung der variablen etc. falsch ist ?^^


    Hier mal bisschen code:


    //einmal unter LoginPlayer(playerid,pass[])


    format(query, sizeof(query),"SELECT * FROM userdata WHERE pName = '%s' AND pPassword = md5('%s')",playerdb[playerid][pName],pass);
    mysql_query(query);


    // was ist dort falsch ?? ^^


    //einmal unter IsPlayerRegistered(playerid, usernm[])


    format(query, sizeof(query),"SELECT * FROM userdata WHERE pName = '%s'", usernm);
    mysql_query(query);


    //ondialogresponse
    format(query, sizeof(query),"INSERT INTO userdata (pName,pPassword,pLevel,pMoney,pSkin) VALUES ('%s',md5('%s'),%d,%d,%d)",playerdb[playerid][pName],inputtext,1,20000,24);
    mysql_query(query); // ich glaub hier ist der fehler ;D



    Ich sscanf/sscanf2 plugin auch am start^^


    Wenn ihr in erkennt wär echt cool.

    doch sie wird geschrieben ^^, nur halt mit 0 und undefined werten aufgefüllt ^^



    // hier die onplayerregister
    public OnPlayerRegister(playerid, password[])
    {
    if(IsPlayerConnected(playerid))
    {
    new playername3[MAX_PLAYER_NAME],string[256];
    GetPlayerName(playerid, playername3, sizeof(playername3));
    format(string, sizeof(string), "/Accounts/%s.ini", playername3);
    new File: hFile = fopen(string, io_write);
    if (hFile)
    {
    strmid(PlayerInfo[playerid][pKey], password, 0, strlen(password), 255);
    new var[32];
    format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
    PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
    format(var, 32, "Level=%d\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
    format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
    format(var, 32, "Supporter=%d\n",PlayerInfo[playerid][pSupporter]);fwrite(hFile, var);
    format(var, 32, "DonateRank=%d\n",PlayerInfo[playerid][pDonateRank]);fwrite(hFile, var);
    format(var, 32, "UpgradePoints=%d\n",PlayerInfo[playerid][gPupgrade]);fwrite(hFile, var);
    format(var, 32, "ConnectedTime=%d\n",PlayerInfo[playerid][pConnectTime]);fwrite(hFile, var);
    format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
    format(var, 32, "Sex=%d\n",PlayerInfo[playerid][pSex]);fwrite(hFile, var);
    format(var, 32, "Age=%d\n",PlayerInfo[playerid][pAge]);fwrite(hFile, var);
    format(var, 32, "Origin=%d\n",PlayerInfo[playerid][pOrigin]);fwrite(hFile, var);
    format(var, 32, "CK=%d\n",PlayerInfo[playerid][pCK]);fwrite(hFile, var);
    format(var, 32, "Muted=%d\n",PlayerInfo[playerid][pMuted]);fwrite(hFile, var);
    format(var, 32, "Respect=%d\n",PlayerInfo[playerid][pExp]);fwrite(hFile, var);
    format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
    format(var, 32, "Bank=%d\n",PlayerInfo[playerid][pAccount]);fwrite(hFile, var);
    format(var, 32, "Crimes=%d\n",PlayerInfo[playerid][pCrimes]);fwrite(hFile, var);
    format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
    format(var, 32, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
    format(var, 32, "Arrested=%d\n",PlayerInfo[playerid][pArrested]);fwrite(hFile, var);
    format(var, 32, "WantedDeaths=%d\n",PlayerInfo[playerid][pWantedDeaths]);fwrite(hFile, var);
    format(var, 32, "Phonebook=%d\n",PlayerInfo[playerid][pPhoneBook]);fwrite(hFile, var);
    format(var, 32, "LottoNr=%d\n",PlayerInfo[playerid][pLottoNr]);fwrite(hFile, var);
    format(var, 32, "Fishes=%d\n",PlayerInfo[playerid][pFishes]);fwrite(hFile, var);
    format(var, 32, "BiggestFish=%d\n",PlayerInfo[playerid][pBiggestFish]);fwrite(hFile, var);
    format(var, 32, "Job=%d\n",PlayerInfo[playerid][pJob]);fwrite(hFile, var);
    format(var, 32, "HeadValue=%d\n",PlayerInfo[playerid][pHeadValue]);fwrite(hFile, var);
    format(var, 32, "Jailed=%d\n",PlayerInfo[playerid][pJailed]);fwrite(hFile, var);
    format(var, 32, "JailTime=%d\n",PlayerInfo[playerid][pJailTime]);fwrite(hFile, var);
    format(var, 32, "Materials=%d\n",PlayerInfo[playerid][pMats]);fwrite(hFile, var);
    format(var, 32, "Drugs=%d\n",PlayerInfo[playerid][pDrugs]);fwrite(hFile, var);
    format(var, 32, "Leader=%d\n",PlayerInfo[playerid][pLeader]);fwrite(hFile, var);
    format(var, 32, "Member=%d\n",PlayerInfo[playerid][pMember]);fwrite(hFile, var);
    format(var, 32, "FMember=%d\n",PlayerInfo[playerid][pFMember]);fwrite(hFile, var);
    format(var, 32, "Rank=%d\n",PlayerInfo[playerid][pRank]);fwrite(hFile, var);
    format(var, 32, "Char=%d\n",PlayerInfo[playerid][pChar]);fwrite(hFile, var);
    format(var, 32, "DetSkill=%d\n",PlayerInfo[playerid][pDetSkill]);fwrite(hFile, var);
    format(var, 32, "SexSkill=%d\n",PlayerInfo[playerid][pSexSkill]);fwrite(hFile, var);
    format(var, 32, "BoxSkill=%d\n",PlayerInfo[playerid][pBoxSkill]);fwrite(hFile, var);
    format(var, 32, "LawSkill=%d\n",PlayerInfo[playerid][pLawSkill]);fwrite(hFile, var);
    format(var, 32, "MechSkill=%d\n",PlayerInfo[playerid][pMechSkill]);fwrite(hFile, var);
    format(var, 32, "JackSkill=%d\n",PlayerInfo[playerid][pJackSkill]);fwrite(hFile, var);
    format(var, 32, "CarSkill=%d\n",PlayerInfo[playerid][pCarSkill]);fwrite(hFile, var);
    format(var, 32, "NewsSkill=%d\n",PlayerInfo[playerid][pNewsSkill]);fwrite(hFile, var);
    format(var, 32, "DrugsSkill=%d\n",PlayerInfo[playerid][pDrugsSkill]);fwrite(hFile, var);
    format(var, 32, "CookSkill=%d\n",PlayerInfo[playerid][pCookSkill]);fwrite(hFile, var);
    format(var, 32, "FishSkill=%d\n",PlayerInfo[playerid][pFishSkill]);fwrite(hFile, var);
    format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
    GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
    format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
    format(var, 32, "Int=%d\n",PlayerInfo[playerid][pInt]);fwrite(hFile, var);
    format(var, 32, "Local=%d\n",PlayerInfo[playerid][pLocal]);fwrite(hFile, var);
    format(var, 32, "Team=%d\n",PlayerInfo[playerid][pTeam]);fwrite(hFile, var);
    format(var, 32, "Model=%d\n",PlayerInfo[playerid][pModel]);fwrite(hFile, var);
    format(var, 32, "PhoneNr=%d\n",PlayerInfo[playerid][pPnumber]);fwrite(hFile, var);
    format(var, 32, "House=%d\n",PlayerInfo[playerid][pPhousekey]);fwrite(hFile, var);
    format(var, 32, "Bizz=%d\n",PlayerInfo[playerid][pPbiskey]);fwrite(hFile, var);
    format(var, 32, "HandyGeld=%d\n",PlayerInfo[playerid][pHandyGeld]);fwrite(hFile, var);
    format(var, 32, "HandyVer=%d\n",PlayerInfo[playerid][pHandyVer]);fwrite(hFile, var);
    format(var, 32, "Arbeitgeld=%d\n",PlayerInfo[playerid][pHartzIV]);fwrite(hFile, var);
    format(var, 32, "Hotel=%d\n",PlayerInfo[playerid][pHotel]);fwrite(hFile, var);
    if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
    {
    PlayerInfo[playerid][pPos_x] = 1684.9;
    PlayerInfo[playerid][pPos_y] = -2244.5;
    PlayerInfo[playerid][pPos_z] = 13.5;
    }
    if(Spectate[playerid] != 255)
    {
    PlayerInfo[playerid][pPos_x] = Unspec[playerid][sPx];
    PlayerInfo[playerid][pPos_y] = Unspec[playerid][sPy];
    PlayerInfo[playerid][pPos_z] = Unspec[playerid][sPz];
    PlayerInfo[playerid][pInt] = Unspec[playerid][sPint];
    PlayerInfo[playerid][pLocal] = Unspec[playerid][sLocal];
    }
    format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
    format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
    format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
    format(var, 32, "CarLic=%d\n",PlayerInfo[playerid][pCarLic]);fwrite(hFile, var);
    format(var, 32, "NewLic=%d\n",PlayerInfo[playerid][pNewLic]);fwrite(hFile, var);
    format(var, 32, "FlyLic=%d\n",PlayerInfo[playerid][pFlyLic]);fwrite(hFile, var);
    format(var, 32, "BoatLic=%d\n",PlayerInfo[playerid][pBoatLic]);fwrite(hFile, var);
    format(var, 32, "FishLic=%d\n",PlayerInfo[playerid][pFishLic]);fwrite(hFile, var);
    format(var, 32, "GunLic=%d\n",PlayerInfo[playerid][pGunLic]);fwrite(hFile, var);// hier wird der schein in der Spieler .ini gespeichert
    format(var, 32, "LKWLic=%d\n",PlayerInfo[playerid][pLKWLic]);fwrite(hFile, var);
    format(var, 32, "MotoLic=%d\n",PlayerInfo[playerid][pMotoLic]);fwrite(hFile, var);
    format(var, 32, "Zig=%d\n",PlayerInfo[playerid][pZig]);fwrite(hFile, var);
    format(var, 32, "ZigSucht=%d\n",PlayerInfo[playerid][pZigSucht]);fwrite(hFile, var);
    format(var, 32, "Gun1=%d\n",PlayerInfo[playerid][pGun1]);fwrite(hFile, var);
    format(var, 32, "Gun2=%d\n",PlayerInfo[playerid][pGun2]);fwrite(hFile, var);
    format(var, 32, "Gun3=%d\n",PlayerInfo[playerid][pGun3]);fwrite(hFile, var);
    format(var, 32, "Gun4=%d\n",PlayerInfo[playerid][pGun4]);fwrite(hFile, var);
    format(var, 32, "Ammo1=%d\n",PlayerInfo[playerid][pAmmo1]);fwrite(hFile, var);
    format(var, 32, "Ammo2=%d\n",PlayerInfo[playerid][pAmmo2]);fwrite(hFile, var);
    format(var, 32, "Ammo3=%d\n",PlayerInfo[playerid][pAmmo3]);fwrite(hFile, var);
    format(var, 32, "Ammo4=%d\n",PlayerInfo[playerid][pAmmo4]);fwrite(hFile, var);
    format(var, 32, "CarTime=%d\n",PlayerInfo[playerid][pCarTime]);fwrite(hFile, var);
    format(var, 32, "CDPlayer=%d\n",PlayerInfo[playerid][pCDPlayer]);fwrite(hFile, var);
    format(var, 32, "Wins=%d\n",PlayerInfo[playerid][pWins]);fwrite(hFile, var);
    format(var, 32, "Loses=%d\n",PlayerInfo[playerid][pLoses]);fwrite(hFile, var);
    format(var, 32, "AlcoholPerk=%d\n",PlayerInfo[playerid][pAlcoholPerk]);fwrite(hFile, var);
    format(var, 32, "DrugPerk=%d\n",PlayerInfo[playerid][pDrugPerk]);fwrite(hFile, var);
    format(var, 32, "MiserPerk=%d\n",PlayerInfo[playerid][pMiserPerk]);fwrite(hFile, var);
    format(var, 32, "PainPerk=%d\n",PlayerInfo[playerid][pPainPerk]);fwrite(hFile, var);
    format(var, 32, "TraderPerk=%d\n",PlayerInfo[playerid][pTraderPerk]);fwrite(hFile, var);
    format(var, 32, "Tutorial=%d\n",PlayerInfo[playerid][pTut]);fwrite(hFile, var);
    format(var, 32, "Warnings=%d\n",PlayerInfo[playerid][pWarns]);fwrite(hFile, var);
    format(var, 32, "Adjustable=%d\n",PlayerInfo[playerid][pAdjustable]);fwrite(hFile, var);
    format(var, 32, "Fuel=%d\n",PlayerInfo[playerid][pFuel]);fwrite(hFile, var);
    format(var, 32, "Married=%d\n",PlayerInfo[playerid][pMarried]);fwrite(hFile, var);
    format(var, 32, "MarriedTo=%s\n",PlayerInfo[playerid][pMarriedTo]);fwrite(hFile, var);
    format(var, 32, "SpawnChange=%d\n",SpawnChange[playerid]);fwrite(hFile, var);
    format(var, 32, "WantedLevel=%d\n",WantedLevel[playerid]);fwrite(hFile, var);
    format(var, 32, "WantedPoints=%d\n",WantedPoints[playerid]);fwrite(hFile, var);
    format(var, 32, "PlayMinutes=%d\n",PlayerInfo[playerid][pPlayMinutes]);fwrite(hFile, var);
    format(var, 32, "GesamtMinutes=%d\n",PlayerInfo[playerid][pGesamtMinutes]);fwrite(hFile, var);
    format(var, 32, "MinutesSinceAn=%d\n",PlayerInfo[playerid][pMinutesSinceAn]);fwrite(hFile, var);
    format(var, 32, "SFPASS=%d\n",PlayerInfo[playerid][pSFPASS]);fwrite(hFile, var);
    format(var, 32, "LVPASS=%d\n",PlayerInfo[playerid][pLVPASS]);fwrite(hFile, var);
    format(var, 32, "Offflucht=%d\n",OfflineFlucht[playerid]);fwrite(hFile, var);
    format(var, 32, "Knast=%d\n",Knast[playerid]);fwrite(hFile, var);
    format(var, 32, "Uhr=%d\n",PlayerInfo[playerid][pUhrID]);fwrite(hFile, var);
    format(var, 32, "Handy=%d\n",PlayerInfo[playerid][pHandyID]);fwrite(hFile, var);
    format(var, 32, "KnastTime=%d\n",KnastTime[playerid]);fwrite(hFile, var);
    format(var, 32, "Perso=%d\n",PlayerInfo[playerid][pOwnPerso]);fwrite(hFile, var);
    format(var, 32, "FrakSperre=%d\n",PlayerInfo[playerid][pFrakSperre]);fwrite(hFile, var);
    format(var, 32, "Paycheck=%d\n",PlayerInfo[playerid][pPayCheck]);fwrite(hFile, var);
    format(var, 32, "PayDay=%d\n",PlayerInfo[playerid][pPayDay]);fwrite(hFile, var);
    format(var, 32, "PayDayHad=%d\n",PlayerInfo[playerid][pPayDayHad]);fwrite(hFile, var);
    format(var, 32, "VIPClub=%d\n",PlayerInfo[playerid][pVIPClub]);fwrite(hFile, var);
    format(var, 32, "Zollpass=%d\n",PlayerInfo[playerid][pZollpass]);fwrite(hFile, var);
    format(var, 32, "Rest=%d\n",PlayerInfo[playerid][pRest]);fwrite(hFile, var);
    format(var, 32, "Ban=%d\n",PlayerInfo[playerid][pBan]);fwrite(hFile, var);
    format(var, 32, "BanGrund=%d\n",PlayerInfo[playerid][pBanGrund]);fwrite(hFile, var);
    format(var, 32, "BanTime=%d\n",PlayerInfo[playerid][pBanTime]);fwrite(hFile, var);
    format(var, 32, "BanActor=%d\n",PlayerInfo[playerid][pBanActor]);fwrite(hFile, var);
    format(var, 32, "Karte=%d\n",PlayerInfo[playerid][pKKarte]);fwrite(hFile, var);
    format(var, 32, "Zoll_Year=%d\n", PlayerInfo[playerid][Zoll_Year]);fwrite(hFile, var);
    format(var, 32, "Zoll_Month=%d\n", PlayerInfo[playerid][Zoll_Month]);fwrite(hFile, var);
    format(var, 32, "Zoll_Day=%d\n", PlayerInfo[playerid][Zoll_Day]);fwrite(hFile, var);
    format(var, 32, "Zoll_Hour=%d\n", PlayerInfo[playerid][Zoll_Hour]);fwrite(hFile, var);
    format(var, 32, "Zoll_Minute=%d\n", PlayerInfo[playerid][Zoll_Minute]);fwrite(hFile, var);
    format(var, 32, "CarP=%d\n", PlayerInfo[playerid][pCarP]);fwrite(hFile, var);
    format(var, 32, "BikeP=%d\n", PlayerInfo[playerid][pBikeP]);fwrite(hFile, var);
    format(var, 32, "PayTime=%d\n", PlayerInfo[playerid][pPayTime]);fwrite(hFile, var);
    format(var, 32, "FishTool=%d\n",PlayerInfo[playerid][pFishTool]);fwrite(hFile, var);
    format(var, 32, "KreditRechnung=%d\n",PlayerInfo[playerid][pKreditRechnung]);fwrite(hFile, var);
    //format(var, 32, "Wanteds=%d\n",WantedLevel[playerid]);fwrite(hFile, var);
    fclose(hFile);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{00A5FF}Your Virtual Life","{FFFFFF}Bitte logge dich in deinen {91FF00}Account{FFFFFF} ein!","Login","Abbrechen");
    }
    }
    return 1;
    }


    hier meine onplayerlogin, bissl groß^^
    public OnPlayerLogin(playerid,password[])
    {
    if(PlayerInfo[playerid][pBan] == 0)
    {
    new tmp2[256],string[256];
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    format(string, sizeof(string), "/Accounts/%s.ini", playername2);
    new File: UserFile = fopen(string, io_read);
    if ( UserFile )
    {
    new PassData[256];
    new keytmp[256], valtmp[256];
    fread( UserFile , PassData , sizeof( PassData ) );
    keytmp = ini_GetKey( PassData );
    if( strcmp( keytmp , "Key" , true ) == 0 )
    {
    valtmp = ini_GetValue( PassData );
    strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
    }
    if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
    {
    new key[ 256 ] , val[ 256 ];
    new Data[ 256 ];
    while ( fread( UserFile , Data , sizeof( Data ) ) )
    {
    key = ini_GetKey( Data );
    if( strcmp( key , "Level" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLevel] = strval( val ); }
    if( strcmp( key , "AdminLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
    /// USW USW USW....
    gPlayerLogged[playerid] = 1; //also hier wird die variable dann gesetzt

    und hier noch die onplayerrequestclass // die mich ziemlich stört ^^
    public OnPlayerRequestClass(playerid, classid)
    {
    //PlayerPlaySound(playerid, 1097,-119.9460,23.1096,12.2238);
    //PlayerInfo[playerid][pModel] = Peds[classid][0];
    if(IsPlayerNPC(playerid))
    {
    SpawnPlayer(playerid);
    return 1;
    }
    if(gPlayerAccount[playerid] == 1 && gPlayerLogged[playerid] == 0)
    {
    new string11[256];
    format(string11,sizeof(string11),"{FFFFFF}Herzlich Willkommen zurück\nDu hast von System den {00FF00}Sicherheitscode:{FF0000} %d {FFFFFF}zugewiesen bekommen\nBitte tippe ihn unten in die Box und klicke dann auf absenden!",Code[playerid]);
    ShowPlayerDialog(playerid,DIALOG_LOGIN1,DIALOG_STYLE_INPUT,"Your Virtual Life - Authentifizierung",string11,"Absenden","Abbruch");
    Streamer_SetIntData(STREAMER_TYPE_OBJECT, 0, E_STREAMER_MODEL_ID, 1225);
    }
    else if(gPlayerAccount[playerid] == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Your Virtual Life","{FFFFFF}Herzlich Willkommen auf dem Server Your Virtual Life\nUm deinen Account zu erstellen musst du dich erst registrieren\nDazu Tippe jetzt dein persönliches Passwort in die Zele ein.","Weiter","Abbrechen");
    }
    SetPlayerTeamFromClass(playerid,classid);
    SetupPlayerForClassSelection(playerid);
    return 1;
    }
    Desweiteren wäre meine Frage noch ob es möglich ist, dass wenn der Spieler connected das Onplayerrequestclass cb auszuschalten? also ich will das vll nur zu bestimmten Zeitpunkten ausführen.^^
    Das Problem ist halt wenn der spieler connected, als erster der onplayerrequestclass cb ausgeführt wird. das will ich aber nicht ich will den komplett ausschalten, muss ich den cb dann einfach löschen?^^

    hi leute,


    ich wollte das "Account"sys vom SoL script übernehmen.


    Das Problem ist halt wenn ich den gamemode starte kann ich mich am anfange registrieren, der speichert mir das ganze in einer datei aber
    lädt die nicht wieder, sodass ich mir beim erneuten connecten nochmal registrieren muss und nicht einloggen kann.


    Hier mal die Ausschnitte:^^ Wenn ihr noch welche braucht sagt an..

    //OnPlayerConnect(..)


    if(PlayerInfo[playerid][pBan] == 0)
    {
    SetCodeArray(playerid);
    GetPlayerIp(playerid,pIP[playerid],16);
    new loginstring[256];
    new LoginName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, LoginName, sizeof(LoginName));
    format(loginstring, sizeof(loginstring), "/Accounts/%s.ini", LoginName);
    if(fexist(loginstring))
    {
    gPlayerAccount[playerid] = 1;
    ShowPlayerDialog(playerid,DIALOG_ONLINE,DIALOG_STYLE_MSGBOX,"{00A5FF}WAZUP","{FFFFFF}Herzlich Willkommen auf {00A5FF}WAZUP{FFFFFF}. Bitte klicke auf {91FF00}Weiter{FFFFFF} um zum {91FF00}Login{FFFFFF} zu gelangen.\nWir wünschen dir einen Schönen Aufenthalt!\n\nBitte Halte dich an unsere {91FF00}Regeln.","Weiter","Verlassen");
    PlayerInfo[playerid][pReg] = 1;
    PlayerInfo[playerid][pTut] = 1;
    return 1;
    }
    else
    {
    gPlayerAccount[playerid] = 0;
    ShowPlayerDialog(playerid,DIALOG_NEULING,DIALOG_STYLE_MSGBOX,"{00A5FF}WAZUP","{FFFFFF}Herzlich Willkommen auf {00A5FF}WAZUP{FFFFFF}. Bitte klicke auf {91FF00}Weiter{FFFFFF} um zur {91FF00}Registration{FFFFFF} zu gelangen.\nWir wünschen dir einen Schönen Aufenthalt!\n\nBitte Halte dich an unsere {91FF00}Regeln{FFFFFF}.","Weiter","Verlassen");
    return 1;
    }
    }
    return 1;
    public OnPlayerRequestClass(playerid, classid)
    {
    //PlayerPlaySound(playerid, 1097,-119.9460,23.1096,12.2238);
    //PlayerInfo[playerid][pModel] = Peds[classid][0];
    if(IsPlayerNPC(playerid))
    {
    SpawnPlayer(playerid);
    return 1;
    }
    if(gPlayerAccount[playerid] == 1 && gPlayerLogged[playerid] == 0)
    {
    new string11[256];
    format(string11,sizeof(string11),"{FFFFFF}Herzlich Willkommen zurück\nDu hast von System den {00FF00}Sicherheitscode:{FF0000} %d {FFFFFF}zugewiesen bekommen\nBitte tippe ihn unten in die Box und klicke dann auf absenden!",Code[playerid]);
    ShowPlayerDialog(playerid,DIALOG_LOGIN1,DIALOG_STYLE_INPUT,"Your Virtual Life - Authentifizierung",string11,"Absenden","Abbruch");
    Streamer_SetIntData(STREAMER_TYPE_OBJECT, 0, E_STREAMER_MODEL_ID, 1225);
    }
    else if(gPlayerAccount[playerid] == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Your Virtual Life","{FFFFFF}Herzlich Willkommen auf dem Server Your Virtual Life\nUm deinen Account zu erstellen musst du dich erst registrieren\nDazu Tippe jetzt dein persönliches Passwort in die Zele ein.","Weiter","Abbrechen");
    }
    SetPlayerTeamFromClass(playerid,classid);
    SetupPlayerForClassSelection(playerid);
    return 1;
    }



    Dort wird doch die Datei gelesen, die auch existiert! Wieso gelangt er dann nich zu login?
    kann mir jemand helfen
    danke^^

    hehe , also liegt es nicht an dem Codeteil den du da gesendet hast.


    Also ich seh da keine variablen die auf Afk o.ä. hindeuten,ich denk ma in dem Abschnitt wird lediglich die Message ausgegeben.^^