30.06.2014, 16:43
I've created my own house system and I've got a few problem with loading it.
and the LoadInfo function is
Why is this not loading the houses
I also did this in OnGameModeInit()
I can create it with /createhouse command, but when i close the server and reopen it doesn't load...
I have this macro used,
pawn Код:
Function:LoadHouse(houseid)
{
new hfile[128]; format(hfile, sizeof(hfile), HOUSEFILE, houseid);
INI_ParseFile(hfile, "LoadHouse_Info", .bExtra = true, .extra = houseid );
if(HouseInfo[houseid][hIsOwned] == 0)
{
new text[256];
format(text, sizeof(text), "House: %d\nName of the house: %s\nOwned by: For Sale!\nPrice: %d", houseid, HouseInfo[houseid][hName], HouseInfo[houseid][hPrice]);
HouseInfo[houseid][hPickupInside] = CreatePickup(1273, 1, HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ], HouseInfo[houseid][hOutsideWorld]);
HouseInfo[houseid][hPickupOutside] = CreatePickup(1273, 1, HouseInfo[houseid][hExitX], HouseInfo[houseid][hExitY], HouseInfo[houseid][hExitZ], HouseInfo[houseid][hInsideWorld]);
Create3DTextLabel(text, 0x800000FF , HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ], 20, HouseInfo[houseid][hOutsideWorld], 0);
}
else if(HouseInfo[houseid][hIsOwned] == 1)
{
new text[256];
format(text, sizeof(text), "House: %d\nName of the house: %s\nOwned by: %s\nPrice: %d", houseid, HouseInfo[houseid][hName], HouseInfo[houseid][hOwnerName], HouseInfo[houseid][hPrice]);
HouseInfo[houseid][hPickupInside] = CreatePickup(1272, 1, HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ], HouseInfo[houseid][hOutsideWorld]);
HouseInfo[houseid][hPickupOutside] = CreatePickup(1273, 1, HouseInfo[houseid][hExitX], HouseInfo[houseid][hExitY], HouseInfo[houseid][hExitZ], HouseInfo[houseid][hInsideWorld]);
Create3DTextLabel(text, 0x800000FF , HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ], 20, HouseInfo[houseid][hOutsideWorld], 0);
}
return 1;
}
pawn Код:
forward LoadHouse_Info(houseid, name[], value[]);
public LoadHouse_Info(houseid, name[], value[])
{
INI_String("houseName", HouseInfo[houseid][hName], 64);
INI_Float("houseEnterX", HouseInfo[houseid][hEnterX]);
INI_Float("houseEnterY", HouseInfo[houseid][hEnterY]);
INI_Float("houseEnterZ", HouseInfo[houseid][hEnterZ]);
INI_Float("houseExitX", HouseInfo[houseid][hExitX]);
INI_Float("houseExitY", HouseInfo[houseid][hEnterY]);
INI_Float("houseExitz", HouseInfo[houseid][hEnterZ]);
INI_Int("houseInsideInterior", HouseInfo[houseid][hInsideInterior]);
INI_Int("houseInsideWorld", HouseInfo[houseid][hInsideWorld]);
INI_Int("houseOutsideInterior",HouseInfo[houseid][hOutsideInterior]);
INI_Int("houseOutsideWorld", HouseInfo[houseid][hOutsideWorld]);
INI_Int("houseIsOwned", HouseInfo[houseid][hIsOwned]);
INI_String("houseOwner", HouseInfo[houseid][hOwnerName], 24);
INI_Int("housePrice", HouseInfo[houseid][hPrice]);
return 1;
}
I also did this in OnGameModeInit()
pawn Код:
for(new i = 0; i < MAX_HOUSES; i++)
{
LoadHouse(i);
}
I have this macro used,
Код:
#define Function:%0(%1) stock %0(%1)