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

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

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

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

[ВОПРОС] Как сделать проверку на деньги и ХП?

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

Den4il[Camero

Умник
Данные 2 команды выполняют роль открытия шлагбаума на въезде в ЛС и выезде СФ, на них стоит проверка на наличие денег, но она не работает, тоесть человек у которого 0$ может открывать его и его деньги будут идти в минус

Данные команды:

PHP:
if (strcmp(cmdtext, "/sf", true) == 0)
	{
		if(PlayerToPoint(5,playerid,77.8675,-1527.7014,5.2006))
		{
			SetObjectRot(vorota[19],1.9849853515625, 359.99932861328, 267.70544433594);
			timer[19] = SetTimer("SFClose", 10000, 0);
			SendClientMessage(playerid,0x00FF00AA,"• {ffffff}Вы заплатили, шлагбаун открыт на 10 секунд, проезжайте!");
			NormMoney[playerid] = 2;
			AntiMoney[playerid] = AntiMoney[playerid] - SBizzInfo[12][sbEntranceCost];
			GivePlayerMoney(playerid,-SBizzInfo[12][sbEntranceCost]);
			SBizzInfo[12][sbTill] += SBizzInfo[12][sbEntranceCost];
			ExtortionSBiz(12, SBizzInfo[12][sbEntranceCost]);
			SBizzInfo[12][sbProducts]--;
			return true;
        }
		if (GetPlayerMoney(playerid) <  SBizzInfo[12][sbEntranceCost])
		{
			SendClientMessage(playerid, COLOR_GRAD2, "У вас не хватает денег!");
			return true;
		}
		else
		{
		    SendClientMessage(playerid, 0xFF0000AA,"x {ffffff}Вы не возле блок поста Los Santos - San Fierro!");

		}
	}

	if (strcmp(cmdtext, "/ls", true) == 0)
	{
		if(PlayerToPoint(5,playerid,69.6139,-1541.6848,5.0894))
		{
			SetObjectRot(vorota[22],1.9849853515625, 359.99932861328, 267.70544433594);
			timer[19] = SetTimer("LSClose", 10000, 0);
			SendClientMessage(playerid,0x00FF00AA,"• {ffffff}Вы заплатили, шлагбаун открыт на 10 секунд, проезжайте!");
			NormMoney[playerid] = 2;
			AntiMoney[playerid] = AntiMoney[playerid] - SBizzInfo[12][sbEntranceCost];
			GivePlayerMoney(playerid,-SBizzInfo[12][sbEntranceCost]);
			SBizzInfo[12][sbTill] += SBizzInfo[12][sbEntranceCost];
			ExtortionSBiz(12, SBizzInfo[12][sbEntranceCost]);
			SBizzInfo[12][sbProducts]--;
			return true;
		}
		if (GetPlayerMoney(playerid) <  SBizzInfo[12][sbEntranceCost])
		{
			SendClientMessage(playerid, COLOR_GRAD2, "У вас не хватает денег!");
			return true;
		}
		else
		{
		    SendClientMessage(playerid, 0xFF0000AA,"x {ffffff}Вы не возле блок поста Los Santos - San Fierro!");
		}
	}
Вторую проверку я бы хотел поставить на команду /drink, дело в том, что человек может пить до 250ХП, это слишком, нужно поставить проверку на 150ХП и дальше будет вылазить ошибка типа "Бармен отказался продавать вам напитки"

Данная команда:

PHP:
if(strcmp(cmd, "/drink", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(IsAtBar(playerid))
	        {
	            if(PlayerDrunk[playerid] < 10)
	            {
                    ShowPlayerDialog(playerid,102,DIALOG_STYLE_LIST,"Бар:","sprunk 2$\nВодка 10$\nВиски 10$\nВода 2$\nПиво 6$\nСигарета 10$","Ок","Отмена");
	            }
	            else
	            {
	                SendClientMessage(playerid, COLOR_GREY, " Вы не можете пить больше, вы упадете!");
	                return 1;
	            }
	        }
	        else
	        {
	            SendClientMessage(playerid, COLOR_GREY, " Вы не в Баре!");
	            return 1;
	        }
	    }
	    return 1;
	}
вот вродебы и всё=) кто поможет плюсами не обижу
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу