1 from mod_import
import do_mod_import
2 do_mod_import("monsters", globals())
4 from random
import choice
as randchoice
6 class monster_db(object):
9 self
.level_element_db
= {}
10 self
.all_monsters
= monsters
12 def create_random_monster(self
, level
, element
=None):
13 # We could use self.random_monster(...)(...), but this is cleaner.
14 return self
.random_monster(level
, element
).create(level
, element
)
16 def random_monster(self
, level
, element
=None):
17 return randchoice(self
.get_monsters(level
, element
))
19 def get_monsters(self
, level
, element
=None):
20 if element
== None or element
== Random
:
21 if level
not in self
.level_db
.keys():
22 self
.level_db
[level
] = \
25 for monster
in self
.all_monsters
26 if monster
.can_be_level(level
)
28 return self
.level_db
[level
]
30 if (level
, element
) not in self
.level_element_db
.keys():
31 self
.level_element_db
[level
] = \
34 for monster
in self
.all_monsters
35 if monster
.can_be_level(level
)
36 if monster
.can_be_element(element
)
38 return self
.level_element_db
[level
]
40 monster_db
= monster_db()