Hi,
Ich möchte wen man ein Haus kauft das sich jeder 3dText (von häusern wohl bemerkt) updatet also das dort nicht mehr steth "Zu verkaufen" sondern "Besitzer x,y,z Miete: 1$" usw nur wie mache ich das?
ich hatte mal einen Timer drinnen der alle 5minuten die 3dtexte updaten sollte aber anstatt das zu machen löschte der Timer die 3dtexte (hab den Code des timers nicht mehr)
hier mein /buyhouse befehl.
if(strcmp(cmd, "/buyhouse", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(IsPlayerInRangeOfPoint(playerid,2.0, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]) && HouseInfo[h][hOwned] == 0)
{
if(PlayerInfo[playerid][pOwnPerso] == 0)
{
SendClientMessage(playerid, COLOR_WHITE, "Du benötigst einen PerosnalAusweis");
return 1;
}
if(PlayerInfo[playerid][pLevel] < HouseInfo[h][hLevel])
{
format(string, sizeof(string), "Du must mindestens Level %d um es zu kaufen", HouseInfo[h][hLevel]);
SendClientMessage(playerid, COLOR_GRAD5, string);
return 1;
}
if(PlayerInfo[playerid][pPhousekey] != 0 && strcmp(playername, HouseInfo[PlayerInfo[playerid][pPhousekey]][hOwner], true) == 0)
{
SendClientMessage(playerid, COLOR_WHITE, "Dir gehört bereits ein Haus, gib /sellhouse ein um dein altes zu verkaufen");
return 1;
}
if(GetPlayerMoney(playerid) > HouseInfo[h][hValue])
{
PlayerInfo[playerid][pPhousekey] = h;
HouseInfo[h][hOwned] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(HouseInfo[h][hOwner], sendername, 0, strlen(sendername), 255);
GivePlayerMoney(playerid,-HouseInfo[h][hValue]);
PlayerPlayMusic(playerid);
SetPlayerInterior(playerid,HouseInfo[h][hInt]);
SetPlayerPos(playerid,HouseInfo[h][hExitx],HouseInfo[h][hExity],HouseInfo[h][hExitz]);
GameTextForPlayer(playerid, "~w~Willkommen zu Hause~n~Du kannst das Haus an deiner Haustür mit /exit verlassen.", 5000, 3);
PlayerInfo[playerid][pInt] = HouseInfo[h][hInt];
PlayerInfo[playerid][pLocal] = h;
SendClientMessage(playerid, COLOR_WHITE, "Gratulation zu deinem neuen Kauf !");
SendClientMessage(playerid, COLOR_WHITE, "Gib /help um Hilfe zu bekommen !");
DateProp(playerid);
OnPropUpdate();
OnPlayerUpdate(playerid);
new hausstring[250];
Update3DTextLabelText(housesale,0x0FFF00FF,hausstring);
format(hausstring,sizeof hausstring,"Besitzer %s\nLevel: %d\nMiete %d",HouseInfo[h][hOwner],HouseInfo[h][hLevel],HouseInfo[h][hRent]);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Du hast nicht genug Geld");
return 1;
}
}
}
}
return 1;
}
3DText:
housesold = Create3DTextLabel
//edit
hier erstellt er den 3D Text
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(HouseInfo[h][hOwned] == 0)
{
new hausstring[500];
format(hausstring, sizeof(hausstring), "Beschreibung:\n%s\nPreis: $%d\nLevel: %d\n'/buyhouse'",HouseInfo[h][hDiscription],HouseInfo[h][hValue],HouseInfo[h][hLevel]);
housesale = Create3DTextLabel(hausstring,0x006400FF,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]+1,15,0,1);
AddStaticPickup(1273, 2, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]);
pickups++;
}
if(HouseInfo[h][hOwned] == 1)
{
new hausstring[500];
format(hausstring, sizeof(hausstring), "Besitzer: %s\nLevel: %d\nMiete: %d\n'/rentroom'",HouseInfo[h][hOwner],HouseInfo[h][hLevel],HouseInfo[h][hRent]);
housesold = Create3DTextLabel(hausstring,0x006400FF,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]+1,15,0,1);
AddStaticPickup(1272, 2, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]);
pickups++;
}
}
MFG
Shufro