Project1

标题: Window_Selectable错位 [打印本页]

作者: 紫英晓狼1130    时间: 2016-1-31 22:57
标题: Window_Selectable错位
将Window_Selectable中的按26像素显示行距时
在换行时会有一种错位的感觉
求解决办法,感激不尽!
Project1.rar (187.21 KB, 下载次数: 36)
作者: cinderelmini    时间: 2016-1-31 23:13
因为XP里Window类没有设定一个统一的默认行高方法,
所以这种事情要弄起来其实非常麻烦,
先说两个基本的小错误吧:
①page_row_max里面的self.height - 32里面的这个32其实是窗口的上下16边距,不用改成26,就是32;
②光标矩形的y为什么后面要加上row……这样每一行都会出现微妙的小偏差的……

然后就是项目描绘的大偏差问题,基本上必须每个Window_Selectable的子类都要去处理了,
每个子类大体上需要弄两处,以Window_Item为例子的话,首先是生成contents的
【self.contents = Bitmap.new(width - 32, row_max * 32)】这里,
高度 = 最大行数 * 32,这里的32需要改成26,
然后是draw_item里面的【y = index / 2 * 32】,这个32是行高,也要改成26,
这样一来物品窗口基本上就正常了,其他的Window_Selectable子类都参考这个办法去修改应该就没问题了。
(PS:不过像Window_MenuStatus这种改了光标高度的话,就不用去改了,而且也许需要弄点原来的父类方法进去……)




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