Beiträge von xivo

    Ohne Code nix Los :/


    Ich habe ein Problem beim Eintreten in mein Haus.
    Die Daten von dem Haus werden auch geladen, nur alles ist ganz komisch :/


    Wenn ich auf Eintreten klicke, dann sollte eigentlich dieser Code ausgeführt werden :



    SetPlayerPos(playerid, HausInfo[i][XAusgang], HausInfo[i][YAusgang], HausInfo[i][ZAusgang]);
    SetPlayerVirtualWorld(playerid, HausInfo[i][hVW]);


    Das geschieht auch, nur ich werde immer zu dem Bauernhof da Teleportiert, warum auch immer...



    Mir ist an meiner Mysql Tabelle aufgefallen, das wenn ich die Koordinaten X,Y,Z eintrage (Float) das er nur 4 Stellen verwendet, und die letzte Zahl dann hochrundet, kann das der Fehler sein?


    So sieht der eigentliche XYZ Interior aus :


    Code
    -25.884498,-185.868988,1003.546875 [Interior 17]


    So der aus meiner DB :


    Code
    -25.8845
    -185.869
    1003.55

    Ohne Code nix Los :/


    Ich habe ein Problem beim Eintreten in mein Haus.
    Die Daten von dem Haus werden auch geladen, nur alles ist ganz komisch :/


    Wenn ich auf Eintreten klicke, dann sollte eigentlich dieser Code ausgeführt werden :



    SetPlayerPos(playerid, HausInfo[i][XAusgang], HausInfo[i][YAusgang], HausInfo[i][ZAusgang]);
    SetPlayerVirtualWorld(playerid, HausInfo[i][hVW]);


    Das geschieht auch, nur ich werde immer zu dem Bauernhof da Teleportiert, warum auch immer...



    Mir ist an meiner Mysql Tabelle aufgefallen, das wenn ich die Koordinaten X,Y,Z eintrage (Float) das er nur 4 Stellen verwendet, und die letzte Zahl dann hochrundet, kann das der Fehler sein?


    So sieht der eigentliche XYZ Interior aus :


    Code
    -25.884498,-185.868988,1003.546875 [Interior 17]


    So der aus meiner DB :


    Code
    -25.8845
    -185.869
    1003.55

    So Guys, kleine Frage :D


    Hier ist meine Zeile :


    HausInfo[i][pBesitzer] = mysql_GetString("haus", "besitzer", "id", string);


    Mein Error :


    C:\Users\Daniel\Desktop\samp03e_svr_win32\pawno\RR.pwn(654) : error 047: array sizes do not match, or destination array is too small


    Meine defininiton :



    enum HausDaten
    {
    pID,
    pTitel[128],
    pBesitzer[MAX_PLAYER_NAME],
    pPreis,
    Float:XEnter,
    Float:YEnter,
    Float:ZEnter,
    Float:XAusgang,
    Float:YAusgang,
    Float:ZAusgang
    }
    new HausInfo[MAX_HAEUSER][HausDaten];

    Dankeschön, das wars :)


    Meine Abfrage sieht nun so aus, wer vielleicht ähnliche Probleme hat, und wem das Helfen kann darf sich das gerne anschauen :



    new stringLength = strlen(HausInfo[i][pBesitzer]);


    if(stringLength == 1)
    {
    format(string,sizeof(string),"====================Haus Informationen %d====================\n =Titel: %s\n =Preis: %d", i, HausInfo[i][pTitel], HausInfo[i][pPreis]);
    ShowPlayerDialog(playerid, DIALOG_HAUSKAUFEN, DIALOG_STYLE_MSGBOX, "Haus Informationen", string, "Kaufen", "Abbrechen");
    }
    else
    {
    format(string,sizeof(string),"====================Haus Informationen %d====================\n =Titel: %s\n =Preis: %d\n =Besitzer: %s", i, HausInfo[i][pTitel], HausInfo[i][pPreis], HausInfo[i][pBesitzer]);
    ShowPlayerDialog(playerid, DIALOG_HAUSINFO, DIALOG_STYLE_MSGBOX, "Haus Informationen", string, "Abbrechen", "Abbrechen");
    }

    Ja, ich schreibe das Script nachher sofort um "mysql_num_rows"?


    Leider funktioniert das ganze jedoch auch nicht, die Häuser die den Besitzer "0" haben, gelten als Verkauft, obwohl das nicht so sollte :/


    Sonst noch jemand eine Idee... ?

    danke, die Idee war garnicht so schlecht. So sieht die Ausgabe aus :


    [01.07.2012 11:37:26] 0
    [01.07.2012 11:37:26] Xivo
    [01.07.2012 11:37:26] 0
    [01.07.2012 11:37:26] 0
    [01.07.2012 11:37:26] 0
    [01.07.2012 11:37:26] 0
    [01.07.2012 11:37:26] (null)
    [01.07.2012 11:37:26] (null)
    [01.07.2012 11:37:26] (null)
    [01.07.2012 11:37:26] (null)
    [01.07.2012 11:37:26] (null)
    [01.07.2012 11:37:27] (null)
    [01.07.2012 11:37:27] (null)
    [01.07.2012 11:37:27] (null)
    [01.07.2012 11:37:28] (null)
    [01.07.2012 11:37:28] (null)
    [01.07.2012 11:37:28] (null)
    [01.07.2012 11:37:28] (null)
    [01.07.2012 11:37:28] (null)
    [01.07.2012 11:37:28] (null)


    Obwohl ich nur 6 Häuser habe, sprich die 5x "0" und 1x "Xivo"


    Die Abfrage bzw. Ausgabe so :



    new ausgabe[128];
    format(ausgabe,sizeof(ausgabe),"%s",HausInfo[i][pBesitzer]);
    print(ausgabe);



    //Das liegt daran weil ich MAX_HAEUSER auf 20 hatte, und deshalb ^^ soviele (null) teste ebend ob das Problem behoben ist!

    Mach es mal so :



    stock Laden(playerid)
    {
    new name[32];
    GetPlayerName(playerid,name,sizeof(name));
    SetPlayerSkin(playerid,mysql_GetInt("accounts","Skin","Name",name));
    return 1;
    }

    Achte genau auf die Rechtschreibung


    Heißt die Tabelle "Accounts" oder "accounts" ?


    Und die Spalte auch "Skin" oder "skin" ?


    Weil beim Speichern, speicherst du nämlich in accounts und nicht in Accounts



    stock Laden(playerid)
    {
    new name[32];
    GetPlayerName(playerid,name,sizeof(name));
    SetPlayerSkin(playerid,mysql_GetInt("accounts","Skin","Name",name));
    return 1;
    }