diff --git a/Rom.py b/Rom.py index c0ead0f0..e4d8a072 100644 --- a/Rom.py +++ b/Rom.py @@ -40,7 +40,7 @@ from source.enemizer.Enemizer import write_enemy_shuffle_settings JAP10HASH = '03a63945398191337e896e5771f77173' -RANDOMIZERBASEHASH = '465f19132309a103df2f2d802e863dd0' +RANDOMIZERBASEHASH = '8c20d2bcccfc543a1201ff082e0ebe8e' class JsonRom(object): diff --git a/data/base2current.bps b/data/base2current.bps index 188882a8..14f6759a 100644 Binary files a/data/base2current.bps and b/data/base2current.bps differ diff --git a/source/enemizer/EnemyLogic.py b/source/enemizer/EnemyLogic.py index 05bcb5e4..4bb66d8f 100644 --- a/source/enemizer/EnemyLogic.py +++ b/source/enemizer/EnemyLogic.py @@ -81,13 +81,13 @@ def defeat_rule_multiple(world, player, enemy_sprite_region_pairs): bombs_required = False for key, vln in vln_list.items(): - if key[0] == EnemySprite.Terrorpin: + if key[0].kind == EnemySprite.Terrorpin: if not hammer_required: required_rules.append(has('Hammer', player)) hammer_required = True picky_enemies.append(key) continue - if key[0] == EnemySprite.StalfosKnight: + if key[0].kind == EnemySprite.StalfosKnight: if not bombs_required: required_rules.append(bombs_rule(world, player, 1)) bombs_required = True diff --git a/source/logic/Rule.py b/source/logic/Rule.py index ff923b8d..970062bb 100644 --- a/source/logic/Rule.py +++ b/source/logic/Rule.py @@ -118,7 +118,7 @@ class RuleFactory(object): rule_lambda = r.rule_lambda else: rule_lambda = and_rule(rule_lambda, r.rule_lambda) - rule.rule_lambda = rule_lambda + rule.rule_lambda = rule_lambda if rule_lambda else lambda state: True return rule @staticmethod @@ -142,7 +142,7 @@ class RuleFactory(object): rule_lambda = r.rule_lambda else: rule_lambda = or_rule(rule_lambda, r.rule_lambda) - rule.rule_lambda = rule_lambda + rule.rule_lambda = rule_lambda if rule_lambda else lambda state: True return rule @staticmethod