From 2171f511452771876ea2a77b5990fe9f909c6147 Mon Sep 17 00:00:00 2001 From: Christian Date: Thu, 8 Aug 2024 15:10:10 +0200 Subject: [PATCH] Changed some classes --- Enemy.py | 20 ++++++++------------ GameObject.py | 20 ++++++++++++++++---- test.py | 14 ++++++++++++-- 3 files changed, 36 insertions(+), 18 deletions(-) diff --git a/Enemy.py b/Enemy.py index ceff145..731a42a 100644 --- a/Enemy.py +++ b/Enemy.py @@ -2,16 +2,12 @@ import pygame import GameObject import Utils -class Enemy(object): - def __init__(self, name, pos_x, pos_y, image) -> None: - spawned_enemy = list() - self.name = name - self.image = image - self.pos_x = pos_x - self.pos_y = pos_y - self.obj = GameObject.GameObject("Enemy", 0, 0, image) - pass +class Enemy(GameObject.GameObject): + def __init__(self, name, pos_x, pos_y, width, height, image=None) -> None: + super().__init__(name, pos_x, pos_y, width, height, image) - def render(self, screen:pygame.Surface): - screen.blit(self.image, (self.pos_x, self.pos_y)) - \ No newline at end of file + + + + #def render(self): + # pass \ No newline at end of file diff --git a/GameObject.py b/GameObject.py index fb489c5..2ce1cc8 100644 --- a/GameObject.py +++ b/GameObject.py @@ -1,22 +1,34 @@ import pygame class GameObject(object): - def __init__(self, name, pos_x, pos_y, image=None,) -> None: + objects = list() + def __init__(self, name, pos_x, pos_y, width, height, image=None) -> None: self.name = name self.pos_x = pos_x self.pos_y = pos_y + self.width = width + self.height = height self.image = image + self.objects.append(self) pass + + def get_objectinfo(self): + print(F"Gameobject-Info: \n", + F"Name: {self.name}\n", + F"Position x: {self.pos_x} y: {self.pos_y}\n", + F"Size = width: {self.width} height: {self.height}" + ) def render(self, screen:pygame.Surface): if(self.image is not None): - screen.blit(self.image, (self.pos_x, self.pos_y)) + screen.blit(self.image, (self.pos_x, self.pos_y, )) else: print("Kein Image hinterlegt!") - - def setpos(self, pos_x, pos_y): self.pos_x = pos_x self.pos_y = pos_y + def setsize(self, width, height): + self.width = width + self.height = height \ No newline at end of file diff --git a/test.py b/test.py index e6b357e..5cb1a61 100644 --- a/test.py +++ b/test.py @@ -19,7 +19,15 @@ testimage = Utils.load_image("Rastergrafik.png") objects = list() -enemy1 = Enemy.Enemy("Penner", 500, 500, image_enemy) +c = 0 +y = 10 +for x in range(10): + objects.append(Enemy.Enemy("Penner", 500, y, 35, 35, image_enemy)) + y += 35 + + + +print(F"{len(GameObject.GameObject.objects)}") gamestate = True @@ -54,13 +62,15 @@ while(gamestate): #Rendere alle Objecte in objects Liste for object in objects: object:GameObject.GameObject + if(pygame.mouse.get_pressed()[0]): object.setpos(mouse_pos[0], mouse_pos[1]) object.render(screen) - enemy1.render(screen) + + #if(mouse_pos <= (image.topleft+image.size) and mouse_pos >= image.topleft): # print("HIIIIITTT!!!!")