Changes on GameObjects class
This commit is contained in:
@@ -3,7 +3,10 @@ import pygame_menu
|
|||||||
import random as rnd
|
import random as rnd
|
||||||
|
|
||||||
pygame.init()
|
pygame.init()
|
||||||
MAINSCREEN = pygame.display.set_mode((640,480))
|
|
||||||
|
MAINSCREEN_SIZE = (1024,768)
|
||||||
|
MAINSCREEN = pygame.display.set_mode(MAINSCREEN_SIZE)
|
||||||
|
|
||||||
pygame.display.set_caption("Testgame")
|
pygame.display.set_caption("Testgame")
|
||||||
|
|
||||||
WEISS = ( 255, 255, 255)
|
WEISS = ( 255, 255, 255)
|
||||||
@@ -20,6 +23,7 @@ class GameObject():
|
|||||||
__pos_x = int()
|
__pos_x = int()
|
||||||
__pos_y = int()
|
__pos_y = int()
|
||||||
__color = (0,0,0)
|
__color = (0,0,0)
|
||||||
|
__size_rect = {"x":50, "y":50}
|
||||||
__movespeed = int()
|
__movespeed = int()
|
||||||
__rectobjekt = pygame.Rect
|
__rectobjekt = pygame.Rect
|
||||||
__surface = MAINSCREEN
|
__surface = MAINSCREEN
|
||||||
@@ -47,29 +51,31 @@ class GameObject():
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
def move(self, *speed:int):
|
def move(self, *speed:int):
|
||||||
MOVE_SPEED = 1
|
MOVE_SPEED = 1 #Defaultspeed
|
||||||
#self.__rectobjekt.x += MOVE_SPEED
|
|
||||||
|
|
||||||
if(self.__movedirection['up']):
|
if(self.__movedirection['up']):
|
||||||
if(not speed): self.__pos_y -= MOVE_SPEED
|
if(not speed): self.__pos_y -= MOVE_SPEED
|
||||||
else: self.__pos_y -= speed[0]
|
else: self.__pos_y -= speed[0]
|
||||||
if(self.__pos_y <= -100):
|
if(self.__pos_y <= -self.__size_rect["y"]):
|
||||||
self.__pos_y += 580
|
self.__pos_y = MAINSCREEN_SIZE[1]
|
||||||
|
|
||||||
elif(self.__movedirection['down']):
|
elif(self.__movedirection['down']):
|
||||||
if(not speed): self.__pos_y += MOVE_SPEED
|
if(not speed): self.__pos_y += MOVE_SPEED
|
||||||
else: self.__pos_y += speed[0]
|
else: self.__pos_y += speed[0]
|
||||||
if(self.__pos_y >= (self.__surface.get_size()[1])): self.__pos_y = -100
|
if(self.__pos_y >= MAINSCREEN_SIZE[1]):
|
||||||
|
self.__pos_y = -self.__size_rect["y"]
|
||||||
|
|
||||||
elif(self.__movedirection['left']):
|
elif(self.__movedirection['left']):
|
||||||
if(not speed): self.__pos_x -= MOVE_SPEED
|
if(not speed): self.__pos_x -= MOVE_SPEED
|
||||||
else: self.__pos_x -= speed[0]
|
else: self.__pos_x -= speed[0]
|
||||||
if(self.__pos_x <= -100): self.__pos_x = 680
|
if(self.__pos_x <= -self.__size_rect["x"]):
|
||||||
|
self.__pos_x = MAINSCREEN_SIZE[0]
|
||||||
|
|
||||||
elif(self.__movedirection['right']):
|
elif(self.__movedirection['right']):
|
||||||
if(not speed): self.__pos_x += MOVE_SPEED
|
if(not speed): self.__pos_x += MOVE_SPEED
|
||||||
else: self.__pos_x += speed[0]
|
else: self.__pos_x += speed[0]
|
||||||
if(self.__pos_x >= (self.__surface.get_size()[0])): self.__pos_x = -100
|
if(self.__pos_x >= MAINSCREEN_SIZE[0]):
|
||||||
|
self.__pos_x = -self.__size_rect["x"]
|
||||||
|
|
||||||
|
|
||||||
print("Objekt-Koordinaten "+self.__name+"= X: "+str(self.__rectobjekt.x)+" Y: "+str(self.__rectobjekt.y), end="\r")
|
print("Objekt-Koordinaten "+self.__name+"= X: "+str(self.__rectobjekt.x)+" Y: "+str(self.__rectobjekt.y), end="\r")
|
||||||
@@ -78,7 +84,7 @@ class GameObject():
|
|||||||
#font = pygame.font.SysFont(None, 70)
|
#font = pygame.font.SysFont(None, 70)
|
||||||
#text = font.render("TEST", True, (0,0,0) )
|
#text = font.render("TEST", True, (0,0,0) )
|
||||||
if(self.__removed == False):
|
if(self.__removed == False):
|
||||||
self.__rectobjekt = pygame.draw.rect(self.__surface, self.__color, [self.__pos_x, self.__pos_y,100,100])
|
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_rect(self):
|
def get_rect(self):
|
||||||
return self.__rectobjekt
|
return self.__rectobjekt
|
||||||
@@ -105,7 +111,7 @@ class GameObject():
|
|||||||
def spawn_entities(x:int):
|
def spawn_entities(x:int):
|
||||||
Objects = list()
|
Objects = list()
|
||||||
for y in range(x):
|
for y in range(x):
|
||||||
Objects.append(GameObject("TEST", rnd.randint(1,640), rnd.randint(1,480), rnd.randint(1,10)))
|
Objects.append(GameObject("TEST", rnd.randint(1,MAINSCREEN_SIZE[0]), rnd.randint(1,MAINSCREEN_SIZE[1]), rnd.randint(1,15)))
|
||||||
|
|
||||||
for x in Objects:
|
for x in Objects:
|
||||||
print(x)
|
print(x)
|
||||||
@@ -119,7 +125,7 @@ background = pygame.surface.Surface((640,480))
|
|||||||
|
|
||||||
x = 3600
|
x = 3600
|
||||||
invert = False
|
invert = False
|
||||||
spawned_enteties = spawn_entities(5)
|
spawned_enteties = spawn_entities(50)
|
||||||
#Fenster-Hauptschleife
|
#Fenster-Hauptschleife
|
||||||
while active == True:
|
while active == True:
|
||||||
MAINSCREEN.fill((255,255,255))
|
MAINSCREEN.fill((255,255,255))
|
||||||
@@ -147,16 +153,13 @@ while active == True:
|
|||||||
object1.change_direction("left")
|
object1.change_direction("left")
|
||||||
#rect1.move(ballpos_x, ballpos_y)
|
#rect1.move(ballpos_x, ballpos_y)
|
||||||
ballpos_x -= 10
|
ballpos_x -= 10
|
||||||
|
|
||||||
for y in spawned_enteties:
|
for y in spawned_enteties:
|
||||||
y.draw()
|
y.draw()
|
||||||
y.move(y.get_movespeed())
|
y.move(y.get_movespeed())
|
||||||
|
|
||||||
object1.draw()
|
object1.draw()
|
||||||
object1.move(10)
|
object1.move(0.5)
|
||||||
object2.draw()
|
|
||||||
object2.move(1)
|
|
||||||
object2.collide(object1)
|
|
||||||
|
|
||||||
if(x == 0):
|
if(x == 0):
|
||||||
for y in spawned_enteties:
|
for y in spawned_enteties:
|
||||||
|
|||||||
Reference in New Issue
Block a user