diff options
Diffstat (limited to 'src/macroknight')
-rw-r--r-- | src/macroknight/entities.hy | 17 | ||||
-rw-r--r-- | src/macroknight/game.hy | 3 |
2 files changed, 18 insertions, 2 deletions
diff --git a/src/macroknight/entities.hy b/src/macroknight/entities.hy index 666b06b..812193e 100644 --- a/src/macroknight/entities.hy +++ b/src/macroknight/entities.hy @@ -54,7 +54,9 @@ (defn __init__ [self id tile tile-size x y] (.__init__ (super) id tile tile-size x y) (setv self.jumping False) - (setv self.jump-move 0)) + (setv self.jump-move 0) + (setv self.moves []) + (setv self._disp_surf (.copy self._surf))) (defn move [self move] (.append self.moves move) @@ -72,5 +74,16 @@ (defn ground [self] (setv self.jump-move 0)) + (defn animate [self] + (let [x-move (get self.total-move 0)] + (setv self._disp_surf + (cond + (< x-move 0) (pygame.transform.flip self._surf True False) + (> x-move 0) (.copy self._surf) + True self._disp_surf)))) + (defn flush [self] - (setv self.moves []))) + (setv self.moves [])) + + (defn [property] surf [self] + self._disp_surf)) diff --git a/src/macroknight/game.hy b/src/macroknight/game.hy index 1676e5a..005f356 100644 --- a/src/macroknight/game.hy +++ b/src/macroknight/game.hy @@ -139,11 +139,14 @@ pygame.K_w (.jump player) pygame.K_d (.move player #(player.SPEED 0)))) + + (try (when (any ongoing_inputs) (for [entity entities] (apply-collisions entity entities))) + (.animate player) (.flush player) ;; Apply systems |