Skip to content

Commit fff12c5

Browse files
committed
Added helper methods to enums used for input polling
1 parent b05ff70 commit fff12c5

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

src/raylib-cr/raylib.cr

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,22 @@ lib Raylib
156156
Menu = 82
157157
VolumeUp = 24
158158
VolumeDown = 25
159+
160+
def up?
161+
Raylib.key_up?(self.to_i)
162+
end
163+
164+
def down?
165+
Raylib.key_down?(self.to_i)
166+
end
167+
168+
def pressed?
169+
Raylib.key_pressed?(self.to_i)
170+
end
171+
172+
def released?
173+
Raylib.key_released?(self.to_i)
174+
end
159175
end
160176

161177
enum MouseButton
@@ -166,6 +182,22 @@ lib Raylib
166182
Extra = 4
167183
Forward = 5
168184
Back = 6
185+
186+
def up?
187+
Raylib.mouse_button_up?(self.to_i)
188+
end
189+
190+
def released?
191+
Raylib.mouse_button_released?(self.to_i)
192+
end
193+
194+
def down?
195+
Raylib.mouse_button_down?(self.to_i)
196+
end
197+
198+
def pressed?
199+
Raylib.mouse_button_pressed?(self.to_i)
200+
end
169201
end
170202

171203
enum MouseCursor
@@ -182,6 +214,17 @@ lib Raylib
182214
NotAllowed = 10
183215
end
184216

217+
enum Crixel::Gamepad::Player
218+
One = 0
219+
Two = 1
220+
Three = 2
221+
Four = 3
222+
223+
def available?
224+
Raylib.gamepad_available?(self.value)
225+
end
226+
end
227+
185228
enum GamepadButton
186229
Unknown = 0
187230
LeftFaceUp = 1
@@ -201,6 +244,22 @@ lib Raylib
201244
MiddleRight = 15
202245
LeftThumb = 16
203246
RightThumb = 17
247+
248+
def up?(player : Player)
249+
Raylib.gamepad_button_up?(player.to_i, self.to_i)
250+
end
251+
252+
def down?(player : Player)
253+
Raylib.gamepad_button_down?(player.to_i, self.to_i)
254+
end
255+
256+
def pressed?(player : Player)
257+
Raylib.gamepad_button_pressed?(player.to_i, self.to_i)
258+
end
259+
260+
def released?(player : Player)
261+
Raylib.gamepad_button_released?(player.to_i, self.to_i)
262+
end
204263
end
205264

206265
enum GamepadAxis

0 commit comments

Comments
 (0)