AMX MOD X
Четверг, 08.01.2026, 05:52:39



Приветствую Вас Гость | RSS
[ Главная ] [ поймать event - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
поймать event
manyДата: Пятница, 14.03.2008, 14:58:01 | Сообщение # 1
Лейтенант
Группа: Пользователи
Сообщений: 49
Репутация: 0
Статус: Не в сети
Как поймать event - Only 1 team change is allowed ????
Это когда пытаешься дважды поменять команду за 1 раунд.
Или если можно убрать это без написания плагина blush

<Администратором добавлено описание темы: "Как поймать event - Only 1 team change is allowed ?">

 
DaTaДата: Пятница, 14.03.2008, 15:44:50 | Сообщение # 2
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Репутация: 16
Статус: Не в сети
можно ловить команду chooseteam и запоминать сколько раз за раунд она вызывалась
Если хочешь поймать сообщение "Only 1 team change is allowed", лови так:
Code
/*
Наше сообщение имеет такой вид:
L 03/14/2008 - 14:19:46: MessageBegin (TextMsg "77") (Destination "One<1>") (Args "2") (Entity "1") (Classname "player") (Netname "blblbl") (Origin "0.000000 0.000000 0.000000")
L 03/14/2008 - 14:19:46: Arg 1 (Byte "4")
L 03/14/2008 - 14:19:46: Arg 2 (String "#Only_1_Team_Change")
L 03/14/2008 - 14:19:46: MessageEnd (TextMsg "77")

2 аргумента, по второму можно убедиться, что это наше сообшение
*/
#include <amxmodx>

//OOTC == Only_1_Team_Change
#define OOTC_MSG_ARG_NUM    2       //кол-во аргументов
#define OOTC_MSG_ARG_STRING    2       //второй аргумент - строка
new const g_Only1TeamChange[] = "#Only_1_Team_Change"    //строка, по которой будем идентифицировать сообщение

public plugin_init()
{
  //...
   
  register_message(get_user_msgid("TextMsg"),    "message_text")
}

public message_text()
{
  if(  get_msg_args() != OOTC_MSG_ARG_NUM  )      //проверяем    кол-во аргументов
   return PLUGIN_CONTINUE
   
  if(  get_msg_argtype(OOTC_MSG_ARG_STRING) != ARG_STRING  )  //проверяем тип аргумента, по которому будем определять сообщ.
   return PLUGIN_CONTINUE
   
  static arg[32]
  get_msg_arg_string(OOTC_MSG_ARG_STRING, arg, sizeof arg - 1)
  if(!  equal(arg, g_Only1TeamChange)  )       //проверяем, наша ли это строка
   return PLUGIN_CONTINUE
    
  //тут сообщение поймано
   
  return PLUGIN_HANDLED //заблокирует сообщение, PLUGIN_CONTINUE пропустит его к игроку
}
 
manyДата: Четверг, 20.03.2008, 16:49:55 | Сообщение # 3
Лейтенант
Группа: Пользователи
Сообщений: 49
Репутация: 0
Статус: Не в сети
Спасибо!
Тему можно закрывать. =)
 
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2026