Artem_Bandit
Новичок
Здравствуйте всем
Основа Домик в Деревне
У меня такая ситуация..
1.Создал дом-купил (Иконки есть на сервер и на мини карте)
2.Просто создал дом (Иконки есть на сервер и на мини карте)
3.Сделал рестарт
Когда зашел на сервер у меня попали ИМЕННО иконки и сами пикапы домов,но зайти я могу зайти/выйти/купить/продать дома даже если иконок нет..
Вопрос!?Что мне делать и как это исправить?
Я искал как решить это проблему и видел тему как человек исправил и сказал,что нет сохранение в OnGameModeExit
Мой код
Нужные коды...
public OnGameModeInit()
houses.cfg есть.
Основа Домик в Деревне
У меня такая ситуация..
1.Создал дом-купил (Иконки есть на сервер и на мини карте)
2.Просто создал дом (Иконки есть на сервер и на мини карте)
3.Сделал рестарт
Когда зашел на сервер у меня попали ИМЕННО иконки и сами пикапы домов,но зайти я могу зайти/выйти/купить/продать дома даже если иконок нет..
Вопрос!?Что мне делать и как это исправить?
Я искал как решить это проблему и видел тему как человек исправил и сказал,что нет сохранение в OnGameModeExit
Мой код
HTML:
public OnGameModeExit()
{
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
ClearDialog(i);
SavePlayerAccaunt(i);
}
}
if(!ServerRestarted) SaveAllInformation();
else SendRconCommand("gmx");
new GetOldVehicle = CreateVehicle(400, 0.0, 0.0, 0.0, 0.0, -1, -1, -1);
DestroyVehicle(GetOldVehicle);
for(new i; i<GetOldVehicle; i++)
{
if(GetVehicleModel(i) != 0) DestroyVehicle(i);
}
new GetOldObject = CreateObject(971, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
DestroyObject(GetOldObject);
for(new i=0; i<GetOldObject; i++)
{
DestroyObject(i);
}
new GetOldZone = GangZoneCreate(0.0, 0.0, 0.0, 0.0);
GangZoneDestroy(GetOldZone);
for(new i=0; i<GetOldZone; i++)
{
GangZoneDestroy(i);
}
new GetOldTimer = SetTimer("_", 99999, false);
KillTimer(GetOldTimer);
for(new i=0; i<GetOldTimer; i++)
{
KillTimer(i);
}
new Text:GetOldTextDraw = TextDrawCreate(-999.0, -999.0, " ");
TextDrawDestroy(GetOldTextDraw);
for(new Text:i; i<GetOldTextDraw; i++)
{
TextDrawHideForAll(i);
TextDrawDestroy(i);
}
DestroyAllDynamicPickups();
DestroyAllDynamic3DTextLabels();
DestroyAllDynamicObjects();
DestroyAllDynamicMapIcons();
return 1;
}
public OnGameModeInit()
HTML:
LoadHouses();
HTML:
stock LoadHouses()
{
if(!fexist("houses.cfg")) return printf("file 'houses.cfg' not found");
new arrCoords[23][64],strFromFile[256],i;
new File:GetFile = fopen("houses.cfg");
while(fread(GetFile, strFromFile))
{
if(!strlen(strFromFile)) break;
i += 1;
split(strFromFile, arrCoords, '|');
settext(HouseInfo[i][hName], arrCoords[0]);
settext(HouseInfo[i][hOwner], arrCoords[1]);
HouseInfo[i][hLevel] = strval(arrCoords[2]);
HouseInfo[i][hCost] = strval(arrCoords[3]);
HouseInfo[i][hInterior] = strval(arrCoords[4]);
HouseInfo[i][hEnterX] = floatstr(arrCoords[5]);
HouseInfo[i][hEnterY] = floatstr(arrCoords[6]);
HouseInfo[i][hEnterZ] = floatstr(arrCoords[7]);
HouseInfo[i][hSpawnX] = floatstr(arrCoords[8]);
HouseInfo[i][hSpawnY] = floatstr(arrCoords[9]);
HouseInfo[i][hSpawnZ] = floatstr(arrCoords[10]);
HouseInfo[i][hSpawnA] = floatstr(arrCoords[11]);
HouseInfo[i][hCarID] = strval(arrCoords[12]);
HouseInfo[i][hColor] = strval(arrCoords[13]);
HouseInfo[i][hCarX] = floatstr(arrCoords[14]);
HouseInfo[i][hCarY] = floatstr(arrCoords[15]);
HouseInfo[i][hCarZ] = floatstr(arrCoords[16]);
HouseInfo[i][hCarA] = floatstr(arrCoords[17]);
HouseInfo[i][hHealth] = strval(arrCoords[18]);
HouseInfo[i][hMoneys] = strval(arrCoords[19]);
HouseInfo[i][hClooth] = strval(arrCoords[20]);
HouseInfo[i][hSave] = strval(arrCoords[21]);
HouseInfo[i][hDoors] = strval(arrCoords[22]);
if(HouseInfo[i][hCarID] < 400) continue;
if(!strcmp(HouseInfo[i][hOwner], "None", true))
{
HouseIcon[i] = CreateDynamicMapIcon(HouseInfo[i][hEnterX], HouseInfo[i][hEnterY], HouseInfo[i][hEnterZ], 31, 0, 0, 0, -1, 150.0);
HousePickupOut[i] = CreateDynamicPickup(1273, 23, HouseInfo[i][hEnterX], HouseInfo[i][hEnterY], HouseInfo[i][hEnterZ]);
}
else
{
HouseIcon[i] = CreateDynamicMapIcon(HouseInfo[i][hEnterX], HouseInfo[i][hEnterY], HouseInfo[i][hEnterZ], 32, 0, 0, 0, -1, 150.0);
HousePickupOut[i] = CreateDynamicPickup(1272, 1, HouseInfo[i][hEnterX], HouseInfo[i][hEnterY], HouseInfo[i][hEnterZ]);
}
HouseVehicle[i] = CreateVehicle(HouseInfo[i][hCarID], HouseInfo[i][hCarX], HouseInfo[i][hCarY], HouseInfo[i][hCarZ], HouseInfo[i][hCarA], HouseInfo[i][hColor], HouseInfo[i][hColor], -1);
GetVehicleHouse[HouseVehicle[i]] = i;
SetVehicleToRespawn(HouseVehicle[i]);
CreateHouseExitPickup(i);
HouseOpen[i] = false;
}
fclose(GetFile);
LastHouse = i;
return 1;
}
HTML:
stock SaveHouses()
{
if(!fexist("houses.cfg")) return printf("file 'houses.cfg' not found");
new string[256],File:GetFile = fopen("houses.cfg", io_write);
for(new i=1; i<LastHouse+1; i++)
{
if(HouseInfo[i][hCost] == 0) continue;
f(string, "%s|%s|%d|%d|%d|%f|%f|%f|%f|%f|%f|%f|%d|%d|%f|%f|%f|%f|%d|%d|%d|%d|%d\n",
HouseInfo[i][hName],
HouseInfo[i][hOwner],
HouseInfo[i][hLevel],
HouseInfo[i][hCost],
HouseInfo[i][hInterior],
HouseInfo[i][hEnterX],
HouseInfo[i][hEnterY],
HouseInfo[i][hEnterZ],
HouseInfo[i][hSpawnX],
HouseInfo[i][hSpawnY],
HouseInfo[i][hSpawnZ],
HouseInfo[i][hSpawnA],
HouseInfo[i][hCarID],
HouseInfo[i][hColor],
HouseInfo[i][hCarX],
HouseInfo[i][hCarY],
HouseInfo[i][hCarZ],
HouseInfo[i][hCarA],
HouseInfo[i][hHealth],
HouseInfo[i][hMoneys],
HouseInfo[i][hClooth],
HouseInfo[i][hSave],
HouseInfo[i][hDoors]);
fwrite(GetFile, string);
}
fclose(GetFile);
return 1;
}
HTML:
stock SaveAllInformation()
{
SaveVehicles();
SaveHouses();
//SaveGangZones();
SaveFraction();
SaveBusiness();
SaveGangInfo();
SaveInforamtion();
}
Последнее редактирование:
