Иконка ресурса

Bot Prefix (Only T) 1.0

Vit_ amin

Добрая душа
Сообщения
1,505
Реакции
662
  • Автор ресурса
  • #1
Bot Prefix (Only T)
Текущая версия: 1.0

Автор: Vitamin (Я)

Описание:
Плагин позволяет изменить AI игрокам префикс только команды Террористов (в отличае от консольной переменной bot_prefix, которая меняет префикс-имена всем AI игрокам)

Требования:

Поддерживаются игры:
  • Только CS: Source

Установка:
Извлеките содержимое архива bot_prefix_t в папку sourcemod вашего сервера.

Переменные:
  • bot_prefix_t
    По умолчанию: ""
    Префикс-имя AI игроков террористов
 
Последнее редактирование модератором:

FrozDark

Участник
Сообщения
1,769
Реакции
2,050
Bot Prefix (Only T)

Автор: Vitamin (Я)

Описание:
Плагин позволяет изменить AI игрокам префикс только команды Террористов (в отличае от консольной переменной bot_prefix, которая меняет префикс-имена всем AI игрокам)

Установка:
Извлеките содержимое архива bot_prefix_t в папку sourcemod вашего сервера.



Настройки:
  • bot_prefix_t
    По умолчанию: ""
    Префикс-имя AI игроков террористов

ещё тогда уже добавь для КТ
а смысл плагина в чем?
 

Vit_ amin

Добрая душа
Сообщения
1,505
Реакции
662
  • Автор ресурса
  • #3
ещё тогда уже добавь для КТ
а смысл плагина в чем?
Для Zombie Riot или иных модификаций с AI игроками
А, если кому-то понадобиться, чтобы было и за CT такое же то не вопрос.
 
Последнее редактирование:

The End Is Near...

Russian Roulette
Сообщения
874
Реакции
691
1. По-моему пробел не удаляется после смены значения переменной на ""

2. Что если бот перешел в другие команды, отличные от команды Террористов

3. Рано получаешь многие значения

4. Замени GetClientCount на MaxClients
 

Vit_ amin

Добрая душа
Сообщения
1,505
Реакции
662
  • Автор ресурса
  • #5
1. По-моему пробел не удаляется после смены значения переменной на ""

2. Что если бот перешел в другие команды, отличные от команды Террористов

3. Рано получаешь многие значения

4. Замени GetClientCount на MaxClients
1. TrimString
2. Не думаю что кто-то будет перемешать бота в другую команду так как есть bot_add_t; bot_kick_t
3. Спасибо за ошибку. Но не совсем понял где именно проблемы .
4. Не вижу смысла .
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #6
4. Не вижу смысла .
Смысл есть.
Если будет GetClientCount() и на сервере 20 игроков, он вернет 20.
А у ботов индексы могут быть и выше, например если бот был добавлен при присутствии на сервере 20 человек, его индекc будет уже 21.

Поэтому нужно юзать MaxClients, чтобы пройтись по всем игрокам.

3. Спасибо за ошибку. Но не совсем понял где именно проблемы .

Например, тут:

PHP:
if (GetEventInt(event, "team") == CS_TEAM_T && IsFakeClient(client) && strlen(bot_prefix) != 0)
Зачем получать команду, если игрок не бот? Или же зачем проверять на бота, если квар пустой?
Так было бы рациональнее:
PHP:
if ((bot_prefix) != 0 && IsFakeClient(client) && GetEventInt(event, "team") == CS_TEAM_T)
 

Vit_ amin

Добрая душа
Сообщения
1,505
Реакции
662
  • Автор ресурса
  • #7
Смысл есть.
Если будет GetClientCount() и на сервере 20 игроков, он вернет 2.
А у ботов индексы могут быть и выше, например если бот был добавлен при присутствии на сервере 20 человек, его индекм будет уже 21.

Поэтому нужно юзать MaxClients, чтобы пройтись по всем игрокам.



Например, тут:

PHP:
if (GetEventInt(event, "team") == CS_TEAM_T && IsFakeClient(client) && strlen(bot_prefix) != 0)
Зачем получать команду, если игрок не бот?, или же зачем проверять на бота, если квар пустой?
Так было бы рациональнее:
PHP:
if ((bot_prefix) != 0 && IsFakeClient(client) && GetEventInt(event, "team") == CS_TEAM_T)
Да, есть такое тоже вспомнил о такой проблеме, спасибо действительно ошибка, в таком случае как то так.
 
Последнее редактирование модератором:

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #8
Vit_ amin, А насчет этого:
PHP:
GetConVarString(h_cvar_botname, bot_prefix, sizeof(bot_prefix));
и глобального new String:bot_name[MAX_NAME_LENGTH];
Я бы так не делал.

Лучше сделай глобальную строку и в нее получи GetConVarString(h_cvar_botname...).
А то смена команды происходит довольно часто, при входе и выборе команды, она вроде как тоже вызывается.
А вместо глобального String:bot_name, создавай его перед циклом и всё.
PHP:
decl String:bot_name[MAX_NAME_LENGTH+*]; 
// * - немного больше, т.к. в неё ты потом допишешь префикс.
 

Vit_ amin

Добрая душа
Сообщения
1,505
Реакции
662
  • Автор ресурса
  • #9
Vit_ amin, А насчет этого:
PHP:
GetConVarString(h_cvar_botname, bot_prefix, sizeof(bot_prefix));
и глобального new String:bot_name[MAX_NAME_LENGTH];
Я бы так не делал.

Лучше сделай глобальную строку и в нее получи GetConVarString(h_cvar_botname...).
А то смена команды происходит довольно часто, при входе и выборе команды, она вроде как тоже вызывается.
А вместо глобального String:bot_name, создавай его перед циклом и всё.
PHP:
decl String:bot_name[MAX_NAME_LENGTH+*]; 
// * - немного больше, т.к. в неё ты потом допишешь префикс.
Не совсем понял в чем моя ошибка.
 
Сверху Снизу