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

[转载发布] Skip Skill Type and update Help Window [MV]

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

    连续签到: 2 天

    [LV.7]常住居民III

    7959

    主题

    864

    回帖

    3万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

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

    灌水之王

    发表于 3 天前 | 显示全部楼层 |阅读模式
    Dear RPG Maker MV community.

    I have made a simple plugin to skip the skill type menu.

    Code here:
    Spoiler
    1. /*:
    2. * @plugindesc Skills Menu
    3. * @author Jerdz
    4. * @help
    5. */
    6. Scene_Skill.prototype = Object.create(Scene_ItemBase.prototype);
    7. Scene_Skill.prototype.constructor = Scene_Skill;
    8. Scene_Skill.prototype.initialize = function() {
    9.     Scene_ItemBase.prototype.initialize.call(this);
    10. };
    11. Scene_Skill.prototype.create = function() {
    12.     Scene_ItemBase.prototype.create.call(this);
    13.     this.createHelpWindow();
    14.     this.createSkillTypeWindow();
    15.     this.createStatusWindow();
    16.     this.createItemWindow();
    17.     this.createActorWindow();
    18.     this.refreshActor();
    19.     this.commandSkill();
    20.     this._skillTypeWindow.active = false;
    21. };
    22. Scene_Skill.prototype.createSkillTypeWindow = function() {
    23.     var wy = this._helpWindow.height;
    24.     this._skillTypeWindow = new Window_SkillType(0, wy);
    25.     this._skillTypeWindow.setHelpWindow(this._helpWindow);
    26.     this._skillTypeWindow.setHandler('skill',    this.commandSkill.bind(this));
    27.     this._skillTypeWindow.setHandler('cancel',   this.popScene.bind(this));
    28.     this._skillTypeWindow.setHandler('pagedown', this.nextActor.bind(this));
    29.     this._skillTypeWindow.setHandler('pageup',   this.previousActor.bind(this));
    30.     this.addWindow(this._skillTypeWindow);
    31. };
    32. Scene_Skill.prototype.createStatusWindow = function() {
    33.     var wx = this._skillTypeWindow.width;
    34.     var wy = this._helpWindow.height;
    35.     var ww = Graphics.boxWidth - wx;
    36.     var wh = this._skillTypeWindow.height;
    37.     this._statusWindow = new Window_SkillStatus(wx, wy, ww, wh);
    38.     this._statusWindow.reserveFaceImages();
    39.     this.addWindow(this._statusWindow);
    40. };
    41. Scene_Skill.prototype.createItemWindow = function() {
    42.     var wx = 0;
    43.     var wy = this._statusWindow.y + this._statusWindow.height;
    44.     var ww = Graphics.boxWidth;
    45.     var wh = Graphics.boxHeight - wy;
    46.     this._itemWindow = new Window_SkillList(wx, wy, ww, wh);
    47.     this._itemWindow.setHelpWindow(this._helpWindow);
    48.     this._itemWindow.setHandler('ok',     this.onItemOk.bind(this));
    49.     this._itemWindow.setHandler('cancel',   this.popScene.bind(this));
    50.     this._itemWindow.setHandler('pagedown', this.nextActor.bind(this));
    51.     this._itemWindow.setHandler('pageup',   this.previousActor.bind(this));
    52.     //this._itemWindow.setHandler('cancel', this.onItemCancel.bind(this));
    53.     this._skillTypeWindow.setSkillWindow(this._itemWindow);
    54.     this.addWindow(this._itemWindow);
    55. };
    56. Scene_Skill.prototype.refreshActor = function() {
    57.     var actor = this.actor();
    58.     this._skillTypeWindow.setActor(actor);
    59.     this._statusWindow.setActor(actor);
    60.     this._itemWindow.setActor(actor);
    61. };
    62. Scene_Skill.prototype.user = function() {
    63.     return this.actor();
    64. };
    65. Scene_Skill.prototype.commandSkill = function() {
    66.     this._itemWindow.activate();
    67.     this._itemWindow.selectLast();
    68. };
    69. Scene_Skill.prototype.onItemOk = function() {
    70.     this.actor().setLastMenuSkill(this.item());
    71.     this.determineItem();
    72. };
    73. Scene_Skill.prototype.onItemCancel = function() {
    74.     this._itemWindow.deselect();
    75.     this._skillTypeWindow.activate();
    76. };
    77. Scene_Skill.prototype.playSeForItem = function() {
    78.     SoundManager.playUseSkill();
    79. };
    80. Scene_Skill.prototype.useItem = function() {
    81.     Scene_ItemBase.prototype.useItem.call(this);
    82.     this._statusWindow.refresh();
    83.     this._itemWindow.refresh();
    84. };
    85. Scene_Skill.prototype.onActorChange = function() {
    86.     this.refreshActor();
    87.     this._skillTypeWindow.activate();
    88. };
    复制代码




    As you see, I just recreate the Scene_Skill exacty like in the rpg_scenes.js, and I just bypass the SkillTypeMenu.

    HOWEVER, as you can see on the screen below, the help windows does not refresh to show the Skill Description (It would refresh if I select another skill)





    This seems like a minor annoyance, but on the current project I am working on, it is a pretty big deal as the help window is very important.

    Thanks makers !


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

    本帖子中包含更多资源

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

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

    使用道具 举报

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

    本版积分规则

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

    幸运抽奖

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

    立即查看

    聊天机器人
    Loading...

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

    GMT+8, 2026-8-1 04:51 , Processed in 0.076587 second(s), 52 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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