papermario/include/enums.h

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

6601 lines
300 KiB
C
Raw Normal View History

2020-08-15 00:47:06 +02:00
#ifndef _ENUMS_H_
#define _ENUMS_H_
#include "ultra64.h"
2020-08-16 06:24:20 +02:00
#include "types.h"
#include "saved_byte_names.h"
#include "saved_flag_names.h"
2020-08-15 00:47:06 +02:00
enum StoryProgress {
STORY_INTRO = -128,
STORY_CH0_WAKE_UP = -127,
STORY_CH0_MET_INNKEEPER = -126,
STORY_UNUSED_FFFFFF83 = -125,
STORY_CH0_MET_GOOMPA = -124,
STORY_CH0_GATE_CRUSHED = -123,
STORY_CH0_FELL_OFF_CLIFF = -122,
STORY_CH0_GOOMPA_JOINED_PARTY = -121,
STORY_CH0_LOOKING_FOR_HAMMER = -120,
STORY_CH0_FOUND_HAMMER = -119,
STORY_CH0_DEFEATED_JR_TROOPA = -118,
STORY_CH0_LEFT_THE_PLAYGROUND = -117,
STORY_UNUSED_FFFFFF8C = -116,
STORY_CH0_GOOMBARIO_JOINED_PARTY = -115,
STORY_CH0_SMASHED_GATE_BLOCK = -114,
STORY_CH0_DEFEATED_GOOMBA_BROS = -113,
STORY_CH0_DEFEATED_GOOMBA_KING = -112,
STORY_CH0_FOUND_GATEHOUSE_SWITCH = -111,
STORY_CH0_HIT_GATEHOUSE_SWITCH = -110,
STORY_CH0_OPENED_BRIDGE_TO_TOAD_TOWN = -109,
STORY_CH0_KAMMY_RETURNED_TO_BOWSER = -108,
STORY_CH0_ARRIVED_AT_TOAD_TOWN = -107,
STORY_CH0_MET_STAR_SPIRITS = -106,
STORY_CH0_BEGAN_PEACH_MISSION = -105,
STORY_CH0_TWINK_GAVE_LUCKY_STAR = -104,
STORY_CH0_RETURNED_TO_TOAD_TOWN = -103,
STORY_CH1_SPOKE_WITH_MERLIN = -102,
STORY_CH1_TOLD_MERLIN_ABOUT_DARK_TOADS = -101,
STORY_CH1_MERLIN_REVEALED_KOOPA_BROS = -100,
STORY_CH1_KNOCKED_SWITCH_FROM_TREE = -99,
STORY_CH1_MADE_FIRST_BRIDGE = -98,
STORY_CH1_ARRIVED_AT_KOOPA_VILLAGE = -97,
STORY_CH1_PROMISED_TO_HELP_KOOPER = -96,
STORY_CH1_FUZZY_THIEF_LEFT_TOWN = -95,
STORY_CH1_FUZZY_THIEF_RAN_AWAY = -94,
STORY_CH1_FUZZY_THIEF_HID_IN_TREE = -93,
STORY_CH1_KOOPER_JOINED_PARTY = -92,
STORY_CH1_MADE_SECOND_BRIDGE = -91,
STORY_CH1_ARRIVED_AT_KOOPA_FORTRESS = -90,
STORY_CH1_SPOTTED_BY_KOOPA_BROS = -89,
STORY_CH1_KOOPA_BROS_HID_KEY = -88,
STORY_CH1_DEFEATED_BASEMENT_GUARD = -87,
STORY_CH1_LOWERED_FIRST_STAIRS = -86,
STORY_CH1_KOOPA_BROS_SET_TRAP = -85,
STORY_CH1_MARIO_ACTIVATED_TRAP = -84,
STORY_CH1_BOMBETTE_JOINED_PARTY = -83,
STORY_CH1_DEFEATED_DUNGEON_GUARDS = -82,
STORY_CH1_LOWERED_SECOND_STAIRS = -81,
STORY_CH1_RAISED_SUBMERGED_STAIRS = -80,
STORY_CH1_KOOPA_BROS_FIRING_BLASTERS = -79,
STORY_CH1_DEFEATED_KOOPA_BROS = -78,
STORY_CH1_STAR_SPIRIT_RESCUED = -77,
STORY_CH1_BEGAN_PEACH_MISSION = -76,
STORY_CH1_STAR_SPRIT_DEPARTED = -75,
STORY_CH1_DEFEATED_JR_TROOPA = -74,
STORY_CH1_RETURNED_TO_TOAD_TOWN = -73,
STORY_CH2_ARRIVED_AT_MT_RUGGED = -72,
STORY_CH2_SPOKE_WITH_PARAKARRY = -71,
STORY_CH2_PARAKARRY_JOINED_PARTY = -70,
STORY_CH2_ARRIVED_AT_DRY_DRY_DESERT = -69,
STORY_CH2_ARRIVED_AT_DRY_DRY_OUTPOST = -68,
STORY_CH2_SHADY_MOUSE_LEFT_SHOP = -67,
STORY_CH2_SPOKE_WITH_SHEEK = -66,
STORY_CH2_SHADY_MOUSE_ENTERED_SHOP = -65,
STORY_CH2_BOUGHT_SECRET_ITEMS = -64,
STORY_CH2_GOT_PULSE_STONE = -63,
STORY_CH2_UNCOVERED_DRY_DRY_RUINS = -62,
STORY_CH2_DRAINED_FIRST_SAND_ROOM = -61,
STORY_CH2_DRAINED_SECOND_SAND_ROOM = -60,
STORY_CH2_GOT_SUPER_HAMMER = -59,
STORY_CH2_DRAINED_THIRD_SAND_ROOM = -58,
STORY_CH2_SOLVED_ARTIFACT_PUZZLE = -57,
STORY_CH2_DEFEATED_TUTANKOOPA = -56,
STORY_CH2_STAR_SPIRIT_RESCUED = -55,
STORY_CH2_BEGAN_PEACH_MISSION = -54,
STORY_CH2_STAR_SPRIT_DEPARTED = -53,
STORY_UNUSED_FFFFFFCC = -52,
STORY_CH3_SAW_BOO_ENTER_FOREST = -51,
STORY_CH3_INVITED_TO_BOOS_MANSION = -50,
STORY_CH3_ALLOWED_INTO_FOREVER_FOREST = -49,
STORY_CH3_ARRIVED_AT_BOOS_MANSION = -48,
STORY_CH3_OPENED_BOOS_MANSION_GATE = -47,
STORY_CH3_ENTERED_BOOS_MANSION = -46,
STORY_CH3_TRIGGERED_DOOR_JUMP_SCARE = -45,
STORY_CH3_GOT_RECORD = -44,
STORY_CH3_PLAYED_THE_RECORD = -43,
STORY_CH3_GOT_WEIGHT = -42,
STORY_CH3_WEIGHED_DOWN_CHANDELIER = -41,
STORY_CH3_GOT_SUPER_BOOTS = -40,
STORY_CH3_HIT_HUGE_BLUE_SWITCH = -39,
STORY_CH3_GOT_BOO_PORTRAIT = -38,
STORY_CH3_RESTORED_BOO_PORTRAIT = -37,
STORY_CH3_BOW_JOINED_PARTY = -36,
STORY_CH3_UNLOCKED_GUSTY_GULCH = -35,
STORY_CH3_ARRIVED_AT_GHOST_TOWN = -34,
STORY_CH3_SAW_TUBBA_EAT_BOO = -33,
STORY_CH3_ARRIVED_AT_TUBBAS_MANOR = -32,
STORY_UNUSED_FFFFFFE1 = -31,
STORY_CH3_TUBBA_BEGAN_NAPPING = -30,
STORY_CH3_TUBBA_WOKE_UP = -29,
STORY_CH3_TUBBA_SMASHED_THE_BRIDGES = -28,
STORY_CH3_TUBBA_CHASED_MARIO_IN_HALL = -27,
STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER = -26,
STORY_CH3_ESCAPED_TUBBAS_MANOR = -25,
STORY_CH3_UNLOCKED_WINDY_MILL = -24,
STORY_CH3_WENT_DOWN_THE_WELL = -23,
STORY_CH3_HEART_FLED_FIRST_TUNNEL = -22,
STORY_UNUSED_FFFFFFEB = -21,
STORY_UNUSED_FFFFFFEC = -20,
STORY_CH3_HEART_FLED_SECOND_TUNNEL = -19,
STORY_CH3_HEART_ESCAPED_WELL = -18,
STORY_CH3_HEART_ESCAPED_WINDY_MILL = -17,
STORY_CH3_DEFEATED_TUBBA_BLUBBA = -16,
STORY_CH3_STAR_SPIRIT_RESCUED = -15,
STORY_CH3_BEGAN_PEACH_MISSION = -14,
STORY_CH3_STAR_SPRIT_DEPARTED = -13,
STORY_CH4_FRYING_PAN_STOLEN = -12,
STORY_CH4_MET_WITH_TWINK = -11,
STORY_CH4_FOUND_HIDDEN_DOOR = -10,
STORY_CH4_ENTERED_THE_TOY_BOX = -9,
STORY_CH4_GOT_STOREROOM_KEY = -8,
STORY_CH4_RETURNED_STOREROOM_KEY = -7,
STORY_CH4_GOT_TOY_TRAIN = -6,
STORY_CH4_RETURNED_TOY_TRAIN = -5,
STORY_CH4_GOT_FRYING_PAN = -4,
STORY_CH4_GOT_TAYCE_TS_CAKE = -3,
STORY_CH4_GAVE_CAKE_TO_GOURMET_GUY = -2,
STORY_CH4_PULLED_SWITCH_SWITCH = -1,
STORY_CH4_SOLVED_COLOR_PUZZLE = 0,
STORY_CH4_DEFEATED_LANTERN_GHOST = 1,
STORY_CH4_WATT_JOINED_PARTY = 2,
STORY_CH4_OPENED_GENERAL_GUY_ROOM = 3,
STORY_CH4_DEFEATED_GENERAL_GUY = 4,
STORY_CH4_STAR_SPIRIT_RESCUED = 5,
STORY_CH4_BEGAN_PEACH_MISSION = 6,
STORY_CH4_STAR_SPRIT_DEPARTED = 7,
STORY_CH5_WHALE_MOUTH_OPEN = 8,
STORY_CH5_ENTERED_WHALE = 9,
STORY_CH5_DEFEATED_FUZZIPEDE = 10,
STORY_CH5_REACHED_LAVA_LAVA_ISLAND = 11,
STORY_CH5_KOLORADO_ESCAPED_FUZZIES = 12,
STORY_CH5_KOLORADO_ESCAPED_SPEAR_GUYS = 13,
STORY_CH5_YOSHI_CHILDREN_ARE_MISSING = 14,
STORY_CH5_SUSHIE_JOINED_PARTY = 15,
STORY_CH5_ALL_YOSHI_CHILDREN_RESCUED = 16,
STORY_CH5_GOT_JADE_RAVEN = 17,
STORY_CH5_MOVED_RAVEN_STATUE = 18,
STORY_CH5_DEFEATED_PIRANHAS_MINIBOSS = 19,
STORY_CH5_REACHED_RAFAELS_TREE = 20,
STORY_CH5_RAFAEL_LEFT_NEST = 21,
STORY_CH5_RAFAEL_MOVED_ROOT = 22,
STORY_CH5_RAFAEL_WAITING_FOR_MARIO = 23,
STORY_CH5_ZIP_LINE_READY = 24,
STORY_CH5_ENTERED_MT_LAVA_LAVA = 25,
STORY_CH5_KOLORADO_FELL_IN_LAVA = 26,
STORY_CH5_LAVA_STREAM_BLOCKED = 27,
STORY_CH5_GOT_ULTRA_HAMMER = 28,
STORY_CH5_SMASHED_ULTRA_BLOCK = 29,
STORY_CH5_KOLORADO_FELL_IN_PIT = 30,
STORY_CH5_KOLORADO_AT_DEAD_END = 31,
STORY_CH5_HIDDEN_PASSAGE_OPEN = 32,
STORY_CH5_KOLORADO_RAN_AHEAD = 33,
STORY_CH5_KOLORADO_IN_TREASURE_ROOM = 34,
STORY_CH5_DEFEATED_LAVA_PIRANHA = 35,
STORY_CH5_MT_LAVA_LAVA_ERUPTING = 36,
STORY_CH5_OPENED_ESCAPE_ROUTE = 37,
STORY_CH5_BEGAN_PEACH_MISSION = 38,
STORY_CH5_STAR_SPRIT_DEPARTED = 39,
STORY_CH5_TRADED_VASE_FOR_SEED = 40,
STORY_CH5_RETURNED_TO_TOAD_TOWN = 41,
STORY_CH6_FLOWER_GATE_OPEN = 42,
STORY_CH6_ARRIVED_AT_FLOWER_FIELDS = 43,
STORY_CH6_ASKED_TO_DEFEAT_MONTY_MOLES = 44,
STORY_CH6_GOT_MAGICAL_BEAN = 45,
STORY_CH6_GOT_FERTILE_SOIL = 46,
STORY_CH6_GOT_CRYSTAL_BERRY = 47,
STORY_CH6_GOT_WATER_STONE = 48,
STORY_CH6_FILLED_SPRING_WITH_WATER = 49,
STORY_CH6_SPOKE_WITH_THE_SUN = 50,
STORY_CH6_LAKILESTER_JOINED_PARTY = 51,
STORY_CH6_DEFEATED_PUFF_PUFF_GUARDS = 52,
STORY_CH6_DESTROYED_PUFF_PUFF_MACHINE = 53,
STORY_CH6_WISTERWOOD_GAVE_HINT = 54,
STORY_CH6_GREW_MAGIC_BEANSTALK = 55,
STORY_CH6_DEFEATED_HUFF_N_PUFF = 56,
STORY_CH6_STAR_SPIRIT_RESCUED = 57,
STORY_CH6_BEGAN_PEACH_MISSION = 58,
STORY_CH6_STAR_SPRIT_DEPARTED = 59,
STORY_CH6_RETURNED_TO_TOAD_TOWN = 60,
STORY_CH7_INVITED_TO_STARBORN_VALLEY = 61,
STORY_CH7_ARRIVED_AT_SHIVER_CITY = 62,
STORY_CH7_MAYOR_MURDER_MYSTERY = 63,
STORY_CH7_SHATTERED_FROZEN_POND = 64,
STORY_CH7_SPOKE_WITH_HERRINGWAY = 65,
STORY_CH7_HERRINGWAY_AT_MAYORS_HOUSE = 66,
STORY_CH7_MAYOR_MURDER_SOLVED = 67,
STORY_CH7_DEFEATED_JR_TROOPA = 68,
STORY_CH7_DEFEATED_MONSTAR = 69,
STORY_CH7_ARRIVED_AT_STARBORN_VALLEY = 70,
STORY_CH7_MERLE_APOLOGIZED = 71,
STORY_CH7_GOT_SNOWMAN_SCARF = 72,
STORY_CH7_GOT_SNOWMAN_BUCKET = 73,
STORY_CH7_UNLOCKED_SHIVER_MOUNTAIN = 74,
STORY_CH7_DEFEATED_FIRST_DUPLIGHOST = 75,
STORY_CH7_GOT_STAR_STONE = 76,
STORY_CH7_RAISED_FROZEN_STAIRS = 77,
STORY_CH7_ARRIVED_AT_CRYSTAL_PALACE = 78,
STORY_CH7_DEFEATED_MIRROR_DUPLIGHOSTS = 79,
STORY_CH7_DEFEATED_BOMBETTE_DUPLIGHOSTS = 80,
STORY_CH7_DEFEATED_CLUBBAS = 81,
STORY_CH7_DEFEATED_KOOPER_DUPLIGHOSTS = 82,
STORY_CH7_EXTENDED_PALACE_BRIDGE = 83,
STORY_CH7_FOUND_HIDDEN_ROOM_UNDER_STATUE = 84,
STORY_CH7_SOLVED_ALBINO_DINO_PUZZLE = 85,
STORY_CH7_DEFEATED_CRYSTAL_KING = 86,
STORY_CH7_STAR_SPIRIT_RESCUED = 87,
STORY_CH7_BEGAN_PEACH_MISSION = 88,
STORY_CH7_STAR_SPRIT_DEPARTED = 89,
STORY_CH8_OPENED_PATH_TO_STAR_WAY = 90,
STORY_CH8_REACHED_STAR_HAVEN = 91,
STORY_CH8_STAR_SHIP_ACTIVATED = 92,
STORY_UNUSED_0000005D = 93,
STORY_CH8_REACHED_BOWSERS_CASTLE = 94,
STORY_CH8_REACHED_PEACHS_CASTLE = 95,
STORY_EPILOGUE = 96,
STORY_61 = 97,
};
enum KoopaKootFavors {
KOOT_FAVOR_CH1_1 = 0,
KOOT_FAVOR_CH1_2 = 1,
KOOT_FAVOR_CH2_1 = 2,
KOOT_FAVOR_CH2_2 = 3,
KOOT_FAVOR_CH2_3 = 4,
KOOT_FAVOR_CH3_1 = 5,
KOOT_FAVOR_CH3_2 = 6,
KOOT_FAVOR_CH3_3 = 7,
KOOT_FAVOR_CH4_1 = 8,
KOOT_FAVOR_CH4_2 = 9,
KOOT_FAVOR_CH4_3 = 10,
KOOT_FAVOR_CH5_1 = 11,
KOOT_FAVOR_CH5_2 = 12,
KOOT_FAVOR_CH5_3 = 13,
KOOT_FAVOR_CH6_1 = 14,
KOOT_FAVOR_CH6_2 = 15,
KOOT_FAVOR_CH6_3 = 16,
KOOT_FAVOR_CH7_1 = 17,
KOOT_FAVOR_CH7_2 = 18,
KOOT_FAVOR_CH7_3 = 19,
};
enum KoopaKootFavorStates {
KOOT_FAVOR_STATE_0 = 0,
KOOT_FAVOR_STATE_1 = 1,
KOOT_FAVOR_STATE_2 = 2,
};
2021-03-29 09:34:39 +02:00
enum EncounterTriggers {
ENCOUNTER_TRIGGER_NONE = 1,
ENCOUNTER_TRIGGER_JUMP = 2,
ENCOUNTER_TRIGGER_SPIN = 3,
ENCOUNTER_TRIGGER_HAMMER = 4,
ENCOUNTER_TRIGGER_CONVERSATION = 5,
ENCOUNTER_TRIGGER_PARTNER = 6,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum SoundOutputMode {
SOUND_OUT_MONO = 0,
SOUND_OUT_STEREO = 1,
};
2021-03-29 09:34:39 +02:00
enum SongIDs {
SONG_TOAD_TOWN = 0x00000000,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000001,
SONG_NORMAL_BATTLE = 0x00000002,
SONG_SPECIAL_BATTLE = 0x00000003,
SONG_JR_TROOPA_BATTLE = 0x00000004,
SONG_FINAL_BOWSER_BATTLE = 0x00000005,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000006,
SONG_GOOMBA_KING_BATTLE = 0x00000007,
SONG_KOOPA_BROS_BATTLE = 0x00000008,
SONG_FAKE_BOWSER_BATTLE = 0x00000009,
SONG_TUTANKOOPA_BATTLE = 0x0000000A,
SONG_TUBBA_BLUBBA_BATTLE = 0x0000000B,
SONG_GENERAL_GUY_BATTLE = 0x0000000C,
SONG_LAVA_PIRANHA_BATTLE = 0x0000000D,
SONG_HUFF_N_PUFF_BATTLE = 0x0000000E,
SONG_CRYSTAL_KING_BATTLE = 0x0000000F,
SONG_GOOMBA_VILLAGE = 0x00000010,
SONG_PLEASANT_PATH = 0x00000011,
SONG_FUZZY_ATTACK = 0x00000012,
SONG_KOOPA_VILLAGE = 0x00000013,
SONG_KOOPA_FORTRESS = 0x00000014,
SONG_DRY_DRY_OUTPOST = 0x00000015,
SONG_MT_RUGGED = 0x00000016,
SONG_DRY_DRY_DESERT = 0x00000017,
SONG_DRY_DRY_RUINS = 0x00000018,
SONG_RUINS_BASEMENT = 0x00000019,
SONG_FOREVER_FOREST = 0x0000001A,
SONG_BOOS_MANSION = 0x0000001B,
SONG_CHEERFUL_BOOS_MANSION = 0x0000001C,
SONG_GUSTY_GULCH = 0x0000001D,
SONG_TUBBAS_MANOR = 0x0000001E,
SONG_TUBBA_ESCAPE = 0x0000001F,
SONG_SHY_GUY_TOYBOX = 0x00000020,
SONG_TOYBOX_TRAIN = 0x00000021,
SONG_CREEPY_TOYBOX = 0x00000022,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000023,
SONG_JADE_JUNGLE = 0x00000024,
SONG_DEEP_JUNGLE = 0x00000025,
SONG_YOSHIS_VILLAGE = 0x00000026,
SONG_YOSHIS_PANIC = 0x00000027,
SONG_RAPHAEL_RAVEN = 0x00000028,
SONG_MT_LAVALAVA = 0x00000029,
SONG_VOLCANO_ESCAPE = 0x0000002A,
SONG_STAR_WAY_OPENS = 0x0000002B,
SONG_MASTER_BATTLE = 0x0000002C,
SONG_RADIO_ISLAND_SOUNDS = 0x0000002D,
SONG_RADIO_HOT_HITS = 0x0000002E,
SONG_RADIO_GOLDEN_OLDIES = 0x0000002F,
SONG_FLOWER_FIELDS_CLOUDY = 0x00000030,
SONG_FLOWER_FIELDS_SUNNY = 0x00000031,
SONG_CLOUDY_CLIMB = 0x00000032,
SONG_PUFF_PUFF_MACHINE = 0x00000033,
SONG_SUN_TOWER_CLOUDY = 0x00000034,
SONG_SUN_TOWER_SUNNY = 0x00000035,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000036,
SONG_CRYSTAL_PALACE = 0x00000037,
SONG_SHIVER_CITY = 0x00000038,
SONG_PENGUIN_MYSTERY = 0x00000039,
SONG_SHIVER_SNOWFIELD = 0x0000003A,
SONG_SHIVER_MOUNTAIN = 0x0000003B,
SONG_STARBORN_VALLEY = 0x0000003C,
SONG_MERLAR_THEME = 0x0000003D,
SONG_MAIL_CALL = 0x0000003E,
SONG_PEACHS_CASTLE_PARTY = 0x0000003F,
SONG_CHAPTER_END = 0x00000040,
SONG_CHAPTER_START = 0x00000041,
SONG_ITEM_UPGRADE = 0x00000042,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000043,
SONG_PHONOGRAPH_MUSIC = 0x00000044,
SONG_TUTANKOOPA_THEME = 0x00000045,
SONG_KAMMY_KOOPA_THEME = 0x00000046,
SONG_JR_TROOPA_THEME = 0x00000047,
SONG_BULLET_BILL_ASSAULT = 0x00000048,
SONG_MONTY_MOLE_ASSAULT = 0x00000049,
SONG_SHY_GUY_INVASION = 0x0000004A,
SONG_TOAD_TOWN_TUNNELS = 0x0000004B,
SONG_WHALE_THEME = 0x0000004C,
SONG_FOREVER_FOREST_WARNING = 0x0000004D,
SONG_YOSHI_KIDS_FOUND = 0x0000004E,
SONG_UNUSED_FANFARE = 0x0000004F,
SONG_GOOMBA_KING_THEME = 0x00000050,
SONG_KOOPA_BROS_INTERLUDE = 0x00000051,
SONG_KOOPA_BROS_THEME = 0x00000052,
SONG_TUTANKOOPA_WARNING = 0x00000053,
SONG_TUTANKOOPA_REVEALED = 0x00000054,
SONG_TUBBA_BLUBBA_THEME = 0x00000055,
SONG_GENERAL_GUY_THEME = 0x00000056,
SONG_LAVA_PIRANHA_THEME = 0x00000057,
SONG_HUFF_N_PUFF_THEME = 0x00000058,
SONG_CRYSTAL_KING_THEME = 0x00000059,
SONG_BLOOPER_THEME = 0x0000005A,
SONG_MINIBOSS_BATTLE = 0x0000005B,
SONG_MONSTAR_THEME = 0x0000005C,
SONG_CLUB64 = 0x0000005D,
SONG_UNUSED_OPENING = 0x0000005E,
SONG_BOWSERS_CASTLE_FALLS = 0x0000005F,
SONG_STAR_HAVEN = 0x00000060,
SONG_SHOOTING_STAR_SUMMIT = 0x00000061,
SONG_STARSHIP_THEME = 0x00000062,
SONG_STAR_SANCTUARY = 0x00000063,
SONG_BOWSERS_CASTLE = 0x00000064,
SONG_BOWSERS_CASTLE_CAVES = 0x00000065,
SONG_BOWSER_THEME = 0x00000066,
SONG_BOWSER_BATTLE = 0x00000067,
SONG_PEACH_WISHES = 0x00000068,
SONG_FILE_SELECT = 0x00000069,
SONG_MAIN_THEME = 0x0000006A,
SONG_BOWSER_ATTACKS = 0x0000006B,
SONG_MARIO_FALLS = 0x0000006C,
SONG_PEACH_APPEARS = 0x0000006D,
SONG_THE_END = 0x0000006E,
SONG_RECOVERED_STAR_ROD = 0x0000006F,
SONG_TWINK_THEME = 0x00000070,
SONG_STIRRING_CAKE = 0x00000071,
SONG_GOURMET_GUY_FREAKOUT = 0x00000072,
SONG_PRISONER_PEACH_THEME = 0x00000073,
SONG_PEACH_MISSION = 0x00000074,
SONG_PEACH_SNEAKING = 0x00000075,
SONG_PEACH_CAUGHT = 0x00000076,
SONG_PEACH_QUIZ_INTRO = 0x00000077,
SONG_STAR_SPIRIT_THEME = 0x00000078,
SONG_PENGUIN_WHODUNIT = 0x00000079,
SONG_PENGUIN_WAKES_UP = 0x0000007A,
SONG_MAGIC_BEANSTALK = 0x0000007B,
SONG_MERLEE_SPELL = 0x0000007C,
SONG_LAKILESTER_THEME = 0x0000007D,
SONG_GOOMBA_BROS_RETREAT = 0x0000007E,
SONG_SUNSHINE_RETURNS = 0x0000007F,
SONG_RIDING_THE_RAILS = 0x00000080,
SONG_RIDING_THE_WHALE = 0x00000081,
SONG_NEW_PARTNER = 0x00000082,
SONG_DRY_DRY_RUINS_APPEAR = 0x00000083,
SONG_CANDY_CANES = 0x00000084,
SONG_PLAYROOM = 0x00000085,
SONG_MOUSTAFA_THEME = 0x00000086,
SONG_GAME_OVER = 0x00000087,
SONG_TAKING_REST = 0x00000088,
SONG_FLOWER_NPC_THEME = 0x00000089,
SONG_FLOWER_GATE_APPEARS = 0x0000008A,
SONG_BATTLE_END = 0x0000008B,
SONG_POP_DIVA_SONG = 0x0000008C,
SONG_BOO_MINIGAME = 0x0000008D,
SONG_LEVEL_UP = 0x0000008E,
//SONG_GOOMBA_VILLAGE_COPY = 0x0000008F,
SONG_PARADE_DAY = 0x00000090,
SONG_PARADE_NIGHT = 0x00000091,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000092,
//SONG_GOOMBA_VILLAGE_COPY = 0x00000093,
SONG_MARIO_BROS_HOUSE = 0x00000094,
SONG_INTRO_STORY = 0x00000095,
SONG_NEW_PARTNER_JP = 0x00000096,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum Abilities {
ABILITY_DODGE_MASTER = 0x00000000,
ABILITY_UNUSED = 0x00000001,
ABILITY_SPIKE_SHIELD = 0x00000002,
ABILITY_FIRST_ATTACK = 0x00000003,
ABILITY_HP_PLUS = 0x00000004,
ABILITY_DOUBLE_DIP = 0x00000005,
ABILITY_MYSTERY_SCROLL = 0x00000006,
ABILITY_FIRE_SHIELD = 0x00000007,
ABILITY_PRETTY_LUCKY = 0x00000008,
ABILITY_HP_DRAIN = 0x00000009,
ABILITY_ALL_OR_NOTHING = 0x0000000A,
ABILITY_SLOW_GO = 0x0000000B,
ABILITY_FP_PLUS = 0x0000000C,
ABILITY_ICE_POWER = 0x0000000D,
ABILITY_FEELING_FINE = 0x0000000E,
ABILITY_ATTACK_FX = 0x0000000F,
ABILITY_MONEY_MONEY = 0x00000010,
ABILITY_CHILL_OUT = 0x00000011,
ABILITY_HAPPY_HEART = 0x00000012,
ABILITY_ZAP_TAP = 0x00000013,
ABILITY_MEGA_RUSH = 0x00000014,
ABILITY_BERSERKER = 0x00000015,
ABILITY_RIGHT_ON = 0x00000016,
ABILITY_RUNAWAY_PAY = 0x00000017,
ABILITY_FLOWER_SAVER = 0x00000018,
ABILITY_PAY_OFF = 0x00000019,
ABILITY_QUICK_CHANGE = 0x0000001A,
ABILITY_DEFEND_PLUS = 0x0000001B,
ABILITY_POWER_PLUS = 0x0000001C,
ABILITY_REFUND = 0x0000001D,
ABILITY_POWER_RUSH = 0x0000001E,
ABILITY_CRAZY_HEART = 0x0000001F,
ABILITY_LAST_STAND = 0x00000020,
ABILITY_CLOSE_CALL = 0x00000021,
ABILITY_P_UP_D_DOWN = 0x00000022,
ABILITY_LUCKY_DAY = 0x00000023,
ABILITY_MEGA_HP_DRAIN = 0x00000024,
ABILITY_P_DOWN_D_UP = 0x00000025,
ABILITY_FLOWER_FANATIC = 0x00000026,
ABILITY_SPEEDY_SPIN = 0x00000027,
ABILITY_SPIN_ATTACK = 0x00000028,
ABILITY_I_SPY = 0x00000029,
ABILITY_BUMP_ATTACK = 0x0000002A,
ABILITY_HEART_FINDER = 0x0000002B,
ABILITY_FLOWER_FINDER = 0x0000002C,
ABILITY_DIZZY_ATTACK = 0x0000002D,
ABILITY_FINAL_GOOMPA = 0x0000002E,
ABILITY_FINAL_BOBOMB = 0x0000002F,
ABILITY_DEEP_FOCUS = 0x00000030,
ABILITY_SUPER_FOCUS = 0x00000031,
ABILITY_KAIDEN = 0x00000032,
ABILITY_DAMAGE_DODGE = 0x00000033,
ABILITY_HAPPY_FLOWER = 0x00000034,
ABILITY_GROUP_FOCUS = 0x00000035,
ABILITY_PEEKABOO = 0x00000036,
ABILITY_HEALTHY_HEALTHY = 0x00000037,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum Emotes {
EMOTE_EXCLAMATION = 0,
EMOTE_SHOCK = 1,
EMOTE_QUESTION = 2,
EMOTE_FRUSTRATION = 3,
EMOTE_ELLIPSIS = 4,
EMOTE_INVALID = 5,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum Emoters {
EMOTER_PLAYER = 0,
EMOTER_NPC = 1,
EMOTER_POS = 2,
};
enum EasingType {
EASING_LINEAR = 0,
EASING_QUADRATIC_IN = 1,
EASING_CUBIC_IN = 2,
EASING_QUARTIC_IN = 3,
EASING_QUADRATIC_OUT = 4,
EASING_CUBIC_OUT = 5,
EASING_QUARTIC_OUT = 6,
EASING_COS_SLOW_OVERSHOOT = 7,
EASING_COS_FAST_OVERSHOOT = 8,
EASING_COS_BOUNCE = 9,
EASING_COS_IN_OUT = 10,
EASING_SIN_OUT = 11,
EASING_COS_IN = 12,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum SoundIDs {
SOUND_0 = 0x00000000,
SOUND_1 = 0x00000001,
SOUND_2 = 0x00000002,
SOUND_3 = 0x00000003,
SOUND_4 = 0x00000004,
SOUND_MENU_BADGE_EQUIP = 0x00000005,
SOUND_MENU_BADGE_UNEQUIP = 0x00000006,
SOUND_MENU_START_TUTORIAL = 0x00000009,
SOUND_A = 0x0000000A,
SOUND_B = 0x0000000B,
SOUND_D = 0x0000000D,
SOUND_E = 0x0000000E,
SOUND_F = 0x0000000F,
SOUND_10 = 0x00000010,
SOUND_11 = 0x00000011,
SOUND_12 = 0x00000012,
SOUND_14 = 0x00000014,
SOUND_21 = 0x00000021,
SOUND_22 = 0x00000022,
SOUND_23 = 0x00000023,
SOUND_24 = 0x00000024,
SOUND_25 = 0x00000025,
SOUND_26 = 0x00000026,
SOUND_27 = 0x00000027,
SOUND_28 = 0x00000028,
SOUND_29 = 0x00000029,
SOUND_2A = 0x0000002A,
SOUND_2B = 0x0000002B,
SOUND_2C = 0x0000002C,
SOUND_2D = 0x0000002D,
SOUND_2E = 0x0000002E,
SOUND_2F = 0x0000002F,
SOUND_30 = 0x00000030,
SOUND_33 = 0x00000033,
SOUND_34 = 0x00000034,
SOUND_35 = 0x00000035,
SOUND_36 = 0x00000036,
SOUND_37 = 0x00000037,
SOUND_38 = 0x00000038,
SOUND_39 = 0x00000039,
SOUND_3F = 0x0000003F,
SOUND_40 = 0x00000040,
SOUND_41 = 0x00000041,
SOUND_42 = 0x00000042,
SOUND_43 = 0x00000043,
SOUND_44 = 0x00000044,
SOUND_JR_TROOPA_SPLASH = 0x00000045,
SOUND_JR_TROOPA_SWIM = 0x00000046,
SOUND_BOO_SPOOK = 0x00000047,
SOUND_48 = 0x00000048,
SOUND_4A = 0x0000004A,
SOUND_4C = 0x0000004C,
SOUND_4D = 0x0000004D,
SOUND_4E = 0x0000004E,
SOUND_4F = 0x0000004F,
SOUND_50 = 0x00000050,
SOUND_51 = 0x00000051,
SOUND_52 = 0x00000052,
SOUND_53 = 0x00000053,
SOUND_54 = 0x00000054,
SOUND_55 = 0x00000055,
SOUND_56 = 0x00000056,
SOUND_57 = 0x00000057,
SOUND_58 = 0x00000058,
SOUND_59 = 0x00000059,
SOUND_5A = 0x0000005A,
SOUND_5B = 0x0000005B,
SOUND_5C = 0x0000005C,
SOUND_5D = 0x0000005D,
SOUND_5E = 0x0000005E,
SOUND_5F = 0x0000005F,
SOUND_60 = 0x00000060,
SOUND_61 = 0x00000061,
SOUND_62 = 0x00000062,
SOUND_64 = 0x00000064,
SOUND_67 = 0x00000067,
SOUND_68 = 0x00000068,
SOUND_69 = 0x00000069,
SOUND_6A = 0x0000006A,
SOUND_6B = 0x0000006B,
SOUND_6C = 0x0000006C,
SOUND_6D = 0x0000006D,
SOUND_70 = 0x00000070,
SOUND_71 = 0x00000071,
SOUND_72 = 0x00000072,
SOUND_73 = 0x00000073,
SOUND_74 = 0x00000074,
SOUND_77 = 0x00000077,
SOUND_7D = 0x0000007D,
SOUND_82 = 0x00000082,
SOUND_83 = 0x00000083,
SOUND_84 = 0x00000084,
SOUND_85 = 0x00000085,
SOUND_87 = 0x00000087,
SOUND_89 = 0x00000089,
SOUND_8A = 0x0000008A,
SOUND_8B = 0x0000008B,
SOUND_8C = 0x0000008C,
SOUND_8D = 0x0000008D,
SOUND_8E = 0x0000008E,
SOUND_8F = 0x0000008F,
SOUND_91 = 0x00000091,
SOUND_92 = 0x00000092,
SOUND_93 = 0x00000093,
SOUND_94 = 0x00000094,
SOUND_95 = 0x00000095,
SOUND_96 = 0x00000096,
SOUND_97 = 0x00000097,
SOUND_98 = 0x00000098,
SOUND_99 = 0x00000099,
SOUND_9B = 0x0000009B,
SOUND_9D = 0x0000009D,
SOUND_9E = 0x0000009E,
SOUND_9F = 0x0000009F,
SOUND_A0 = 0x000000A0,
SOUND_A1 = 0x000000A1,
SOUND_A2 = 0x000000A2,
SOUND_A3 = 0x000000A3,
SOUND_A4 = 0x000000A4,
SOUND_A5 = 0x000000A5,
SOUND_A6 = 0x000000A6,
SOUND_A7 = 0x000000A7,
SOUND_A8 = 0x000000A8,
SOUND_A9 = 0x000000A9,
SOUND_AA = 0x000000AA,
SOUND_AB = 0x000000AB,
SOUND_AC = 0x000000AC,
SOUND_AD = 0x000000AD,
SOUND_AE = 0x000000AE,
SOUND_AF = 0x000000AF,
SOUND_B0 = 0x000000B0,
SOUND_B1 = 0x000000B1,
SOUND_B2 = 0x000000B2,
SOUND_B4 = 0x000000B4,
SOUND_BOO_VANISH = 0x000000C1,
SOUND_C2 = 0x000000C2,
SOUND_BOO_APPEAR = 0x000000C3,
SOUND_C4 = 0x000000C4,
SOUND_MENU_OPEN = 0x000000C5,
SOUND_MENU_CLOSE = 0x000000C6,
SOUND_MENU_CHANGE_SELECTION = 0x000000C7,
SOUND_MENU_CHANGE_TAB = 0x000000C8,
SOUND_MENU_NEXT = 0x000000C9,
SOUND_MENU_BACK = 0x000000CA,
SOUND_CB = 0x000000CB,
2022-04-07 09:51:21 +02:00
SOUND_CC = 0x000000CC,
SOUND_CD = 0x000000CD,
SOUND_CE = 0x000000CE,
SOUND_D1 = 0x000000D1,
SOUND_D2 = 0x000000D2,
SOUND_D3 = 0x000000D3,
SOUND_D4 = 0x000000D4,
SOUND_D5 = 0x000000D5,
2022-03-10 10:55:38 +01:00
SOUND_D6 = 0x000000D6,
SOUND_D9 = 0x000000D9,
SOUND_DA = 0x000000DA,
SOUND_DC = 0x000000DC,
SOUND_DD = 0x000000DD,
SOUND_DF = 0x000000DF,
SOUND_E0 = 0x000000E0,
SOUND_HIT_PLAYER_NORMAL = 0x000000E1,
SOUND_HIT_PLAYER_FIRE = 0x000000E2,
SOUND_HIT_PLAYER_ICE = 0x000000E3,
SOUND_FROZEN_SHATTER = 0x000000E7,
SOUND_E8 = 0x000000E8,
SOUND_HIT_NORMAL = 0x000000E9,
SOUND_HIT_FIRE = 0x000000EA,
SOUND_HIT_ICE = 0x000000EB,
SOUND_F1 = 0x000000F1,
SOUND_F2 = 0x000000F2,
SOUND_F3 = 0x000000F3,
SOUND_F4 = 0x000000F4,
SOUND_F5 = 0x000000F5,
SOUND_F6 = 0x000000F6,
SOUND_F7 = 0x000000F7,
SOUND_F8 = 0x000000F8,
SOUND_F9 = 0x000000F9,
SOUND_FA = 0x000000FA,
SOUND_FB = 0x000000FB,
SOUND_FC = 0x000000FC,
SOUND_FD = 0x000000FD,
SOUND_FE = 0x000000FE,
SOUND_FF = 0x000000FF,
SOUND_100 = 0x00000100,
SOUND_108 = 0x00000108,
SOUND_10B = 0x0000010B,
SOUND_IMMUNE = 0x0000010C,
SOUND_HIT_BONES = 0x0000010D,
SOUND_10E = 0x0000010E,
SOUND_10F = 0x0000010F,
SOUND_110 = 0x00000110,
SOUND_131 = 0x00000131,
SOUND_133 = 0x00000133,
SOUND_134 = 0x00000134,
SOUND_137 = 0x00000137,
SOUND_138 = 0x00000138,
SOUND_139 = 0x00000139,
SOUND_13D = 0x0000013D,
SOUND_13E = 0x0000013E,
SOUND_STEP_NORMAL1 = 0x00000141,
SOUND_STEP_NORMAL2 = 0x00000142,
SOUND_STEP_CRUNCHY1 = 0x00000143,
SOUND_STEP_CRUNCHY2 = 0x00000144,
SOUND_SPIN_JUMP = 0x00000146,
SOUND_TORNADO_JUMP = 0x00000147,
SOUND_SOFT_LAND = 0x00000148,
SOUND_149 = 0x00000149,
SOUND_14A = 0x0000014A,
SOUND_LAND = 0x0000014B,
SOUND_HIT_BLOCK = 0x0000014E,
SOUND_14F = 0x0000014F,
SOUND_150 = 0x00000150,
SOUND_151 = 0x00000151,
SOUND_152 = 0x00000152,
SOUND_SEARCH_BUSH = 0x00000153,
SOUND_156 = 0x00000156,
SOUND_158 = 0x00000158,
SOUND_15A = 0x0000015A,
SOUND_15B = 0x0000015B,
SOUND_15C = 0x0000015C,
SOUND_15D = 0x0000015D,
SOUND_15E = 0x0000015E,
SOUND_160 = 0x00000160,
SOUND_161 = 0x00000161,
SOUND_162 = 0x00000162,
SOUND_ENTER_PIPE = 0x00000163,
SOUND_164 = 0x00000164,
SOUND_SMASH_GOOMNUT_TREE = 0x00000165,
SOUND_SHAKE_TREE = 0x00000166,
SOUND_167 = 0x00000167,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_168 = 0x00000168,
SOUND_DUST_OFF = 0x00000172,
2022-06-12 16:44:36 +02:00
SOUND_173 = 0x00000173,
SOUND_174 = 0x00000174,
SOUND_175 = 0x00000175,
SOUND_176 = 0x00000176,
SOUND_179 = 0x00000179,
SOUND_17A = 0x0000017A,
SOUND_17B = 0x0000017B,
SOUND_17C = 0x0000017C,
SOUND_17D = 0x0000017D,
SOUND_17E = 0x0000017E,
SOUND_17F = 0x0000017F,
SOUND_180 = 0x00000180,
SOUND_181 = 0x00000181,
SOUND_182 = 0x00000182,
SOUND_183 = 0x00000183,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_185 = 0x00000185,
SOUND_186 = 0x00000186,
SOUND_187 = 0x00000187,
SOUND_188 = 0x00000188,
SOUND_189 = 0x00000189,
SOUND_18A = 0x0000018A,
SOUND_18C = 0x0000018C,
SOUND_18D = 0x0000018D,
SOUND_18E = 0x0000018E,
SOUND_190 = 0x00000190,
SOUND_191 = 0x00000191,
SOUND_193 = 0x00000193,
SOUND_194 = 0x00000194,
SOUND_197 = 0x00000197,
SOUND_198 = 0x00000198,
SOUND_199 = 0x00000199,
SOUND_19A = 0x0000019A,
SOUND_19B = 0x0000019B,
SOUND_19C = 0x0000019C,
SOUND_19D = 0x0000019D,
SOUND_19E = 0x0000019E,
SOUND_19F = 0x0000019F,
SOUND_1A0 = 0x000001A0,
SOUND_1A1 = 0x000001A1,
SOUND_1A2 = 0x000001A2,
SOUND_1A3 = 0x000001A3,
SOUND_1A4 = 0x000001A4,
SOUND_1A5 = 0x000001A5,
SOUND_1A6 = 0x000001A6,
SOUND_1A7 = 0x000001A7,
SOUND_1A8 = 0x000001A8,
SOUND_1A9 = 0x000001A9,
SOUND_1AA = 0x000001AA,
SOUND_1AB = 0x000001AB,
SOUND_1AC = 0x000001AC,
SOUND_1AD = 0x000001AD,
SOUND_1AE = 0x000001AE,
SOUND_1AF = 0x000001AF,
SOUND_1B1 = 0x000001B1,
SOUND_1B2 = 0x000001B2,
SOUND_1B3 = 0x000001B3,
SOUND_BASIC_DOOR_OPEN = 0x000001C1,
SOUND_BASIC_DOOR_CLOSE = 0x000001C2,
SOUND_METAL_DOOR_OPEN = 0x000001C3,
SOUND_METAL_DOOR_CLOSE = 0x000001C4,
SOUND_LARGE_DOOR_OPEN = 0x000001C5,
SOUND_LARGE_DOOR_CLOSE = 0x000001C6,
SOUND_CREAKY_DOOR_OPEN = 0x000001C7,
SOUND_CREAKY_DOOR_CLOSE = 0x000001C8,
SOUND_METAL_GATE_OPEN = 0x000001C9,
SOUND_METAL_GATE_CLOSE = 0x000001CA,
SOUND_1CB = 0x000001CB,
SOUND_1CC = 0x000001CC,
SOUND_1CD = 0x000001CD,
SOUND_1CE = 0x000001CE,
SOUND_1CF = 0x000001CF,
SOUND_1D0 = 0x000001D0,
SOUND_1D1 = 0x000001D1,
SOUND_1D2 = 0x000001D2,
SOUND_1D3 = 0x000001D3,
SOUND_1D4 = 0x000001D4,
SOUND_1D5 = 0x000001D5,
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
SOUND_CREAKY_ROCKING_CHAIR = 0x000001D6,
SOUND_1D8 = 0x000001D8,
SOUND_1D9 = 0x000001D9,
SOUND_1DA = 0x000001DA,
SOUND_1DB = 0x000001DB,
SOUND_1DC = 0x000001DC,
SOUND_1DD = 0x000001DD,
SOUND_1DE = 0x000001DE,
SOUND_1DF = 0x000001DF,
SOUND_1E0 = 0x000001E0,
SOUND_1E1 = 0x000001E1,
2022-06-12 16:44:36 +02:00
SOUND_1E2 = 0x000001E2,
SOUND_1E3 = 0x000001E3,
SOUND_1E4 = 0x000001E4,
SOUND_1E5 = 0x000001E5,
SOUND_1E6 = 0x000001E6,
SOUND_1E7 = 0x000001E7,
SOUND_1E8 = 0x000001E8,
SOUND_1E9 = 0x000001E9,
SOUND_1EA = 0x000001EA,
SOUND_1EB = 0x000001EB,
SOUND_1EC = 0x000001EC,
SOUND_1ED = 0x000001ED,
SOUND_1EE = 0x000001EE,
SOUND_1EF = 0x000001EF,
SOUND_1F0 = 0x000001F0,
SOUND_1F1 = 0x000001F1,
SOUND_1F2 = 0x000001F2,
SOUND_1F3 = 0x000001F3,
SOUND_1F4 = 0x000001F4,
SOUND_1F5 = 0x000001F5,
SOUND_1F9 = 0x000001F9,
SOUND_1FA = 0x000001FA,
SOUND_1FB = 0x000001FB,
SOUND_1FC = 0x000001FC,
SOUND_1FD = 0x000001FD,
SOUND_1FE = 0x000001FE,
SOUND_1FF = 0x000001FF,
SOUND_201 = 0x00000201,
SOUND_202 = 0x00000202,
SOUND_203 = 0x00000203,
SOUND_204 = 0x00000204,
SOUND_205 = 0x00000205,
SOUND_206 = 0x00000206,
SOUND_207 = 0x00000207,
SOUND_208 = 0x00000208,
SOUND_209 = 0x00000209,
SOUND_20A = 0x0000020A,
SOUND_20C = 0x0000020C,
SOUND_20D = 0x0000020D,
SOUND_20E = 0x0000020E,
SOUND_211 = 0x00000211,
SOUND_212 = 0x00000212,
SOUND_213 = 0x00000213,
SOUND_214 = 0x00000214,
SOUND_215 = 0x00000215,
SOUND_217 = 0x00000217,
SOUND_218 = 0x00000218,
SOUND_219 = 0x00000219,
SOUND_21A = 0x0000021A,
SOUND_21B = 0x0000021B,
SOUND_21C = 0x0000021C,
SOUND_MENU_ERROR = 0x0000021D,
SOUND_221 = 0x00000221,
SOUND_222 = 0x00000222,
SOUND_223 = 0x00000223,
SOUND_225 = 0x00000225,
SOUND_226 = 0x00000226,
SOUND_227 = 0x00000227,
SOUND_228 = 0x00000228,
SOUND_229 = 0x00000229,
SOUND_22A = 0x0000022A,
SOUND_22B = 0x0000022B,
SOUND_22C = 0x0000022C,
SOUND_22D = 0x0000022D,
SOUND_22E = 0x0000022E,
SOUND_22F = 0x0000022F,
SOUND_230 = 0x00000230,
SOUND_231 = 0x00000231,
SOUND_233 = 0x00000233,
SOUND_234 = 0x00000234,
SOUND_235 = 0x00000235,
SOUND_236 = 0x00000236,
SOUND_237 = 0x00000237,
SOUND_238 = 0x00000238,
SOUND_23D = 0x0000023D,
SOUND_241 = 0x00000241,
SOUND_242 = 0x00000242,
SOUND_244 = 0x00000244,
SOUND_245 = 0x00000245,
SOUND_246 = 0x00000246,
SOUND_247 = 0x00000247,
SOUND_248 = 0x00000248,
SOUND_249 = 0x00000249,
SOUND_24A = 0x0000024A,
SOUND_24B = 0x0000024B,
SOUND_259 = 0x00000259,
SOUND_25A = 0x0000025A,
SOUND_25C = 0x0000025C,
SOUND_25D = 0x0000025D,
SOUND_261 = 0x00000261,
SOUND_262 = 0x00000262,
SOUND_263 = 0x00000263,
SOUND_265 = 0x00000265,
SOUND_266 = 0x00000266,
SOUND_267 = 0x00000267,
SOUND_269 = 0x00000269,
SOUND_26A = 0x0000026A,
SOUND_26B = 0x0000026B,
SOUND_26C = 0x0000026C,
SOUND_271 = 0x00000271,
SOUND_273 = 0x00000273,
SOUND_274 = 0x00000274,
SOUND_275 = 0x00000275,
SOUND_276 = 0x00000276,
SOUND_281 = 0x00000281,
SOUND_282 = 0x00000282,
SOUND_283 = 0x00000283,
SOUND_284 = 0x00000284,
SOUND_286 = 0x00000286,
SOUND_287 = 0x00000287,
SOUND_288 = 0x00000288,
SOUND_289 = 0x00000289,
SOUND_28A = 0x0000028A,
SOUND_28B = 0x0000028B,
SOUND_28C = 0x0000028C,
SOUND_28E = 0x0000028E,
SOUND_28F = 0x0000028F,
SOUND_290 = 0x00000290,
SOUND_BOW_SPOOK = 0x00000291,
SOUND_292 = 0x00000292,
SOUND_293 = 0x00000293,
SOUND_294 = 0x00000294,
SOUND_295 = 0x00000295,
SOUND_297 = 0x00000297,
SOUND_298 = 0x00000298,
SOUND_299 = 0x00000299,
SOUND_29A = 0x0000029A,
SOUND_29B = 0x0000029B,
SOUND_29C = 0x0000029C,
SOUND_29D = 0x0000029D,
SOUND_2A0 = 0x000002A0,
SOUND_2A1 = 0x000002A1,
SOUND_2A2 = 0x000002A2,
SOUND_2A3 = 0x000002A3,
SOUND_2A4 = 0x000002A4,
SOUND_2A6 = 0x000002A6,
SOUND_2A7 = 0x000002A7,
SOUND_2A8 = 0x000002A8,
SOUND_2AA = 0x000002AA,
SOUND_UNUSED_2C1 = 0x000002C1,
SOUND_2C4 = 0x000002C4,
SOUND_2C5 = 0x000002C5,
SOUND_2C6 = 0x000002C6,
SOUND_2C7 = 0x000002C7,
SOUND_2C8 = 0x000002C8,
SOUND_2C9 = 0x000002C9,
SOUND_2CA = 0x000002CA,
SOUND_2CB = 0x000002CB,
SOUND_SMOKE_BURST = 0x000002CD,
SOUND_2CE = 0x000002CE,
SOUND_2CF = 0x000002CF,
SOUND_2D1 = 0x000002D1,
SOUND_2D2 = 0x000002D2,
SOUND_2D3 = 0x000002D3,
SOUND_2D4 = 0x000002D4,
SOUND_2D5 = 0x000002D5,
SOUND_2D6 = 0x000002D6,
SOUND_DAYZEE_SONG = 0x000002D7,
SOUND_POWER_UP = 0x000002D8,
SOUND_2D9 = 0x000002D9,
SOUND_2DA = 0x000002DA,
SOUND_2DB = 0x000002DB,
SOUND_2DC = 0x000002DC,
SOUND_2DD = 0x000002DD,
SOUND_2DE = 0x000002DE,
SOUND_2DF = 0x000002DF,
SOUND_2E0 = 0x000002E0,
SOUND_2E1 = 0x000002E1,
SOUND_2E2 = 0x000002E2,
SOUND_2E3 = 0x000002E3,
SOUND_2E4 = 0x000002E4,
SOUND_2E5 = 0x000002E5,
SOUND_2E6 = 0x000002E6,
2022-06-12 16:44:36 +02:00
SOUND_2E7 = 0x000002E7,
SOUND_2E8 = 0x000002E8,
SOUND_2E9 = 0x000002E9,
SOUND_2EA = 0x000002EA,
SOUND_2EB = 0x000002EB,
SOUND_2EC = 0x000002EC,
SOUND_2ED = 0x000002ED,
SOUND_2EE = 0x000002EE,
2022-06-12 16:44:36 +02:00
SOUND_2EF = 0x000002EF,
SOUND_2F0 = 0x000002F0,
SOUND_2F1 = 0x000002F1,
SOUND_2F2 = 0x000002F2,
SOUND_2F3 = 0x000002F3,
SOUND_2F4 = 0x000002F4,
SOUND_2F5 = 0x000002F5,
SOUND_TWEESTER_LAUNCH = 0x000002F6,
SOUND_2F7 = 0x000002F7,
SOUND_2F8 = 0x000002F8,
2022-06-12 16:44:36 +02:00
SOUND_2F9 = 0x000002F9,
SOUND_2FA = 0x000002FA,
SOUND_2FB = 0x000002FB,
SOUND_2FC = 0x000002FC,
SOUND_2FD = 0x000002FD,
SOUND_CLOSE_SHELL = 0x000002FF,
SOUND_300 = 0x00000300,
SOUND_301 = 0x00000301,
SOUND_302 = 0x00000302,
SOUND_303 = 0x00000303,
2022-06-12 16:44:36 +02:00
SOUND_305 = 0x00000305,
SOUND_306 = 0x00000306,
SOUND_309 = 0x00000309,
SOUND_30A = 0x0000030A,
SOUND_30B = 0x0000030B,
SOUND_SHY_GUY_SCREAMS1 = 0x0000030C,
SOUND_SHY_GUY_SCREAMS2 = 0x0000030D,
SOUND_SHY_GUY_SCREAMS3 = 0x0000030E,
SOUND_TOY_TANK_MOVE1 = 0x0000030F,
SOUND_TOY_TANK_MOVE2 = 0x00000310,
SOUND_311 = 0x00000311,
SOUND_312 = 0x00000312,
SOUND_315 = 0x00000315,
SOUND_316 = 0x00000316,
SOUND_317 = 0x00000317,
SOUND_318 = 0x00000318,
SOUND_319 = 0x00000319,
SOUND_31A = 0x0000031A,
SOUND_31B = 0x0000031B,
SOUND_31C = 0x0000031C,
SOUND_31D = 0x0000031D,
SOUND_31E = 0x0000031E,
SOUND_31F = 0x0000031F,
SOUND_BURROW_SURFACE = 0x00000321,
SOUND_BURROW_DIG = 0x00000322,
SOUND_MOLE_POP = 0x00000323,
SOUND_327 = 0x00000327,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_328 = 0x00000328,
SOUND_32B = 0x0000032B,
SOUND_32C = 0x0000032C,
SOUND_32E = 0x0000032E,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_32F = 0x0000032F,
SOUND_330 = 0x00000330,
SOUND_331 = 0x00000331,
SOUND_332 = 0x00000332,
SOUND_333 = 0x00000333,
SOUND_334 = 0x00000334,
SOUND_335 = 0x00000335,
SOUND_336 = 0x00000336,
SOUND_337 = 0x00000337,
SOUND_338 = 0x00000338,
SOUND_339 = 0x00000339,
SOUND_33A = 0x0000033A,
SOUND_33B = 0x0000033B,
SOUND_33C = 0x0000033C,
SOUND_33D = 0x0000033D,
SOUND_33E = 0x0000033E,
SOUND_33F = 0x0000033F,
SOUND_340 = 0x00000340,
SOUND_341 = 0x00000341,
SOUND_342 = 0x00000342,
SOUND_343 = 0x00000343,
SOUND_344 = 0x00000344,
SOUND_345 = 0x00000345,
SOUND_346 = 0x00000346,
2022-06-12 16:44:36 +02:00
SOUND_349 = 0x00000349,
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
SOUND_34A = 0x0000034A,
2022-06-12 16:44:36 +02:00
SOUND_34E = 0x0000034E,
SOUND_351 = 0x00000351,
SOUND_353 = 0x00000353,
SOUND_354 = 0x00000354,
SOUND_355 = 0x00000355,
SOUND_356 = 0x00000356,
SOUND_357 = 0x00000357,
SOUND_358 = 0x00000358,
SOUND_359 = 0x00000359,
SOUND_35B = 0x0000035B,
SOUND_35C = 0x0000035C,
SOUND_35D = 0x0000035D,
SOUND_35E = 0x0000035E,
SOUND_35F = 0x0000035F,
SOUND_361 = 0x00000361,
SOUND_362 = 0x00000362,
SOUND_363 = 0x00000363,
SOUND_364 = 0x00000364,
SOUND_365 = 0x00000365,
SOUND_366 = 0x00000366,
SOUND_367 = 0x00000367,
SOUND_368 = 0x00000368,
SOUND_369 = 0x00000369,
SOUND_36B = 0x0000036B,
SOUND_36C = 0x0000036C,
SOUND_36D = 0x0000036D,
SOUND_36E = 0x0000036E,
2022-06-12 16:44:36 +02:00
SOUND_36F = 0x0000036F,
SOUND_370 = 0x00000370,
SOUND_371 = 0x00000371,
SOUND_372 = 0x00000372,
SOUND_373 = 0x00000373,
SOUND_374 = 0x00000374,
SOUND_375 = 0x00000375,
SOUND_376 = 0x00000376,
SOUND_377 = 0x00000377,
SOUND_378 = 0x00000378,
SOUND_379 = 0x00000379,
SOUND_HIT_PLAYER_SHOCK = 0x0000037A,
SOUND_HIT_SHOCK = 0x0000037B,
SOUND_37C = 0x0000037C,
SOUND_37D = 0x0000037D,
SOUND_37E = 0x0000037E,
SOUND_380 = 0x00000380,
SOUND_381 = 0x00000381,
SOUND_382 = 0x00000382,
SOUND_383 = 0x00000383,
SOUND_384 = 0x00000384,
SOUND_385 = 0x00000385,
SOUND_386 = 0x00000386,
SOUND_387 = 0x00000387,
SOUND_388 = 0x00000388,
SOUND_389 = 0x00000389,
SOUND_38A = 0x0000038A,
SOUND_38B = 0x0000038B,
SOUND_38C = 0x0000038C,
SOUND_38D = 0x0000038D,
SOUND_38E = 0x0000038E,
SOUND_390 = 0x00000390,
SOUND_391 = 0x00000391,
SOUND_392 = 0x00000392,
SOUND_393 = 0x00000393,
SOUND_394 = 0x00000394,
SOUND_GENERAL_WHISTLE = 0x00000395,
SOUND_396 = 0x00000396,
SOUND_397 = 0x00000397,
SOUND_398 = 0x00000398,
SOUND_399 = 0x00000399,
SOUND_39A = 0x0000039A,
SOUND_39B = 0x0000039B,
SOUND_39C = 0x0000039C,
SOUND_39D = 0x0000039D,
SOUND_39E = 0x0000039E,
SOUND_39F = 0x0000039F,
SOUND_3A0 = 0x000003A0,
SOUND_3A2 = 0x000003A2,
SOUND_3A3 = 0x000003A3,
SOUND_3A4 = 0x000003A4,
SOUND_3A5 = 0x000003A5,
SOUND_3A6 = 0x000003A6,
SOUND_3A7 = 0x000003A7,
SOUND_3A8 = 0x000003A8,
SOUND_3A9 = 0x000003A9,
SOUND_3AA = 0x000003AA,
SOUND_3AB = 0x000003AB,
SOUND_3AC = 0x000003AC,
2022-06-12 16:44:36 +02:00
SOUND_3AD = 0x000003AD,
SOUND_3AE = 0x000003AE,
SOUND_3AF = 0x000003AF,
SOUND_3B0 = 0x000003B0,
SOUND_3B1 = 0x000003B1,
SOUND_3B2 = 0x000003B2,
SOUND_3B3 = 0x000003B3,
2022-06-12 16:44:36 +02:00
SOUND_3B4 = 0x000003B4,
SOUND_FAKE_BOWSER_BLAST = 0x000003B5, // large blasting sound when the fake bowser robot is destroyed
SOUND_3B6 = 0x000003B6,
SOUND_3B7 = 0x000003B7,
SOUND_3B9 = 0x000003B9,
SOUND_3BB = 0x000003BB,
SOUND_3BC = 0x000003BC,
SOUND_3BD = 0x000003BD,
SOUND_3BE = 0x000003BE,
SOUND_3C0 = 0x000003C0,
SOUND_3C1 = 0x000003C1,
SOUND_3C3 = 0x000003C3,
SOUND_3C4 = 0x000003C4,
SOUND_3C5 = 0x000003C5,
SOUND_3C6 = 0x000003C6,
SOUND_3C7 = 0x000003C7,
SOUND_3C8 = 0x000003C8,
SOUND_3C9 = 0x000003C9,
SOUND_3CA = 0x000003CA,
SOUND_3CB = 0x000003CB,
SOUND_3CC = 0x000003CC,
SOUND_3CD = 0x000003CD,
SOUND_3CE = 0x000003CE,
SOUND_3CF = 0x000003CF,
SOUND_3D0 = 0x000003D0,
SOUND_3D1 = 0x000003D1,
2022-06-12 16:44:36 +02:00
SOUND_3D2 = 0x000003D2,
SOUND_3D3 = 0x000003D3,
SOUND_OPEN_SHELL = 0x000003D4,
SOUND_3D5 = 0x000003D5,
SOUND_3D6 = 0x000003D6,
SOUND_3D9 = 0x000003D9,
SOUND_3DB = 0x000003DB,
SOUND_3DC = 0x000003DC,
SOUND_3DD = 0x000003DD,
SOUND_3DE = 0x000003DE,
SOUND_3E0 = 0x000003E0,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_3E1 = 0x000003E1,
SOUND_JUMP_3E2 = 0x000003E2,
SOUND_MISS_JUMP = 0x000003E3,
SOUND_3E4 = 0x000003E4,
SOUND_DEATH = 0x000003E5,
SOUND_BIG_POWER_UP = 0x000003E6,
SOUND_3E7 = 0x000003E7,
SOUND_MOLE_THROW = 0x000003E8,
SOUND_3E9 = 0x000003E9,
SOUND_3EA = 0x000003EA,
2022-06-12 16:44:36 +02:00
SOUND_3EB = 0x000003EB,
SOUND_3EC = 0x000003EC,
SOUND_3ED = 0x000003ED,
SOUND_3EE = 0x000003EE,
SOUND_3EF = 0x000003EF,
SOUND_DANGER = 0x000003F1,
SOUND_PERIL = 0x000003F2,
SOUND_3F3 = 0x000003F3,
SOUND_3F4 = 0x000003F4,
SOUND_3F6 = 0x000003F6,
SOUND_3F9 = 0x000003F9,
SOUND_THROW = 0x000003FA,
SOUND_3FB = 0x000003FB,
SOUND_3FC = 0x000003FC,
SOUND_2003 = 0x00002003,
SOUND_2004 = 0x00002004,
SOUND_2005 = 0x00002005,
SOUND_2006 = 0x00002006,
SOUND_2009 = 0x00002009,
SOUND_200A = 0x0000200A,
SOUND_200B = 0x0000200B,
SOUND_200C = 0x0000200C,
SOUND_200D = 0x0000200D,
SOUND_BOW_VANISH = 0x0000200E,
SOUND_BOW_APPEAR = 0x0000200F,
SOUND_2010 = 0x00002010,
SOUND_WATT_REPEL_DARKNESS = 0x00002011,
SOUND_WATT_RESUME_DARKNESS = 0x00002012,
SOUND_2013 = 0x00002013,
SOUND_2014 = 0x00002014,
SOUND_2015 = 0x00002015,
SOUND_CANNON1 = 0x00002016,
SOUND_CANNON2 = 0x00002017,
SOUND_CANNON3 = 0x00002018,
SOUND_2019 = 0x00002019,
SOUND_201A = 0x0000201A,
SOUND_201B = 0x0000201B,
SOUND_201C = 0x0000201C,
SOUND_201D = 0x0000201D,
SOUND_201E = 0x0000201E,
SOUND_201F = 0x0000201F,
SOUND_2020 = 0x00002020,
SOUND_2021 = 0x00002021,
SOUND_2022 = 0x00002022,
SOUND_2023 = 0x00002023,
SOUND_2024 = 0x00002024,
SOUND_2026 = 0x00002026,
SOUND_202A = 0x0000202A,
SOUND_202B = 0x0000202B,
SOUND_202C = 0x0000202C,
SOUND_202D = 0x0000202D,
SOUND_202E = 0x0000202E,
SOUND_202F = 0x0000202F,
SOUND_2030 = 0x00002030,
SOUND_INFLICT_SLEEP = 0x00002031,
SOUND_INFLICT_STATUS = 0x00002032, //< Stop poison paralyze,
SOUND_2033 = 0x00002033,
SOUND_2034 = 0x00002034,
SOUND_2035 = 0x00002035,
SOUND_2036 = 0x00002036,
SOUND_2037 = 0x00002037,
SOUND_2038 = 0x00002038,
SOUND_2039 = 0x00002039,
SOUND_203A = 0x0000203A,
SOUND_203B = 0x0000203B,
SOUND_203C = 0x0000203C,
SOUND_203D = 0x0000203D,
SOUND_203E = 0x0000203E,
SOUND_203F = 0x0000203F,
SOUND_2040 = 0x00002040,
SOUND_2041 = 0x00002041,
SOUND_2042 = 0x00002042,
SOUND_2043 = 0x00002043,
SOUND_2044 = 0x00002044,
SOUND_2045 = 0x00002045,
SOUND_2046 = 0x00002046,
SOUND_2047 = 0x00002047,
SOUND_2049 = 0x00002049,
SOUND_204A = 0x0000204A,
SOUND_204B = 0x0000204B,
SOUND_204D = 0x0000204D,
SOUND_2051 = 0x00002051,
SOUND_2052 = 0x00002052,
SOUND_2053 = 0x00002053,
SOUND_2055 = 0x00002055,
SOUND_2056 = 0x00002056,
SOUND_2059 = 0x00002059,
SOUND_205A = 0x0000205A,
SOUND_205B = 0x0000205B,
SOUND_205C = 0x0000205C,
SOUND_205D = 0x0000205D,
SOUND_205E = 0x0000205E,
SOUND_205F = 0x0000205F,
SOUND_2060 = 0x00002060,
SOUND_2061 = 0x00002061,
SOUND_2062 = 0x00002062,
SOUND_2063 = 0x00002063,
2022-06-12 16:44:36 +02:00
SOUND_2064 = 0x00002064,
SOUND_2065 = 0x00002065,
SOUND_2066 = 0x00002066,
SOUND_2067 = 0x00002067,
SOUND_2069 = 0x00002069,
SOUND_206A = 0x0000206A,
SOUND_206B = 0x0000206B,
SOUND_206D = 0x0000206D,
SOUND_206E = 0x0000206E,
SOUND_206F = 0x0000206F,
SOUND_2070 = 0x00002070,
SOUND_2071 = 0x00002071,
SOUND_2072 = 0x00002072,
SOUND_2073 = 0x00002073,
SOUND_2074 = 0x00002074,
SOUND_2075 = 0x00002075,
SOUND_BOMB_BLAST = 0x00002076,
SOUND_2078 = 0x00002078,
SOUND_2079 = 0x00002079,
SOUND_207A = 0x0000207A,
SOUND_207B = 0x0000207B,
SOUND_207C = 0x0000207C,
SOUND_207D = 0x0000207D,
SOUND_207E = 0x0000207E,
SOUND_207F = 0x0000207F,
SOUND_JUMP_2081 = 0x00002081,
SOUND_JUMP_8BIT_MARIO = 0x00002082,
SOUND_2085 = 0x00002085,
SOUND_2086 = 0x00002086,
SOUND_2087 = 0x00002087,
SOUND_2088 = 0x00002088,
SOUND_2089 = 0x00002089,
SOUND_208A = 0x0000208A,
SOUND_208B = 0x0000208B,
SOUND_208C = 0x0000208C,
SOUND_208D = 0x0000208D,
SOUND_208E = 0x0000208E,
SOUND_208F = 0x0000208F,
SOUND_2091 = 0x00002091,
SOUND_2092 = 0x00002092,
SOUND_2093 = 0x00002093,
SOUND_2094 = 0x00002094,
SOUND_2095 = 0x00002095,
SOUND_2096 = 0x00002096,
SOUND_2097 = 0x00002097,
SOUND_2098 = 0x00002098,
SOUND_2099 = 0x00002099,
SOUND_209A = 0x0000209A,
SOUND_209B = 0x0000209B,
SOUND_209D = 0x0000209D,
SOUND_209E = 0x0000209E,
SOUND_209F = 0x0000209F,
SOUND_20A0 = 0x000020A0,
SOUND_20A1 = 0x000020A1,
SOUND_20A2 = 0x000020A2,
SOUND_20A3 = 0x000020A3,
SOUND_20A4 = 0x000020A4,
SOUND_20A5 = 0x000020A5,
SOUND_20A6 = 0x000020A6,
SOUND_20A7 = 0x000020A7,
SOUND_20A8 = 0x000020A8,
SOUND_20AB = 0x000020AB,
SOUND_20AC = 0x000020AC,
SOUND_20AD = 0x000020AD,
SOUND_20AE = 0x000020AE,
SOUND_20B1 = 0x000020B1,
SOUND_20B2 = 0x000020B2,
SOUND_20B3 = 0x000020B3,
SOUND_20B4 = 0x000020B4,
SOUND_20B6 = 0x000020B6,
SOUND_20B7 = 0x000020B7,
SOUND_20B8 = 0x000020B8,
SOUND_20B9 = 0x000020B9,
2022-06-12 16:44:36 +02:00
SOUND_20BA = 0x000020BA,
SOUND_20BB = 0x000020BB,
SOUND_20BC = 0x000020BC,
SOUND_20BD = 0x000020BD,
SOUND_20BE = 0x000020BE,
SOUND_20BF = 0x000020BF,
SOUND_20C1 = 0x000020C1,
SOUND_20C2 = 0x000020C2,
2022-06-12 16:44:36 +02:00
SOUND_20C3 = 0x000020C3,
SOUND_20C4 = 0x000020C4,
SOUND_20C5 = 0x000020C5,
SOUND_20C6 = 0x000020C6,
SOUND_20C8 = 0x000020C8,
SOUND_20C9 = 0x000020C9,
SOUND_20CA = 0x000020CA,
SOUND_20CB = 0x000020CB,
SOUND_20CC = 0x000020CC,
SOUND_20CD = 0x000020CD,
SOUND_20CE = 0x000020CE,
SOUND_20CF = 0x000020CF,
SOUND_20D0 = 0x000020D0,
SOUND_20D1 = 0x000020D1,
SOUND_20D2 = 0x000020D2,
SOUND_20D3 = 0x000020D3,
SOUND_SPELL_CAST1 = 0x000020D4,
SOUND_SPELL_CAST2 = 0x000020D5,
SOUND_SPELL_CAST3 = 0x000020D6,
SOUND_SPELL_CAST4 = 0x000020D7,
SOUND_SPELL_CAST5 = 0x000020D8,
SOUND_20D9 = 0x000020D9,
SOUND_20DA = 0x000020DA,
SOUND_20DB = 0x000020DB,
SOUND_20DC = 0x000020DC,
SOUND_20DD = 0x000020DD,
SOUND_20DE = 0x000020DE,
SOUND_20DF = 0x000020DF,
SOUND_20E0 = 0x000020E0,
SOUND_20E1 = 0x000020E1,
SOUND_20E2 = 0x000020E2,
SOUND_20E3 = 0x000020E3,
2022-06-12 16:44:36 +02:00
SOUND_20E4 = 0x000020E4,
SOUND_20E5 = 0x000020E5,
SOUND_20E6 = 0x000020E6,
SOUND_20E7 = 0x000020E7,
SOUND_20E8 = 0x000020E8,
SOUND_20E9 = 0x000020E9,
SOUND_20EA = 0x000020EA,
SOUND_20EB = 0x000020EB,
SOUND_20EC = 0x000020EC,
SOUND_20ED = 0x000020ED,
SOUND_20EE = 0x000020EE,
SOUND_20EF = 0x000020EF,
SOUND_20F0 = 0x000020F0,
SOUND_20F1 = 0x000020F1,
SOUND_20F2 = 0x000020F2,
SOUND_20F3 = 0x000020F3,
SOUND_20F4 = 0x000020F4,
SOUND_20F5 = 0x000020F5,
SOUND_20F6 = 0x000020F6,
SOUND_20F7 = 0x000020F7,
SOUND_20F9 = 0x000020F9,
SOUND_20FB = 0x000020FB,
SOUND_20FC = 0x000020FC,
SOUND_20FD = 0x000020FD,
SOUND_20FE = 0x000020FE,
2022-03-10 10:55:38 +01:00
SOUND_2101 = 0x00002101,
SOUND_2102 = 0x00002102,
SOUND_2103 = 0x00002103,
SOUND_2104 = 0x00002104,
SOUND_2105 = 0x00002105,
SOUND_2106 = 0x00002106,
SOUND_2107 = 0x00002107,
SOUND_2108 = 0x00002108,
SOUND_210A = 0x0000210A,
SOUND_210B = 0x0000210B,
SOUND_210C = 0x0000210C,
SOUND_2111 = 0x00002111,
SOUND_2112 = 0x00002112,
SOUND_2113 = 0x00002113,
SOUND_2114 = 0x00002114,
SOUND_2115 = 0x00002115,
SOUND_2116 = 0x00002116,
SOUND_2117 = 0x00002117,
SOUND_2118 = 0x00002118,
SOUND_2119 = 0x00002119,
SOUND_211A = 0x0000211A,
SOUND_211B = 0x0000211B,
SOUND_211C = 0x0000211C,
SOUND_211D = 0x0000211D,
SOUND_211E = 0x0000211E,
SOUND_211F = 0x0000211F,
SOUND_2120 = 0x00002120,
SOUND_2121 = 0x00002121,
SOUND_2122 = 0x00002122,
SOUND_2123 = 0x00002123,
SOUND_2124 = 0x00002124,
SOUND_2125 = 0x00002125,
SOUND_2126 = 0x00002126,
SOUND_2127 = 0x00002127,
SOUND_2128 = 0x00002128,
SOUND_2129 = 0x00002129,
SOUND_212A = 0x0000212A,
SOUND_212B = 0x0000212B,
SOUND_212C = 0x0000212C,
SOUND_212D = 0x0000212D,
SOUND_212E = 0x0000212E,
// looping sounds
SOUND_80000000 = 0x80000000,
SOUND_80000001 = 0x80000001,
SOUND_80000002 = 0x80000002,
SOUND_80000003 = 0x80000003,
SOUND_80000004 = 0x80000004,
SOUND_80000005 = 0x80000005,
SOUND_80000006 = 0x80000006,
SOUND_80000007 = 0x80000007,
SOUND_80000008 = 0x80000008,
SOUND_80000009 = 0x80000009,
SOUND_8000000B = 0x8000000B,
SOUND_8000000C = 0x8000000C,
SOUND_8000000D = 0x8000000D,
SOUND_8000000E = 0x8000000E,
SOUND_8000000F = 0x8000000F,
SOUND_80000010 = 0x80000010,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_80000011 = 0x80000011,
SOUND_80000015 = 0x80000015,
SOUND_80000016 = 0x80000016,
SOUND_80000017 = 0x80000017,
SOUND_80000018 = 0x80000018,
SOUND_80000019 = 0x80000019,
SOUND_8000001A = 0x8000001A,
SOUND_8000001B = 0x8000001B,
SOUND_8000001C = 0x8000001C,
SOUND_8000001D = 0x8000001D,
SOUND_8000001E = 0x8000001E,
SOUND_80000021 = 0x80000021,
SOUND_80000022 = 0x80000022,
SOUND_80000023 = 0x80000023,
SOUND_80000024 = 0x80000024,
SOUND_80000025 = 0x80000025,
SOUND_80000027 = 0x80000027,
SOUND_80000028 = 0x80000028,
SOUND_80000029 = 0x80000029,
SOUND_8000002A = 0x8000002A,
SOUND_8000002B = 0x8000002B,
SOUND_8000002C = 0x8000002C,
SOUND_8000002D = 0x8000002D,
SOUND_8000002E = 0x8000002E,
SOUND_8000002F = 0x8000002F,
SOUND_80000030 = 0x80000030,
SOUND_80000031 = 0x80000031,
SOUND_80000032 = 0x80000032,
SOUND_80000033 = 0x80000033,
SOUND_80000034 = 0x80000034,
SOUND_80000035 = 0x80000035,
SOUND_80000036 = 0x80000036,
SOUND_80000037 = 0x80000037,
SOUND_80000038 = 0x80000038,
SOUND_80000039 = 0x80000039,
SOUND_80000040 = 0x80000040,
SOUND_80000041 = 0x80000041,
SOUND_80000042 = 0x80000042,
SOUND_80000043 = 0x80000043,
SOUND_80000044 = 0x80000044,
SOUND_80000045 = 0x80000045,
SOUND_80000046 = 0x80000046,
SOUND_80000047 = 0x80000047,
SOUND_80000048 = 0x80000048,
SOUND_80000049 = 0x80000049,
SOUND_8000004A = 0x8000004A,
SOUND_8000004B = 0x8000004B,
SOUND_8000004C = 0x8000004C,
SOUND_8000004D = 0x8000004D,
SOUND_8000004F = 0x8000004F,
SOUND_80000050 = 0x80000050,
SOUND_80000051 = 0x80000051,
SOUND_80000052 = 0x80000052,
SOUND_80000053 = 0x80000053,
SOUND_80000055 = 0x80000055,
SOUND_80000056 = 0x80000056,
SOUND_80000057 = 0x80000057,
SOUND_80000058 = 0x80000058,
SOUND_80000059 = 0x80000059,
SOUND_8000005A = 0x8000005A,
SOUND_8000005B = 0x8000005B,
SOUND_8000005C = 0x8000005C,
SOUND_8000005D = 0x8000005D,
SOUND_8000005E = 0x8000005E,
SOUND_8000005F = 0x8000005F,
SOUND_80000060 = 0x80000060,
SOUND_80000061 = 0x80000061,
SOUND_80000063 = 0x80000063,
SOUND_80000064 = 0x80000064,
SOUND_80000065 = 0x80000065,
SOUND_80000066 = 0x80000066,
SOUND_80000067 = 0x80000067,
SOUND_80000068 = 0x80000068,
SOUND_80000069 = 0x80000069,
SOUND_8000006A = 0x8000006A,
SOUND_8000006B = 0x8000006B,
SOUND_8000006C = 0x8000006C,
// exit doors
SOUND_DOOR_OPEN = 0x90000000,
SOUND_DOOR_CLOSE = 0x90000001,
// room doors
SOUND_ROOM_DOOR_OPEN = 0xA0000000,
SOUND_ROOM_DOOR_CLOSE = 0xA0000001,
// alternating sounds
SOUND_FIRE_BAR_0 = 0xB0000000,
SOUND_FIRE_BAR_1 = 0xB0000001,
SOUND_FIRE_BAR_2 = 0xB0000002,
SOUND_FIRE_BAR_3 = 0xB0000003,
SOUND_FIRE_BAR_4 = 0xB0000004,
SOUND_FIRE_BAR_5 = 0xB0000005,
SOUND_FIRE_BAR_6 = 0xB0000006,
SOUND_FIRE_BAR_7 = 0xB0000007,
SOUND_FIRE_BAR_8 = 0xB0000008,
SOUND_FIRE_BAR_9 = 0xB0000009,
SOUND_B000000A = 0xB000000A,
SOUND_B000000C = 0xB000000C,
SOUND_B000000D = 0xB000000D,
SOUND_B000000E = 0xB000000E,
2022-12-28 15:30:30 +01:00
SOUND_B000000F = 0xB000000F,
SOUND_B0000010 = 0xB0000010,
SOUND_B0000011 = 0xB0000011,
SOUND_B0000012 = 0xB0000012,
SOUND_B0000015 = 0xB0000015,
SOUND_B0000016 = 0xB0000016,
SOUND_B0000017 = 0xB0000017,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
SOUND_B0000018 = 0xB0000018,
SOUND_B0000019 = 0xB0000019,
SOUND_B000001A = 0xB000001A,
SOUND_B000001B = 0xB000001B,
SOUND_B000001C = 0xB000001C,
SOUND_B000001D = 0xB000001D,
SOUND_B000001E = 0xB000001E,
SOUND_B000001F = 0xB000001F,
SOUND_B0000021 = 0xB0000021,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum SoundSpatializationFlags {
SOUND_SPACE_MODE_MASK = 0x0000FFFF,
SOUND_SPACE_MODE_0 = 0x00000000,
SOUND_SPACE_MODE_1 = 0x00000001,
SOUND_SPACE_FULL = 0x00000002,
SOUND_SPACE_PARAMS_MASK = 0xFFFF0000,
SOUND_PARAM_MUTE = 0x00010000,
SOUND_PARAM_CLIP_OFFSCREEN_ANY = 0x00020000,
SOUND_PARAM_CLIP_OFFSCREEN_X = 0x00040000,
SOUND_PARAM_CLIP_OFFSCREEN_Y = 0x00080000,
SOUND_PARAM_MOST_QUIET = 0x00100000,
SOUND_PARAM_MORE_QUIET = 0x00200000,
SOUND_PARAM_QUIET = 0x00400000,
};
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
enum SoundType {
SOUND_TYPE_SPECIAL = 0x80000000,
SOUND_TYPE_LOOPING = 0,
SOUND_TYPE_EXIT_DOOR = 1, // 0x90000000 (with SOUND_TYPE_SPECIAL)
SOUND_TYPE_ROOM_DOOR = 2, // 0xA0000000 (with SOUND_TYPE_SPECIAL)
SOUND_TYPE_ALTERNATING = 3, // 0xB0000000 (with SOUND_TYPE_SPECIAL)
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
};
enum SoundIDBits {
SOUND_ID_STOP = 0x00008000,
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
SOUND_ID_LOWER = 0x000023FF,
SOUND_ID_ADJUST = 0x00001000,
SOUND_ID_TRIGGER_MASK = 0x00000C00,
SOUND_ID_TRIGGER_CHANGE_SOUND = 0x00000400,
SOUND_ID_TRIGGER_CHANGE_VOLUME = 0x00000800,
};
enum SoundTriggers {
SOUND_TRIGGER_CHANGE_SOUND = 1,
SOUND_TRIGGER_CHANGE_VOLUME = 2,
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
};
typedef enum AuResult {
AU_RESULT_OK = 0,
AU_ERROR_1 = 1,
AU_AMBIENCE_ERROR_1 = 1,
AU_ERROR_SONG_NOT_PLAYING = 2, // player not found for songName
AU_AMBIENCE_ERROR_2 = 2,
AU_ERROR_NULL_SONG_NAME = 3, // songName is NULL
AU_AMBIENCE_ERROR_3 = 3,
AU_ERROR_INVALID_SONG_DURATION = 4, // duration out of bounds: (250,10000)
AU_ERROR_6 = 6,
AU_ERROR_7 = 7,
AU_ERROR_11 = 11,
AU_ERROR_SBN_INDEX_OUT_OF_RANGE = 101,
AU_ERROR_SBN_FORMAT_MISMATCH = 102,
AU_ERROR_151 = 151,
AU_ERROR_201 = 201
} AuResult;
typedef enum AuFileFormat {
AU_FMT_BGM = 0x10,
AU_FMT_SEF = 0x20,
AU_FMT_BK = 0x30,
AU_FMT_PER = 0x40,
AU_FMT_PRG = 0x40,
AU_FMT_MSEQ = 0x40
} AuFileFormat;
enum {
MUSIC_PROXIMITY_FAR,
MUSIC_PROXIMITY_NEAR,
MUSIC_PROXIMITY_FULL
};
typedef enum MusicTrackVols {
TRACK_VOLS_0 = 0,
TRACK_VOLS_1 = 1,
TRACK_VOLS_2 = 2,
TRACK_VOLS_3 = 3,
TRACK_VOLS_KPA_OUTSIDE = 4,
TRACK_VOLS_KPA_1 = 5,
TRACK_VOLS_KPA_2 = 6,
TRACK_VOLS_KPA_3 = 7
} MusicTrackVols;
2021-03-29 09:34:39 +02:00
enum Cams {
CAM_DEFAULT = 0,
CAM_BATTLE = 1,
CAM_TATTLE = 2,
CAM_3 = 3,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum CamShakeModes {
CAM_SHAKE_CONSTANT_VERTICAL = 0,
CAM_SHAKE_ANGULAR_HORIZONTAL = 1,
CAM_SHAKE_DECAYING_VERTICAL = 2
};
// for use with SetBattleCamParam
enum AuxCameraParams {
AUX_CAM_PARAM_1 = 1,
AUX_CAM_BOOM_LENGTH = 2,
AUX_CAM_PARAM_3 = 3,
AUX_CAM_BOOM_PITCH = 4,
AUX_CAM_BOOM_YAW = 5,
AUX_CAM_BOOM_ZOFFSET = 6,
AUX_CAM_PARAM_7 = 7,
AUX_CAM_ZOOM_PERCENT = 8
};
2021-03-29 09:34:39 +02:00
enum ItemIDs {
ITEM_NONE = 0x00000000,
ITEM_BOOTS = 0x00000001,
ITEM_SUPER_BOOTS = 0x00000002,
ITEM_ULTRA_BOOTS = 0x00000003,
ITEM_HAMMER = 0x00000004,
ITEM_SUPER_HAMMER = 0x00000005,
ITEM_ULTRA_HAMMER = 0x00000006,
ITEM_LUCKY_STAR = 0x00000007,
ITEM_MAP = 0x00000008,
ITEM_BIG_MAP = 0x00000009,
ITEM_FIRST_DEGREE_CARD = 0x0000000A,
ITEM_SECOND_DEGREE_CARD = 0x0000000B,
ITEM_THIRD_DEGREE_CARD = 0x0000000C,
ITEM_FOURTH_DEGREE_CARD = 0x0000000D,
ITEM_DIPLOMA = 0x0000000E,
ITEM_ULTRA_STONE = 0x0000000F,
ITEM_KOOPA_FORTRESS_KEY = 0x00000010,
ITEM_RUINS_KEY = 0x00000011,
ITEM_PULSE_STONE = 0x00000012,
ITEM_TUBBA_CASTLE_KEY = 0x00000013,
ITEM_CRYSTAL_PALACE_KEY = 0x00000014,
ITEM_LUNAR_STONE = 0x00000015,
ITEM_PYRAMID_STONE = 0x00000016,
ITEM_DIAMOND_STONE = 0x00000017,
ITEM_GOLDEN_VASE = 0x00000018,
ITEM_KOOPER_SHELL = 0x00000019,
ITEM_BOWSER_CASTLE_KEY = 0x0000001A,
ITEM_FOREST_PASS = 0x0000001B,
ITEM_BOO_WEIGHT = 0x0000001C,
ITEM_BOO_PORTRAIT = 0x0000001D,
ITEM_CRYSTAL_BERRY = 0x0000001E,
ITEM_MYSTICAL_KEY = 0x0000001F,
ITEM_STOREROOM_KEY = 0x00000020,
ITEM_TOY_TRAIN = 0x00000021,
ITEM_BOO_RECORD = 0x00000022,
ITEM_FRYING_PAN = 0x00000023,
ITEM_DICTIONARY = 0x00000024,
ITEM_MYSTERY_NOTE = 0x00000025,
ITEM_SUSPICIOUS_NOTE = 0x00000026,
ITEM_CRYSTAL_BALL = 0x00000027,
ITEM_SCREWDRIVER = 0x00000028,
ITEM_COOKBOOK = 0x00000029,
ITEM_JADE_RAVEN = 0x0000002A,
ITEM_MAGICAL_SEED1 = 0x0000002B,
ITEM_MAGICAL_SEED2 = 0x0000002C,
ITEM_MAGICAL_SEED3 = 0x0000002D,
ITEM_MAGICAL_SEED4 = 0x0000002E,
ITEM_TOAD_DOLL = 0x0000002F,
ITEM_CALCULATOR = 0x00000030,
ITEM_SNOWMAN_BUCKET = 0x00000031,
ITEM_SNOWMAN_SCARF = 0x00000032,
ITEM_RED_KEY = 0x00000033,
ITEM_BLUE_KEY = 0x00000034,
ITEM_UNUSED_LETTER_1 = 0x00000035,
ITEM_LETTER_TO_MERLON = 0x00000036,
ITEM_LETTER_TO_GOOMPA = 0x00000037,
ITEM_LETTER_TO_MORT_T = 0x00000038,
ITEM_LETTER_TO_RUSS_T = 0x00000039,
ITEM_LETTER_TO_MAYOR_PENGUIN = 0x0000003A,
ITEM_LETTER_TO_MERLOW = 0x0000003B,
ITEM_LETTER_TO_FICE_T = 0x0000003C,
ITEM_LETTER_TO_NOMADIMOUSE = 0x0000003D,
ITEM_LETTER_TO_MINHT = 0x0000003E,
ITEM_UNUSED_LETTER_2 = 0x0000003F,
ITEM_LETTER_CHAIN_GOOMPAPA_1 = 0x00000040,
ITEM_LETTER_TO_IGOR = 0x00000041,
ITEM_UNUSED_LETTER_3 = 0x00000042,
ITEM_UNUSED_LETTER_4 = 0x00000043,
ITEM_UNUSED_LETTER_5 = 0x00000044,
ITEM_LETTER_CHAIN_FRANKY = 0x00000045,
ITEM_LETTER_CHAIN_MUSS_T = 0x00000046,
ITEM_LETTER_CHAIN_KOOVER_1 = 0x00000047,
ITEM_LETTER_CHAIN_FISHMAEL = 0x00000048,
ITEM_LETTER_CHAIN_KOOVER_2 = 0x00000049,
ITEM_LETTER_CHAIN_MR_E = 0x0000004A,
ITEM_LETTER_CHAIN_MISS_T = 0x0000004B,
ITEM_LETTER_CHAIN_LITTLE_MOUSER = 0x0000004C,
ITEM_UNUSED_LETTER_6 = 0x0000004D,
ITEM_LETTER_CHAIN_DANE_T_1 = 0x0000004E,
ITEM_LETTER_CHAIN_YOSHI_KID = 0x0000004F,
ITEM_LETTER_CHAIN_DANE_T_2 = 0x00000050,
ITEM_LETTER_CHAIN_FROST_T = 0x00000051,
ITEM_LETTER_CHAIN_GOOMPAPA_2 = 0x00000052,
ITEM_ARTIFACT = 0x00000053,
ITEM_LETTER_TO_KOLORADO = 0x00000054,
ITEM_UNUSED_LETTER_7 = 0x00000055,
ITEM_DOLLY = 0x00000056,
ITEM_WATER_STONE = 0x00000057,
ITEM_MAGICAL_BEAN = 0x00000058,
ITEM_FERTILE_SOIL = 0x00000059,
ITEM_MIRACLE_WATER = 0x0000005A,
ITEM_VOLCANO_VASE = 0x0000005B,
ITEM_KOOT_THE_TAPE = 0x0000005C,
ITEM_BAKING_SUGAR = 0x0000005D,
ITEM_BAKING_SALT = 0x0000005E,
ITEM_BAKING_EGG = 0x0000005F,
ITEM_BAKING_CREAM = 0x00000060,
ITEM_BAKING_STRAWBERRY = 0x00000061,
ITEM_BAKING_BUTTER = 0x00000062,
ITEM_BAKING_CLEANSER = 0x00000063,
ITEM_BAKING_WATER = 0x00000064,
ITEM_BAKING_FLOUR = 0x00000065,
ITEM_BAKING_MILK = 0x00000066,
ITEM_LYRICS = 0x00000067,
ITEM_MELODY = 0x00000068,
ITEM_MAILBAG = 0x00000069,
ITEM_PEACH_KEY1 = 0x0000006A,
ITEM_ODD_KEY = 0x0000006B,
ITEM_STAR_STONE = 0x0000006C,
ITEM_SNEAKY_PARASOL = 0x0000006D,
ITEM_KOOT_KOOPA_LEGENDS = 0x0000006E,
ITEM_KOOT_LUIGIS_AUTOGRAPH = 0x0000006F,
ITEM_KOOT_EMPTY_WALLET = 0x00000070,
ITEM_KOOT_MERLUVLEES_AUTOGRAPH = 0x00000071,
ITEM_KOOT_SHELL = 0x00000072,
ITEM_KOOT_OLD_PHOTO = 0x00000073,
ITEM_KOOT_GLASSES = 0x00000074,
ITEM_KOOT_ALT_PHOTO = 0x00000075,
ITEM_KOOT_PACKAGE = 0x00000076,
ITEM_KOOT_RED_JAR = 0x00000077,
ITEM_PEACH_KEY2 = 0x00000078,
ITEM_WAREHOUSE_KEY = 0x00000079,
ITEM_PRISON_KEY1 = 0x0000007A,
ITEM_SILVER_CREDIT = 0x0000007B,
ITEM_GOLD_CREDIT = 0x0000007C,
ITEM_PRISON_KEY2 = 0x0000007D,
ITEM_PRISON_KEY3 = 0x0000007E,
ITEM_PRISON_KEY4 = 0x0000007F,
ITEM_FIRE_FLOWER = 0x00000080,
ITEM_SNOWMAN_DOLL = 0x00000081,
ITEM_THUNDER_RAGE = 0x00000082,
ITEM_SHOOTING_STAR = 0x00000083,
ITEM_THUNDER_BOLT = 0x00000084,
ITEM_PEBBLE = 0x00000085,
ITEM_DUSTY_HAMMER = 0x00000086,
ITEM_INSECTICIDE_HERB = 0x00000087,
ITEM_STONE_CAP = 0x00000088,
ITEM_TASTY_TONIC = 0x00000089,
ITEM_MUSHROOM = 0x0000008A,
ITEM_VOLT_SHROOM = 0x0000008B,
ITEM_SUPER_SHROOM = 0x0000008C,
ITEM_DRIED_SHROOM = 0x0000008D,
ITEM_ULTRA_SHROOM = 0x0000008E,
ITEM_SLEEPY_SHEEP = 0x0000008F,
ITEM_POW_BLOCK = 0x00000090,
ITEM_HUSTLE_DRINK = 0x00000091,
ITEM_STOP_WATCH = 0x00000092,
ITEM_WHACKAS_BUMP = 0x00000093,
ITEM_APPLE = 0x00000094,
ITEM_LIFE_SHROOM = 0x00000095,
ITEM_MYSTERY = 0x00000096,
ITEM_REPEL_GEL = 0x00000097,
ITEM_FRIGHT_JAR = 0x00000098,
ITEM_PLEASE_COME_BACK = 0x00000099,
ITEM_DIZZY_DIAL = 0x0000009A,
ITEM_SUPER_SODA = 0x0000009B,
ITEM_LEMON = 0x0000009C,
ITEM_LIME = 0x0000009D,
ITEM_BLUE_BERRY = 0x0000009E,
ITEM_RED_BERRY = 0x0000009F,
ITEM_YELLOW_BERRY = 0x000000A0,
ITEM_BUBBLE_BERRY = 0x000000A1,
ITEM_JAMMIN_JELLY = 0x000000A2,
ITEM_MAPLE_SYRUP = 0x000000A3,
ITEM_HONEY_SYRUP = 0x000000A4,
ITEM_GOOMNUT = 0x000000A5,
ITEM_KOOPA_LEAF = 0x000000A6,
ITEM_DRIED_PASTA = 0x000000A7,
ITEM_DRIED_FRUIT = 0x000000A8,
ITEM_STRANGE_LEAF = 0x000000A9,
ITEM_CAKE_MIX = 0x000000AA,
ITEM_EGG = 0x000000AB,
ITEM_COCONUT = 0x000000AC,
ITEM_MELON = 0x000000AD,
ITEM_STINKY_HERB = 0x000000AE,
ITEM_ICED_POTATO = 0x000000AF,
ITEM_SPICY_SOUP = 0x000000B0,
ITEM_APPLE_PIE = 0x000000B1,
ITEM_HONEY_ULTRA = 0x000000B2,
ITEM_MAPLE_ULTRA = 0x000000B3,
ITEM_JELLY_ULTRA = 0x000000B4,
ITEM_KOOPASTA = 0x000000B5,
ITEM_FRIED_SHROOM = 0x000000B6,
ITEM_SHROOM_CAKE = 0x000000B7,
ITEM_SHROOM_STEAK = 0x000000B8,
ITEM_HOT_SHROOM = 0x000000B9,
ITEM_SWEET_SHROOM = 0x000000BA,
ITEM_YUMMY_MEAL = 0x000000BB,
ITEM_HEALTHY_JUICE = 0x000000BC,
ITEM_BLAND_MEAL = 0x000000BD,
ITEM_DELUXE_FEAST = 0x000000BE,
ITEM_SPECIAL_SHAKE = 0x000000BF,
ITEM_BIG_COOKIE = 0x000000C0,
ITEM_CAKE = 0x000000C1,
ITEM_MISTAKE = 0x000000C2,
ITEM_KOOPA_TEA = 0x000000C3,
ITEM_HONEY_SUPER = 0x000000C4,
ITEM_MAPLE_SUPER = 0x000000C5,
ITEM_JELLY_SUPER = 0x000000C6,
ITEM_SPAGHETTI = 0x000000C7,
ITEM_EGG_MISSILE = 0x000000C8,
ITEM_FRIED_EGG = 0x000000C9,
ITEM_HONEY_SHROOM = 0x000000CA,
ITEM_HONEY_CANDY = 0x000000CB,
ITEM_ELECTRO_POP = 0x000000CC,
ITEM_FIRE_POP = 0x000000CD,
ITEM_LIME_CANDY = 0x000000CE,
ITEM_COCO_POP = 0x000000CF,
ITEM_LEMON_CANDY = 0x000000D0,
ITEM_JELLY_POP = 0x000000D1,
ITEM_STRANGE_CAKE = 0x000000D2,
ITEM_KOOKY_COOKIE = 0x000000D3,
ITEM_FROZEN_FRIES = 0x000000D4,
ITEM_POTATO_SALAD = 0x000000D5,
ITEM_NUTTY_CAKE = 0x000000D6,
ITEM_MAPLE_SHROOM = 0x000000D7,
ITEM_BOILED_EGG = 0x000000D8,
ITEM_YOSHI_COOKIE = 0x000000D9,
ITEM_JELLY_SHROOM1 = 0x000000DA,
ITEM_JELLY_SHROOM2 = 0x000000DB,
ITEM_JELLY_SHROOM3 = 0x000000DC,
ITEM_JELLY_SHROOM4 = 0x000000DD,
ITEM_JELLY_SHROOM5 = 0x000000DE,
ITEM_JELLY_SHROOM6 = 0x000000DF,
ITEM_SPIN_SMASH = 0x000000E0,
ITEM_MULTIBOUNCE = 0x000000E1,
ITEM_POWER_PLUS_A = 0x000000E2,
ITEM_DODGE_MASTER = 0x000000E3,
ITEM_POWER_BOUNCE = 0x000000E4,
ITEM_SPIKE_SHIELD = 0x000000E5,
ITEM_FIRST_ATTACK = 0x000000E6,
ITEM_HP_PLUS_A = 0x000000E7,
ITEM_QUAKE_HAMMER = 0x000000E8,
ITEM_DOUBLE_DIP = 0x000000E9,
ITEM_MYSTERY_SCROLL = 0x000000EA,
ITEM_SLEEP_STOMP = 0x000000EB,
ITEM_FIRE_SHIELD = 0x000000EC,
ITEM_QUICK_CHANGE = 0x000000ED,
ITEM_D_DOWN_POUND = 0x000000EE,
ITEM_DIZZY_STOMP = 0x000000EF,
ITEM_SMASH_CHARGE0 = 0x000000F0,
ITEM_PRETTY_LUCKY = 0x000000F1,
ITEM_FEELING_FINE = 0x000000F2,
ITEM_ATTACK_FX_A = 0x000000F3,
ITEM_ALLOR_NOTHING = 0x000000F4,
ITEM_HP_DRAIN = 0x000000F5,
ITEM_BOOTS_CHARGE0 = 0x000000F6,
ITEM_SLOW_GO = 0x000000F7,
ITEM_FP_PLUS_A = 0x000000F8,
ITEM_MEGA_RUSH = 0x000000F9,
ITEM_ICE_POWER = 0x000000FA,
ITEM_DEFEND_PLUS_A = 0x000000FB,
ITEM_PAY_OFF = 0x000000FC,
ITEM_MONEY_MONEY = 0x000000FD,
ITEM_CHILL_OUT = 0x000000FE,
ITEM_HAPPY_HEART_A = 0x000000FF,
ITEM_ZAP_TAP = 0x00000100,
ITEM_BERSERKER = 0x00000101,
ITEM_RIGHT_ON = 0x00000102,
ITEM_RUNAWAY_PAY = 0x00000103,
ITEM_REFUND = 0x00000104,
ITEM_FLOWER_SAVER_A = 0x00000105,
ITEM_TRIPLE_DIP = 0x00000106,
ITEM_HAMMER_THROW = 0x00000107,
ITEM_MEGA_QUAKE = 0x00000108,
ITEM_SMASH_CHARGE = 0x00000109,
ITEM_BOOTS_CHARGE = 0x0000010A,
ITEM_S_SMASH_CHG = 0x0000010B,
ITEM_S_JUMP_CHG = 0x0000010C,
ITEM_POWER_RUSH = 0x0000010D,
ITEM_AUTO_JUMP = 0x0000010E,
ITEM_AUTO_SMASH = 0x0000010F,
ITEM_CRAZY_HEART = 0x00000110,
ITEM_LAST_STAND = 0x00000111,
ITEM_CLOSE_CALL = 0x00000112,
ITEM_P_UP_D_DOWN = 0x00000113,
ITEM_LUCKY_DAY = 0x00000114,
ITEM_MEGA_HP_DRAIN = 0x00000115,
ITEM_P_DOWN_D_UP = 0x00000116,
ITEM_POWER_QUAKE = 0x00000117,
ITEM_AUTO_MULTIBOUNCE = 0x00000118,
ITEM_FLOWER_FANATIC = 0x00000119,
ITEM_HEART_FINDER = 0x0000011A,
ITEM_FLOWER_FINDER = 0x0000011B,
ITEM_SPIN_ATTACK = 0x0000011C,
ITEM_DIZZY_ATTACK = 0x0000011D,
ITEM_I_SPY = 0x0000011E,
ITEM_SPEEDY_SPIN = 0x0000011F,
ITEM_BUMP_ATTACK = 0x00000120,
ITEM_POWER_JUMP = 0x00000121,
ITEM_SUPER_JUMP = 0x00000122,
ITEM_MEGA_JUMP = 0x00000123,
ITEM_POWER_SMASH1 = 0x00000124,
ITEM_SUPER_SMASH = 0x00000125,
ITEM_MEGA_SMASH = 0x00000126,
ITEM_POWER_SMASH2 = 0x00000127,
ITEM_POWER_SMASH3 = 0x00000128,
ITEM_DEEP_FOCUS1 = 0x00000129,
ITEM_SUPER_FOCUS = 0x0000012A,
ITEM_SHRINK_SMASH = 0x0000012B,
ITEM_SHELL_CRACK = 0x0000012C,
ITEM_KAIDEN = 0x0000012D,
ITEM_D_DOWN_JUMP = 0x0000012E,
ITEM_SHRINK_STOMP = 0x0000012F,
ITEM_DAMAGE_DODGE_A = 0x00000130,
ITEM_EARTHQUAKE_JUMP = 0x00000131,
ITEM_DEEP_FOCUS2 = 0x00000132,
ITEM_DEEP_FOCUS3 = 0x00000133,
ITEM_HP_PLUS_B = 0x00000134,
ITEM_FP_PLUS_B = 0x00000135,
ITEM_HAPPY_HEART_B = 0x00000136,
ITEM_HAPPY_HEART_X = 0x00000137,
ITEM_FLOWER_SAVER_B = 0x00000138,
ITEM_FLOWER_SAVER_X = 0x00000139,
ITEM_DAMAGE_DODGE_B = 0x0000013A,
ITEM_DAMAGE_DODGE_X = 0x0000013B,
ITEM_POWER_PLUS_B = 0x0000013C,
ITEM_POWER_PLUS_X = 0x0000013D,
ITEM_DEFEND_PLUS_X = 0x0000013E,
ITEM_DEFEND_PLUS_Y = 0x0000013F,
ITEM_HAPPY_FLOWER_A = 0x00000140,
ITEM_HAPPY_FLOWER_B = 0x00000141,
ITEM_HAPPY_FLOWER_X = 0x00000142,
ITEM_GROUP_FOCUS = 0x00000143,
ITEM_PEEKABOO = 0x00000144,
ITEM_ATTACK_FX_D = 0x00000145,
ITEM_ATTACK_FX_B = 0x00000146,
ITEM_ATTACK_FX_E = 0x00000147,
ITEM_ATTACK_FX_C = 0x00000148,
ITEM_ATTACK_FX_F = 0x00000149,
ITEM_HP_PLUS_C = 0x0000014A,
ITEM_HP_PLUS_X = 0x0000014B,
ITEM_HP_PLUS_Y = 0x0000014C,
ITEM_FP_PLUS_C = 0x0000014D,
ITEM_FP_PLUS_X = 0x0000014E,
ITEM_FP_PLUS_Y = 0x0000014F,
ITEM_HEALTHY_HEALTHY = 0x00000150,
ITEM_ATTACK_FX_F2 = 0x00000151,
ITEM_ATTACK_FX_F3 = 0x00000152,
ITEM_ATTACK_FX_F4 = 0x00000153,
ITEM_ATTACK_FX_F5 = 0x00000154,
ITEM_PARTNER_ATTACK = 0x00000155,
ITEM_HEART = 0x00000156,
ITEM_COIN = 0x00000157,
ITEM_HEART_PIECE = 0x00000158,
ITEM_STAR_POINT = 0x00000159,
ITEM_HEART_POINT = 0x0000015A,
ITEM_FLOWER_POINT = 0x0000015B,
ITEM_STAR_PIECE = 0x0000015C,
ITEM_PRESENT = 0x0000015D,
ITEM_CAKE_DONE = 0x0000015E,
ITEM_CAKE_BARE = 0x0000015F,
ITEM_CAKE_PAN = 0x00000160,
ITEM_CAKE_BATTER = 0x00000161,
ITEM_CAKE_BOWL = 0x00000162,
ITEM_CAKE_MIXED = 0x00000163,
ITEM_CAKE_WITH_ICING = 0x00000164,
ITEM_CAKE_WITH_BERRIES = 0x00000165,
ITEM_HAMMER1_ICON = 0x00000166,
ITEM_HAMMER2_ICON = 0x00000167,
ITEM_HAMMER3_ICON = 0x00000168,
ITEM_BOOTS1_ICON = 0x00000169,
ITEM_BOOTS2_ICON = 0x0000016A,
ITEM_BOOTS3_ICON = 0x0000016B,
ITEM_ITEMS_ICON = 0x0000016C,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
#define LOOKUP_ITEM(itemID) gItemTable[itemID & ~0xF0000]
// item ranges:
// 001 - 007 = gear (hammer/boots)
// 008 - 00F = 'quest' items
// 010 - 07F = keys
// 080 - 0DA = consumables
// 0DB - 0DF = unused
// 0E0 - 154 badges
// 155+ misc (collectables, utility items for menu purposes, etc)
#define ITEM_FIRST_KEY ITEM_KOOPA_FORTRESS_KEY
#define ITEM_LAST_KEY ITEM_PRISON_KEY4
#define ITEM_FIRST_CONSUMABLE ITEM_FIRE_FLOWER
#define ITEM_LAST_CONSUMABLE ITEM_JELLY_SHROOM1
#define ITEM_FIRST_BADGE ITEM_SPIN_SMASH
#define ITEM_LAST_BADGE ITEM_ATTACK_FX_F5
#define ITEM_NUM_KEYS (ITEM_LAST_KEY - ITEM_FIRST_KEY + 1)
#define ITEM_NUM_CONSUMABLES (ITEM_LAST_CONSUMABLE - ITEM_FIRST_CONSUMABLE + 1)
#define IS_ITEM(itemID) (itemID >= ITEM_FIRST_KEY && itemID <= ITEM_LAST_CONSUMABLE)
#define IS_BADGE(itemID) (itemID >= ITEM_FIRST_BADGE && itemID <= ITEM_LAST_BADGE)
// used for chest and give item events
enum GotItemType {
ITEM_TYPE_CONSUMABLE = 0,
ITEM_TYPE_KEY = 1,
ITEM_TYPE_BADGE = 2,
ITEM_TYPE_STAR_PIECE = 3,
};
enum ItemTypeFlags {
ITEM_TYPE_FLAG_WORLD_USABLE = 0x0001,
ITEM_TYPE_FLAG_BATTLE_USABLE = 0x0002,
ITEM_TYPE_FLAG_CONSUMABLE = 0x0004,
ITEM_TYPE_FLAG_KEY = 0x0008,
ITEM_TYPE_FLAG_GEAR = 0x0020,
ITEM_TYPE_FLAG_BADGE = 0x0040,
ITEM_TYPE_FLAG_FOOD_OR_DRINK = 0x0080,
ITEM_TYPE_FLAG_USE_DRINK_ANIMATION = 0x0100,
ITEM_TYPE_FLAG_ENTITY_COLLECTABLE = 0x0200,
ITEM_TYPE_FLAG_ENTITY_FULLSIZE = 0x1000,
};
enum TargetFlags {
TARGET_FLAG_ENEMY = 0x00000001,
TARGET_FLAG_2 = 0x00000002,
TARGET_FLAG_4 = 0x00000004,
TARGET_FLAG_PLAYER = 0x00000008,
TARGET_FLAG_10 = 0x00000010,
TARGET_FLAG_20 = 0x00000020,
TARGET_FLAG_40 = 0x00000040,
TARGET_FLAG_80 = 0x00000080,
TARGET_FLAG_100 = 0x00000100,
TARGET_FLAG_400 = 0x00000400,
TARGET_FLAG_800 = 0x00000800,
TARGET_FLAG_1000 = 0x00001000,
TARGET_FLAG_2000 = 0x00002000,
TARGET_FLAG_4000 = 0x00004000,
TARGET_FLAG_8000 = 0x00008000,
TARGET_FLAG_10000 = 0x00010000,
TARGET_FLAG_20000 = 0x00020000,
TARGET_FLAG_40000 = 0x00040000,
TARGET_FLAG_100000 = 0x00100000,
TARGET_FLAG_200000 = 0x00200000,
TARGET_FLAG_400000 = 0x00400000,
TARGET_FLAG_800000 = 0x00800000,
TARGET_FLAG_80000000 = 0x80000000,
};
enum ActorPartTargetFlags {
ACTOR_PART_TARGET_FLAG_1 = 0x01,
ACTOR_PART_TARGET_FLAG_2 = 0x02,
ACTOR_PART_TARGET_FLAG_4 = 0x04,
};
2021-03-29 09:34:39 +02:00
enum AmbientSounds {
AMBIENT_SPOOKY = 0,
AMBIENT_WIND = 1,
AMBIENT_BEACH = 2,
AMBIENT_JUNGLE = 3,
AMBIENT_LAVA_1 = 4,
AMBIENT_LAVA_2 = 5,
AMBIENT_SILENCE = 6,
AMBIENT_LAVA_3 = 7,
AMBIENT_LAVA_4 = 8,
AMBIENT_LAVA_5 = 9,
AMBIENT_LAVA_6 = 10,
AMBIENT_LAVA_7 = 11,
AMBIENT_BIRDS = 12,
AMBIENT_SEA = 13,
AMBIENT_RADIO = 16, // radio songs for nok
audio odyssey (#744) * first pass * seq cmd args retyping * some SEF commands * etc * couple more SND commands * more functions * checkpoint * five more * another one * more funcs + cleanup * reverted unnecessary unions * all SEF commands done * a bunch more * more! * morrrrrrre * almost done for now * 99% * 100 * few names and types * reorg * minor chnages * miscmiscmisc * yet more * another day another func * eth wip func_8004EC68 * some sym names * retyping sound mgr fields * minor renames * D_80078400 * bigger func * retypings * enhanced drum info * the evil is defeated * merged * prelim ambient sound func names * audio frame * checkpoint * renames * learnin bout sounds * latest * fix snd_load_BK_to_bank * func_80056FA4 * warnings * cosmetics * func_800522A8 * struct reorg * figured some stuff out * much more info * fx params * cleanin up * revert accidental changes to jp * more accidental jp changes reverted * misc names * small stuff * migrated all audio data * checkpoint * header reorg begins * audio public/private headers * fixed headers * fixin warnins * oops * 51 fixed * formatted binary data in 30450 * workwork * cleanup * misc * flip macro arg order * more names * audio event triggers * various * sfx player cleanup * start bgm player cleanup * names names names * priorities * merlow * misc enum vals * rocking chair * kmr_00 funcs * enough * restore delete jp file * func_80055EB4 * fix func name * addressed comments * demoted a couple variables from global * couple hidden panel things * credits mostly * credits dedupe in progress * jump table repair * 'finished' end dedupe Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-08-06 14:14:04 +02:00
// the following 4 IDs are reserved for additional radio songs,
// and no more are expected to follow after that
// see: au_ambient_load
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum EncounterOutcomes {
OUTCOME_PLAYER_WON = 0,
OUTCOME_PLAYER_LOST = 1,
OUTCOME_PLAYER_FLED = 2,
OUTCOME_ENEMY_FLED = 3,
OUTCOME_4 = 4,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum MerleeSpellType {
MERLEE_SPELL_0 = 0,
MERLEE_SPELL_1 = 1,
MERLEE_SPELL_2 = 2,
MERLEE_SPELL_EXP_BOOST = 3,
MERLEE_SPELL_COIN_BOOST = 4,
};
enum NpcDecorationIDs {
NPC_DECORATION_NONE = 0x00000000,
NPC_DECORATION_BOWSER_AURA = 0x00000001,
NPC_DECORATION_SWEAT = 0x00000002,
NPC_DECORATION_SEEING_STARS = 0x00000003,
NPC_DECORATION_WHITE_GLOW_FRONT = 0x00000004,
NPC_DECORATION_WHITE_GLOW_BEHIND = 0x00000005,
NPC_DECORATION_CHARGED = 0x00000006,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum SpeechFlags {
SPEECH_FLAG_10 = 0x010,
SPEECH_FLAG_HAS_OFFSET = 0x100,
SPEECH_FLAG_200 = 0x200,
// different facing orientations for speaker and listener
SPEECH_ORIENTATION_MASK = 0xF,
SPEECH_FACE_SPEAKER_ONLY = 4,
SPEECH_FACE_AWAY_FROM = 3,
SPEECH_FACE_LIKE_SPEAKER = 2,
SPEECH_FACE_LIKE_LISTENER = 1,
SPEECH_FACE_EACH_OTHER = 0,
};
typedef enum HitResult {
HIT_RESULT_BACKFIRE = -1,
HIT_RESULT_HIT = 0,
HIT_RESULT_1 = 1, // KILL?
HIT_RESULT_NO_DAMAGE = 2,
HIT_RESULT_3 = 3,
HIT_RESULT_LANDED_ON_SPIKE = 4,
HIT_RESULT_LUCKY = 5,
HIT_RESULT_MISS = 6,
HIT_RESULT_HIT_STATIC = 7,
HIT_RESULT_IMMUNE = 8,
HIT_RESULT_10 = 10,
} HitResult;
2020-08-15 00:47:06 +02:00
enum ActionRatings {
ACTION_RATING_NICE = 0, ///< sets nice hits = 1
ACTION_RATING_MISS = 1, ///< clears nice hits
ACTION_RATING_LUCKY = 2, ///< clears nice hits
ACTION_RATING_SUPER = 3, ///< sets nice hits = 2
ACTION_RATING_NICE_NO_COMBO = 4, ///< clears nice hits
ACTION_RATING_NICE_SUPER_COMBO = 5 ///< 'Nice' but becomes 'Super' if nice hits > 2
};
enum DamageSources {
DMG_SRC_DEFAULT = 0,
DMG_SRC_LEECH = 1, // used by Baby Blooper, but not Fuzzy
DMG_SRC_SPIN_SMASH = 2,
DMG_SRC_D_DOWN_POUND = 3,
DMG_SRC_D_DOWN_JUMP = 4,
DMG_SRC_TUTORIAL_GOOMBARIO = 5,
DMG_SRC_SHELL_TOSS = 6,
DMG_SRC_POWER_SHELL = 7,
DMG_SRC_DIZZY_SHELL = 8,
DMG_SRC_FIRE_SHELL = 9,
DMG_SRC_NEXT_SLAP_LEFT = 10,
DMG_SRC_NEXT_SLAP_RIGHT = 11,
DMG_SRC_LAST_SLAP_LEFT = 12,
DMG_SRC_LAST_SLAP_RIGHT = 13,
DMG_SRC_NEXT_FAN_SMACK_LEFT = 14,
DMG_SRC_NEXT_FAN_SMACK_RIGHT = 15,
DMG_SRC_LAST_FAN_SMACK_LEFT = 16,
DMG_SRC_LAST_FAN_SMACK_RIGHT = 17,
DMG_SRC_SPOOK = 18,
DMG_SRC_ELECTRO_DASH = 19,
DMG_SRC_HURRICANE = 20,
DMG_SRC_FRIGHT_JAR = 21,
DMG_SRC_POW_BLOCK = 22,
DMG_SRC_TUBBA_SMASH = 23,
DMG_SRC_CRUSH = 24,
DMG_SRC_CRUSH_PARTNER = 25,
DMG_SRC_INK_BLAST = 26,
};
2021-03-29 09:34:39 +02:00
enum Iters {
ITER_FIRST = -1,
ITER_NEXT = 0,
ITER_PREV = 1,
ITER_LAST = 10,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum ActorSoundIDs {
ACTOR_SOUND_WALK = 0x00000000,
ACTOR_SOUND_FLY = 0x00000001,
ACTOR_SOUND_JUMP = 0x00000002,
ACTOR_SOUND_HURT = 0x00000003,
ACTOR_SOUND_WALK_INCREMENT = 0x00000004,
ACTOR_SOUND_FLY_INCREMENT = 0x00000005,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum ActorDecorationIDs {
ACTOR_DECORATION_NONE = 0x00000000,
ACTOR_DECORATION_GOLDEN_FLAMES = 0x00000001,
ACTOR_DECORATION_SWEAT = 0x00000002,
ACTOR_DECORATION_SEEING_STARS = 0x00000003,
ACTOR_DECORATION_RED_FLAMES = 0x00000004,
ACTOR_DECORATION_GREY_SMOKE_TRAIL = 0x00000005,
ACTOR_DECORATION_FIRE_SMOKE_TRAIL = 0x00000006,
ACTOR_DECORATION_WHIRLWIND = 0x00000007,
ACTOR_DECORATION_STEAM_EMITTER = 0x00000008,
ACTOR_DECORATION_9 = 0x00000009,
ACTOR_DECORATION_A = 0x0000000A,
ACTOR_DECORATION_RADIAL_STAR_EMITTER = 0x0000000B,
};
2021-03-29 09:34:39 +02:00
enum Phases {
PHASE_EXECUTE_ACTION = 0,
PHASE_FIRST_STRIKE = 1,
PHASE_RUN_AWAY_START = 3,
PHASE_DEATH = 4,
PHASE_CELEBRATE = 5,
PHASE_USE_DEFEND = 6,
PHASE_RUN_AWAY_FAIL = 7,
PHASE_USE_LIFE_SHROOM = 8,
PHASE_PLAYER_BEGIN = 10,
PHASE_ENEMY_END = 11,
PHASE_ENEMY_BEGIN = 12,
PHASE_PLAYER_END = 13,
PHASE_MERLEE_ATTACK_BONUS = 20,
PHASE_MERLEE_DEFENSE_BONUS = 21,
PHASE_MERLEE_EXP_BONUS = 22,
PHASE_PLAYER_HAPPY = 30,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum ActorClasses {
ACTOR_CLASS_PLAYER = 0x000,
ACTOR_CLASS_PARTNER = 0x100,
ACTOR_CLASS_ENEMY = 0x200,
ACTOR_CLASS_MASK = 0x700,
};
2021-03-29 09:34:39 +02:00
enum ActorIDs {
ACTOR_SELF = 0xFFFFFF81,
ACTOR_PLAYER = 0x00000000,
ACTOR_PARTNER = 0x00000100,
ACTOR_ENEMY0 = 0x00000200,
ACTOR_ENEMY1 = 0x00000201,
ACTOR_ENEMY2 = 0x00000202,
ACTOR_ENEMY3 = 0x00000203,
ACTOR_ENEMY4 = 0x00000204,
ACTOR_ENEMY5 = 0x00000205,
ACTOR_ENEMY6 = 0x00000206,
ACTOR_ENEMY7 = 0x00000207,
ACTOR_ENEMY8 = 0x00000208,
ACTOR_ENEMY9 = 0x00000209,
ACTOR_ENEMY10 = 0x0000020A,
ACTOR_ENEMY11 = 0x0000020B,
ACTOR_ENEMY12 = 0x0000020C,
ACTOR_ENEMY13 = 0x0000020D,
ACTOR_ENEMY14 = 0x0000020E,
ACTOR_ENEMY15 = 0x0000020F,
ACTOR_ENEMY16 = 0x00000210,
ACTOR_ENEMY17 = 0x00000211,
ACTOR_ENEMY18 = 0x00000212,
ACTOR_ENEMY19 = 0x00000213,
ACTOR_ENEMY20 = 0x00000214,
ACTOR_ENEMY21 = 0x00000215,
ACTOR_ENEMY22 = 0x00000216,
ACTOR_ENEMY23 = 0x00000217,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum Elements {
ELEMENT_END = 0x00000000,
ELEMENT_NORMAL = 0x00000001,
ELEMENT_FIRE = 0x00000002,
ELEMENT_WATER = 0x00000003,
ELEMENT_ICE = 0x00000004,
ELEMENT_MYSTERY = 0x00000005,
ELEMENT_MAGIC = 0x00000007,
ELEMENT_SMASH = 0x00000008,
ELEMENT_JUMP = 0x00000009,
ELEMENT_COSMIC = 0x0000000A,
ELEMENT_BLAST = 0x0000000B,
ELEMENT_SHOCK = 0x0000000C,
ELEMENT_QUAKE = 0x0000000D,
ELEMENT_THROW = 0x0000000F,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum Events {
EVENT_HIT_COMBO = 0x00000009,
EVENT_HIT = 0x0000000A,
EVENT_SPIN_SMASH_HIT = 0x0000000B,
EVENT_FALL_TRIGGER = 0x0000000C,
EVENT_FLIP_TRIGGER = 0x0000000D,
EVENT_BURN_HIT = 0x0000000E,
EVENT_15 = 0x0000000F,
EVENT_SPIN_SMASH_LAUNCH_HIT = 0x00000011,
EVENT_SHELL_CRACK_HIT = 0x00000012,
EVENT_STAR_BEAM = 0x00000013,
EVENT_PEACH_BEAM = 0x00000014,
EVENT_POWER_BOUNCE_HIT = 0x00000015,
EVENT_BLOW_AWAY = 0x00000016,
EVENT_ZERO_DAMAGE = 0x00000017,
EVENT_18 = 0x00000018,
EVENT_IMMUNE = 0x00000019,
EVENT_BLOCK = 0x0000001A,
EVENT_SPIKE_TAUNT = 0x0000001B,
EVENT_BURN_TAUNT = 0x0000001C,
EVENT_INVUNERABLE_TAUNT = 0x0000001D,
EVENT_1E = 0x0000001E,
EVENT_AIR_LIFT_FAILED = 0x0000001F,
EVENT_DEATH = 0x00000020,
EVENT_SPIN_SMASH_DEATH = 0x00000021,
EVENT_EXPLODE_TRIGGER = 0x00000022,
EVENT_23 = 0x00000023,
EVENT_BURN_DEATH = 0x00000024,
EVENT_SPIN_SMASH_LAUNCH_DEATH = 0x00000025,
EVENT_SHOCK_DEATH = 0x00000026,
EVENT_SPIKE_DEATH = 0x00000027,
EVENT_POWER_BOUNCE_DEATH = 0x00000028,
EVENT_FIRE_DEATH = 0x00000029, // burn death copy?
EVENT_SPIKE_CONTACT = 0x0000002A,
EVENT_BURN_CONTACT = 0x0000002C,
EVENT_SHOCK_HIT = 0x0000002F,
EVENT_30 = 0x00000030,
EVENT_RECOVER_STATUS = 0x00000031,
EVENT_32 = 0x00000032,
EVENT_33 = 0x00000033,
EVENT_RECOVER_FROM_KO = 0x00000034,
EVENT_END_FIRST_STRIKE = 0x00000035,
EVENT_LUCKY = 0x00000037,
EVENT_BEGIN_FIRST_STRIKE = 0x00000038,
EVENT_SCARE_AWAY = 0x00000039,
EVENT_BEGIN_AIR_LIFT = 0x0000003A,
EVENT_UP_AND_AWAY = 0x0000003D,
EVENT_62 = 0x0000003E,
EVENT_SWAP_PARTNER = 0x0000003F,
EVENT_LIFE_SHROOM_PROC = 0x00000040,
EVENT_REVIVE = 0x00000041,
EVENT_66 = 0x00000042,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum HitSounds {
HIT_SOUND_MISS = 0,
HIT_SOUND_BONES = 1,
HIT_SOUND_NORMAL = 2,
HIT_SOUND_FIRE = 3,
HIT_SOUND_ICE = 4,
HIT_SOUND_SHOCK = 5,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
// Player.debuff
// Partner.debuff
enum StatusKeys {
STATUS_END = 0x00000000,
STATUS_KEY_NORMAL = 0x00000001,
STATUS_KEY_DEFAULT = 0x00000002,
STATUS_KEY_FEAR = 0x00000003,
STATUS_KEY_DIZZY = 0x00000004,
STATUS_KEY_PARALYZE = 0x00000005,
STATUS_KEY_SLEEP = 0x00000006,
STATUS_KEY_FROZEN = 0x00000007,
STATUS_KEY_STOP = 0x00000008,
STATUS_KEY_POISON = 0x00000009,
STATUS_KEY_SHRINK = 0x0000000A,
STATUS_KEY_STATIC = 0x0000000B,
STATUS_KEY_STONE = 0x0000000C,
STATUS_KEY_DAZE = 0x0000000D,
STATUS_KEY_TRANSPARENT = 0x0000000E,
STATUS_KEY_KO = 0x0000000F,
STATUS_KEY_BERSERK = 0x00000010,
STATUS_KEY_11 = 0x00000011,
STATUS_KEY_INACTIVE = 0x00000012,
STATUS_KEY_INACTIVE_BERSERK = 0x00000013,
STATUS_KEY_14 = 0x00000014, // probably STATUS_KEY_INACTIVE_FROZEN
STATUS_KEY_INACTIVE_SLEEP = 0x00000015,
STATUS_KEY_INACTIVE_WEARY = 0x00000016,
STATUS_KEY_17 = 0x00000017,
STATUS_KEY_INACTIVE_DIZZY = 0x00000018,
STATUS_KEY_HUSTLE = 0x00000019,
STATUS_KEY_DANGER = 0x0000001A,
STATUS_KEY_1B = 0x0000001B,
STATUS_KEY_THINKING = 0x0000001C,
STATUS_KEY_WEARY = 0x0000001D,
STATUS_KEY_1E = 0x0000001E,
STATUS_TURN_MOD_DEFAULT = 0x0000001F,
STATUS_TURN_MOD_SLEEP = 0x00000020,
STATUS_TURN_MOD_STATIC = 0x00000021,
STATUS_TURN_MOD_FROZEN = 0x00000022,
STATUS_TURN_MOD_FEAR = 0x00000023,
STATUS_TURN_MOD_DIZZY = 0x00000024,
STATUS_TURN_MOD_POISON = 0x00000025,
STATUS_TURN_MOD_PARALYZE = 0x00000026,
STATUS_TURN_MOD_SHRINK = 0x00000027,
STATUS_TURN_MOD_STONE = 0x00000028,
STATUS_TURN_MOD_STOP = 0x00000029,
};
enum PaletteShifts {
PAL_ADJUST_NONE = 0,
PAL_ADJUST_SLEEP = 3,
PAL_ADJUST_STATIC = 4,
PAL_ADJUST_FEAR = 5, // darker
PAL_ADJUST_POISON = 6,
PAL_ADJUST_PARALYZE = 7,
PAL_ADJUST_BERSERK = 8,
PAL_ADJUST_WATT_IDLE = 9,
PAL_ADJUST_WATT_ATTACK = 10,
PAL_ADJUST_PLAYER_DEBUFF = 12,
PAL_ADJUST_PLAYER_POISON = 13,
PAL_ADJUST_BLEND_PALETTES_UNIFORM_INTERVALS = 14,
PAL_ADJUST_BLEND_PALETTES_VARYING_INTERVALS = 15,
PAL_ADJUST_BLEND_PALSETS = 16,
};
// func_80266EE8
enum {
UNK_PAL_EFFECT_0 = 0,
UNK_PAL_EFFECT_11 = 11,
};
enum DoorSwing {
DOOR_SWING_IN = -1,
DOOR_SWING_OUT = 1,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum VisibilityGroup {
VIS_GROUP_0 = 0,
VIS_GROUP_1 = 1,
VIS_GROUP_2 = 2,
VIS_GROUP_3 = 3,
VIS_GROUP_4 = 4,
VIS_GROUP_5 = 5,
VIS_GROUP_6 = 6,
VIS_GROUP_7 = 7,
};
2021-03-29 09:34:39 +02:00
enum ItemSpawnModes {
ITEM_SPAWN_MODE_KEY = 0x00000000,
ITEM_SPAWN_MODE_DECORATION = 0x00000001,
ITEM_SPAWN_MODE_INVISIBLE = 0x00000002,
ITEM_SPAWN_MODE_TOSS_SPAWN_ALWAYS = 0x00000003,
ITEM_SPAWN_MODE_BATTLE_REWARD = 0x00000004,
ITEM_SPAWN_MODE_TOSS_NEVER_VANISH = 0x00000005,
ITEM_SPAWN_MODE_TOSS = 0x00000006,
ITEM_SPAWN_MODE_TOSS_SPAWN_ONCE = 0x00000007,
ITEM_SPAWN_MODE_TOSS_SPAWN_ONCE_NEVER_VANISH = 0x00000008,
ITEM_SPAWN_MODE_TOSS_SPAWN_ALWAYS_NEVER_VANISH = 0x00000009,
ITEM_SPAWN_MODE_ITEM_BLOCK_ITEM = 0x0000000A,
ITEM_SPAWN_MODE_ITEM_BLOCK_BADGE = 0x0000000B,
ITEM_SPAWN_MODE_FALL_SPAWN_ALWAYS = 0x0000000C,
ITEM_SPAWN_MODE_FALL_NEVER_VANISH = 0x0000000D,
ITEM_SPAWN_MODE_FALL = 0x0000000E,
ITEM_SPAWN_MODE_FALL_SPAWN_ONCE = 0x0000000F,
ITEM_SPAWN_MODE_FIXED_SPAWN_ALWAYS = 0x00000010,
ITEM_SPAWN_MODE_FIXED_NEVER_VANISH = 0x00000011,
ITEM_SPAWN_MODE_FIXED = 0x00000012,
ITEM_SPAWN_MODE_FIXED_SPAWN_ALWAYS_NEVER_VANISH = 0x00000013,
ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS = 0x00000014,
ITEM_SPAWN_MODE_ITEM_BLOCK_COIN = 0x00000015,
ITEM_SPAWN_MODE_TOSS_HIGHER_NEVER_VANISH = 0x00000016,
ITEM_SPAWN_MODE_TOSS_FADE1 = 0x00000017,
ITEM_SPAWN_MODE_TOSS_FADE2 = 0x00000018,
ITEM_SPAWN_MODE_TOSS_FADE3 = 0x00000019,
ITEM_SPAWN_MODE_TOSS_SPAWN_ALWAYS_SMALL = 0x0000001A,
ITEM_SPAWN_MODE_UNKNOWN_1B = 0x0000001B,
ITEM_SPAWN_AT_PLAYER = 0x0000001C,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum Locations {
LOCATION_TOAD_TOWN = 0x01,
LOCATION_TOAD_TOWN_TUNNELS = 0x02,
LOCATION_KOOPA_BROS_FORTRESS = 0x07,
LOCATION_MT_RUGGED = 0x08,
LOCATION_DRY_DRY_OUTPOST = 0x09,
LOCATION_DRY_DRY_DESERT = 0x0A,
LOCATION_DRY_DRY_RUINS = 0x0B,
LOCATION_FOREVER_FOREST = 0x0C,
LOCATION_BOOS_MANSION = 0x0D,
LOCATION_TUBBAS_MANOR = 0x0F,
LOCATION_SHY_GUYS_TOYBOX = 0x10,
LOCATION_MT_LAVALAVA = 0x12,
LOCATION_CRYSTAL_PALACE = 0x15,
LOCATION_BOWSERS_CASTLE = 0x16,
LOCATION_TESTING = 0x17,
LOCATION_NONE = 0x18,
LOCATION_PEACH_CASTLE_GROUNDS = 0x19,
LOCATION_PEACHS_CASTLE = 0x1A,
LOCATION_SHOOTING_STAR_SUMMIT = 0x1B,
LOCATION_STAR_WAY = 0x1C,
LOCATION_STAR_HAVEN = 0x1D,
LOCATION_GOOMBA_VILLAGE = 0x1E,
LOCATION_GOOMBA_ROAD = 0x1F,
LOCATION_PLEASANT_PATH = 0x20,
LOCATION_KOOPA_VILLAGE = 0x21,
LOCATION_GUSTY_GULCH = 0x22,
LOCATION_WINDY_MILL = 0x23,
LOCATION_JADE_JUNGLE = 0x24,
LOCATION_YOSHIS_VILLAGE = 0x25,
LOCATION_FLOWER_FIELDS = 0x26,
LOCATION_CLOUDY_CLIMB = 0x27,
LOCATION_SHIVER_CITY = 0x28,
LOCATION_SHIVER_SNOWFIELD = 0x29,
LOCATION_STARBORN_VALLEY = 0x2A,
LOCATION_SHIVER_MOUNTAIN = 0x2B,
LOCATION_MARIOS_HOUSE = 0x2C,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
typedef enum ScreenTransition {
TRANSITION_STANDARD = 0, // fade to/from black
TRANSITION_TOY_TRAIN = 1, // similar to TRANSITION_TOY_TRAIN, but fade applies to whole screen
TRANSITION_END_DEMO_SCENE_BLACK = 2, // rapidly fade to black
TRANSITION_END_DEMO_SCENE_WHITE = 3, // slow fade to white -> rapid fade in from white
TRANSITION_BEGIN_OR_END_GAME = 4, // slow fade to/from black
TRANSITION_OUTRO_END_SCENE = 5, // slow fade to/from black
TRANSITION_BEGIN_OR_END_CHAPTER = 6, // white fade in/out; standard transition for entering kmr_22 (Begin Chapter) or leaving kmr_23 (End of Chapter)
TRANSITION_SLOW_FADE_TO_WHITE = 7, // slow fade to/from white
TRANSITION_ENTER_WORLD = 8, // black Mario stencil in/out
TRANSITION_MARIO_WHITE = 9, // white Mario stencil -> white fade in; used in post ch5 scene, fading to Save and Continue? screen
TRANSITION_MARIO_BLACK = 10, // black Mario stencil -> black fade in; used after Goombaria finds Mario and he wakes up in the inn
TRANSITION_AFTER_SAVE_PROMPT = 11, // white fade out -> white star stencil
TRANSITION_END_PEACH_INTERLUDE = 12, // white star stencil -> white Mario stencil
TRANSITION_PEACH_CAPTURED = 13, // black star stencil -> black fade in
TRANSITION_GET_STAR_CARD = 14, // used for entering kmr_23 (Get Star Card / End Chapter)
TRANSITION_END_CHAPTER_INTERRUPTED = 15, // white fade out -> white Mario stencil; used in kzn_19 for Ch5
TRANSITION_SLOW_BLUR_MOTION = 16, // unused?
} ScreenTransition;
enum ScreenLayer {
SCREEN_LAYER_FRONT = 0,
SCREEN_LAYER_BACK = 1,
};
typedef enum ScreenOverlayType {
OVERLAY_NONE = -1,
OVERLAY_SCREEN_COLOR = 0,
OVERLAY_VIEWPORT_COLOR = 1,
OVERLAY_TYPE_2 = 2,
OVERLAY_VIEWPORT_SPOTLIGHT = 3,
OVERLAY_VIEWPORT_MARIO = 4,
OVERLAY_VIEWPORT_STAR = 5,
OVERLAY_SCREEN_SPOTLIGHT = 6,
OVERLAY_SCREEN_MARIO = 7,
OVERLAY_SCREEN_STAR = 8,
OVERLAY_TYPE_9 = 9,
OVERLAY_START_BATTLE = 10,
OVERLAY_WORLD_DARKNESS = 11,
OVERLAY_BLUR = 12,
OVERLAY_BATTLE_DARKNESS = 13,
OVERLAY_UNUSED_1 = 14,
OVERLAY_UNUSED_2 = 15,
} ScreenOverlayType;
2021-03-29 09:34:39 +02:00
enum DoorSounds {
DOOR_SOUNDS_BASIC = 0,
DOOR_SOUNDS_METAL = 1,
DOOR_SOUNDS_LARGE = 2,
DOOR_SOUNDS_CREAKY = 3,
DOOR_SOUNDS_GATE = 4,
DOOR_SOUNDS_DOOR = 5,
DOOR_SOUNDS_UNUSED = 6,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
#ifdef VERSION_US
#include "sprite/sprite_shading_profiles.h"
#elif VERSION_PAL
// TODO: remove and split shading profiles
enum ShadingProfile {
SHADING_NONE = 0xFFFFFFFF,
SHADING_TIK_01 = 0,
SHADING_TIK_02,
SHADING_TIK_03,
SHADING_TIK_04,
SHADING_TIK_05,
SHADING_TIK_06,
SHADING_TIK_07,
SHADING_TIK_08,
SHADING_TIK_09,
SHADING_TIK_10,
SHADING_TIK_12,
SHADING_TIK_14,
SHADING_TIK_15,
SHADING_TIK_18,
SHADING_TIK_20,
SHADING_TIK_21,
SHADING_TIK_22,
SHADING_TIK_23,
SHADING_TIK_24,
SHADING_TIK_25,
SHADING_KMR_30 = 0x10000,
SHADING_ISK_03 = 0x20000,
SHADING_ISK_04,
SHADING_ISK_05,
SHADING_ISK_06,
SHADING_ISK_07,
SHADING_ISK_08,
SHADING_ISK_09,
SHADING_ISK_10,
SHADING_ISK_11,
SHADING_ISK_12,
SHADING_ISK_13,
SHADING_ISK_14,
SHADING_ISK_16,
SHADING_ISK_UNUSED,
SHADING_ISK_18,
SHADING_ISK_19,
SHADING_HOS_01 = 0x00030000,
SHADING_OSR_02 = 0x00040000,
SHADING_KKJ_10 = 0x00050000,
SHADING_KKJ_11,
SHADING_KKJ_12,
SHADING_KKJ_13,
SHADING_KKJ_17,
SHADING_KKJ_20,
SHADING_KKJ_22,
SHADING_KKJ_23,
SHADING_KKJ_24,
SHADING_KKJ_25,
SHADING_KKJ_26,
SHADING_KKJ_27,
SHADING_JAN_17 = 0x00060000,
SHADING_JAN_19,
SHADING_MIM_01 = 0x00070000,
SHADING_MIM_02,
SHADING_MIM_03,
SHADING_MIM_04,
SHADING_MIM_05,
SHADING_MIM_06,
SHADING_MIM_07,
SHADING_MIM_08,
SHADING_MIM_09,
SHADING_MIM_11,
SHADING_MIM_12,
SHADING_ARN_09 = 0x00080000,
SHADING_ARN_10,
SHADING_ARN_11,
SHADING_ARN_12,
SHADING_ARN_13,
SHADING_DGB_06 = 0x00090000,
SHADING_KZN_01 = 0x000A0000,
SHADING_KZN_02,
SHADING_KZN_03,
SHADING_KZN_04,
SHADING_KZN_05,
SHADING_KZN_06,
SHADING_KZN_07,
SHADING_KZN_08,
SHADING_KZN_09,
SHADING_KZN_10,
SHADING_KZN_11,
SHADING_KZN_17,
SHADING_KZN_18,
SHADING_KZN_19,
SHADING_KZN_20,
SHADING_KZN_22,
SHADING_KZN_23,
SHADING_UNUSED = 0x000B0000,
SHADING_BTL_ISK = 0x000C0000,
};
#endif
enum LightSourceFlags {
LIGHT_SOURCE_DISABLED = 0,
LIGHT_SOURCE_ENABLED = 1,
LIGHT_SOURCE_LINEAR_FALLOFF = 4,
LIGHT_SOURCE_QUADRATIC_FALLOFF = 8,
};
2021-03-29 09:34:39 +02:00
enum ActionStates {
ACTION_STATE_IDLE = 0x00000000,
ACTION_STATE_WALK = 0x00000001,
ACTION_STATE_RUN = 0x00000002,
// all states above are considered locomotion states
ACTION_STATE_JUMP = 0x00000003,
ACTION_STATE_BOUNCE = 0x00000004, ///< Used with Kooper
ACTION_STATE_HOP = 0x00000005, ///< Released A before apex of jump
ACTION_STATE_LAUNCH = 0x00000006, ///< Shy Guy Toybox jack-in-the-boxes
ACTION_STATE_LANDING_ON_SWITCH = 0x00000007, ///< Small red/blue ! switches
ACTION_STATE_FALLING = 0x00000008,
ACTION_STATE_STEP_DOWN = 0x00000009,
ACTION_STATE_LAND = 0x0000000A,
ACTION_STATE_STEP_DOWN_LAND = 0x0000000B,
// Following action states prohibit movement (see set_action_state())
ACTION_STATE_TALK = 0x0000000C, ///< Reading signs doesn't count
ACTION_STATE_SPIN_JUMP = 0x0000000D,
ACTION_STATE_SPIN_POUND = 0x0000000E,
ACTION_STATE_TORNADO_JUMP = 0x0000000F,
ACTION_STATE_TORNADO_POUND = 0x00000010,
ACTION_STATE_SLIDING = 0x00000011,
ACTION_STATE_HAMMER = 0x00000012,
ACTION_STATE_13 = 0x00000013,
ACTION_STATE_PUSHING_BLOCK = 0x00000014,
ACTION_STATE_HIT_FIRE = 0x00000015, ///< Causes Mario to fly up and take damage. Used for fire bars.
ACTION_STATE_KNOCKBACK = 0x00000016, // some kind of knockback, does no damage
ACTION_STATE_HIT_LAVA = 0x00000017,
ACTION_STATE_STEP_UP_PEACH = 0x00000018,
ACTION_STATE_USE_SNEAKY_PARASOL = 0x00000019,
ACTION_STATE_SPIN = 0x0000001A,
ACTION_STATE_ENEMY_FIRST_STRIKE = 0x0000001B,
ACTION_STATE_RAISE_ARMS = 0x0000001C,
ACTION_STATE_USE_SPINNING_FLOWER = 0x0000001D,
ACTION_STATE_USE_MUNCHLESIA = 0x0000001E, ///< Set by the jan_09 squishy flower entity; throws the player in the air.
ACTION_STATE_USE_TWEESTER = 0x0000001F,
ACTION_STATE_BOUNCE_OFF_SWITCH = 0x00000020, ///< Small red/blue ! switches
ACTION_STATE_RIDE = 0x00000021,
ACTION_STATE_STEP_UP = 0x00000022,
ACTION_STATE_23 = 0x00000023,
ACTION_STATE_24 = 0x00000024,
ACTION_STATE_INVALID_25 = 0x00000025,
ACTION_STATE_USE_SPRING = 0x00000026,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum JumpSubstate {
JUMP_SUBSTATE_0 = 0,
JUMP_SUBSTATE_1 = 1,
};
enum TweesterPartnerStates {
TWEESTER_PARTNER_INIT = 0,
TWEESTER_PARTNER_ATTRACT = 1,
TWEESTER_PARTNER_HOLD = 2,
TWEESTER_PARTNER_RELEASE = 3,
};
enum LandOnSwitchSubstate {
LANDING_ON_SWITCH_SUBSTATE_0 = 0,
LANDING_ON_SWITCH_SUBSTATE_1 = 1,
LANDING_ON_SWITCH_SUBSTATE_2 = 2,
};
enum PeachStatusFlags {
PEACH_STATUS_FLAG_IS_PEACH = 0x01,
PEACH_STATUS_FLAG_DISGUISED = 0x02,
PEACH_STATUS_FLAG_HAS_PARASOL = 0x04,
PEACH_STATUS_FLAG_8 = 0x08,
PEACH_STATUS_FLAG_DEPRESSED = 0x10
};
enum PeachBakingItems {
PEACH_BAKING_NONE = 0,
PEACH_BAKING_CREAM = 1,
PEACH_BAKING_STRAWBERRY = 2,
PEACH_BAKING_BUTTER = 3,
PEACH_BAKING_CLEANSER = 4,
PEACH_BAKING_WATER = 5,
PEACH_BAKING_MILK = 6,
PEACH_BAKING_FLOUR = 7,
PEACH_BAKING_EGG = 8,
PEACH_BAKING_COMPLETE_CAKE = 9,
PEACH_BAKING_CAKE_BOWL = 10,
PEACH_BAKING_CAKE_MIXED = 11,
PEACH_BAKING_CAKE_PAN = 12,
PEACH_BAKING_CAKE_BATTER = 13,
PEACH_BAKING_CAKE_BARE = 14,
PEACH_BAKING_SALT = 15,
PEACH_BAKING_SUGAR = 16,
PEACH_BAKING_CAKE_WITH_ICING = 17,
PEACH_BAKING_CAKE_WITH_BERRIES = 18,
};
enum PeachDisguises {
PEACH_DISGUISE_NONE = 0,
PEACH_DISGUISE_KOOPATROL = 1,
PEACH_DISGUISE_HAMMER_BROS = 2,
PEACH_DISGUISE_CLUBBA = 3,
};
// Requires decimals
2021-03-29 09:34:39 +02:00
enum NpcIDs {
NPC_SELF = -1,
NPC_PLAYER = -2,
NPC_PARTNER = -4,
NPC_BTL_MERLEE = -10,
NPC_BTL_COMPANION = 0, // used for Peach in intro Bowser fight and Kolorado in Lava Piranha fight
NPC_BTL_SPIRIT = 100,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum EntityTypes {
ENTITY_TYPE_SHADOW = 0x01,
ENTITY_TYPE_2 = 0x02,
ENTITY_TYPE_PADLOCK = 0x03,
ENTITY_TYPE_PADLOCK_RED_FRAME = 0x04,
ENTITY_TYPE_PADLOCK_RED_FACE = 0x05,
ENTITY_TYPE_PADLOCK_BLUE_FACE = 0x06,
ENTITY_TYPE_BLUE_SWITCH = 0x07,
ENTITY_TYPE_RED_SWITCH = 0x08,
ENTITY_TYPE_HUGE_BLUE_SWITCH = 0x09,
ENTITY_TYPE_GREEN_STOMP_SWITCH = 0x0A,
ENTITY_TYPE_MULTI_TRIGGER_BLOCK = 0x0B,
ENTITY_TYPE_PUSH_BLOCK = 0x0C,
ENTITY_TYPE_BRICK_BLOCK = 0x0D,
ENTITY_TYPE_MULTI_COIN_BRICK = 0x0E,
ENTITY_TYPE_YELLOW_BLOCK = 0x0F,
ENTITY_TYPE_SINGLE_TRIGGER_BLOCK = 0x10,
ENTITY_TYPE_HIDDEN_YELLOW_BLOCK = 0x11,
ENTITY_TYPE_HIDDEN_RED_BLOCK = 0x12,
ENTITY_TYPE_INACTIVE_BLOCK = 0x13,
ENTITY_TYPE_RED_BLOCK = 0x14,
ENTITY_TYPE_HAMMER1_BLOCK = 0x15,
ENTITY_TYPE_HAMMER2_BLOCK = 0x16,
ENTITY_TYPE_HAMMER3_BLOCK = 0x17,
ENTITY_TYPE_HAMMER1_BLOCK_TINY = 0x18,
ENTITY_TYPE_HAMMER2_BLOCK_TINY = 0x19,
ENTITY_TYPE_HAMMER3_BLOCK_TINY = 0x1A,
ENTITY_TYPE_HEALING_BLOCK = 0x1B,
ENTITY_TYPE_1C = 0x1C,
ENTITY_TYPE_1D = 0x1D,
ENTITY_TYPE_1E = 0x1E,
ENTITY_TYPE_HEALING_BLOCK_FRAME = 0x1F,
ENTITY_TYPE_SAVE_POINT = 0x20,
ENTITY_TYPE_POW_BLOCK = 0x21,
ENTITY_TYPE_SUPER_BLOCK = 0x22,
ENTITY_TYPE_ULTRA_BLOCK = 0x23,
ENTITY_TYPE_WOODEN_CRATE = 0x24,
ENTITY_TYPE_BOARDED_FLOOR = 0x25,
ENTITY_TYPE_BOMBABLE_ROCK = 0x26,
ENTITY_TYPE_BLUE_WARP_PIPE = 0x2B,
ENTITY_TYPE_SIMPLE_SPRING = 0x2E,
ENTITY_TYPE_SCRIPT_SPRING = 0x2F,
ENTITY_TYPE_HIDDEN_PANEL = 0x30,
ENTITY_TYPE_STAR_BOX_LAUCHER = 0x31,
ENTITY_TYPE_CHEST = 0x32,
ENTITY_TYPE_SIGNPOST = 0x33,
ENTITY_TYPE_RED_ARROW_SIGNS = 0x34,
ENTITY_TYPE_BELLBELL_PLANT = 0x35,
ENTITY_TYPE_TRUMPET_PLANT = 0x36,
ENTITY_TYPE_MUNCHLESIA = 0x37,
ENTITY_TYPE_CYMBAL_PLANT = 0x38,
ENTITY_TYPE_PINK_FLOWER = 0x39,
ENTITY_TYPE_SPINNING_FLOWER = 0x3A,
ENTITY_TYPE_3B = 0x3B,
ENTITY_TYPE_TWEESTER = 0x3C,
ENTITY_TYPE_HEALING_BLOCK_CONTENT = 0x3F,
ENTITY_TYPE_SUPER_BLOCK_HIT_EFFECT = 0x41,
ENTITY_TYPE_ULTRA_BLOCK_HIT_EFFECT = 0x42,
ENTITY_TYPE_RESET_MUNCHLESIA = 0x43,
ENTITY_TYPE_MUNCHLESIA_GRAB = 0x44,
ENTITY_TYPE_MUNCHLESIA_ENVELOP = 0x45,
ENTITY_TYPE_MUNCHLESIA_BEGIN_CHEW = 0x46,
ENTITY_TYPE_MUNCHLESIA_CHEWING = 0x47,
ENTITY_TYPE_MUNCHLESIA_SPIT_OUT = 0x48,
ENTITY_TYPE_MUNCHLESIA_RESET1 = 0x49,
ENTITY_TYPE_MUNCHLESIA_RESET2 = 0x4A
};
// Entity
enum EntityFlags {
ENTITY_FLAG_HIDDEN = 0x00000001,
ENTITY_FLAG_DRAW_IF_CLOSE_HIDE_MODE1 = 0x00000002,
ENTITY_FLAG_HAS_DYNAMIC_SHADOW = 0x00000004,
ENTITY_FLAG_HAS_ANIMATED_MODEL = 0x00000008,
ENTITY_FLAG_SKIP_UPDATE_TRANSFORM_MATRIX = 0x00000010,
ENTITY_FLAG_DISABLE_COLLISION = 0x00000020,
ENTITY_FLAG_CONTINUOUS_COLLISION = 0x00000040,
ENTITY_FLAG_80 = 0x00000080,
ENTITY_FLAG_HAS_SHADOW = 0x00000100,
ENTITY_FLAG_FIXED_SHADOW_SIZE = 0x00000200,
ENTITY_FLAG_400 = 0x00000400,
ENTITY_FLAG_SQUARE_SHADOW = 0x00000800,
ENTITY_FLAG_SHOWS_INSPECT_PROMPT = 0x00001000,
ENTITY_FLAG_ALWAYS_FACE_CAMERA = 0x00002000,
ENTITY_FLAG_4000 = 0x00004000,
ENTITY_FLAG_8000 = 0x00008000,
ENTITY_FLAG_DETECTED_COLLISION = 0x00010000,
ENTITY_FLAG_PARTNER_COLLISION = 0x00020000,
ENTITY_FLAG_DRAW_IF_CLOSE_HIDE_MODE2 = 0x00040000,
ENTITY_FLAG_IGNORE_DISTANCE_CULLING = 0x00080000,
ENTITY_FLAG_100000 = 0x00100000,
ENTITY_FLAG_200000 = 0x00200000,
ENTITY_FLAG_SHADOW_POS_DIRTY = 0x00400000,
ENTITY_FLAG_DARK_SHADOW = 0x00800000,
ENTITY_FLAG_BOUND_SCRIPT_DIRTY = 0x01000000,
ENTITY_FLAG_2000000 = 0x02000000,
ENTITY_FLAG_PENDING_FULL_DELETE = 0x04000000,
ENTITY_FLAG_8000000 = 0x08000000,
ENTITY_FLAG_FADING_AWAY = 0x10000000,
ENTITY_FLAG_PENDING_INSTANCE_DELETE = 0x20000000,
ENTITY_FLAG_SKIP_UPDATE = 0x40000000,
ENTITY_FLAG_CREATED = 0x80000000,
};
enum EntityCollisionFlags {
ENTITY_COLLISION_PLAYER_TOUCH_FLOOR = 0x00000001,
ENTITY_COLLISION_FLAG_2 = 0x00000002,
ENTITY_COLLISION_PLAYER_TOUCH_CEILING = 0x00000004,
ENTITY_COLLISION_PLAYER_TOUCH_WALL = 0x00000008,
ENTITY_COLLISION_PLAYER_PUSHING_AGAINST = 0x00000010,
ENTITY_COLLISION_FLAG_20 = 0x00000020,
ENTITY_COLLISION_PLAYER_HAMMER = 0x00000040,
ENTITY_COLLISION_PARTNER = 0x00000080,
ENTITY_COLLISION_PLAYER_LAST_FLOOR = 0x00000100
};
enum EntityHideMode {
ENTITY_HIDE_MODE_0 = 0,
ENTITY_HIDE_MODE_1 = 1,
ENTITY_HIDE_MODE_2 = 2,
};
typedef enum PushGridOccupant {
PUSH_GRID_EMPTY = 0,
PUSH_GRID_BLOCK = 1,
PUSH_GRID_OBSTRUCTION = 2,
PUSH_GRID_OUT_OF_BOUNDS = 3
} PushGridOccupant;
enum TriggerFlags {
TRIGGER_ACTIVE = 0x00000001,
TRIGGER_ACTIVATED = 0x00000002,
TRIGGER_FORCE_ACTIVATE = 0x00000010,
TRIGGER_WALL_PUSH = 0x00000040,
TRIGGER_FLOOR_TOUCH = 0x00000080,
TRIGGER_WALL_PRESS_A = 0x00000100,
TRIGGER_FLOOR_JUMP = 0x00000200,
TRIGGER_WALL_TOUCH = 0x00000400,
TRIGGER_FLOOR_PRESS_A = 0x00000800,
TRIGGER_WALL_HAMMER = 0x00001000,
TRIGGER_FLAG_2000 = 0x00002000,
TRIGGER_FLAG_4000 = 0x00004000,
TRIGGER_FLAG_8000 = 0x00008000,
TRIGGER_GAME_FLAG_SET = 0x00010000,
TRIGGER_AREA_FLAG_SET = 0x00020000,
TRIGGER_CEILING_TOUCH = 0x00040000,
TRIGGER_FLOOR_ABOVE = 0x00080000,
TRIGGER_POINT_BOMB = 0x00100000,
TRIGGER_SCRIPT_BOUND = 0x01000000
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
enum ItemEntityFlags {
ITEM_ENTITY_FLAG_CAM0 = 0x00000001,
ITEM_ENTITY_FLAG_CAM1 = 0x00000002,
ITEM_ENTITY_FLAG_CAM2 = 0x00000004,
ITEM_ENTITY_FLAG_CAM3 = 0x00000008,
ITEM_ENTITY_FLAG_10 = 0x00000010,
ITEM_ENTITY_FLAG_HIDDEN = 0x00000040, // do not render; player cant pickup
ITEM_ENTITY_FLAG_80 = 0x00000080,
ITEM_ENTITY_FLAG_AUTO_COLLECT = 0x00000100,
ITEM_ENTITY_FLAG_NEVER_VANISH = 0x00000200,
ITEM_ENTITY_FLAG_SAVE_ON_TOUCH = 0x00000400, // sets bound game flag when the item is touched
ITEM_ENTITY_FLAG_800 = 0x00000800,
ITEM_ENTITY_FLAG_1000 = 0x00001000,
ITEM_ENTITY_FLAG_NO_GRAVITY = 0x00002000,
ITEM_ENTITY_RESIZABLE = 0x00004000,
ITEM_ENTITY_FLAG_8000 = 0x00008000,
ITEM_ENTITY_FLAG_TOSS_LOWER = 0x00010000,
ITEM_ENTITY_FLAG_20000 = 0x00020000,
ITEM_ENTITY_FLAG_40000 = 0x00040000,
ITEM_ENTITY_FLAG_TRANSPARENT = 0x00080000,
ITEM_ENTITY_FLAG_100000 = 0x00100000,
ITEM_ENTITY_FLAG_CANT_COLLECT = 0x00200000,
ITEM_ENTITY_FLAG_400000 = 0x00400000,
ITEM_ENTITY_FLAG_800000 = 0x00800000,
ITEM_ENTITY_FLAG_TOSS_HIGHER = 0x01000000,
ITEM_ENTITY_FLAG_2000000 = 0x02000000,
ITEM_ENTITY_FLAG_4000000 = 0x04000000,
ITEM_ENTITY_FLAG_HIDING = 0x08000000,
ITEM_ENTITY_FLAG_NO_MOTION = 0x10000000,
ITEM_ENTITY_FLAG_DONE_FALLING = 0x20000000,
ITEM_ENTITY_FLAG_ANGLE_RELATIVE_VELOCITY = 0x40000000,
ITEM_ENTITY_FLAG_SAVE_ON_RECEIPT = 0x80000000, // sets bound game flag only when the item is placed in player inventory
};
// governs item behavior after spawning until being picked up
enum ItemPhysicsStates {
ITEM_PHYSICS_STATE_INIT = 0x0,
ITEM_PHYSICS_STATE_ALIVE = 0x1, //
ITEM_PHYSICS_STATE_DEAD = 0x2, // item is vanished or fallen out of the world
ITEM_PHYSICS_STATE_TOUCH = 0x3, // player has touched the item
ITEM_PHYSICS_STATE_04 = 0x4,
ITEM_PHYSICS_STATE_PICKUP = 0xA, // item will begin pickup, physics state is invalid after this
};
// governs the process of picking up an item
enum ItemPickupStates {
// these states comprise the typical progression for item pickup
ITEM_PICKUP_STATE_INIT = 0x0,
ITEM_PICKUP_STATE_AWAIT_VALID_STATE = 0x1,
ITEM_PICKUP_STATE_SHOW_GOT_ITEM = 0x2,
ITEM_PICKUP_STATE_HIDE_GOT_ITEM = 0x3, // wait for window closing animations to finish
ITEM_PICKUP_STATE_DONE = 0x9,
// next three states are used for tutorials which trigger on item pickup
ITEM_PICKUP_STATE_CHECK_TUTORIALS = 0x4,
ITEM_PICKUP_STATE_SHOW_TUTORIAL = 0x5,
ITEM_PICKUP_STATE_AWAIT_TUTORIAL = 0x6,
// remaining states occur when inventory is full and an item needs to be throw away
ITEM_PICKUP_STATE_SHOW_TOO_MANY = 0xA, // show 'cant carry more items'; open throw away popup on state exit
ITEM_PICKUP_STATE_HIDE_TOO_MANY = 0xB, // wait for window closing animations to finish
ITEM_PICKUP_STATE_AWAIT_THROW_AWAY = 0xC, // choosing
ITEM_PICKUP_STATE_SHOW_THREW_AWAY = 0xD, // you threw away X window
ITEM_PICKUP_STATE_HIDE_THREW_AWAY = 0xE, // wait for window closing animations to finish
ITEM_PICKUP_STATE_THROW_AWAY_DONE = 0xF,
};
enum ItemPickupFlags {
ITEM_PICKUP_FLAG_NO_SOUND = 0x01,
ITEM_PICKUP_FLAG_NO_ANIMS = 0x02,
ITEM_PICKUP_FLAG_UNKNOWN = 0x04,
ITEM_PICKUP_FLAG_1_COIN = 0x10,
ITEM_PICKUP_FLAG_3_STAR_PIECES = 0x20,
ITEM_PICKUP_FLAG_UNIQUE = 0x40,
};
// Worker
enum WorkerFlags {
WORKER_FLAG_1 = 0x00000001,
WORKER_FLAG_SKIP_DRAW_UNTIL_UPDATE = 0x00000002,
WORKER_FLAG_FRONT_UI = 0x00000004,
WORKER_FLAG_BACK_UI = 0x00000008,
};
2021-03-29 09:34:39 +02:00
enum Buttons {
BUTTON_C_RIGHT = 0x00000001,
BUTTON_C_LEFT = 0x00000002,
BUTTON_C_DOWN = 0x00000004,
BUTTON_C_UP = 0x00000008,
BUTTON_R = 0x00000010,
BUTTON_L = 0x00000020,
BUTTON_D_RIGHT = 0x00000100,
BUTTON_D_LEFT = 0x00000200,
BUTTON_D_DOWN = 0x00000400,
BUTTON_D_UP = 0x00000800,
BUTTON_START = 0x00001000,
BUTTON_Z = 0x00002000,
BUTTON_B = 0x00004000,
BUTTON_A = 0x00008000,
BUTTON_STICK_UP = 0x00010000,
BUTTON_STICK_DOWN = 0x00020000,
BUTTON_STICK_LEFT = 0x00040000,
BUTTON_STICK_RIGHT = 0x00080000,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum PlayerBuffs {
PLAYER_BUFF_ALL = 0xFFFFFFFF,
PLAYER_BUFF_JUMP_CHARGE = 0x00000001,
PLAYER_BUFF_HAMMER_CHARGE = 0x00000002,
PLAYER_BUFF_STONE = 0x00000008,
PLAYER_BUFF_HUSTLE = 0x00000010,
PLAYER_BUFF_STATIC = 0x00000020,
PLAYER_BUFF_TRANSPARENT = 0x00000040,
PLAYER_BUFF_CLOUD_NINE = 0x00000080,
PLAYER_BUFF_TURBO_CHARGE = 0x00000100,
PLAYER_BUFF_WATER_BLOCK = 0x00000200,
PLAYER_BUFF_PARTNER_GLOWING = 0x00010000,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
2021-03-29 09:34:39 +02:00
enum StatusFlags {
STATUS_FLAG_SLEEP = 0x00001000,
STATUS_FLAG_STATIC = 0x00002000,
STATUS_FLAG_FROZEN = 0x00004000,
STATUS_FLAG_FEAR = 0x00008000,
STATUS_FLAG_PARALYZE = 0x00010000,
STATUS_FLAG_POISON = 0x00020000,
STATUS_FLAG_DIZZY = 0x00040000,
STATUS_FLAG_SHRINK = 0x00080000,
STATUS_FLAG_STONE = 0x00100000,
STATUS_FLAG_STOP = 0x00200000,
STATUS_FLAG_400000 = 0x00400000,
STATUS_FLAG_KO = 0x01000000,
STATUS_FLAG_GLOWING = 0x02000000,
STATUS_FLAG_TRANSPARENT = 0x04000000,
STATUS_FLAG_ATTACK_BOOST = 0x08000000,
2021-03-29 09:34:39 +02:00
STATUS_FLAG_DEFENSE_BOOST = 0x10000000,
STATUS_FLAG_CHILL_OUT = 0x20000000,
STATUS_FLAG_RIGHT_ON = 0x40000000,
STATUS_FLAG_80000000 = 0x80000000,
2021-03-29 09:34:39 +02:00
};
2020-08-15 00:47:06 +02:00
// general combination of flags for checking if an enemy is immobilized
#define STATUS_FLAGS_IMMOBILIZED \
(STATUS_FLAG_SLEEP \
| STATUS_FLAG_FROZEN \
| STATUS_FLAG_FEAR \
| STATUS_FLAG_PARALYZE \
| STATUS_FLAG_DIZZY \
| STATUS_FLAG_STONE \
| STATUS_FLAG_STOP)
// common set of flags used in checks throughout Dojo fights
#define STATUS_FLAGS_DOJO \
(STATUS_FLAG_SLEEP \
| STATUS_FLAG_PARALYZE \
| STATUS_FLAG_DIZZY \
| STATUS_FLAG_STONE \
| STATUS_FLAG_STOP)
2021-03-29 09:34:39 +02:00
enum DamageTypes {
DAMAGE_TYPE_FIRE = 0x00000002,
DAMAGE_TYPE_WATER = 0x00000004,
DAMAGE_TYPE_ICE = 0x00000008,
DAMAGE_TYPE_MAGIC = 0x00000010,
DAMAGE_TYPE_SHOCK = 0x00000020,
DAMAGE_TYPE_SMASH = 0x00000040,
DAMAGE_TYPE_JUMP = 0x00000080,
DAMAGE_TYPE_COSMIC = 0x00000100,
DAMAGE_TYPE_BLAST = 0x00000200,
DAMAGE_TYPE_POW = 0x00000400,
DAMAGE_TYPE_QUAKE = 0x00000800,
DAMAGE_TYPE_FEAR = 0x00001000,
DAMAGE_TYPE_DEATH = 0x00002000,
DAMAGE_TYPE_4000 = 0x00004000,
DAMAGE_TYPE_AIR_LIFT = 0x00008000,
DAMAGE_TYPE_SPINY_SURGE = 0x00010000,
DAMAGE_TYPE_SHELL_CRACK = 0x00020000,
DAMAGE_TYPE_THROW = 0x00040000,
DAMAGE_TYPE_POWER_BOUNCE = 0x00100000,
DAMAGE_TYPE_QUAKE_HAMMER = 0x00200000,
DAMAGE_TYPE_REMOVE_BUFFS = 0x00400000,
DAMAGE_TYPE_PEACH_BEAM = 0x00800000,
DAMAGE_TYPE_MULTI_BOUNCE = 0x01000000,
DAMAGE_TYPE_UNBLOCKABLE = 0x02000000,
DAMAGE_TYPE_SPIN_SMASH = 0x04000000,
DAMAGE_TYPE_IGNORE_DEFENSE = 0x08000000,
DAMAGE_TYPE_NO_CONTACT = 0x10000000,
DAMAGE_TYPE_MULTIPLE_POPUPS = 0x20000000, // part of an attack that hits multiple opponents
DAMAGE_TYPE_STATUS_ALWAYS_HITS = 0x40000000,
DAMAGE_TYPE_TRIGGER_LUCKY = 0x80000000,
};
2021-03-29 09:34:39 +02:00
enum PartnerIDs {
PARTNER_NONE = 0x00000000,
PARTNER_GOOMBARIO = 0x00000001,
PARTNER_KOOPER = 0x00000002,
PARTNER_BOMBETTE = 0x00000003,
PARTNER_PARAKARRY = 0x00000004,
PARTNER_GOOMPA = 0x00000005,
PARTNER_WATT = 0x00000006,
PARTNER_SUSHIE = 0x00000007,
PARTNER_LAKILESTER = 0x00000008,
PARTNER_BOW = 0x00000009,
PARTNER_GOOMBARIA = 0x0000000A,
PARTNER_TWINK = 0x0000000B,
2021-03-29 09:34:39 +02:00
};
2021-01-03 10:02:50 +01:00
enum EventSupressFlags {
SUPPRESS_EVENT_SPIKY_TOP = 0x1,
SUPPRESS_EVENT_EXPLODE_CONTACT = 0x2,
SUPPRESS_EVENT_SPIKY_FRONT = 0x4,
SUPPRESS_EVENT_SHOCK_CONTACT = 0x8,
SUPPRESS_EVENT_BURN_CONTACT = 0x10,
SUPPRESS_EVENT_FLAG_80 = 0x80, // supresses events associated with ACTOR_EVENT_FLAG_200000 used by pokeys and spinies
SUPPRESS_EVENT_FLAG_200 = 0x200, // unused?
SUPPRESS_EVENT_ALL = 0xFFFF,
SUPPRESS_EVENT_FLAG_10000 = 0x10000, // usage is a bug?
};
enum PartnerActions {
PARTNER_ACTION_NONE = 0, // generic state
PARTNER_ACTION_USE = 1, // generic state
PARTNER_ACTION_KOOPER_GATHER = 1,
PARTNER_ACTION_KOOPER_TOSS = 2,
PARTNER_ACTION_BOMBETTE_1 = 1,
PARTNER_ACTION_BOMBETTE_2 = 2,
PARTNER_ACTION_BOMBETTE_3 = 3,
PARTNER_ACTION_PARAKARRY_HOVER = 1,
PARTNER_ACTION_WATT_SHINE = 1,
PARTNER_ACTION_LAKILESTER_1 = 1,
};
enum PartnerStates {
PARTNER_CMD_NONE = 0,
PARTNER_CMD_INIT = 1,
PARTNER_CMD_INSTA_SWITCH = 2, // skips put away / take out scripts. assumes valid current partner.
PARTNER_CMD_SWITCH = 3, // assumes valid current partner.
PARTNER_CMD_PUT_AWAY = 4, // switches to null partner.
PARTNER_CMD_INSTA_PUT_AWAY = 5,
PARTNER_CMD_TAKE_OUT = 6, // assumes no current partner.
PARTNER_CMD_INSTA_TAKE_OUT = 7,
PARTNER_CMD_USE_ABILITY = 8,
PARTNER_CMD_RESET = 9,
PARTNER_CMD_ABORT = 10,
};
/// @see gAreas
2021-03-29 09:34:39 +02:00
enum Areas {
AREA_KMR,
AREA_MAC,
AREA_TIK,
AREA_KGR,
AREA_KKJ,
AREA_HOS,
AREA_NOK,
AREA_TRD,
AREA_IWA,
AREA_DRO,
AREA_SBK,
AREA_ISK,
AREA_MIM,
AREA_OBK,
AREA_ARN,
AREA_DGB,
AREA_OMO,
AREA_JAN,
AREA_KZN,
AREA_FLO,
AREA_SAM,
AREA_PRA,
AREA_KPA,
AREA_OSR,
AREA_END,
AREA_MGM,
AREA_GV,
AREA_TST,
};
enum NpcPalSwapState {
NPC_PALSWAP_HOLDING_A = 0,
NPC_PALSWAP_FROM_A_TO_B = 1,
NPC_PALSWAP_HOLDING_B = 2,
NPC_PALSWAP_FROM_B_TO_A = 3
};
2021-04-03 19:21:49 +02:00
enum NpcFlags {
NPC_FLAG_ENABLED = 0x00000001, // Does nothing aside from making npc->flags !=
NPC_FLAG_INVISIBLE = 0x00000002, // NPC will not be drawn or cause surface effects while moving
NPC_FLAG_INACTIVE = 0x00000004, // NPC will not render, move, or have collisions with other NPCs. They may still be interacted with.
NPC_FLAG_8 = 0x00000008,
NPC_FLAG_HAS_SHADOW = 0x00000010, // Set by default and by enable_npc_shadow
NPC_FLAG_NO_SHADOW_RAYCAST = 0x00000020, // Shadows are tied to NPC position instead of raycasting below the NPC
NPC_FLAG_IGNORE_WORLD_COLLISION = 0x00000040,
NPC_FLAG_UPSIDE_DOWN = 0x00000080, // Render NPCs upside-down
NPC_FLAG_IGNORE_PLAYER_COLLISION = 0x00000100,
NPC_FLAG_GRAVITY = 0x00000200, // Enables gravity. Does nothing if NPC_FLAG_JUMPING is set.
NPC_FLAG_DONT_UPDATE_SHADOW_Y = 0x00000400, // When shadow raycasting is off, only X and Z update as NPC moves
NPC_FLAG_JUMPING = 0x00000800,
NPC_FLAG_GROUNDED = 0x00001000, // Touching the ground
NPC_FLAG_COLLDING_WITH_WORLD = 0x00002000, // Colliding with world in front or to the sides of the NPC
NPC_FLAG_COLLDING_FORWARD_WITH_WORLD = 0x00004000, // Colliding with world directly in front of NPC
NPC_FLAG_IGNORE_ENTITY_COLLISION = 0x00008000,
NPC_FLAG_DIRTY_SHADOW = 0x00010000, // Set if shadow is dirty (needs to be repositioned etc.)
NPC_FLAG_REFLECT_WALL = 0x00020000, // Mirror rendering across z=0
NPC_FLAG_IGNORE_CAMERA_FOR_YAW = 0x00040000, // Do not adjust renderYaw to face the camera
NPC_FLAG_REFLECT_FLOOR = 0x00080000, // Mirror rendering across y=0
NPC_FLAG_MOTION_BLUR = 0x00100000, // Gives motion blur effect as NPC moves. Set by enable_npc_blur
NPC_FLAG_200000 = 0x00200000,
NPC_FLAG_TOUCHES_GROUND = 0x00400000, // Can cause effects to play when touching special surface types
NPC_FLAG_HIDING = 0x00800000,
NPC_FLAG_HAS_NO_SPRITE = 0x01000000,
NPC_FLAG_COLLIDING_WITH_NPC = 0x02000000,
NPC_FLAG_PARTNER = 0x04000000,
NPC_FLAG_WORLD_COLLISION_DIRTY = 0x08000000,
NPC_FLAG_10000000 = 0x10000000,
NPC_FLAG_20000000 = 0x20000000,
NPC_FLAG_NO_ANIMS_LOADED = 0x40000000, // Npc has no animations loaded
NPC_FLAG_SUSPENDED = 0x80000000,
2021-04-03 19:21:49 +02:00
};
enum PlayerStatusFlags {
PS_FLAG_AIRBORNE = 0x0000000E,
PS_FLAG_HAS_REFLECTION = 0x00000001,
PS_FLAG_JUMPING = 0x00000002,
PS_FLAG_FALLING = 0x00000004,
PS_FLAG_FLYING = 0x00000008,
PS_FLAG_SLIDING = 0x00000010,
/* Paused either via the start menu, or through another menu that causes a pause (like the item menu) */
PS_FLAG_PAUSED = 0x00000020,
PS_FLAG_NO_CHANGE_PARTNER = 0x00000040,
PS_FLAG_NO_PARTNER_USAGE = 0x00000080,
/* Prevents opening menus that would require a game-time pause (start menu, item menu, etc) */
PS_FLAG_PAUSE_DISABLED = 0x00000100,
/* Doing either a spin jump or a tornado jump */
PS_FLAG_SPECIAL_JUMP = 0x00000200,
/* Landing from either a spin jump or a tornado jump */
PS_FLAG_SPECIAL_LAND = 0x00000400,
/* Burning from touching a fire hazard of some kind */
PS_FLAG_HIT_FIRE = 0x00000800,
PS_FLAG_NO_STATIC_COLLISION = 0x00001000,
PS_FLAG_INPUT_DISABLED = 0x00002000,
/* Indicates that Mario's lateral movement is currently commandeered by a cutscene or script */
PS_FLAG_CUTSCENE_MOVEMENT = 0x00004000,
/* Either outta sight with Bow, or temporarily damage boosted - makes Mario ignore fire bars */
PS_FLAG_HAZARD_INVINCIBILITY = 0x00008000,
/* Spinning either through pressing Z or the tornado jump - causes a ghost trail to render */
PS_FLAG_SPINNING = 0x00020000,
/* Slows Mario's physics and animations to half speed - responsible for the dramatic slowdown when starting an encounter by jumping on an enemy.
Also stops Mario from successfully completing a hammer. */
PS_FLAG_ENTERING_BATTLE = 0x00040000,
/* Occurs after hitting a heart block - temporarily prevents encounters from starting */
PS_FLAG_ARMS_RAISED = 0x00080000,
/* Stops Mario's sprite yaw from being adjusted, usually so a cutscene can do it instead. */
PS_FLAG_ROTATION_LOCKED = 0x00100000,
/* Forces Mario's sprite to either face exactly left or right, without transitioning. */
PS_FLAG_NO_FLIPPING = 0x00200000,
/* Prevents Mario from moving laterally */
PS_FLAG_MOVEMENT_LOCKED = 0x00400000, //TODO misnamed
/* Stops Mario from air steering or using a special jump during a scripted fall */
PS_FLAG_SCRIPTED_FALL = 0x00800000,
/* Not fully sure about this one, but appears to mark the frame that the check for what to hammer occurs */
PS_FLAG_HAMMER_CHECK = 0x01000000,
PS_FLAG_HAS_CONVERSATION_NPC = 0x02000000,
PS_FLAG_CAMERA_DOESNT_FOLLOW = 0x04000000,
/* Mario just interacted with something (usually cleared on the same frame) */
PS_FLAG_INTERACTED = 0x08000000,
/* Makes Mario face forwards, used when talking to NPCs, or when on Lakilester */
PS_FLAG_FACE_FORWARDS = 0x10000000,
/* Freezes physics and animations - is usually reset at the start of a frame so often does nothing */
PS_FLAG_TIME_STOPPED = 0x20000000,
/* Indicates that Mario needs his sprite redrawn */
PS_FLAG_SPRITE_REDRAW = 0x40000000,
PS_FLAG_ACTION_STATE_CHANGED = 0x80000000,
};
/// @see PlayerStatus::animFlags
enum PlayerStatusAnimFlags {
/* Whether Mario is in the process of using Watt (but isn't necessarily holding them yet) */
PA_FLAG_USING_WATT = 0x00000001,
/* Whether Watt is actually in Mario's hands at the moment */
PA_FLAG_WATT_IN_HANDS = 0x00000002,
PA_FLAG_INTERRUPT_USE_PARTNER = 0x00000004, ///< forces actions with bow, parakarry, watt, and lakilester to end (sushie not tested)
PA_FLAG_FORCE_USE_PARTNER = 0x00000008, ///< triggers partner use when set
PA_FLAG_INTERACT_PROMPT_AVAILABLE = 0x00000010, ///< ! prompt
PA_FLAG_SPEECH_PROMPT_AVAILABLE = 0x00000020, ///< (...) prompt
PA_FLAG_PULSE_STONE_VISIBLE = 0x00000040, ///< The pulse stone icon is being shown
PA_FLAG_USING_PULSE_STONE = 0x00000080,
PA_FLAG_ISPY_VISIBLE = 0x00000100, ///< The I Spy icon is being shown
PA_FLAG_RAISED_ARMS = 0x00000200, ///< Sets action state to ACTION_STATE_RAISE_ARMS on idle
PA_FLAG_SHIVERING = 0x00000400,
PA_FLAG_OPENED_HIDDEN_PANEL = 0x00000800,
PA_FLAG_USING_PEACH_PHYSICS = 0x00001000,
PA_FLAG_INVISIBLE = 0x00002000,
PA_FLAG_8BIT_MARIO = 0x00004000,
PA_FLAG_NPC_COLLIDED = 0x00008000,
PA_FLAG_SPINNING = 0x00010000,
/* Began an encounter by spinning into an enemy with the Dizzy Attack badge on */
PA_FLAG_DIZZY_ATTACK_ENCOUNTER = 0x00020000,
PA_FLAG_INTERRUPT_SPIN = 0x00040000,
PA_FLAG_80000 = 0x00080000,
/* When Mario is in a transition to a new map, either through a loading zone or pipe */
PA_FLAG_CHANGING_MAP = 0x00100000,
/* Occurs after PA_FLAG_FORCE_USE_PARTNER. Some partners - namely Bow and Lakilester, unset this immediately.
Not sure why - seems like it might contribute to being unable to *stop* using your partner during a cutscene. */
PA_FLAG_PARTNER_USAGE_FORCED = 0x00200000,
PA_FLAG_RIDING_PARTNER = 0x00400000,
PA_FLAG_ABORT_PUSHING_BLOCK = 0x00800000,
/* Changes how Mario is rendered. Seems to be intended to make Mario's depth render properly when using Bow behind a switch (two translucent objects on top of eachother), but it doesn't actually work. */
PA_FLAG_MAP_HAS_SWITCH = 0x01000000,
PA_FLAG_2000000 = 0x02000000,
PA_FLAG_4000000 = 0x04000000,
PA_FLAG_8000000 = 0x08000000,
/* Usually, if Mario falls for too long, he eventually gets reset to his last safe position. This prevents that. Used by some scripts. */
PA_FLAG_NO_OOB_RESPAWN = 0x10000000,
/* This allows dismounting from Lakilester, even if in a precarious situation (like over spikes, lava, or water). */
PA_FLAG_DISMOUNTING_ALLOWED = 0x20000000,
/* This flag is set when partner usage was interrupted by a script, and it prevents menu sounds (like the error sound) from playing for script-initiated player actions */
PA_FLAG_FORCED_PARTNER_ABILITY_END = 0x40000000,
/* This one's really weird. Seems to have something to do with the direction Mario is facing, but I'm not sure what it's actually supposed to be achieving. */
PA_FLAG_80000000 = 0x80000000,
};
enum PopupType {
POPUP_MENU_USE_ITEM = 0x0,
POPUP_MENU_SWITCH_PARTNER = 0x1,
POPUP_MENU_THROW_AWAY_ITEM = 0x2,
POPUP_MENU_TRADE_FOR_BADGE = 0x3,
POPUP_MENU_UPGRADE_PARTNER = 0x4,
POPUP_MENU_SELL_ITEM = 0x5,
POPUP_MENU_CHECK_ITEM = 0x6,
POPUP_MENU_CLAIM_ITEM = 0x7,
POPUP_MENU_READ_LETTER = 0x8,
POPUP_MENU_TAKE_FROM_CHEST = 0x9,
POPUP_MENU_READ_DIARY_PAGE = 0xA,
POPUP_MENU_READ_POSTCARD = 0xB,
POPUP_MENU_USEKEY = 0xC,
POPUP_MENU_POST_OFFICE = 0xD,
POPUP_MENU_DOUBLE_DIP = 100,
POPUP_MENU_TRIPLE_DIP = 200,
};
enum PopupState {
POPUP_STATE_INIT = 0,
POPUP_STATE_CHOOSING = 1,
POPUP_STATE_10 = 10,
POPUP_STATE_11 = 11,
POPUP_STATE_20 = 20,
POPUP_STATE_ALREADY_HAVE_PARTNER_BEGIN = 30,
POPUP_STATE_ALREADY_HAVE_PARTNER_SHOW = 31,
POPUP_STATE_ALREADY_HAVE_PARTNER_AWAIT = 32,
POPUP_STATE_CANCEL_DIP = 100,
POPUP_STATE_CANCEL_DIP_AWAIT_CHOICE = 101,
POPUP_STATE_CANCEL_DIP_ACCEPT = 102,
POPUP_STATE_CANCEL_DIP_DECLINE = 103,
POPUP_STATE_104 = 104,
POPUP_STATE_105 = 105,
POPUP_STATE_CHOSE_WORLD = -1,
POPUP_STATE_CHOSE_BATTLE = -2,
POPUP_STATE_MINUS_3 = -3,
POPUP_STATE_MINUS_4 = -4,
POPUP_STATE_MINUS_5 = -5,
POPUP_STATE_MINUS_6 = -6,
POPUP_STATE_MINUS_7 = -7,
POPUP_STATE_MINUS_8 = -8,
};
enum PopupResult {
POPUP_RESULT_MINUS_1 = -1,
POPUP_RESULT_MINUS_2 = -2,
POPUP_RESULT_CHOOSING = 0,
POPUP_RESULT_CANCEL = 255,
};
enum WindowPriority {
WINDOW_PRIORITY_0 = 0,
WINDOW_PRIORITY_1 = 1,
WINDOW_PRIORITY_10 = 10,
WINDOW_PRIORITY_19 = 19,
WINDOW_PRIORITY_20 = 20,
WINDOW_PRIORITY_21 = 21,
WINDOW_PRIORITY_64 = 64,
};
/// not really
enum RenderMode {
RENDER_MODE_SURF_SOLID_AA_ZB_LAYER0 = 0x00000000,
RENDER_MODE_SURFACE_OPA = 0x00000001,
RENDER_MODE_2 = 0x00000002,
RENDER_MODE_SURFACE_OPA_NO_AA = 0x00000003,
RENDER_MODE_SURFACE_OPA_NO_ZB = 0x00000004,
RENDER_MODE_DECAL_OPA = 0x00000005,
RENDER_MODE_6 = 0x00000006,
RENDER_MODE_DECAL_OPA_NO_AA = 0x00000007,
RENDER_MODE_8 = 0x00000008,
RENDER_MODE_INTERSECTING_OPA = 0x00000009,
RENDER_MODE_A = 0x0000000A,
RENDER_MODE_B = 0x0000000B,
RENDER_MODE_C = 0x0000000C,
RENDER_MODE_ALPHATEST = 0x0000000D,
RENDER_MODE_E = 0x0000000E,
RENDER_MODE_ALPHATEST_ONESIDED = 0x0000000F,
RENDER_MODE_ALPHATEST_NO_ZB = 0x00000010,
RENDER_MODE_SURFACE_XLU_LAYER1 = 0x00000011,
RENDER_MODE_12 = 0x00000012,
RENDER_MODE_SURFACE_XLU_NO_AA = 0x00000013,
RENDER_MODE_SURFACE_XLU_NO_ZB = 0x00000014,
RENDER_MODE_SURFXLU_ZB_ZUPD = 0x00000015,
RENDER_MODE_SURFACE_XLU_LAYER2 = 0x00000016,
RENDER_MODE_17 = 0x00000017,
RENDER_MODE_18 = 0x00000018,
RENDER_MODE_19 = 0x00000019,
RENDER_MODE_DECAL_XLU = 0x0000001A,
RENDER_MODE_1B = 0x0000001B,
RENDER_MODE_DECAL_XLU_NOAA = 0x0000001C,
RENDER_MODE_1D = 0x0000001D,
RENDER_MODE_1E = 0x0000001E,
RENDER_MODE_1F = 0x0000001F,
RENDER_MODE_SHADOW = 0x00000020,
RENDER_MODE_21 = 0x00000021,
RENDER_MODE_SURFACE_XLU_LAYER3 = 0x00000022,
RENDER_MODE_23 = 0x00000023,
RENDER_MODE_24 = 0x00000024,
RENDER_MODE_25 = 0x00000025,
RENDER_MODE_INTERSECTING_XLU = 0x00000026,
RENDER_MODE_27 = 0x00000027,
RENDER_MODE_28 = 0x00000028,
RENDER_MODE_SURFXLU_AA_ZB_ZUPD = 0x00000029,
RENDER_MODE_2A = 0x0000002A,
RENDER_MODE_2B = 0x0000002B,
RENDER_MODE_2C = 0x0000002C,
RENDER_MODE_2D = 0x0000002D,
RENDER_MODE_CLOUD = 0x0000002E,
RENDER_MODE_CLOUD_NO_ZB = 0x0000002F,
RENDER_MODE_COUNT = 0x00000030,
};
enum RenderTaskFlags {
RENDER_TASK_FLAG_ENABLED = 0x01,
RENDER_TASK_FLAG_REFLECT_FLOOR = 0x02,
RENDER_TASK_FLAG_20 = 0x20,
};
enum ActorFlags {
ACTOR_FLAG_DISABLED = 0x00000001, ///< Disables the actor.
ACTOR_FLAG_2 = 0x00000002,
ACTOR_FLAG_NO_SHADOW = 0x00000004, ///< Hide shadow.
ACTOR_FLAG_8 = 0x00000008,
ACTOR_FLAG_10 = 0x00000010,
ACTOR_FLAG_20 = 0x00000020,
ACTOR_FLAG_40 = 0x00000040,
ACTOR_FLAG_80 = 0x00000080,
ACTOR_FLAG_100 = 0x00000100,
ACTOR_FLAG_FLYING = 0x00000200, ///< Quake Hammer can't hit.
ACTOR_FLAG_FLIPPED = 0x00000400, ///< Actor has been flipped over.
ACTOR_FLAG_UPSIDE_DOWN = 0x00000800, ///< HP bar offset below actor (e.g. Swooper when upside-down).
ACTOR_FLAG_TYPE_CHANGED = 0x00001000, ///< Indicates actors type has changed, triggers recheck for if HP bar should be shown based on tattle status.
ACTOR_FLAG_2000 = 0x00002000,
ACTOR_FLAG_TARGET_ONLY = 0x00004000, ///< Battle ends even if undefeated. No turn.
ACTOR_FLAG_8000 = 0x00008000,
ACTOR_FLAG_10000 = 0x00010000,
ACTOR_FLAG_20000 = 0x00020000,
ACTOR_FLAG_NO_HEALTH_BAR = 0x00040000, // Health bar is not shown for this actor type
ACTOR_FLAG_HEALTH_BAR_HIDDEN = 0x00080000, // Health bar is temporarily hidden
ACTOR_FLAG_100000 = 0x00100000,
ACTOR_FLAG_NO_ATTACK = 0x00200000, ///< Skip attack turn.
ACTOR_FLAG_NO_DMG_APPLY = 0x00400000, ///< Damage is not applied to actor HP.
ACTOR_FLAG_800000 = 0x00800000,
ACTOR_FLAG_1000000 = 0x01000000,
ACTOR_FLAG_NO_DMG_POPUP = 0x02000000, ///< Hide damage popup.
ACTOR_FLAG_4000000 = 0x04000000,
ACTOR_FLAG_8000000 = 0x08000000,
ACTOR_FLAG_BLUR_ENABLED = 0x10000000,
ACTOR_FLAG_20000000 = 0x20000000,
ACTOR_FLAG_40000000 = 0x40000000,
ACTOR_FLAG_80000000 = 0x80000000,
};
enum ActorPartFlags {
ACTOR_PART_FLAG_INVISIBLE = 0x00000001,
ACTOR_PART_FLAG_2 = 0x00000002,
ACTOR_PART_FLAG_4 = 0x00000004,
ACTOR_PART_FLAG_8 = 0x00000008,
ACTOR_PART_FLAG_10 = 0x00000010,
ACTOR_PART_FLAG_20 = 0x00000020,
ACTOR_PART_FLAG_40 = 0x00000040,
ACTOR_PART_FLAG_80 = 0x00000080,
ACTOR_PART_FLAG_100 = 0x00000100,
ACTOR_PART_FLAG_200 = 0x00000200,
ACTOR_PART_FLAG_400 = 0x00000400,
ACTOR_PART_FLAG_800 = 0x00000800,
ACTOR_PART_FLAG_1000 = 0x00001000,
ACTOR_PART_FLAG_2000 = 0x00002000, ///< electrified Plays extra hurt SFX?
ACTOR_PART_FLAG_4000 = 0x00004000,
ACTOR_PART_FLAG_8000 = 0x00008000,
ACTOR_PART_FLAG_10000 = 0x00010000,
ACTOR_PART_FLAG_NO_TARGET = 0x00020000, ///< Cannot be targeted.
ACTOR_PART_FLAG_40000 = 0x00040000,
ACTOR_PART_FLAG_80000 = 0x00080000,
ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION = 0x00100000,
ACTOR_PART_FLAG_200000 = 0x00200000,
ACTOR_PART_FLAG_400000 = 0x00400000,
ACTOR_PART_FLAG_MULTI_TARGET = 0x00800000, ///< Can be targeted with multi-target attacks (e.g. Star Storm).
ACTOR_PART_FLAG_1000000 = 0x01000000,
ACTOR_PART_FLAG_2000000 = 0x02000000,
ACTOR_PART_FLAG_4000000 = 0x04000000,
ACTOR_PART_FLAG_8000000 = 0x08000000,
ACTOR_PART_FLAG_10000000 = 0x10000000,
ACTOR_PART_FLAG_20000000 = 0x20000000,
ACTOR_PART_FLAG_40000000 = 0x40000000,
ACTOR_PART_FLAG_80000000 = 0x80000000,
};
enum ActorEventFlags {
ACTOR_EVENT_FLAGS_NONE = 0x00000000,
ACTOR_EVENT_FLAG_1 = 0x00000001,
ACTOR_EVENT_FLAG_FIREY = 0x00000002, ///< Player takes burn damage upon contact.
ACTOR_EVENT_FLAG_4 = 0x00000004,
ACTOR_EVENT_FLAG_ICY = 0x00000008, ///< No known effect, but is used.
ACTOR_EVENT_FLAG_SPIKY_TOP = 0x00000010, ///< Player takes spike damage from jump attacks.
ACTOR_EVENT_FLAG_ILLUSORY = 0x00000020, ///< Player attacks pass through and miss.
ACTOR_EVENT_FLAG_40 = 0x00000040,
ACTOR_EVENT_FLAG_ELECTRIFIED = 0x00000080, ///< Player takes shock damage upon contact.
ACTOR_EVENT_FLAG_100 = 0x00000100,
ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION = 0x00000200, ///< Blast and fire attacks trigger an explosion.
ACTOR_EVENT_FLAG_FIRE_EXPLODE = 0x00000400, ///< Fire attacks trigger an explosion, used only by bullet/bombshell bills.
ACTOR_EVENT_FLAG_800 = 0x00000800,
ACTOR_EVENT_FLAG_FLIPABLE = 0x00001000, ///< Actor can be flipped; triggered by jump and quake attacks.
ACTOR_EVENT_FLAG_2000 = 0x00002000,
ACTOR_EVENT_FLAG_GROUNDABLE = 0x00004000, ///< Actor can be knocked down from flight; triggered by jump attacks.
ACTOR_EVENT_FLAG_EXPLODE_ON_CONTACT = 0x00008000,
ACTOR_EVENT_FLAG_SPIKY_FRONT = 0x00010000, ///< Player takes spike damage from hammer attacks.
ACTOR_EVENT_FLAG_20000 = 0x00020000,
ACTOR_EVENT_FLAG_ENCHANTED = 0x00040000, ///< Actor glows and listens for the Star Beam event.
ACTOR_EVENT_FLAG_STAR_ROD_ENCHANTED = 0x00080000, ///< Actor glows and listens for Star Beam and Peach Beam events.
ACTOR_EVENT_FLAG_POWER_BOUNCE = 0x00100000, ///< Actor listens for Power Bounce events.
ACTOR_EVENT_FLAG_200000 = 0x00200000,
ACTOR_EVENT_FLAG_ATTACK_CHARGED = 0x00400000, ///< Actor has charged an attack that can be removed with Star Beam.
ACTOR_EVENT_FLAG_RIDING_BROOMSTICK = 0x00800000, ///< Actor is on Magikoopa Broomstick, effect seems to be redundant.
ACTOR_EVENT_FLAG_1000000 = 0x01000000,
ACTOR_EVENT_FLAG_2000000 = 0x02000000,
ACTOR_EVENT_FLAG_4000000 = 0x04000000,
ACTOR_EVENT_FLAG_8000000 = 0x08000000,
ACTOR_EVENT_FLAG_10000000 = 0x10000000,
ACTOR_EVENT_FLAG_20000000 = 0x20000000,
ACTOR_EVENT_FLAG_40000000 = 0x40000000,
ACTOR_EVENT_FLAG_80000000 = 0x80000000,
};
enum PartnerAnimIndices {
PARTNER_ANIM_INDEX_STILL = 0x0,
PARTNER_ANIM_INDEX_WALK = 0x1,
PARTNER_ANIM_INDEX_JUMP = 0x2,
PARTNER_ANIM_INDEX_FALL = 0x3,
PARTNER_ANIM_INDEX_FLY = 0x4,
PARTNER_ANIM_INDEX_IDLE = 0x5,
PARTNER_ANIM_INDEX_RUN = 0x6,
PARTNER_ANIM_INDEX_TALK = 0x7,
PARTNER_ANIM_INDEX_HURT = 0x8,
};
enum AnyPartnerAnims {
PARTNER_ANIM_STILL = 0x101,
PARTNER_ANIM_WALK = 0x102,
PARTNER_ANIM_JUMP = 0x103,
PARTNER_ANIM_FALL = 0x104,
PARTNER_ANIM_FLY = 0x105,
PARTNER_ANIM_IDLE = 0x106,
PARTNER_ANIM_RUN = 0x107,
PARTNER_ANIM_TALK = 0x108,
PARTNER_ANIM_HURT = 0x109,
Assorted Morsels (#297) * bss * 3 audios * d5a50 stuff * some icon funcs * get_icon_render_pos * PlayerLandJump * func_80248170 * cleanup * splat update prep * git subrepo pull --force tools/splat subrepo: subdir: "tools/splat" merged: "81c4b35b89" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "81c4b35b89" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo.git" commit: "2f68596" * git subrepo pull tools/splat subrepo: subdir: "tools/splat" merged: "9b791a654a" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "9b791a654a" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo.git" commit: "2f68596" * git subrepo pull tools/splat subrepo: subdir: "tools/splat" merged: "2cf2a5e5d8" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "2cf2a5e5d8" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo.git" commit: "2f68596" * fix loop in PaperMarioNpcSprites * git subrepo pull tools/splat subrepo: subdir: "tools/splat" merged: "2fab217750" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "2fab217750" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo" commit: "2f68596" * add sha1 to yaml * git subrepo pull tools/splat subrepo: subdir: "tools/splat" merged: "426b08200d" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "426b08200d" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo" commit: "2f68596" * varTable -> union :( + player_api funcs * 6 more * 4 more * 5 mo * 1 mo * 1 mo 2 * 5 mo * player_jump * 3 mo * some 18F340 * 6 more * 6 mo * nm * 1 * 1 more * some PR feedback * symbol addr update * UnsetCamera0Flag1000 * SetPlayerSpriteSet2 * action 18 * encounter + a smol hammer * git subrepo pull (merge) tools/splat subrepo: subdir: "tools/splat" merged: "8cf482fe57" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "4c0a93eaed" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo" commit: "2f68596" * 3 and cleanup * undo yucky union * PR comments * get_enemy_safe * cleanup * move VirtualEntity * attempt to fix doxygen * 3, cleanup * broken * fixed! * progress * 2 * 3 and cleanup * 6 map_api funcs * 3 map api * CreateNpc * BringPartnerOut & NpcFlyTo * npc_api complete * update_scripts * 4 si bois inc si_execute_next_command * update symbol_addrs * 2 more and cleanup * camera struct & do_camera_type_0 * PR feedback * small tidying
2021-06-21 06:30:57 +02:00
};
enum EnemyAnimIndices {
ENEMY_ANIM_INDEX_IDLE = 0,
ENEMY_ANIM_INDEX_WALK = 1,
ENEMY_ANIM_INDEX_RUN = 2,
ENEMY_ANIM_INDEX_CHASE = 3,
ENEMY_ANIM_INDEX_JUMP = 4,
ENEMY_ANIM_INDEX_05 = 5,
ENEMY_ANIM_INDEX_DEATH = 6,
ENEMY_ANIM_INDEX_HIT = 7,
ENEMY_ANIM_INDEX_MELEE_PRE = 8,
ENEMY_ANIM_INDEX_MELEE_HIT = 9,
};
enum AnyEnemyAnims {
ENEMY_ANIM_IDLE = 0x201,
ENEMY_ANIM_WALK = 0x202,
ENEMY_ANIM_RUN = 0x203,
ENEMY_ANIM_CHASE = 0x204,
ENEMY_ANIM_JUMP = 0x205,
ENEMY_ANIM_5 = 0x206,
ENEMY_ANIM_DEATH = 0x207,
ENEMY_ANIM_HIT = 0x208,
ENEMY_ANIM_8 = 0x209,
ENEMY_ANIM_9 = 0x20A,
ENEMY_ANIM_A = 0x20B,
ENEMY_ANIM_B = 0x20C,
ENEMY_ANIM_C = 0x20D,
ENEMY_ANIM_D = 0x20E,
ENEMY_ANIM_E = 0x20F,
ENEMY_ANIM_F = 0x210,
};
enum FirstStrikes {
FIRST_STRIKE_NONE = 0,
FIRST_STRIKE_PLAYER = 1,
FIRST_STRIKE_ENEMY = 2,
};
enum TimeFreezeMode {
TIME_FREEZE_NORMAL = 0,
TIME_FREEZE_PARTIAL = 1,
TIME_FREEZE_FULL = 2,
TIME_FREEZE_POPUP_MENU = 3,
TIME_FREEZE_EXIT = 4,
};
enum ActionCommand {
ACTION_COMMAND_NONE = 0x00000000,
ACTION_COMMAND_JUMP = 0x00000001,
ACTION_COMMAND_SMASH = 0x00000002,
ACTION_COMMAND_FLEE = 0x00000003,
ACTION_COMMAND_BREAK_FREE = 0x00000004,
ACTION_COMMAND_WHIRLWIND = 0x00000005,
ACTION_COMMAND_STOP_LEECH = 0x00000006,
ACTION_COMMAND_07 = 0x00000007,
ACTION_COMMAND_DIZZY_SHELL = 0x00000008,
ACTION_COMMAND_FIRE_SHELL = 0x00000009,
ACTION_COMMAND_0A = 0x0000000A,
ACTION_COMMAND_BOMB = 0x0000000B,
ACTION_COMMAND_BODY_SLAM = 0x0000000C,
ACTION_COMMAND_AIR_LIFT = 0x0000000D,
ACTION_COMMAND_AIR_RAID = 0x0000000E,
ACTION_COMMAND_SQUIRT = 0x0000000F,
ACTION_COMMAND_POWER_SHOCK = 0x00000010,
ACTION_COMMAND_MEGA_SHOCK = 0x00000011,
ACTION_COMMAND_SMACK = 0x00000012,
ACTION_COMMAND_SPINY_SURGE = 0x00000013,
ACTION_COMMAND_HURRICANE = 0x00000014,
ACTION_COMMAND_SPOOK = 0x00000015,
ACTION_COMMAND_WATER_BLOCK = 0x00000016,
ACTION_COMMAND_TIDAL_WAVE = 0x00000017,
};
enum HazardType {
HAZARD_TYPE_NONE = 0,
HAZARD_TYPE_LAVA = 1,
HAZARD_TYPE_SPIKES = 2,
HAZARD_TYPE_FIRE_BAR = 3,
};
enum DamageIntensityRange {
DAMAGE_INTENSITY_LIGHT = 0, // 0-3
DAMAGE_INTENSITY_MEDIUM = 1, // 4-6
DAMAGE_INTENSITY_HEAVY = 2, // 7-9
DAMAGE_INTENSITY_EXTREME = 3, // 10+
DAMAGE_INTENSITY_UNUSED = 4, // unused
};
enum EffectInstanceFlags {
FX_INSTANCE_FLAG_ENABLED = 0x00000001,
FX_INSTANCE_FLAG_BATTLE = 0x00000004, // effect was created during battle
FX_INSTANCE_FLAG_HAS_UPDATED = 0x00000008, // has run update at least once
FX_INSTANCE_FLAG_DISMISS = 0x00000010, // effect should perform cleanup and self-delete
};
enum EffectGfxDataFlags {
FX_GRAPHICS_DISABLED = 0x00000000,
FX_GRAPHICS_LOADED = 0x00000001,
FX_GRAPHICS_CAN_FREE = 0x00000002,
};
enum MoveIDs {
MOVE_NONE = 0x00000000,
MOVE_UNUSED_01 = 0x00000001,
MOVE_UNUSED_02 = 0x00000002,
MOVE_HAMMER1 = 0x00000003,
MOVE_HAMMER2 = 0x00000004,
MOVE_HAMMER3 = 0x00000005,
MOVE_UNUSED_HAMMER4 = 0x00000006,
MOVE_UNUSED_HAMMER5 = 0x00000007,
MOVE_SPIN_SMASH = 0x00000008,
MOVE_QUAKE_HAMMER = 0x00000009,
MOVE_D_DOWN_POUND = 0x0000000A,
MOVE_SMASH_CHARGE0 = 0x0000000B,
MOVE_UNUSED_HAMMER_0C = 0x0000000C,
MOVE_HAMMER_THROW = 0x0000000D,
MOVE_MEGA_QUAKE = 0x0000000E,
MOVE_SMASH_CHARGE = 0x0000000F,
MOVE_UNUSED_HAMMER_10 = 0x00000010,
MOVE_SUPER_SMASH_CHARGE = 0x00000011,
MOVE_UNUSED_HAMMER_12 = 0x00000012,
MOVE_AUTO_SMASH = 0x00000013,
MOVE_POWER_QUAKE = 0x00000014,
MOVE_POWER_SMASH = 0x00000015,
MOVE_SUPER_SMASH = 0x00000016,
MOVE_MEGA_SMASH = 0x00000017,
MOVE_SHRINK_SMASH = 0x00000018,
MOVE_SHELL_CRACK = 0x00000019,
MOVE_JUMP1 = 0x0000001A,
MOVE_JUMP2 = 0x0000001B,
MOVE_JUMP3 = 0x0000001C,
MOVE_UNUSED_JUMP4 = 0x0000001D,
MOVE_UNUSED_JUMP5 = 0x0000001E,
MOVE_MULTIBOUNCE = 0x0000001F,
MOVE_POWER_BOUNCE = 0x00000020,
MOVE_SLEEP_STOMP = 0x00000021,
MOVE_DIZZY_STOMP = 0x00000022,
MOVE_JUMP_CHARGE0 = 0x00000023,
MOVE_UNUSED_24 = 0x00000024,
MOVE_JUMP_CHARGE = 0x00000025,
MOVE_UNUSED_26 = 0x00000026,
MOVE_SUPER_JUMP_CHARGE = 0x00000027,
MOVE_UNUSED_28 = 0x00000028,
MOVE_AUTO_JUMP = 0x00000029,
MOVE_AUTO_MULTIBOUNCE = 0x0000002A,
MOVE_POWER_JUMP = 0x0000002B,
MOVE_SUPER_JUMP = 0x0000002C,
MOVE_MEGA_JUMP = 0x0000002D,
MOVE_D_DOWN_JUMP = 0x0000002E,
MOVE_SHRINK_STOMP = 0x0000002F,
MOVE_EARTHQUAKE_JUMP = 0x00000030,
MOVE_UNUSED_DEFEND_PLUS = 0x00000031,
MOVE_UNUSED_32 = 0x00000032,
MOVE_DAMAGE_DODGE = 0x00000033,
MOVE_ITEMS = 0x00000034,
MOVE_DOUBLE_DIP = 0x00000035,
MOVE_TRIPLE_DIP = 0x00000036,
MOVE_UNUSED_37 = 0x00000037,
MOVE_QUICK_CHANGE = 0x00000038,
MOVE_UNUSED_39 = 0x00000039,
MOVE_UNUSED_3A = 0x0000003A,
MOVE_POWER_PLUS = 0x0000003B,
MOVE_ALLOR_NOTHING = 0x0000003C,
MOVE_ICE_POWER = 0x0000003D,
MOVE_P_UP_D_DOWN = 0x0000003E,
MOVE_UNUSED_3F = 0x0000003F,
MOVE_SPIKE_SHIELD = 0x00000040,
MOVE_FIRE_SHIELD = 0x00000041,
MOVE_PRETTY_LUCKY = 0x00000042,
MOVE_FEELING_FINE = 0x00000043,
MOVE_ZAP_TAP = 0x00000044,
MOVE_DEFEND_PLUS = 0x00000045,
MOVE_LAST_STAND = 0x00000046,
MOVE_CLOSE_CALL = 0x00000047,
MOVE_LUCKY_DAY = 0x00000048,
MOVE_P_DOWN_D_UP = 0x00000049,
MOVE_HEALTHY_HEALTHY = 0x0000004A,
MOVE_UNUSED_4B = 0x0000004B,
MOVE_DODGE_MASTER = 0x0000004C,
MOVE_FIRST_ATTACK = 0x0000004D,
MOVE_SLOW_GO = 0x0000004E,
MOVE_RIGHT_ON = 0x0000004F,
MOVE_BUMP_ATTACK = 0x00000050,
MOVE_UNUSED_51 = 0x00000051,
MOVE_HP_PLUS = 0x00000052,
MOVE_MYSTERY_SCROLL = 0x00000053,
MOVE_ATTACK_FX_A = 0x00000054,
MOVE_ATTACK_FX_D = 0x00000055,
MOVE_ATTACK_FX_B = 0x00000056,
MOVE_ATTACK_FX_E = 0x00000057,
MOVE_ATTACK_FX_C = 0x00000058,
MOVE_ATTACK_FX_F = 0x00000059,
MOVE_HP_DRAIN = 0x0000005A,
MOVE_FP_PLUS = 0x0000005B,
MOVE_MONEY_MONEY = 0x0000005C,
MOVE_CHILL_OUT_BADGE = 0x0000005D,
MOVE_HAPPY_HEART = 0x0000005E,
MOVE_MEGA_RUSH = 0x0000005F,
MOVE_BERSERKER = 0x00000060,
MOVE_RUNAWAY_PAY = 0x00000061,
MOVE_FLOWER_SAVER = 0x00000062,
MOVE_PAY_OFF = 0x00000063,
MOVE_POWER_RUSH = 0x00000064,
MOVE_CRAZY_HEART = 0x00000065,
MOVE_MEGA_HP_DRAIN = 0x00000066,
MOVE_FLOWER_FANATIC = 0x00000067,
MOVE_HEART_FINDER = 0x00000068,
MOVE_FLOWER_FINDER = 0x00000069,
MOVE_SPIN_ATTACK = 0x0000006A,
MOVE_DIZZY_ATTACK = 0x0000006B,
MOVE_I_SPY = 0x0000006C,
MOVE_SPEEDY_SPIN = 0x0000006D,
MOVE_REFUND = 0x0000006E,
MOVE_UNUSED_FINAL_GOOMPA = 0x0000006F,
MOVE_UNUSED_FINAL_BOBOMB = 0x00000070,
MOVE_DEEP_FOCUS = 0x00000071,
MOVE_SUPER_FOCUS = 0x00000072,
MOVE_KAIDEN = 0x00000073,
MOVE_HAPPY_FLOWER = 0x00000074,
MOVE_GROUP_FOCUS = 0x00000075,
MOVE_PEEKABOO = 0x00000076,
MOVE_FOCUS = 0x00000077,
MOVE_REFRESH = 0x00000078,
MOVE_LULLABY = 0x00000079,
MOVE_STAR_STORM = 0x0000007A,
MOVE_CHILL_OUT_MOVE = 0x0000007B,
MOVE_SMOOCH = 0x0000007C,
MOVE_TIME_OUT = 0x0000007D,
MOVE_UP_AND_AWAY = 0x0000007E,
MOVE_STAR_BEAM = 0x0000007F,
MOVE_PEACH_BEAM = 0x00000080,
MOVE_PEACH_FOCUS = 0x00000081,
MOVE_TWINK_DASH = 0x00000082,
// Goombario moves
MOVE_HEADBONK1 = 0x00000083,
MOVE_HEADBONK2 = 0x00000084,
MOVE_HEADBONK3 = 0x00000085,
MOVE_TATTLE = 0x00000086,
MOVE_CHARGE = 0x00000087,
MOVE_MULTIBONK = 0x00000088,
// Kooper moves
MOVE_SHELL_TOSS1 = 0x00000089,
MOVE_SHELL_TOSS2 = 0x0000008A,
MOVE_SHELL_TOSS3 = 0x0000008B,
MOVE_POWER_SHELL = 0x0000008C,
MOVE_DIZZY_SHELL = 0x0000008D,
MOVE_FIRE_SHELL = 0x0000008E,
// Bombette moves
MOVE_BODY_SLAM1 = 0x0000008F,
MOVE_BODY_SLAM2 = 0x00000090,
MOVE_BODY_SLAM3 = 0x00000091,
MOVE_BOMB = 0x00000092,
MOVE_POWER_BOMB = 0x00000093,
MOVE_MEGA_BOMB = 0x00000094,
// Parakarry moves
MOVE_SKY_DIVE1 = 0x00000095,
MOVE_SKY_DIVE2 = 0x00000096,
MOVE_SKY_DIVE3 = 0x00000097,
MOVE_SHELL_SHOT = 0x00000098,
MOVE_AIR_LIFT = 0x00000099,
MOVE_AIR_RAID = 0x0000009A,
// Goompa moves
MOVE_UNUSED_LONE_FOOL1 = 0x0000009B,
MOVE_UNUSED_LONE_FOOL2 = 0x0000009C,
MOVE_UNUSED_LONE_FOOL3 = 0x0000009D,
MOVE_UNUSED_MUMBLE = 0x0000009E,
MOVE_UNUSED_PREACH = 0x0000009F,
MOVE_UNUSED_AWAKENING = 0x000000A0,
// Watt moves
MOVE_ELECTRO_DASH1 = 0x000000A1,
MOVE_ELECTRO_DASH2 = 0x000000A2,
MOVE_ELECTRO_DASH3 = 0x000000A3,
MOVE_POWER_SHOCK = 0x000000A4,
MOVE_TURBO_CHARGE = 0x000000A5,
MOVE_MEGA_SHOCK = 0x000000A6,
// Sushie moves
MOVE_BELLY_FLOP1 = 0x000000A7,
MOVE_BELLY_FLOP2 = 0x000000A8,
MOVE_BELLY_FLOP3 = 0x000000A9,
MOVE_SQUIRT = 0x000000AA,
MOVE_WATER_BLOCK = 0x000000AB,
MOVE_TIDAL_WAVE = 0x000000AC,
// Lakilester moves
MOVE_SPINY_FLIP1 = 0x000000AD,
MOVE_SPINY_FLIP2 = 0x000000AE,
MOVE_SPINY_FLIP3 = 0x000000AF,
MOVE_SPINY_SURGE = 0x000000B0,
MOVE_CLOUD_NINE = 0x000000B1,
MOVE_HURRICANE = 0x000000B2,
// Bow moves
MOVE_SMACK1 = 0x000000B3,
MOVE_SMACK2 = 0x000000B4,
MOVE_SMACK3 = 0x000000B5,
MOVE_OUTTA_SIGHT = 0x000000B6,
MOVE_SPOOK = 0x000000B7,
MOVE_FAN_SMACK = 0x000000B8,
};
#define STAR_POWER_INDEX(x) (x - MOVE_FOCUS)
enum GameModeIDs {
GAME_MODE_STARTUP = 0x00000000,
GAME_MODE_LOGOS = 0x00000001,
GAME_MODE_TITLE_SCREEN = 0x00000002,
GAME_MODE_ENTER_DEMO_WORLD = 0x00000003,
GAME_MODE_CHANGE_MAP = 0x00000004,
GAME_MODE_UNUSED = 0x00000005,
GAME_MODE_ENTER_WORLD = 0x00000006,
GAME_MODE_WORLD = 0x00000007,
GAME_MODE_BATTLE = 0x00000008,
GAME_MODE_END_BATTLE = 0x00000009,
GAME_MODE_PAUSE = 0x0000000A,
GAME_MODE_UNPAUSE = 0x0000000B,
GAME_MODE_LANGUAGE_SELECT = 0x0000000C,
GAME_MODE_END_LANGUAGE_SELECT = 0x0000000D,
GAME_MODE_FILE_SELECT = 0x0000000E,
GAME_MODE_END_FILE_SELECT = 0x0000000F,
GAME_MODE_INTRO = 0x00000010,
GAME_MODE_DEMO = 0x00000011,
};
enum DemoState {
DEMO_STATE_NONE = 0,
DEMO_STATE_ACTIVE = 1,
DEMO_STATE_CHANGE_MAP = 2,
DEMO_STATE_4 = 4,
DEMO_STATE_DONE = 5,
};
enum MapLoadType {
LOAD_FROM_MAP = 0,
LOAD_FROM_FILE_SELECT = 1,
};
enum IntroStates {
INTRO_STATE_0 = 0x00000000,
INTRO_STATE_1 = 0x00000001,
INTRO_STATE_2 = 0x00000002,
INTRO_STATE_3 = 0x00000003,
INTRO_STATE_4 = 0x00000004,
INTRO_STATE_5 = 0x00000005,
INTRO_STATE_6 = 0x00000006,
INTRO_STATE_7 = 0x00000007,
INTRO_STATE_8 = 0x00000008,
INTRO_STATE_9 = 0x00000009,
INTRO_STATE_A = 0x0000000A,
INTRO_STATE_B = 0x0000000B,
INTRO_STATE_C = 0x0000000C,
INTRO_STATE_D = 0x0000000D,
INTRO_STATE_E = 0x0000000E,
INTRO_STATE_F = 0x0000000F,
INTRO_STATE_10 = 0x00000010,
INTRO_STATE_11 = 0x00000011,
INTRO_STATE_12 = 0x00000012,
INTRO_STATE_13 = 0x00000013,
INTRO_STATE_14 = 0x00000014,
INTRO_STATE_15 = 0x00000015,
};
enum BattleStatusFlags1 {
BS_FLAGS1_ACTORS_VISIBLE = 0x00000001,
BS_FLAGS1_MENU_OPEN = 0x00000002,
BS_FLAGS1_TATTLE_OPEN = 0x00000004,
BS_FLAGS1_SHOW_PLAYER_DECORATIONS = 0x00000008, // enables effects for Frozen, Water Block, and Cloud Nine to appear and follow the player
BS_FLAGS1_10 = 0x00000010, // enable attack bonuses (power plus, etc)
BS_FLAGS1_SP_EVT_ACTIVE = 0x00000020, // enable special events (other than hit/death/immune?)
BS_FLAGS1_40 = 0x00000040,
BS_FLAGS1_80 = 0x00000080,
BS_FLAGS1_100 = 0x00000100,
BS_FLAGS1_200 = 0x00000200,
BS_FLAGS1_400 = 0x00000400, // UNUSED
BS_FLAGS1_FORCE_HIT_IMMUNE = 0x00000800,
BS_FLAGS1_AUTO_SUCCEED_ACTION = 0x00001000,
BS_FLAGS1_2000 = 0x00002000,
BS_FLAGS1_4000 = 0x00004000,
BS_FLAGS1_8000 = 0x00008000,
BS_FLAGS1_10000 = 0x00010000,
BS_FLAGS1_DISABLE_CELEBRATION = 0x00020000,
BS_FLAGS1_BATTLE_FLED = 0x00040000, // used both when the player flees sucessfully or an enemy flees
BS_FLAGS1_PARTNER_ACTING = 0x00080000,
BS_FLAGS1_PLAYER_IN_BACK = 0x00100000,
BS_FLAGS1_YIELD_TURN = 0x00200000, // moves end either when their script is finished or this flag is set by calling YieldTurn
BS_FLAGS1_PLAYER_DEFENDING = 0x00400000,
BS_FLAGS1_NO_GAME_OVER = 0x00800000, // dont game over on loss
BS_FLAGS1_STAR_POINTS_DROPPED = 0x01000000,
BS_FLAGS1_TUTORIAL_BATTLE = 0x02000000, // prevent player from swapping to/from partner
BS_FLAGS1_HUSTLED = 0x04000000,
BS_FLAGS1_SORT_ENEMIES_BY_POSX = 0x08000000, // enemy turn order ignores priority; sorts bases on x position instead
BS_FLAGS1_HAMMER_CHARGED = 0x10000000,
BS_FLAGS1_JUMP_CHARGED = 0x20000000,
BS_FLAGS1_GOOMBARIO_CHARGED = 0x40000000,
BS_FLAGS1_ATK_BLOCKED = 0x80000000,
};
enum BattleStatusFlags2 {
BS_FLAGS2_1 = 0x00000001,
BS_FLAGS2_2 = 0x00000002,
BS_FLAGS2_4 = 0x00000004,
BS_FLAGS2_8 = 0x00000008,
BS_FLAGS2_10 = 0x00000010,
BS_FLAGS2_CANT_FLEE = 0x00000020,
BS_FLAGS2_PEACH_BATTLE = 0x00000040,
BS_FLAGS2_80 = 0x00000080,
BS_FLAGS2_100 = 0x00000100, // dont decrement turbo charge on begin player turn
BS_FLAGS2_200 = 0x00000200,
BS_FLAGS2_400 = 0x00000400,
BS_FLAGS2_800 = 0x00000800,
BS_FLAGS2_NO_TARGET_AVAILABLE = 0x00001000,
BS_FLAGS2_4000 = 0x00004000,
BS_FLAGS2_10000 = 0x00010000,
BS_FLAGS2_100000 = 0x00100000,
BS_FLAGS2_1000000 = 0x01000000, // possible IS_FIRST_STRIKE
BS_FLAGS2_DONT_STOP_MUSIC = 0x02000000, // don't stop playing the current song when the battle ends
BS_FLAGS2_HAS_DRAINED_HP = 0x04000000,
BS_FLAGS2_HAS_RUSH = 0x08000000,
BS_FLAGS2_DROP_WHACKA_BUMP = 0x10000000,
};
enum BattleStatusReflectionFlags {
BS_REFLECT_FLOOR = 1,
};
2022-03-10 10:55:38 +01:00
enum BattleStates {
BATTLE_STATE_NEGATIVE_1 = -1,
BATTLE_STATE_0 = 0,
BATTLE_STATE_NORMAL_START = 1,
BATTLE_STATE_FIRST_STRIKE = 2,
BATTLE_STATE_PARTNER_FIRST_STRIKE = 3,
BATTLE_STATE_ENEMY_FIRST_STRIKE = 4,
BATTLE_STATE_BEGIN_TURN = 5,
BATTLE_STATE_END_TURN = 6,
BATTLE_STATE_BEGIN_PLAYER_TURN = 7,
BATTLE_STATE_BEGIN_PARTNER_TURN = 8,
BATTLE_STATE_9 = 9, // can be reached from BATTLE_STATE_PARTNER_MOVE if partner == NULL
BATTLE_STATE_SWITCH_TO_PLAYER = 10,
BATTLE_STATE_SWITCH_TO_PARTNER = 11,
BATTLE_STATE_PREPARE_MENU = 12,
BATTLE_STATE_PLAYER_MENU = 13,
BATTLE_STATE_PARTNER_MENU = 14,
BATTLE_STATE_PEACH_MENU = 15,
BATTLE_STATE_TWINK_MENU = 16,
BATTLE_STATE_SELECT_TARGET = 17,
BATTLE_STATE_PLAYER_MOVE = 18,
BATTLE_STATE_PARTNER_MOVE = 19,
BATTLE_STATE_NEXT_ENEMY = 20,
BATTLE_STATE_ENEMY_MOVE = 21,
BATTLE_STATE_END_PLAYER_TURN = 22,
BATTLE_STATE_END_PARTNER_TURN = 23,
BATTLE_STATE_RUN_AWAY = 24,
BATTLE_STATE_DEFEND = 25,
BATTLE_STATE_VICTORY = 26,
BATTLE_STATE_DEFEAT = 27,
BATTLE_STATE_28 = 28,
BATTLE_STATE_CHANGE_PARTNER = 29,
BATTLE_STATE_END_TRAINING_BATTLE = 30,
BATTLE_STATE_31 = 31,
BATTLE_STATE_END_BATTLE = 32,
BATTLE_STATE_CELEBRATION = 33,
BATTLE_STATE_34 = 34,
BATTLE_STATE_END_DEMO_BATTLE = 35,
2022-03-10 10:55:38 +01:00
};
enum BattleSubStates {
// shared
BTL_SUBSTATE_INIT = 0,
// BATTLE_STATE_NORMAL_START
BTL_SUBSTATE_NORMAL_START_INIT = 0, // loads assets, initializes state, and runs OnBattleInit script
BTL_SUBSTATE_NORMAL_START_CREATE_ENEMIES = 1,
BTL_SUBSTATE_NORMAL_START_CHECK_FIRST_STRIKE = 4, // wait for actor scripts to finish
BTL_SUBSTATE_NORMAL_START_FADE_IN = 7,
BTL_SUBSTATE_NORMAL_START_DONE = 8,
// BATTLE_STATE_FIRST_STRIKE
BTL_SUBSTATE_FIRST_STRIKE_INIT = 0,
BTL_SUBSTATE_FIRST_STRIKE_AWAIT_ENEMY_READY = 1,
BTL_SUBSTATE_FIRST_STRIKE_AWAIT_SCRIPTS = 2,
BTL_SUBSTATE_FIRST_STRIKE_AWAIT_ENEMY_DONE = 3,
// BATTLE_STATE_PARTNER_FIRST_STRIKE
BTL_SUBSTATE_PARTNER_FIRST_STRIKE_INIT = 0,
BTL_SUBSTATE_PARTNER_FIRST_STRIKE_AWAIT_ENEMY_READY = 1,
BTL_SUBSTATE_PARTNER_FIRST_STRIKE_AWAIT_SCRIPTS = 2,
BTL_SUBSTATE_PARTNER_FIRST_STRIKE_AWAIT_ENEMY_DONE = 3,
// BATTLE_STATE_ENEMY_FIRST_STRIKE
BTL_SUBSTATE_ENEMY_FIRST_STRIKE_INIT = 0,
BTL_SUBSTATE_ENEMY_FIRST_STRIKE_AWAIT_SCRIPTS = 2,
// BATTLE_STATE_BEGIN_TURN
BTL_SUBSTATE_BEGIN_TURN_INIT = 0,
BTL_SUBSTATE_BEGIN_TURN_AWAIT_ENEMY_SCRIPTS = 5,
BTL_SUBSTATE_BEGIN_TURN_AWAIT_ENEMY_DEATH = 10,
// BATTLE_STATE_END_TURN
BTL_SUBSTATE_END_TURN_INIT = 0,
BTL_SUBSTATE_END_TURN_CHECK_FOR_SWAP = 1,
BTL_SUBSTATE_END_TURN_AWAIT_SCRIPTS = 2,
BTL_SUBSTATE_END_TURN_BEGIN_NEXT = 3,
BTL_SUBSTATE_END_TURN_UNUSED_4 = 4,
BTL_SUBSTATE_END_TURN_PERFORM_SWAP = 11,
BTL_SUBSTATE_END_TURN_START_SCRIPTS = 12,
// BATTLE_STATE_BEGIN_PLAYER_TURN
BTL_SUBSTATE_BEGIN_PLAYER_TURN_INIT = 0,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_TRY_COMMAND_RECOVER = 1,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_WATER_BLOCK = 2,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_CHECK_WATER_BLOCK = 10,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_CHECK_CLOUD_NINE = 11,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_CLOUD_NINE = 12,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_CHECK_TURBO_CHARGE = 15,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_TURBO_CHARGE = 16,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_OUTTA_SIGHT = 20,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_TRY_STATUS_DAMAGE = 21,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_TRY_STATUS_RECOVER = 22,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_END_DELAY = 30,
BTL_SUBSTATE_BEGIN_PLAYER_TURN_RESET_STATE = 100,
// BATTLE_STATE_BEGIN_PARTNER_TURN
BTL_SUBSTATE_BEGIN_PARTNER_TURN_INIT = 0,
BTL_SUBSTATE_BEGIN_PARTNER_TURN_AWAIT_RECOVER_DONE = 1,
BTL_SUBSTATE_BEGIN_PARTNER_TURN_EXEC_TURN_SCRIPT = 8,
BTL_SUBSTATE_BEGIN_PARTNER_TURN_AWAIT_TURN_SCRIPT = 9,
BTL_SUBSTATE_BEGIN_PARTNER_TURN_END_DELAY = 10,
BTL_SUBSTATE_BEGIN_PARTNER_TURN_RESET_STATE = 100,
// BATTLE_STATE_9
BTL_SUBSTATE_9_INIT = 0,
BTL_SUBSTATE_9_1 = 1,
BTL_SUBSTATE_9_2 = 2,
BTL_SUBSTATE_9_3 = 3,
BTL_SUBSTATE_9_4 = 4,
BTL_SUBSTATE_9_5 = 5,
BTL_SUBSTATE_9_6 = 6,
BTL_SUBSTATE_9_7 = 7,
// BATTLE_STATE_SWITCH_TO_PLAYER
// BATTLE_STATE_SWITCH_TO_PARTNER
// BATTLE_STATE_PREPARE_MENU
BATTLE_SUBSTATE_PREPARE_MENU_DIPPING = 70,
// BATTLE_STATE_PLAYER_MENU
// BATTLE_STATE_PARTNER_MENU
// BATTLE_STATE_PEACH_MENU
BTL_SUBSTATE_PEACH_MENU_INIT = 0,
BTL_SUBSTATE_PEACH_MENU_CHOOSE_CATEGORY = 1,
BTL_SUBSTATE_PEACH_MENU_CHOOSE_TARGET = 2,
BTL_SUBSTATE_PEACH_MENU_UNUSED_3 = 3,
BTL_SUBSTATE_PEACH_MENU_TARGET_CANCEL = 4,
BTL_SUBSTATE_PEACH_MENU_TARGET_CHOSEN = 5,
BTL_SUBSTATE_PEACH_MENU_UNUSED_6 = 6,
BTL_SUBSTATE_PEACH_MENU_UNUSED_7 = 7,
BTL_SUBSTATE_PEACH_MENU_SHOW_CANT_SWITCH = 8,
BTL_SUBSTATE_PEACH_MENU_AWAIT_CANT_SWITCH_POPUP = 9,
BTL_SUBSTATE_PEACH_MENU_PERFORM_SWAP = 10,
BTL_SUBSTATE_PEACH_CREATE_MAIN_MENU = 11,
// BATTLE_STATE_TWINK_MENU
BTL_SUBSTATE_TWINK_MENU_INIT = 0,
BTL_SUBSTATE_TWINK_MENU_CHOOSE_CATEGORY = 1,
BTL_SUBSTATE_TWINK_MENU_CHOOSE_TARGET = 2,
BTL_SUBSTATE_TWINK_MENU_UNUSED_3 = 3,
BTL_SUBSTATE_TWINK_MENU_TARGET_CANCEL = 4,
BTL_SUBSTATE_TWINK_MENU_TARGET_CHOSEN = 5,
BTL_SUBSTATE_TWINK_MENU_UNUSED_6 = 6,
BTL_SUBSTATE_TWINK_MENU_UNUSED_7 = 7,
BTL_SUBSTATE_TWINK_MENU_SHOW_CANT_SWITCH = 8,
BTL_SUBSTATE_TWINK_MENU_AWAIT_CANT_SWITCH_POPUP = 9,
BTL_SUBSTATE_TWINK_MENU_PERFORM_SWAP = 10,
BTL_SUBSTATE_TWINK_MENU_CREATE_MAIN_MENU = 11,
// BATTLE_STATE_SELECT_TARGET
BTL_SUBSTATE_SELECT_TARGET_INIT = 0,
BTL_SUBSTATE_SELECT_TARGET_CHOOSE = 1,
BTL_SUBSTATE_SELECT_TARGET_DONE = 2,
BTL_SUBSTATE_SELECT_TARGET_CANCEL = 10,
// BATTLE_STATE_PLAYER_MOVE
BTL_SUBSTATE_PLAYER_MOVE_INIT = 0,
BTL_SUBSTATE_PLAYER_MOVE_BEGIN_SHOW_TIP = 1,
BTL_SUBSTATE_PLAYER_MOVE_SHOW_TIP_DELAY = 2,
BTL_SUBSTATE_PLAYER_MOVE_EXECUTE_MOVE = 3,
BTL_SUBSTATE_PLAYER_MOVE_HANDLE_RESULTS = 4,
BTL_SUBSTATE_PLAYER_MOVE_AWAIT_ENEMY_STATUS_POPUP = 11,
BTL_SUBSTATE_PLAYER_MOVE_POST_ENEMY_STATUS_POPUP = 12,
BTL_SUBSTATE_PLAYER_MOVE_CHECK_PLAYER_STATUS = 20,
BTL_SUBSTATE_PLAYER_MOVE_AWAIT_PLAYER_STATUS_POPUP = 21,
BTL_SUBSTATE_PLAYER_MOVE_POST_PLAYER_STATUS_POPUP = 22,
BTL_SUBSTATE_PLAYER_MOVE_AWAIT_DONE = 30,
// BATTLE_STATE_PARTNER_MOVE
BTL_SUBSTATE_PARTNER_MOVE_INIT = 0,
BTL_SUBSTATE_PARTNER_MOVE_EXECUTE_MOVE = 2,
BTL_SUBSTATE_PARTNER_MOVE_HANDLE_RESULTS = 3,
BTL_SUBSTATE_PARTNER_MOVE_AWAIT_PARTNER_STATUS_POPUP = 11,
BTL_SUBSTATE_PARTNER_MOVE_POST_PARTNER_STATUS_POPUP = 12,
BTL_SUBSTATE_PARTNER_MOVE_CHECK_ENEMY_STATUS = 20,
BTL_SUBSTATE_PARTNER_MOVE_AWAIT_ENEMY_STATUS_POPUP = 21,
BTL_SUBSTATE_PARTNER_MOVE_POST_ENEMY_STATUS_POPUP = 22,
BTL_SUBSTATE_PARTNER_MOVE_DONE = 30,
// BATTLE_STATE_NEXT_ENEMY
BTL_SUBSTATE_NEXT_ENEMY_INIT = 0,
BTL_SUBSTATE_NEXT_ENEMY_UNUSED_1 = 1,
BTL_SUBSTATE_NEXT_ENEMY_DONE = 2, // enemy has been found
// BATTLE_STATE_ENEMY_MOVE
BTL_SUBSTATE_ENEMY_MOVE_EXECUTE = 0,
BTL_SUBSTATE_ENEMY_MOVE_UNUSED_1 = 1,
BTL_SUBSTATE_ENEMY_MOVE_AWAIT_SCRIPTS = 2,
BTL_SUBSTATE_ENEMY_MOVE_AWAIT_PLAYER_POPUP_DONE = 11, // wait for popups regarding player status to finish
BTL_SUBSTATE_ENEMY_MOVE_POST_PLAYER_POPUP_DELAY = 12, // a brief delay after the popup vanishes
BTL_SUBSTATE_ENEMY_MOVE_CHECK_PARTNER = 20,
BTL_SUBSTATE_ENEMY_MOVE_AWAIT_PARTNER_POPUP_DONE = 21, // wait for popups regarding partner status to finish
BTL_SUBSTATE_ENEMY_MOVE_POST_PARTNER_POPUP_DELAY = 22, // a brief delay after the popup vanishes
BTL_SUBSTATE_ENEMY_MOVE_DONE = 30,
// BATTLE_STATE_END_PLAYER_TURN
BTL_SUBSTATE_END_PLAYER_TURN_CHECK_HAPPY = 0,
BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_HAPPY = 5,
BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_SWAP = 6,
BTL_SUBSTATE_END_PLAYER_TURN_DONE = 10,
// BATTLE_STATE_END_PARTNER_TURN
// BATTLE_STATE_RUN_AWAY
BTL_SUBSTATE_RUN_AWAY_EXEC_SCRIPT = 0,
BTL_SUBSTATE_RUN_AWAY_AWAIT_SCRIPT = 2,
BTL_SUBSTATE_RUN_AWAY_EXEC_POST_FAILURE = 3,
BTL_SUBSTATE_RUN_AWAY_AWAIT_POST_FAILURE = 4,
BTL_SUBSTATE_RUN_AWAY_GIVE_STAR_POINTS = 10,
BTL_SUBSTATE_RUN_AWAY_DONE = 11,
// BATTLE_STATE_DEFEND
BTL_SUBSTATE_DEFEND_INIT = 0,
BTL_SUBSTATE_DEFEND_AWAIT_SCRIPT = 1,
// BATTLE_STATE_VICTORY
BTL_SUBSTATE_VICTORY_CHECK_OUTTA_SIGHT = 0,
BTL_SUBSTATE_VICTORY_AWAIT_OUTTA_SIGHT = 1,
BTL_SUBSTATE_VICTORY_CHECK_MERLEE = 2,
BTL_SUBSTATE_VICTORY_AWAIT_MERLEE = 3,
BTL_SUBSTATE_VICTORY_DONE = 4,
BTL_SUBSTATE_VICTORY_RECOVER_STATUS = 5,
BTL_SUBSTATE_VICTORY_AWAIT_RECOVER_KO = 10,
BTL_SUBSTATE_VICTORY_CHECK_SWAP = 11,
BTL_SUBSTATE_VICTORY_AWAIT_SWAP = 12,
// BATTLE_STATE_DEFEAT
BTL_SUBSTATE_DEFEAT_INIT = 0,
BTL_SUBSTATE_DEFEAT_CHECK_LIFE_SHROOM = 1,
BTL_SUBSTATE_DEFEAT_AWAIT_LIFE_SHROOM = 2,
BTL_SUBSTATE_DEFEAT_DONE = 10,
// BATTLE_STATE_28
// BATTLE_STATE_CHANGE_PARTNER
BTL_SUBSTATE_CHANGE_PARTNER_INIT = 0,
BTL_SUBSTATE_CHANGE_PARTNER_EXEC_PUT_AWAY = 2,
BTL_SUBSTATE_CHANGE_PARTNER_LOAD_NEW_PARTNER = 3,
BTL_SUBSTATE_CHANGE_PARTNER_EXEC_BRING_OUT = 4,
BTL_SUBSTATE_CHANGE_PARTNER_EXEC_PHASE = 5,
BTL_SUBSTATE_CHANGE_PARTNER_AWAIT_PHASE = 6,
BTL_SUBSTATE_CHANGE_PARTNER_DONE = 7,
// BATTLE_STATE_END_TRAINING_BATTLE
BTL_SUBSTATE_END_TRAINING_INIT = 0,
BTL_SUBSTATE_END_TRAINING_AWAIT_RECOVERING = 10,
BTL_SUBSTATE_END_TRAINING_CHECK_OUTTA_SIGHT = 11,
BTL_SUBSTATE_END_TRAINING_AWAIT_OUTTA_SIGHT = 12,
BTL_SUBSTATE_END_TRAINING_RESET_CAM = 13,
BTL_SUBSTATE_END_TRAINING_DONE = 14,
// BATTLE_STATE_31
// BATTLE_STATE_END_BATTLE
BTL_SUBSTATE_END_BATTLE_INIT = 0,
BTL_SUBSTATE_END_BATTLE_FADE_OUT = 1,
BTL_SUBSTATE_END_BATTLE_EXEC_STAGE_SCRIPT = 2,
BTL_SUBSTATE_END_BATTLE_AWAIT_STAGE_SCRIPT = 3,
BTL_SUBSTATE_END_BATTLE_CLEANUP = 4,
// BATTLE_STATE_CELEBRATION
BTL_SUBSTATE_CELEBRATE_INIT = 0,
BTL_SUBSTATE_CELEBRATE_LOAD_STAR_POINTS = 1,
BTL_SUBSTATE_CELEBRATE_TALLY_STAR_POINTS = 2,
BTL_SUBSTATE_CELEBRATE_POST_STAR_POINTS = 3,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_LOAD = 4,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_BEGIN = 5,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CREATE_HUD = 6,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_SHOW_HUD = 7,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CHOOSE = 8,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_UPGRADE = 9,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_FADE_OUT = 10,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_DESTROY_HUD = 11,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID = 15,
BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID_DELAY = 16,
BTL_SUBSTATE_CELEBRATE_SKIPPABLE_END_DELAY = 20,
BTL_SUBSTATE_CELEBRATE_WALK_AWAY = 21,
BTL_SUBSTATE_CELEBRATE_DONE = 22,
// BATTLE_STATE_34
// BATTLE_STATE_END_DEMO_BATTLE
BTL_SUBSTATE_END_DEMO_BATTLE_INIT = 0,
BTL_SUBSTATE_END_DEMO_BATTLE_FADE_OUT = 1,
BTL_SUBSTATE_END_DEMO_BATTLE_EXEC_STAGE_SCRIPT = 2,
BTL_SUBSTATE_END_DEMO_BATTLE_AWAIT_STAGE_SCRIPT = 3,
BTL_SUBSTATE_END_DEMO_BATTLE_CLEANUP = 4,
};
// used with BATTLE_STATE_PLAYER_MENU
enum BattlePlayerMenuSubstates {
BTL_SUBSTATE_PLAYER_MENU_INIT = 0,
2023-01-05 20:43:31 +01:00
// Main menu
BTL_SUBSTATE_PLAYER_MENU_CHOOSE_CATEGORY = 1,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_2 = 2,
BTL_SUBSTATE_PLAYER_MENU_MOVE_CHOOSE_TARGET = 3,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_4 = 4,
BTL_SUBSTATE_PLAYER_MENU_MOVE_TARGET_CANCEL = 5,
BTL_SUBSTATE_PLAYER_MENU_MOVE_TARGET_CHOSEN = 6,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_7 = 7,
BTL_SUBSTATE_PLAYER_MENU_MAIN_SHOW_CANT_SWAP = 8,
BTL_SUBSTATE_PLAYER_MENU_MAIN_AWAIT_CANT_SWAP = 9,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_10 = 10,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_11 = 11,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_12 = 12,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_13 = 13,
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_14 = 14,
2023-01-05 20:43:31 +01:00
// Unknown
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_1 = 20,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_CHOOSE_TARGET = 21,
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_3 = 22,
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_4 = 23,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_TARGET_CANCEL = 24,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_TARGET_CHOSEN = 25,
2023-01-05 20:43:31 +01:00
// Change Member
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_1 = 30,
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_2 = 31,
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_3 = 32,
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_4 = 33,
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_5 = 34,
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_6 = 35,
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_7 = 36,
2023-01-05 20:43:31 +01:00
// Items
BTL_SUBSTATE_PLAYER_MENU_ITEMS_1 = 40,
BTL_SUBSTATE_PLAYER_MENU_ITEMS_2 = 41,
BTL_SUBSTATE_PLAYER_MENU_ITEMS_3 = 42,
BTL_SUBSTATE_PLAYER_MENU_ITEMS_4 = 43,
BTL_SUBSTATE_PLAYER_MENU_ITEMS_5 = 44,
BTL_SUBSTATE_PLAYER_MENU_ITEMS_6 = 45,
2023-01-05 20:43:31 +01:00
// Star Spirits
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_1 = 60,
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_2 = 61,
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_3 = 62,
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_4 = 63,
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_5 = 64,
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_6 = 65,
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_7 = 66,
// additional item use from Double/Triple dip
BTL_SUBSTATE_PLAYER_MENU_DIPPING_1 = 70,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_2 = 71,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_3 = 72,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_4 = 73,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_5 = 74,
BTL_SUBSTATE_PLAYER_MENU_DIPPING_6 = 75,
2023-01-05 20:43:31 +01:00
// Berserker
BTL_SUBSTATE_PLAYER_MENU_BERSERKER_1 = 100,
2023-01-05 20:43:31 +01:00
// Strategies
BTL_SUBSTATE_PLAYER_MENU_BUILD_STRATEGIES = 200,
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_2 = 201,
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_3 = 202,
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_4 = 203,
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_5 = 204,
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_6 = 205,
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_8 = 207,
2023-01-05 20:43:31 +01:00
// initialize
BTL_SUBSTATE_PLAYER_MENU_PERFORM_SWAP = 300,
BTL_SUBSTATE_PLAYER_MENU_CREATE_MAIN_MENU = 302,
2023-01-05 20:43:31 +01:00
};
enum BattlePartnerMenuSubstates {
BTL_SUBSTATE_PARTNER_MENU_NONE = 0,
// Main menu
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_1 = 2,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_2 = 3,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_3 = 4,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_4 = 5,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_5 = 6,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_6 = 7,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_7 = 8,
BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_8 = 9,
// Abilities
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_1 = 10,
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_2 = 11,
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_3 = 12,
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_4 = 13,
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_5 = 14,
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_6 = 15,
BTL_SUBSTATE_PARTNER_MENU_ABILITIES_7 = 16,
// Unknown, referenced only in btl_state_draw_partner_menu
BTL_SUBSTATE_PARTNER_MENU_UNKNOWN_1 = 20,
BTL_SUBSTATE_PARTNER_MENU_UNKNOWN_2 = 21,
BTL_SUBSTATE_PARTNER_MENU_UNKNOWN_3 = 22,
BTL_SUBSTATE_PARTNER_MENU_UNKNOWN_4 = 23,
BTL_SUBSTATE_PARTNER_MENU_UNKNOWN_5 = 24,
// Change Partner
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_1 = 30,
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_2 = 31,
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_3 = 32,
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_4 = 33,
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_5 = 34,
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_6 = 35,
BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_7 = 36,
// Items
BTL_SUBSTATE_PARTNER_MENU_ITEMS_1 = 40,
BTL_SUBSTATE_PARTNER_MENU_ITEMS_2 = 41,
BTL_SUBSTATE_PARTNER_MENU_ITEMS_3 = 42,
BTL_SUBSTATE_PARTNER_MENU_ITEMS_4 = 43,
BTL_SUBSTATE_PARTNER_MENU_ITEMS_5 = 44,
BTL_SUBSTATE_PARTNER_MENU_ITEMS_6 = 45,
// Switch partner (unused)
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_1 = 50,
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_2 = 51,
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_3 = 52,
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_4 = 53,
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_5 = 54,
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_6 = 55,
BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_7 = 56,
// Focus
BTL_SUBSTATE_PARTNER_MENU_FOCUS_1 = 60,
BTL_SUBSTATE_PARTNER_MENU_FOCUS_2 = 61,
BTL_SUBSTATE_PARTNER_MENU_FOCUS_3 = 62,
BTL_SUBSTATE_PARTNER_MENU_FOCUS_4 = 63,
BTL_SUBSTATE_PARTNER_MENU_FOCUS_5 = 64,
BTL_SUBSTATE_PARTNER_MENU_FOCUS_6 = 65,
// Strategies
BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_1 = 200,
BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_2 = 201,
BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_3 = 202,
BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_4 = 203,
BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_5 = 204,
BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_6 = 205,
// initialize
BTL_SUBSTATE_PARTNER_MENU_12D = 301,
BTL_SUBSTATE_PARTNER_MENU_INIT_MENU = 302,
};
enum BattleMessages {
BTL_MSG_MERLEE_ATK_UP = 0x00,
BTL_MSG_MERLEE_DEF_UP = 0x01,
BTL_MSG_MERLEE_EXP_UP = 0x02,
BTL_MSG_MERLEE_DONE = 0x03,
BTL_MSG_CHARGE_HAMMER = 0x04,
BTL_MSG_CHARGE_HAMMER_MORE = 0x05,
BTL_MSG_CHARGE_JUMP = 0x06,
BTL_MSG_CHARGE_JUMP_MORE = 0x07,
BTL_MSG_CANT_CHARGE = 0x08,
BTL_MSG_ENEMY_MISSED = 0x09,
BTL_MSG_PLAYER_DAZED = 0x0A,
BTL_MSG_PLAYER_ASLEEP = 0x0B,
BTL_MSG_PLAYER_FROZEN = 0x0C,
BTL_MSG_PLAYER_POISONED = 0x0D,
BTL_MSG_PLAYER_SHRUNK = 0x0E,
BTL_MSG_PLAYER_PARALYZED = 0x0F,
BTL_MSG_PLAYER_CHARGED = 0x10,
BTL_MSG_PLAYER_TRANSPARENT = 0x11,
BTL_MSG_ENEMY_DAZED = 0x12,
BTL_MSG_ENEMY_ASLEEP = 0x13,
BTL_MSG_ENEMY_FROZEN = 0x14,
BTL_MSG_ENEMY_POISONED = 0x15,
BTL_MSG_ENEMY_SHRUNK = 0x16,
BTL_MSG_ENEMY_PARALYZED = 0x17,
BTL_MSG_ENEMY_ELECTRIFIED = 0x18,
BTL_MSG_ENEMY_CANT_MOVE = 0x19,
BTL_MSG_STAR_POWER_RECHARGED = 0x1A,
BTL_MSG_STAR_POWER_MAXED = 0x1B,
BTL_MSG_STAR_POWER_FILLED = 0x1C,
BTL_MSG_ATTACK_UP = 0x1D,
BTL_MSG_DEFENCE_UP = 0x1E,
BTL_MSG_1F = 0x1F,
BTL_MSG_20 = 0x20,
BTL_MSG_ENEMY_TRANSPARENT = 0x21,
BTL_MSG_ENEMY_CHARGED = 0x22,
BTL_MSG_PARTNER_INJURED = 0x23,
BTL_MSG_CHARGE_GOOMBARIO = 0x24,
BTL_MSG_CHARGE_GOOMBARIO_MORE = 0x25,
BTL_MSG_WATER_BLOCK_BEGIN = 0x26,
BTL_MSG_WATER_BLOCK_END = 0x27,
BTL_MSG_CLOUD_NINE_BEGIN = 0x28,
BTL_MSG_CLOUD_NINE_END = 0x29,
BTL_MSG_TURBO_CHARGE_BEGIN = 0x2A,
BTL_MSG_TURBO_CHARGE_END = 0x2B,
BTL_MSG_CHILL_OUT_BEGIN = 0x2C,
BTL_MSG_UNUSED_CLOUD_NINE = 0x2D,
BTL_MSG_ACTION_TIP_00 = 0x2E,
BTL_MSG_ACTION_TIP_01 = 0x2F,
BTL_MSG_ACTION_TIP_02 = 0x30,
BTL_MSG_ACTION_TIP_03 = 0x31,
BTL_MSG_ACTION_TIP_04 = 0x32,
BTL_MSG_ACTION_TIP_05 = 0x33,
BTL_MSG_ACTION_TIP_06 = 0x34,
BTL_MSG_ACTION_TIP_07 = 0x35,
BTL_MSG_ACTION_TIP_08 = 0x36,
BTL_MSG_ACTION_TIP_09 = 0x37,
BTL_MSG_ACTION_TIP_0A = 0x38,
BTL_MSG_ACTION_TIP_0B = 0x39,
BTL_MSG_ACTION_TIP_0C = 0x3A,
BTL_MSG_ACTION_TIP_0D = 0x3B,
BTL_MSG_ACTION_TIP_0E = 0x3C,
BTL_MSG_ACTION_TIP_0F = 0x3D,
BTL_MSG_ACTION_TIP_10 = 0x3E,
BTL_MSG_ACTION_TIP_11 = 0x3F,
BTL_MSG_ACTION_TIP_12 = 0x40,
BTL_MSG_ACTION_TIP_13 = 0x41,
BTL_MSG_ACTION_TIP_14 = 0x42,
BTL_MSG_NO_JUMP_TARGET = 0x43,
BTL_MSG_NO_HAMMER_TARGET = 0x44,
BTL_MSG_NO_ITEM_TARGET = 0x45,
BTL_MSG_46 = 0x46,
BTL_MSG_47 = 0x47,
BTL_MSG_CANT_SELECT_NOW = 0x48,
BTL_MSG_HAMMER_DISABLED_1 = 0x49,
BTL_MSG_HAMMER_DISABLED_2 = 0x4A,
BTL_MSG_HAMMER_DISABLED_3 = 0x4B,
BTL_MSG_JUMP_DISABLED_1 = 0x4C,
BTL_MSG_JUMP_DISABLED_2 = 0x4D,
BTL_MSG_JUMP_DISABLED_3 = 0x4E,
BTL_MSG_ITEMS_DISABLED = 0x4F,
BTL_MSG_CANT_SWITCH = 0x50,
BTL_MSG_CANT_MOVE = 0x51,
BTL_MSG_CANT_SWITCH_UNUSED = 0x52,
BTL_MSG_CANT_MOVE_UNUSED = 0x53,
BTL_MSG_CANT_SELECT_NOW_ALT = 0x54,
};
// BattleMenuState
enum BattleMenuStates {
BTL_MENU_STATE_OPENED_SUBMENU = -1,
BTL_MENU_STATE_CREATE = 0,
BTL_MENU_STATE_UNK_1 = 1,
BTL_MENU_STATE_ACCEPT_INPUT = 2,
BTL_MENU_STATE_UNK_A = 10,
BTL_MENU_STATE_UNK_B = 11,
BTL_MENU_STATE_UNK_14 = 20,
BTL_MENU_STATE_UNK_1E = 30,
BTL_MENU_STATE_SHOW_DISABLED_POPUP = 100,
BTL_MENU_STATE_AWAIT_DISABLED_POPUP = 101,
};
enum BattleMoveSubmenuStates {
BTL_SUBMENU_MOVES_STATE_UNK_NEGATIVE_TWO = -2, // go back
BTL_SUBMENU_MOVES_STATE_UNK_NEGATIVE_ONE = -1,
BTL_SUBMENU_MOVES_STATE_UNK_0 = 0,
BTL_SUBMENU_MOVES_STATE_UNK_1 = 1,
BTL_SUBMENU_MOVES_STATE_UNK_A = 10,
BTL_SUBMENU_MOVES_STATE_UNK_B = 11,
BTL_SUBMENU_MOVES_STATE_UNK_14 = 20,
BTL_SUBMENU_MOVES_STATE_UNK_1E = 30,
BTL_SUBMENU_MOVES_STATE_UNK_28 = 40,
BTL_SUBMENU_MOVES_STATE_UNK_29 = 41,
BTL_SUBMENU_MOVES_STATE_UNK_2A = 42,
};
enum BattleMenuIndex {
BTL_MENU_IDX_MAIN = 0,
BTL_MENU_IDX_JUMP = 1,
BTL_MENU_IDX_SMASH = 2,
BTL_MENU_IDX_ITEMS = 3,
BTL_MENU_IDX_DIP = 4,
BTL_MENU_IDX_PARTNER = 5,
BTL_MENU_IDX_STAR_POWER = 6,
BTL_MENU_IDX_STRATEGY = 7,
// partners only
BTL_MENU_IDX_ABILITY = 1,
BTL_MENU_IDX_PARTNER_ITEM = 4,
};
enum BattleMenuTypes {
BTL_MENU_TYPE_INVALID = -1,
BTL_MENU_TYPE_JUMP = 0,
BTL_MENU_TYPE_SMASH = 1,
BTL_MENU_TYPE_ITEMS = 2,
BTL_MENU_TYPE_RUN_AWAY = 3,
BTL_MENU_TYPE_DEFEND = 4,
BTL_MENU_TYPE_CHANGE_PARTNER = 5,
BTL_MENU_TYPE_ABILITY = 6,
BTL_MENU_TYPE_STRATEGIES = 7,
BTL_MENU_TYPE_STAR_POWERS = 8,
BTL_MENU_TYPE_DO_NOTHING = 9,
BTL_MENU_TYPE_ACT_LATER = 10,
BTL_MENU_TYPE_PARTNER_FOCUS = 11,
};
enum BattleMenuDisableFlags {
BTL_MENU_ENABLED_JUMP = 1 << BTL_MENU_TYPE_JUMP,
BTL_MENU_ENABLED_SMASH = 1 << BTL_MENU_TYPE_SMASH,
BTL_MENU_ENABLED_ITEMS = 1 << BTL_MENU_TYPE_ITEMS,
BTL_MENU_ENABLED_ABILITIES = 1 << BTL_MENU_TYPE_ABILITY,
BTL_MENU_ENABLED_STRATEGIES = 1 << BTL_MENU_TYPE_STRATEGIES,
BTL_MENU_ENABLED_STAR_POWERS = 1 << BTL_MENU_TYPE_STAR_POWERS,
BTL_MENU_ENABLED_PARTNER_FOCUS = 1 << BTL_MENU_TYPE_PARTNER_FOCUS,
};
enum DebugEnemyContactModes {
DEBUG_CONTACT_NONE = 0, // contact with enemies behaves normally
DEBUG_CONTACT_CANT_TOUCH = 1, // enemies pass through the player and cannot start battles
DEBUG_CONTACT_DIE_ON_TOUCH = 2, // enemies die on contact in the overworld
DEBUG_CONTACT_DIE_IN_BATTLE = 3, // all enemies wll die during BATTLE_STATE_BEGIN_TURN
DEBUG_CONTACT_AUTO_FLEE = 4, // the player flees during BATTLE_STATE_BEGIN_TURN
};
enum DebuffTypes {
DEBUFF_TYPE_SLEEP = 0x00001000,
DEBUFF_TYPE_STATIC = 0x00002000,
DEBUFF_TYPE_FROZEN = 0x00004000,
DEBUFF_TYPE_PARALYZED = 0x00010000,
DEBUFF_TYPE_POISON = 0x00020000,
DEBUFF_TYPE_DIZZY = 0x00040000,
DEBUFF_TYPE_SHRINK = 0x00080000,
DEBUFF_TYPE_STONE = 0x00100000,
DEBUFF_TYPE_STOP = 0x00200000,
DEBUFF_TYPE_DAZE = 0x01000000,
DEBUFF_TYPE_INVISIBLE = 0x04000000,
};
enum GlobalOverrides {
GLOBAL_OVERRIDES_DISABLE_RENDER_WORLD = 0x00000002,
GLOBAL_OVERRIDES_8 = 0x00000008,
GLOBAL_OVERRIDES_10 = 0x00000010,
GLOBAL_OVERRIDES_ENABLE_TRANSITION_STENCIL = 0x00000020,
Match more overworld partner functions (#541) * decomp watt overworld functions * fix struct that was wrongly changed * run coverage.py * requested changes for watt.c and decomp a function from sbk_02 * run coverage.py * more style changes * decomp all functions in 92A2B0.c * run coverage.py * use map_var instead of hex constant, other style changes * pull sbk_02.h changes * ...actually merge master correctly * decomp most functions in nok_04 * decomp most of 9EDBF0.C, fix warnings in UnkFunc41.inc.c and warnings/decomp in lakilester.c * run coverage.py * code review changes + few extra functions * decomp lakilester functions and fix style in other files * decomp more laki overworld functions * add close match for func_802BDDD8_321928 * requested changes * more requested style changes * style changes * last of review changes * another small style fix * ...accidentally deleted the f on a float immediate * decomp world sushie/watt files * run coverage.py * small style fixes * fix 2 warnings in watt.c * decomp kooper world functions * requested style changes * couple more style changes * decomp kooper world functions * last style changes * decomp more kooper world functions * match world kooper file except 2 non_equivalent * non matching of last world bow function * migrate data.s file to bombette.c, also decomp various overoworld partner functions * match more overworld partner functions * style changes * update variable names * some requested changes done * add enums and other cleanup to overworld partner files * run coverage.py * add a space to watt file * remove raw pointers from partner files plus other requested changes * remove goompa raw pointer Co-authored-by: root <root@DESKTOP-HK751F2.localdomain> Co-authored-by: Rainchus <Rainchus@github.com>
2021-12-06 13:25:43 +01:00
GLOBAL_OVERRIDES_40 = 0x00000040,
GLOBAL_OVERRIDES_ENABLE_FLOOR_REFLECTION = 0x00000080,
GLOBAL_OVERRIDES_DISABLE_BATTLES = 0x00000100,
GLOBAL_OVERRIDES_200 = 0x00000200,
GLOBAL_OVERRIDES_400 = 0x00000400,
GLOBAL_OVERRIDES_800 = 0x00000800,
GLOBAL_OVERRIDES_1000 = 0x00001000,
GLOBAL_OVERRIDES_2000 = 0x00002000,
GLOBAL_OVERRIDES_4000 = 0x00004000,
GLOBAL_OVERRIDES_8000 = 0x00008000,
GLOBAL_OVERRIDES_WINDOWS_IN_FRONT_OF_CURTAINS = 0x00010000,
GLOBAL_OVERRIDES_20000 = 0x00020000,
GLOBAL_OVERRIDES_DISABLE_MENUS = 0x00040000,
GLOBAL_OVERRIDES_MESSAGES_IN_FRONT_OF_CURTAINS = 0x00100000,
GLOBAL_OVERRIDES_CANT_PICK_UP_ITEMS = 0x00200000,
};
#define MODEL_FLAGS_MASK_FFF0 (MODEL_FLAG_USES_CUSTOM_GFX | MODEL_FLAG_FLAG_20 | MODEL_FLAG_FLAG_40 | MODEL_FLAG_HAS_LOCAL_VERTEX_COPY | MODEL_FLAG_USE_CAMERA_UNK_MATRIX | MODEL_FLAG_FLAG_200 | MODEL_FLAG_HAS_TRANSFORM_APPLIED | MODEL_FLAG_HAS_TEX_PANNER | MODEL_FLAG_USES_TRANSFORM_MATRIX | MODEL_FLAG_FLAG_2000 | MODEL_FLAG_FLAG_4000 | MODEL_FLAG_FLAG_8000)
enum ModelFlags {
MODEL_FLAG_FLAG_1 = 0x0001,
MODEL_FLAG_HIDDEN = 0x0002,
MODEL_FLAG_FLAG_4 = 0x0004,
MODEL_FLAG_TRANSFORM_GROUP_MEMBER = 0x0008,
MODEL_FLAG_USES_CUSTOM_GFX = 0x0010,
MODEL_FLAG_FLAG_20 = 0x0020,
MODEL_FLAG_FLAG_40 = 0x0040,
MODEL_FLAG_HAS_LOCAL_VERTEX_COPY = 0x0080,
MODEL_FLAG_USE_CAMERA_UNK_MATRIX = 0x0100,
MODEL_FLAG_FLAG_200 = 0x0200,
MODEL_FLAG_HAS_TRANSFORM_APPLIED = 0x0400,
MODEL_FLAG_HAS_TEX_PANNER = 0x0800,
MODEL_FLAG_USES_TRANSFORM_MATRIX = 0x1000,
MODEL_FLAG_FLAG_2000 = 0x2000,
MODEL_FLAG_FLAG_4000 = 0x4000,
MODEL_FLAG_FLAG_8000 = 0x8000,
};
enum ModelGroupVisibility {
MODEL_GROUP_HIDDEN = 0,
MODEL_GROUP_VISIBLE = 1,
MODEL_GROUP_OTHERS_HIDDEN = 2,
MODEL_GROUP_OTHERS_VISIBLE = 3,
};
enum TexPanner {
//select pan unit
TEX_PANNER_0 = 0x0,
TEX_PANNER_1 = 0x1,
TEX_PANNER_2 = 0x2,
TEX_PANNER_3 = 0x3,
TEX_PANNER_4 = 0x4,
TEX_PANNER_5 = 0x5,
TEX_PANNER_6 = 0x6,
TEX_PANNER_7 = 0x7,
TEX_PANNER_8 = 0x8,
TEX_PANNER_9 = 0x9,
TEX_PANNER_A = 0xA,
TEX_PANNER_B = 0xB,
TEX_PANNER_C = 0xC,
TEX_PANNER_D = 0xD,
TEX_PANNER_E = 0xE,
TEX_PANNER_F = 0xF,
// select texture component
TEX_PANNER_MAIN = 0,
TEX_PANNER_AUX = 1,
};
enum CustomGfxUnit {
CUSTOM_GFX_NONE = -1,
CUSTOM_GFX_0 = 0x00,
CUSTOM_GFX_1 = 0x01,
CUSTOM_GFX_2 = 0x02,
CUSTOM_GFX_3 = 0x03,
CUSTOM_GFX_4 = 0x04,
CUSTOM_GFX_5 = 0x05,
CUSTOM_GFX_6 = 0x06,
CUSTOM_GFX_7 = 0x07,
CUSTOM_GFX_8 = 0x08,
CUSTOM_GFX_9 = 0x09,
CUSTOM_GFX_A = 0x0A,
CUSTOM_GFX_B = 0x0B,
CUSTOM_GFX_C = 0x0C,
CUSTOM_GFX_D = 0x0D,
CUSTOM_GFX_E = 0x0E,
CUSTOM_GFX_F = 0x0F,
};
enum CopiedVtxUnit {
VTX_COPY_0 = 0x0,
VTX_COPY_1 = 0x1,
VTX_COPY_2 = 0x2,
VTX_COPY_3 = 0x3,
VTX_COPY_4 = 0x4,
VTX_COPY_5 = 0x5,
VTX_COPY_6 = 0x6,
VTX_COPY_7 = 0x7,
VTX_COPY_8 = 0x8,
VTX_COPY_9 = 0x9,
VTX_COPY_A = 0xA,
VTX_COPY_B = 0xB,
VTX_COPY_C = 0xC,
VTX_COPY_D = 0xD,
VTX_COPY_E = 0xE,
VTX_COPY_F = 0xF,
};
enum ModelAnimUnit {
MDL_ANIMATOR_0 = 0x0,
MDL_ANIMATOR_1 = 0x1,
MDL_ANIMATOR_2 = 0x2,
MDL_ANIMATOR_3 = 0x3,
MDL_ANIMATOR_4 = 0x4,
MDL_ANIMATOR_5 = 0x5,
MDL_ANIMATOR_6 = 0x6,
MDL_ANIMATOR_7 = 0x7,
MDL_ANIMATOR_8 = 0x8,
MDL_ANIMATOR_9 = 0x9,
MDL_ANIMATOR_A = 0xA,
MDL_ANIMATOR_B = 0xB,
MDL_ANIMATOR_C = 0xC,
MDL_ANIMATOR_D = 0xD,
MDL_ANIMATOR_E = 0xE,
MDL_ANIMATOR_F = 0xF,
};
enum MapRoomFlags {
ROOM_FLAGS_VISGROUP_MASK = 0xF000,
ROOM_FLAGS_MASK = 0x0F00,
ROOM_FLAGS_DOOR_TYPE_MASK = 0x00FF,
ROOM_DOOR_RIGHT_HINGE_OPENS_OUT = 0, // left --> center (hinge on right)
ROOM_DOOR_RIGHT_HINGE_OPENS_IN = 1, // center --> left
ROOM_DOOR_LEFT_HINGE_OPENS_OUT = 2, // right --> center (hinge on left)
ROOM_DOOR_LEFT_HINGE_OPENS_IN = 3, // center --> right
ROOM_DOOR_STRAIGHT_THROUGH = 4, // center --> center
ROOM_LARGE_DOOR_RIGHT_HINGE_OPENS_OUT = 5, // deep left --> center (hinge on right)
ROOM_LARGE_DOOR_RIGHT_HINGE_OPENS_IN = 6, // center --> deep left
ROOM_LARGE_DOOR_LEFT_HINGE_OPENS_OUT = 7, // deep right --> center (hinge on left)
ROOM_FLAG_CUSTOM_ANIM_OPEN_DOOR = 0x100,
ROOM_FLAG_CUSTOM_ANIM_WALL_ROT = 0x200,
ROOM_FLAG_CUSTOM_ANIM_DROP_DOOR = 0x400,
ROOM_FLAG_EXIT_DOOR_DROPS = 0x800, // for internal use
};
enum MapRoomNotifications {
// dispatched to listener script during interactions with the room door
ROOM_UPDATE_ENTER_BEGIN = 0,
ROOM_UPDATE_ENTER_DONE = 1,
ROOM_UPDATE_EXIT_BEGIN = 2,
ROOM_UPDATE_EXIT_END = 3,
// when handling ROOM_UPDATE_ENTER_BEGIN, listener may return this to cancel the door opening. useful for locked doors.
ROOM_UPDATE_REQUEST_CANCEL = -1,
// anim move door updates
ROOM_MOVE_DOOR_ENTER_OPEN = 0,
ROOM_MOVE_DOOR_ENTER_CLOSE = 1,
ROOM_MOVE_DOOR_EXIT_OPEN = 2,
ROOM_MOVE_DOOR_EXIT_CLOSE = 3,
// anim move walls update
ROOM_MOVE_WALL_OPEN = 0,
ROOM_MOVE_WALL_1 = 1, // unused
ROOM_MOVE_WALL_2 = 2, // unused
ROOM_MOVE_WALL_CLOSE = 3,
// anim drop droor updates
ROOM_DROP_DOOR_ENTER = 0,
ROOM_DROP_DOOR_1 = 1, // unused
ROOM_DROP_DOOR_2 = 2, // unused
ROOM_DROP_DOOR_EXIT = 3,
};
enum EnemyFlags {
ENEMY_FLAG_PASSIVE = 0x00000001, // Not hostile; collision does not trigger battle
ENEMY_FLAG_2 = 0x00000002, // Unused
ENEMY_FLAG_4 = 0x00000004,
ENEMY_FLAG_ENABLE_HIT_SCRIPT = 0x00000008,
ENEMY_FLAG_FLED = 0x00000010,
ENEMY_FLAG_DISABLE_AI = 0x00000020, // Disable movement AI and collision (idle animation plays)
ENEMY_FLAG_PROJECTILE = 0x00000040,
ENEMY_FLAG_DONT_UPDATE_SHADOW_Y = 0x00000080,
ENEMY_FLAG_IGNORE_WORLD_COLLISION = 0x00000100,
ENEMY_FLAG_IGNORE_PLAYER_COLLISION = 0x00000200,
ENEMY_FLAG_IGNORE_ENTITY_COLLISION = 0x00000400,
ENEMY_FLAG_800 = 0x00000800, // Corresponds with NPC_FLAG_8
ENEMY_FLAG_GRAVITY = 0x00001000,
ENEMY_FLAG_NO_SHADOW_RAYCAST = 0x00002000,
ENEMY_FLAG_HAS_NO_SPRITE = 0x00004000,
ENEMY_FLAG_8000 = 0x00008000, // Corresponds with NPC_FLAG_10000000
ENEMY_FLAG_10000 = 0x00010000, // Corresponds with NPC_FLAG_20000000
ENEMY_FLAG_USE_PLAYER_SPRITE = 0x00020000, // Used for Peach NPCs
ENEMY_FLAG_40000 = 0x00040000,
ENEMY_FLAG_80000 = 0x00080000,
ENEMY_FLAG_100000 = 0x00100000,
ENEMY_FLAG_ACTIVE_WHILE_OFFSCREEN = 0x00200000,
ENEMY_FLAG_400000 = 0x00400000,
ENEMY_FLAG_NO_DROPS = 0x00800000, // Do not drop hearts, flowers, or coins on defeat
ENEMY_FLAG_IGNORE_TOUCH = 0x01000000,
ENEMY_FLAG_IGNORE_JUMP = 0x02000000,
ENEMY_FLAG_IGNORE_HAMMER = 0x04000000,
ENEMY_FLAG_CANT_INTERACT = 0x08000000, // Makes passive NPCs non-interactable. Hostile NPCs are always non-interactible.
ENEMY_FLAG_IGNORE_PARTNER = 0x10000000,
ENEMY_FLAG_IGNORE_SPIN = 0x20000000,
ENEMY_FLAG_BEGIN_WITH_CHASING = 0x40000000, // Starts in state AI_STATE_CHASE_INIT instead of AI_STATE_WANDER_INIT on spawn or AI resume
ENEMY_FLAG_SUSPENDED = 0x80000000,
};
#define COMMON_PASSIVE_FLAGS \
ENEMY_FLAG_PASSIVE \
| ENEMY_FLAG_ENABLE_HIT_SCRIPT \
| ENEMY_FLAG_IGNORE_WORLD_COLLISION \
| ENEMY_FLAG_IGNORE_ENTITY_COLLISION \
| ENEMY_FLAG_800
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
// used with enemy->aiFlags
enum EnemyAIFlags {
ENEMY_AI_FLAG_1 = 0x00000001,
ENEMY_AI_FLAG_2 = 0x00000002, // do not move; do not sense player
ENEMY_AI_FLAG_SUSPEND = 0x00000004,
ENEMY_AI_FLAG_8 = 0x00000008,
ENEMY_AI_FLAG_10 = 0x00000010,
ENEMY_AI_FLAG_20 = 0x00000020,
ENEMY_AI_FLAG_40 = 0x00000040,
ENEMY_AI_FLAG_80 = 0x00000080,
};
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
enum EnemyAIStates {
// basic states
AI_STATE_WANDER_INIT = 0,
AI_STATE_WANDER = 1,
AI_STATE_PATROL_INIT = 0,
AI_STATE_PATROL = 1,
AI_STATE_HOP_INIT = 0,
AI_STATE_HOP = 1,
AI_STATE_LOITER_INIT = 2,
AI_STATE_LOITER = 3,
AI_STATE_LOITER_POST = 4,
AI_STATE_ALERT_INIT = 10,
AI_STATE_ALERT = 11,
AI_STATE_CHASE_INIT = 12,
AI_STATE_CHASE = 13,
AI_STATE_LOSE_PLAYER = 14,
AI_STATE_PATROL_15 = 15,
AI_RETURN_HOME_INIT = 40,
AI_RETURN_HOME = 41,
AI_STATE_SUSPEND = 99,
// melee hitboxes
AI_STATE_MELEE_HITBOX_INIT = 30,
AI_STATE_MELEE_HITBOX_PRE = 31,
AI_STATE_MELEE_HITBOX_ACTIVE = 32,
AI_STATE_MELEE_HITBOX_MISS = 33,
// projectile hitboxes
AI_STATE_PROJECTILE_HITBOX_30 = 30,
AI_STATE_PROJECTILE_HITBOX_31 = 31,
AI_STATE_PROJECTILE_HITBOX_32 = 32,
AI_STATE_PROJECTILE_HITBOX_33 = 33,
};
enum EnemyActionFlags {
AI_ACTION_JUMP_WHEN_SEE_PLAYER = 0x01,
AI_ACTION_02 = 0x02,
AI_ACTION_04 = 0x04,
AI_ACTION_08 = 0x08,
AI_ACTION_LOOK_AROUND_DURING_LOITER = 0x10,
AI_ACTION_20 = 0x20
};
enum EnemyDetectFlags {
AI_DETECT_SIGHT = 0x01,
AI_DETECT_SENSITIVE_MOTION = 0x02,
AI_DETECT_FLAG_8 = 0x08,
world AI (#701) * monty mole AI pt 1 * monty mole AI #2 * enum values for evt priority and flags * enemy ai flags * done monty mole + partner enums * removed union for partner action state * missed parter action states + cam move flags + entity collision bit * basic ai * piranha plant stuff * attack ahead * consistent hitbox names * idk * organized piranha plant * delete matches * start fuzzy * naming * bzzap pt 1 * bzzap 2 * bzzap names done * rename bzzap to flyingAI * complete flying names * done for today * file reorganizing * world AI * starting clubba dedupe * suggested changes * bullet bills * sentinel start * dedupe sentinel complete * sentinel AI done * melee ai organization * piranha plant dedupe * resolved some bad dead syms * patrol start * patrol AI almost done * enough * more ai work * clean up clubba ai enum * dedupe all clubbae * started cleft extraction * ready to dedupe cleft * dedupe one cleft * iwa_04 * iwa_01 * iwa_02 * ai state file reorganization * enemy anim enum * extracted shy guy * dedupe shy guy ai * shy guy patrol ai * done shy guy ai dedupe * added NON_MATCHING wrap * ai etc * more dead ai * most dead ai merged with living * lakitu etc * paratroopas * fix warnings * fix other warning * ParatroopaAI * lakituAI parameter fix * dead_flo_13 debug strings * misc map matches * flying magikoopa start * name npc field * lungeAI renamed to tackleAI * magikoopa ai foothold * extrated one magikoopa * starting clubba dedupe * addressed PR comments * consolidated magikoopa helper funcs * misc map stuff * flying magikoopa dedupe * zipline funcs * delete matched * grind out another 0.05% * started letter delivery dedupe * more delivery dedupe * special delivery * rest of letter delivery * slight delivery reorg * delivery func names * cleft doc start * name enemy field * more renamins * unk_28.f * changed field names to facilitate renaming * done cleft cleanup * hopping ai * cleanup some ai * name field + patrol reorg * filled out NpcAISettings fields * assembling ai includes * elimated state files * remove X32 for alertOffsetDist * removed other NpcAISettings union * new NpcAISettings for UnkAI_4 * stationary AI cleanup * smalls * 0 new warnings Co-authored-by: HailSanta <Hail2Santa@gmail.com> Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-29 06:32:16 +02:00
};
enum EnemyTerritoryFlags {
AI_TERRITORY_IGNORE_HIDING = 0x01, // bow and sushi dont prevent enemy detection
AI_TERRITORY_IGNORE_ELEVATION = 0x02, // vertical size of detection volume is ignored
};
enum PiranhaPlantStates {
AI_STATE_PIRANHA_PLANT_00 = 0,
AI_STATE_PIRANHA_PLANT_01 = 1,
AI_STATE_PIRANHA_PLANT_10 = 10,
AI_STATE_PIRANHA_PLANT_11 = 11,
AI_STATE_PIRANHA_PLANT_12 = 12,
AI_STATE_PIRANHA_PLANT_13 = 13,
AI_STATE_PIRANHA_PLANT_14 = 14,
AI_STATE_PIRANHA_PLANT_SUSPEND = 99
};
enum MeleeHitboxAttackStates {
MELEE_HITBOX_STATE_NONE = 0,
MELEE_HITBOX_STATE_INIT = 1,
MELEE_HITBOX_STATE_PRE = 2,
MELEE_HITBOX_STATE_ACTIVE = 3, // hitbox is active
MELEE_HITBOX_STATE_POST = 4
};
enum ProjectileHitboxAttackStates {
PROJECTILE_HITBOX_STATE_NONE = 0,
PROJECTILE_HITBOX_STATE_INIT = 1,
PROJECTILE_HITBOX_STATE_PRE = 2,
PROJECTILE_HITBOX_STATE_ACTIVE = 3, // hitbox is active
PROJECTILE_HITBOX_STATE_POST = 4,
PROJECTILE_HITBOX_STATE_DONE = 100
};
enum MusicSettingsFlags {
MUSIC_SETTINGS_FLAG_1 = 0x00000001,
MUSIC_SETTINGS_FLAG_ENABLE_PROXIMITY_MIX = 0x00000002,
MUSIC_SETTINGS_FLAG_4 = 0x00000004,
MUSIC_SETTINGS_FLAG_8 = 0x00000008,
MUSIC_SETTINGS_FLAG_10 = 0x00000010,
MUSIC_SETTINGS_FLAG_20 = 0x00000020,
};
// the lower byte of Collider::flags
enum SurfaceType {
SURFACE_TYPE_DEFAULT = 0,
/*
SURFACE_TYPE_WATER = 1,
SURFACE_TYPE_SPIKES = 2,
SURFACE_TYPE_LAVA = 3,
SURFACE_TYPE_DOCK_WALL = 4,
SURFACE_TYPE_SLIDE = 5,
SURFACE_TYPE_FLOWERS = 6,
SURFACE_TYPE_CLOUD = 7, ///< used with clouds in flo_19 and flo_21
SURFACE_TYPE_SNOW = 8,
SURFACE_TYPE_HEDGES = 9, ///< used within hedge maze in flo_11
*/
};
typedef enum SurfaceInteractMode {
SURFACE_INTERACT_WALK = 0,
SURFACE_INTERACT_RUN = 1,
SURFACE_INTERACT_LAND = 2,
} SurfaceInteractMode;
//TODO -- temporarily combined with SurfaceType for map data dumper
enum ColliderFlags {
COLLIDER_FLAGS_UPPER_MASK = 0x7FFFFE00, // map data dumper needs this to be first
COLLIDER_FLAGS_SURFACE_TYPE_MASK = 0x000000FF,
// SURFACE_TYPE_DEFAULT = 0,
SURFACE_TYPE_HEDGES = 9, ///< used within hedge maze in flo_11
SURFACE_TYPE_SNOW = 8,
SURFACE_TYPE_CLOUD = 7, ///< used with clouds in flo_19 and flo_21
SURFACE_TYPE_FLOWERS = 6,
SURFACE_TYPE_SLIDE = 5,
SURFACE_TYPE_DOCK_WALL = 4,
SURFACE_TYPE_LAVA = 3,
SURFACE_TYPE_SPIKES = 2,
SURFACE_TYPE_WATER = 1,
SURFACE_TYPE_INVALID = -1,
COLLIDER_FLAG_SAFE_FLOOR = 0x00000100,
COLLIDER_FLAG_IGNORE_SHELL = 0x00008000,
COLLIDER_FLAG_IGNORE_PLAYER = 0x00010000,
COLLIDER_FLAG_80000 = 0x00080000, // test version of DOCK walls?
COLLIDER_FLAG_HAS_MODEL_PARENT = 0x80000000
};
//TODO reversed for map dumper with 0 separated
enum ColliderFlagsModifyMode {
MODIFY_COLLIDER_FLAGS_SET_SURFACE = 3,
MODIFY_COLLIDER_FLAGS_SET_VALUE = 2,
MODIFY_COLLIDER_FLAGS_CLEAR_BITS = 1,
};
enum TempColliderFlagsModifyMode {
MODIFY_COLLIDER_FLAGS_SET_BITS = 0,
};
enum CollisionChannels {
COLLISION_CHANNEL_8000 = 0x00008000,
COLLISION_CHANNEL_10000 = 0x00010000,
COLLISION_CHANNEL_20000 = 0x00020000,
COLLISION_IGNORE_ENTITIES = 0x00040000,
COLLISION_CHANNEL_80000 = 0x00080000,
COLLISION_ONLY_ENTITIES = 0x00100000,
};
enum CameraInitDataFlags {
CAMERA_INIT_DATA_FLAG_1 = 0x00000001,
CAMERA_INIT_DATA_FLAG_2 = 0x00000002,
CAMERA_INIT_DATA_FLAG_4 = 0x00000004,
CAMERA_INIT_DATA_FLAG_8 = 0x00000008,
CAMERA_INIT_DATA_FLAG_10 = 0x00000010,
CAMERA_INIT_DATA_FLAG_20 = 0x00000020,
CAMERA_INIT_DATA_FLAG_40 = 0x00000040,
CAMERA_INIT_DATA_FLAG_80 = 0x00000080,
CAMERA_INIT_DATA_FLAG_100 = 0x00000100,
CAMERA_INIT_DATA_FLAG_200 = 0x00000200,
CAMERA_INIT_DATA_FLAG_400 = 0x00000400,
CAMERA_INIT_DATA_FLAG_800 = 0x00000800,
CAMERA_INIT_DATA_FLAG_1000 = 0x00001000,
CAMERA_INIT_DATA_FLAG_2000 = 0x00002000,
CAMERA_INIT_DATA_FLAG_4000 = 0x00004000,
CAMERA_INIT_DATA_FLAG_8000 = 0x00008000,
CAMERA_INIT_DATA_FLAG_10000 = 0x00010000,
CAMERA_INIT_DATA_FLAG_20000 = 0x00020000,
CAMERA_INIT_DATA_FLAG_40000 = 0x00040000,
CAMERA_INIT_DATA_FLAG_80000 = 0x00080000,
CAMERA_INIT_DATA_FLAG_100000 = 0x00100000,
CAMERA_INIT_DATA_FLAG_200000 = 0x00200000,
CAMERA_INIT_DATA_FLAG_400000 = 0x00400000,
CAMERA_INIT_DATA_FLAG_800000 = 0x00800000,
CAMERA_INIT_DATA_FLAG_1000000 = 0x01000000,
CAMERA_INIT_DATA_FLAG_2000000 = 0x02000000,
CAMERA_INIT_DATA_FLAG_4000000 = 0x04000000,
CAMERA_INIT_DATA_FLAG_8000000 = 0x08000000,
CAMERA_INIT_DATA_FLAG_10000000 = 0x10000000,
CAMERA_INIT_DATA_FLAG_20000000 = 0x20000000,
CAMERA_INIT_DATA_FLAG_40000000 = 0x40000000,
CAMERA_INIT_DATA_FLAG_80000000 = 0x80000000,
};
enum CameraFlags {
CAMERA_FLAG_1 = 0x00000001,
CAMERA_FLAG_DISABLED = 0x00000002,
CAMERA_FLAG_LEAD_PLAYER = 0x00000004,
CAMERA_FLAG_SHAKING = 0x00000008,
CAMERA_FLAG_ORTHO = 0x00000010,
CAMERA_FLAG_20 = 0x00000020,
CAMERA_FLAG_40 = 0x00000040,
CAMERA_FLAG_80 = 0x00000080,
CAMERA_FLAG_100 = 0x00000100,
CAMERA_FLAG_RENDER_ENTITIES = 0x00000200,
CAMERA_FLAG_RENDER_MODELS = 0x00000400,
CAMERA_FLAG_800 = 0x00000800,
CAMERA_FLAG_1000 = 0x00001000,
CAMERA_FLAG_2000 = 0x00002000,
CAMERA_FLAG_4000 = 0x00004000,
CAMERA_FLAG_8000 = 0x00008000,
CAMERA_FLAG_10000 = 0x00010000,
CAMERA_FLAG_20000 = 0x00020000,
CAMERA_FLAG_40000 = 0x00040000,
CAMERA_FLAG_80000 = 0x00080000,
CAMERA_FLAG_100000 = 0x00100000,
CAMERA_FLAG_200000 = 0x00200000,
CAMERA_FLAG_400000 = 0x00400000,
CAMERA_FLAG_800000 = 0x00800000,
CAMERA_FLAG_1000000 = 0x01000000,
CAMERA_FLAG_2000000 = 0x02000000,
CAMERA_FLAG_4000000 = 0x04000000,
CAMERA_FLAG_8000000 = 0x08000000,
CAMERA_FLAG_10000000 = 0x10000000,
CAMERA_FLAG_20000000 = 0x20000000,
CAMERA_FLAG_40000000 = 0x40000000,
CAMERA_FLAG_80000000 = 0x80000000,
};
enum CameraMoveFlags {
CAMERA_MOVE_IGNORE_PLAYER_Y = 0x00000001,
CAMERA_MOVE_FLAG_2 = 0x00000002,
CAMERA_MOVE_FLAG_4 = 0x00000004,
};
enum CameraUpdateType {
CAM_UPDATE_MODE_INIT = 0,
CAM_UPDATE_UNUSED_1 = 1,
CAM_UPDATE_MODE_2 = 2,
CAM_UPDATE_FROM_ZONE = 3,
CAM_UPDATE_UNUSED_4 = 4,
CAM_UPDATE_UNUSED_5 = 5,
CAM_UPDATE_MODE_6 = 6,
};
enum CameraControlType {
// Camera follows the player, using a fixed yaw position.
// Uses: A/B as 2D points
// Yaw is defined by the line segment AB
// flag 0 = free forward movement (follow player)
// flag 1 = lock forward movement (must intersect B)
CAM_CONTROL_FIXED_ORIENTATION = 0,
// Camera faces toward or away from a point with the player in the center of the frame.
// Use a negative boom length to look away from a point.
// flag 1 = Constrain to Fixed Radius
CAM_CONTROL_LOOK_AT_POINT = 1,
// Camera is contrained to a point along the line segment BC.
// Use these near exits to stop camera movement.
// Uses: A/B/C as 2D points
// The target position is found by projecting player position onto BC along a line orthogonal to AB.
// If posA == posB, AB is ignored and the projection axis will be along a line orthogonal to BC with
// the resulting position being the closest point on BC to the player.
// flag 1 = Freeze Camera Position
CAM_CONTROL_CONSTRAIN_TO_LINE = 2,
// Follows the player using whatever yaw value the camera initially possessed.
CAM_CONTROL_FOLLOW_PLAYER = 3,
// Both position and yaw are fixed.
CAM_CONTROL_FIXED_POS_AND_ORIENTATION = 4,
// Look Toward Point, Constrain to Line
// flag 1 = Freeze Target at Point
CAM_CONTROL_LOOK_AT_POINT_CONSTAIN_TO_LINE = 5,
// Camera position is contrained to a line segment, with yaw perpendicular to the line segment.
// flag 1 = Disable Forward Motion
CAM_CONTROL_CONSTAIN_BETWEEN_POINTS = 6,
};
enum BtlCameraPreset {
BTL_CAM_PRESET_00 = 0, // unused?
BTL_CAM_PRESET_01 = 1, // STOP
BTL_CAM_DEFAULT = 2,
BTL_CAM_PRESET_03 = 3,
BTL_CAM_PRESET_04 = 4,
BTL_CAM_PRESET_05 = 5,
BTL_CAM_PRESET_06 = 6, // unused?
BTL_CAM_PRESET_07 = 7,
BTL_CAM_PRESET_08 = 8,
BTL_CAM_PRESET_09 = 9, // unused?
BTL_CAM_PRESET_10 = 10,
BTL_CAM_PRESET_11 = 11,
BTL_CAM_PRESET_12 = 12, // unused?
BTL_CAM_PRESET_13 = 13,
BTL_CAM_PRESET_14 = 14,
BTL_CAM_PRESET_15 = 15,
BTL_CAM_PRESET_16 = 16, // unused?
BTL_CAM_PRESET_17 = 17, // unused?
BTL_CAM_PRESET_18 = 18, // unused?
BTL_CAM_PRESET_19 = 19,
BTL_CAM_PRESET_20 = 20, // unused?
BTL_CAM_PRESET_21 = 21, // unused?
BTL_CAM_PLAYER_ENTRY = 22,
BTL_CAM_VICTORY = 23, // closeup on party while star points are tallied
BTL_CAM_PRESET_24 = 24,
BTL_CAM_PRESET_25 = 25, // closeup on player used when running away or being defeated
BTL_CAM_PLAYER_ATTACK_APPROACH = 26,
BTL_CAM_PRESET_27 = 27,
BTL_CAM_PRESET_28 = 28,
BTL_CAM_PRESET_29 = 29,
BTL_CAM_PLAYER_HIT_SPIKE = 30, // player hurt via spike contact
BTL_CAM_PLAYER_HIT_HAZARD = 31, // player hurt via burn or shock contact
BTL_CAM_PLAYER_CHARGE_UP = 32,
BTL_CAM_PLAYER_STATUS_AFFLICTED = 33,
BTL_CAM_PRESET_34 = 34,
BTL_CAM_PRESET_35 = 35,
BTL_CAM_PRESET_36 = 36, // unused?
BTL_CAM_PRESET_37 = 37,
BTL_CAM_PRESET_38 = 38,
BTL_CAM_PRESET_39 = 39,
BTL_CAM_PRESET_40 = 40,
BTL_CAM_PRESET_41 = 41, // unused?
BTL_CAM_PRESET_42 = 42, // unused?
BTL_CAM_PLAYER_AIM_HAMMER = 43,
BTL_CAM_PLAYER_HAMMER_STRIKE = 44,
BTL_CAM_PRESET_45 = 45, // unused?
BTL_CAM_PRESET_46 = 46,
BTL_CAM_PARTNER_APPROACH = 47, // used by Goombario and Watt (power shock only)
BTL_CAM_PRESET_48 = 48,
BTL_CAM_PRESET_49 = 49, // unused?
BTL_CAM_PRESET_50 = 50,
BTL_CAM_PRESET_51 = 51,
BTL_CAM_PRESET_52 = 52,
BTL_CAM_PRESET_53 = 53,
BTL_CAM_PARTNER_INJURED = 54, // closeup on partner after being injured
BTL_CAM_PRESET_55 = 55,
BTL_CAM_PRESET_56 = 56, // unused?
BTL_CAM_PRESET_57 = 57, // unused?
BTL_CAM_PRESET_58 = 58, // unused?
BTL_CAM_PRESET_59 = 59,
BTL_CAM_PRESET_60 = 60, // unused?
BTL_CAM_PRESET_61 = 61,
BTL_CAM_PRESET_62 = 62,
BTL_CAM_ENEMY_APPROACH = 63, // (very common)
BTL_CAM_PRESET_64 = 64, // unused?
BTL_CAM_PRESET_65 = 65, // unused?
BTL_CAM_PRESET_66 = 66,
BTL_CAM_PRESET_67 = 67, // unused?
BTL_CAM_PRESET_68 = 68, // unused?
BTL_CAM_PRESET_69 = 69,
BTL_CAM_PRESET_70 = 70, // unused?
BTL_CAM_PRESET_71 = 71, // unused?
BTL_CAM_PRESET_72 = 72, // unused?
BTL_CAM_PRESET_73 = 73,
};
enum BattleCamXModes {
BTL_CAM_MODEX_0 = 0,
BTL_CAM_MODEX_1 = 1,
};
enum BattleCamYModes {
BTL_CAM_MODEY_MINUS_2 = -2,
BTL_CAM_MODEY_MINUS_1 = -1,
BTL_CAM_MODEY_0 = 0,
BTL_CAM_MODEY_1 = 1,
};
enum MoveActionTips {
MOVE_ACTION_TIP_NONE = -1,
MOVE_ACTION_TIP_0 = 0,
MOVE_ACTION_TIP_1 = 1,
MOVE_ACTION_TIP_2 = 2,
MOVE_ACTION_TIP_3 = 3,
MOVE_ACTION_TIP_4 = 4,
MOVE_ACTION_TIP_5 = 5,
MOVE_ACTION_TIP_6 = 6,
MOVE_ACTION_TIP_7 = 7,
MOVE_ACTION_TIP_8 = 8,
MOVE_ACTION_TIP_9 = 9,
MOVE_ACTION_TIP_10 = 10,
MOVE_ACTION_TIP_11 = 11,
MOVE_ACTION_TIP_12 = 12,
MOVE_ACTION_TIP_13 = 13,
MOVE_ACTION_TIP_14 = 14,
MOVE_ACTION_TIP_15 = 15,
MOVE_ACTION_TIP_16 = 16,
MOVE_ACTION_TIP_17 = 17,
MOVE_ACTION_TIP_18 = 18,
MOVE_ACTION_TIP_19 = 19,
MOVE_ACTION_TIP_20 = 20
};
enum ModelAnimatorFlags {
MODEL_ANIMATOR_FLAG_CAM_0 = 0x00000001,
MODEL_ANIMATOR_FLAG_CAM_1 = 0x00000002,
MODEL_ANIMATOR_FLAG_CAM_2 = 0x00000004,
MODEL_ANIMATOR_FLAG_CAM_3 = 0x00000008,
MODEL_ANIMATOR_FLAG_ENABLED = 0x00000010,
MODEL_ANIMATOR_FLAG_20 = 0x00000020,
MODEL_ANIMATOR_FLAG_UPDATE_PENDING = 0x00000040,
MODEL_ANIMATOR_FLAG_HIDDEN = 0x00000080,
MODEL_ANIMATOR_FLAG_FLIP_Z = 0x00000100,
MODEL_ANIMATOR_FLAG_FLIP_Y = 0x00000200,
MODEL_ANIMATOR_FLAG_FLIP_X = 0x00000400,
MODEL_ANIMATOR_FLAG_800 = 0x00000800,
MODEL_ANIMATOR_FLAG_HAS_MODEL = 0x00001000,
MODEL_ANIMATOR_FLAG_2000 = 0x00002000,
MODEL_ANIMATOR_FLAG_4000 = 0x00004000,
MODEL_ANIMATOR_FLAG_MESH = 0x00008000,
MODEL_ANIMATOR_FLAG_CULL_BACK = 0x00010000,
MODEL_ANIMATOR_FLAG_NO_FLIP = 0x00020000,
MODEL_ANIMATOR_FLAG_FREEZE_ANIMATION = 0x00040000,
MODEL_ANIMATOR_FLAG_80000 = 0x00080000,
MODEL_ANIMATOR_FLAG_100000 = 0x00100000,
MODEL_ANIMATOR_FLAG_200000 = 0x00200000,
MODEL_ANIMATOR_FLAG_400000 = 0x00400000,
MODEL_ANIMATOR_FLAG_800000 = 0x00800000,
MODEL_ANIMATOR_FLAG_1000000 = 0x01000000,
MODEL_ANIMATOR_FLAG_2000000 = 0x02000000,
MODEL_ANIMATOR_FLAG_4000000 = 0x04000000,
MODEL_ANIMATOR_FLAG_8000000 = 0x08000000,
MODEL_ANIMATOR_FLAG_10000000 = 0x10000000,
MODEL_ANIMATOR_FLAG_20000000 = 0x20000000,
MODEL_ANIMATOR_FLAG_40000000 = 0x40000000,
MODEL_ANIMATOR_FLAG_80000000 = 0x80000000,
};
enum ShopFlags {
SHOP_FLAG_0 = 0x00000000,
SHOP_FLAG_1 = 0x00000001,
SHOP_FLAG_2 = 0x00000002,
SHOP_FLAG_4 = 0x00000004,
SHOP_FLAG_8 = 0x00000008,
SHOP_FLAG_10 = 0x00000010,
SHOP_FLAG_20 = 0x00000020,
SHOP_FLAG_40 = 0x00000040,
SHOP_FLAG_80 = 0x00000080,
SHOP_FLAG_100 = 0x00000100,
SHOP_FLAG_200 = 0x00000200,
SHOP_FLAG_400 = 0x00000400,
SHOP_FLAG_800 = 0x00000800,
SHOP_FLAG_1000 = 0x00001000,
SHOP_FLAG_2000 = 0x00002000,
SHOP_FLAG_4000 = 0x00004000,
SHOP_FLAG_8000 = 0x00008000,
SHOP_FLAG_10000 = 0x00010000,
SHOP_FLAG_20000 = 0x00020000,
SHOP_FLAG_40000 = 0x00040000,
SHOP_FLAG_80000 = 0x00080000,
SHOP_FLAG_100000 = 0x00100000,
SHOP_FLAG_200000 = 0x00200000,
SHOP_FLAG_400000 = 0x00400000,
SHOP_FLAG_800000 = 0x00800000,
SHOP_FLAG_1000000 = 0x01000000,
SHOP_FLAG_2000000 = 0x02000000,
SHOP_FLAG_4000000 = 0x04000000,
SHOP_FLAG_8000000 = 0x08000000,
SHOP_FLAG_10000000 = 0x10000000,
SHOP_FLAG_20000000 = 0x20000000,
SHOP_FLAG_40000000 = 0x40000000,
SHOP_FLAG_80000000 = 0x80000000,
};
enum {
SHOP_MSG_BUY_CONFIRM = 0x00,
SHOP_MSG_NOT_ENOUGH_COINS = 0x01,
SHOP_MSG_NOT_ENOUGH_ROOM = 0x02,
SHOP_MSG_BUY_THANK_YOU = 0x03,
SHOP_MSG_GREETING = 0x04,
SHOP_MSG_INSTRUCTIONS = 0x05,
SHOP_MSG_NOTHING_TO_SELL = 0x06,
SHOP_MSG_SELL_WHICH = 0x07,
SHOP_MSG_SELL_CONFIRM = 0x08,
SHOP_MSG_SELL_CANCEL = 0x09,
SHOP_MSG_SELL_MORE = 0x0A,
SHOP_MSG_SELL_THANKS = 0x0B,
SHOP_MSG_NOTHING_TO_CHECK = 0x0C,
SHOP_MSG_NO_CHECK_ROOM = 0x0D,
SHOP_MSG_CHECK_WHICH = 0x0E,
SHOP_MSG_CHECK_ACCEPTED = 0x0F,
SHOP_MSG_CHECK_MORE = 0x10,
SHOP_MSG_NOTHING_TO_CLAIM = 0x11,
SHOP_MSG_NO_CLAIM_ROOM = 0x12,
SHOP_MSG_CLAIM_WHICH = 0x13,
SHOP_MSG_CLAIM_ACCEPTED = 0x14,
SHOP_MSG_CLAIM_MORE = 0x15,
SHOP_MSG_FAREWELL = 0x16,
};
enum {
SHOP_BUY_RESULT_NOT_ENOUGH_COINS = 0,
SHOP_BUY_RESULT_OK = 1,
SHOP_BUY_RESULT_2 = 2,
SHOP_BUY_RESULT_CANCEL = 3,
SHOP_BUY_RESULT_4 = 4,
SHOP_BUY_RESULT_NOT_ENOUGH_ROOM = 5,
};
enum EncounterStatusFlags {
ENCOUNTER_STATUS_FLAG_0 = 0x00000000,
ENCOUNTER_STATUS_FLAG_1 = 0x00000001,
ENCOUNTER_STATUS_FLAG_2 = 0x00000002,
ENCOUNTER_STATUS_FLAG_4 = 0x00000004,
ENCOUNTER_STATUS_FLAG_8 = 0x00000008,
ENCOUNTER_STATUS_FLAG_10 = 0x00000010,
ENCOUNTER_STATUS_FLAG_20 = 0x00000020,
ENCOUNTER_STATUS_FLAG_40 = 0x00000040,
ENCOUNTER_STATUS_FLAG_80 = 0x00000080,
ENCOUNTER_STATUS_FLAG_100 = 0x00000100,
ENCOUNTER_STATUS_FLAG_200 = 0x00000200,
ENCOUNTER_STATUS_FLAG_400 = 0x00000400,
ENCOUNTER_STATUS_FLAG_800 = 0x00000800,
ENCOUNTER_STATUS_FLAG_1000 = 0x00001000,
ENCOUNTER_STATUS_FLAG_2000 = 0x00002000,
ENCOUNTER_STATUS_FLAG_4000 = 0x00004000,
ENCOUNTER_STATUS_FLAG_8000 = 0x00008000,
ENCOUNTER_STATUS_FLAG_10000 = 0x00010000,
ENCOUNTER_STATUS_FLAG_20000 = 0x00020000,
ENCOUNTER_STATUS_FLAG_40000 = 0x00040000,
ENCOUNTER_STATUS_FLAG_80000 = 0x00080000,
ENCOUNTER_STATUS_FLAG_100000 = 0x00100000,
ENCOUNTER_STATUS_FLAG_200000 = 0x00200000,
ENCOUNTER_STATUS_FLAG_400000 = 0x00400000,
ENCOUNTER_STATUS_FLAG_800000 = 0x00800000,
ENCOUNTER_STATUS_FLAG_1000000 = 0x01000000,
ENCOUNTER_STATUS_FLAG_2000000 = 0x02000000,
ENCOUNTER_STATUS_FLAG_4000000 = 0x04000000,
ENCOUNTER_STATUS_FLAG_8000000 = 0x08000000,
ENCOUNTER_STATUS_FLAG_10000000 = 0x10000000,
ENCOUNTER_STATUS_FLAG_20000000 = 0x20000000,
ENCOUNTER_STATUS_FLAG_40000000 = 0x40000000,
ENCOUNTER_STATUS_FLAG_80000000 = 0x80000000,
};
enum WindowFlags {
WINDOW_FLAG_INITIALIZED = 0x00000001,
WINDOW_FLAG_FPUPDATE_CHANGED = 0x00000002,
WINDOW_FLAG_HIDDEN = 0x00000004, ///< Updated but not rendered
WINDOW_FLAG_INITIAL_ANIMATION = 0x00000008,
WINDOW_FLAG_HAS_CHILDREN = 0x00000010,
WINDOW_FLAG_DISABLED = 0x00000020, ///< Not updated or rendered
WINDOW_FLAG_40 = 0x00000040,
};
enum DrawFlags {
DRAW_FLAG_ROTSCALE = 0x00000001,
DRAW_FLAG_ANIMATED_BACKGROUND = 0x00000002,
DRAW_FLAG_NO_CLIP = 0x00000004,
DRAW_FLAG_CULL_BACK = 0x00000008,
};
enum EntityModelFlags {
ENTITY_MODEL_FLAG_CAM0 = 0x00000001,
ENTITY_MODEL_FLAG_CAM1 = 0x00000002,
ENTITY_MODEL_FLAG_CAM2 = 0x00000004,
ENTITY_MODEL_FLAG_CAM3 = 0x00000008,
ENTITY_MODEL_FLAG_ENABLED = 0x00000010,
ENTITY_MODEL_FLAG_HIDDEN = 0x00000020,
ENTITY_MODEL_FLAG_40 = 0x00000040,
ENTITY_MODEL_FLAG_80 = 0x00000080,
ENTITY_MODEL_FLAG_100 = 0x00000100,
ENTITY_MODEL_FLAG_REFLECT = 0x00000200,
ENTITY_MODEL_FLAG_USE_IMAGE = 0x00000400,
ENTITY_MODEL_FLAG_FOG_DISABLED = 0x00000800,
ENTITY_MODEL_FLAG_1000 = 0x00001000,
ENTITY_MODEL_FLAG_2000 = 0x00002000,
ENTITY_MODEL_FLAG_4000 = 0x00004000,
ENTITY_MODEL_FLAG_8000 = 0x00008000,
ENTITY_MODEL_FLAG_10000 = 0x00010000,
ENTITY_MODEL_FLAG_DISABLE_SCRIPT = 0x00020000,
ENTITY_MODEL_FLAG_40000 = 0x00040000,
ENTITY_MODEL_FLAG_80000 = 0x00080000,
ENTITY_MODEL_FLAG_100000 = 0x00100000,
ENTITY_MODEL_FLAG_200000 = 0x00200000,
ENTITY_MODEL_FLAG_400000 = 0x00400000,
ENTITY_MODEL_FLAG_800000 = 0x00800000,
ENTITY_MODEL_FLAG_1000000 = 0x01000000,
ENTITY_MODEL_FLAG_2000000 = 0x02000000,
ENTITY_MODEL_FLAG_4000000 = 0x04000000,
ENTITY_MODEL_FLAG_8000000 = 0x08000000,
ENTITY_MODEL_FLAG_10000000 = 0x10000000,
ENTITY_MODEL_FLAG_20000000 = 0x20000000,
ENTITY_MODEL_FLAG_40000000 = 0x40000000,
ENTITY_MODEL_FLAG_80000000 = 0x80000000,
};
enum TempSetZoneEnabledFlags {
TEMP_SET_ZONE_ENABLED_FLAG_1 = 0x00000001,
TEMP_SET_ZONE_ENABLED_FLAG_2 = 0x00000002,
TEMP_SET_ZONE_ENABLED_FLAG_4 = 0x00000004,
TEMP_SET_ZONE_ENABLED_FLAG_8 = 0x00000008,
TEMP_SET_ZONE_ENABLED_FLAG_10 = 0x00000010,
TEMP_SET_ZONE_ENABLED_FLAG_20 = 0x00000020,
TEMP_SET_ZONE_ENABLED_FLAG_40 = 0x00000040,
TEMP_SET_ZONE_ENABLED_FLAG_80 = 0x00000080,
TEMP_SET_ZONE_ENABLED_FLAG_100 = 0x00000100,
TEMP_SET_ZONE_ENABLED_FLAG_200 = 0x00000200,
TEMP_SET_ZONE_ENABLED_FLAG_400 = 0x00000400,
TEMP_SET_ZONE_ENABLED_FLAG_800 = 0x00000800,
TEMP_SET_ZONE_ENABLED_FLAG_1000 = 0x00001000,
TEMP_SET_ZONE_ENABLED_FLAG_2000 = 0x00002000,
TEMP_SET_ZONE_ENABLED_FLAG_4000 = 0x00004000,
TEMP_SET_ZONE_ENABLED_FLAG_8000 = 0x00008000,
TEMP_SET_ZONE_ENABLED_FLAG_10000 = 0x00010000,
TEMP_SET_ZONE_ENABLED_FLAG_20000 = 0x00020000,
TEMP_SET_ZONE_ENABLED_FLAG_40000 = 0x00040000,
TEMP_SET_ZONE_ENABLED_FLAG_80000 = 0x00080000,
TEMP_SET_ZONE_ENABLED_FLAG_100000 = 0x00100000,
TEMP_SET_ZONE_ENABLED_FLAG_200000 = 0x00200000,
TEMP_SET_ZONE_ENABLED_FLAG_400000 = 0x00400000,
TEMP_SET_ZONE_ENABLED_FLAG_800000 = 0x00800000,
TEMP_SET_ZONE_ENABLED_FLAG_1000000 = 0x01000000,
TEMP_SET_ZONE_ENABLED_FLAG_2000000 = 0x02000000,
TEMP_SET_ZONE_ENABLED_FLAG_4000000 = 0x04000000,
TEMP_SET_ZONE_ENABLED_FLAG_8000000 = 0x08000000,
TEMP_SET_ZONE_ENABLED_FLAG_10000000 = 0x10000000,
TEMP_SET_ZONE_ENABLED_FLAG_20000000 = 0x20000000,
TEMP_SET_ZONE_ENABLED_FLAG_40000000 = 0x40000000,
TEMP_SET_ZONE_ENABLED_FLAG_80000000 = 0x80000000,
};
enum ModelTransformGroupFlags {
MODEL_TRANSFORM_GROUP_FLAG_1 = 0x00000001,
MODEL_TRANSFORM_GROUP_FLAG_2 = 0x00000002,
MODEL_TRANSFORM_GROUP_FLAG_4 = 0x00000004,
MODEL_TRANSFORM_GROUP_FLAG_8 = 0x00000008,
MODEL_TRANSFORM_GROUP_FLAG_10 = 0x00000010,
MODEL_TRANSFORM_GROUP_FLAG_20 = 0x00000020,
MODEL_TRANSFORM_GROUP_FLAG_40 = 0x00000040,
MODEL_TRANSFORM_GROUP_FLAG_80 = 0x00000080,
MODEL_TRANSFORM_GROUP_FLAG_100 = 0x00000100,
MODEL_TRANSFORM_GROUP_FLAG_200 = 0x00000200,
MODEL_TRANSFORM_GROUP_FLAG_400 = 0x00000400,
MODEL_TRANSFORM_GROUP_FLAG_800 = 0x00000800,
MODEL_TRANSFORM_GROUP_FLAG_1000 = 0x00001000,
MODEL_TRANSFORM_GROUP_FLAG_2000 = 0x00002000,
MODEL_TRANSFORM_GROUP_FLAG_4000 = 0x00004000,
MODEL_TRANSFORM_GROUP_FLAG_8000 = 0x00008000,
MODEL_TRANSFORM_GROUP_FLAG_10000 = 0x00010000,
MODEL_TRANSFORM_GROUP_FLAG_20000 = 0x00020000,
MODEL_TRANSFORM_GROUP_FLAG_40000 = 0x00040000,
MODEL_TRANSFORM_GROUP_FLAG_80000 = 0x00080000,
MODEL_TRANSFORM_GROUP_FLAG_100000 = 0x00100000,
MODEL_TRANSFORM_GROUP_FLAG_200000 = 0x00200000,
MODEL_TRANSFORM_GROUP_FLAG_400000 = 0x00400000,
MODEL_TRANSFORM_GROUP_FLAG_800000 = 0x00800000,
MODEL_TRANSFORM_GROUP_FLAG_1000000 = 0x01000000,
MODEL_TRANSFORM_GROUP_FLAG_2000000 = 0x02000000,
MODEL_TRANSFORM_GROUP_FLAG_4000000 = 0x04000000,
MODEL_TRANSFORM_GROUP_FLAG_8000000 = 0x08000000,
MODEL_TRANSFORM_GROUP_FLAG_10000000 = 0x10000000,
MODEL_TRANSFORM_GROUP_FLAG_20000000 = 0x20000000,
MODEL_TRANSFORM_GROUP_FLAG_40000000 = 0x40000000,
MODEL_TRANSFORM_GROUP_FLAG_80000000 = 0x80000000,
};
enum NpcDropFlags {
NPC_DROP_FLAG_1 = 0x01,
NPC_DROP_FLAG_2 = 0x02,
NPC_DROP_FLAG_4 = 0x04,
NPC_DROP_FLAG_8 = 0x08,
NPC_DROP_FLAG_10 = 0x10,
NPC_DROP_FLAG_20 = 0x20,
NPC_DROP_FLAG_40 = 0x40,
NPC_DROP_FLAG_80 = 0x80,
};
enum ImgFXStateFlags {
IMGFX_FLAG_IN_USE = 0x00000001,
IMGFX_FLAG_G_CULL_BACK = 0x00000002,
IMGFX_FLAG_G_CULL_FRONT = 0x00000004,
IMGFX_FLAG_8 = 0x00000008,
IMGFX_FLAG_SKIP_GFX_SETUP = 0x00000010,
IMGFX_FLAG_SKIP_TEX_SETUP = 0x00000020,
IMGFX_FLAG_40 = 0x00000040,
IMGFX_FLAG_LOOP_ANIM = 0x00000080,
IMGFX_FLAG_REVERSE_ANIM = 0x00000100, // fold animation plays backwards (from end to start)
IMGFX_FLAG_200 = 0x00000200,
IMGFX_FLAG_400 = 0x00000400,
IMGFX_FLAG_800 = 0x00000800,
IMGFX_FLAG_ANIM_DONE = 0x00001000,
IMGFX_FLAG_2000 = 0x00002000,
IMGFX_FLAG_4000 = 0x00004000,
IMGFX_FLAG_8000 = 0x00008000,
IMGFX_FLAG_NO_FILTERING = 0x00010000,
IMGFX_FLAG_20000 = 0x00020000,
IMGFX_FLAG_40000 = 0x00040000,
IMGFX_FLAG_80000 = 0x00080000,
IMGFX_FLAG_100000 = 0x00100000,
};
typedef enum ImgFXType {
IMGFX_CLEAR = 0x0,
IMGFX_UNK_1 = 0x1, // unused?
IMGFX_UNK_2 = 0x2, // unused?
IMGFX_RESET = 0x3, // after goomba 'sticker' ambush in kmr_09 unfurls. might be to force-terminate ANIM.
IMGFX_SET_WAVY = 0x4, // Kolorado when injured and Sushie when underwater (* note: Sushie fold rendering is bugged and only occurs *before* going underwater)
IMGFX_SET_ANIM = 0x5,
IMGFX_SET_COLOR = 0x6, // modulate color (args: R, G, B)
IMGFX_SET_ALPHA = 0x7, // modulate alpha (args: A)
IMGFX_SET_TINT = 0x8, // modulate color+alpha (args: R, G, B, A)
IMGFX_SET_WHITE_FADE = 0x9,
IMGFX_SET_CREDITS_FADE = 0xA,
IMGFX_COLOR_BUF_SET_MULTIPLY = 0xB,
IMGFX_COLOR_BUF_SET_MODULATE = 0xC, // used for color cycling on Monstar's outline
IMGFX_HOLOGRAM = 0xD, // ghostly star spirits and merlar (args: ???, staticAmt, ???, alphaAmt)
IMGFX_FILL_COLOR = 0xE, // used to create boss silhouettes in chapter introduction sceens
IMGFX_OVERLAY = 0xF,
IMGFX_OVERLAY_XLU = 0x10, // unused?
IMGFX_ALLOC_COLOR_BUF = 0x11, // (args: count) creates buffer to set color of 'count' vertices
} ImgFXType;
typedef enum ImgFXAnim {
IMGFX_ANIM_SHOCK = 0x00, // used for Goombaria and Goompapa when Kammy drops the hammer block
IMGFX_ANIM_SHIVER = 0x01, // used when Goombaria gives Mario a kiss
IMGFX_ANIM_VERTICAL_PIPE_CURL = 0x02, // vertical pipe curl
IMGFX_ANIM_HORIZONTAL_PIPE_CURL = 0x03, // horizontal pipe curl
IMGFX_ANIM_STARTLE = 0x04, // used when Koopa Bros are surprised by Mario
IMGFX_ANIM_FLUTTER_DOWN = 0x05, // player falling like paper
IMGFX_ANIM_UNFURL = 0x06, // used by Goomba 'stickers' that ambush Mario in area_kmr
IMGFX_ANIM_GET_IN_BED = 0x07, // Mario gets into bed
IMGFX_ANIM_SPIRIT_CAPTURE = 0x08, // Eldstar being captured
IMGFX_ANIM_UNUSED_1 = 0x09, // unused
IMGFX_ANIM_UNUSED_2 = 0x0A, // unused
IMGFX_ANIM_UNUSED_3 = 0x0B, // unused
IMGFX_ANIM_TUTANKOOPA_GATHER = 0x0C, // tutankoopa 3
IMGFX_ANIM_TUTANKOOPA_SWIRL_2 = 0x0D, // tutankoopa 2
IMGFX_ANIM_TUTANKOOPA_SWIRL_1 = 0x0E, // tutankoopa 1
IMGFX_ANIM_SHUFFLE_CARDS = 0x0F, // merlee spell-casting card shuffle
IMGFX_ANIM_FLIP_CARD_1 = 0x10, // merlee spell-casting card flip 1
IMGFX_ANIM_FLIP_CARD_2 = 0x11, // merlee spell-casting card flip 2
IMGFX_ANIM_FLIP_CARD_3 = 0x12, // merlee spell-casting card flip 3
IMGFX_ANIM_CYMBAL_CRUSH = 0x13, // used when Mario is crushed in a Cymbal Plant
} ImgFXAnim;
typedef enum ImgFXRenderType {
IMGFX_RENDER_DEFAULT = 0x00,
IMGFX_RENDER_MULTIPLY_RGB = 0x01,
IMGFX_RENDER_MULTIPLY_ALPHA = 0x02,
IMGFX_RENDER_MULTIPLY_RGBA = 0x03,
IMGFX_RENDER_MODULATE_PRIM_RGB = 0x04,
IMGFX_RENDER_MODULATE_PRIM_RGBA = 0x05,
IMGFX_RENDER_MULTIPLY_SHADE_RGB = 0x06,
IMGFX_RENDER_MULTIPLY_SHADE_ALPHA = 0x07,
IMGFX_RENDER_MULTIPLY_SHADE_RGBA = 0x08,
IMGFX_RENDER_MODULATE_SHADE_RGB = 0x09,
IMGFX_RENDER_MODULATE_SHADE_RGBA = 0x0A,
IMGFX_RENDER_ANIM = 0x0B,
IMGFX_RENDER_HOLOGRAM = 0x0C,
IMGFX_RENDER_COLOR_FILL = 0x0D,
IMGFX_RENDER_OVERLAY_RGB = 0x0E,
IMGFX_RENDER_OVERLAY_RGBA = 0x0F,
IMGFX_RENDER_UNUSED = 0x10,
} ImgFXRenderType;
enum ImgFXRenderModeFlags {
IMGFX_RENDER_NO_OVERRIDE = 1,
};
typedef enum ImgFXMeshType {
IMGFX_MESH_DEFAULT = 0x0,
IMGFX_MESH_GRID_WAVY = 0x1,
IMGFX_MESH_ANIMATED = 0x2,
IMGFX_MESH_GRID_UNUSED = 0x3,
IMGFX_MESH_STRIP = 0x4,
} ImgFXMeshType;
enum ImgFXHologramTypes {
IMGFX_HOLOGRAM_NOISE = 0,
IMGFX_HOLOGRAM_DITHER = 1,
IMGFX_HOLOGRAM_THRESHOLD = 2,
};
enum SpriteCompImgFXFlags {
SPR_IMGFX_FLAG_10000000 = 0x10000000,
SPR_IMGFX_FLAG_20000000 = 0x20000000,
SPR_IMGFX_FLAG_40000000 = 0x40000000,
SPR_IMGFX_FLAG_80000000 = 0x80000000,
SPR_IMGFX_FLAG_ALL = 0xF0000000,
};
enum MoveType {
MOVE_TYPE_NONE = 0,
MOVE_TYPE_HAMMER = 1,
MOVE_TYPE_JUMP = 2,
MOVE_TYPE_3 = 3,
MOVE_TYPE_ITEMS = 4,
MOVE_TYPE_SWITCH = 5,
MOVE_TYPE_6 = 6,
MOVE_TYPE_ATTACK_UP = 7,
MOVE_TYPE_DEFENSE_UP = 8,
MOVE_TYPE_9 = 9,
MOVE_TYPE_STAR_POWER = 10,
MOVE_TYPE_PARTNER = 11
};
enum BattleMenuStatus {
BATTLE_SUBMENU_STATUS_ENABLED = 1,
BATTLE_SUBMENU_STATUS_NOT_ENOUGH_FP = 0,
BATTLE_SUBMENU_STATUS_NO_TARGETS = -1,
BATTLE_SUBMENU_STATUS_NO_TARGETS_2 = -2, // TODO: determine difference, probably uses a different error message
};
2022-01-01 14:08:04 +01:00
enum DictionaryIndex {
DICTIONARY_KEY = 0,
DICTIONARY_VALUE = 1,
DICTIONARY_SIZE,
};
enum WindowId {
WINDOW_ID_NONE = -1,
WINDOW_ID_0 = 0,
WINDOW_ID_1 = 1,
WINDOW_ID_2 = 2,
WINDOW_ID_3 = 3,
WINDOW_ID_4 = 4,
WINDOW_ID_5 = 5,
WINDOW_ID_6 = 6,
WINDOW_ID_7 = 7,
WINDOW_ID_8 = 8, // battle main?
WINDOW_ID_BATTLE_POPUP = 9,
WINDOW_ID_ITEM_INFO_NAME = 10,
WINDOW_ID_ITEM_INFO_DESC = 11,
WINDOW_ID_12 = 12,
WINDOW_ID_13 = 13,
WINDOW_ID_14 = 14,
WINDOW_ID_15 = 15,
WINDOW_ID_16 = 16,
WINDOW_ID_17 = 17, // brown box used for "Throw away an item" and certain popup titles
WINDOW_ID_18 = 18,
WINDOW_ID_19 = 19,
WINDOW_ID_CURRENCY_COUNTER = 20,
WINDOW_ID_21 = 21,
WINDOW_ID_PAUSE_MAIN = 22,
WINDOW_ID_PAUSE_DECRIPTION = 23,
WINDOW_ID_FILEMENU_CURSOR = 23, // same as previous
WINDOW_ID_PAUSE_TUTORIAL = 24,
WINDOW_ID_FILEMENU_COPYARROW = 24, // same as previous
WINDOW_ID_PAUSE_TAB_STATS = 25,
WINDOW_ID_PAUSE_TAB_BADGES = 26,
WINDOW_ID_PAUSE_TAB_ITEMS = 27,
WINDOW_ID_PAUSE_TAB_PARTY = 28,
WINDOW_ID_PAUSE_TAB_SPIRITS = 29,
WINDOW_ID_PAUSE_TAB_MAP = 30,
WINDOW_ID_PAUSE_STATS = 31,
WINDOW_ID_PAUSE_BADGES = 32,
WINDOW_ID_PAUSE_ITEMS = 33,
WINDOW_ID_PAUSE_PARTNERS = 34,
WINDOW_ID_PAUSE_PARTNERS_TITLE = 35,
WINDOW_ID_PAUSE_PARTNERS_MOVELIST = 36,
WINDOW_ID_PAUSE_PARTNERS_MOVELIST_TITLE = 37,
WINDOW_ID_PAUSE_PARTNERS_MOVELIST_FLOWER = 38,
WINDOW_ID_PAUSE_SPIRITS = 39,
WINDOW_ID_PAUSE_SPIRITS_TITLE = 40,
WINDOW_ID_PAUSE_MAP = 41,
WINDOW_ID_PAUSE_MAP_TITLE = 42,
WINDOW_ID_PAUSE_TAB_INVIS = 43,
WINDOW_ID_PAUSE_CURSOR = 44,
WINDOW_ID_FILEMENU_MAIN = 44, // same as previous
WINDOW_ID_FILEMENU_TITLE = 45,
WINDOW_ID_FILEMENU_YESNO_PROMPT = 46,
WINDOW_ID_FILEMENU_INFO = 47,
WINDOW_ID_FILEMENU_CREATEFILE_HEADER = 48,
WINDOW_ID_FILEMENU_KEYBOARD = 49,
WINDOW_ID_FILEMENU_YESNO_OPTIONS = 50,
WINDOW_ID_FILEMENU_STEREO = 51,
WINDOW_ID_FILEMENU_MONO = 52,
WINDOW_ID_FILEMENU_OPTION_LEFT = 53,
WINDOW_ID_FILEMENU_OPTION_CENTER = 54,
WINDOW_ID_FILEMENU_OPTION_RIGHT = 55,
WINDOW_ID_FILEMENU_FILE0_INFO = 56,
WINDOW_ID_FILEMENU_FILE1_INFO = 57,
WINDOW_ID_FILEMENU_FILE2_INFO = 58,
WINDOW_ID_FILEMENU_FILE3_INFO = 59,
WINDOW_ID_FILEMENU_FILE0_TITLE = 60,
WINDOW_ID_FILEMENU_FILE1_TITLE = 61,
WINDOW_ID_FILEMENU_FILE2_TITLE = 62,
WINDOW_ID_FILEMENU_FILE3_TITLE = 63,
};
enum SimpleWindowUpdateId {
WINDOW_UPDATE_SHOW = 1,
WINDOW_UPDATE_HIDE = 2,
WINDOW_UPDATE_HIER_UPDATE = 3,
WINDOW_UPDATE_DARKENED = 4,
WINDOW_UPDATE_TRANSPARENT = 5,
WINDOW_UPDATE_OPAQUE = 6,
WINDOW_UPDATE_SHOW_TRANSPARENT = 7,
WINDOW_UPDATE_SHOW_DARKENED = 8,
WINDOW_UPDATE_9 = 9,
};
enum WindowGroupId {
WINDOW_GROUP_ALL = 0,
WINDOW_GROUP_1 = 1,
WINDOW_GROUP_PAUSE_MENU = 2,
WINDOW_GROUP_FILE_MENU = 3,
};
enum RushFlags {
RUSH_FLAG_NONE = 0,
RUSH_FLAG_MEGA = 1,
RUSH_FLAG_POWER = 2,
};
enum FileMenuMessages {
/* 0 */ FILE_MESSAGE_NONE,
/* 1 */ FILE_MESSAGE_SELECT_FILE_TO_START, // Select file to start:[End]
/* 2 */ FILE_MESSAGE_SELECT_FILE_TO_DELETE, // Select file to delete:[End]
#if !VERSION_PAL
/* 3 */ FILE_MESSAGE_SELECT_FILE_TO_SAVE, // Select file to save[End]
#endif
/* 4 */ FILE_MESSAGE_COPY_WHICH_FILE, // Copy which file?[End]
/* 5 */ FILE_MESSAGE_COPY_TO_WHICH_FILE, // Copy to which file?[End]
/* 6 */ FILE_MESSAGE_NEW, // NEW[End]
/* 7 */ FILE_MESSAGE_LEVEL, // Level[End]
/* 8 */ FILE_MESSAGE_PLAY_TIME, // Play Time[End]
/* 9 */ FILE_MESSAGE_DELETE_FILE, // Delete File[End]
/* 10 */ FILE_MESSAGE_CANCEL, // Cancel[End]
/* 11 */ FILE_MESSAGE_COPY_FILE, // Copy File[End]
/* 12 */ FILE_MESSAGE_FIRST_PLAY, // First Play[End]
/* 13 */ FILE_MESSAGE_PERIOD_13, // .[End]
/* 14 */ FILE_MESSAGE_YES, // Yes[End]
/* 15 */ FILE_MESSAGE_NO, // No[End]
/* 16 */ FILE_MESSAGE_DELETE, // Delete[End]
/* 17 */ FILE_MESSAGE_OVERRIDE_TO_NEW_DATA, // Override to New Data[End]
/* 18 */ FILE_MESSAGE_SAVE_OK, // Save OK?[End]
/* 19 */ FILE_MESSAGE_FILE_NAME_IS, // File name is :[End]
/* 20 */ FILE_MESSAGE_PERIOD_20, // .[End]
/* 21 */ FILE_MESSAGE_OK, // OK?[End]
/* 22 */ FILE_MESSAGE_FILE_22, // File[End]
/* 23 */ FILE_MESSAGE_WILL_BE_DELETED, // will be deleted.[End]
/* 24 */ FILE_MESSAGE_OK_TO_COPY_TO_THIS_FILE, // OK to copy to this file?[End]
/* 25 */ FILE_MESSAGE_START_GAME_WITH, // Start game with[End]
/* 26 */ FILE_MESSAGE_FILE_26, // File[End]
/* 27 */ FILE_MESSAGE_HAS_BEEN_DELETED, // has been deleted.[End]
/* 28 */ FILE_MESSAGE_28, // [End]
/* 29 */ FILE_MESSAGE_COPY_FROM, // Copy from[End]
/* 30 */ FILE_MESSAGE_TO, // to[End]
/* 31 */ FILE_MESSAGE_HAS_BEEN_CREATED, // has been created.[End]
#if VERSION_PAL
// TODO: determine where these new entries should be placed
UNK1,
UNK2,
#endif
/* 32 */ FILE_MESSAGE_ENTER_A_FILE_NAME, // Enter a file name![End]
/* 33 */ FILE_MESSAGE_QUESTION, // ?[End]
/* 34 */ FILE_MESSAGE_PERIOD_34, // .[End]
#if VERSION_PAL
UNK3,
#endif
};
// specifically used with draw_msg, not to be confused with MsgStyles
enum DrawMsgStyleFlags {
DRAW_MSG_STYLE_MENU = 1, // slightly higher baseline with smaller fullspace widths
DRAW_MSG_STYLE_WAVY = 2,
DRAW_MSG_STYLE_RAINBOW = 4,
DRAW_MSG_STYLE_DROP_SHADOW = 8,
};
// used with draw_number
enum DrawNumberStyleFlags {
DRAW_NUMBER_STYLE_ALIGN_RIGHT = 1, ///< drawn to the left of posX
DRAW_NUMBER_STYLE_MONOSPACE = 2,
DRAW_NUMBER_STYLE_MONOSPACE_RIGHT = 3, // combination of MONOSPACE and ALIGN_RIGHT
DRAW_NUMBER_STYLE_DROP_SHADOW = 4,
};
enum DrawNumberCharsets {
DRAW_NUMBER_CHARSET_NORMAL = 0,
DRAW_NUMBER_CHARSET_THIN = 1,
};
enum MsgPalettes {
MSG_PAL_WHITE = 0x00,
MSG_PAL_TEAL = 0x01,
MSG_PAL_BLUE = 0x02,
MSG_PAL_GREEN = 0x03,
MSG_PAL_LIME = 0x04,
MSG_PAL_YELLOW = 0x05,
MSG_PAL_ORANGE = 0x06,
MSG_PAL_RED = 0x07,
MSG_PAL_PURPLE = 0x08,
MSG_PAL_PINK = 0x09,
MSG_PAL_STANDARD = 0x0A,
MSG_PAL_0B = 0x0B,
MSG_PAL_0C = 0x0C,
MSG_PAL_0D = 0x0D,
MSG_PAL_0E = 0x0E,
MSG_PAL_0F = 0x0F,
MSG_PAL_10 = 0x10,
MSG_PAL_11 = 0x11,
MSG_PAL_12 = 0x12,
MSG_PAL_13 = 0x13,
MSG_PAL_14 = 0x14,
MSG_PAL_15 = 0x15,
MSG_PAL_16 = 0x16,
MSG_PAL_17 = 0x17,
MSG_PAL_18 = 0x18,
MSG_PAL_19 = 0x19,
MSG_PAL_1A = 0x1A,
MSG_PAL_1B = 0x1B,
MSG_PAL_1C = 0x1C,
MSG_PAL_1D = 0x1D,
MSG_PAL_1E = 0x1E,
MSG_PAL_1F = 0x1F,
MSG_PAL_20 = 0x20,
MSG_PAL_21 = 0x21,
MSG_PAL_22 = 0x22,
MSG_PAL_23 = 0x23,
MSG_PAL_24 = 0x24,
MSG_PAL_25 = 0x25,
MSG_PAL_26 = 0x26,
MSG_PAL_27 = 0x27,
MSG_PAL_28 = 0x28,
MSG_PAL_29 = 0x29,
MSG_PAL_2A = 0x2A,
MSG_PAL_2B = 0x2B,
MSG_PAL_2C = 0x2C,
MSG_PAL_2D = 0x2D,
MSG_PAL_2E = 0x2E,
MSG_PAL_2F = 0x2F,
MSG_PAL_30 = 0x30,
MSG_PAL_31 = 0x31,
MSG_PAL_32 = 0x32,
MSG_PAL_33 = 0x33,
MSG_PAL_34 = 0x34,
MSG_PAL_35 = 0x35,
MSG_PAL_36 = 0x36,
MSG_PAL_37 = 0x37,
MSG_PAL_38 = 0x38,
MSG_PAL_39 = 0x39,
MSG_PAL_3A = 0x3A,
MSG_PAL_3B = 0x3B,
MSG_PAL_3C = 0x3C,
MSG_PAL_3D = 0x3D,
MSG_PAL_3E = 0x3E,
MSG_PAL_3F = 0x3F,
MSG_PAL_40 = 0x40,
MSG_PAL_41 = 0x41,
MSG_PAL_42 = 0x42,
MSG_PAL_43 = 0x43,
MSG_PAL_44 = 0x44,
MSG_PAL_45 = 0x45,
MSG_PAL_46 = 0x46,
MSG_PAL_47 = 0x47,
MSG_PAL_48 = 0x48,
MSG_PAL_49 = 0x49,
MSG_PAL_4A = 0x4A,
MSG_PAL_4B = 0x4B,
MSG_PAL_4C = 0x4C,
MSG_PAL_4D = 0x4D,
MSG_PAL_4E = 0x4E,
MSG_PAL_4F = 0x4F,
MSG_PAL_50 = 0x50
};
enum MsgChars {
MSG_CHAR_NOTE = 0x00,
MSG_CHAR_EXCLAMTION = 0x01,
MSG_CHAR_BACKSLASH = 0x02,
MSG_CHAR_HASH = 0x03,
MSG_CHAR_DOLLAR = 0x04,
MSG_CHAR_PERCENT = 0x05,
MSG_CHAR_AND = 0x06,
MSG_CHAR_APOSTROPHE = 0x07,
MSG_CHAR_LPAREN = 0x08,
MSG_CHAR_RPAREN = 0x09,
MSG_CHAR_TIMES = 0x0A,
MSG_CHAR_PLUS = 0x0B,
MSG_CHAR_COMMA = 0x0C,
MSG_CHAR_MINUS = 0x0D,
MSG_CHAR_PERIOD = 0x0E,
MSG_CHAR_FORWARDSLASH = 0x0F,
MSG_CHAR_DIGIT_0 = 0x10,
MSG_CHAR_DIGIT_1 = 0x11,
MSG_CHAR_DIGIT_2 = 0x12,
MSG_CHAR_DIGIT_3 = 0x13,
MSG_CHAR_DIGIT_4 = 0x14,
MSG_CHAR_DIGIT_5 = 0x15,
MSG_CHAR_DIGIT_6 = 0x16,
MSG_CHAR_DIGIT_7 = 0x17,
MSG_CHAR_DIGIT_8 = 0x18,
MSG_CHAR_DIGIT_9 = 0x19,
MSG_CHAR_COLON = 0x1A,
MSG_CHAR_SEMICOLON = 0x1B,
MSG_CHAR_LESS_THAN = 0x1C,
MSG_CHAR_EQUAL = 0x1D,
MSG_CHAR_GREATER_THAN = 0x1E,
MSG_CHAR_QUESTION = 0x1F,
MSG_CHAR_AT = 0x20,
MSG_CHAR_UPPER_A = 0x21,
MSG_CHAR_UPPER_B = 0x22,
MSG_CHAR_UPPER_C = 0x23,
MSG_CHAR_UPPER_D = 0x24,
MSG_CHAR_UPPER_E = 0x25,
MSG_CHAR_UPPER_F = 0x26,
MSG_CHAR_UPPER_G = 0x27,
MSG_CHAR_UPPER_H = 0x28,
MSG_CHAR_UPPER_I = 0x29,
MSG_CHAR_UPPER_J = 0x2A,
MSG_CHAR_UPPER_K = 0x2B,
MSG_CHAR_UPPER_L = 0x2C,
MSG_CHAR_UPPER_M = 0x2D,
MSG_CHAR_UPPER_N = 0x2E,
MSG_CHAR_UPPER_O = 0x2F,
MSG_CHAR_UPPER_P = 0x30,
MSG_CHAR_UPPER_Q = 0x31,
MSG_CHAR_UPPER_R = 0x32,
MSG_CHAR_UPPER_S = 0x33,
MSG_CHAR_UPPER_T = 0x34,
MSG_CHAR_UPPER_U = 0x35,
MSG_CHAR_UPPER_V = 0x36,
MSG_CHAR_UPPER_W = 0x37,
MSG_CHAR_UPPER_X = 0x38,
MSG_CHAR_UPPER_Y = 0x39,
MSG_CHAR_UPPER_Z = 0x3A,
MSG_CHAR_LBRACKET = 0x3B,
MSG_CHAR_YEN = 0x3C,
MSG_CHAR_RBRACKET = 0x3D,
MSG_CHAR_CARET = 0x3E,
MSG_CHAR_UNDERSCORE = 0x3F,
MSG_CHAR_BACKTICK = 0x40,
MSG_CHAR_LOWER_A = 0x41,
MSG_CHAR_LOWER_B = 0x42,
MSG_CHAR_LOWER_C = 0x43,
MSG_CHAR_LOWER_D = 0x44,
MSG_CHAR_LOWER_E = 0x45,
MSG_CHAR_LOWER_F = 0x46,
MSG_CHAR_LOWER_G = 0x47,
MSG_CHAR_LOWER_H = 0x48,
MSG_CHAR_LOWER_I = 0x49,
MSG_CHAR_LOWER_J = 0x4A,
MSG_CHAR_LOWER_K = 0x4B,
MSG_CHAR_LOWER_L = 0x4C,
MSG_CHAR_LOWER_M = 0x4D,
MSG_CHAR_LOWER_N = 0x4E,
MSG_CHAR_LOWER_O = 0x4F,
MSG_CHAR_LOWER_P = 0x50,
MSG_CHAR_LOWER_Q = 0x51,
MSG_CHAR_LOWER_R = 0x52,
MSG_CHAR_LOWER_S = 0x53,
MSG_CHAR_LOWER_T = 0x54,
MSG_CHAR_LOWER_U = 0x55,
MSG_CHAR_LOWER_V = 0x56,
MSG_CHAR_LOWER_W = 0x57,
MSG_CHAR_LOWER_X = 0x58,
MSG_CHAR_LOWER_Y = 0x59,
MSG_CHAR_LOWER_Z = 0x5A,
MSG_CHAR_LCURLY = 0x5B,
MSG_CHAR_PIPE = 0x5C,
MSG_CHAR_RCURLY = 0x5D,
MSG_CHAR_TILDA = 0x5E,
MSG_CHAR_DEGREE = 0x5F,
MSG_CHAR_UPPER_A_GRAVE = 0x60,
MSG_CHAR_UPPER_A_ACUTE = 0x61,
MSG_CHAR_UPPER_A_CIRCUMFLEX = 0x62,
MSG_CHAR_UPPER_A_UMLAUT = 0x63,
MSG_CHAR_UPPER_C_CEDILLA = 0x64,
MSG_CHAR_UPPER_E_GRAVE = 0x65,
MSG_CHAR_UPPER_E_ACUTE = 0x66,
MSG_CHAR_UPPER_E_CIRCUMFLEX = 0x67,
MSG_CHAR_UPPER_E_UMLAUT = 0x68,
MSG_CHAR_UPPER_I_GRAVE = 0x69,
MSG_CHAR_UPPER_I_ACUTE = 0x6A,
MSG_CHAR_UPPER_I_CIRCUMFLEX = 0x6B,
MSG_CHAR_UPPER_I_UMLAUT = 0x6C,
MSG_CHAR_UPPER_N_TILDE = 0x6D,
MSG_CHAR_UPPER_O_GRAVE = 0x6E,
MSG_CHAR_UPPER_O_ACUTE = 0x6F,
MSG_CHAR_UPPER_O_CIRCUMFLEX = 0x70,
MSG_CHAR_UPPER_O_UMLAUT = 0x71,
MSG_CHAR_UPPER_U_GRAVE = 0x72,
MSG_CHAR_UPPER_U_ACUTE = 0x73,
MSG_CHAR_UPPER_U_CIRCUMFLEX = 0x74,
MSG_CHAR_UPPER_U_UMLAUT = 0x75,
MSG_CHAR_SHARP_S = 0x76,
MSG_CHAR_LOWER_A_GRAVE = 0x77,
MSG_CHAR_LOWER_A_ACUTE = 0x78,
MSG_CHAR_LOWER_A_CIRCUMFLEX = 0x79,
MSG_CHAR_LOWER_A_UMLAUT = 0x7A,
MSG_CHAR_LOWER_C_CEDILLA = 0x7B,
MSG_CHAR_LOWER_E_GRAVE = 0x7C,
MSG_CHAR_LOWER_E_ACUTE = 0x7D,
MSG_CHAR_LOWER_E_CIRCUMFLEX = 0x7E,
MSG_CHAR_LOWER_E_UMLAUT = 0x7F,
MSG_CHAR_LOWER_I_GRAVE = 0x80,
MSG_CHAR_LOWER_I_ACUTE = 0x81,
MSG_CHAR_LOWER_I_CIRCUMFLEX = 0x82,
MSG_CHAR_LOWER_I_UMLAUT = 0x83,
MSG_CHAR_LOWER_N_TILDE = 0x84,
MSG_CHAR_LOWER_O_GRAVE = 0x85,
MSG_CHAR_LOWER_O_ACUTE = 0x86,
MSG_CHAR_LOWER_O_CIRCUMFLEX = 0x87,
MSG_CHAR_LOWER_O_UMLAUT = 0x88,
MSG_CHAR_LOWER_U_GRAVE = 0x89,
MSG_CHAR_LOWER_U_ACUTE = 0x8A,
MSG_CHAR_LOWER_U_CIRCUMFLEX = 0x8B,
MSG_CHAR_LOWER_U_UMLAUT = 0x8C,
MSG_CHAR_INVERTED_EXCLAMTION = 0x8D,
MSG_CHAR_INVERTED_QUESTION = 0x8E,
MSG_CHAR_FEM_ORDINAL = 0x8F,
MSG_CHAR_HEART = 0x90,
MSG_CHAR_STAR = 0x91,
MSG_CHAR_UP = 0x92,
MSG_CHAR_DOWN = 0x93,
MSG_CHAR_LEFT = 0x94,
MSG_CHAR_RIGHT = 0x95,
MSG_CHAR_CIRCLE = 0x96,
MSG_CHAR_CROSS = 0x97,
MSG_CHAR_BUTTON_A = 0x98,
MSG_CHAR_BUTTON_B = 0x99,
MSG_CHAR_BUTTON_L = 0x9A,
MSG_CHAR_BUTTON_R = 0x9B,
MSG_CHAR_BUTTON_Z = 0x9C,
MSG_CHAR_BUTTON_C_UP = 0x9D,
MSG_CHAR_BUTTON_C_DOWN = 0x9E,
MSG_CHAR_BUTTON_C_LEFT = 0x9F,
MSG_CHAR_BUTTON_C_RIGHT = 0xA0,
MSG_CHAR_BUTTON_START = 0xA1,
MSG_CHAR_DOUBLE_QUOTE_OPEN = 0xA2,
MSG_CHAR_DOUBLE_QUOTE_CLOSE = 0xA3,
MSG_CHAR_SINGLE_QUOTE_OPEN = 0xA4,
MSG_CHAR_SINGLE_QUOTE_CLOSE = 0xA5,
// 0xA6 to 0xEF are unused
2023-03-08 16:40:22 +01:00
#if VERSION_IQUE
// All US characters are in the rom, but their range is used for multibyte characters
MSG_CHAR_MULTIBYTE_FIRST = 0x5F,
MSG_CHAR_MULTIBYTE_LAST = 0x8F,
#endif
MSG_CHAR_UNK_C3 = 0xC3,
// special character codes used when reading from the source buffer
MSG_CHAR_READ_ENDL = 0xF0,
MSG_CHAR_READ_WAIT = 0xF1,
MSG_CHAR_READ_PAUSE = 0xF2,
MSG_CHAR_READ_VARIANT0 = 0xF3,
MSG_CHAR_READ_VARIANT1 = 0xF4,
MSG_CHAR_READ_VARIANT2 = 0xF5,
MSG_CHAR_READ_VARIANT3 = 0xF6,
MSG_CHAR_READ_SPACE = 0xF7,
MSG_CHAR_READ_FULL_SPACE = 0xF8,
MSG_CHAR_READ_HALF_SPACE = 0xF9,
MSG_CHAR_READ_UNK_CHAR_FA = 0xFA,
MSG_CHAR_READ_NEXT = 0xFB,
MSG_CHAR_READ_STYLE = 0xFC,
MSG_CHAR_READ_END = 0xFD,
// 0xFE unused
MSG_CHAR_READ_FUNCTION = 0xFF,
// special character codes used when writing to the print buffer
MSG_CONTROL_CHAR = 0xF0,
MSG_CHAR_PRINT_ENDL = 0xF0,
MSG_CHAR_PRINT_VARIANT0 = 0xF1,
MSG_CHAR_PRINT_VARIANT1 = 0xF2,
MSG_CHAR_PRINT_VARIANT2 = 0xF3,
MSG_CHAR_PRINT_VARIANT3 = 0xF4,
MSG_CHAR_PRINT_SPACE = 0xF5,
MSG_CHAR_PRINT_FULL_SPACE = 0xF6,
MSG_CHAR_PRINT_HALF_SPACE = 0xF7,
MSG_CHAR_PRINT_STYLE = 0xF8,
MSG_CHAR_PRINT_UNK_CHAR_FA = 0xF9,
MSG_CHAR_PRINT_NEXT = 0xFA,
MSG_CHAR_PRINT_END = 0xFB,
// FC unused
// FD unused
// FE unused
MSG_CHAR_PRINT_FUNCTION = 0xFF
};
enum MsgFunctionCodes {
// function codes used when reading from the source buffer
MSG_READ_FUNC_FONT = 0x00,
MSG_READ_FUNC_VARIANT = 0x01,
MSG_READ_FUNC_SET_FRAME_PALETTE = 0x02,
MSG_READ_FUNC_RESET_GFX = 0x03,
MSG_READ_FUNC_YIELD = 0x04,
MSG_READ_FUNC_COLOR = 0x05,
MSG_READ_FUNC_NO_SKIP = 0x06,
MSG_READ_FUNC_INPUT_OFF = 0x07,
MSG_READ_FUNC_INPUT_ON = 0x08,
MSG_READ_FUNC_DELAY_OFF = 0x09,
MSG_READ_FUNC_DELAY_ON = 0x0A,
MSG_READ_FUNC_SPACING = 0x0B,
MSG_READ_FUNC_SCROLL = 0x0C,
MSG_READ_FUNC_SIZE = 0x0D,
MSG_READ_FUNC_SIZE_RESET = 0x0E,
MSG_READ_FUNC_SPEED = 0x0F,
MSG_READ_FUNC_SET_X = 0x10,
MSG_READ_FUNC_SET_Y = 0x11,
MSG_READ_FUNC_RIGHT = 0x12,
MSG_READ_FUNC_DOWN = 0x13,
MSG_READ_FUNC_UP = 0x14,
MSG_READ_FUNC_INLINE_IMAGE = 0x15,
MSG_READ_FUNC_ANIM_SPRITE = 0x16,
MSG_READ_FUNC_ITEM_ICON = 0x17,
MSG_READ_FUNC_IMAGE = 0x18,
MSG_READ_FUNC_HIDE_IMAGE = 0x19,
MSG_READ_FUNC_ANIM_DELAY = 0x1A,
MSG_READ_FUNC_ANIM_LOOP = 0x1B,
MSG_READ_FUNC_ANIM_DONE = 0x1C,
MSG_READ_FUNC_SET_CURSOR = 0x1D,
MSG_READ_FUNC_CURSOR = 0x1E,
MSG_READ_FUNC_END_CHOICE = 0x1F,
MSG_READ_FUNC_SET_CANCEL = 0x20,
MSG_READ_FUNC_OPTION = 0x21,
MSG_READ_FUNC_SAVE_POS = 0x22,
MSG_READ_FUNC_RESTORE_POS = 0x23,
MSG_READ_FUNC_SAVE_COLOR = 0x24,
MSG_READ_FUNC_RESTORE_COLOR = 0x25,
MSG_READ_FUNC_START_FX = 0x26,
MSG_READ_FUNC_END_FX = 0x27,
MSG_READ_FUNC_VAR = 0x28,
MSG_READ_FUNC_CENTER_X = 0x29,
MSG_READ_FUNC_SET_REWIND = 0x2A,
MSG_READ_FUNC_ENABLE_CDOWN_NEXT = 0x2B,
MSG_READ_FUNC_CUSTOM_VOICE = 0x2C,
MSG_READ_FUNC_VOLUME = 0x2E,
MSG_READ_FUNC_VOICE = 0x2F,
// function codes used when writing to the print buffer
MSG_PRINT_FUNC_FONT = 0x00,
MSG_PRINT_FUNC_VARIANT = 0x01,
MSG_PRINT_FUNC_SET_FRAME_PALETTE = 0x16,
MSG_PRINT_RESET_GFX = 0x17,
MSG_PRINT_FUNC_COLOR = 0x04,
MSG_PRINT_FUNC_SPACING = 0x05,
MSG_PRINT_FUNC_SCROLL = 0xFA,
MSG_PRINT_FUNC_SIZE = 0x06,
MSG_PRINT_FUNC_SIZE_RESET = 0x07,
MSG_PRINT_FUNC_SET_X = 0x08,
MSG_PRINT_FUNC_SET_Y = 0x09,
MSG_PRINT_FUNC_RIGHT = 0x0A,
MSG_PRINT_FUNC_DOWN = 0x0B,
MSG_PRINT_FUNC_UP = 0x0C,
MSG_PRINT_FUNC_INLINE_IMAGE = 0x0E,
MSG_PRINT_FUNC_ANIM_SPRITE = 0x0F,
MSG_PRINT_FUNC_ITEM_ICON = 0x10,
MSG_PRINT_FUNC_ANIM_DELAY = 0x11,
MSG_PRINT_FUNC_ANIM_LOOP = 0x12,
MSG_PRINT_FUNC_ANIM_DONE = 0x13,
MSG_PRINT_FUNC_CURSOR = 0x14,
MSG_PRINT_FUNC_OPTION = 0x15,
MSG_PRINT_FUNC_SAVE_POS = 0x18,
MSG_PRINT_FUNC_RESTORE_POS = 0x19,
MSG_PRINT_FUNC_SAVE_COLOR = 0x1A,
MSG_PRINT_FUNC_RESTORE_COLOR = 0x1B,
MSG_PRINT_FUNC_START_FX = 0x1C,
MSG_PRINT_FUNC_END_FX = 0x1D,
MSG_PRINT_FUNC_CENTER_X = 0x1E
};
enum MsgEffectCodes {
MSG_FX_SHAKE = 0x00,
MSG_FX_WAVE = 0x01,
MSG_FX_NOISE_OUTLINE = 0x02,
MSG_FX_STATIC = 0x03,
MSG_FX_BLUR = 0x05,
MSG_FX_RAINBOW = 0x06,
MSG_FX_DITHER_FADE = 0x07,
MSG_FX_GLOBAL_WAVE = 0x08,
MSG_FX_GLOBAL_RAINBOW = 0x09,
MSG_FX_RISE_PRINT = 0x0A,
MSG_FX_GROW_PRINT = 0x0B,
MSG_FX_SIZE_JITTER = 0x0C,
MSG_FX_SIZE_WAVE = 0x0D,
MSG_FX_DROP_SHADOW = 0x0E
};
enum MsgEffectFlags {
MSG_FX_FLAG_SHAKE = 0x00001,
MSG_FX_FLAG_WAVE = 0x00002,
MSG_FX_FLAG_NOISE_OUTLINE = 0x00004,
MSG_FX_FLAG_BLUR = 0x00020,
MSG_FX_FLAG_RAINBOW = 0x00040,
MSG_FX_FLAG_DITHER_FADE = 0x00080,
MSG_FX_FLAG_GLOBAL_WAVE = 0x00200,
MSG_FX_FLAG_GLOBAL_RAINBOW = 0x00400,
MSG_FX_FLAG_RISE_PRINT = 0x00800,
MSG_FX_FLAG_GROW_PRINT = 0x01000,
MSG_FX_FLAG_SIZE_JITTER = 0x02000,
MSG_FX_FLAG_SIZE_WAVE = 0x04000,
MSG_FX_FLAG_DROP_SHADOW = 0x08000,
MSG_FX_FLAG_STATIC = 0x10000
};
enum MsgStyles {
MSG_STYLE_RIGHT = 0x01,
MSG_STYLE_LEFT = 0x02,
MSG_STYLE_CENTER = 0x03,
MSG_STYLE_TATTLE = 0x04,
MSG_STYLE_CHOICE = 0x05,
MSG_STYLE_INSPECT = 0x06,
MSG_STYLE_SIGN = 0x07,
MSG_STYLE_LAMPPOST = 0x08,
MSG_STYLE_POSTCARD = 0x09,
MSG_STYLE_POPUP = 0x0A,
MSG_STYLE_B = 0x0B,
MSG_STYLE_UPGRADE = 0x0C,
MSG_STYLE_NARRATE = 0x0D,
MSG_STYLE_EPILOGUE = 0x0E,
MSG_STYLE_F = 0x0F
};
enum MsgFonts {
MSG_FONT_NORMAL = 0,
MSG_FONT_MENU = 1,
MSG_FONT_TITLE = 3,
MSG_FONT_SUBTITLE = 4
};
enum MsgVoices {
MSG_VOICE_NORMAL = 0,
MSG_VOICE_BOWSER = 1,
MSG_VOICE_STAR = 2
};
enum MsgPrintModeFlags {
MSG_PRINT_FLAG_1 = 0x001,
MSG_PRINT_FLAG_2 = 0x002,
MSG_PRINT_FLAG_10 = 0x010,
MSG_PRINT_FLAG_20 = 0x020,
MSG_PRINT_FLAG_40 = 0x040,
MSG_PRINT_FLAG_80 = 0x080,
MSG_PRINT_FLAG_100 = 0x100,
};
enum MsgStateFlags {
MSG_STATE_FLAG_1 = 0x000001,
MSG_STATE_FLAG_2 = 0x000002,
2022-04-07 09:51:21 +02:00
MSG_STATE_FLAG_4 = 0x000004,
MSG_STATE_FLAG_10 = 0x000010,
MSG_STATE_FLAG_20 = 0x000020,
MSG_STATE_FLAG_40 = 0x000040,
2022-04-07 09:51:21 +02:00
MSG_STATE_FLAG_80 = 0x000080,
MSG_STATE_FLAG_PRINT_QUICKLY = 0x000100,
MSG_STATE_FLAG_400 = 0x000400,
MSG_STATE_FLAG_800 = 0x000800,
MSG_STATE_FLAG_1000 = 0x001000,
MSG_STATE_FLAG_4000 = 0x004000,
MSG_STATE_FLAG_8000 = 0x008000,
MSG_STATE_FLAG_10000 = 0x010000,
MSG_STATE_FLAG_20000 = 0x020000,
2022-04-07 09:51:21 +02:00
MSG_STATE_FLAG_40000 = 0x040000,
MSG_STATE_FLAG_80000 = 0x080000,
MSG_STATE_FLAG_100000 = 0x100000,
2022-04-07 09:51:21 +02:00
MSG_STATE_FLAG_800000 = 0x800000,
};
enum MsgDelayFlags {
MSG_DELAY_FLAG_1 = 0x000001,
MSG_DELAY_FLAG_2 = 0x000002,
MSG_DELAY_FLAG_4 = 0x000004,
};
enum MsgWindowStates {
MSG_WINDOW_STATE_DONE = 0x0,
MSG_WINDOW_STATE_INIT = 0x1,
MSG_WINDOW_STATE_OPENING = 0x2,
MSG_WINDOW_STATE_CLOSING = 0x3,
MSG_WINDOW_STATE_PRINTING = 0x4,
MSG_WINDOW_STATE_WAITING = 0x5,
MSG_WINDOW_STATE_SCROLLING = 0x6,
MSG_WINDOW_STATE_WAITING_FOR_CHOICE = 0x7,
MSG_WINDOW_STATE_SCROLLING_BACK = 0x8,
MSG_WINDOW_STATE_VIEWING_PREV = 0x9,
MSG_WINDOW_STATE_A = 0xA,
MSG_WINDOW_STATE_B = 0xB,
MSG_WINDOW_STATE_C = 0xC,
MSG_WINDOW_STATE_D = 0xD,
MSG_WINDOW_STATE_E = 0xE,
};
enum BackgroundFlags {
BACKGROUND_FLAG_TEXTURE = 0x01,
BACKGROUND_FLAG_FOG = 0x02,
BACKGROUND_RENDER_STATE_1 = 0x10,
BACKGROUND_RENDER_STATE_2 = 0x20,
BACKGROUND_RENDER_STATE_3 = 0x30,
BACKGROUND_RENDER_STATE_MASK = 0xF0,
};
enum FogModes {
FOG_MODE_UNCHANGED = -1,
FOG_MODE_0 = 0,
FOG_MODE_1 = 1,
FOG_MODE_2 = 2,
FOG_MODE_3 = 3,
};
enum EncounterStates {
ENCOUNTER_STATE_NONE = 0,
ENCOUNTER_STATE_CREATE = 1,
ENCOUNTER_STATE_NEUTRAL = 2,
ENCOUNTER_STATE_PRE_BATTLE = 3,
ENCOUNTER_STATE_CONVERSATION = 4,
ENCOUNTER_STATE_POST_BATTLE = 5,
};
enum EncounterCreateSubStates {
ENCOUNTER_SUBSTATE_CREATE_INIT = 0,
ENCOUNTER_SUBSTATE_CREATE_RUN_INIT_SCRIPT = 1,
ENCOUNTER_SUBSTATE_CREATE_RUN_AI = 2,
};
enum EncounterNeutralSubStates {
ENCOUNTER_SUBSTATE_NEUTRAL = 0,
};
enum EncounterPreBattleSubStates {
ENCOUNTER_SUBSTATE_PRE_BATTLE_INIT = 0,
ENCOUNTER_SUBSTATE_PRE_BATTLE_LOAD_BATTLE = 1,
ENCOUNTER_SUBSTATE_PRE_BATTLE_AUTO_WIN = 2,
ENCOUNTER_SUBSTATE_PRE_BATTLE_3 = 3,
};
enum EncounterConversationSubStates {
ENCOUNTER_SUBSTATE_CONVERSATION_INIT = 0,
ENCOUNTER_SUBSTATE_CONVERSATION_END = 1,
};
enum EncounterPostBattleSubStates {
ENCOUNTER_SUBSTATE_POST_BATTLE_INIT = 0,
ENCOUNTER_SUBSTATE_POST_BATTLE_WON_WAIT = 2,
ENCOUNTER_SUBSTATE_POST_BATTLE_WON_KILL = 3,
ENCOUNTER_SUBSTATE_POST_BATTLE_WON_TO_NEUTRAL = 4,
ENCOUNTER_SUBSTATE_POST_BATTLE_WON_CHECK_MERLEE_BONUS = 10,
ENCOUNTER_SUBSTATE_POST_BATTLE_PLAY_NPC_DEFEAT = 11,
ENCOUNTER_SUBSTATE_POST_BATTLE_FLED_INIT = 100,
ENCOUNTER_SUBSTATE_POST_BATTLE_FLED_WAIT = 101,
ENCOUNTER_SUBSTATE_POST_BATTLE_102 = 102,
ENCOUNTER_SUBSTATE_POST_BATTLE_103 = 103,
ENCOUNTER_SUBSTATE_POST_BATTLE_LOST_INIT = 200,
ENCOUNTER_SUBSTATE_POST_BATTLE_LOST_WAIT = 201,
ENCOUNTER_SUBSTATE_POST_BATTLE_202 = 202,
ENCOUNTER_SUBSTATE_POST_BATTLE_LOST_TO_NEUTRAL = 203,
ENCOUNTER_SUBSTATE_POST_BATTLE_300 = 300,
ENCOUNTER_SUBSTATE_POST_BATTLE_ENEMY_FLED_INIT = 400,
ENCOUNTER_SUBSTATE_POST_BATTLE_ENEMY_FLED_WAIT = 401,
ENCOUNTER_SUBSTATE_POST_BATTLE_ENEMY_FLED_TO_NEUTRAL = 402,
};
enum PlayerSpriteSets {
PLAYER_SPRITES_MARIO_WORLD = 0,
PLAYER_SPRITES_MARIO_REFLECT_FLOOR = 1,
PLAYER_SPRITES_COMBINED_EPILOGUE = 2,
PLAYER_SPRITES_MARIO_PARADE = 3,
PLAYER_SPRITES_PEACH_WORLD = 4,
PLAYER_SPRITES_MARIO_BATTLE = 5,
PLAYER_SPRITES_PEACH_BATTLE = 6,
};
enum BattleDarknessMode {
BTL_DARKNESS_MODE_0 = 0,
BTL_DARKNESS_MODE_1 = 1,
BTL_DARKNESS_MODE_2 = 2,
BTL_DARKNESS_MODE_3 = 3,
};
enum BattleDarknessState {
BTL_DARKNESS_STATE_LOCKED = -2,
BTL_DARKNESS_STATE_DARK = -1,
BTL_DARKNESS_STATE_NONE = 0,
BTL_DARKNESS_STATE_WATT_BASED = 1,
};
enum WindowStyles {
WINDOW_STYLE_0 = 0,
WINDOW_STYLE_1 = 1,
WINDOW_STYLE_2 = 2,
WINDOW_STYLE_3 = 3,
WINDOW_STYLE_4 = 4,
WINDOW_STYLE_5 = 5,
WINDOW_STYLE_6 = 6,
WINDOW_STYLE_7 = 7,
WINDOW_STYLE_8 = 8,
WINDOW_STYLE_9 = 9,
WINDOW_STYLE_10 = 10,
WINDOW_STYLE_11 = 11,
WINDOW_STYLE_12 = 12,
WINDOW_STYLE_13 = 13,
WINDOW_STYLE_14 = 14,
WINDOW_STYLE_15 = 15,
WINDOW_STYLE_16 = 16,
WINDOW_STYLE_17 = 17,
WINDOW_STYLE_18 = 18,
WINDOW_STYLE_19 = 19,
WINDOW_STYLE_20 = 20,
WINDOW_STYLE_21 = 21,
WINDOW_STYLE_22 = 22,
WINDOW_STYLE_MAX = 22,
};
// LANGUAGE_DEFAULT as 0 will be the first index into several arrays containing data based on the current language.
// For non-PAL versions, this will be the first and only index.
#define LANGUAGE_DEFAULT 0
enum Language {
LANGUAGE_EN = 0,
LANGUAGE_DE = 1,
LANGUAGE_FR = 2,
LANGUAGE_ES = 3,
};
2020-08-15 00:47:06 +02:00
#endif