Project1

标题: 键盘快捷键的问题 [打印本页]

作者: hitlerson    时间: 2008-3-29 05:26
标题: 键盘快捷键的问题
我在游戏的SCENE_MAP里做了个窗口,可以用键盘N键呼出和关闭,但是当我按下N键的时候,窗口在快速的关闭和打开,刷新的很快,只有快速的按键盘才能正常打开.
我是用if Kboard.press?($R_Key_M)判断按键的.请问要怎么做,才能实现快捷键,用正常的按键速度就能控制菜单的显示和关闭 [LINE]1,#dddddd[/LINE]此贴于 2008-3-31 5:49:27 被版主水迭澜提醒,请楼主看到后对本贴做出回应。
[LINE]1,#dddddd[/LINE]
----------------版务----------------
如果问题未解决,请继续提问
如果问题已解决,请结贴
若到末贴发贴时间后一周仍未结贴
管理员会自动为你过期帖子、结贴或强行认可答案(好人卡-1) [LINE]1,#dddddd[/LINE]本贴由论坛斑竹水迭澜结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^
作者: 沉影不器    时间: 2008-3-29 05:28
提示: 作者被禁止或删除 内容自动屏蔽
作者: joshua    时间: 2008-3-29 05:29
用公共事件就可以了,至少我是那么弄的
作者: 9244579    时间: 2008-3-29 05:30
Input.trigger?(Input::C)?
沉影不器 ....顺便。你在某贴问我什么?

作者: hitlerson    时间: 2008-3-29 05:31
以前也没这个问题
今天是用
alias tt_update update
def update
    if Kboard.press?($R_Key_M)
      if @mapset == 1
       @mapset_window.visible = true      
       @mapset_window.refresh if @mapset_window.judge
       @mapset = 2
      else
       @mapset_window.visible = false
       @mapset = 1
     end
   end

就成这样了
作者: hitlerson    时间: 2008-3-29 05:33
键盘脚本用的66上下的全键盘脚本
作者: 沉影不器    时间: 2008-3-29 05:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沉影不器    时间: 2008-3-29 05:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水迭澜    时间: 2008-3-29 05:39
改成if Kboard.trigger?($R_Key_M)

press?是按下时的状态
trigger?是刚按下去那一下
= =大概就这么个意思…… [LINE]1,#dddddd[/LINE]系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
作者: 沉影不器    时间: 2008-3-29 05:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水迭澜    时间: 2008-3-29 05:51
写在update里也只判断一次吧?
作者: hitlerson    时间: 2008-3-29 05:52
def trigger?(rkey)
   result = GetKeyState.call(rkey)
   if @R_Key_Hash[rkey] == 1 and result != 0
     return false
   end
   if result != 0
     @R_Key_Hash[rkey] = 1
     return true
   else
     @R_Key_Hash[rkey] = 0
     return false
   end
end

我的trigger?(rkey)是这样的,不过好象按下去,没反应,怎么回事>?
作者: 水迭澜    时间: 2008-3-29 05:57
我用过这脚本,按了有反应啊- -
你是怎么写的?
rkey要代入键值,比如0x01之类……
觉得麻烦的话可以找另外一个全键盘脚本来参考
作者: hitlerson    时间: 2008-4-1 02:23
不好意思,前几天没上这来看....
不过这个还是有问题,哎




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