Unreal (18.01.2015)
Там он выдавал броню, а тут ХП.
Ну, если смотреть со стороны автора, то возможно он учёл комментарий от "Mazilla", мол, смысл выдавать броню, если можно дать ХП, вот и изменил функции, лично мое мнение)
Unreal (18.01.2015)
Одна из самых нормальный идей в первом посте. Количество строк не влияет на качество самого кода. Да и команды не будут работать, где проверка на то, что игрок уже вводил команду?
Unreal (18.01.2015)
Смысл моего комментария был совсем другим. При вводе данной команды администратором, выдаст бронь/хп и напишет ГМ ОН. При повторном вводе администратором будет то же самое, а как отключить ГМ? При каждом вводе команды обычным игроком, выдаст бронь/хп в 100 единиц и напишет ГМ ОФФ. Где логика?
Unreal (18.01.2015)
Лучше уж бессмертие с проверкой в авто ли игрок.
Если в авто то циклический восстанавливать HP авто(для защиты от взрывов).
Я бы сделал так:
PHP код:
CMD:agm(playerid, params[]) {
new bool:proverka[MAX_PLAYERS char];
/*Ваша проверка на админку*/
if(proverka{playerid} == false) proverka{playerid} = true, SetPlayerHealth(playerid, 0x7F800000), SendClientMessage(playerid, -1, "AGM ON");
else proverka{playerid} = false, SetPlayerHealth(playerid, 100.0), SendClientMessage(playerid, -1, "AGM OFF");
}
proverka{playerid} всегда будет равна false при вызове команды -должна быть глобальной переменной тогда:PHP код:
new bool:proverka[MAX_PLAYERS char];
PHP код:
new bool:proverka[MAX_PLAYERS char];
CMD:agm(playerid, params[]) {
proverka{playerid} = !proverka{playerid};
if(proverka{playerid}) return SetPlayerHealth(playerid, 0x7F800000), SendClientMessage(playerid, -1, "AGM ON");
else return SetPlayerHealth(playerid, 100.0), SendClientMessage(playerid, -1, "AGM OFF");
}
Последний раз редактировалось Mazzilla; 30.01.2015 в 13:14.
Unreal (20.12.2015)
А так не проще?
PHP код:
CMD:agm(playerid)
{
if (/* не админ и все такое */)
return 1;
if (GetPVarInt(playerid, "agm"))
{
SetPVarInt(playerid, "agm", 1);
SetPlayerHealth(playerid, 0x7F800000);
SendClientMessage(playerid, -1, "AGM ON");
return 1;
}
SetPVarInt(playerid, "agm", 0);
SetPlayerHealth(playerid, 100.0);
SendClientMessage(playerid, -1, "AGM OFF");
return 1;
}
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)