Заказать Сервер Заказать Плагин Контакты Поиск

[ вход ]
[ последние сообщения ]

Страница 1 из 11
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » Выполнение действия при определенном сообщении в чате
Выполнение действия при определенном сообщении в чате
snr93 Дата: Четверг, 03.11.2016, 16:45:41 | Сообщение # 1
Сообщений: 2
Репутация: 0 [ +/- ]
Хотелось бы узнать, как сделать следующее:
Человек пишет в чат ПиСьКа в любом месте сообщения и над ним выполняется команда.
[code]
 
_R1KO_ Дата: Четверг, 03.11.2016, 16:51:26 | Сообщение # 2
Сообщений: 181
Репутация: 25 [ +/- ]
snr93, ну либо поиском по строке либо регулярным выражением
 
snr93 Дата: Четверг, 03.11.2016, 16:54:27 | Сообщение # 3
Сообщений: 2
Репутация: 0 [ +/- ]
А можно, пожалуйста, примером. Я пока почти полный ноль в этом.
 
Meow_1337 Дата: Суббота, 05.11.2016, 14:22:10 | Сообщение # 4
Сообщений: 209
Репутация: 11 [ +/- ]
snr93, код написан на новом синтаксисе, если версия SM < 1.7.x то код не скомпилируется.
Код
#pragma semicolon 1
#pragma newdecls required

public void OnPluginStart() {
    AddCommandListener(Event_Say, "say");
    AddCommandListener(Event_Say, "say_team");
}

public Action Event_Say(int client, const char[] command, int args) {
    if (!IsClientInGame(client)) return Plugin_Handled;
    
    char text[32];
    GetCmdArgString(text, sizeof(text));
    StripQuotes(text); TrimString(text);
    
    char menuTriggers[][] = { "ПиСьКа", "сосиска" };
    
    for (int i = 0; i < sizeof(menuTriggers); i++) {
  if (strcmp(text, menuTriggers[i], false) == 0) {
   // что нужно выполнить над игроком
   return Plugin_Handled;
  }
    }
    return Plugin_Continue;
}

Прикрепления: chat_17x.sp(1Kb)


Сообщение отредактировал Meow_1337 - Суббота, 05.11.2016, 14:23:25
 
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » Выполнение действия при определенном сообщении в чате
Страница 1 из 11
Поиск: