查看: 2366|回复: 2

[已经解决] RMVX中按B\X\ESC全部无效……

[复制链接]

小小的百鬼夜行<

梦石
0
星屑
54
在线时间
579 小时
注册时间
2010-7-29
回帖
2593

贵宾

发表于 2011-3-5 13:05:19 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
【恩……是这样子的……在RMVX游戏中,无论在哪个画面按B\X\ESC都没有返回效果】
【然后打开RMXP测试……亦同】
【不过有个猎奇的事情。只要按一下游戏画面以外的其它窗口然后再按回来,就会当B键按下处理ORZ】
【使用RM以外程序ESC又完全正常……】
【附:新工程老工程旧工程他人游戏全部都是这样……今天第一次打开RM= =】
某只PHP/HTML小白鼠→退屈の间


Cause I knew you were trouble when you walked in
So shame is on me now
I flow me to place i ve never been
till you put me down oh
Now Im lying on the cold hard ground

RebeccaJackson

梦石
0
星屑
49
在线时间
106 小时
注册时间
2010-8-15
回帖
267
发表于 2011-3-5 13:24:48 | 显示全部楼层
你全键盘了?

点评

[……好象没有……]  发表于 2011-3-5 13:53
回复

使用道具 举报

梦石
0
星屑
310
在线时间
953 小时
注册时间
2007-4-25
回帖
798
发表于 2011-3-6 13:37:19 | 显示全部楼层
试试以下两项:

1、把 Scene_Map 122 行的 trigger? 改为 press? => if Input.trigger?(Input::B)

2、插入这段脚本后再试:
  1. class << Input
  2.   @@get_async_key_state = Win32API.new('user32', 'GetAsyncKeyState', 'i', 'i')
  3.   alias original_trigger? trigger?
  4.   def trigger?(key)
  5.     if Input::B == key
  6.       return 0 != (@@get_async_key_state.call(0x1B) & 0x8000) ||
  7.              0 != (@@get_async_key_state.call(0x58) & 0x8000)
  8.     else
  9.       return original_trigger?(key)
  10.     end
  11.   end
  12. end
复制代码

点评

第一个和场景无关,是我随便找了一个场景。让你试试把 trigger? 改为 press? 是因为默认所有 Input::X 都是通过 trigger 判定的。  发表于 2011-3-6 14:33
[方法一不用试(任何场景包括存档).方法二我会试试的.]  发表于 2011-3-6 14:05
su@rpg.blue:~> repeat 1 fortune
Matz is nice, so we are nice.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部