Skip to content
This repository has been archived by the owner on Feb 18, 2025. It is now read-only.

Commit

Permalink
Merge branch 'feature/enhance-enemy-trajectories' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
Virashu committed Feb 8, 2024
2 parents 40665d9 + 57f95bc commit 7958c89
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 22 deletions.
4 changes: 1 addition & 3 deletions danmaku/enemy.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,7 @@ def shoot(self) -> list[Bullet]:
self.last_shoot = t
if self.my_type == "boss":
return self.shoot_radial()
bullet = Bullet(
(self.x + self.width // 2, self.y), self.damage, "basic enemy bullet"
)
bullet = Bullet((self.x, self.y), self.damage, "basic enemy bullet")
bullet.vx = randint(-100, 100) / 100
bullet.vy = (1 - bullet.vx**2) ** 0.5
return [bullet]
Expand Down
39 changes: 20 additions & 19 deletions danmaku/game.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,25 +22,25 @@
WIDTH, HEIGHT = 300, 500
LEVEL1 = [Enemy((150, 15), "basic enemy")]
LEVEL2 = [
Enemy((50, 25), "basic enemy"),
Enemy((200, 10), "basic enemy"),
Enemy((50, -25), "basic enemy"),
Enemy((200, -50), "basic enemy"),
]
LEVEL3 = [Enemy((110, 5), "strong enemy")]
LEVEL4 = [
Enemy((50, 25), "strong enemy"),
Enemy((200, 10), "strong enemy"),
Enemy((50, -25), "strong enemy"),
Enemy((200, -50), "strong enemy"),
]
LEVEL5 = [
Enemy((50, 15), "basic enemy"),
Enemy((200, 10), "basic enemy"),
Enemy((110, 5), "strong enemy"),
Enemy((50, -20), "basic enemy"),
Enemy((200, -50), "basic enemy"),
Enemy((110, -35), "strong enemy"),
]
LEVEL6 = [
Enemy((50, 15), "strong enemy"),
Enemy((200, 10), "basic enemy"),
Enemy((110, 5), "strong enemy"),
Enemy((50, -15), "strong enemy"),
Enemy((200, -50), "basic enemy"),
Enemy((110, -35), "strong enemy"),
]
FINAL = [Enemy((150, 15), "boss")]
FINAL = [Enemy((WIDTH / 2, -40), "boss")]
LEVELS = [LEVEL1, LEVEL2, LEVEL3, LEVEL4, LEVEL5, LEVEL6, FINAL]


Expand Down Expand Up @@ -121,13 +121,6 @@ def update_pause(self):

def update_game(self):
"""Called from update loop if *not* paused"""
for bullet in self.bullets:
bullet.update(self.delta)

if not not_in_border(
bullet.x, bullet.y, bullet.vx, bullet.vy, WIDTH, HEIGHT
):
self.bullets.remove(bullet)

vx = (Keys.RIGHT in self.pressed_keys) - (Keys.LEFT in self.pressed_keys)
vy = (Keys.DOWN in self.pressed_keys) - (Keys.UP in self.pressed_keys)
Expand All @@ -148,7 +141,7 @@ def update_game(self):
self.bullets += enemy.shoot()
enemy.animation()
enemy.update(self.delta)
if not not_in_border(enemy.x, enemy.y, enemy.vx, enemy.vy, WIDTH, HEIGHT):
if enemy.y > HEIGHT / 2 and not 0 <= enemy.x < WIDTH:
self.enemies.remove(enemy)

for bullet in filter(lambda b: b.enemy, self.bullets):
Expand All @@ -167,6 +160,14 @@ def update_game(self):
self.bullets.remove(bullet)
break

for bullet in self.bullets:
bullet.update(self.delta)

if not not_in_border(
bullet.x, bullet.y, bullet.vx, bullet.vy, WIDTH, HEIGHT
):
self.bullets.remove(bullet)

self.background_object.animation()

if len(self.enemies) == 0:
Expand Down

0 comments on commit 7958c89

Please sign in to comment.