Module: BeltsEngine::Tools::Input::Mouse
- Included in:
- BeltsEngine::Tools::Input
- Defined in:
- lib/belts_engine/tools/input/mouse.rb
Constant Summary collapse
- BUTTONS =
[:mouse_1, :mouse_2, :mouse_3].freeze
Instance Method Summary collapse
- #button?(button) ⇒ Boolean
- #button_down?(button) ⇒ Boolean
- #button_up?(button) ⇒ Boolean
- #mouse(axis) ⇒ Object
- #update_buttons(changes) ⇒ Object
- #update_position(x, y) ⇒ Object
Instance Method Details
#button?(button) ⇒ Boolean
7 |
# File 'lib/belts_engine/tools/input/mouse.rb', line 7 def () = @mouse_state[] |
#button_down?(button) ⇒ Boolean
8 |
# File 'lib/belts_engine/tools/input/mouse.rb', line 8 def () = @mouse_state[] && !@mouse_previous_state[] |
#button_up?(button) ⇒ Boolean
9 |
# File 'lib/belts_engine/tools/input/mouse.rb', line 9 def () = !@mouse_state[] && @mouse_previous_state[] |
#mouse(axis) ⇒ Object
10 |
# File 'lib/belts_engine/tools/input/mouse.rb', line 10 def mouse(axis) = @mouse_state[axis] |
#update_buttons(changes) ⇒ Object
12 13 14 15 |
# File 'lib/belts_engine/tools/input/mouse.rb', line 12 def (changes) @mouse_previous_state = @mouse_state.dup @mouse_state.merge!(changes) end |
#update_position(x, y) ⇒ Object
17 18 19 20 |
# File 'lib/belts_engine/tools/input/mouse.rb', line 17 def update_position(x, y) @mouse_state[:x] = x @mouse_state[:y] = y end |