diff --git a/vmf/localization/vmf.lua b/vmf/localization/vmf.lua index e083d30..ae2ea9a 100644 --- a/vmf/localization/vmf.lua +++ b/vmf/localization/vmf.lua @@ -7,7 +7,7 @@ return { en = "Open Options Menu", ru = "Открыть меню настроек", }, - open_vmf_options_tooltip = { + open_vmf_options_description = { en = "Keybind for opening and closing mods options menu.", ru = "Клавиша / сочетание клавиш для открытия и закрытия меню настроек модов.", }, @@ -15,11 +15,14 @@ return { en = "Options Menu Scrolling Speed", ru = "Скорость прокрутки меню", }, + percent = { + en = "%%" + }, ui_scaling = { en = "UI Scaling for FHD+ Resolutions", ru = "Нормализация масштаба UI для FHD+ разрешений", }, - ui_scaling_tooltip = { + ui_scaling_description = { en = "Automatically scale UI when resolution exceeds 1080p.", ru = "Нормализует масштаб элементов интерфейса, если разрешений экрана превышает 1080p.", }, @@ -27,7 +30,7 @@ return { en = "Developer Mode", ru = "Режим разработчика", }, - developer_mode_tooltip = { + developer_mode_description = { en = "Allows you to reload VMF and mods, gives you access to some debug features.", ru = "Позволяет перезагружать VMF и моды, даёт доступ к инструментам отладки.", }, @@ -35,7 +38,7 @@ return { en = "Show Developer Console", ru = "Консоль разработчика", }, - show_developer_console_tooltip = { + show_developer_console_description = { en = "Opens up the new window showing game log in real time.", ru = "Открывает новое окно, в которое в реальном времени выводится игровой лог.", }, @@ -47,7 +50,7 @@ return { en = "Log Network Calls", ru = "Логирование сетевых вызовов", }, - show_network_debug_info_tooltip = { + show_network_debug_info_description = { en = "Log all the VMF network calls and all the data transfered with them.\n\n" .. "The method 'info' is used for the logging.", ru = "Логирование всех сетевых вызовов VMF и передаваемых с ними данных.\n\n" .. @@ -57,7 +60,7 @@ return { en = "Log UI Renderers Creation Info", ru = "Логирование информации при создании UI Renderer", }, - log_ui_renderers_info_tooltip = { + log_ui_renderers_info_description = { en = "Log the UI Renderer's creator name and all the materials passed as the agruments.\n\n" .. "The method 'info' is used for the logging.", ru = "Логирование имени создателя UI Renderer'а и всех материалов, переданных в качестве аргументов.\n\n" .. @@ -115,7 +118,7 @@ return { en = "Chat Input History", ru = "История ввода чата", }, - chat_history_enable_tooltip = { + chat_history_enable_description = { en = "Saves all the messages and commands you typed in the chat window.\n\n" .. "You can browse your input history by opening the chat and pressing \"Arrow Up\" and \"Arrow Down\".", ru = "Сохраняет все сообщения и команды, введённые в чате.\n\n" .. @@ -125,7 +128,7 @@ return { en = "Save Input History Between Game Sessions", ru = "Сохранять историю ввода между сеансами игры", }, - chat_history_save_tooltip = { + chat_history_save_description = { en = "Your chat input history will be saved even after reloading your game (or just VMF).", ru = "Когда игрок выключает игру (или перезагружает VMF), VMF cохраняет историю ввода в файл настроек, чтобы загрузить её при следующем запуске игры.", }, @@ -133,7 +136,7 @@ return { en = "Input History Buffer Size", ru = "Размер буфера истории ввода", }, - chat_history_buffer_size_tooltip = { + chat_history_buffer_size_description = { en = "Maximum number of saved entries.\n\n" .. "WARNING: Changing this setting will erase your chat history.", ru = "Максимальное количество сохраняемых записей.\n\n" .. @@ -147,7 +150,7 @@ return { en = "Removal Mode", ru = "Режим удаления", }, - chat_history_remove_dups_mode_tooltip = { + chat_history_remove_dups_mode_description = { en = "Which duplicate entries should be removed.\n\n" .. "-- LAST --\nRemoves previous entry if it matches the last one.\n\n" .. "-- ALL --\nRemoves all entries if it matches the last one.", @@ -167,7 +170,7 @@ return { en = "Save only executed commands", ru = "Сохранять только выполненные команды", }, - chat_history_commands_only_tooltip = { + chat_history_commands_only_description = { en = "Only successfully executed commands will be saved in the chat history.\n\n" .. "WARNING: Changing this setting will erase your chat history.", ru = "Только успешно выполненные команды будут сохранены в истории ввода.\n\n" .. @@ -249,13 +252,13 @@ return { mutators_title = { en = "Mutators" }, - mutators_banner_tooltip = { + mutators_banner_description = { en = "Enable and disable mutators" }, no_mutators = { en = "No mutators installed" }, - no_mutators_tooltip = { + no_mutators_description = { en = "Subscribe to mods and mutators on the workshop" }, diff --git a/vmf/scripts/mods/vmf/modules/vmf_options.lua b/vmf/scripts/mods/vmf/modules/vmf_options.lua index 367e6b7..8e3cdb8 100644 --- a/vmf/scripts/mods/vmf/modules/vmf_options.lua +++ b/vmf/scripts/mods/vmf/modules/vmf_options.lua @@ -2,196 +2,161 @@ local vmf = get_mod("VMF") local vmf_mod_data = {} vmf_mod_data.name = "Vermintide Mod Framework" -vmf_mod_data.options_widgets = { - { - ["setting_name"] = "open_vmf_options", - ["widget_type"] = "keybind", - ["text"] = vmf:localize("open_vmf_options"), - ["tooltip"] = vmf:localize("open_vmf_options_tooltip"), - ["default_value"] = {"f4"}, - ["action"] = "open_vmf_options" - }, - { - ["setting_name"] = "vmf_options_scrolling_speed", - ["widget_type"] = "numeric", - ["text"] = vmf:localize("vmf_options_scrolling_speed"), - ["unit_text"] = "%", - ["range"] = {1, 1000}, - ["default_value"] = 100 - }, - { - ["setting_name"] = "ui_scaling", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("ui_scaling"), - ["tooltip"] = vmf:localize("ui_scaling_tooltip"), - ["default_value"] = true - }, - { - ["setting_name"] = "developer_mode", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("developer_mode"), - ["tooltip"] = vmf:localize("developer_mode_tooltip"), - ["default_value"] = false, - ["sub_widgets"] = { - { - ["setting_name"] = "show_developer_console", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("show_developer_console"), - ["tooltip"] = vmf:localize("show_developer_console_tooltip"), - ["default_value"] = false - }, - { - ["setting_name"] = "toggle_developer_console", - ["widget_type"] = "keybind", - ["text"] = vmf:localize("toggle_developer_console"), - ["default_value"] = {}, - ["action"] = "toggle_developer_console" - }, - { - ["setting_name"] = "show_network_debug_info", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("show_network_debug_info"), - ["tooltip"] = vmf:localize("show_network_debug_info_tooltip"), - ["default_value"] = false - }, - { - ["setting_name"] = "log_ui_renderers_info", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("log_ui_renderers_info"), - ["tooltip"] = vmf:localize("log_ui_renderers_info_tooltip"), - ["default_value"] = false - } - } - }, - { - ["setting_name"] = "logging_mode", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("logging_mode"), - ["options"] = { - {--[[1]] text = vmf:localize("settings_default"), value = "default"}, - {--[[2]] text = vmf:localize("settings_custom"), value = "custom"}, +vmf_mod_data.options = { + widgets = { + { + setting_id = "open_vmf_options", + type = "keybind", + default_value = {"f4"}, + keybind_trigger = "pressed", + keybind_type = "action_call", + action_name = "open_vmf_options" }, - ["default_value"] = "default", - ["sub_widgets"] = { - { - ["show_widget_condition"] = {2}, - - ["setting_name"] = "output_mode_echo", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("output_mode_echo"), - ["options"] = { - {text = vmf:localize("output_disabled"), value = 0}, - {text = vmf:localize("output_log"), value = 1}, - {text = vmf:localize("output_chat"), value = 2}, - {text = vmf:localize("output_log_and_chat"), value = 3}, + { + setting_id = "vmf_options_scrolling_speed", + type = "numeric", + default_value = 100, + range = {1, 1000}, + unit_text = "percent" + }, + { + setting_id = "ui_scaling", + type = "checkbox", + default_value = true + }, + { + setting_id = "developer_mode", + type = "checkbox", + default_value = false, + sub_widgets = { + { + setting_id = "show_developer_console", + type = "checkbox", + default_value = false }, - ["default_value"] = 3 - }, - { - ["show_widget_condition"] = {2}, - - ["setting_name"] = "output_mode_error", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("output_mode_error"), - ["options"] = { - {text = vmf:localize("output_disabled"), value = 0}, - {text = vmf:localize("output_log"), value = 1}, - {text = vmf:localize("output_chat"), value = 2}, - {text = vmf:localize("output_log_and_chat"), value = 3}, + { + setting_id = "toggle_developer_console", + type = "keybind", + default_value = {}, + keybind_trigger = "pressed", + keybind_type = "action_call", + action_name = "toggle_developer_console" }, - ["default_value"] = 3 - }, - { - ["show_widget_condition"] = {2}, - - ["setting_name"] = "output_mode_warning", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("output_mode_warning"), - ["options"] = { - {text = vmf:localize("output_disabled"), value = 0}, - {text = vmf:localize("output_log"), value = 1}, - {text = vmf:localize("output_chat"), value = 2}, - {text = vmf:localize("output_log_and_chat"), value = 3}, + { + setting_id = "show_network_debug_info", + type = "checkbox", + default_value = false }, - ["default_value"] = 3 - }, - { - ["show_widget_condition"] = {2}, - - ["setting_name"] = "output_mode_info", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("output_mode_info"), - ["options"] = { - {text = vmf:localize("output_disabled"), value = 0}, - {text = vmf:localize("output_log"), value = 1}, - {text = vmf:localize("output_chat"), value = 2}, - {text = vmf:localize("output_log_and_chat"), value = 3}, - }, - ["default_value"] = 1 - }, - { - ["show_widget_condition"] = {2}, - - ["setting_name"] = "output_mode_debug", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("output_mode_debug"), - ["options"] = { - {text = vmf:localize("output_disabled"), value = 0}, - {text = vmf:localize("output_log"), value = 1}, - {text = vmf:localize("output_chat"), value = 2}, - {text = vmf:localize("output_log_and_chat"), value = 3}, - }, - ["default_value"] = 0 + { + setting_id = "log_ui_renderers_info", + type = "checkbox", + default_value = false + } } - } - }, - { - ["setting_name"] = "chat_history_enable", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("chat_history_enable"), - ["tooltip"] = vmf:localize("chat_history_enable_tooltip"), - ["default_value"] = true, - ["sub_widgets"] = { - { - ["setting_name"] = "chat_history_save", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("chat_history_save"), - ["tooltip"] = vmf:localize("chat_history_save_tooltip"), - ["default_value"] = true + }, + { + setting_id = "logging_mode", + type = "dropdown", + default_value = "default", + options = { + {text = "settings_default", value = "default"}, + {text = "settings_custom", value = "custom", show_widgets = {1, 2, 3, 4, 5}}, }, - { - ["setting_name"] = "chat_history_buffer_size", - ["widget_type"] = "numeric", - ["text"] = vmf:localize("chat_history_buffer_size"), - ["tooltip"] = vmf:localize("chat_history_buffer_size_tooltip"), - ["range"] = {10, 200}, - ["default_value"] = 50 - }, - { - ["setting_name"] = "chat_history_remove_dups", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("chat_history_remove_dups"), - ["default_value"] = false, - ["sub_widgets"] = { - { - ["setting_name"] = "chat_history_remove_dups_mode", - ["widget_type"] = "dropdown", - ["text"] = vmf:localize("chat_history_remove_dups_mode"), - ["tooltip"] = vmf:localize("chat_history_remove_dups_mode_tooltip"), - ["options"] = { - {text = vmf:localize("settings_last"), value = "last"}, - {text = vmf:localize("settings_all"), value = "all"}, - }, - ["default_value"] = "last" + sub_widgets = { + { + setting_id = "output_mode_echo", + type = "dropdown", + default_value = 3, + options = { + {text = "output_disabled", value = 0}, + {text = "output_log", value = 1}, + {text = "output_chat", value = 2}, + {text = "output_log_and_chat", value = 3}, + } + }, + { + setting_id = "output_mode_error", + type = "dropdown", + default_value = 3, + options = { + {text = "output_disabled", value = 0}, + {text = "output_log", value = 1}, + {text = "output_chat", value = 2}, + {text = "output_log_and_chat", value = 3}, + } + }, + { + setting_id = "output_mode_warning", + type = "dropdown", + default_value = 3, + options = { + {text = "output_disabled", value = 0}, + {text = "output_log", value = 1}, + {text = "output_chat", value = 2}, + {text = "output_log_and_chat", value = 3}, + } + }, + { + setting_id = "output_mode_info", + type = "dropdown", + default_value = 1, + options = { + {text = "output_disabled", value = 0}, + {text = "output_log", value = 1}, + {text = "output_chat", value = 2}, + {text = "output_log_and_chat", value = 3}, + } + }, + { + setting_id = "output_mode_debug", + type = "dropdown", + default_value = 0, + options = { + {text = "output_disabled", value = 0}, + {text = "output_log", value = 1}, + {text = "output_chat", value = 2}, + {text = "output_log_and_chat", value = 3}, } } - }, - { - ["setting_name"] = "chat_history_commands_only", - ["widget_type"] = "checkbox", - ["text"] = vmf:localize("chat_history_commands_only"), - ["tooltip"] = vmf:localize("chat_history_commands_only_tooltip"), - ["default_value"] = false + } + }, + { + setting_id = "chat_history_enable", + type = "checkbox", + default_value = true, + sub_widgets = { + { + setting_id = "chat_history_save", + type = "checkbox", + default_value = true + }, + { + setting_id = "chat_history_buffer_size", + type = "numeric", + default_value = 50, + range = {10, 200} + }, + { + setting_id = "chat_history_remove_dups", + type = "checkbox", + default_value = false, + sub_widgets = { + { + setting_id = "chat_history_remove_dups_mode", + type = "dropdown", + default_value = "last", + options = { + {text = "settings_last", value = "last"}, + {text = "settings_all", value = "all"}, + } + } + } + }, + { + setting_id = "chat_history_commands_only", + type = "checkbox", + default_value = false + } } } } @@ -277,4 +242,4 @@ if not vmf:get("vmf_initialized") then vmf.load_vmf_options_view_settings() vmf:set("vmf_initialized", true) -end +end \ No newline at end of file