最近也刚好在做这个,可以给楼主分享一下我的做法 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)
参与人数 2 | 赞 +2 | 收起 理由 |
---|---|---|
TaniyamaMinami | + 1 | 认可答案 |
79160475 | + 1 | 精品文章 |
墓雷 发表于 2018-9-5 14:04 哇……那我这工程要重开了啊 |
普通的呆毛狼 发表于 2018-9-5 13:42 呃...这我还真不清楚...这里是我瞎试出来的....可能和我修改了游戏分辨率有关系吧...具体问题没有遇到过也不知道怎么解决....帮不到忙真是抱歉 |
墓雷 发表于 2018-9-3 16:02 额我尝试用改文本的方式改了以后游戏就打不开了,并显示TypeErrpr Yanfly.Util.toGroup is not a function 把重建的新工程的rpg_windows.js覆盖的话虽然能进入标题画面,但一但开始游戏就会显示TypeError Utils.generateRuntimeId is not a function 请问该怎么办 |
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.