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

Animated ClanTag 2020-01-15

SLAME

Флуд/Оффтоп
Сообщения
351
Реакции
222
В общем переписал плагин снова
  • исправил логику чтения конфига при смене тега игрока (раньше слишком поздно проверялся флаг custom для принудительной смены тега)
  • добавил команду at_set для установки/удаления тега
    использование: at_set <игрок> [тег], если указан только игрок или будет указан пустой тег, то существующий тег будет удалён, иначе тег будет добавлен в конфиг или изменён
  • переименовал команду sm_reloadtags в at_reload
  • поправил логику добавления символов в тег (больше не нужен параметр type в конфиге) и оптимизировал код
я хз, но у меня не компилится твой исходник....
Сообщения автоматически склеены:

Скачал плагин с первого поста, все идеально работате, проверил все комбинации в css ob, спасибо за плагин, автору +
 
Последнее редактирование:

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
у меня не компилится твой исходник
Какой версией SM пытался компилить? Требуется минимум v1.8
Сообщения автоматически склеены:

Хм, у тебя на сервере v1.9.0.6226 стоит. Я компилю с помощью v1.9.0.6276 (который у меня с апреля этого года используется) без проблем
 

Вложения

  • AnimatedTag 1.2.1.smx
    8.4 КБ · Просмотры: 13
  • AnimatedTag 1.2.1.sp
    5.6 КБ · Просмотры: 17
Последнее редактирование:

XAH

Участник
Сообщения
139
Реакции
19
плагин прикольный, но можете сделать, чтобы тег не показывался ,когда ты убил кого-то или убили тебя ?
А то это выглядит примерно так : КИЛЛЕР убил [ТЭГ] АРТЕМ, и наоборот: [ТЭГ] АРТЕМ убил КИЛЛЕРА.
(и то ТЭГ не до конца дописывает при том или ином убийстве.)

CSS OB
SM 1.9
 
Последнее редактирование:

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
XAH, это кваром в самой игре меняется (имя квара не помню), емнип
 

Manifest

Ура, не такой как все
Сообщения
180
Реакции
127
  • Автор ресурса
  • #65
Данный пользователь был уличен в использовании бэкдора в приватных плагинах. Крайне не рекомендуется покупать какие либо товары у пользователя.

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
Manifest, тебе нужно подробно объяснять логику работы плагина?
Я думал ты плагины умеешь писать.
Сообщения автоматически склеены:

мой код:
    // если прописана принудительная смена тега для SteamID игрока
    if((GetClientAuthId(client, AuthId_Steam2, buffer, sizeof buffer) && kvTags.JumpToKey(buffer)
    && kvTags.GetNum("custom"))
    // или для его VIP-группы
    || (GetFeatureStatus(FeatureType_Native, "VIP_GetClientVIPGroup")
    && VIP_GetClientVIPGroup(client, buffer, sizeof buffer) && kvTags.JumpToKey(buffer) && kvTags.GetNum("custom"))
    // или для вообще любого игрока
    || kvTags.JumpToKey("Players") && kvTags.GetNum("custom"))
        // то запоминаем кастомный тег
        kvTags.GetString("tag", sPersonalTag[client], T_Size);
        // иначе запоминаем его существующий тег
    else CS_GetClientClanTag(client, sPersonalTag[client], T_Size);
У меня:
  1. Проверяем прописан ли тег для SteamID и стоит ли флаг на принудительную замену тега для этого SteamID.
    Если вышеперечисленные проверки вернули true, то записываем в массив тег для этого игрока и выходим из каллбэка.
    Если же что-то из предыдущего пункта вернуло false, то переходим к следующему пункту.
  2. Проверяем работает ли випка на сервере, записан ли игрок в какую-то из VIP-групп, прописан ли тег для этой группы и стоит ли флаг на принудительную замену тега для этой группы.
    Если все проверки этого пункта вернули true, то записываем в массив тег для этого игрока и выходим из каллбэка.
    Если же что-то из предыдущего пункта вернуло false, то переходим к следующему пункту.
  3. Проверяем прописан ли тег для всех игроков и стоит ли флаг на принудительную замену тега.
    Если все проверки этого пункта вернули true, то записываем в массив тег для этого игрока и выходим из каллбэка.
    Если же что-то из предыдущего пункта вернуло false, то переходим к следующему пункту.
  4. Записываем в массив текущий тег этого игрока и выходим из каллбэка.
Хрен с ним, что ты поясняющие комментарии потёр, но ты полностью поменял принцип обработки значений конфига.
твой код:
    GetClientAuthId(client, AuthId_Steam2, buffer, sizeof buffer);
    if (kvTags.JumpToKey(buffer) || (GetFeatureStatus(FeatureType_Native, "VIP_GetClientVIPGroup") && VIP_GetClientVIPGroup(client, buffer, sizeof buffer) && kvTags.JumpToKey(buffer)) || kvTags.JumpToKey("Players"))
    {
        if (kvTags.GetNum("custom", 0))
        {
            kvTags.GetString("tag", sPersonalTag[client], T_Size);
        } else {
            CS_GetClientClanTag(client, sPersonalTag[client], T_Size);
        }
    }
    else sPersonalTag[client][0] = '\0';
У тебя:
  1. Проверяем прописан ли тег для SteamID игрока, его группы или для всех игроков.
  2. При срабатывании первой же проверки проверяем стоит ли флаг на принудительную замену тега для первого сработавшего варианта.
  3. Если да, то прописываем в массив тег из конфига, иначе пишем туда текущий тег игрока.
    При этом если теги прописаны для SteamID игрока, его группы и вообще всех игроков, но для SteamID не выставлен флаг принудительной смены, то в массив запишется текущий тег игрока.
    Аналогично происходит, если для SteamID тега нет и для группы не выставлен флаг принудительной смены.
  4. Если не сработала ни одна проверка из п.1, то мы записываем в массив, что у игрока вообще нет тега.
 
Последнее редактирование:

Manifest

Ура, не такой как все
Сообщения
180
Реакции
127
  • Автор ресурса
  • #67
Данный пользователь был уличен в использовании бэкдора в приватных плагинах. Крайне не рекомендуется покупать какие либо товары у пользователя.
Manifest, тебе нужно подробно объяснять логику работы плагина?
Я думал ты плагины умеешь писать.
Сообщения автоматически склеены:

мой код:
    // если прописана принудительная смена тега для SteamID игрока
    if((GetClientAuthId(client, AuthId_Steam2, buffer, sizeof buffer) && kvTags.JumpToKey(buffer)
    && kvTags.GetNum("custom"))
    // или для его VIP-группы
    || (GetFeatureStatus(FeatureType_Native, "VIP_GetClientVIPGroup")
    && VIP_GetClientVIPGroup(client, buffer, sizeof buffer) && kvTags.JumpToKey(buffer) && kvTags.GetNum("custom"))
    // или для вообще любого игрока
    || kvTags.JumpToKey("Players") && kvTags.GetNum("custom"))
        // то запоминаем кастомный тег
        kvTags.GetString("tag", sPersonalTag[client], T_Size);
        // иначе запоминаем его существующий тег
    else CS_GetClientClanTag(client, sPersonalTag[client], T_Size);
У меня:
  1. Проверяем прописан ли тег для SteamID и стоит ли флаг на принудительную замену тега для этого SteamID.
    Если вышеперечисленные проверки вернули true, то записываем в массив тег для этого игрока и выходим из каллбэка.
    Если же что-то из предыдущего пункта вернуло false, то переходим к следующему пункту.
  2. Проверяем работает ли випка на сервере, записан ли игрок в какую-то из VIP-групп, прописан ли тег для этой группы и стоит ли флаг на принудительную замену тега для этой группы.
    Если все проверки этого пункта вернули true, то записываем в массив тег для этого игрока и выходим из каллбэка.
    Если же что-то из предыдущего пункта вернуло false, то переходим к следующему пункту.
  3. Проверяем прописан ли тег для всех игроков и стоит ли флаг на принудительную замену тега.
    Если все проверки этого пункта вернули true, то записываем в массив тег для этого игрока и выходим из каллбэка.
    Если же что-то из предыдущего пункта вернуло false, то переходим к следующему пункту.
  4. Записываем в массив текущий тег этого игрока и выходим из каллбэка.
Хрен с ним, что ты поясняющие комментарии потёр, но ты полностью поменял принцип обработки значений конфига.
твой код:
    GetClientAuthId(client, AuthId_Steam2, buffer, sizeof buffer);
    if (kvTags.JumpToKey(buffer) || (GetFeatureStatus(FeatureType_Native, "VIP_GetClientVIPGroup") && VIP_GetClientVIPGroup(client, buffer, sizeof buffer) && kvTags.JumpToKey(buffer)) || kvTags.JumpToKey("Players"))
    {
        if (kvTags.GetNum("custom", 0))
        {
            kvTags.GetString("tag", sPersonalTag[client], T_Size);
        } else {
            CS_GetClientClanTag(client, sPersonalTag[client], T_Size);
        }
    }
    else sPersonalTag[client][0] = '\0';
У тебя:
  1. Проверяем прописан ли тег для SteamID игрока, его группы или для всех игроков.
  2. При срабатывании первой же проверки проверяем стоит ли флаг на принудительную замену тега для первого сработавшего варианта.
  3. Если да, то прописываем в массив тег из конфига, иначе пишем туда текущий тег игрока.
    При этом если теги прописаны для SteamID игрока, его группы и вообще всех игроков, но для SteamID не выставлен флаг принудительной смены, то в массив запишется текущий тег игрока.
    Аналогично происходит, если для SteamID тега нет и для группы не выставлен флаг принудительной смены.
  4. Если не сработала ни одна проверка из п.1, то мы записываем в массив, что у игрока вообще нет тега.

Тебе объяснять, что ты не прав — это все равно что со стеной поговорить. Уж извини.
Принципы работы своего кода и твоего полу-бреда я прекрасно понимаю.
Комментарии потер для удобства.

Твой код я просто поправил тем, что убрал постоянно повторяющиеся:

kvTags.GetNum("custom")

а иначе твой код потерял возможность анимировать НЕкастомный тег, то есть у меня была ещё возможность анимации (НЕ кастомного тега, анимации кастомного тега или полное его удаление)


Всё по факту тоже самое, просто перенёс
 
Последнее редактирование:

🟡differend🟢

Что хочу - то и делаю
Сообщения
975
Реакции
661
А как сделать vip игрокам? Группу прописал, тег прописал и ничего не происходит...
 

SofterPhP2HP

Участник
Сообщения
33
Реакции
9
По VIP не работает, не одна из версий.
 

Вложения

  • animated_tags.ini
    801 байт · Просмотры: 18

Manifest

Ура, не такой как все
Сообщения
180
Реакции
127
  • Автор ресурса
  • #70
Данный пользователь был уличен в использовании бэкдора в приватных плагинах. Крайне не рекомендуется покупать какие либо товары у пользователя.

Вложения

  • AnimatedTag.smx
    8.4 КБ · Просмотры: 6
  • AnimatedTag.sp
    4.8 КБ · Просмотры: 13

🟡differend🟢

Что хочу - то и делаю
Сообщения
975
Реакции
661
@differend, @SofterPhP2HP
Протестируйте. Если работает - обновлю ресурс
Не работает.
А почему бы не сделать animatedTag именно для вип? Как vip префикс, чтобы его также можно было включать и выключать, да и через groups.ini как по мне лучше нежели через configs.
 

Manifest

Ура, не такой как все
Сообщения
180
Реакции
127
  • Автор ресурса
  • #72
Данный пользователь был уличен в использовании бэкдора в приватных плагинах. Крайне не рекомендуется покупать какие либо товары у пользователя.
Не работает.
А почему бы не сделать animatedTag именно для вип? Как vip префикс, чтобы его также можно было включать и выключать, да и через groups.ini как по мне лучше нежели через configs.
Окей
 

Manifest

Ура, не такой как все
Сообщения
180
Реакции
127
  • Автор ресурса
  • #73
Данный пользователь был уличен в использовании бэкдора в приватных плагинах. Крайне не рекомендуется покупать какие либо товары у пользователя.

Raven1313

Участник
Сообщения
208
Реакции
28
А можно сделать(настраиваемо), чтобы не буквы появлялись, а слова менялись?
 

Manifest

Ура, не такой как все
Сообщения
180
Реакции
127
  • Автор ресурса
  • #75
Данный пользователь был уличен в использовании бэкдора в приватных плагинах. Крайне не рекомендуется покупать какие либо товары у пользователя.

SLAME

Флуд/Оффтоп
Сообщения
351
Реакции
222
мне немного непонятна логика
Он хочет, чтобы был не выезжающий текст, а просто сначала слово "hello" , потом "world" и т.д. Такой прикол есть, когда ты биндишь на клавиатуре awsd смену клантега групп, в которых состоишь (это может сделать любой игрок без плагина), то есть ты идешь вперед, у тебя клан-тег "Aimbot", идешь влево, у тебя клан-тег "Wallhack", идешь вправо, у тебя клан-тег "BunnyHop", идешь назад, у тебя клан-тег "SpeedHack", этому приколу уже больше 5 лет, старо, как мир. Я не думаю, что это нужно добавлять в планин, если это любой игрок у себя в конфиге, забиндив нужные ему кнопки, может это сделать
 

Raven1313

Участник
Сообщения
208
Реакции
28
Он хочет, чтобы был не выезжающий текст, а просто сначала слово "hello" , потом "world" и т.д. Такой прикол есть, когда ты биндишь на клавиатуре awsd смену клантега групп, в которых состоишь (это может сделать любой игрок без плагина), то есть ты идешь вперед, у тебя клан-тег "Aimbot", идешь влево, у тебя клан-тег "Wallhack", идешь вправо, у тебя клан-тег "BunnyHop", идешь назад, у тебя клан-тег "SpeedHack", этому приколу уже больше 5 лет, старо, как мир. Я не думаю, что это нужно добавлять в планин, если это любой игрок у себя в конфиге, забиндив нужные ему кнопки, может это сделать
Во-первых, не все умеют и хотят биндить, во-вторых, в плагине можно привязать тег к группе, в-третьих, в плагине можно настроить периодичность смены тегов.
 

Romanov

Участник
Сообщения
404
Реакции
40
Кода убиваешь игрока, клан тег показывает не весь. А то тот кусок на котором закончилась анимация при убийстве.смотрится так себе
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
убивай когда весь клантег отобразился =)
Сообщения автоматически склеены:

В принципе можно попробовать делать хук события убийства с флагом PRE и менять тег в этот момент на полный, но хз сработает ли.
 
Последнее редактирование:

Romanov

Участник
Сообщения
404
Реакции
40
убивай когда весь клантег отобразился =)
Сообщения автоматически склеены:

В принципе можно попробовать делать хук события убийства с флагом PRE и менять тег в этот момент на полный, но хз сработает ли.
ну можно и убивать)) тайминги все дела)
но не красиво каша какая то из букв выходит)
но попробовать стоит:)
 
Сверху Снизу