Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Проблема с домами

Статус
В этой теме нельзя размещать новые ответы.

rosatto102

Умник
Привет всем ув.форумчане :)
Все таки сдался и решил задать вопрос...
Опишу суть проблемы:

У меня есть дом. На домашнем счету есть деньги. В пайдей снимается некоторое количество. И если будет 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);
			}
		}
stock SaveHouse(houseid)
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;
}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу