Archipelago/worlds/sm/variaRandomizer/rom/objectivesAddresses.py

65 lines
3.0 KiB
Python

from .addressTypes import ValueList, ValueSingle, ValueRange
# generated from asar output
# A1 start: A1FA80
objectivesAddr = {
# --- objectives checker functions: A1FA80 ---
'objectivesList': ValueSingle(0xA1FA80),
'objectiveEventsArray': ValueRange(0xA1FB1A, length=2*5),
'objective[kraid_is_dead]': ValueSingle(0xA1FBCE),
'objective[phantoon_is_dead]': ValueSingle(0xA1FBD6),
'objective[draygon_is_dead]': ValueSingle(0xA1FBDE),
'objective[ridley_is_dead]': ValueSingle(0xA1FBE6),
'objective[all_g4_dead]': ValueSingle(0xA1FBEE),
'objective[spore_spawn_is_dead]': ValueSingle(0xA1FC04),
'objective[botwoon_is_dead]': ValueSingle(0xA1FC0C),
'objective[crocomire_is_dead]': ValueSingle(0xA1FC14),
'objective[golden_torizo_is_dead]': ValueSingle(0xA1FC1C),
'objective[all_mini_bosses_dead]': ValueSingle(0xA1FC24),
'objective[scavenger_hunt_completed]': ValueSingle(0xA1FC3A),
'objective[boss_1_killed]': ValueSingle(0xA1FC7A),
'objective[boss_2_killed]': ValueSingle(0xA1FC83),
'objective[boss_3_killed]': ValueSingle(0xA1FC8C),
'objective[miniboss_1_killed]': ValueSingle(0xA1FC95),
'objective[miniboss_2_killed]': ValueSingle(0xA1FC9E),
'objective[miniboss_3_killed]': ValueSingle(0xA1FCA7),
'objective[collect_25_items]': ValueSingle(0xA1FCB0),
'__pct25': 0xA1FCB5,
'objective[collect_50_items]': ValueSingle(0xA1FCB8),
'__pct50': 0xA1FCBD,
'objective[collect_75_items]': ValueSingle(0xA1FCC0),
'__pct75': 0xA1FCC5,
'objective[collect_100_items]': ValueSingle(0xA1FCC8),
'__pct100': 0xA1FCCD,
'objective[nothing_objective]': ValueSingle(0xA1FCD0),
'objective[fish_tickled]': ValueSingle(0xA1FCF8),
'objective[orange_geemer]': ValueSingle(0xA1FD00),
'objective[shak_dead]': ValueSingle(0xA1FD08),
'itemsMask': ValueSingle(0xA1FD10),
'beamsMask': ValueSingle(0xA1FD12),
'objective[all_major_items]': ValueSingle(0xA1FD14),
'objective[crateria_cleared]': ValueSingle(0xA1FD2B),
'objective[green_brin_cleared]': ValueSingle(0xA1FD33),
'objective[red_brin_cleared]': ValueSingle(0xA1FD3B),
'objective[ws_cleared]': ValueSingle(0xA1FD43),
'objective[kraid_cleared]': ValueSingle(0xA1FD4B),
'objective[upper_norfair_cleared]': ValueSingle(0xA1FD53),
'objective[croc_cleared]': ValueSingle(0xA1FD5B),
'objective[lower_norfair_cleared]': ValueSingle(0xA1FD63),
'objective[west_maridia_cleared]': ValueSingle(0xA1FD6B),
'objective[east_maridia_cleared]': ValueSingle(0xA1FD73),
'objective[all_chozo_robots]': ValueSingle(0xA1FD7B),
'objective[visited_animals]': ValueSingle(0xA1FD9A),
'objective[king_cac_dead]': ValueSingle(0xA1FDE6),
# A1 end: A1FDEE
# Pause stuff: 82FB6D
# *** completed spritemaps: 82FE83
'objectivesSpritesOAM': ValueSingle(0x82FE83),
# 82 end: 82FEB0
'objectivesText': ValueSingle(0xB6F200),
}
_pctList = []
for pct in [25,50,75,100]:
_pctList.append(objectivesAddr['__pct%d' % pct])
del objectivesAddr['__pct%d' % pct]
objectivesAddr['totalItemsPercent'] = ValueList(_pctList)