SA:MP Lua Trinity Кастомный настраеваемый перенос чата для СС на Trinity RP - SunlessTextWarp GUI v1.2 [обновлено]

Sunless

Новичок
Автор темы
11
11
Версия SA-MP
  1. 0.3.7 (R1)
  2. 0.3.7-R2
  3. 0.3.7-R3
  4. 0.3.7-R4
  5. 0.3.7-R5
SunlessTextWarp.lua v1.2

SunlessTextWarp.lua — это скрипт, который позволяет кастомизировать перенос текста под желаемое расширение и является незаменимым помошником для создания КАЧЕСТВЕННЫХ СС и приятного геймплея на Trinity RP одновременно. Это не тот скрипт, который разбивает ваши отыгровки и просто пересылает их в чатик через /do или отдельной репликой. Он ВИЗУАЛЬНО переносит всё и разбивает вся, в том числе не ваши реплики, системный текст и т.д. Если не поняли - смотрите скрины.

штоооо.jpg


Зачем он вам нужен? Чтобы не париться, что ваш текст не влезет в расширение вашей СС(800x600) и не страдать с /fontsize -3, играя на расширении 1920x1080. Идея взята из предложений по модернизации — Перенос строки(Как на гамбите, или настраиваемый). Естественно, предназначен исключительно для RP версии Trinity, если вы понимаете что-то в LUA, а не как я, можете и под любой другой сервер адапптировать. Кроме переноса есть возможность менять цвета чата прямо в игре, но об этом чуть-чуть позже.

Требования:
  • Наличие свежего MoonLoader'a - тык;
  • samp.lua. Вот сюда иди - тык;
  • vkeys;
  • imgui.
Установка:

Просто перемещаешь скрипт в папку moonloader. Оставляю его специально опенсурсным, чтоб не было гениев, утверждающих что тут стиллер. Берете код, идете в любую нейронку и просите её проанализировать. Нет никаких автообновлений и прочего. Надо признать, что скрипт делал больше для себя.

Баги и минусы:
Это хардкодженный цвет, некоторые несоответствия цвета, негибкость этого всего дела. Но дело практики, я исправил 90% несоответсвий и теперь все почти как в оригинальном ТРП. Иногда криво воспринимает капс. Все это в процессе исправления. Не совместим с другими скриптами для переноса ( например xmassages.lua) и несовместимость со скриптами, изменяющими цвета отыгровок и чата. Но потому я и добавил сюда их замену.

Основные команды:
  • /tr - открыть GUI скрипта.
  • /trd - включение/выключение работы скрипта.
  • /trt [20-1000] - установка кол-ва символов для переноса.
  • /trauto 1, 2 - автовключение.
  • /trtp - самая приятная функция, возможность менять стиль разрыва.
Первый режим - brake words. Классический тупой разрыв, разрывает слова даже в конце, перенося даже одну букву. Грубо и просто.
Второй режим - save words. Сохраняет слова.

2.jpg

  • /trchat [id color|#hexcolor] - меняет цвет RP чата, но работает только в том случае, если в /mm 3 выставлен зеленый текст, дефолтный, не белый.
  • /trcrp [id color|#hexcolor] - а тут уже меняет цвет отыгровочек.
222222323232.jpg
4424322.jpg
Наглядный пример:

GITHUB.
 

Вложения

  • sunlessTextWarp V1.1.lua
    15.1 KB · Просмотры: 13
  • sunlesstextwarp v1.2.zip
    18.1 KB · Просмотры: 15
Последнее редактирование:

kyrtion

Известный
1,190
438
Lua:
-- что серьезно? тп в тринити?
sampRegisterChatCommand("trtp", function()
    breakWords = 1 - breakWords
    saveConfig()
    if breakWords == 1 then
        sampAddChatMessage("{FFFFFF}[SunlessTextWrap] Words Warp: {FF8888}brake words", -1)
    else
        sampAddChatMessage("{FFFFFF}[SunlessTextWrap] Words Warp: {88FF88}save words", -1)
    end
    -- бля показалось
end)
 
  • Вау
  • Нравится
Реакции: Lance_Sterling и Sunless

fokichevskiy

Известный
501
293
сделал бы настройку скрипта на mimgui, чтобы не заходить каждый раз в тему за командами и было бы идеально

а также можешь сохранять настройки не при каждом изменении пользователя, а при выгрузке скрипта
Lua:
function onExitScript(quitGame)
    saveConfig()
end
 
  • Нравится
Реакции: Sunless

Sunless

Новичок
Автор темы
11
11
сделал бы настройку скрипта на mimgui, чтобы не заходить каждый раз в тему за командами и было бы идеально

а также можешь сохранять настройки не при каждом изменении пользователя, а при выгрузке скрипта
Lua:
function onExitScript(quitGame)
    saveConfig()
end
Пасиб за совет, я капитальный новичок в кодинге и для меня большое чудо, что это всё вообще работает. Попробую что-то сделать по свободе.
 

Kenshi.

Известный
318
152
Пасиб за совет, я капитальный новичок в кодинге и для меня большое чудо, что это всё вообще работает. Попробую что-то сделать по свободе.
можно сделать и главную команду /tr и подкоманды /tr.help (диалог со всеми командами) и с мимгуи не надо будет ибаца
 
  • Bug
  • Нравится
Реакции: fokichevskiy и Sunless

kyrtion

Известный
1,190
438
а также можешь сохранять настройки не при каждом изменении пользователя, а при выгрузке скрипта
допустим. сделали так.
и что теперь, если юзер поставил плагин быстрый выход из игры. после /q есть шанс что не исполнится/не триггерится событие из-за принудительное завершение процесс (как диспетчер задач, сразу убил). в гта-са нет sub-процессы.
поэтому этот метод неэффективный
 

Sunless

Новичок
Автор темы
11
11

SunlessTextWarp Release 1.2

штоооо.jpg
270496

Какими-то невероятными, лично для себя, усилиями - скрипт закончен. Версия 1.2.
Пачноут:

1. Добавлен полноценный функциональный GUI. Следовательно зависимости обновлены:
- samp.lua. Вот сюда иди - тык.
- vkeys;
- imgui;
2. Немного обновлена функция переноса текста на более совершенную.
3. Добавлены новые перманентные замены сбитых цветов.
4. Найден баг с переносом /d, который на данный момент не представляется возможным пофиксить, ибо скрипт писался изначально с кривой логикой. Чтоб исправить надо будет вырезать эту старую логику, уже в версии 1.3.
5. Неизвестная судьба чатов /f, так как нет доступа к организациям с ним.
6. Изредка бьет цветовой код в конце /sms, если maxlen ниже 70.
7. Исправлена ошибка с крашем скрипта при сообщении максимальной длинны.
 

Вложения

  • sunlesstextwarp v1.2.zip
    18.1 KB · Просмотры: 5
  • Нравится
Реакции: fokichevskiy и kyrtion

yung milonov

Известный
1,039
539

SunlessTextWarp Release 1.2

Посмотреть вложение 270557
270496

Какими-то невероятными, лично для себя, усилиями - скрипт закончен. Версия 1.2.
Пачноут:

1. Добавлен полноценный функциональный GUI. Следовательно зависимости обновлены:
- samp.lua. Вот сюда иди - тык.
- vkeys;
- imgui;
2. Немного обновлена функция переноса текста на более совершенную.
3. Добавлены новые перманентные замены сбитых цветов.
4. Найден баг с переносом /d, который на данный момент не представляется возможным пофиксить, ибо скрипт писался изначально с кривой логикой. Чтоб исправить надо будет вырезать эту старую логику, уже в версии 1.3.
5. Неизвестная судьба чатов /f, так как нет доступа к организациям с ним.
6. Изредка бьет цветовой код в конце /sms, если maxlen ниже 70.
7. Исправлена ошибка с крашем скрипта при сообщении максимальной длинны.
с картинкой ты плохо придумал, советую переписать на mimgui (imgui уже староват) и хранить картинки в памяти: https://www.blast.hk/threads/28761/
 
  • Нравится
Реакции: Sunless и kyrtion

kyrtion

Известный
1,190
438

SunlessTextWarp Release 1.2

Посмотреть вложение 270557
270496

Какими-то невероятными, лично для себя, усилиями - скрипт закончен. Версия 1.2.
Пачноут:

1. Добавлен полноценный функциональный GUI. Следовательно зависимости обновлены:
- samp.lua. Вот сюда иди - тык.
- vkeys;
- imgui;
2. Немного обновлена функция переноса текста на более совершенную.
3. Добавлены новые перманентные замены сбитых цветов.
4. Найден баг с переносом /d, который на данный момент не представляется возможным пофиксить, ибо скрипт писался изначально с кривой логикой. Чтоб исправить надо будет вырезать эту старую логику, уже в версии 1.3.
5. Неизвестная судьба чатов /f, так как нет доступа к организациям с ним.
6. Изредка бьет цветовой код в конце /sms, если maxlen ниже 70.
7. Исправлена ошибка с крашем скрипта при сообщении максимальной длинны.
скрипт под UTF-8? В таком случае событие сампев могло быть невалидные значение вернут (вроде как "
черно-зеленым концептом и акцентом на")

Нужно сохранить на Windows 1251 и добавить в настройках рабочей проекта .vscode/settings.json:
.vscode/settings.json:
{
    "[lua]": {
        "files.autoGuessEncoding": true,
        "files.encoding": "windows1251",
        "editor.tabSize": 4,
        "editor.formatOnSave": true,
        "editor.defaultFormatter": "sumneko.lua" // расширение в vscode и форматтер
    }
}
 
  • Нравится
Реакции: Sunless

Sunless

Новичок
Автор темы
11
11
Пока что все работает чудно. Решение с картинкой самое простое, которое придумал. Дальше исправлю, касаемо кодировок - все оке. Единственные баги это цвета. Но это уже гораздо позже, для первого скрипта это вроде гуд. Спасибо за советы и поддержку.
 
  • Нравится
Реакции: kyrtion