Aggiungi supporto per lo scrolling degli assi nella classe KeyBindings e integra la gestione degli eventi di movimento degli assi nella classe GameWindow
This commit is contained in:
@@ -60,3 +60,6 @@ class KeyBindings:
|
||||
elif self.scrolling_direction == "Right":
|
||||
self.scroll_cursor(x=1)
|
||||
self.scrolling += 1
|
||||
|
||||
def axis_scroll(self, x, y):
|
||||
self.scroll_cursor(bool(x)*1, bool(y)*1)
|
||||
+4
-1
@@ -32,7 +32,7 @@ class GameWindow:
|
||||
self.factory = sdl2.ext.SpriteFactory(renderer=self.renderer)
|
||||
self.fonts = self.generate_fonts("assets/decterm.ttf")
|
||||
self.running = True
|
||||
self.key_down, self.key_up = key_callback
|
||||
self.key_down, self.key_up, self.axis_scroll = key_callback
|
||||
self.performance = 0
|
||||
|
||||
def load_joystick(self):
|
||||
@@ -155,6 +155,9 @@ class GameWindow:
|
||||
elif event.type == sdl2.SDL_JOYBUTTONUP:
|
||||
key = event.jbutton.button
|
||||
self.key_up(key)
|
||||
elif event.type == sdl2.SDL_JOYAXISMOTION:
|
||||
self.axis_scroll(event.jaxis.axis, event.jaxis.value)
|
||||
|
||||
|
||||
# Disegna qui gli sprite
|
||||
self.renderer.present()
|
||||
|
||||
@@ -15,7 +15,8 @@ class MiceMaze(controls.KeyBindings):
|
||||
self.cell_size = 40
|
||||
self.full_screen = False
|
||||
self.engine = engine.GameWindow(self.map.width, self.map.height,
|
||||
self.cell_size, "Mice!", key_callback=(self.key_pressed, self.key_released))
|
||||
self.cell_size, "Mice!",
|
||||
key_callback=(self.key_pressed, self.key_released, self.axis_scroll))
|
||||
self.pointer = (random.randint(1, self.map.width-2), random.randint(1, self.map.height-2))
|
||||
self.scroll_cursor()
|
||||
self.points = 0
|
||||
|
||||
Reference in New Issue
Block a user