2025-10-01 05:35:54 +02:00
2025-10-01 05:36:45 +02:00

killsay.lua

Что же кратко из себя представляет это новоиспеченное второсортное чудо, предназначенное для Samp-RP и частично других серверов: выбрать предложенное обассывание или придумать собственное многострочное, где представляется возможность вставить Nickname и ID 200-го груза; отправить и установить полученную метку ликвидации противника с возможностью ее настройки (отправляется и берется из чата сквада: /fs, /u); отправка сообщений о ликвидации в чат сквада (/fs) и рацию (/r); автоматизированная статистика ликвидаций противников, имеющая регистрозависимый поиск, сортировку по количествам ликвидаций и сохраняющая значения в killsay_table.json. Скрипт находится под UNLICENSE, в следствии можете делать с ним АБСОЛЮТНО все, что вашей душе угодно.

Описание функционала

[1] Главное меню:

  • Команда открытия меню - /killsay
  • Возможность активации / деактивации скрипта;
  • Возможность отключения уведомлений при подгрузке скрипта.

[2] Настройка отыгровок:

  • Возможность выбора отыгровки из списка предложенных: отсутствует, классическая, "за мат извени", hasta la vista, новогодняя, собственная;
  • Собственная отыгровка ограничена 256 символами, чего вполне хватит на 3 больших сообщения. Крайне не рекомендуется использовать сочетание &nl, поскольку оно костыльно решает проблему переноса на новую строку при взаимодействии с inicfg;
  • Возможность подставить в отыгровки ника и ид противника, используя $nickname и $id соответственно;
  • Возможность отключения максимальной дистанции отправки отыгровок.

[3] Настройка меток:

  • Возможность отправлять метки с координатами ликвидации в чат сквада (/fs DCHECKSEALKPOSX$Y$Z$, где $ - соответствующая координата);
  • Возможность получать координаты метки из чата сквада с последующей их установкой;
  • Возможность игнорирования установки собственных меток, скрытие из чата текста отправляемых меток;
  • Проигрывание звукового оповещения при установке метке, а так же выбор желаемого звука. Присутствует альтернативное применение на случай проблем с raknetBitStream, в абсолютном большинстве оно работать не будет, но вдруг однажды поможет разрешить чьи-то мучения;
  • Возможность выбора собственного времени отображения метки ликвидации с последующей настройкой от 100 мс до 3.5 секунд;
  • Возможность изменить стандартную иконку метки на миникарте (красный флажок) на другую: пистолет, сердечко, желтый кружок.

[4] Прочие настройки:

  • Возможность отправки сообщения ($nickname[$id] нейтрализован) в рацию или чат сквада;
  • Автоматизированная таблица статистики убийств, имеющая регистрозависимый поиск + кнопку очистки поиска, возможность удаления записи прямо из таблицы, сортировку по убыванию убийств;
  • Возможность активации / деактивации внесения записей в таблицу.

Описание особенностей

[1] Обассывание:

  • При благоприятных условиях скрипт срабатывает автоматически с задержкой в 350 мс, поскольку присутствует проверка на смерть противника через isCharDead. Не проверялось на других серверах, но на Samp-RP урон проходит спустя ~250-270 мс. Без наличия проверки, к сожалению, возможны ложные срабатывания и срабатывания по нескольку раз. В случае, если вы и другой человек нанесли урон одновременно и результатом стала смерть, даже при условии что убийцей являяетесь не вы - будет отправлено сообщение об убийстве;

[2] Пустые переменные:

  • Стоит защита от передачи пустых переменных в дальнейшие функции, что характерно для оффа противника / фаст респавна в 350 мс в момент убийства. При отсутствии режима обиженки у противника или фаст респавна - должно работать как часы. В случае же, если будут переданы пустые переменные, в консоль отправится сообщение об ошибке, отыгровок не будет;

[3] Дистанция обассывания:

  • По умолчанию выставлена дистанция отыгровок в 15 метров (getDistanceBetweenCoords3d(x, y, z, px, py, pz) < 15), дабы не отыгрывать в стену унижение противника. Отключить можно в меню "Настройка отыгровок";

[4] Удаление префикса:

  • В особенности для монсера предусмотрено удаление префикса [Любой Текст] из ника для корректных отыгровок и внесения в таблицу. Отключить не представляется возможным. Если сильно мешает - можете удалить gsub("^%b[]", "") из функции killsay.
Description
Sends kill marks, taunts, and neutralization reports to the radio and squad. Has an automated enemy elimination table
Readme Unlicense 50 KiB
2025-10-01 05:40:24 +02:00
Languages
Lua 100%