设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

如何增加物品与技能说明栏的大小

查看数: 5898 | 评论数: 5 | 收藏 7
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-9-1 19:45

正文摘要:

希望可以增加红圈圈住范围的说明栏,不知道该怎么做

回复

最后制帽匠 发表于 2019-7-17 00:20:59
最近也刚好在做这个,可以给楼主分享一下我的做法
2楼说的var height = this.fittingHeight(numLines || 2); 基本就是看初始化的时候有没有设置行数,没有的话就默认设2行
尽量规避改这个基盘这里的话,就修改js文件夹下的rpg_scenes.js
1)战斗画面的说明栏,注释部分里把Window_Help括号里的数字改掉,是几就是几行文字的高度,目前看有影响的就是战斗时物品和技能还有选择敌人的框会有影响
Scene_Battle.prototype.createHelpWindow = function() {
        //说明栏高度调整 start
    this._helpWindow = new Window_Help(3);
        //说明栏高度调整 end
    this._helpWindow.visible = false;
    this.addWindow(this._helpWindow);
};

2)菜单画面的说明栏,注释部分里把Window_Help括号里的数字改掉,是几就是几行文字的高度,目前看有影响的就是物品和技能还有装备的框会有影响
Scene_MenuBase.prototype.createHelpWindow = function() {
        //说明栏高度调整 start
    this._helpWindow = new Window_Help(3);
        //说明栏高度调整 end

这样的话,框是ok了,但是rpg maker mv这个编辑器自身只支持输入两行内容,并且一行内容过长也不会自动换行。
我目前解决办法是通过输入内容里加\n来进行换行,介于基盘的js里有替换特殊字符的处理,
所以还是需要稍微改一下基盘那边。

js文件夹下rpg_windows.js
1)在初始的变换处理前追加我们需要的把换行符号替换成一个不怎么用的字符
Window_Base.prototype.convertEscapeCharacters = function(text) {
        //换行符号变换 start
        text = text.replace(/\\n/g, '●');
        //换行符号变换 end
        text = text.replace(/\\/g, '\x1b');

2)将变换后的字符输出为换行
Window_Base.prototype.processCharacter = function(textState) {
在default:前一行追加下面内容
//改行符特殊对应 start
        case '●':
                this.processNewLine(textState);
                break;
        //改行符特殊对应 end

TIM截图20190717011131.png (212.19 KB, 下载次数: 62)

TIM截图20190717011131.png

点评

不错!太感谢了  发表于 2021-1-15 10:28

评分

参与人数 2+2 收起 理由
TaniyamaMinami + 1 认可答案
79160475 + 1 精品文章

查看全部评分

普通的呆毛狼 发表于 2018-9-5 15:43:25
墓雷 发表于 2018-9-5 14:04
呃...这我还真不清楚...这里是我瞎试出来的....可能和我修改了游戏分辨率有关系吧...具体问题没有遇到过 ...

哇……那我这工程要重开了啊
墓雷 发表于 2018-9-5 14:04:06
普通的呆毛狼 发表于 2018-9-5 13:42
额我尝试用改文本的方式改了以后游戏就打不开了,并显示TypeErrpr  Yanfly.Util.toGroup is not a functi ...

呃...这我还真不清楚...这里是我瞎试出来的....可能和我修改了游戏分辨率有关系吧...具体问题没有遇到过也不知道怎么解决....帮不到忙真是抱歉
普通的呆毛狼 发表于 2018-9-5 13:42:11
墓雷 发表于 2018-9-3 16:02
js文件夹下的rpg_windows.js
搜索到其中的
Window_Help.prototype.initialize = function(numLines) {

额我尝试用改文本的方式改了以后游戏就打不开了,并显示TypeErrpr  Yanfly.Util.toGroup is not a function
把重建的新工程的rpg_windows.js覆盖的话虽然能进入标题画面,但一但开始游戏就会显示TypeError Utils.generateRuntimeId is not a function 请问该怎么办
墓雷 发表于 2018-9-3 16:02:47
js文件夹下的rpg_windows.js
搜索到其中的
Window_Help.prototype.initialize = function(numLines) {
    var width = Graphics.boxWidth;
    var height = this.fittingHeight(numLines || 2);
    Window_Base.prototype.initialize.call(this, 0, 0, width, height);
    this._text = '';
};
第三行的2即为行数
不过这是通用型的改法  所有此类文本框包括道具、技能描述  以及战斗中的确认框都会被修改
望有助
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-30 17:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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