Opširnije: Igrač kada kupi kuću i proda je državi i kupi novu te samim time prilikom izlaska iz kuće vrati ga ne prethodnu kuću koju je kupio, a drugi problem koji mi se javlja jeste da kada ugasim server te ponovo ga pokrenem i uđem u kuću baci mi negdje na kraj mape i ne očitava mi enterijer, jednostavno propadam kroz mapu.
Dodatno: Sistem iz skripte:
enum hInfo
{
hVlasnik,
hOwned,
hCijena,
hLevel,
hRent,
hCijenaRenta,
hNeaktivnost,
hTip,
hVW,
hInt,
Float:hX,
Float:hY,
Float:hZ,
Float:hIzlazX,
Float:hIzlazY,
Float:hIzlazZ,
Float:hAngle,
hSef,
hNovac,
hZakljucana
};Izlazak i ulazak u kuću
for(new i; i < MAX_HOUSES; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3.0, HouseInfo, HouseInfo, HouseInfo))
{
if(PlayerInfo == i || HouseInfo == 0)
{
new idhouse,fhouse;
if(HouseInfo == 1)
{
SetPlayerPos(playerid, 223.0732,288.3668,1082.1406);
SetPlayerInterior(playerid, 1);
InteriorTimer(playerid);
}
SetPlayerVirtualWorld(playerid, HouseInfo);
SetPlayerInterior(playerid, HouseInfo);
SetPlayerPos(playerid, HouseInfo, HouseInfo, HouseInfo);
InteriorTimer(playerid);
format(fhouse, sizeof(fhouse), HOUSEPATH, idhouse);
}
else
{
GameTextForPlayer(playerid,"~w~Kuca ~r~zakljucana ~w~- /zvoni",5000,3);
return 1;
}
}
if(IsPlayerInRangeOfPoint(playerid, 3.0, HouseInfo, HouseInfo, HouseInfo) && GetPlayerVirtualWorld(playerid) == HouseInfo)
{
if(HouseInfo == 1)
{
SetPlayerPos(playerid, 223.0732,288.3668,1082.1406);
SetPlayerInterior(playerid, 1);
InteriorTimer(playerid);
}
SetPlayerInterior(playerid, 0); SetPlayerVirtualWorld(playerid, 0);
SetPlayerPos(playerid, HouseInfo, HouseInfo, HouseInfo);
InteriorTimer(playerid);
return 1;
}
}
}SAVE
stock SaveHouse(id)
{
new h_file;
format(h_file, sizeof(h_file), HOUSEPATH, id);
new INI:File = INI_Open(h_file);
INI_WriteString(File, "Vlasnik", HouseInfo);
INI_WriteInt(File, "Owned", HouseInfo);
INI_WriteInt(File, "Cijena", HouseInfo);
INI_WriteInt(File, "Level", HouseInfo);
INI_WriteInt(File, "Int", HouseInfo);
INI_WriteInt(File, "Rent", HouseInfo);
INI_WriteInt(File, "CijenaRenta", HouseInfo);
INI_WriteInt(File, "Neaktivnost", HouseInfo);
INI_WriteInt(File, "VirtualWorld", HouseInfo);
INI_WriteInt(File, "Tip", HouseInfo);
INI_WriteFloat(File, "X", HouseInfo);
INI_WriteFloat(File, "Y", HouseInfo);
INI_WriteFloat(File, "Z", HouseInfo);
INI_WriteFloat(File, "hIzlazX", HouseInfo);
INI_WriteFloat(File, "hIzlazY", HouseInfo);
INI_WriteFloat(File, "hIzlazZ", HouseInfo);
INI_WriteFloat(File, "Angle", HouseInfo);
INI_WriteInt(File, "Sef", HouseInfo);
INI_WriteInt(File, "Novac", HouseInfo);
INI_WriteInt(File, "Zakljucana", HouseInfo);
INI_Close(File);
}Load sistem
for(new i = 0; i < MAX_HOUSES; i++)
{
new hfile;
format(hfile, sizeof(hfile), HOUSEPATH, i);
if(fexist(hfile))
{
INI_ParseFile(hfile, "LoadHouses", .bExtra = true, .extra = i);
new str;
if(HouseInfo == 1) { format(str, sizeof(str), "Mala Kuca"); }
if(HouseInfo == 2) { format(str, sizeof(str), "Srednja Kuca"); }
if(HouseInfo == 3) { format(str, sizeof(str), "Velika Kuca"); }
if(HouseInfo == 4) { format(str, sizeof(str), "Vila"); }
if(HouseInfo == 0)
{
new string;
format(string, sizeof(string), "{4682B4}Kuca na prodaju\nVlasnik: {FFFFFF}Niko\n{4682B4}Cijena: {FFFFFF}%d\n{4682B4}Level: {FFFFFF}%d\n{4682B4}Tip: {FFFFFF}%s\n{4682B4}Adresa: {FFFFFF}%d\n{4682B4}/kupikucu", HouseInfo, HouseInfo, str, i);
hPickup = CreatePickup(1273, 1, HouseInfo, HouseInfo, HouseInfo);
SetPos(hPickup, HouseInfo, HouseInfo, HouseInfo);
hLabel = Create3DTextLabel(string, COLOR_WHITE, HouseInfo, HouseInfo, HouseInfo, 10.0, 0, 0);
}
else
{
new string;
format(string, sizeof(string), "{4682B4}Kuca na prodaju\nVlasnik: {FFFFFF}%s\n{4682B4}Cijena: {FFFFFF}%d\n{4682B4}Level: {FFFFFF}%d\n{4682B4}Tip: {FFFFFF}%s\n{4682B4}Adresa: {FFFFFF}%d", HouseInfo, HouseInfo, HouseInfo, str, i);
hPickup = CreatePickup(1272, 1, HouseInfo, HouseInfo, HouseInfo);
SetPos(hPickup, HouseInfo, HouseInfo, HouseInfo);
hLabel = Create3DTextLabel(string, COLOR_WHITE, HouseInfo, HouseInfo, HouseInfo, 10.0, 0, 0);
}
}
}
print("Ucitan house sistem");OnGamemodeExit
for(new i = 0; i < MAX_HOUSES; i++)
{
SaveHouse(i);
}