Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

5 страниц V  « 4 5

вызвать функцию после возрождения

[РЕШЕНО]
Статус пользователя wer1K
сообщение 19.10.2016, 0:32
Сообщение #81
Стаж: 18 лет

Сообщений: 403
Благодарностей: 259
Полезность: 987

Меценат Меценат

Немного оффтоп, но все же интерестно.

Код:

public hegrenade(first) {

if(vibri_event == true)
{
new players[32], team[32], num, player;

get_players(players, num, "ah")

for(new i = 0; i < num; i++)
{
player = players[i];

if((is_user_alive(player)))
{
get_user_team(player,team,32);
strip_user_weapons(player);
set_task(0.1, "RandGlow"); // Glow
give_item(player, "weapon_hegrenade");
cs_set_user_bpammo(player, CSW_HEGRENADE, 100)
set_user_health(player, 100);
}
}
}
else
{
client_print(0, print_chat, "[Knife игры] Эвент кончился")
return PLUGIN_HANDLED;
}
}
}



Скриптеры, позвольте уточнить, а разве нелья немного упростить и не использовать 2 if если можно использовать всего один с логическим оператором конъюнкции.
Почему бы не упростить до варианта ниже или здесь так нельзя?

Код:

public hegrenade(first) {

if(vibri_event && is_user_alive(player))
{
new players[32], team[32], num, player;

get_players(players, num, "ah")

for(new i = 0; i < num; i++)
{
player = players[i];
get_user_team(player,team,32);
strip_user_weapons(player);
set_task(0.1, "RandGlow"); // Glow
give_item(player, "weapon_hegrenade");
cs_set_user_bpammo(player, CSW_HEGRENADE, 100)
set_user_health(player, 100);
}
}
else
{
client_print(0, print_chat, "[Knife игры] Эвент кончился")
return PLUGIN_HANDLED;
}
}
}



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 19.10.2016, 0:34
Сообщение #82
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

2xxf3mzue

Проверка на aliv там не нужна, тем более id игрока ты в функцию не передаешь, а находишь всех игроков в цикле. Короч смотри что я ранее выкладывал.

Отредактировал: SISA, - 19.10.2016, 0:35
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя wer1K
сообщение 19.10.2016, 0:41
Сообщение #83
Стаж: 18 лет

Сообщений: 403
Благодарностей: 259
Полезность: 987

Меценат Меценат

SISA, вопрос для общего развития, пример выбран для наглядности. Просто часто вижу в плагинах картину когда много вложенных if:
Код:
if (условие) {
какая-то функция первого IF;
if (условие) {
какая-то функция внутри второго IF;
}
}


И вот хочу узнать, это быдло-кодинг или свойство языка такое что не всегда можно использовать коньюнкции?

Отредактировал: xxf3mzue, - 19.10.2016, 0:42
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 19.10.2016, 0:47
Сообщение #84
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Цитата
какая-то функция внутри второго IF;


Это, скорее, функция внутри первого условия, с учетом второго условия. Да, можно так, можно использовать return. Я за return, если он возможен по смыслу.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя MrLegiongame
сообщение 19.10.2016, 0:53
Сообщение #85
Стаж: 11 лет

Сообщений: 110
Благодарностей: 3
Полезность: < 0

SISA,
Цитата
А, я понял. Короч он дважды регает:

RegisterHam(Ham_Spawn, "player", "PlayerSpawn", 1);
RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1);

Да да я хотел написать но просто я уже занялся плагином crazy.gif
Спасибо огромное SISA , ты реально хороший парень , уважуха братуха happy.gif drinks.gif

Отредактировал: MrLegiongame, - 19.10.2016, 0:59
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
5 страниц V  « 4 5
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: