Cloud37 6 сар өмнө
parent
commit
c302849739

BIN
saves/save.data


+ 24 - 0
src/engine/utils/animations.py

@@ -107,6 +107,30 @@ class PlayerAnimation(Animation):
                         sprite = pygame.transform.rotate(sprite, 270)
                         sprite = pygame.transform.rotate(sprite, 270)
                 return sprite
                 return sprite
                 
                 
+        # On change les axes si la gravité n'est pas vers la bas
+        if self.player.gravity_orientation == Gravity.LEFT:
+            if self.player.velocity.y != 0:
+                self.x_velocity = self.player.velocity.y
+            if self.player.velocity.x != 0:
+                self.y_velocity = -self.player.velocity.x
+                
+        elif self.player.gravity_orientation == Gravity.UP:
+            if self.player.velocity.x != 0:
+                self.x_velocity = -self.player.velocity.x
+            if self.player.velocity.y != 0:
+                self.y_velocity = -self.player.velocity.y
+    
+        elif self.player.gravity_orientation == Gravity.RIGHT:
+            if self.player.velocity.y != 0:
+                self.x_velocity = -self.player.velocity.y
+            if self.player.velocity.x != 0:
+                self.y_velocity = self.player.velocity.x
+        else:
+            if self.player.velocity.x != 0:
+                self.x_velocity = self.player.velocity.x
+            if self.player.velocity.y != 0:
+                self.y_velocity = self.player.velocity.y
+
         # saut et chutes
         # saut et chutes
         if self.player.air_time>0.2 or self.player.is_jumping:
         if self.player.air_time>0.2 or self.player.is_jumping:
             self.last_idle = pygame.time.get_ticks()
             self.last_idle = pygame.time.get_ticks()

+ 3 - 27
src/objects/entities/player/player.py

@@ -296,37 +296,13 @@ class Player(HandlerPlayerEvent, PlayerDisplay):
         """
         """
         fonction qui déplace le player et applique donc la physique et les collisions avec les inputs
         fonction qui déplace le player et applique donc la physique et les collisions avec les inputs
         """
         """
-        
-        # On change les axes si la gravité n'est pas vers la bas
-        if self.gravity_orientation == Gravity.LEFT:
-            if self.velocity.y != 0:
-                self.x_velocity = self.velocity.y
-            if self.velocity.x != 0:
-                self.y_velocity = -self.velocity.x
-                
-        elif self.gravity_orientation == Gravity.UP:
-            if self.velocity.x != 0:
-                self.x_velocity = -self.velocity.x
-            if self.velocity.y != 0:
-                self.y_velocity = -self.velocity.y
-    
-        elif self.gravity_orientation == Gravity.RIGHT:
-            if self.velocity.y != 0:
-                self.x_velocity = -self.velocity.y
-            if self.velocity.x != 0:
-                self.y_velocity = self.velocity.x
-        else:
-            if self.velocity.x != 0:
-                self.x_velocity = self.velocity.x
-            if self.velocity.y != 0:
-                self.y_velocity = self.velocity.y
 
 
         self.air_time += dt # update air time
         self.air_time += dt # update air time
         # set states on ground
         # set states on ground
         if self.collide[self.gravity_orientation]:
         if self.collide[self.gravity_orientation]:
             self.air_time = 0
             self.air_time = 0
             self.is_jumping = False
             self.is_jumping = False
-        
+
         if self.primary_anchor_pos != None and not self.swing:
         if self.primary_anchor_pos != None and not self.swing:
                 self.rope_length = (self.primary_anchor_pos - self.get_center()).magnitude()
                 self.rope_length = (self.primary_anchor_pos - self.get_center()).magnitude()
 
 
@@ -346,8 +322,8 @@ class Player(HandlerPlayerEvent, PlayerDisplay):
                 set_swing(self, self.primary_anchor_pos, self.rope_length)
                 set_swing(self, self.primary_anchor_pos, self.rope_length)
             else:
             else:
                 update_swing(self, dt, map_manager)
                 update_swing(self, dt, map_manager)
-        
-           
+
+
     def update(self, dt: float, map_manager: MapManager) -> None:
     def update(self, dt: float, map_manager: MapManager) -> None:
         """
         """
         Called every frame by the main loop
         Called every frame by the main loop