Project1

标题: 如何增加物品与技能说明栏的大小 [打印本页]

作者: 普通的呆毛狼    时间: 2018-9-1 19:45
标题: 如何增加物品与技能说明栏的大小
希望可以增加红圈圈住范围的说明栏,不知道该怎么做

物品栏.png (534.24 KB, 下载次数: 57)

物品栏.png

作者: 墓雷    时间: 2018-9-3 16:02
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即为行数
不过这是通用型的改法  所有此类文本框包括道具、技能描述  以及战斗中的确认框都会被修改
望有助
作者: 普通的呆毛狼    时间: 2018-9-5 13:42
墓雷 发表于 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-5 14:04
普通的呆毛狼 发表于 2018-9-5 13:42
额我尝试用改文本的方式改了以后游戏就打不开了,并显示TypeErrpr  Yanfly.Util.toGroup is not a functi ...

呃...这我还真不清楚...这里是我瞎试出来的....可能和我修改了游戏分辨率有关系吧...具体问题没有遇到过也不知道怎么解决....帮不到忙真是抱歉
作者: 普通的呆毛狼    时间: 2018-9-5 15:43
墓雷 发表于 2018-9-5 14:04
呃...这我还真不清楚...这里是我瞎试出来的....可能和我修改了游戏分辨率有关系吧...具体问题没有遇到过 ...

哇……那我这工程要重开了啊
作者: 最后制帽匠    时间: 2019-7-17 00:20
最近也刚好在做这个,可以给楼主分享一下我的做法
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, 下载次数: 57)

TIM截图20190717011131.png





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1