Added new movement
This commit is contained in:
@@ -12,6 +12,8 @@ class GameObject(object):
|
|||||||
self.rect:pygame.Rect
|
self.rect:pygame.Rect
|
||||||
self.objects.append(self)
|
self.objects.append(self)
|
||||||
|
|
||||||
|
self.keymap = {"up":False, "down":False, "left":False, "right":False}
|
||||||
|
|
||||||
def get_objectinfo(self):
|
def get_objectinfo(self):
|
||||||
print(F"Gameobject-Info: \n",
|
print(F"Gameobject-Info: \n",
|
||||||
F"Name: {self.name}\n",
|
F"Name: {self.name}\n",
|
||||||
@@ -41,19 +43,22 @@ class Player(GameObject):
|
|||||||
self.screen = screen
|
self.screen = screen
|
||||||
|
|
||||||
def handle_input(self, event:pygame.event.EventType):
|
def handle_input(self, event:pygame.event.EventType):
|
||||||
keys =pygame.key.get_pressed()
|
|
||||||
if(event.type == pygame.KEYDOWN):
|
|
||||||
print(event)
|
if(event.type == pygame.KEYDOWN and event.key == pygame.K_LEFT):
|
||||||
if(keys[pygame.K_LEFT]):
|
self.keymap["left"] = True
|
||||||
self.move(-self._speed)
|
|
||||||
if(keys[pygame.K_RIGHT]):
|
elif(event.type == pygame.KEYUP and event.key == pygame.K_LEFT):
|
||||||
self.move(self._speed)
|
self.keymap["left"] = False
|
||||||
#Deaktiviert, vorerst soll Bewegung nur rechts oder links möglich sein
|
|
||||||
#if(event.key == pygame.K_UP):
|
|
||||||
# self.move(0, -self._speed)
|
if(event.type == pygame.KEYDOWN and event.key == pygame.K_RIGHT):
|
||||||
#if(event.key == pygame.K_DOWN):
|
self.keymap["right"] = True
|
||||||
# self.move(0, self._speed)
|
|
||||||
if(event.key == pygame.K_SPACE):
|
elif(event.type == pygame.KEYUP and event.key == pygame.K_RIGHT):
|
||||||
|
self.keymap["right"] = False
|
||||||
|
|
||||||
|
if(event.type == pygame.KEYDOWN and event.key == pygame.K_SPACE):
|
||||||
#Fiiirrreee in the hole
|
#Fiiirrreee in the hole
|
||||||
print("Feuer!")
|
print("Feuer!")
|
||||||
self.fire(self.screen)
|
self.fire(self.screen)
|
||||||
@@ -64,6 +69,13 @@ class Player(GameObject):
|
|||||||
if y != 0:
|
if y != 0:
|
||||||
self.pos_y += y
|
self.pos_y += y
|
||||||
|
|
||||||
|
def move(self, direction):
|
||||||
|
if(direction == "left"):
|
||||||
|
self.pos_x -= self._speed
|
||||||
|
|
||||||
|
if(direction == "right"):
|
||||||
|
self.pos_x += self._speed
|
||||||
|
|
||||||
def fire(self, screen):
|
def fire(self, screen):
|
||||||
shot = Projectile(self.name, self.pos_x+(self.width/2),self.pos_y-self.height,5,10, screen)
|
shot = Projectile(self.name, self.pos_x+(self.width/2),self.pos_y-self.height,5,10, screen)
|
||||||
|
|
||||||
@@ -78,7 +90,8 @@ class Player(GameObject):
|
|||||||
#print("Playerschuss!")
|
#print("Playerschuss!")
|
||||||
|
|
||||||
if(key == "Enemy"):
|
if(key == "Enemy"):
|
||||||
print(object.pos_x, " ", object.pos_y)
|
#print(object.pos_x, " ", object.pos_y)
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -122,6 +135,7 @@ class Projectile(GameObject):
|
|||||||
if(direction == "DOWN"):
|
if(direction == "DOWN"):
|
||||||
self.pos_y += self.speed
|
self.pos_y += self.speed
|
||||||
if(self.pos_y >= self.screen.get_size()[1]):
|
if(self.pos_y >= self.screen.get_size()[1]):
|
||||||
print()
|
pass
|
||||||
|
#print()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
6
test.py
6
test.py
@@ -35,6 +35,12 @@ while(gamestate):
|
|||||||
gamestate = False
|
gamestate = False
|
||||||
player.handle_input(event)
|
player.handle_input(event)
|
||||||
|
|
||||||
|
if(player.keymap["left"] == True):
|
||||||
|
player.move("left")
|
||||||
|
print("links")
|
||||||
|
if(player.keymap["right"] == True):
|
||||||
|
player.move("right")
|
||||||
|
print("rechts")
|
||||||
|
|
||||||
image = screen.blit(testimage, (pos_x, pos_y))
|
image = screen.blit(testimage, (pos_x, pos_y))
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user