diff options
| author | Gene Pasquet <gene@pacerevenue.com> | 2025-05-12 16:53:31 +0200 | 
|---|---|---|
| committer | Gene Pasquet <gene@pacerevenue.com> | 2025-05-12 16:53:31 +0200 | 
| commit | 0d295ec1f69faa7c9e6b8509e3190b85bed8d149 (patch) | |
| tree | 28d744b9b4ac5795dac46b5d6dfaf421d51f6d0d | |
| parent | b6d2a86034802aeea1d2995622b4afa2ea177ea7 (diff) | |
Sort of jumping...
| -rw-r--r-- | src/macroknight/game.hy | 26 | 
1 files changed, 14 insertions, 12 deletions
| diff --git a/src/macroknight/game.hy b/src/macroknight/game.hy index 96bc390..d019a0f 100644 --- a/src/macroknight/game.hy +++ b/src/macroknight/game.hy @@ -1,5 +1,5 @@  (require hy) -(require hyrule) +(require hyrule *)  (import pygame          pytmx.util_pygame [load_pygame]          pprint [pprint]) @@ -66,7 +66,7 @@  (defclass Player [pygame.sprite.Sprite]    (setv fixed False)    (setv SPEED 5) -  (setv JUMP_IMPULSE 5) +  (setv JUMP_IMPULSE 100)    (defn __init__ [self tile initial-x initial-y]      (.__init__ (super)) @@ -103,18 +103,20 @@    (.flush player)    (for [event (pygame.event.get)] -    (match event.type -           pygame.QUIT (setv running False) -           pygame.KEYDOWN (.append ongoing_inputs event.key) -           pygame.KEYUP (.remove ongoing_inputs event.key))) +    (case event.type +          pygame.QUIT (setv running False) +          pygame.KEYDOWN (case event.key +                               pygame.K_ESCAPE (setv running False) +                               pygame.K_w (.move player #(0 (* -1 player.JUMP_IMPULSE))) +                               else (.append ongoing_inputs event.key)) +          pygame.KEYUP (when (in event.key ongoing_inputs) +                         (.remove ongoing_inputs event.key))))    (for [inp ongoing_inputs] -    (match inp -           pygame.K_ESCAPE (setv running False) -           pygame.K_w (.move player #(0 (* -1 player.JUMP_IMPULSE))) -           pygame.K_a (.move player #((* -1 player.SPEED) 0)) -           pygame.K_s (.move player #(0 1)) -           pygame.K_d (.move player #(player.SPEED 0)))) +    (case inp +          pygame.K_a (.move player #((* -1 player.SPEED) 0)) +          pygame.K_s (.move player #(0 1)) +          pygame.K_d (.move player #(player.SPEED 0))))    (for [sprite sprites-group]      (apply-collisions sprite sprites-group)) | 
