• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

PayDay

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

Alex_Jemison

Изучающий
Пользователь
Регистрация
13 Апр 2018
Сообщения
202
Лучшие ответы
0
Репутация
0
Проблема с выдачей PayDay. Хотя при использовании команды /testpayday все проходит хорошо

PHP:
forward MinutesUpdate(); 
public MinutesUpdate() 
{
     if(minute == 0 && second == 0)
    {
       PayDay(); 
    }
}
PHP:
stock PayDay()
{
	new string[512];
	foreach(new i:Player)
	{
		if(PlayerInfo[i][pTime] > 35)
		{
			PlayerInfo[i][pTime] = 0;
			SendClientMessage(i, COLOR_GOLD, !"<< PayDay >>");
			PlayerInfo[i][pExp] ++;

			format(string, sizeof(string), "Сумма в банке: %d$", PlayerInfo[i][pBank]);
			SendClientMessage(i, -1, string);

			if(PlayerInfo[i][pWanted] > 1)
			{
				PlayerInfo[i][pWanted] --;
				format(string, sizeof(string), "Уровень розыска %d (-1)", PlayerInfo[i][pWanted]);
				SendClientMessage(i, -1, string);
			}
			else
			{
				PlayerInfo[i][pWanted] = 0;
				if((PlayerInfo[i][pZakon]+1) >= 100)
				{
					PlayerInfo[i][pZakon] = 100;
					format(string, sizeof(string), "Законопослушность: 100");
				}
				else
				{
					PlayerInfo[i][pZakon] ++;
					format(string, sizeof(string), "Законопослушность: %d (+1)", PlayerInfo[i][pZakon]);
				}
				SendClientMessage(i, -1, string);
			}	

			if(PlayerInfo[i][pExp] >= (PlayerInfo[i][pLvl]+1)*4)
			{
				PlayerInfo[i][pLvl] ++;
				new newexp = PlayerInfo[i][pExp] -= (PlayerInfo[i][pLvl]+1)*4;
				if(newexp > 0) PlayerInfo[i][pExp] = newexp;
				else PlayerInfo[i][pExp] = 0;
				format(string, sizeof(string), "Поздравляем ! Вы достигли %d уровня !", PlayerInfo[i][pLvl]);
				SendClientMessage(i, COLOR_GOLD, string);

				static const fmt_query[] = "UPDATE `accounts` SET `Lvl` = '%d', `Exp` = '%d' WHERE `id` = '%d'";  
			    new query[sizeof(fmt_query)+(-2+9)+(-2+8)];   
			    format(query, sizeof(query), fmt_query, PlayerInfo[i][pLvl],PlayerInfo[i][pExp],PlayerInfo[i][pID]); 
			    mysql_tquery(mysql, query); 
			}
		}
		else SendClientMessage(i, COLOR_RED, ">> {FFFFFF}Вы не отыграли 20 минут для получения PAYDAY");
	}
}
PHP:
CMD:testpayday(playerid)
{
	PlayerInfo[playerid][pTime] = 45;
	PayDay();
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу