rosatto102
Умник
Привет всем ув.форумчане 
Все таки сдался и решил задать вопрос...
Опишу суть проблемы:
У меня есть дом. На домашнем счету есть деньги. В пайдей снимается некоторое количество. И если будет 0, то дом слетает. Все прекрасно.
А теперь про тех, кто в данный момент не играет. С счета деньги у них тоже снимаются и слетают НО после перезапуска сервера, у них становиться все как прежде. В этом и суть проблемы...
Не знаю уже что делать. Помогите.
С меня +ики
Информация: (что еще нужно - говорите)
из stock PayDay();
stock SaveHouse(houseid)
Все таки сдался и решил задать вопрос...
Опишу суть проблемы:
У меня есть дом. На домашнем счету есть деньги. В пайдей снимается некоторое количество. И если будет 0, то дом слетает. Все прекрасно.
А теперь про тех, кто в данный момент не играет. С счета деньги у них тоже снимаются и слетают НО после перезапуска сервера, у них становиться все как прежде. В этом и суть проблемы...
Не знаю уже что делать. Помогите.
С меня +ики
Информация: (что еще нужно - говорите)
из stock PayDay();
PHP:
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(HouseInfo[h][hGrant] == 0)
{
if(HouseInfo[h][hKlass] == 0 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 50; kazna += 50;
if(HouseInfo[h][hTakings] > 16800) HouseInfo[h][hTakings] = 16800;
}
if(HouseInfo[h][hKlass] == 1 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 100; kazna += 100;
if(HouseInfo[h][hTakings] > 33600) HouseInfo[h][hTakings] = 33600;
}
if(HouseInfo[h][hKlass] == 2 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 150; kazna += 150;
if(HouseInfo[h][hTakings] > 50400) HouseInfo[h][hTakings] = 50400;
}
if(HouseInfo[h][hKlass] == 3 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 200; kazna += 200;
if(HouseInfo[h][hTakings] > 67200) HouseInfo[h][hTakings] = 67200;
}
if(HouseInfo[h][hKlass] == 4 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 250; kazna += 250;
if(HouseInfo[h][hTakings] > 84000) HouseInfo[h][hTakings] = 84000;
}
SaveHouse(h);
}
if(HouseInfo[h][hGrant] == 1)
{
if(HouseInfo[h][hKlass] == 0 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 50/2; kazna += 50/2;
if(HouseInfo[h][hTakings] > 16800) HouseInfo[h][hTakings] = 16800;
}
if(HouseInfo[h][hKlass] == 1 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 100/2; kazna += 100/2;
if(HouseInfo[h][hTakings] > 33600) HouseInfo[h][hTakings] = 33600;
}
if(HouseInfo[h][hKlass] == 2 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 150/2; kazna += 150/2;
if(HouseInfo[h][hTakings] > 50400) HouseInfo[h][hTakings] = 50400;
}
if(HouseInfo[h][hKlass] == 3 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 200/2; kazna += 200/2;
if(HouseInfo[h][hTakings] > 67200) HouseInfo[h][hTakings] = 67200;
}
if(HouseInfo[h][hKlass] == 4 && HouseInfo[h][hOwned] == 1)//Классы домов
{
HouseInfo[h][hTakings] -= 250/2; kazna += 250/2;
if(HouseInfo[h][hTakings] > 84000) HouseInfo[h][hTakings] = 84000;
}
}
if(HouseInfo[h][hTakings] <= 0 && HouseInfo[h][hOwned] == 1)
{
new housecash = HouseInfo[h][hValue];
new playeridd = GetPlayerID(HouseInfo[h][hOwner]);
if(IsPlayerConnected(playeridd))
{
PlayerInfo[playeridd][pPhousekey] = 255;
SCM(playeridd, COLOR_LIGHTRED, "Ваш дом был продан за неуплату государству.");
}
else if(!IsPlayerConnected(playeridd))
{
new query[128];
format(query, sizeof(query), "UPDATE `accounts` SET `pPhousekey` = '255', `pHousecash` = '%d' WHERE `Name` = '%s'",housecash, HouseInfo[h][hOwner]);
mysql_function_query(connects, query, false, "", "");
}
foreach(Player,i)
{
if(PlayerInfo[i][pPhousekey2] == h)
{
new name[64];
PlayerInfo[i][pPhousekey2] = 255;
GetPlayerName(i,name,sizeof(name));
SCM(i, COLOR_LIGHTRED, "Дом в котором вы были прописаны продан гос-ву за неуплату.");
new query[128];
format(query, sizeof(query), "UPDATE `accounts` SET `pPhousekey2` = '255' WHERE `Name` = '%s'",name);
mysql_function_query(connects, query, false, "", "");
}
}
HouseInfo[h][hLock] = 1;
HouseInfo[h][hOwned] = 0;
HouseInfo[h][hGrant] = 0; // Субсидия
HouseInfo[h][hHouseSafe] = 0; // Сейф
HouseInfo[h][hHel] = 0; // Healt
strmid(HouseInfo[h][hOwner], "The State", 0, strlen("The State"), 255);
SaveHouse(h);
}
if(HouseInfo[h][hOwned] == 0)
{
DestroyDynamicMapIcon(HouseInfo[h][hMIcon]);
DestroyPickup(HouseInfo[h][hPickup]);
AddStaticPickup(1273, 23, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]);
HouseInfo[h][hMIcon] = CreateDynamicMapIcon(HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez], 31, COLOR_WHITE, 0, -1, -1, 200.0);
}
if(HouseInfo[h][hOwned] == 1)
{
DestroyDynamicMapIcon(HouseInfo[h][hMIcon]);
DestroyPickup(HouseInfo[h][hPickup]);
AddStaticPickup(19522, 23, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]);
HouseInfo[h][hMIcon] = CreateDynamicMapIcon(HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez], 32, COLOR_WHITE, 0, -1, -1, 200.0);
}
}
PHP:
stock SaveHouse(houseid)
{
new update[1024],stringer[128];
update = "UPDATE `house` SET ";
acc_float_strcat(update, sizeof(update), "hEntrancex", HouseInfo[houseid][hEntrancex]);
acc_float_strcat(update, sizeof(update), "hEntrancey", HouseInfo[houseid][hEntrancey]);
acc_float_strcat(update, sizeof(update), "hEntrancez", HouseInfo[houseid][hEntrancez]);
acc_float_strcat(update, sizeof(update), "hExitx", HouseInfo[houseid][hExitx]);
acc_float_strcat(update, sizeof(update), "hExity", HouseInfo[houseid][hExity]);
acc_float_strcat(update, sizeof(update), "hExitz", HouseInfo[houseid][hExitz]);
acc_str_strcat(update, sizeof(update), "hOwner", HouseInfo[houseid][hOwner]);
acc_int_strcat(update, sizeof(update), "hValue", HouseInfo[houseid][hValue]);
acc_int_strcat(update, sizeof(update), "hInt", HouseInfo[houseid][hInt]);
acc_int_strcat(update, sizeof(update), "hLock", HouseInfo[houseid][hLock]);
acc_int_strcat(update, sizeof(update), "hOwned", HouseInfo[houseid][hOwned]);
acc_int_strcat(update, sizeof(update), "hTakings", HouseInfo[houseid][hTakings]);
acc_int_strcat(update, sizeof(update), "hVec", HouseInfo[houseid][hVec]);
acc_int_strcat(update, sizeof(update), "hKlass", HouseInfo[houseid][hKlass]);
acc_int_strcat(update, sizeof(update), "hGarage", HouseInfo[houseid][hGarage]);
acc_float_strcat(update, sizeof(update), "hCarx", HouseInfo[houseid][hCarx]);
acc_float_strcat(update, sizeof(update), "hCary", HouseInfo[houseid][hCary]);
acc_float_strcat(update, sizeof(update), "hCarz", HouseInfo[houseid][hCarz]);
acc_float_strcat(update, sizeof(update), "hCarc", HouseInfo[houseid][hCarc]);
acc_int_strcat(update, sizeof(update), "hStyle", HouseInfo[houseid][hStyle]);
acc_int_strcat(update, sizeof(update), "hSost", HouseInfo[houseid][hSost]);
acc_int_strcat(update, sizeof(update), "hHel", HouseInfo[houseid][hHel]);
acc_int_strcat(update, sizeof(update), "hGun[0]", HouseInfo[houseid][hGun][0]);
acc_int_strcat(update, sizeof(update), "hGun[1]", HouseInfo[houseid][hGun][1]);
acc_int_strcat(update, sizeof(update), "hGun[2]", HouseInfo[houseid][hGun][2]);
acc_int_strcat(update, sizeof(update), "hGun[3]", HouseInfo[houseid][hGun][3]);
acc_int_strcat(update, sizeof(update), "hGun[4]", HouseInfo[houseid][hGun][4]);
acc_int_strcat(update, sizeof(update), "hGunAmmo[0]", HouseInfo[houseid][hGunAmmo][0]);
acc_int_strcat(update, sizeof(update), "hGunAmmo[1]", HouseInfo[houseid][hGunAmmo][1]);
acc_int_strcat(update, sizeof(update), "hGunAmmo[2]", HouseInfo[houseid][hGunAmmo][2]);
acc_int_strcat(update, sizeof(update), "hGunAmmo[3]", HouseInfo[houseid][hGunAmmo][3]);
acc_int_strcat(update, sizeof(update), "hGunAmmo[4]", HouseInfo[houseid][hGunAmmo][4]);
acc_int_strcat(update, sizeof(update), "hGrant", HouseInfo[houseid][hGrant]);
acc_int_strcat(update, sizeof(update), "hHouseSafe", HouseInfo[houseid][hHouseSafe]);
acc_float_strcat(update, sizeof(update), "sX", HouseInfo[houseid][sX]);
acc_float_strcat(update, sizeof(update), "sY", HouseInfo[houseid][sY]);
acc_float_strcat(update, sizeof(update), "sZ", HouseInfo[houseid][sZ]);
acc_float_strcat(update, sizeof(update), "sRX", HouseInfo[houseid][sRX]);
acc_float_strcat(update, sizeof(update), "sRY", HouseInfo[houseid][sRY]);
acc_float_strcat(update, sizeof(update), "sRZ", HouseInfo[houseid][sRZ]);
strdel(update, strlen(update)-1, strlen(update));
format(stringer,sizeof(stringer)," WHERE `hID` = '%d'",HouseInfo[houseid][hID]);
strcat(update, stringer);
mysql_function_query(connects, update, false, "", "");
}
PHP:
stock SaveHousee()
{
for(new h = 0; h < sizeof(HouseInfo); h++) SaveHouse(h);
return true;
}
Последнее редактирование:
