Project1

标题: 关于使B键显示物品画面而不显示菜单的问题 [打印本页]

作者: 孤山行客    时间: 2014-1-22 18:59
标题: 关于使B键显示物品画面而不显示菜单的问题
新开始研究脚本,想把默认的 B键 打开菜单 改为 打开物品画面,在[Scene_Map]里把SceneManager.call(Scene_Menu)改成了SceneManager.call(Scene_Item),不过这样之后按B键 物品画面会显示后立刻消失。尝试过 把快捷键改到别的键上,或者用事件里的脚本调用 都没有问题,而我们知道默认的 B键打开菜单 也是不会有这个问题的,求教有什么方法能让 B键 正常显示物品画面。


作者: 喵呜喵5    时间: 2014-1-22 19:09
后面加一句Input.update即可
作者: 孤山行客    时间: 2014-1-22 19:19
本帖最后由 孤山行客 于 2014-1-22 19:22 编辑

受教了,确实没有想到
刚一直在试,发现除了Scene_Item和Scene_Skill外都很正常,然后Scene_Item里面把@category_window的cancel那行删掉也就正常了,貌似这两个类的处理方法有些不太一样。
好吧,继续研究去了。
作者: 孤山行客    时间: 2014-1-23 07:49
问题是Scene_Base里面post_start已经定义了Input.update,但不管怎么说所有Scene都是继承于Scene_Base的啊。
不过把post_start里面的Input.update删掉,菜单打开依旧正常。
在start里面加上Input.update,物品菜单打开也就正常了。
关键是比对来比对去总觉得所有Scene处理方法好像都是一样的,但为什么别的Scene都不会出这种事。我能想到的Scene_Item和Scene_Skill的唯一不同就是有一个@category_window,这样按方向键之后下面的@item_window也会刷新。但是实在看不出来原因
作者: fux2    时间: 2014-1-23 14:01
你在call这个Scene_Item之前Input.update一下即可。
至于你们所说的为什么按B会闪回地图的原因,
Window_ItemCategory有一个item_window=方法,调用时会对窗口update一次,这个时候会判断按键
而创建这个窗口本身是在Scene的start过程中产生的,scene的update还未执行,也就是input.update未执行
所以会出现闪退的情况,自行解决吧。




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