aboutsummaryrefslogtreecommitdiff
path: root/Spieler.py
diff options
context:
space:
mode:
Diffstat (limited to 'Spieler.py')
-rw-r--r--Spieler.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/Spieler.py b/Spieler.py
index 0c2f362..e365970 100644
--- a/Spieler.py
+++ b/Spieler.py
@@ -8,8 +8,11 @@ class Spieler(pygame.sprite.Sprite):
self.rect = self.image.get_rect()
self.rect.center = position
+ self.__pos_x = float(self.rect.x)
+
self.__leben = 3
- self.__geschwindigkeit = 8
+ # pixels/second (old: 8 px/frame @ 60 FPS)
+ self.__geschwindigkeit = 480.0
self.__laserCoolDown = 300
self.__zeitVonLetzenSchuss = 0
@@ -20,18 +23,22 @@ class Spieler(pygame.sprite.Sprite):
def getLeben(self) -> int:
return self.__leben
- def bewegen(self):
+ def bewegen(self, dt: float):
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
- self.rect.x -= self.__geschwindigkeit
+ self.__pos_x -= self.__geschwindigkeit * dt
if keys[pygame.K_RIGHT]:
- self.rect.x += self.__geschwindigkeit
+ self.__pos_x += self.__geschwindigkeit * dt
+
+ self.rect.x = int(round(self.__pos_x))
def einschraenken(self, screenLaenge):
if self.rect.left <= 0:
self.rect.x = 0
if self.rect.right >= screenLaenge:
self.rect.right = screenLaenge
+
+ self.__pos_x = float(self.rect.x)
def schuss(self):
keys = pygame.key.get_pressed()