Add all-moldorm boss mode
This commit is contained in:
@@ -3711,7 +3711,7 @@ e_dmg = {"default": 0, "shuffled": 1, "random": 2}
|
|||||||
rb_mode = {"none": 0, "mapcompass": 1, "dungeon": 2}
|
rb_mode = {"none": 0, "mapcompass": 1, "dungeon": 2}
|
||||||
# algorithm:
|
# algorithm:
|
||||||
algo_mode = {"balanced": 0, "equitable": 1, "vanilla_fill": 2, "dungeon_only": 3, "district": 4, 'major_only': 5}
|
algo_mode = {"balanced": 0, "equitable": 1, "vanilla_fill": 2, "dungeon_only": 3, "district": 4, 'major_only': 5}
|
||||||
boss_mode = {"none": 0, "simple": 1, "full": 2, "chaos": 3, 'random': 3, 'unique': 4}
|
boss_mode = {"none": 0, "simple": 1, "full": 2, "chaos": 3, 'random': 3, 'unique': 4, 'moldorm': 5}
|
||||||
|
|
||||||
# byte 10: settings_version
|
# byte 10: settings_version
|
||||||
|
|
||||||
|
|||||||
14
Bosses.py
14
Bosses.py
@@ -225,7 +225,7 @@ def place_bosses(world, player):
|
|||||||
bosses.remove(boss)
|
bosses.remove(boss)
|
||||||
|
|
||||||
place_boss(boss, level, loc, loc_text, world, player)
|
place_boss(boss, level, loc, loc_text, world, player)
|
||||||
elif world.boss_shuffle[player] == "random": #all bosses chosen at random
|
elif world.boss_shuffle[player] == "random": # all bosses chosen at random
|
||||||
for [loc, level] in boss_locations:
|
for [loc, level] in boss_locations:
|
||||||
loc_text = loc + (' ('+level+')' if level else '')
|
loc_text = loc + (' ('+level+')' if level else '')
|
||||||
try:
|
try:
|
||||||
@@ -233,6 +233,18 @@ def place_bosses(world, player):
|
|||||||
except IndexError:
|
except IndexError:
|
||||||
raise FillError('Could not place boss for location %s' % loc_text)
|
raise FillError('Could not place boss for location %s' % loc_text)
|
||||||
|
|
||||||
|
place_boss(boss, level, loc, loc_text, world, player)
|
||||||
|
elif world.boss_shuffle[player] == "moldorm": # all bosses Moldorm
|
||||||
|
for [loc, level] in boss_locations:
|
||||||
|
loc_text = loc + (' ('+level+')' if level else '')
|
||||||
|
try:
|
||||||
|
if can_place_boss(world, player, 'Moldorm', loc, level):
|
||||||
|
boss = 'Moldorm'
|
||||||
|
else:
|
||||||
|
boss = random.choice([b for b in placeable_bosses if can_place_boss(world, player, b, loc, level)])
|
||||||
|
except IndexError:
|
||||||
|
raise FillError('Could not place boss for location %s' % loc_text)
|
||||||
|
|
||||||
place_boss(boss, level, loc, loc_text, world, player)
|
place_boss(boss, level, loc, loc_text, world, player)
|
||||||
elif world.boss_shuffle[player] == 'unique':
|
elif world.boss_shuffle[player] == 'unique':
|
||||||
bosses = list(placeable_bosses)
|
bosses = list(placeable_bosses)
|
||||||
|
|||||||
@@ -565,7 +565,8 @@
|
|||||||
"simple",
|
"simple",
|
||||||
"unique",
|
"unique",
|
||||||
"full",
|
"full",
|
||||||
"random"
|
"random",
|
||||||
|
"moldorm"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"shuffleenemies": {
|
"shuffleenemies": {
|
||||||
|
|||||||
Reference in New Issue
Block a user