/
enemies.py
39 lines (32 loc) · 855 Bytes
/
enemies.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
35
36
37
38
39
class Enemy:
def __init__(self):
raise NotImplementedError("Do not create raw Enemy objects!")
def __str__(self):
return self.name
def is_alive(self):
return self.hp > 0
class GiantSpider(Enemy):
def __init__(self):
self.name = "Giant Spider"
self.hp = 10
self.damage = 2
class Ogre(Enemy):
def __init__(self):
self.name = "Ogre"
self.hp = 30
self.damage = 15
class BatColony(Enemy):
def __init__(self):
self.name = "Colony of bats"
self.hp = 100
self.damage = 4
class RockElemental(Enemy):
def __init__(self):
self.name = "Rock Elemental"
self.hp = 80
self.damage = 15
class GateKeeper(Enemy):
def __init__(self):
self.name = "Gate Keeper"
self.hp = 500
self.damage = 20