-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathenemy.py
34 lines (27 loc) · 1.04 KB
/
enemy.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# -*- coding: utf-8 -*-
import frametime, pygame, random, properties
class Enemy(pygame.sprite.DirtySprite):
enemy = pygame.image.load(properties.enemy_ship).convert_alpha()
enemyrect = enemy.get_rect()
cooldown_time = 0
def __init__(self, where_spawn):
pygame.sprite.Sprite.__init__(self)
self.enemyrect = self.enemy.get_rect()
self.enemyrect.move_ip(where_spawn, 0)
self.cooldown_time = 0
def update(self, bullet):
self.fire(bullet) #fires if possible
move_speed = [0, 150]
move_speed = frametime.modify_speed(move_speed)
self.enemyrect = self.enemyrect.move(move_speed)
def can_fire(self):
diff_time = frametime.get_diff_time()
self.cooldown_time += diff_time
if self.cooldown_time > random.random() + 1:
self.cooldown_time = 0
return True
else:
return False
def fire(self, bullet):
if self.can_fire():
bullet.enemy_fire(self.enemyrect.midbottom)