设为首页收藏本站同能贴吧 切换语言 繁体中文
开启辅助访问 切换到窄版
扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 110|回复: 0

[转载发布] Settings Menu

[复制链接]
累计送礼:
0 个
累计收礼:
1 个
  • TA的每日心情
    开心
    2026-7-12 04:10
  • 签到天数: 209 天

    连续签到: 2 天

    [LV.7]常住居民III

    9071

    主题

    864

    回帖

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    7
    卡币
    58883
    OK点
    16
    推广点
    0
    同能卷
    50
    积分
    68848

    灌水之王

    发表于 2026-8-2 10:18:34 | 显示全部楼层 |阅读模式



    Settings Menu

    v1.1, by Holy87


    Features

    This Settings Menu is different from the others, because it comes with no options, but it is full-modular and full-customizable both from the user and the other scripters, in the easiest way possible.

    Users can create game options from variables, switches and lunatic modes (code scirpt)

    Scripters can integrate their script in this settings menu to implement custom options (battle system options, internet options, etc...)

    What options you can make?


    • ON/OFF options for switches
    • Variables, to make options with multiple states (switching with left and right buttons)
    • Variables selected by popups, when the states are too much to show all in a single line
    • Variables selected by gauges, that also include switches if press ENTER
    • Separators, to separate settings categories
    What can I use?


    • Game Switches and Variables
    • Universal data stored in $game_settings class (see my support module)
    • script for lunatic mode
    • Custom popup windows and effects
    You can also choice if show the settings menu in the Scene_Title, Scene_Menu or in both scenes.

    How to Use

    Adding options to the list is simple, and you can do it in the script configuration or from methods. All you have to do is to insert hash with datas in the ELEMENTS array, in the configuration section of the script. Let's see some examples.

    To add separators

    {:type => :separator, :text => "This is a separator"}To add switch options

    {:type => :switch, :text => "Option name", :sw => 10,
    n => "ON",
    ff => "OFF", :help => "Activates the option"}Text is the showed text, :sw the Switch ID,
    n and
    ff the options showed and :help the text showed in the help window.





    To add a variable option

    {:type => :variable, :text => "Option name", :var => 2, :max => 5, :help => "Change the option value"}where :var is the variable ID and :max the max value. So we have an option where we can select 0,1,2,3,4 or 5.





    What if we want custom values?

    You can use this code

    {:type => :variable, :text => "Difficulty", :var => 5,:help => "Set up the game difficulty.",:values => ["Easy", "Normal", "Hard", "Extreme"] }Where values are all the values showed. If there are too many values to show in a single line, you can add another attribute :use_popu => true to force to show popup. Then, pressing the action button, the values are shown like this:





    Lunatic settings

    SpoilerGlobal options: If you set a switch ID or variable not like an integer number, but as



    a string or a symbol, the option is seen like global and will be saved in $game_settings.
    You can enable or disable the options in 2 ways:


    • $game_system.option_enable(tag, true/false) enables or disables the game option, using this code in a call script or other scripts.
    • The <tag> parameter is the option tag defined in the option configuration
      tag =>
      ption_name) using :condition => "condition" in the option configuration. For example, :condition => "$game_switches[55] == true" will allow the option only if the switch 55 is true
    Setting the type as :advanced, it will be executed a code when the player press enter on him. Example:
    {:type => :advanced, method => :change_scene}Then you may define the change_scene method in the Option class:

                    Code:       
    1. class Option  def change_scene    SceneManager.call(My_Scene)  endend
    复制代码



    For 3rd party scripters

    SpoilerIt is useful to scripters to add game options to proper scripts directly in this



    settings menu, instead of creating apart.For the scripters, I've created 8 categories where insert your options:


    • Generic, the same part defined by the user (as no category)
    • Appearance, like themes and wallpapers
    • Audio, for music and sounds
    • Game, for game options like battle speed and difficulty level
    • Graphic, like screen resolution and special effects
    • Commands, for game controls
    • System, for techincal configurations
    • Internet, for the online functionalities
    The categories will have a dedicated separator automatically inserted (all but the generic category).

    To add an option in those categories, for every option you may pass the hash (defined like the previous options) in the respective methods:

    if $imported["H87_Options"]

    to check if the script exists in the project, then use:

                    Code:       
    1. H87Options.push_system_option(hash)H87Options.push_generic_option(hash)H87Options.push_game_option(hash)H87Options.push_graphic_option(hash)H87Options.push_sound_option(hash)H87Options.push_appearance_option(hash)H87Options.push_keys_option(hash)H87Options.push_internet_option(hash)
    复制代码


    to add the option in the settings menu.

    Download

    Core script: Download from Github or my blog.

    Windowskin plugin: Coming soon

    Audio plugin: Coming soon

    Difficulty plugin: Coming soon

    FAQ

    Q: Can I use this script for my commercial project?

    A: Yes, you can. all my scripts are distributed under CC-BY license. You just have to credit me.

    Q: What if I find some bugs?

    A: You can post a request here or, if you have also the fix, pull a commit on github and I will add it into the main branch.

    Q: What if I make a plugin for this script?

    A: You can post it in this topic and I will add it into the first post and in my blog.


    本贴来自国际rpgmaker官方论坛作者:Holy87处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/settings-menu.43612/

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    简体中文
    繁體中文
    English(英语)
    日本語(日语)
    Deutsch(德语)
    Русский язык(俄语)
    بالعربية(阿拉伯语)
    Türkçe(土耳其语)
    Português(葡萄牙语)
    ภาษาไทย(泰国语)
    한어(朝鲜语/韩语)
    Français(法语)
    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2026-8-17 12:39 , Processed in 0.110021 second(s), 52 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表