Codeupdate gamemenu
This commit is contained in:
@@ -94,6 +94,8 @@ class GameObject():
|
||||
else:
|
||||
self.__rectobjekt = pygame.draw.rect(self.__surface, self.__color, [self.__pos_x, self.__pos_y,self.__size_rect["x"],self.__size_rect["y"]])
|
||||
|
||||
def get_position(self):
|
||||
return (self.__pos_x, self.__pos_y)
|
||||
|
||||
def get_rect(self):
|
||||
return self.__rectobjekt
|
||||
@@ -153,16 +155,57 @@ def spawn_entities(x:int):
|
||||
count = 0
|
||||
for y in range(x):
|
||||
Entity = GameObject("Entitiy-"+str(count), rand.randint(1,MAINSCREEN_SIZE[0]), rand.randint(1,MAINSCREEN_SIZE[1]), rand.randint(1,15))
|
||||
Objects.append(Entity)
|
||||
Entity_rect = Entity.get_rect()
|
||||
|
||||
for y in Objects:
|
||||
y:GameObject
|
||||
print(y.get_position())
|
||||
if(y.get_position()[0] == Entity.get_position()[0] or
|
||||
y.get_position()[0] <= Entity.get_position()[0]+10 or
|
||||
y.get_position()[0] <= Entity.get_position()[0]-10):
|
||||
print("Überlagerung")
|
||||
Objects.remove(y)
|
||||
#if(pygame.rect.Rect.colliderect(y)):
|
||||
# print("Kollision, neuberechnung")
|
||||
#Neuberechnung der Cluster, falls Kollision mit bestehenden Clustern vorliegt
|
||||
Objects.append(Entity)
|
||||
count += 1
|
||||
for x in Objects:
|
||||
print(x)
|
||||
return list(Objects)
|
||||
|
||||
"""def spawn_entities(x:int):
|
||||
entity_count = x
|
||||
count = 0
|
||||
Objects = list()
|
||||
print("Erstelle "+str(x)+" Objekte")
|
||||
while(entity_count != 0):
|
||||
Entity = GameObject("Entitiy-"+str(count), rand.randint(1,MAINSCREEN_SIZE[0]), rand.randint(1,MAINSCREEN_SIZE[1]), rand.randint(1,15))
|
||||
Entity_pos = Entity.get_position()
|
||||
|
||||
if(count == 0):
|
||||
Objects.append(Entity)
|
||||
entity_count -= 1
|
||||
print("Erstes Objekt erstellt")
|
||||
else:
|
||||
for x in Objects:
|
||||
x:GameObject
|
||||
#print(Entity_pos)
|
||||
#print(x.get_position())
|
||||
if(Entity_pos[0] <= (x.get_position()[0]-60) or Entity_pos[0] >= (x.get_position()[0] +60)):
|
||||
if(Entity_pos[1] <= (x.get_position()[1]-60) or (Entity_pos[1] >= x.get_position()[1] +60)):
|
||||
Objects.append(Entity)
|
||||
entity_count -= 1
|
||||
|
||||
|
||||
count += 1
|
||||
print("Versuch: "+str(count), end="\r")
|
||||
if(count == 20): break
|
||||
|
||||
return list(Objects)"""
|
||||
|
||||
|
||||
|
||||
|
||||
Player = GameObject("Player", 10, 10, 10, is_player=False)
|
||||
|
||||
@@ -177,7 +220,7 @@ class Game():
|
||||
|
||||
x = 3600
|
||||
invert = False
|
||||
spawned_entities = spawn_entities(2) #Spawnt eine definierte Anzahl an GameObjekten
|
||||
spawned_entities = spawn_entities(10) #Spawnt eine definierte Anzahl an GameObjekten
|
||||
count_spawend_enities = len(spawned_entities)
|
||||
#Fenster-Hauptschleife
|
||||
while active == True:
|
||||
@@ -185,7 +228,7 @@ while active == True:
|
||||
for event in pygame.event.get():
|
||||
if (event.type == pygame.QUIT):
|
||||
print("Programm wird geschlossen!")
|
||||
print(spawned_entities)
|
||||
print(spawned_entities, end="\n")
|
||||
active = False
|
||||
elif (event.type == pygame.KEYDOWN):
|
||||
if (event.key == pygame.K_UP):
|
||||
@@ -216,40 +259,19 @@ while active == True:
|
||||
|
||||
if(count_hidden_entities == count_spawend_enities):
|
||||
print("WIN!!!")
|
||||
break
|
||||
menu.enable()
|
||||
menu.add.label("WIN", "win", 10)
|
||||
menu.mainloop(MAINSCREEN)
|
||||
#break
|
||||
|
||||
|
||||
pygame.draw.line(MAINSCREEN, (0,0,0), (10,0),(10,MAINSCREEN_SIZE[1]))
|
||||
|
||||
if(x == 0):
|
||||
for y in spawned_entities:
|
||||
y.hide()
|
||||
pass
|
||||
x -= 1
|
||||
|
||||
|
||||
"""
|
||||
rect1 = pygame.draw.rect(MAINSCREEN, (0,0,0), [ballpos_x,ballpos_y,100,100])
|
||||
if(not invert):
|
||||
#if ballpos_x <= (MAINSCREEN.get_size()[0]): ballpos_x += 1
|
||||
if ballpos_y <= (MAINSCREEN.get_size()[1]): ballpos_y += 1
|
||||
#if(ballpos_x >= MAINSCREEN.get_size()[0]): ballpos_x = int(-100)
|
||||
if(ballpos_y >= MAINSCREEN.get_size()[1]): ballpos_y = int(-100)
|
||||
"""
|
||||
|
||||
"""
|
||||
Lässt das Rechteck diagonal auf- und ablaufen
|
||||
if(not invert):
|
||||
if ballpos_x < (MAINSCREEN.get_size()[0]-100): ballpos_x += 1
|
||||
if ballpos_y < (MAINSCREEN.get_size()[1]-100): ballpos_y += 1
|
||||
|
||||
else:
|
||||
if ballpos_x != 0: ballpos_x -= 1
|
||||
if ballpos_y != 0: ballpos_y -= 1
|
||||
|
||||
if(ballpos_x == (MAINSCREEN.get_size()[0]-100) and ballpos_y == (MAINSCREEN.get_size()[1]-100)):
|
||||
invert = True
|
||||
if(ballpos_x == 0 and ballpos_y == 0):
|
||||
invert = False
|
||||
"""
|
||||
#print("Objekt-Koordinaten= X: "+str(rect1.x)+" Y: "+str(rect1.y)+"", end="\r")
|
||||
|
||||
#Displayflip sorgt dafür, dass das Fenster entsprechend der Tickrate aktualisiert wird
|
||||
|
||||
Reference in New Issue
Block a user