]> Skullheadx's Git Forge - Pygame-Jam.git/commitdiff
pet drawing
authorlbcmk <30442978+lbcmk@users.noreply.github.com>
Wed, 13 Jul 2022 21:50:47 +0000 (17:50 -0400)
committerlbcmk <30442978+lbcmk@users.noreply.github.com>
Wed, 13 Jul 2022 21:50:47 +0000 (17:50 -0400)
Game.py
Pet.py

diff --git a/Game.py b/Game.py
index b4f9f5aa1765d0c33ab52241f78f0b3edc3f697e..9c9e73706aaec23e180542294111c30752b905ac 100644 (file)
--- a/Game.py
+++ b/Game.py
@@ -64,7 +64,7 @@ class Game:
                              self.collision_layer["potion"],
                              self.collision_layer["spike"],
                              self.collision_layer["arrow"])
-        self.pet = Pet(center, self.collision_layer["pet"], [self.collision_layer["world"]])
+        self.pet = Pet(center, self.collision_layer["pet"], [self.collision_layer["world"]])
         self.enemies = [Enemy(pos, self.collision_layer["enemy"],
                               [self.collision_layer["player"], self.collision_layer["world"],
                                self.collision_layer["enemy"]]) for pos in
@@ -158,7 +158,7 @@ class Game:
             Setup.camera_offset = self.player.update(delta)
             Setup.camera_offset.x = max(0, min(Setup.camera_offset.x, MAP_WIDTH - SCREEN_WIDTH))
             Setup.camera_offset.y = max(0, min(Setup.camera_offset.y, MAP_HEIGHT - SCREEN_HEIGHT))
-
+            
             for i, enemy in enumerate(self.enemies):
                 enemy.update(delta, self.player)
                 if enemy.dead:
@@ -239,7 +239,7 @@ class Game:
             if self.level == 4:
                 self.bosshealthBar.update()
 
-        # self.pet.update(delta, self.player, self.camera_pos)
+        self.pet.update(delta, self.player)
 
     def draw(self, surf):
 
@@ -378,6 +378,7 @@ class Game:
             self.jeff.draw(surf)
         self.player.draw(surf)
 
+
         # self.dialogue.draw(surf, self.player, "Next dimension, next portal...", 4, 1)
         # self.dialogue.draw(surf, self.player, "It's really that simple.", 4, 2)
         # for o,text in self.hints:
@@ -404,7 +405,7 @@ class Game:
         # Debug Lines. DO NOT CROSS THEM!
         # pg.draw.line(surf, (255, 0, 0), -Setup.camera_offset, pg.Vector2(SCREEN_WIDTH, -Setup.camera_offset.y), 10)
         # pg.draw.line(surf, (255, 0, 0), -Setup.camera_offset, pg.Vector2(-Setup.camera_offset.x, SCREEN_HEIGHT), 10)
-        # self.pet.draw(surf)
+        self.pet.draw(surf, self.player.position)
 
         if (self.fade == True):
             self.fadeT.update(True)
diff --git a/Pet.py b/Pet.py
index 4e58ecc9c1a60d054f22b9df25338cfdeca88349..1d41605541e3b54fadd6d923966a62e07c45eadf 100644 (file)
--- a/Pet.py
+++ b/Pet.py
@@ -9,12 +9,12 @@ class Pet(Actor):
 
     move_gif = Image.open("Assets/SNAKE.gif")
     move_frames = []
-    #for i in range(move_gif.n_frames):
-        #idk how this works
-        #move_frames.append(pg.transform.scale(pil_to_game(get_gif_frame(move_gif, i)), (200, 200)))
+    for i in range(move_gif.n_frames):
+        move_frames.append(pg.transform.scale(pil_to_game(get_gif_frame(move_gif, i)), (50, 50)))
 
     def __init__(self, pos, collision_layer, collision_mask):
         super().__init__(pos, collision_layer, collision_mask)
+        self.frame = 0
     
     def update(self, delta, target):
         super().update(delta)
@@ -22,3 +22,10 @@ class Pet(Actor):
         self.follow_target(target, stop_dist=70)
 
         self.position, self.velocity = self.move_and_collide(self.position, self.velocity, delta)
+
+    def draw(self, surf, plpos=0):
+        surf.blit(self.move_frames[math.floor(self.frame)], get_display_rect(self.get_collision_rect()))
+        # self.position = plpos
+        if(self.frame + 0.1 < len(self.move_frames)):
+            self.frame += 0.08
+        else: self.frame = 0