Использование команды один раз
#1

И вот я снова здесь с моими вопросами. Хотелось бы что бы введя команду на восстановление здоровья

Вот эта команда в

public OnPlayerCommandText(playerid, cmdtext[])

Код:
    if (strcmp("/heal", cmdtext, true, 10) == 0)
    {
		if(GetPlayerMoney(playerid) < 1000)
	    	{
	    		SendClientMessage(playerid, 0x00FF00AA, " Не достаточно денег. Нужно $1.000 ");
	    		return 1;
	    	}
	    	SetPlayerHealth(playerid,100.0);
	    	SetPlayerArmour(playerid, 100);
	    	PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
	    	GivePlayerMoney(playerid,-1000);
	    	SendClientMessage(playerid, 0x00FF00AA, " Вы восстановили здоровье ");
	    	new PlayerName[30];
	    	GetPlayerName(playerid, PlayerName, 30);
		return 1;
   	}
Так как некоторые игроки используют эту команду для спасения. Хотелось бы что бы её можно было использовать только один раз, но после того как ты умираешь ты снова можешь ввести команду один раз!

Не могли бы вы помочь с реализацией?
Reply
#2

Создаёшь переменную в начале кода, типа new UseHeal[MAX_PLAYERS];
При вводе команды, присваивай значение этой переменной "1" для playerid. При смерти - присваивай "0" =)

PS> Ну и естественно делай проверку в команде, на значение переменной.
Reply
#3

А как присвоить значение к playerid?
Reply
#4

Не так выразился...

new UseHeal[MAX_PLAYERS];

UseHeal[playerid] = 1; // При вводе команды (в конце).
UseHeal[playerid] = 0; // При смерти.

if(UseHeal[playerid] == 1)
{
SendClientMessage(playerid, 0x00FF00AA, " Заюзал один раз, и хватит, теперь иди в бой! ");
return 1;
}

Это поможет...
Reply
#5

PVar'ы тут лучшее решение, т.к. нам чисто эти данные нужны, когда игрок на сервере
Reply
#6

Кстати, и романиус мне тоже про PVar трет... Может кто-то нубу (тобишь мне ^_^) объяснить. что это за зверь такой - PVar?
Reply
#7

Quote:
Originally Posted by azen
Посмотреть сообщение
Кстати, и романиус мне тоже про PVar трет... Может кто-то нубу (тобишь мне ^_^) объяснить. что это за зверь такой - PVar?
попробуй сам изучить, тогда ты точно разберешься.
Reply
#8

Можно где-либо статейку по ним? (только на русском. С буржуйским у меня туго)
Reply
#9

у нас же тут была темка про "пивары и с чем их едят"..
Reply
#10

Quote:
Originally Posted by -Stranger-
Посмотреть сообщение
Не так выразился...

new UseHeal[MAX_PLAYERS];

UseHeal[playerid] = 1; // При вводе команды (в конце).
UseHeal[playerid] = 0; // При смерти.

if(UseHeal[playerid] == 1)
{
SendClientMessage(playerid, 0x00FF00AA, " Заюзал один раз, и хватит, теперь иди в бой! ");
return 1;
}

Это поможет...
Спасибо за помощь
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)