Haussystem Fragen

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag Community,


    ich weiß momentan nicht wie ich das Haussystem abspeichern soll oder wie es geht


    habe es momentan so aber da klappt nix. In der Datenbank ahbe ich aufeinmal 14ids obwohl nur 1 HAus created ist


    Hier Mein Code:


    stock SaveHaus(haus)
    {
    if(Hauser[haus][pCreated] == 1)
    {
    new query[256];
    format(query,sizeof(query),"UPDATE `Hauser` SET `Besitzer` = '%s' WHERE `id` = '%d'",Hauser[haus][pOwner],haus);
    mysql_query(query);
    printf("Es wurden %d Häuser gespeichert",haus);
    }
    return 1;
    }

  • stock CreateHaus(hausid,Float:X,Float:Y,Float:Z,level,price)
    {
    strmid(Hauser[hausid][pOwner],"Niemand",0,strlen("Niemand"),24);
    Hauser[hausid][pPrice] = price;
    Hauser[hausid][pEnterX] = 0;
    Hauser[hausid][pEnterY] = 0;
    Hauser[hausid][pEnterZ] = 0;
    Hauser[hausid][pExitX] = X;
    Hauser[hausid][pExitY] = Y;
    Hauser[hausid][pExitZ] = Z;
    Hauser[hausid][pLevel] = level;
    Hauser[hausid][plock] = 1;
    Hauser[hausid][pInt] = 0;
    Hauser[hausid][pMieter] = 0;
    Hauser[hausid][pMiete] = 0;
    Hauser[hausid][pRentable] = 0;
    return 1;
    }

  • ocmd:ch(playerid,params[])
    {
    for(new i = 0; i < MAX_HAUSER; i++)
    {
    if(Hauser[i][pCreated] == 0)
    {
    new query[256];
    format(query, sizeof(query), "INSERT INTO `haus` (id) VALUES ('%d')", i);
    mysql_query(query);
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    CreateHaus(i,X,Y,Z,1,0);
    }
    }
    return 1;
    }

  • Habe jetzt nur ein Problem wenn einer das haus kauft wird der name nicht in der datenbank eingetragen



    ocmd:bh(playerid,params[])
    {
    for(new i = 0; i < MAX_HAUSER; i++)
    {
    if(Hauser[i][pCreated] == 1)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,Hauser[i][pEnterX],Hauser[i][pEnterY],Hauser[i][pEnterZ]))
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,24);
    strmid(Hauser[i][pOwner],name,0,strlen(name),24);
    return 1;
    }
    }
    }
    return 1;
    }


  • ocmd:ch(playerid,params[])
    {
    for(new i = 0; i < MAX_HAUSER; i++)
    {
    if(Hauser[i][pCreated] == 0)
    {
    new query[256];
    format(query, sizeof(query), "INSERT INTO `haus` (id) VALUES ('%d')", i);
    mysql_query(query);
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    CreateHaus(i,X,Y,Z,1,0);break;
    }
    }
    return 1;
    }

  • so?


    ocmd:bh(playerid,params[])
    {
    for(new i = 0; i < MAX_HAUSER; i++)
    {
    if(Hauser[i][pCreated] == 1)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,Hauser[i][pEnterX],Hauser[i][pEnterY],Hauser[i][pEnterZ]))
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,24);
    strmid(Hauser[i][pOwner],name,0,strlen(name),24);
    new query[128];
    format(query,sizeof(query), "UPDATE `accounts` SET `Besitzer` = '%s', WHERE `id` = '%e'", Hauser[i][pOwner],i);
    mysql_query(query);
    return 1;
    }
    }
    }
    return 1;
    }