Ruby Gosu,按键时如何检测?
当玩家按下左光标或右光标时,我想左右移动我的角色Ruby Gosu,按键时如何检测?,ruby,libgosu,Ruby,Libgosu,当玩家按下左光标或右光标时,我想左右移动我的角色 按下按键时,如何在Gosu中的更新功能中进行检测?有两种方法可以检测按键何时按下 使用事件侦听器 如果在窗口具有焦点时按下按钮,则在“更新”之前调用此方法 理想情况下,当您只想在按钮从释放到按下的瞬间触发某个事件(射击、跳跃等) 检查此帧中的按钮是否已按下 返回当前是否按下按钮id 理想情况下,当您想继续做某事时,按键仍然按下(移动,…) 以下是包含两个系统的代码: class MyGame < Gosu::Window
按下按键时,如何在Gosu中的
更新功能中进行检测?有两种方法可以检测按键何时按下
使用事件侦听器
如果在窗口具有焦点时按下按钮,则在“更新”之前调用此方法
理想情况下,当您只想在按钮从释放到按下的瞬间触发某个事件(射击、跳跃等)
检查此帧中的按钮是否已按下
返回当前是否按下按钮id
理想情况下,当您想继续做某事时,按键仍然按下(移动,…)
以下是包含两个系统的代码:
class MyGame < Gosu::Window
def initialize
@x = 100
@y = 100
@velocity = 3
end
def button_down(button_id)
case button_id
when Gosu::KB_ESCAPE
close
when Gosu::KB_SPACE
shoot
else
super
end
end
def update
move_left if Gosu.button_down? Gosu::KB_LEFT
move_right if Gosu.button_down? Gosu::KB_RIGHT
move_up if Gosu.button_down? Gosu::KB_UP
move_down if Gosu.button_down? Gosu::KB_DOWN
end
def shoot
puts "Shoot!"
end
def move_left
@x -= @velocity
end
def move_right
@x += @velocity
end
def move_up
@y -= @velocity
end
def move_down
@y += @velocity
end
end
class MyGame
Gosu.按钮按下?(Gosu:)
这是你的工作清单
Gosu.button_down?(Gosu::<BUTTON>)