Beiträge von [BlaZZeR]BirD

    Hi,


    Ich hab ein Problem mit dem Level & Alter wen ich /stats mache.
    Also wen ich /stats mache steht bei Level: 5870 (?) und bei Alter immer -1 selbst wen ich mit einem CMD das level auf 1 und das alter auf 15 setze steht nach nem Restart/relogg der selbe misst in den stats (wohl bemerkt in der MySQL datenbank nicht ...
    Hier mein /stats cmd
    if(strcmp("/stats",cmdtext,true)==0)
    {
    new string2[128],string3[128],string4[128],rankname[64];
    new SpielerName2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName2, MAX_PLAYER_NAME);
    new sex[20];
    if(SpielerInfo[playerid][pGeschlecht] == 1) { sex = "Männlich"; }
    else if(SpielerInfo[playerid][pGeschlecht] == 2) { sex = "Weiblich"; }
    new ftext[20];
    if(SpielerInfo[playerid][pFraktion] == 0) { ftext = "Zivilist"; }
    else if(SpielerInfo[playerid][pFraktion] == 1) { ftext = "Polizist"; }
    else if(SpielerInfo[playerid][pFraktion] == 2) { ftext = "Kripo"; }
    else if(SpielerInfo[playerid][pFraktion] == 3) { ftext = "Bundeswehr"; }
    if(SpielerInfo[playerid][pFraktion] == 1) {
    switch(SpielerInfo[playerid][pRank]) {
    case 0:(rankname=LSPDR0);
    case 1:(rankname=LSPDR1);
    case 2:(rankname=LSPDR2);
    case 3:(rankname=LSPDR3);
    case 4:(rankname=LSPDR4);
    case 5:(rankname=LSPDR5);
    case 6:(rankname=LSPDR6);
    }
    }
    if(SpielerInfo[playerid][pFraktion] == 2) {
    switch(SpielerInfo[playerid][pRank]) {
    case 0:(rankname=KRIPOR0);
    case 1:(rankname=KRIPOR1);
    case 2:(rankname=KRIPOR2);
    case 3:(rankname=KRIPOR3);
    case 4:(rankname=KRIPOR4);
    case 5:(rankname=KRIPOR5);
    case 6:(rankname=KRIPOR6);
    }
    }
    if(SpielerInfo[playerid][pFraktion] == 3) {
    switch(SpielerInfo[playerid][pRank]) {
    case 0:(rankname=BWR0);
    case 1:(rankname=BWR1);
    case 2:(rankname=BWR2);
    case 3:(rankname=BWR3);
    case 4:(rankname=BWR4);
    case 5:(rankname=BWR5);
    case 6:(rankname=BWR6);
    }
    }
    if(SpielerInfo[playerid][pFraktion] == 0 && SpielerInfo[playerid][pRank] == 0){
    rankname="-";
    }
    new name[256];
    new alter = SpielerInfo[playerid][pAlter];
    new warns = SpielerInfo[playerid][pWarns];
    new nummer = SpielerInfo[playerid][pTeleNR];
    new bank = SpielerInfo[playerid][pBank];
    new jtext[20];
    if(SpielerInfo[playerid][pJob] == 0) { jtext = "Keinen"; }
    else if(SpielerInfo[playerid][pJob] == 1) { jtext = "Detektiv";}
    new ptext[20];
    if(SpielerInfo[playerid][pPremium] == 0) { ptext = "Spieler"; }
    else if(SpielerInfo[playerid][pPremium] == 1) { ptext = "Premium"; }
    else if(SpielerInfo[playerid][pPremium] == 2) { ptext = "S.Premium"; }
    else if(SpielerInfo[playerid][pPremium] == 3) { ptext = "A.Premium"; }
    format(name, sizeof(name),"~| %s |~",SpielerName2);
    SendClientMessage(playerid, WEIß,name);
    format(string,sizeof(string),"Geschlecht: [%s] Alter: [%d] Fraktion: [%s] Rang: [%s]",sex,alter,ftext,rankname);
    SendClientMessage(playerid,WEIß,string);
    format(string2,sizeof(string2),"Warns: [%d] Job:[%s] TeleNR: [%d] Premium: [%s]",warns,jtext,nummer,ptext);
    SendClientMessage(playerid,WEIß,string2);
    format(string3,sizeof(string3),"Level: [%d] Bank: [$%d]",bank,SpielerInfo[playerid][pLevel]);
    SendClientMessage(playerid,WEIß,string3);
    format(string4,sizeof(string4),"Zeit bis zum Payday: [%d Min]",(60-SpielerInfo[playerid][pSpielzeit]));
    SendClientMessage(playerid,WEIß,string4);
    SavePlayer(playerid);
    return 1;
    }


    //edit Überschrift & Push

    Ich hab nun herrausgefunden das die Funktion "OnPlayerCheckK" nicht richtig ausgeführt wird.
    Pastebin link: Klick
    wen sich jemand einloggt wird diese Funktion so aufgerufen:
    OnPlayerCheckK(playerid);
    (früher hieß es OnPlayerLogin(playerid,inputtext); da es dini war.)
    kann mir jemand weiterhelfen?
    hier das überarbeitete Login & register.
    if(dialogid == DIALOG_LOGIN)
    {
    if(response)
    {
    if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    } else {
    new Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(Name), true)) // Wir holen uns das Passwort aus der MySQL Datenbank und überprüfen es mit dem angegebenen passwort.
    {
    //gPlayerLogged[playerid] = 1;
    SetPVarInt(playerid,"Eingeloggt",1); //Falls beide passwörter übereinstimmen wird die Variable auf 1 gesetzt damit wir die Skin auswahl benutzen können.
    LoadPlayer(playerid); //Der Spieler wird "geladen", speich es werden seine Daten aus der Datenbank geholt und in variablen gespeichert um diese im Skript zu verwenden.
    //SpawnPlayer(playerid); //Wir lassen den Spieler Spawnen
    OnPlayerCheckK(playerid);
    return 1;
    } else {
    //Wenn das Passwort falsch war, lassen wir erneut das Login fenster erscheinen damit der Spieler das Richtige Passwort eingibt.
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    } else {
    Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
    }
    /*if(response && strlen(inputtext) > 0)
    {
    OnPlayerLogin(playerid, inputtext);
    } else {
    Kick(playerid);
    }*/
    }
    if(dialogid == DIALOG_REG)
    {
    if(response)
    {
    ShowPlayerDialog(playerid,DIALOG_REG2,DIALOG_STYLE_PASSWORD,"Account erstellen","Gib das Passwort für deinen Account ein:","OK","Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Account","Du benötigst einen Account, um auf diesem Server zu spielen!","Erstellen","Abbrechen");
    }
    }
    if(dialogid == DIALOG_REG2)
    {
    if(response)
    {
    if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_INPUT,"Register","Das angegebene Passwort war zu Kurz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
    return 1;
    } else {
    //gPlayerLogged[playerid] = 1;
    CreateAccount(playerid, inputtext); //Account wird erstellt
    SetPVarInt(playerid,"Eingeloggt",1); //Die variable wird auf 1 gesetzt, damit wir nun die Skin Auswahl benutzen können ohne wieder nach unserem Passwort gefragt zu werden.
    //SpawnPlayer(playerid); //Wir lassen den Spieler Spawnen
    OnPlayerCheckK(playerid);
    return 1;
    }
    } else {
    Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
    }
    /*if(response && strlen(inputtext) > 0)
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Bitte logge dich nun in deinen Account ein!","Login","Abbrechen");
    }
    else
    {
    Kick(playerid);
    }*/
    }


    MFG

    ok versuche es mal


    ich hab aber noch das Problem das wen ich mich einlogge ca. 3 sekunden beim Einlogg fenster bin (dialog usw ist schon weg) und ich nicht gespawnt werde,
    dann werde ich nach den besagten 3 sekunden gespawnt aber kann nichts machen (also keine cmd usw benutzen) und nach weiteren ca. 10sek spawnen auch alle autos, pickups usw
    warum?

    //edit


    hatte Connect_To_Database() bei ongamemodeinit vergessen ...
    aber nun speichert er trotzdem nichts ...


    ich sag z.b. ein Spieler einen cmd macht 50k bekommen das mache ich so
    PlayerInfo[playerid][pAccount] = 50000;
    nun passiert aber nichts also er bekommt das Geld zwar aber nach dem Relogen nichtmehr und in der MySQL datenbank wurde das auchnicht eingetragen.


    MFG

    Tag,


    Ich hab ein Problem bei einem Login/Register system, immer wen ich mich einlogge muss ich mich registrieren (obwohl in der MySQL datenbank der account angelegt wird)
    ich hab schon bemerkt das der nach dem Registrieren nichts speichert.


    Hier mal der Code:
    if(GetPVarInt(playerid,"Eingeloggt") == 0) //Als erstes fragen wir ab ob der Spieler schon eingeloggt ist oder nicht, damit wir nicht bei jeder Skin auswahl uns neu Einloggen müssen.
    {
    if(mysql_CheckAccount(playerid) == 0)//Wür überprüfen ob der Account Existiert, falls nicht Zeigen wir den Dialog zum Registrieren.
    {
    SendClientMessage(playerid, COLOR_YELLOW, "[______Herzlich-Willkommen ______]");
    SendClientMessage(playerid, COLOR_WHITE, "Es wurde kein Account mit deinem Namen gefunden");
    SendClientMessage(playerid, COLOR_WHITE, "also bitte erstelle dir einen um Spielen zu können");
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_PASSWORD,"Register","Bitte Gib ein Passwort an\nACHTUNG: Gebe es NIEMALS weiter\nWir werden sie Nie nach ihrem\nPasswort fragen!","Register","Exit");
    }
    else if(mysql_CheckAccount(playerid) == 1)//Falls doch zeigen wir den Dialog zum Einloggen.
    {
    SendClientMessage(playerid, COLOR_YELLOW, "[______Herzlich-Willkommen ______]");
    SendClientMessage(playerid, COLOR_WHITE, "Dein Account wurde gefunden, bitte gebe dein Password.");
    SendClientMessage(playerid, COLOR_WHITE, "in die geöffnete Box ein um Spielen zu können.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Bitte gib dein Passwort ein\nWir werden sie Nie nach ihrem\nPasswort fragen!","Login","Abbrechen");
    }
    }
    OnPlayerLogin
    if(!strcmp(password, mysql_ReturnPasswort(playername2), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    if(gettime() < PlayerInfo[playerid][pTban])
    {
    format(string, sizeof string, "Du bist noch geTimebannt, komm später wieder.");
    SendClientMessage(playerid,COLOR_RED, string);
    Kick(playerid);
    }
    } else {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Passwort ist nicht korrekt! Bitte gib nun dein richtiges Passwort ein:","Login","Abbrechen");
    }
    if(dialogid == DIALOG_LOGIN)
    {
    if(response && strlen(inputtext) > 0)
    {
    OnPlayerLogin(playerid, inputtext);
    } else {
    Kick(playerid);
    }
    }
    if(dialogid == DIALOG_REG)
    {
    if(response)
    {
    ShowPlayerDialog(playerid,DIALOG_REG2,DIALOG_STYLE_PASSWORD,"Account erstellen","Gib das Passwort für deinen Account ein:","OK","Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Account","Du benötigst einen Account, um auf diesem Server zu spielen!","Erstellen","Abbrechen");
    }
    }
    if(dialogid == DIALOG_REG2)
    {
    if(response && strlen(inputtext) > 0)
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Bitte logge dich nun in deinen Account ein!","Login","Abbrechen");
    }
    else
    {
    Kick(playerid);
    }
    }


    MFG


    //edit überschrift + push

    Vielleicht wird zuvor eine andere Koordinate abgelesen oder du hast einen return fehler gemacht ^^ man brauchte mehr Code ;)


    mfg. :thumbup:


    eigentlich ja nicht da ich ja nichts geändert hab das der mich immer da spawnt und ich kann nicht mehr code schreiben wen ich nicht weiß woran es liegt.

    Tag,


    Immer wen ich spawne falle ich vom Himmel (Über dem Spawn wen man ein neues Script anfängt also in der luft)

    aber der Spieler soll an diese Coordinaten gesetzt werden. (so hab ichs im Script)
    SetPlayerPos(playerid,1133.2610,-1494.6986,22.7690);
    SetPlayerFacingAngle(playerid, 27.2195);
    SetPlayerInterior(playerid,0);
    PlayerInfo[playerid][pInt] = 0;


    MFG

    ok nun zeigt er mir die Grafik nicht breiter an (?) egal wie breit ich es einstelle er änderts nicht ...

    PHP
    if($Char != 0) echo '<img src="images/skins/Skin_'.mysql_result($Player,0,'Char').'.png" width="368" height="100">';
    else echo '<img src="images/skins/Skin_'.mysql_result($Player,0,'Model').'.png" width="368" height="100"><table border="1"><tr><b>';


    Hi,


    Ich hab ein Problem mit PHP/HTML: ich möchte das der Skin des Spielers anzeigen lassen (Bild ist 55x100px groß) aber das Bild wird verkleinert angezeigt:

    so groß sollte der sein: (eigentlich)


    Code der Skinabfrage:

    PHP
    $char = mysql_result($Player,0,'Char');
    if($Char != 0) echo '<img src="images/skins/Skin_'.mysql_result($Player,0,'Char').'.png">';
    else echo '<img src="images/skins/Skin_'.mysql_result($Player,0,'Model').'.png"><table><tr><b>';


    MFG

    Printe einfach
    printf("%d", string);


    //edit
    versuch das mal (einfache lösung)
    new nummer = 0276;
    format(nummer, sizeof nummer,"%d%d%d%d%d",nummer,random(2),random(2),random(1),random(1));


    SpielerInfo[playerid][pHandynummer] = strval(nummer);


    format(string, 256, "Deine neue Handynummer: 0%d",strval(nummer));


    wenn das nicht geht versuch
    format(nummer, sizeof nummer,"%s%d%d%d%d",nummer,random(2),random(2),random(1),random(1));