Как пользоваться имгуром для самп
Обязательно скрины с imgur заливать? Или с гугл диска тоже можно?
смотря для чего тебе нужно, в основном пользуются имгуром и япиксом, так удобнее
John_Tolkien
Обязательно скрины с imgur заливать? Или с гугл диска тоже можно?
На Samp RP большим спросом пользуется Imgur, обычно требуют чтобы скрины были загружены именно на этот фотохостинг, но иногда допускают и Yapix.
Crutis_Besputin
- Игровой сервер: Classic
- Игровой ник: Crutis_Besputin
- Описание проблемы: Будут ли открываться заявки на пост Саппорта? Если да, то когда?
Rodrigo_Desill
- Игровой сервер: Classic
- Игровой ник: Crutis_Besputin
- Описание проблемы: Будут ли открываться заявки на пост Саппорта? Если да, то когда?
Нет в планах делать заявки, последнее время без них ставим
Crutis_Besputin
Нет в планах делать заявки, последнее время без них ставим
Можно как-то попасть в команду Саппортов без срока лидерства? Если да, то как можно заслужить данный пост?
Rodrigo_Desill
Можно как-то попасть в команду Саппортов без срока лидерства? Если да, то как можно заслужить данный пост?
Шансы есть, но через лидерство проще себя зарекомендовать
Crutis_Besputin
Шансы есть, но через лидерство проще себя зарекомендовать
Просто допустим я играю через телефон, а лидерский пост через телефон будет трудно отстоять. Я в 2020 году стоял на лидерки (через пк), и вот щас есть желание как-то попасть в команду Саппортов.
Puero_Baldino
Просто допустим я играю через телефон, а лидерский пост через телефон будет трудно отстоять. Я в 2020 году стоял на лидерки (через пк), и вот щас есть желание как-то попасть в команду Саппортов.
По заявке, возможно. Но а так в основном смотрят на лидерские посты.
John_Prosh
Разрешено ли стрелять с пассажирского места в автомобиле, если водитель отсутствует?
Rodrigo_Desill
Разрешено ли стрелять с пассажирского места в автомобиле, если водитель отсутствует?
John_Prosh
Ссылка на правила есть? Где это запрещено?
Rodrigo_Desill
Ссылка на правила есть? Где это запрещено?
К багоюзу всегда приравнивалось, ибо разброс у оружия отсутствует
Не исключено, что на реве свои порядки в этом плане
John_Prosh
Спасибо за ответ, ничего не понял в итоге, можно или нет.
Rodrigo_Desill
Спасибо за ответ, ничего не понял в итоге, можно или нет.
У 6+ можешь уточнить в ЛС, но раз жалобу отклонили, значит на реве это разрешено
Kila_Moncero
Classic
Kila_Luv
ребят перенести аккаунт можно с евольв помогите пж
Rodrigo_Desill
Classic
Kila_Luv
ребят перенести аккаунт можно с евольв помогите пж
ВКонтакте – универсальное средство для общения и поиска друзей и одноклассников, которым ежедневно пользуются десятки миллионов человек. Мы хотим, чтобы друзья, однокурсники, одноклассники, соседи и коллеги всегда оставались в контакте.
Как пользоваться имгуром для самп
APNG, GIF, JPG, JPEG, MOV, MP4, PDF, PNG, TIF, TIFF, PDF. TIFF-файлы конвертируются в PNG после загрузки.
Ограничения
20 MB – самый большой размер для не анимационных файлов вроде JPG. PNG больше 5 MB будут сконвертированы автоматически в JPG, и не анимационные снимки больше 1 MB урезаются в размере (но их качество не меняется).
Размер GIF не должен превышать 200 MB, и он сконвертируется в GIFV для уменьшения размера, если файл действительно огромный. Если вы делаете GIF из онлайн-видео, длительность анимации не должна превышать 15 секунд, а видео, с которого вы пишете – 1 GB.
Каждый час с одного аккаунта можно загружать по 50 изображений, не больше. Это ограничение устанавливается вашим IP-адресом, что означает, что если вы войдете в свой аккаунт с другого IP-адреса, загрузив уже 50 снимков, вы можете загрузить еще 50 с нового места.
Приложения Imgur и другие инструменты
Вот список бесплатных приложений для редактирования фотографий, если вы хотите отредактировать снимки, прежде чем загрузить их в Imgur.
Moon ImGui — Dear ImGui for MoonLoader
Это ImGui - самый функциональный и одновременно самый простой GUI-фреймворк из всех, что мне известны.
И теперь каждый из вас сможет использовать его в своих Lua скриптах для MoonLoader.
Представляю вам Moon ImGui - Lua биндинг ImGui для MoonLoader. Он включает все основные возможности фреймворка, а API максимально приближен к оригинальному по мере возможного.
Тут не будут подробно рассматриваться возможности и особенности ImGui, в этой теме будет рассказано и показано как использовать Moon ImGui в Lua. За информацией по самому ImGui сюда:
GitHub - ocornut/imgui: Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies - GitHub - ocornut/imgui: Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependenciesЭто работает, но что-то не впечатляет, согласитесь. Окно изначально маленькое, показывается сразу при старте и его нельзя закрыть.
Сделаем его побольше, добавим активацию и какое-нибудь действие:
В коде была использована переменная типа ImBool - это один из новых типов, добавленных в Moon ImGui. Такой подход неизбежен, поскольку в луа невозможна передача базовых типов по ссылке. Это не единственное изменение, есть и другие, вам потребуется о них знать. Вот их полный список:
Разница между C++ API и Lua API
Описание | В C++ | В Lua |
---|---|---|
Все функции из пространства имён ImGui, как и все типы, и все перечисления находятся в таблице, возвращаемой модулем | ImGui::Text("text"); ImVec2(0.1f, 2.3f); | imgui.Text("text"); imgui.ImVec2(0.1, 2.3); |
Названия перечислений (enum) и их значений лишились префиксов и символа "_" в конце | ImGuiWindowFlags_NoTitleBar | imgui.WindowFlags.NoTitleBar |
Значения базовых типов, которые в ImGui записываются по указателю, должны быть использованы через специальные типы: ImBool для bool, ImFloat для float, ImInt для int и unsigned int, ImFloat2-4 для float3, ImInt2-4 для int3 | static bool win = false; ImGui::Begin("window", &win); win = false; | local win = imgui.ImBool(false) imgui.Begin("window", win) win.v = false |
Функции с переменным количеством аргументов для форматирования текста не поддерживают форматирование, используйте string.format | ImGui::Text("hey, %s", name) | imgui.Text(string.format('hey, %s', name)) |
Функции InputText и InputTextMultiline принимают ImBuffer вместо char* buf + size_t buf_size | char buf[256]<>; ImGui::InputText('input', buf, sizeof(buf)) | local buf = imgui.ImBuffer(256); imgui.InputText('input', buf) |
Динамические массивы в виде массива указателей + количество элементов заменены таблицами | const char* items[] = ; ImGui::ListBox("list", &lb_cur, items, 3) | imgui.ListBox('list', lb_cur, ) |
Функции с аргументами const char* str_start, const char* str_end, идущими подряд, принимают обычную строку | ImGui::TextUnformatted(some_str, some_str + 24) | imgui.TextUnformatted(some_str) |
Все функции, принимающие калбэк + user_data, принимают ImCallback | void swszCb(ImGuiSizeConstraintCallbackData*) <>; ImGui::SetNextWindowSizeConstraints(size_min, size_max, &swszCb, (void*)&my_data) | local swszCb = imgui.ImCallback(function(data) end) imgui.SetNextWindowSizeConstraints(size_min, size_max, swszCb) |
ImFont::CalcTextSizeA, ImFontAtlas::CustomRect::CalcCustomRectUV, ImFontAtlas::GetTexDataAsRGBA32, ImFontAtlas::GetTexDataAsAlpha8, ImFontAtlas::GlyphRangesBuilder::BuildRanges, ImGui::ColorConvertRGBtoHSV и ImGui::ColorConvertHSVtoRGB возвращают значения вместо изменения по ссылке | float r, g, b; ImGui::ColorConvertHSVtoRGB(h, s, v, r, g, b); | local r, g, b = imgui.ColorConvertHSVtoRGB(h, s, v) |
ImGuiIO::IniFilename и ImGuiIO::LogFilename принимают ImBuffer вместо указателя на строку | const char ini_path[] = "my/path.ini"; ImGui::GetIO().IniFilename = ini_path; | local ini_path = imgui.ImBuffer('my/path.ini') imgui.GetIO().IniFilename = ini_path |
Изменение ImGuiTextEditCallbackData::Buf автоматически обновляет длину и задаёт значение BufDirty | s.copy(data.Buf, data.BufSize); data.BufTextLen = s.length(); data.BufDirty = true; | data.Buf = 'text' |
- Добавлено несколько дополнительных функций
- ImColor::ToU32 - преобразование ImColor в целое
- ImGui::GetStyleColorU32 вместо ImGui::GetColorU32 для цвета стиля
- ImGui::PlotLinesEx вместо callback-варианта PlotLines
- ImGui::PlotHistogramEx вместо callback-варианта PlotHistogram
- ImDrawList::AddTextEx вместо AddText с дополнительными аргументами
- Функции, принимающие и возвращающие void*-идентификаторы (например, PushID(void*) и GetID(void*))
- Функции с va_list-форматированием текста (например, TextV)
Но это ещё не всё. Вся работа с текстом в ImGui основана на UTF-8, т.е. текст не ограничен лишь стандартным набором символов. Но т.к. GTA, SAMP и MoonLoader не поддерживают юникод, кодировки необходимо конвертировать.
Работа с другими языками на примере русского
В MoonLoader v.025 были добавлены библиотеки lua-iconv и encoding, они призваны помочь в работе с разными кодировками текста.
Следующий пример показывает как использовать текст на русском в ImGui:
Скрипт должен быть сохранён в кодировке Windows-1251Не так уж и сложно, верно? Текст, передаваемый ImGui - кодируем, текст, получаемый из ImGui - декодируем. Если в вашем скрипте много текста на русском для ImGui, но мало текста, выводимого через MoonLoader (в лог или чат SA:MP, к примеру), то можно сделать наоборот - сохранить скрипт в кодировке UTF-8 и не кодировать текст, передаваемый ImGui, а вместо этого кодировать текст при работе с функциями мунлоадера.
Остальные особенности
В Moon ImGui есть несколько дополнительных возможностей. В частности, они реализуют взаимодействие с игрой и управление интерфейсом.На этом всё. Во вложениях есть пример с демонстрацией использования всех этих фич, рекомендую посмотреть код и пощупать его в игре. Вот скриншот:
FAQ » Использование команд /me, /try, /do, /todo
Основная и главная команда в Role Play лечении. Команда используется от первого лица игрока, это будет выглядеть вот так:
/me достал(а) аптечку
/me взял(а) таблетку "Название"
/me передал(а) таблетку "Название" пациенту
С ее помощью вы можете лечить больных прямыми действиями.Второстепенная и важная команда в Role Play лечения. Команда используется от третьего лица игрока, это будет выглядеть вот так:
(( Nick_Name[id] )) Скальпель в руке
(( Nick_Name[id] )) Снимок сделан
(( Nick_Name[id] )) Бинт в руке
С ее помощью вы можете разнообразить ваше лечение и отыгровку "/me". Лучше всего чередовать все эти команды.
Пример:
/me открыл(а) аптечку
/me достал(а) из аптечки таблетку "Цитрамон"
/do В руках стакан воды и таблетка "Цитрамон"
/me передал(a) пациенту таблетку "Цитрамон" и стакан водыДовольно интересная команда, это тоже самое что и "/me" только тут у нас есть в конце результат [Удачно] / [Неудачно] , который выдается нам в случайном порядке. Команда выдает нам отыгровку по ситуации в завершении это будет выглядеть вот так:
/try сделал(a) укол [Удачно] / [Неудачно]
/try сделал(a) снимок [Удачно] / [Неудачно]Еще одна очень интересная команда в которой отыгровку можно совместить со словами ( /todo сказал * делая что-то ), это будет выглядеть вот так:
/todo Возьмите анальгин - сказал(а) Bogdan_Forest, передавая пациенту таблетку
/todo Поставьте свою подпись тут - сказал(а) Bogdan_Forest, протягивая документ пациенту
/todo Всё обошлось - сказал(а) Bogdan_Forest, рассматривая снимки рентгена
Символ "*" используется как разделитель. С помощью /todo вы можете лечить больных при этом сразу говорить что-то. Это очень сильно разнообразит вашу РП отыгровку.Читайте также: