Opis problema : dakle pravim house system i dosao sam do dijela gdje igrac na ENTER ili F ulaz/izlazi iz kuce, i sve normalno radi kad kucu tek kreiram,a li kad restartujem server i udjem u tu istu kucu, kad pokusam da izadjem teleporta me u selo.
Dio skripte : posto nisam siguran da li je problem do OnPlayerKeyStateChange ( jer sve normalno radi kad tek kreiram kucu ) ili do ucitavanja, evo vam oba dijela skripte
hook OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
new string;
new PlayerName;
GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
new vw = GetPlayerVirtualWorld(playerid);
new houseid = GetNearbyHouse(playerid);
if(newkeys == KEY_SECONDARY_ATTACK)
{
if(GetPlayerInterior(playerid) == 0)
{
SetPlayerPos(playerid, HouseInfo, HouseInfo, HouseInfo);
SetPlayerInterior(playerid, HouseInfo);
SetPlayerVirtualWorld(playerid, HouseInfo);
if(PlayerInfo == houseid || PlayerInfo == houseid || PlayerInfo == houseid )
{
format(string, sizeof(string), "{FFAA80} {FFFFFF}%s{FFDDCC}, usli ste u svoju kucu.", PlayerName);
SendClientMessage(playerid, 0xFFFFFFFF, string);
}
else
{
format(string, sizeof(string), "{FFAA80} {FFFFFF}%s{FFDDCC}, usli ste u kucu. Vlasnik ove kuce je {FFFFFF}%s{FFDDCC}.", PlayerName, HouseInfo);
SendClientMessage(playerid, 0xFFFFFFFF, string);
}
}
else
{
SetPlayerPos(playerid, HouseInfo, HouseInfo, HouseInfo);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
if(PlayerInfo == vw || PlayerInfo == vw || PlayerInfo == vw )
{
format(string, sizeof(string), "{FFAA80} {FFFFFF}%s{FFDDCC}, izasli ste iz svoje kuce.", PlayerName);
SendClientMessage(playerid, 0xFFFFFFFF, string);
}
else
{
format(string, sizeof(string), "{FFAA80} {FFFFFF}%s{FFDDCC}, izasli ste iz kuce. Vlasnik ove kuce je {FFFFFF}%s{FFDDCC}.", PlayerName, HouseInfo);
SendClientMessage(playerid, 0xFFFFFFFF, string);
}
}
}
return 1;
}hook OnGameModeInit()
{
new count = 0;
for( new i = 1; i < MAX_HOUSES; i++ )
{
new File, string;
format( File, sizeof(File), "Houses/%d.ini", i);
if(fexist(File))
{
count++;
INI_ParseFile(File, "LoadHouse", .bExtra = true, .extra = i);
// printf("House %d Loaded | %f %f %f", i, HouseInfo, HouseInfo, HouseInfo);
if(HouseInfo == 1)
{
if(HouseInfo == 1)
{
format(string, sizeof(string), "Royalgaming House\n{FFAA80}--------------------------------\nVlasnik : {FFFFFF}%s\n{FFAA80}ID : {FFFFFF}%d\n{FFAA80}Cijena : {FFFFFF}%d{99FF99}$\n{FFAA80}Tip : {FFFFFF}%s\n{FF3333}ZAKLJUCANA\n{FFAA80}--------------------------------\n{FFFFFF}Pritisni 'Enter' da udjes", HouseInfo, HouseInfo, HouseInfo, houseTypeName[HouseInfo-1]);
}
else
{
format(string, sizeof(string), "Royalgaming House\n{FFAA80}--------------------------------\nVlasnik : {FFFFFF}%s\n{FFAA80}ID : {FFFFFF}%d\n{FFAA80}Cijena : {FFFFFF}%d{99FF99}$\n{FFAA80}Tip : {FFFFFF}%s\n{66FF66}OTKLJUCANA\n{FFAA80}--------------------------------\n{FFFFFF}Pritisni 'Enter' da udjes", HouseInfo, HouseInfo, HouseInfo, houseTypeName[HouseInfo-1]);
}
}
else
{
format(string, sizeof(string), "Royalgaming House\n{FFAA80}--------------------------------\nVlasnik : {FFFFFF}%s\n{FFAA80}ID : {FFFFFF}%d\n{FFAA80}Cijena : {FFFFFF}%d{99FF99}$\n{FFAA80}Tip : {FFFFFF}%s\n{FF3333}ZAKLJUCANA\n{FFAA80}--------------------------------\n{FFFFFF}/buyhouse da kupis kucu", HouseInfo, HouseInfo, HouseInfo, houseTypeName[HouseInfo-1]);
}
HouseInfo = Create3DTextLabel(string, -1, HouseInfo, HouseInfo, HouseInfo, 50.0, 0, 0);
HouseInfo = CreatePickup(HouseInfo, 1, HouseInfo, HouseInfo, HouseInfo, 0);
}
}
printf("\n[House-System] Radi!");
printf(" Broj ucitanih kuca %d.\n", count);
DisableInteriorEnterExits();
return 0;
}Slika/Video : ako treba mogu postavit.
Hvala unaprijed 🙂
