Compare commits
2 Commits
60669e1672
...
dc14d8a91d
| Author | SHA1 | Date | |
|---|---|---|---|
| dc14d8a91d | |||
| a1ee99e713 |
@@ -18,16 +18,23 @@ clock = pygame.time.Clock()
|
||||
ballpos_x = 10
|
||||
ballpos_y = 10
|
||||
|
||||
#TODO: Make Grid for running Rect
|
||||
|
||||
class GameObject():
|
||||
__name = str()
|
||||
__pos_x = int()
|
||||
__pos_y = int()
|
||||
__color = (0,0,0)
|
||||
<<<<<<< HEAD
|
||||
__rect_size = []
|
||||
=======
|
||||
__size_rect = {"x":50, "y":50}
|
||||
>>>>>>> 60669e167271ec3a5538d5900155661e584b9ec0
|
||||
__movespeed = int()
|
||||
__rectobjekt = pygame.Rect
|
||||
__surface = MAINSCREEN
|
||||
__removed = False
|
||||
__collided = False
|
||||
|
||||
__movedirection = {"up":False, "down":False, "left":False, "right":False}
|
||||
|
||||
@@ -84,7 +91,11 @@ class GameObject():
|
||||
#font = pygame.font.SysFont(None, 70)
|
||||
#text = font.render("TEST", True, (0,0,0) )
|
||||
if(self.__removed == False):
|
||||
<<<<<<< HEAD
|
||||
self.__rectobjekt = pygame.draw.rect(self.__surface, self.__color, [self.__pos_x, self.__pos_y,20,20])
|
||||
=======
|
||||
self.__rectobjekt = pygame.draw.rect(self.__surface, self.__color, [self.__pos_x, self.__pos_y,self.__size_rect["x"],self.__size_rect["y"]])
|
||||
>>>>>>> 60669e167271ec3a5538d5900155661e584b9ec0
|
||||
|
||||
def get_rect(self):
|
||||
return self.__rectobjekt
|
||||
@@ -92,15 +103,30 @@ class GameObject():
|
||||
def get_movespeed(self):
|
||||
return self.__movespeed
|
||||
|
||||
def is_collided(self):
|
||||
return self.__collided
|
||||
|
||||
def set_collided(self):
|
||||
self.__collided = True
|
||||
|
||||
def collide(self, GameObject):
|
||||
#print(GameObject)
|
||||
#print(GameObject.get_rect())
|
||||
if(self.get_rect().x == GameObject.get_rect().x and self.get_rect().y == GameObject.get_rect().y):
|
||||
"""TODO: Hitbox with Objectsize"""
|
||||
"""TODO: Hitbox with Objectsize"""
|
||||
|
||||
if(pygame.rect.Rect.colliderect(self.__rectobjekt, GameObject.get_rect())):
|
||||
print("Kollision")
|
||||
pass
|
||||
if(pygame.rect.Rect.colliderect(self.__rectobjekt, GameObject.get_rect())):
|
||||
print("\nKollision") #Funktioniert für das erste!
|
||||
self.set_collided()
|
||||
self.remove() #Löscht das Objekt nach einem Zusammenstoß mit Playerobject
|
||||
|
||||
def draw_follower(self, *Entities:tuple):
|
||||
"""Für alle Collidierten Gameobjects"""
|
||||
for x in Entities:
|
||||
y = GameObject(x)
|
||||
if(y.is_collided() == True):
|
||||
print("REST")
|
||||
|
||||
|
||||
|
||||
def remove(self):
|
||||
print("Gameoject mit der ID " + self.__name + " gelöscht!")
|
||||
@@ -118,14 +144,17 @@ def spawn_entities(x:int):
|
||||
return tuple(Objects)
|
||||
|
||||
|
||||
object1 = GameObject("Testobject", 50, 50)
|
||||
object2 = GameObject("Testobject2", 100, 100)
|
||||
Player = GameObject("Testobject", 10, 10)
|
||||
|
||||
background = pygame.surface.Surface((640,480))
|
||||
|
||||
x = 3600
|
||||
invert = False
|
||||
<<<<<<< HEAD
|
||||
spawned_entities = spawn_entities(50) #Spawnt eine definierte Anzahl an GameObjekten
|
||||
=======
|
||||
spawned_enteties = spawn_entities(50)
|
||||
>>>>>>> 60669e167271ec3a5538d5900155661e584b9ec0
|
||||
#Fenster-Hauptschleife
|
||||
while active == True:
|
||||
MAINSCREEN.fill((255,255,255))
|
||||
@@ -136,20 +165,28 @@ while active == True:
|
||||
elif (event.type == pygame.KEYDOWN):
|
||||
if (event.key == pygame.K_UP):
|
||||
print("Keydown")
|
||||
object1.change_direction("up")
|
||||
|
||||
Player.change_direction("up")
|
||||
elif (event.key == pygame.K_DOWN):
|
||||
print("Keydown")
|
||||
object1.change_direction("down")
|
||||
#rect1.move(ballpos_x, ballpos_y)
|
||||
|
||||
Player.change_direction("down")
|
||||
elif (event.key == pygame.K_RIGHT):
|
||||
print("Keydown")
|
||||
object1.change_direction("right")
|
||||
#rect1.move(ballpos_x, ballpos_y)
|
||||
ballpos_x += 10
|
||||
Player.change_direction("right")
|
||||
elif (event.key == pygame.K_LEFT):
|
||||
print("Keydown")
|
||||
<<<<<<< HEAD
|
||||
Player.change_direction("left")
|
||||
|
||||
Player.draw()
|
||||
Player.move(5)
|
||||
|
||||
for y in spawned_entities:
|
||||
y.draw()
|
||||
y.collide(Player)
|
||||
y.remove
|
||||
|
||||
Player.draw_follower(spawned_entities)
|
||||
=======
|
||||
object1.change_direction("left")
|
||||
#rect1.move(ballpos_x, ballpos_y)
|
||||
ballpos_x -= 10
|
||||
@@ -160,9 +197,10 @@ while active == True:
|
||||
|
||||
object1.draw()
|
||||
object1.move(0.5)
|
||||
>>>>>>> 60669e167271ec3a5538d5900155661e584b9ec0
|
||||
|
||||
if(x == 0):
|
||||
for y in spawned_enteties:
|
||||
for y in spawned_entities:
|
||||
y.remove()
|
||||
pass
|
||||
x -= 1
|
||||
|
||||
Reference in New Issue
Block a user