Beiträge von Butchey

    format(string, 128, "Name: %s | ID: %d | IP: %s | Score: %s", pName, i, Ip, Score);


    zu..


    format(string, 128, "Name: %s | ID: %d | IP: %s | Score: %d", pName, i, Ip, Score);


    Ich denk mal das ihr mein Problem lösen könnt


    Also, ich henge jetzt schon ca. 1 Woche daran mein Carsystem (was auf MySQL basiert) zu vollenden
    Kriege aber nicht auf die Reihe das/die Auto/s erfolgreich zu erstellen. Das laden
    Funktioniert meiner Meinung nach einwandfrei, das speichern und erstellen der Fahrzeuge jedoch nicht.. Aber da könnt
    Ihr mir vllt. Auf die Sprünge helfen.
    Wie auch immer, ich poste jetzt einfach Mal die Zeilen die mir Probleme bereiten:


    http://pawn.pastebin.com/ZiFzSD9Y


    Ich wäre euch unendlich dankbar wenn ihr mir helfen könntet.
    Wenn ihr mehr Informationen braucht sagt mir bitte Bescheid, ich denke jedoch das dass genügt.




    MfG Butchey

    Hey.. /me hat wiedermal ein Problem :s


    Wenn ich den Command (/newhouse) benutze, dann kommt einfach nur ein
    "Server unknown Command" mehr nicht.
    Woran liegt das?


    /EDIT: So, jetzt wird schonmal das Pickup und der 3dtext erstellt. Jedoch wird der Besitzer nicht angezeigt.



    Hier der Command:
    if(!strcmp(cmd, "/newhouse"))
    {
    tmp = strtok(cmdtext, idx);
    new player;
    player = strval(tmp);


    if (!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_RED, "[ACMD] Ein neues Haus errichten.");
    SendClientMessage(playerid, COLOR_RED, "[ACMD] /newhouse [ID]");
    SendClientMessage(playerid, COLOR_RED, "[ACMD] ID: gehört das Haus");
    return 1;
    }
    else
    {
    new Float:eingangx, Float:eingangy, Float:eingangz;
    GetPlayerPos(playerid, eingangx, eingangy, eingangz);
    CreateHouse(player, eingangx, eingangy, eingangz);
    }
    }


    Hier das Stock:
    stock CreateHouse(pid, Float:eex, Float:eey, Float:eez)
    {
    new string[50];


    new Float:eez2;
    eez2 = eez + 0.4;


    housing[schon_erstellt][ex] = (eex);
    housing[schon_erstellt][ey] = (eey);
    housing[schon_erstellt][ez] = (eez);
    housing[schon_erstellt][ist_da] = (1);
    housing[schon_erstellt][besitzer] = pid;
    schon_erstellt++;

    CreatePickup(1272, 1, eex, eey, eez, 0);
    format(string, sizeof(string), "Besitzer:%s\nMiete:%d",housing[schon_erstellt][besitzer], housing[schon_erstellt][miete]);
    Create3DTextLabel(string, COLOR_PICKUP3DTEXT, eex, eey, eez2, 10, 0, 0);
    }


    Enum: (zur Sicherheit :P)
    enum haus{
    Float:ex,
    Float:ey,
    Float:ez,
    ist_da,
    miete,
    Float:ix,
    Float:iy,
    Float:iz,
    besitzer


    }
    new housing[MAXIMAL_PICKUPS][haus];
    new schon_erstellt;


    Mfg Butchey

    Hey, hab mal wieder ein Problem :>
    ..Also ich hab mir ein stock erstellt.
    Indem ich mich an einem ähnlichen Stock orientiert hab.
    Bloß jetzt kommen parr Errors (unterm pwn Quelltext gepostet) die ich nicht wegbekomme :s
    vlt. könnt ihr mir ja helfen.



    Zeile 2011 stock CreateInteriorPickup(pickupid, 3dText, Float:x1, Float:y1, Float:z1)
    Zeile 2012 {
    Zeile 2013 new Float:z2;
    Zeile 2014 z2 = z1 + 0.4;
    Zeile 2015 Create3DTextLabel(3dText, COLOR_PICKUP3DTEXT, x1, y1, z2, 10, 0, 0);
    Zeile 2016 AddStaticPickup(pickupid, 1, x1, y1, z1, 0);
    Zeile 2017 }



    Errors:

    Code
    (2211) : error 010: invalid function or declaration
    (2211) : error 010: invalid function or declaration
    (2211 -- 2214) : error 010: invalid function or declaration
    (2211 -- 2214) : fatal error 107: too many error messages on one line

    Hey..
    Es dreht sich um folgenden Codeschnipsel:


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new nvehicleid = GetPlayerVehicleID(playerid);


    if(newstate == PLAYER_STATE_DRIVER)
    {
    if (PlayerInfo[playerid][pFraktion] > 1 && PlayerInfo[playerid][pFraktion] < 1)
    {
    if (strcmp(fahrzeugdaten[nvehicleid][gewerbeowner],"lspd") == 1)
    {
    TogglePlayerControllable(playerid, true);
    GameTextForPlayer(playerid, "~r~Kein LSPD Officer!", 1000, 1);
    return 1;
    }
    }

    Wenn ich in das/ein Auto das dem Gewerbe "lspd" zugeteilt wurde, und ich in der Fraktion 3 bin kann ich trotzdem in das Auto einsteigen.
    Wo liegt der Fehler?
    an dem laden/speichern der Daten für das Veh liegt es mit sicherheit nicht.

    Hey Brotfischer.
    Ich hab folgendes Problem:
    Wenn ich die Daten der Spieler speichern (siehe "Public UserUpdate(playerid)")
    Funktioniert aufeinmal kein Command mehr, als ob das Script hacken geblieben ist. Woran kann das liegen?
    Werden zu viele Ressourcen verbraucht?
    Die Daten die eig. gespeichert werden sollen werden in der MySQL Tabelle auch nicht gepeichert.



    public UserUpdate(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pLogged]==1)
    {
    new playername[255];
    GetPlayerName(playerid,playername,sizeof(playername));
    new bedien[255];
    new admin[255];
    new geld[255];
    PlayerInfo[playerid][pGeld] = GetPlayerMoney(playerid);
    new bankgeld[255];
    new vip[255];
    new kills[255];
    new tode[255];
    new level[255];
    new fraktion[255];
    new leader[255];
    new vorname[255];
    new nachname[255];
    new knast[255];
    new autoschein[255];
    new flugschein[255];
    new motorradschein[255];
    new geburtsdatum[255];
    new angelschein[255];
    new bootschein[255];
    new waffenschein[255];
    new frakrank[255];


    format(admin,255,"%d",PlayerInfo[playerid][pAdmin]);
    format(geld,255,"%d",PlayerInfo[playerid][pGeld]);
    format(bankgeld,255,"%d",PlayerInfo[playerid][pBankgeld]);
    format(vip,255,"%d",PlayerInfo[playerid][pVip]);
    format(kills,255,"%d",PlayerInfo[playerid][pKills]);
    format(tode,255,"%d",PlayerInfo[playerid][pTode]);
    format(level,255,"%d",PlayerInfo[playerid][pLevel]);
    format(fraktion,255,"%d",PlayerInfo[playerid][pFraktion]);
    format(leader,255,"%d",PlayerInfo[playerid][pLeader]);
    format(vorname,255,"%s",PlayerInfo[playerid][pVorname]);
    format(nachname,255,"%s",PlayerInfo[playerid][pNachname]);
    format(knast,255,"%d",PlayerInfo[playerid][pKnast]);
    format(autoschein,255,"%d",PlayerInfo[playerid][pAutoschein]);
    format(flugschein,255,"%d",PlayerInfo[playerid][pFlugschein]);
    format(motorradschein,255,"%d",PlayerInfo[playerid][pMotorradschein]);
    format(geburtsdatum,255,"%d",PlayerInfo[playerid][pGeburtsdatum]);
    format(angelschein,255,"%d",PlayerInfo[playerid][pAngelschein]);
    format(bootschein,255,"%d",PlayerInfo[playerid][pBootschein]);
    format(waffenschein,255,"%d",PlayerInfo[playerid][pWaffenschein]);
    format(frakrank,"%d",PlayerInfo[playerid][pFrakrank]);

    format(bedien,sizeof(bedien),"Nickname='%s'",playername);
    mysqlupdate("userdata",bedien,"Adminlevel",admin);
    mysqlupdate("userdata",bedien,"Geld",geld);
    mysqlupdate("userdata",bedien,"Bankgeld",bankgeld);
    mysqlupdate("userdata",bedien,"Vip",vip);
    mysqlupdate("userdata",bedien,"Kills",kills);
    mysqlupdate("userdata",bedien,"Tode",tode);
    mysqlupdate("userdata",bedien,"Level",level);
    mysqlupdate("userdata",bedien,"Fraktion",fraktion);
    mysqlupdate("userdata",bedien,"Leader",leader);
    mysqlupdate("userdata",bedien,"Vorname",vorname);
    mysqlupdate("userdata",bedien,"Nachname",nachname);
    mysqlupdate("userdata",bedien,"Knast",knast);
    mysqlupdate("userdata",bedien,"Autoschein",autoschein);
    mysqlupdate("userdata",bedien,"Flugschein",flugschein);
    mysqlupdate("userdata",bedien,"Motorradschein",motorradschein);
    mysqlupdate("userdata",bedien,"Geburtsdatum",geburtsdatum);
    mysqlupdate("userdata",bedien,"Angelschein",angelschein);
    mysqlupdate("userdata",bedien,"Bootschein",bootschein);
    mysqlupdate("userdata",bedien,"Waffenschein",waffenschein);
    mysqlupdate("userdata",bedien,"Frakrank",frakrank);
    }
    }
    }



    MfG Butchey

    Sieht schonmal "besser" aus..
    jetzt sieht es es so aus "Email: f1"
    eig. sollte da fleischerphilipp@yahoo.de stehen




    //Edit No.2 :


    [pwn]public Login(playerid,playername[])
    {
    new query[256];
    new data[255];
    new bedienung[256];
    format(bedienung,sizeof(bedienung),"Nickname='%s'",playername);
    format(query,sizeof(query),"SELECT * FROM userdata WHERE %s",bedienung);
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    mysql_fetch_field("Adminlevel",data);
    PlayerInfo[playerid][pAdmin]=strval(data);
    mysql_fetch_field("Banned",data);
    PlayerInfo[playerid][pBanned]=strval(data);
    mysql_fetch_field("Vip",data);
    PlayerInfo[playerid][pVip]=strval(data);
    mysql_fetch_field("Donator",data);
    PlayerInfo[playerid][pDonator]=strval(data);
    mysql_fetch_field("Bankgeld",data);
    PlayerInfo[playerid][pBankgeld]=strval(data);
    mysql_fetch_field("Fraktion",data);
    PlayerInfo[playerid][pFraktion]=strval(data);
    mysql_fetch_field("Knast",data);
    PlayerInfo[playerid][pKnast]=strval(data);
    mysql_fetch_field("Autoschein",data);
    PlayerInfo[playerid][pAutoschein]=strval(data);
    mysql_fetch_field("Motorradschein",data);
    PlayerInfo[playerid][pMotorradschein]=strval(data);
    mysql_fetch_field("Flugschein",data);
    PlayerInfo[playerid][pFlugschein]=strval(data);
    mysql_fetch_field("Bootschein",data);
    PlayerInfo[playerid][pBootschein]=strval(data);
    mysql_fetch_field("Angelschein",data);
    PlayerInfo[playerid][pAngelschein]=strval(data);
    mysql_fetch_field("Waffenschein",data);
    PlayerInfo[playerid][pWaffenschein]=strval(data);
    mysql_fetch_field("Kills",data);
    PlayerInfo[playerid][pKills]=strval(data);
    mysql_fetch_field("Tode",data);
    PlayerInfo[playerid][pTode]=strval(data);
    mysql_fetch_field("Level",data);
    PlayerInfo[playerid][pLevel]=strval(data);
    mysql_fetch_field("Frakrank",data);
    PlayerInfo[playerid][pFrakrank]=strval(data);
    mysql_fetch_field("Leader",data);
    PlayerInfo[playerid][pLeader]=strval(data);
    mysql_fetch_field("Vorname",data);
    strmid(PlayerInfo[playerid][pVorname], data, 0, strlen(data), 255);
    mysql_fetch_field("Nachname",data);
    strmid(PlayerInfo[playerid][pNachname], data, 0, strlen(data), 255);
    mysql_fetch_field("Geburtsdatum",data);
    strmid(PlayerInfo[playerid][pGeburtsdatum], data, 0, strlen(data), 255);
    mysql_fetch_field("EMail",data);
    strmid(PlayerInfo[playerid][pEmail], data, 0, strlen(data), 255);


    Hier mal die Zeilen wo die ganzen PlayerInformationen geladen werden..

    if ( !strcmp(cmd, "/setmoney", true))
    {
    tmp = strtok(cmdtext,idx);
    new player = ReturnUser( tmp );


    if (!strlen(tmp))
    {
    SendClientMessage(playerid, ADMIN_CMD_COLOR, "[Adminhilfe] Setzt das Geld einer Person.");
    SendClientMessage(playerid, ADMIN_CMD_COLOR, "[Adminhilfe] /setmoney [playerid] [Betrag]");
    return 1;
    }


    tmp = strtok(cmdtext,idx);
    new playergivemoney = strval( tmp );



    if (IsPlayerConnected(player))
    {
    GetPlayerName(player, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));


    new adminleveln = PlayerInfo[playerid][pAdmin];
    format( string, sizeof(string), "[ACMD] %s %s hat dein Geld auf $%d gesetzt!",adminname[adminleveln],sendername,playergivemoney);
    SendClientMessage(player, ADMIN_CMD_COLOR, string);


    adminleveln = PlayerInfo[player][pAdmin];
    format( string, sizeof(string), "[ACMD] Du hast das Geld von %s %s auf $%d gesetzt!",adminname[adminleveln],giveplayer,playergivemoney);
    SendClientMessage(playerid, ADMIN_CMD_COLOR, string);


    new playernewmon = playergivemoney - GetMoney(player);
    GiveMoney(player, playernewmon);


    for (new i; i <= MAX_PLAYERS; i++)
    {
    if ( PlayerInfo[i][pAdmin] > 0 )
    {
    adminleveln = PlayerInfo[playerid][pAdmin];
    format( string, sizeof(string), "[ACMD] %s %s hat das Geld von %s (id %d) auf $%d gesetzt!",adminname[adminleveln],sendername,giveplayer,player,playergivemoney);
    SendClientMessage(i, ADMIN_CMD_COLOR, string);
    }
    }


    return 1;


    } else {
    format( string, sizeof(string), "[ACMD] Fehler: Der User mit der ID %s ist nicht online!",player);
    SendClientMessage(playerid, ADMIN_CMD_COLOR, string);
    return 1;
    }


    }


    Ich glaube es liegt an diesem Befehl..
    denn wenn ich ihn verwende funktioniert alles soweit die "SendClientmessages" werden auch gesendet. jedoch kommt danach ein "Server unknown Command" ?( Hmm




    EDIT:
    Hier der ganze "OnPlayerCommandText" Public: http://pastebin.com/rBfvHecw


    EDIT2: Link funzt jetzt X(

    Hey..
    So ich hab folgendes Problem.
    Wenn ich meinen Server starte, drauf connecte und ein parr commands eingeb funktioniert alles noch gut..
    Jedoch nach Rund 1-3 Minuten funktioniert kein einziger Command "unknown Command"


    Warum ist das so, und wie kann ich es beheben?

    Hallo Breadfisher :P
    Ich hab ein bei dem laden aus einer MySQL Tabelle/Spalte.
    Wenn sich ein Spieler einloggt sollte eig. die Email geladen werden und in "PlayerInfo[playerid][pEMail]" gespeichert werden
    jedoch wird die Email nicht richtig gespeichert.. Output = "0" .. obwohl dort z.B "Max@Mustermann.bsp" stehen sollte.


    naja schaut euch einfach mal alles an vlt. findet ihr ja einen Fehler.


    So ist die Spalte angelegt:


    Hier das enum:

    enum pInfo{
    pEmail[256],
    };
    new PlayerInfo[MAX_PLAYERS][pInfo];


    Hier der Registerdialog indem die Email befragt/gespeichert wird.

    if(dialogid==2) /* Dialog in dem die eingegebene Email adresse gespeichert wird :( */
    {
    if(response==1) //Button = Zurück
    {
    SendClientMessage(playerid,COLOR_SUCCESSFUL,"Anderes");
    ShowPlayerDialog(playerid,1,1,"Registersystem","Du hast noch keinen Account \n Bitte gebe dein Passwort ein!","Abbrechen","Bestätigen!");
    }
    if(response==0) Button = nächster Schritt.. naja, egal und unwichtig :I
    {
    format(RegInfo[playerid][EMail],255,"%s",inputtext);
    GetPlayerIp(playerid,RegInfo[playerid][IP],255);
    new Year, Month, Day;
    getdate(Year, Month, Day);
    format(RegInfo[playerid][RegisterDatum],255,"%02d.%02d.%d", Day, Month, Year);
    ShowPlayerDialog(playerid,35,DIALOG_STYLE_INPUT,"Registersystem [Geburtsdatum]","Wann wurdest du Geboren?\n\n(DD.MM.YY)","Zurück","Bestätigen");
    }
    }



    Wenn ein Spieler sich registriert hat wird alles gespeichert .. (bsp.: Inputtext vom Dialog in dem nach der Email gefragt wird = "Max@Mustermann.bsp" wird in der Spalte der
    MySQL Tabelle auch "Max@Mustermann.bsp" gespeichert. bloß wieso wird es nicht richtig geladen?

    public Register(playerid)
    {
    new query2[255];
    format(query2,sizeof(query2),"INSERT INTO userdata (EMail) VALUES ('%s')",
    RegInfo[playerid][EMail],
    mysql_query(query2);
    mysql_free_result();
    ShowPlayerDialog(playerid,3,1,"Loginsystem","Dein Account wurde erfolgreich angelegt \n Bitte logge dich ein!","Abbrechen","Login!");
    }


    In dem Public "Login" wird die Email abgefragt und in "PlayerInfo[playerid][pEmail]" gespeichert ...aber anscheinend nicht richtig.

    public Login(playerid,playername[])
    {
    new query[256];
    new data[255];
    new bedienung[256];
    format(bedienung,sizeof(bedienung),"Nickname='%s'",playername);
    format(query,sizeof(query),"SELECT * FROM userdata WHERE %s",bedienung);
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    mysql_fetch_field("EMail",data);
    PlayerInfo[playerid][pEmail]=strval(data);
    }


    Bsp. (wenn ich die Funktion "ShowStats" aufrufe (per /stats Command) Wird mir Email: 0 angezeigt. Warum?


    stock ShowStats(playerid, targetid)
    {
    new String[500];
    new Email = PlayerInfo[targetid][pEmail];
    format(String, sizeof(String), "Email: %d",Email);
    ShowPlayerDialog(playerid,33,DIALOG_STYLE_MSGBOX,"Stats", String,"Ok","Abbrechen");
    return 1;
    }


    Hoffe das ihr mein Problem verstanden habt
    und mir helfen könntet.


    MfG Butchey

    GetPointDistanceToPointExMorph wird nirgends in deinem Script
    Benutzt das heist das du es löschen kannst.
    (wenn ich mich nicht irre!;D)