SA:MP Lua Gambit Ultimate Chat Helper - транслитерация, автозамена дефиса, грамматическая коррекция, информация

knightgen

Новичок
Автор темы
3
4
Версия SA-MP
  1. 0.3.7 (R1)

Ultimate Chat Helper​


Автор: Reverse (restarv)

Версия: 1.0

Требования: MoonLoader 026.3, SAMP 0.3.7 R1, SAMPFUNCS​




Описание

Ultimate Chat Helper содержит в себе несколько полезных функций для чата:

Транслитерация команд - автоматическое преобразование команд, введённых в русской раскладке, в латиницу. Больше не нужно переключать раскладку.
Автозамена дефиса - умная замена символа - на короткое или длинное тире в зависимости от контекста (аналог типографских правил).
Грамматическая коррекция - первая буква сообщения автоматически становится заглавной, а в конце добавляется точка, если её нет.
Инпут Хелпер - отображение полезной информации (имя, ID, Caps Lock, раскладка) прямо под полем ввода.

Скрипт полностью автономен, не требует настройки и работает сразу.​




Возможности

Input Helper (информация при вводе и транслитерация команд)

При активации чата (нажатие T или /) над полем ввода отображается строка с данными:

Текущий язык ввода (раскладка клавиатуры)
Ник и ID вашего персонажа (с цветом)
Состояние Caps Lock (Вкл/Выкл)
Текущее время


Если вы случайно (или специально) вводите команду в русской раскладке, например:

.дщсл

... или же ...

/дщсл

... скрипт автоматически преобразует её в /lock прямо в поле ввода. Работает для всех команд, начинающихся с / или ..

Таблица транслитерации включает все буквы русского алфавита (строчные и заглавные) и специальные символы ([ ] { } ; ' , . < >).​




Автозамена дефиса

Символ - (обычный дефис) заменяется по следующим правилам:

Если рядом нет ни букв, ни цифр (пробелы, знаки препинания) > заменяется на длинное тире .
Пример: Привет — как дела?

Если рядом есть буква (кириллица или латиница) > остаётся обычный дефис -.
Пример: кое-как, из-за, A-B

Если рядом есть цифра, но нет букв > заменяется на короткое тире .
Пример: 7–7, 100–200


Замена работает везде: в обычных сообщениях, в отыгровках (/me, /do), в личных сообщениях (/w, /pm), в SMS (/sms) и так далее.​




Грамматика сообщений

Первая буква отправляемого вами сообщения автоматически становится заглавной (работает для русского и английского алфавита).

Если в конце сообщения нет знака препинания (.!?), автоматически добавляется точка.

Учитываются конечные пробелы - лишняя точка не появится.

Важно: эти правила не применяются к командам (они не искажают /me и прочие). Работает только в репликах.​




Горячая клавиша

Клавиша T открывает чат.​



Установка​

  1. Убедитесь, что у вас установлен MoonLoader 026.3 и SAMPFUNCS.
  2. Скачайте файл скрипта UltimateChatHelper.lua во вложениях (в самом низу данного сообщения)
  3. Поместите его в папку moonloader внутри директории игры GTA San Andreas.
  4. Запустите игру и подключитесь к серверу. Скрипт активируется автоматически.



Использование​


Просто играйте как обычно. Никаких дополнительных настроек или команд не требуется. Все функции работают в фоне.

Примеры
Ввод (до обработки)
Вывод (после обработки)
привет мир
Привет мир.
7-7
7–7
а - б
а — б
.дщсл (русская раскладка)​
/lock (в поле ввода)​
/me достал - телефон
/me достал — телефон
hello-world
Hello-world.




Дополнительно


Не зависит от кодировки файла - все русские символы заданы байтами CP1251, поэтому скрипт работает одинаково при любой кодировке. (наверное)
Оптимизирован - используется минимальное количество ресурсов.
Совместим - не имеет конфликтов с другими скриптами.
Универсален - подходит для любых серверов.




Возможные проблемы и решения​


Вопрос: Можно ли отключить какую-то функцию?
Ответ: В текущей версии нет настроек.

... будет дополняться.




Благодарности

Всем, кто тестировал и будет тестировать, а также всем, кто помогал и будет помогать улучшать сей скрипт.
ROAshnisa51 - за грамматическую коррекцию.
DonHomka - за основу Input Helper.





Если у вас есть предложения по улучшению, пишите ниже.​
 

Вложения

  • UltimateChatHelper.lua
    11.3 KB · Просмотры: 3