forked from co/TheLastRogue
/
player_class.py
37 lines (26 loc) · 1.03 KB
/
player_class.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
from health import Health
from player import new_player
from stats import Class, DataTypes, DataPoint
def new_knight_player(game_state):
player = new_player(game_state)
player.set_child(Health(25))
player.set_child(DataPoint(DataTypes.CLASS, Class.KNIGHT))
return player
def new_rogue_player(game_state):
player = new_player(game_state)
player.set_child(Health(20))
player.set_child(DataPoint(DataTypes.CLASS, Class.ROGUE))
return player
def new_gunslinger_player(game_state):
player = new_player(game_state)
player.set_child(Health(18))
player.set_child(DataPoint(DataTypes.CLASS, Class.GUNSLINGER))
return player
def new_tinker_player(game_state):
player = new_player(game_state)
player.set_child(Health(15))
player.set_child(DataPoint(DataTypes.CLASS, Class.GUNSLINGER))
return player
CLASS_FACTORIES = [new_knight_player, new_rogue_player, new_gunslinger_player, new_tinker_player]
def get_new_player_set(game_state):
return map(lambda f: f(game_state), CLASS_FACTORIES)