forward LoadCreatedHouses(houseid, name[], value[]);
public LoadCreatedHouses(houseid, name[], value[])
{
if(!strcmp(name, "HouseOwner")) strset(HouseData[houseid][E_HOUSE_OWNER], value);
if(!strcmp(name, "House_IntUID")) HouseData[houseid][E_HOUSE_INT_UID] = strval(value);
if(!strcmp(name, "HouseCost")) HouseData[houseid][E_HOUSE_COST] = strval(value);
if(!strcmp(name, "HouseLocked")) HouseData[houseid][E_HOUSE_LOCKED] = strval(value);
if(!strcmp(name, "HouseDescription")) strset(HouseData[houseid][E_HOUSE_DESCRIPTION], value);
if(!strcmp(name, "HouseInX")) HouseData[houseid][E_HOUSE_IN][0] = floatstr(value);
if(!strcmp(name, "HouseInY")) HouseData[houseid][E_HOUSE_IN][1] = floatstr(value);
if(!strcmp(name, "HouseInZ")) HouseData[houseid][E_HOUSE_IN][2] = floatstr(value);
if(!strcmp(name, "HouseInA")) HouseData[houseid][E_HOUSE_IN][3] = floatstr(value);
if(!strcmp(name, "HouseInInt")) HouseData[houseid][E_HOUSE_IN_INT] = strval(value);
if(!strcmp(name, "HouseInVW")) HouseData[houseid][E_HOUSE_IN_VW] = strval(value);
if(!strcmp(name, "HouseOutX")) HouseData[houseid][E_HOUSE_OUT][0] = floatstr(value);
if(!strcmp(name, "HouseOutY")) HouseData[houseid][E_HOUSE_OUT][1] = floatstr(value);
if(!strcmp(name, "HouseOutZ")) HouseData[houseid][E_HOUSE_OUT][2] = floatstr(value);
if(!strcmp(name, "HouseOutA")) HouseData[houseid][E_HOUSE_OUT][3] = floatstr(value);
if(!strcmp(name, "HouseOutInt")) HouseData[houseid][E_HOUSE_OUT_INT] = strval(value);
if(!strcmp(name, "HouseOutVW")) HouseData[houseid][E_HOUSE_OUT_VW] = strval(value);
PickupUID[houseid] = CreatePickup(19198, 1, HouseData[houseid][E_HOUSE_OUT][0], HouseData[houseid][E_HOUSE_OUT][1], HouseData[houseid][E_HOUSE_OUT][2]+0.5, HouseData[houseid][E_HOUSE_OUT_VW]);
new string[128];
format(string, sizeof(string), "Właściciel: \"%s\"\nKoszt: %d\nOpis: \"%s\"", HouseData[houseid][E_HOUSE_OWNER], HouseData[houseid][E_HOUSE_COST], HouseData[houseid][E_HOUSE_DESCRIPTION]);
HouseData[houseid][E_HOUSE_LABEL] = Create3DTextLabel(string, 0xFFC973FF, HouseData[houseid][E_HOUSE_OUT][0], HouseData[houseid][E_HOUSE_OUT][1], HouseData[houseid][E_HOUSE_OUT][2], 3.0, HouseData[houseid][E_HOUSE_OUT_VW], 0);
return true;
}
stock LoadHouses()
{
for(new i = 0; i != MAX_HOUSES; i++)
{
INI_ParseFile(HouseFile(i), "LoadCreatedHouses", .bExtra = true, .extra = i);
}
}
PickupUID[houseid]
PickupUID[houseid] = Create[...]
Debug: Loading house number: 0 Debug: Door state of this house is: 1 Debug: Loading house number: 1 Debug: Door state of this house is: 0 Debug: Loading house number: 2 Debug: Door state of this house is: 0 Debug: Loading house number: 3 Debug: Door state of this house is: 0 Debug: Loading house number: 4 Debug: Door state of this house is: 0 Debug: Loading house number: 5 Debug: Door state of this house is: 0 Debug: Loading house number: 6 Debug: Door state of this house is: 0 Debug: Loading house number: 7 Debug: Door state of this house is: 0 Debug: Loading house number: 8 Debug: Door state of this house is: 0 Debug: Loading house number: 9 Debug: Door state of this house is: 0
HouseLocked = 1
HouseLocked = 0
As for the second post, I'm not sure what you mean by saying y_ini doesn't know it has loaded some files.
|
HouseData[houseid][E_HOUSE_CREATED] = true;
stock SaveHouses()
{
new houseid = 0;
while(houseid != SerwerData[E_SERWER_LAST_PICKUP])
{
if(HouseData[houseid][E_HOUSE_CREATED])
{
new INI:House = INI_Open(HouseFile(houseid));
INI_WriteString (House, "HouseOwner", HouseData[houseid][E_HOUSE_OWNER]);
INI_WriteInt (House, "House_IntUID", HouseData[houseid][E_HOUSE_INT_UID]);
INI_WriteInt (House, "HouseCost", HouseData[houseid][E_HOUSE_COST]);
INI_WriteInt (House, "HouseLocked", HouseData[houseid][E_HOUSE_LOCKED]);
INI_WriteString (House, "HouseDescription", HouseData[houseid][E_HOUSE_DESCRIPTION]);
INI_WriteFloat (House, "HouseInX", HouseData[houseid][E_HOUSE_IN][0]);
INI_WriteFloat (House, "HouseInY", HouseData[houseid][E_HOUSE_IN][1]);
INI_WriteFloat (House, "HouseInZ", HouseData[houseid][E_HOUSE_IN][2]);
INI_WriteFloat (House, "HouseInA", HouseData[houseid][E_HOUSE_IN][3]);
INI_WriteInt (House, "HouseInInt", HouseData[houseid][E_HOUSE_IN_INT]);
INI_WriteInt (House, "HouseInVW", HouseData[houseid][E_HOUSE_IN_VW]);
INI_WriteFloat (House, "HouseOutX", HouseData[houseid][E_HOUSE_OUT][0]);
INI_WriteFloat (House, "HouseOutY", HouseData[houseid][E_HOUSE_OUT][1]);
INI_WriteFloat (House, "HouseOutZ", HouseData[houseid][E_HOUSE_OUT][2]);
INI_WriteFloat (House, "HouseOutA", HouseData[houseid][E_HOUSE_OUT][3]);
INI_WriteInt (House, "HouseOutInt", HouseData[houseid][E_HOUSE_OUT_INT]);
INI_WriteInt (House, "HouseOutVW", HouseData[houseid][E_HOUSE_OUT_VW]);
INI_Close (House);
}
houseid += 1;
}
new INI:Serwer = INI_Open("SerwerStats.ini");
INI_WriteInt(Serwer, "CREATED_HOUSES", SerwerData[E_SERWER_LAST_PICKUP]);
INI_Close(Serwer);
}
forward LoadCreatedHouses(houseid, name[], value[]);
public LoadCreatedHouses(houseid, name[], value[])
{
if(!strcmp(name, "HouseOwner")) strset(HouseData[houseid][E_HOUSE_OWNER], value);
if(!strcmp(name, "House_IntUID")) HouseData[houseid][E_HOUSE_INT_UID] = strval(value);
if(!strcmp(name, "HouseCost")) HouseData[houseid][E_HOUSE_COST] = strval(value);
if(!strcmp(name, "HouseLocked")) HouseData[houseid][E_HOUSE_LOCKED] = strval(value);
if(!strcmp(name, "HouseDescription")) strset(HouseData[houseid][E_HOUSE_DESCRIPTION], value);
if(!strcmp(name, "HouseInX")) HouseData[houseid][E_HOUSE_IN][0] = floatstr(value);
if(!strcmp(name, "HouseInY")) HouseData[houseid][E_HOUSE_IN][1] = floatstr(value);
if(!strcmp(name, "HouseInZ")) HouseData[houseid][E_HOUSE_IN][2] = floatstr(value);
if(!strcmp(name, "HouseInA")) HouseData[houseid][E_HOUSE_IN][3] = floatstr(value);
if(!strcmp(name, "HouseInInt")) HouseData[houseid][E_HOUSE_IN_INT] = strval(value);
if(!strcmp(name, "HouseInVW")) HouseData[houseid][E_HOUSE_IN_VW] = strval(value);
if(!strcmp(name, "HouseOutX")) HouseData[houseid][E_HOUSE_OUT][0] = floatstr(value);
if(!strcmp(name, "HouseOutY")) HouseData[houseid][E_HOUSE_OUT][1] = floatstr(value);
if(!strcmp(name, "HouseOutZ")) HouseData[houseid][E_HOUSE_OUT][2] = floatstr(value);
if(!strcmp(name, "HouseOutA")) HouseData[houseid][E_HOUSE_OUT][3] = floatstr(value);
if(!strcmp(name, "HouseOutInt")) HouseData[houseid][E_HOUSE_OUT_INT] = strval(value);
if(!strcmp(name, "HouseOutVW")) HouseData[houseid][E_HOUSE_OUT_VW] = strval(value);
CreateHouse(HouseData[houseid][E_HOUSE_INT_UID],
HouseData[houseid][E_HOUSE_OUT][0],
HouseData[houseid][E_HOUSE_OUT][1],
HouseData[houseid][E_HOUSE_OUT][2],
HouseData[houseid][E_HOUSE_OUT][3],
HouseData[houseid][E_HOUSE_OUT_INT],
HouseData[houseid][E_HOUSE_OUT_VW],
HouseData[houseid][E_HOUSE_COST],
HouseData[houseid][E_HOUSE_DESCRIPTION]);
return true;
}
INI:SerwerStats[](name[], value[])
{
if(!strcmp(name, "CREATED_HOUSES")) SerwerData[E_SERWER_LOAD_PICKUP] = strval(value);
return true;
}
stock LoadHouses()
{
INI_Load("SerwerStats.ini");
new houseid = 0;
while(houseid != SerwerData[E_SERWER_LOAD_PICKUP])
{
INI_ParseFile(HouseFile(houseid), "LoadCreatedHouses", .bExtra = true, .extra = houseid);
if(fexist(HouseFile(houseid)))
{
printf("Found that record (%d)", houseid);
}
else printf("Didn't find house (%d)", houseid);
houseid += 1;
}
}