Дома вроде сохраняются но после того как рестартнуть сервер либо же включить а потом включить то в бд этот дом который был созданный до рестарта на 0 все ставится.
Вид для печати
Замени
PHP код:
if(strcmp(cmd, "/addhouse", true) == 0)
{
if(Player[playerid][pAdmin] < 10) return send(playerid,COLOR_RED,UnAdminMes);
new level,Float:XX,Float:YY,Float:ZZ,int,class[64];
if(HouseInfo[params[0]][hClass] == 1) class = "Гетто класс";
if(HouseInfo[params[0]][hClass] == 2) class = "Эконом класс";
if(HouseInfo[params[0]][hClass] == 3) class = "Средний класс";
if(HouseInfo[params[0]][hClass] == 4) class = "Премиум класс";
if(HouseInfo[params[0]][hClass] == 5) class = "VIP класс";
if(HouseInfo[params[0]][hClass] == 6) class = "Элита класс";
if(sscanf(params, "d", params[0])) return send(playerid, COLOR_LIGHTBLUE, "•{ffffff} /addhouse [Класс]");
if(params[0] > 6 || params[0] < 1) return send(playerid,COLOR_RED,""vError""vPod"Используй значеие от 1 до 6!");
if(params[0] == 1)
{
level = 1;
XX = 243.7219;
YY = 304.7986;
ZZ = 999.1484;
int = 1;
}
if(params[0] == 2)
{
level = 3;
XX = 266.8805;
YY = 304.8064;
ZZ = 998.6119;
int = 2;
}
if(params[0] == 3)
{
level = 5;
XX = 2365.2104492188;
YY = -1135.6337890625;
ZZ = 1050.8825683594;
int = 8;
}
if(params[0] == 4)
{
level = 7;
XX = 2317.7861328125;
YY = -1026.9718017578;
ZZ = 1050.2177734375;
int = 9;
}
if(params[0] == 5)
{
level = 10;
XX = 2237.5236816406;
YY = -1081.6125488281;
ZZ = 1049.0234375;
int = 2;
}
if(params[0] == 6)
{
level = 12;
XX = 235.4220;
YY = 1187.3510;
ZZ = 1080.2578;
int = 3;
}
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
HouseInfo[HOME][hEnterX] = X;
HouseInfo[HOME][hEnterY] = Y;
HouseInfo[HOME][hEnterZ] = Z;
HouseInfo[HOME][hLvl] = level;
HouseInfo[HOME][hPrice] = HouseInfo[HOME][hLvl]*100000;
HouseInfo[HOME][hMats] = 0;
HouseInfo[HOME][hDrugs] = 0;
HouseInfo[HOME][hHel] = 0;
HouseInfo[HOME][hArm] = 0;
HouseInfo[HOME][hOwned] = 0;
HouseInfo[HOME][hID] = HOME;
HouseInfo[HOME][hOwner][0] = 0;
HouseInfo[HOME][hExitX] = XX;
HouseInfo[HOME][hExitY] = YY;
HouseInfo[HOME][hExitZ] = ZZ;
HouseInfo[HOME][hInt] = int;
HouseInfo[HOME][hLock] = 0;
HouseInfo[HOME][hClass] = params[0];
strmid(HouseInfo[HOME][hOwner], "The State", 0, strlen("The State"), 255);
new text[600],query[1028];
format(query, sizeof(query), "INSERT INTO `house` (`EnterX`, `EnterY`, `EnterZ`, `ExitX`, `ExitY`, `ExitZ`, `Int`, `Owned`, `Owner`, `Price`, `Lock`, `Lvl`, `Mats`, `Drugs`, `Heal`, `Arm`, `Class`)\
VALUE ('%f', '%f', '%f', '%f', '%f', '%f', '%i', '0', 'The State', '%i', '0', '%i', '0', '0', '0', '0', '%i')", X, Y, Z, XX, YY, ZZ,int,HouseInfo[HOME][hLvl]*100000,level,params[0]);
mysql_query(query);
f(text,"{33ccff}[{ffff00}Дом{33ccff}]{46E9FF}\nАдрес: {FFFF00} %d{46E9FF}\nЦена: {FFFF00}%d{33aa33}${46E9FF}\n Класс дома: {7CFC00}%s{FFFF00}\n{46E9FF}Уровень дома: {7CFC00}%d{FFFF00}",HouseInfo[HOME][hID],HouseInfo[HOME][hPrice],class,HouseInfo[HOME][hLvl]);
HouseInfo[HOME][hLabel] = Create3DTextLabel(string,COLOR_GREEN,HouseInfo[HOME][hEnterX], HouseInfo[HOME][hEnterY], HouseInfo[HOME][hEnterZ]+1.2,15.0,0);
HouseInfo[idx][hMIcon] = CreateDynamicMapIcon(HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ], 31, COLOR_WHITE, 0, -1, -1, 400.0);
HouseInfo[HOME][hPickup] = CreateDynamicPickup(1273, 23, HouseInfo[HOME][hEnterX], HouseInfo[HOME][hEnterY], HouseInfo[HOME][hEnterZ],-1);
SaveStuff();
UpdateHouse(HOME);
f(string,""vGotov"Создан дом ID:[%d] Price:[%d] LvL:[%d]",HouseInfo[HOME][hID],HouseInfo[HOME][hPrice],HouseInfo[HOME][hLvl]);
HOME += 1;
SaveHouses();
return send(playerid, COLOR_WHITE, string);
}
Не помогло все равно не сохроняются. Я попробовал очистить базу с домами и теперь когда я создаю дом у меня дом почему-то создается не от 1 и далее а от 355 и далее. И когда создаю дома в бд вот такое. Даже рестарт не делаю и все равно такое. Раньше после рестарта такое ток было.
http://rghost.ru/8HLtwqkdM/image.png
Вот я чуть чуть переделал команду.
PHP код:
CMD:addhouse(playerid,params[]){
if(Player[playerid][pAdmin] < 10 || AdminDuty[playerid] == 0)return NoRights;
new level,Float:XX,Float:YY,Float:ZZ,int,class[64],string[212];
if(HouseInfo[params[0]][hClass] == 1) class = "Гетто класс";
if(HouseInfo[params[0]][hClass] == 2) class = "Эконом класс";
if(HouseInfo[params[0]][hClass] == 3) class = "Средний класс";
if(HouseInfo[params[0]][hClass] == 4) class = "Премиум класс";
if(HouseInfo[params[0]][hClass] == 5) class = "VIP класс";
if(HouseInfo[params[0]][hClass] == 6) class = "Элита класс";
if(sscanf(params,"d", params[0]))return send(playerid,COLOR_COMAND,"[КОМАНДЫ] {FFFFFF}/addhouse [Класс дома].");
if(params[0] > 6 || params[0] < 1)return send(playerid,COLOR_RED,"[ОШИБКА] {FFFFFF}Доступное значение класса от 1 до 6.");
if(params[0] == 1)
{
level = 1;
XX = 243.7219;
YY = 304.7986;
ZZ = 999.1484;
int = 1;
}
if(params[0] == 2)
{
level = 3;
XX = 266.8805;
YY = 304.8064;
ZZ = 998.6119;
int = 2;
}
if(params[0] == 3)
{
level = 5;
XX = 2365.2104492188;
YY = -1135.6337890625;
ZZ = 1050.8825683594;
int = 8;
}
if(params[0] == 4)
{
level = 7;
XX = 2317.7861328125;
YY = -1026.9718017578;
ZZ = 1050.2177734375;
int = 9;
}
if(params[0] == 5)
{
level = 10;
XX = 2237.5236816406;
YY = -1081.6125488281;
ZZ = 1049.0234375;
int = 2;
}
if(params[0] == 6)
{
level = 12;
XX = 235.4220;
YY = 1187.3510;
ZZ = 1080.2578;
int = 3;
}
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
HouseInfo[HOME][hEnterX] = X;
HouseInfo[HOME][hEnterY] = Y;
HouseInfo[HOME][hEnterZ] = Z;
HouseInfo[HOME][hLvl] = level;
HouseInfo[HOME][hPrice] = HouseInfo[HOME][hLvl]*100000;
HouseInfo[HOME][hMats] = 0;
HouseInfo[HOME][hDrugs] = 0;
HouseInfo[HOME][hHel] = 0;
HouseInfo[HOME][hArm] = 0;
HouseInfo[HOME][hOwned] = 0;
HouseInfo[HOME][hID] = HOME;
HouseInfo[HOME][hOwner][0] = 0;
HouseInfo[HOME][hExitX] = XX;
HouseInfo[HOME][hExitY] = YY;
HouseInfo[HOME][hExitZ] = ZZ;
HouseInfo[HOME][hInt] = int;
HouseInfo[HOME][hLock] = 0;
HouseInfo[HOME][hClass] = params[0];
strmid(HouseInfo[HOME][hOwner], "The State", 0, strlen("The State"), 255);
new text[600],query[1028];
f(query,"INSERT INTO `house` (`EnterX`, `EnterY`, `EnterZ`, `ExitX`, `ExitY`, `ExitZ`, `Int`, `Owned`, `Owner`, `Price`, `Lock`, `Lvl`, `Mats`, `Drugs`, `Heal`, `Arm`, `Class`)\
VALUE ('%f', '%f', '%f', '%f', '%f', '%f', '%i', '0', 'The State', '%i', '0', '%i', '0', '0', '0', '0', '%i')", X, Y, Z, XX, YY, ZZ,int,HouseInfo[HOME][hLvl]*100000,level,params[0]);
mysql_query(query);
f(text,"{33ccff}[{ffff00}Дом{33ccff}]{46E9FF}\nАдрес: {FFFF00} %d{46E9FF}\nЦена: {FFFF00}%d{33aa33}${46E9FF}\n Класс дома: {7CFC00}%s{FFFF00}\n{46E9FF}Уровень дома: {7CFC00}%d{FFFF00}",HouseInfo[HOME][hID],HouseInfo[HOME][hPrice],class,HouseInfo[HOME][hLvl]);
HouseInfo[HOME][hLabel] = Create3DTextLabel(string,COLOR_GREEN,HouseInfo[HOME][hEnterX], HouseInfo[HOME][hEnterY], HouseInfo[HOME][hEnterZ]+1.2,15.0,0);
HouseInfo[HOME][hMIcon] = CreateDynamicMapIcon(HouseInfo[HOME][hEnterX], HouseInfo[HOME][hEnterY], HouseInfo[HOME][hEnterZ], 31, COLOR_WHITE, 0, -1, -1, 400.0);
HouseInfo[HOME][hPickup] = CreateDynamicPickup(1273, 23, HouseInfo[HOME][hEnterX], HouseInfo[HOME][hEnterY], HouseInfo[HOME][hEnterZ],-1);
SaveStuff();
UpdateHouse(HOME);
f(string,""vGotov"Создан дом ID:[%d] Price:[%d] LvL:[%d]",HouseInfo[HOME][hID],HouseInfo[HOME][hPrice],HouseInfo[HOME][hLvl]);
HOME += 1;
SaveHouses();
return send(playerid, COLOR_WHITE, string);}
Help
Подниму
Эх не кто не поможет..
Для этого нужно изменить значение auto_increment в таблице с домами (раздел - операции).Цитата:
Я попробовал очистить базу с домами и теперь когда я создаю дом у меня дом почему-то создается не от 1 и далее а от 355 и далее.
Скинь логи mysql.
Вот это я просто зашел когда на сервере в базе данных уже есть 355 домов.
А вот это после рестарта сервера, когда на сервере 355 домов.
Пришлось через файлообменник так как много строчек.
http://rghost.ru/private/6RQdjXxMb/8...05b08d95de547e (Не реклама).
Вот это я зашел на сервер когда я очистил полностью дома с базы данных.зашел и создал 1 дом.
А вот я рестартнул сервер при созданном доме.
Пришлось снова залить на файлообменник так как файл слишком большой.
http://rghost.ru/private/6nQbYhCWt/d...235ceadfcca0a4 (Не реклама).
Ну вот и все дома не сохронились надеюсь поможете.
Выручайте.
Возможно поможет решение, описанное в этой теме: