Detaljan opis problema: Imam problem sa 3DText-ovima na kucama, nece nikako da se update-uju nakon kupovine ili prodaje, znaci kada kucam /buyhouse novi 3DText se samo sastavi sa prijasnjim Textom, svasta sam pravio, ali jednostavno, textovi se samo poklapaju, znaci ja zelim kada otkucam komandu /sellhouse da izbaci samo text (Kuca je na prodaju, Cijena kuce je ...itd... ) , a kada kucam /buyhouse da izbaci (Vlasnik kuce je ...itd... ), a sada mi se oba texta poklapaju bilo da prodam ili kupujem kucu 😐
Dio skripte:
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(HouseInfo == 0)
{
format(PropertyString, sizeof(PropertyString), "Ova kuca/stan je na prodaju !! \n Opis %s \n Cijena kuce iznosi %d \n Potreban level %d \n Da kupite ovu kucu/stan, kucajte \n /buyhouse",HouseInfo,HouseInfo,HouseInfo);
kucanaprodaju = Create3DTextLabel(PropertyString,0x00FF00AA,HouseInfo, HouseInfo, HouseInfo+1,70,0,1);
}
if(HouseInfo == 1)
{
format(PropertyString, sizeof(PropertyString), "Vlasnik ove kuce/stana je\n %s \n Level %d \n Da rentate, kucajte \n /rentroom",HouseInfo,HouseInfo);
kupljenakuca = Create3DTextLabel(PropertyString,0xFFFFFFAA,HouseInfo, HouseInfo, HouseInfo+1,70,0,1);
}
}
for(new h = 0; h < sizeof(BizzInfo); h++)
{
if(BizzInfo == 0)
{
format(PropertyString, sizeof(PropertyString), "\n$ %d",BizzInfo);
bizsale = Create3DTextLabel(PropertyString,0x8361FFFF,BizzInfo, BizzInfo, BizzInfo+1,15,0,1);
AddStaticPickup(1272, 2, BizzInfo, BizzInfo, BizzInfo);
pickups++;
}
if(BizzInfo == 1)
{
format(PropertyString, sizeof(PropertyString), "[OWNED BY]\n%s",BizzInfo);
Create3DTextLabel(PropertyString,0x8361FFFF,BizzInfo, BizzInfo, BizzInfo+1,15,0,1);
AddStaticPickup(1239, 2, BizzInfo, BizzInfo, BizzInfo);
pickups++;
}
}
for(new h = 0; h < sizeof(SBizzInfo); h++)
{
if(SBizzInfo == 0)
{
format(PropertyString, sizeof(PropertyString), "\n$ %d",SBizzInfo);
sbizsale = Create3DTextLabel(PropertyString,0x8361FFFF,SBizzInfo, SBizzInfo, SBizzInfo+1,15,0,1);
AddStaticPickup(1272, 2, SBizzInfo, SBizzInfo, SBizzInfo);
pickups++;
}
if(SBizzInfo == 1)
{
format(PropertyString, sizeof(PropertyString), "[OWNED BY]\n%s",SBizzInfo);
Create3DTextLabel(PropertyString,0x8361FFFF,SBizzInfo, SBizzInfo, SBizzInfo+1,15,0,1);
AddStaticPickup(1239, 2, SBizzInfo, SBizzInfo, SBizzInfo);
pickups++;
}
}KOMANDA (sellhouse):
if(strcmp(cmd, "/sellhouse", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, playername, sizeof(playername));
if(PlayerInfo == 255)
{
SendClientMessage(playerid, COLOR_WHITE, "Ne posjedujete kucu.");
return 1;
}
if(PlayerInfo > 0)
{
SendClientMessage(playerid, COLOR_GREY, " Vjencani ste, ne mozete prodati kucu !");
return 1;
}
if(PlayerInfo != 255 && strcmp(playername, HouseInfo[PlayerInfo], true) == 0)
{
new house = PlayerInfo;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 0;
HouseInfo = 1;
HouseInfo = 0;
HouseInfo = 418;
HouseInfo = -1;
HouseInfo = -1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(HouseInfo, "Drzava", 0, strlen("Drzava"), 255);
SafeJB_GivePlayerMoney(playerid,HouseInfo);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "~w~Cestitamo~n~ Prodali ste kucu za ~n~~g~$%d", HouseInfo);
Delete3DTextLabel(kupljenakuca);
GameTextForPlayer(playerid, string, 10000, 3);
PlayerInfo = 255;
if(PlayerInfo == house)
{
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid,0);
SetPlayerPos(playerid,HouseInfo,HouseInfo,HouseInfo);
PlayerInfo = 0;
}
OnPropUpdate();
OnPlayerUpdateCustom(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Ne posjedujete kucu.");
}
}
return 1;
}KOMANDA: (buyhouse)
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(PlayerToPoint(2.0, playerid, HouseInfo, HouseInfo, HouseInfo) && HouseInfo == 0)
{
if(PlayerInfo < HouseInfo)
{
format(string, sizeof(string), " Morate biit Level %d da biste kupili ovo !", HouseInfo);
SendClientMessage(playerid, COLOR_GRAD5, string);
return 1;
}
if(PlayerInfo != 255 && strcmp(playername, HouseInfo[PlayerInfo], true) == 0)
{
SendClientMessage(playerid, COLOR_WHITE, " Vec posjedujete kucu, kucajte /sellhouse ako zelite da kupite ovu !");
return 1;
}
if(GetPlayerMoney(playerid) > HouseInfo)
{
PlayerInfo = h;
HouseInfo = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(HouseInfo, sendername, 0, strlen(sendername), 255);
SafeJB_GivePlayerMoney(playerid,-HouseInfo);
/*SetPlayerInterior(playerid,HouseInfo);
SetPlayerVirtualWorld(playerid,HouseInfo);
SetPlayerPos(playerid,HouseInfo,HouseInfo,HouseInfo);*/
GameTextForPlayer(playerid, "~w~Dobrodosli Kuci~n~Mozete uvjek izaci tako sto cete doci do ulaznih vrata i kucati /exit", 5000, 3);
PlayerInfo = HouseInfo;
PlayerInfo = h;
SendClientMessage(playerid, COLOR_RED, "INFO: 3DText na vasoj kuci/stanu ce se Update-ovati nakon restarta servera !");
SendClientMessage(playerid, COLOR_WHITE, "Cestitamo vam na kupovini nove kuce !");
SendClientMessage(playerid, COLOR_WHITE, "Kucajte /help da biste dobili pomoc vezanu za kucu !");
Delete3DTextLabel(Text3D:kucanaprodaju);
format(PropertyString, sizeof(PropertyString), "Vlasnik ove kuce/stana je\n %s \n Level %d \n Da rentate, kucajte \n /rentroom",HouseInfo,HouseInfo);
kupljenakuca = Create3DTextLabel(PropertyString,0xFFFFFFAA,HouseInfo, HouseInfo, HouseInfo+1,70,0,1);
DateProp(playerid);
OnPropUpdate();
OnPlayerUpdateCustom(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, " Nemate dovoljno novca za kupovinu !");
return 1;
}
}
}
}
return 1;
}Neke slike/video za lakse dobivanje pomoci(neobavezno):
