mirror of
https://github.com/zeldaret/mm.git
synced 2026-08-07 02:05:28 -04:00
Text Extraction + some Message Docs (#1530)
* Some Decoder WIPs * Improvements * POC * Fix bss * another newline * Staff OK * Cleanup + fix progress script * script cleanup * Some docs * makefile * Extract text from extract_assets.py * More docs * Even more docs * Other message assets * Small cleanups * Clean up decoders/encoders * Message_SetupLoadItemIcon -> Message_DecodeHeader * Some more docs * Remove mkdmadata * Fade Skippable * More cmd docs * 1 left * Last notes * HS_TIMER -> HS_TIME * More general docs * Format * Note the charmap conversion for buttons in message_data_fmt_nes.h * Remove trailing whitespace * Small fixes * PR
This commit is contained in:
@@ -0,0 +1,340 @@
|
||||
#ifndef MESSAGE_DATA_FMT_NES_H
|
||||
#define MESSAGE_DATA_FMT_NES_H
|
||||
|
||||
/*
|
||||
* Macros to create both a constant and a string literal from a magic value
|
||||
* The constants are used in code files when parsing text for various purposes
|
||||
* The strings are used in the message_data_static files themselves, as you can only concat strings with other strings
|
||||
*/
|
||||
|
||||
#ifndef GLUE
|
||||
#define GLUE(a, b) a##b
|
||||
#endif
|
||||
|
||||
#define STRINGIFY(s) #s
|
||||
#define EXPAND_AND_STRINGIFY(s) STRINGIFY(s)
|
||||
|
||||
#define HEX(N) GLUE(0x, N)
|
||||
#define STR(N) EXPAND_AND_STRINGIFY(GLUE(\x, N))
|
||||
|
||||
/*
|
||||
* Text control characters
|
||||
*/
|
||||
|
||||
// Control character magic values, in 2-digit hex without prefix
|
||||
#define CTRL_COLOR_DEFAULT 00
|
||||
#define CTRL_COLOR_RED 01
|
||||
#define CTRL_COLOR_GREEN 02
|
||||
#define CTRL_COLOR_BLUE 03
|
||||
#define CTRL_COLOR_YELLOW 04
|
||||
#define CTRL_COLOR_LIGHTBLUE 05
|
||||
#define CTRL_COLOR_PINK 06
|
||||
#define CTRL_COLOR_SILVER 07
|
||||
#define CTRL_COLOR_ORANGE 08
|
||||
#define CTRL_TEXT_SPEED 0A // Note this should take an arg 0 to 6, but always just sets next decode char as 0
|
||||
#define CTRL_HS_BOAT_ARCHERY 0B
|
||||
#define CTRL_STRAY_FAIRIES 0C
|
||||
#define CTRL_TOKENS 0D
|
||||
#define CTRL_POINTS_TENS 0E
|
||||
#define CTRL_POINTS_THOUSANDS 0F
|
||||
#define CTRL_BOX_BREAK 10
|
||||
#define CTRL_NEWLINE 11
|
||||
#define CTRL_BOX_BREAK2 12
|
||||
#define CTRL_CARRIAGE_RETURN 13
|
||||
#define CTRL_SHIFT 14
|
||||
#define CTRL_CONTINUE 15
|
||||
#define CTRL_NAME 16
|
||||
#define CTRL_QUICKTEXT_ENABLE 17
|
||||
#define CTRL_QUICKTEXT_DISABLE 18
|
||||
#define CTRL_EVENT 19
|
||||
#define CTRL_PERSISTENT 1A
|
||||
#define CTRL_BOX_BREAK_DELAYED 1B
|
||||
#define CTRL_FADE 1C
|
||||
#define CTRL_FADE_SKIPPABLE 1D
|
||||
#define CTRL_SFX 1E
|
||||
#define CTRL_DELAY 1F
|
||||
#define CTRL_BTN_A B0
|
||||
#define CTRL_BTN_B B1
|
||||
#define CTRL_BTN_C B2
|
||||
#define CTRL_BTN_L B3
|
||||
#define CTRL_BTN_R B4
|
||||
#define CTRL_BTN_Z B5
|
||||
#define CTRL_BTN_CUP B6
|
||||
#define CTRL_BTN_CDOWN B7
|
||||
#define CTRL_BTN_CLEFT B8
|
||||
#define CTRL_BTN_CRIGHT B9
|
||||
#define CTRL_Z_TARGET BA
|
||||
#define CTRL_CONTROL_PAD BB
|
||||
#define CTRL_END BF
|
||||
#define CTRL_BACKGROUND C1
|
||||
#define CTRL_TWO_CHOICE C2
|
||||
#define CTRL_THREE_CHOICE C3
|
||||
#define CTRL_TIMER_POSTMAN C4
|
||||
#define CTRL_TIMER_MINIGAME_1 C5
|
||||
#define CTRL_TIMER_2 C6
|
||||
#define CTRL_TIMER_MOON_CRASH C7
|
||||
#define CTRL_TIMER_MINIGAME_2 C8
|
||||
#define CTRL_TIMER_ENV_HAZARD C9
|
||||
#define CTRL_TIME CA
|
||||
#define CTRL_CHEST_FLAGS CB
|
||||
#define CTRL_INPUT_BANK CC
|
||||
#define CTRL_RUPEES_SELECTED CD
|
||||
#define CTRL_RUPEES_TOTAL CE
|
||||
#define CTRL_TIME_UNTIL_MOON_CRASH CF
|
||||
#define CTRL_INPUT_DOGGY_RACETRACK_BET D0
|
||||
#define CTRL_INPUT_BOMBER_CODE D1
|
||||
#define CTRL_PAUSE_MENU D2
|
||||
#define CTRL_TIME_SPEED D3
|
||||
#define CTRL_OWL_WARP D4
|
||||
#define CTRL_INPUT_LOTTERY_CODE D5
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE D6
|
||||
#define CTRL_STRAY_FAIRIES_LEFT_WOODFALL D7
|
||||
#define CTRL_STRAY_FAIRIES_LEFT_SNOWHEAD D8
|
||||
#define CTRL_STRAY_FAIRIES_LEFT_GREAT_BAY D9
|
||||
#define CTRL_STRAY_FAIRIES_LEFT_STONE_TOWER DA
|
||||
#define CTRL_POINTS_BOAT_ARCHERY DB // Seems to be the exact same as CTRL_POINTS_THOUSANDS
|
||||
#define CTRL_LOTTERY_CODE DC
|
||||
#define CTRL_LOTTERY_CODE_GUESS DD
|
||||
#define CTRL_HELD_ITEM_PRICE DE
|
||||
#define CTRL_BOMBER_CODE DF
|
||||
#define CTRL_EVENT2 E0 // Seems to be the exact same as CTRL_EVENT
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE_1 E1
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE_2 E2
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE_3 E3
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE_4 E4
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE_5 E5
|
||||
#define CTRL_SPIDER_HOUSE_MASK_CODE_6 E6
|
||||
#define CTRL_HOURS_UNTIL_MOON_CRASH E7
|
||||
#define CTRL_TIME_UNTIL_NEW_DAY E8
|
||||
#define CTRL_HS_POINTS_BANK_RUPEES F0
|
||||
#define CTRL_HS_POINTS_UNK_1 F1
|
||||
#define CTRL_HS_POINTS_FISHING F2
|
||||
#define CTRL_HS_TIME_BOAT_ARCHERY F3 // Note this interprets the highscore value as a time (not the actual timer for the minigame)
|
||||
#define CTRL_HS_TIME_HORSE_BACK_BALLOON F4 // Note this interprets the highscore value as a time (not the actual timer for the minigame)
|
||||
#define CTRL_HS_TIME_LOTTERY_GUESS F5
|
||||
#define CTRL_HS_TOWN_SHOOTING_GALLERY F6
|
||||
#define CTRL_HS_UNK_1 F7
|
||||
#define CTRL_HS_UNK_3_LOWER F8
|
||||
#define CTRL_HS_HORSE_BACK_BALLOON F9
|
||||
#define CTRL_HS_DEKU_PLAYGROUND_DAY_1 FA
|
||||
#define CTRL_HS_DEKU_PLAYGROUND_DAY_2 FB
|
||||
#define CTRL_HS_DEKU_PLAYGROUND_DAY_3 FC
|
||||
#define CTRL_DEKU_PLAYGROUND_NAME_DAY_1 FD
|
||||
#define CTRL_DEKU_PLAYGROUND_NAME_DAY_2 FE
|
||||
#define CTRL_DEKU_PLAYGROUND_NAME_DAY_3 FF
|
||||
|
||||
#ifdef MESSAGE_DATA_STATIC
|
||||
// For use in message_data_static files
|
||||
|
||||
#define ARG(x) x
|
||||
|
||||
#define CMD_COLOR_DEFAULT STR(CTRL_COLOR_DEFAULT)
|
||||
#define CMD_COLOR_RED STR(CTRL_COLOR_RED)
|
||||
#define CMD_COLOR_GREEN STR(CTRL_COLOR_GREEN)
|
||||
#define CMD_COLOR_BLUE STR(CTRL_COLOR_BLUE)
|
||||
#define CMD_COLOR_YELLOW STR(CTRL_COLOR_YELLOW)
|
||||
#define CMD_COLOR_LIGHTBLUE STR(CTRL_COLOR_LIGHTBLUE)
|
||||
#define CMD_COLOR_PINK STR(CTRL_COLOR_PINK)
|
||||
#define CMD_COLOR_SILVER STR(CTRL_COLOR_SILVER)
|
||||
#define CMD_COLOR_ORANGE STR(CTRL_COLOR_ORANGE)
|
||||
#define CMD_TEXT_SPEED STR(CTRL_TEXT_SPEED)
|
||||
#define CMD_HS_BOAT_ARCHERY STR(CTRL_HS_BOAT_ARCHERY)
|
||||
#define CMD_STRAY_FAIRIES STR(CTRL_STRAY_FAIRIES)
|
||||
#define CMD_TOKENS STR(CTRL_TOKENS)
|
||||
#define CMD_POINTS_TENS STR(CTRL_POINTS_TENS)
|
||||
#define CMD_POINTS_THOUSANDS STR(CTRL_POINTS_THOUSANDS)
|
||||
#define CMD_BOX_BREAK STR(CTRL_BOX_BREAK)
|
||||
// while a control character, newlines are handled in the charmap conversion
|
||||
// stage to allow normal newline \n usage in message_data_static files
|
||||
#define CMD_NEWLINE STR(CTRL_NEWLINE)
|
||||
#define CMD_BOX_BREAK2 STR(CTRL_BOX_BREAK2)
|
||||
#define CMD_CARRIAGE_RETURN STR(CTRL_CARRIAGE_RETURN)
|
||||
#define CMD_SHIFT(x) STR(CTRL_SHIFT) ARG(x) // 1
|
||||
#define CMD_CONTINUE STR(CTRL_CONTINUE)
|
||||
#define CMD_NAME STR(CTRL_NAME)
|
||||
#define CMD_QUICKTEXT_ENABLE STR(CTRL_QUICKTEXT_ENABLE)
|
||||
#define CMD_QUICKTEXT_DISABLE STR(CTRL_QUICKTEXT_DISABLE)
|
||||
#define CMD_EVENT STR(CTRL_EVENT)
|
||||
#define CMD_PERSISTENT STR(CTRL_PERSISTENT)
|
||||
#define CMD_BOX_BREAK_DELAYED(x) STR(CTRL_BOX_BREAK_DELAYED) ARG(x) // 2
|
||||
#define CMD_FADE(x) STR(CTRL_FADE) ARG(x) // 2
|
||||
#define CMD_FADE_SKIPPABLE(x) STR(CTRL_FADE_SKIPPABLE) ARG(x) // 2
|
||||
#define CMD_SFX(x) STR(CTRL_SFX) ARG(x) // 2
|
||||
#define CMD_DELAY(x) STR(CTRL_DELAY) ARG(x) // 2
|
||||
// while control characters, button images are handled in the charmap conversion
|
||||
#define CMD_BTN_A STR(CTRL_BTN_A) // "[A]"
|
||||
#define CMD_BTN_B STR(CTRL_BTN_B) // "[B]"
|
||||
#define CMD_BTN_C STR(CTRL_BTN_C) // "[C]"
|
||||
#define CMD_BTN_L STR(CTRL_BTN_L) // "[L]"
|
||||
#define CMD_BTN_R STR(CTRL_BTN_R) // "[R]"
|
||||
#define CMD_BTN_Z STR(CTRL_BTN_Z) // "[Z]"
|
||||
#define CMD_BTN_CUP STR(CTRL_BTN_CUP) // "[C-Up]"
|
||||
#define CMD_BTN_CDOWN STR(CTRL_BTN_CDOWN) // "[C-Down]"
|
||||
#define CMD_BTN_CLEFT STR(CTRL_BTN_CLEFT) // "[C-Left]"
|
||||
#define CMD_BTN_CRIGHT STR(CTRL_BTN_CRIGHT) // "[C-Right]"
|
||||
#define CMD_Z_TARGET STR(CTRL_Z_TARGET) // "▼"
|
||||
#define CMD_CONTROL_PAD STR(CTRL_CONTROL_PAD) // "[Control-Pad]"
|
||||
#define CMD_END STR(CTRL_END)
|
||||
#define CMD_BACKGROUND STR(CTRL_BACKGROUND)
|
||||
#define CMD_TWO_CHOICE STR(CTRL_TWO_CHOICE)
|
||||
#define CMD_THREE_CHOICE STR(CTRL_THREE_CHOICE)
|
||||
#define CMD_TIMER_POSTMAN STR(CTRL_TIMER_POSTMAN)
|
||||
#define CMD_TIMER_MINIGAME_1 STR(CTRL_TIMER_MINIGAME_1)
|
||||
#define CMD_TIMER_2 STR(CTRL_TIMER_2)
|
||||
#define CMD_TIMER_MOON_CRASH STR(CTRL_TIMER_MOON_CRASH)
|
||||
#define CMD_TIMER_MINIGAME_2 STR(CTRL_TIMER_MINIGAME_2)
|
||||
#define CMD_TIMER_ENV_HAZARD STR(CTRL_TIMER_ENV_HAZARD)
|
||||
#define CMD_TIME STR(CTRL_TIME)
|
||||
#define CMD_CHEST_FLAGS STR(CTRL_CHEST_FLAGS)
|
||||
#define CMD_INPUT_BANK STR(CTRL_INPUT_BANK)
|
||||
#define CMD_RUPEES_SELECTED STR(CTRL_RUPEES_SELECTED)
|
||||
#define CMD_RUPEES_TOTAL STR(CTRL_RUPEES_TOTAL)
|
||||
#define CMD_TIME_UNTIL_MOON_CRASH STR(CTRL_TIME_UNTIL_MOON_CRASH)
|
||||
#define CMD_INPUT_DOGGY_RACETRACK_BET STR(CTRL_INPUT_DOGGY_RACETRACK_BET)
|
||||
#define CMD_INPUT_BOMBER_CODE STR(CTRL_INPUT_BOMBER_CODE)
|
||||
#define CMD_PAUSE_MENU STR(CTRL_PAUSE_MENU)
|
||||
#define CMD_TIME_SPEED STR(CTRL_TIME_SPEED)
|
||||
#define CMD_OWL_WARP STR(CTRL_OWL_WARP)
|
||||
#define CMD_INPUT_LOTTERY_CODE STR(CTRL_INPUT_LOTTERY_CODE)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE STR(CTRL_SPIDER_HOUSE_MASK_CODE)
|
||||
#define CMD_STRAY_FAIRIES_LEFT_WOODFALL STR(CTRL_STRAY_FAIRIES_LEFT_WOODFALL)
|
||||
#define CMD_STRAY_FAIRIES_LEFT_SNOWHEAD STR(CTRL_STRAY_FAIRIES_LEFT_SNOWHEAD)
|
||||
#define CMD_STRAY_FAIRIES_LEFT_GREAT_BAY STR(CTRL_STRAY_FAIRIES_LEFT_GREAT_BAY)
|
||||
#define CMD_STRAY_FAIRIES_LEFT_STONE_TOWER STR(CTRL_STRAY_FAIRIES_LEFT_STONE_TOWER)
|
||||
#define CMD_POINTS_BOAT_ARCHERY STR(CTRL_POINTS_BOAT_ARCHERY)
|
||||
#define CMD_LOTTERY_CODE STR(CTRL_LOTTERY_CODE)
|
||||
#define CMD_LOTTERY_CODE_GUESS STR(CTRL_LOTTERY_CODE_GUESS)
|
||||
#define CMD_HELD_ITEM_PRICE STR(CTRL_HELD_ITEM_PRICE)
|
||||
#define CMD_BOMBER_CODE STR(CTRL_BOMBER_CODE)
|
||||
#define CMD_EVENT2 STR(CTRL_EVENT2)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE_1 STR(CTRL_SPIDER_HOUSE_MASK_CODE_1)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE_2 STR(CTRL_SPIDER_HOUSE_MASK_CODE_2)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE_3 STR(CTRL_SPIDER_HOUSE_MASK_CODE_3)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE_4 STR(CTRL_SPIDER_HOUSE_MASK_CODE_4)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE_5 STR(CTRL_SPIDER_HOUSE_MASK_CODE_5)
|
||||
#define CMD_SPIDER_HOUSE_MASK_CODE_6 STR(CTRL_SPIDER_HOUSE_MASK_CODE_6)
|
||||
#define CMD_HOURS_UNTIL_MOON_CRASH STR(CTRL_HOURS_UNTIL_MOON_CRASH)
|
||||
#define CMD_TIME_UNTIL_NEW_DAY STR(CTRL_TIME_UNTIL_NEW_DAY)
|
||||
#define CMD_HS_POINTS_BANK_RUPEES STR(CTRL_HS_POINTS_BANK_RUPEES)
|
||||
#define CMD_HS_POINTS_UNK_1 STR(CTRL_HS_POINTS_UNK_1)
|
||||
#define CMD_HS_POINTS_FISHING STR(CTRL_HS_POINTS_FISHING)
|
||||
#define CMD_HS_TIME_BOAT_ARCHERY STR(CTRL_HS_TIME_BOAT_ARCHERY)
|
||||
#define CMD_HS_TIME_HORSE_BACK_BALLOON STR(CTRL_HS_TIME_HORSE_BACK_BALLOON)
|
||||
#define CMD_HS_TIME_LOTTERY_GUESS STR(CTRL_HS_TIME_LOTTERY_GUESS)
|
||||
#define CMD_HS_TOWN_SHOOTING_GALLERY STR(CTRL_HS_TOWN_SHOOTING_GALLERY)
|
||||
#define CMD_HS_UNK_1 STR(CTRL_HS_UNK_1)
|
||||
#define CMD_HS_UNK_3_LOWER STR(CTRL_HS_UNK_3_LOWER)
|
||||
#define CMD_HS_HORSE_BACK_BALLOON STR(CTRL_HS_HORSE_BACK_BALLOON)
|
||||
#define CMD_HS_DEKU_PLAYGROUND_DAY_1 STR(CTRL_HS_DEKU_PLAYGROUND_DAY_1)
|
||||
#define CMD_HS_DEKU_PLAYGROUND_DAY_2 STR(CTRL_HS_DEKU_PLAYGROUND_DAY_2)
|
||||
#define CMD_HS_DEKU_PLAYGROUND_DAY_3 STR(CTRL_HS_DEKU_PLAYGROUND_DAY_3)
|
||||
#define CMD_DEKU_PLAYGROUND_NAME_DAY_1 STR(CTRL_DEKU_PLAYGROUND_NAME_DAY_1)
|
||||
#define CMD_DEKU_PLAYGROUND_NAME_DAY_2 STR(CTRL_DEKU_PLAYGROUND_NAME_DAY_2)
|
||||
#define CMD_DEKU_PLAYGROUND_NAME_DAY_3 STR(CTRL_DEKU_PLAYGROUND_NAME_DAY_3)
|
||||
|
||||
#else
|
||||
|
||||
#define MESSAGE_COLOR_DEFAULT HEX(CTRL_COLOR_DEFAULT)
|
||||
#define MESSAGE_COLOR_RED HEX(CTRL_COLOR_RED)
|
||||
#define MESSAGE_COLOR_GREEN HEX(CTRL_COLOR_GREEN)
|
||||
#define MESSAGE_COLOR_BLUE HEX(CTRL_COLOR_BLUE)
|
||||
#define MESSAGE_COLOR_YELLOW HEX(CTRL_COLOR_YELLOW)
|
||||
#define MESSAGE_COLOR_LIGHTBLUE HEX(CTRL_COLOR_LIGHTBLUE)
|
||||
#define MESSAGE_COLOR_PINK HEX(CTRL_COLOR_PINK)
|
||||
#define MESSAGE_COLOR_SILVER HEX(CTRL_COLOR_SILVER)
|
||||
#define MESSAGE_COLOR_ORANGE HEX(CTRL_COLOR_ORANGE)
|
||||
#define MESSAGE_TEXT_SPEED HEX(CTRL_TEXT_SPEED)
|
||||
#define MESSAGE_HS_BOAT_ARCHERY HEX(CTRL_HS_BOAT_ARCHERY)
|
||||
#define MESSAGE_STRAY_FAIRIES HEX(CTRL_STRAY_FAIRIES)
|
||||
#define MESSAGE_TOKENS HEX(CTRL_TOKENS)
|
||||
#define MESSAGE_POINTS_TENS HEX(CTRL_POINTS_TENS)
|
||||
#define MESSAGE_POINTS_THOUSANDS HEX(CTRL_POINTS_THOUSANDS)
|
||||
#define MESSAGE_BOX_BREAK HEX(CTRL_BOX_BREAK)
|
||||
#define MESSAGE_NEWLINE HEX(CTRL_NEWLINE)
|
||||
#define MESSAGE_BOX_BREAK2 HEX(CTRL_BOX_BREAK2)
|
||||
#define MESSAGE_CARRIAGE_RETURN HEX(CTRL_CARRIAGE_RETURN)
|
||||
#define MESSAGE_SHIFT HEX(CTRL_SHIFT)
|
||||
#define MESSAGE_CONTINUE HEX(CTRL_CONTINUE)
|
||||
#define MESSAGE_NAME HEX(CTRL_NAME)
|
||||
#define MESSAGE_QUICKTEXT_ENABLE HEX(CTRL_QUICKTEXT_ENABLE)
|
||||
#define MESSAGE_QUICKTEXT_DISABLE HEX(CTRL_QUICKTEXT_DISABLE)
|
||||
#define MESSAGE_EVENT HEX(CTRL_EVENT)
|
||||
#define MESSAGE_PERSISTENT HEX(CTRL_PERSISTENT)
|
||||
#define MESSAGE_BOX_BREAK_DELAYED HEX(CTRL_BOX_BREAK_DELAYED)
|
||||
#define MESSAGE_FADE HEX(CTRL_FADE)
|
||||
#define MESSAGE_FADE_SKIPPABLE HEX(CTRL_FADE_SKIPPABLE)
|
||||
#define MESSAGE_SFX HEX(CTRL_SFX)
|
||||
#define MESSAGE_DELAY HEX(CTRL_DELAY)
|
||||
#define MESSAGE_BTN_A HEX(CTRL_BTN_A)
|
||||
#define MESSAGE_BTN_B HEX(CTRL_BTN_B)
|
||||
#define MESSAGE_BTN_C HEX(CTRL_BTN_C)
|
||||
#define MESSAGE_BTN_L HEX(CTRL_BTN_L)
|
||||
#define MESSAGE_BTN_R HEX(CTRL_BTN_R)
|
||||
#define MESSAGE_BTN_Z HEX(CTRL_BTN_Z)
|
||||
#define MESSAGE_BTN_CUP HEX(CTRL_BTN_CUP)
|
||||
#define MESSAGE_BTN_CDOWN HEX(CTRL_BTN_CDOWN)
|
||||
#define MESSAGE_BTN_CLEFT HEX(CTRL_BTN_CLEFT)
|
||||
#define MESSAGE_BTN_CRIGHT HEX(CTRL_BTN_CRIGHT)
|
||||
#define MESSAGE_Z_TARGET HEX(CTRL_Z_TARGET)
|
||||
#define MESSAGE_CONTROL_PAD HEX(CTRL_CONTROL_PAD)
|
||||
#define MESSAGE_END HEX(CTRL_END)
|
||||
#define MESSAGE_BACKGROUND HEX(CTRL_BACKGROUND)
|
||||
#define MESSAGE_TWO_CHOICE HEX(CTRL_TWO_CHOICE)
|
||||
#define MESSAGE_THREE_CHOICE HEX(CTRL_THREE_CHOICE)
|
||||
#define MESSAGE_TIMER_POSTMAN HEX(CTRL_TIMER_POSTMAN)
|
||||
#define MESSAGE_TIMER_MINIGAME_1 HEX(CTRL_TIMER_MINIGAME_1)
|
||||
#define MESSAGE_TIMER_2 HEX(CTRL_TIMER_2)
|
||||
#define MESSAGE_TIMER_MOON_CRASH HEX(CTRL_TIMER_MOON_CRASH)
|
||||
#define MESSAGE_TIMER_MINIGAME_2 HEX(CTRL_TIMER_MINIGAME_2)
|
||||
#define MESSAGE_TIMER_ENV_HAZARD HEX(CTRL_TIMER_ENV_HAZARD)
|
||||
#define MESSAGE_TIME HEX(CTRL_TIME)
|
||||
#define MESSAGE_CHEST_FLAGS HEX(CTRL_CHEST_FLAGS)
|
||||
#define MESSAGE_INPUT_BANK HEX(CTRL_INPUT_BANK)
|
||||
#define MESSAGE_RUPEES_SELECTED HEX(CTRL_RUPEES_SELECTED)
|
||||
#define MESSAGE_RUPEES_TOTAL HEX(CTRL_RUPEES_TOTAL)
|
||||
#define MESSAGE_TIME_UNTIL_MOON_CRASH HEX(CTRL_TIME_UNTIL_MOON_CRASH)
|
||||
#define MESSAGE_INPUT_DOGGY_RACETRACK_BET HEX(CTRL_INPUT_DOGGY_RACETRACK_BET)
|
||||
#define MESSAGE_INPUT_BOMBER_CODE HEX(CTRL_INPUT_BOMBER_CODE)
|
||||
#define MESSAGE_PAUSE_MENU HEX(CTRL_PAUSE_MENU)
|
||||
#define MESSAGE_TIME_SPEED HEX(CTRL_TIME_SPEED)
|
||||
#define MESSAGE_OWL_WARP HEX(CTRL_OWL_WARP)
|
||||
#define MESSAGE_INPUT_LOTTERY_CODE HEX(CTRL_INPUT_LOTTERY_CODE)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE HEX(CTRL_SPIDER_HOUSE_MASK_CODE)
|
||||
#define MESSAGE_STRAY_FAIRIES_LEFT_WOODFALL HEX(CTRL_STRAY_FAIRIES_LEFT_WOODFALL)
|
||||
#define MESSAGE_STRAY_FAIRIES_LEFT_SNOWHEAD HEX(CTRL_STRAY_FAIRIES_LEFT_SNOWHEAD)
|
||||
#define MESSAGE_STRAY_FAIRIES_LEFT_GREAT_BAY HEX(CTRL_STRAY_FAIRIES_LEFT_GREAT_BAY)
|
||||
#define MESSAGE_STRAY_FAIRIES_LEFT_STONE_TOWER HEX(CTRL_STRAY_FAIRIES_LEFT_STONE_TOWER)
|
||||
#define MESSAGE_POINTS_BOAT_ARCHERY HEX(CTRL_POINTS_BOAT_ARCHERY)
|
||||
#define MESSAGE_LOTTERY_CODE HEX(CTRL_LOTTERY_CODE)
|
||||
#define MESSAGE_LOTTERY_CODE_GUESS HEX(CTRL_LOTTERY_CODE_GUESS)
|
||||
#define MESSAGE_HELD_ITEM_PRICE HEX(CTRL_HELD_ITEM_PRICE)
|
||||
#define MESSAGE_BOMBER_CODE HEX(CTRL_BOMBER_CODE)
|
||||
#define MESSAGE_EVENT2 HEX(CTRL_EVENT2)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE_1 HEX(CTRL_SPIDER_HOUSE_MASK_CODE_1)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE_2 HEX(CTRL_SPIDER_HOUSE_MASK_CODE_2)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE_3 HEX(CTRL_SPIDER_HOUSE_MASK_CODE_3)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE_4 HEX(CTRL_SPIDER_HOUSE_MASK_CODE_4)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE_5 HEX(CTRL_SPIDER_HOUSE_MASK_CODE_5)
|
||||
#define MESSAGE_SPIDER_HOUSE_MASK_CODE_6 HEX(CTRL_SPIDER_HOUSE_MASK_CODE_6)
|
||||
#define MESSAGE_HOURS_UNTIL_MOON_CRASH HEX(CTRL_HOURS_UNTIL_MOON_CRASH)
|
||||
#define MESSAGE_TIME_UNTIL_NEW_DAY HEX(CTRL_TIME_UNTIL_NEW_DAY)
|
||||
#define MESSAGE_HS_POINTS_BANK_RUPEES HEX(CTRL_HS_POINTS_BANK_RUPEES)
|
||||
#define MESSAGE_HS_POINTS_UNK_1 HEX(CTRL_HS_POINTS_UNK_1)
|
||||
#define MESSAGE_HS_POINTS_FISHING HEX(CTRL_HS_POINTS_FISHING)
|
||||
#define MESSAGE_HS_TIME_BOAT_ARCHERY HEX(CTRL_HS_TIME_BOAT_ARCHERY)
|
||||
#define MESSAGE_HS_TIME_HORSE_BACK_BALLOON HEX(CTRL_HS_TIME_HORSE_BACK_BALLOON)
|
||||
#define MESSAGE_HS_TIME_LOTTERY_GUESS HEX(CTRL_HS_TIME_LOTTERY_GUESS)
|
||||
#define MESSAGE_HS_TOWN_SHOOTING_GALLERY HEX(CTRL_HS_TOWN_SHOOTING_GALLERY)
|
||||
#define MESSAGE_HS_UNK_1 HEX(CTRL_HS_UNK_1)
|
||||
#define MESSAGE_HS_UNK_3_LOWER HEX(CTRL_HS_UNK_3_LOWER)
|
||||
#define MESSAGE_HS_HORSE_BACK_BALLOON HEX(CTRL_HS_HORSE_BACK_BALLOON)
|
||||
#define MESSAGE_HS_DEKU_PLAYGROUND_DAY_1 HEX(CTRL_HS_DEKU_PLAYGROUND_DAY_1)
|
||||
#define MESSAGE_HS_DEKU_PLAYGROUND_DAY_2 HEX(CTRL_HS_DEKU_PLAYGROUND_DAY_2)
|
||||
#define MESSAGE_HS_DEKU_PLAYGROUND_DAY_3 HEX(CTRL_HS_DEKU_PLAYGROUND_DAY_3)
|
||||
#define MESSAGE_DEKU_PLAYGROUND_NAME_DAY_1 HEX(CTRL_DEKU_PLAYGROUND_NAME_DAY_1)
|
||||
#define MESSAGE_DEKU_PLAYGROUND_NAME_DAY_2 HEX(CTRL_DEKU_PLAYGROUND_NAME_DAY_2)
|
||||
#define MESSAGE_DEKU_PLAYGROUND_NAME_DAY_3 HEX(CTRL_DEKU_PLAYGROUND_NAME_DAY_3)
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,180 @@
|
||||
#ifndef MESSAGE_DATA_FMT_STAFF_H
|
||||
#define MESSAGE_DATA_FMT_STAFF_H
|
||||
|
||||
/*
|
||||
* Macros to create both a constant and a string literal from a magic value
|
||||
* The constants are used in code files when parsing text for various purposes
|
||||
* The strings are used in the message_data_static files themselves, as you can only concat strings with other strings
|
||||
*/
|
||||
|
||||
#ifndef GLUE
|
||||
#define GLUE(a, b) a##b
|
||||
#endif
|
||||
|
||||
#define STRINGIFY(s) #s
|
||||
#define EXPAND_AND_STRINGIFY(s) STRINGIFY(s)
|
||||
|
||||
#define HEX(N) GLUE(0x, N)
|
||||
#define STR(N) EXPAND_AND_STRINGIFY(GLUE(\x, N))
|
||||
|
||||
/*
|
||||
* Text control characters
|
||||
*/
|
||||
|
||||
// Control character magic values, in 2-digit hex without prefix
|
||||
|
||||
#define CTRL_NEWLINE 01
|
||||
#define CTRL_END 02
|
||||
#define CTRL_BOX_BREAK 04
|
||||
#define CTRL_COLOR 05
|
||||
#define CTRL_SHIFT 06
|
||||
#define CTRL_TEXTID 07
|
||||
#define CTRL_QUICKTEXT_ENABLE 08
|
||||
#define CTRL_QUICKTEXT_DISABLE 09
|
||||
#define CTRL_PERSISTENT 0A
|
||||
#define CTRL_EVENT 0B
|
||||
#define CTRL_BOX_BREAK_DELAYED 0C
|
||||
#define CTRL_AWAIT_BUTTON_PRESS 0D
|
||||
#define CTRL_FADE 0E
|
||||
#define CTRL_NAME 0F
|
||||
#define CTRL_OCARINA 10
|
||||
#define CTRL_FADE2 11
|
||||
#define CTRL_SFX 12
|
||||
#define CTRL_ITEM_ICON 13
|
||||
#define CTRL_TEXT_SPEED 14
|
||||
#define CTRL_BACKGROUND 15
|
||||
#define CTRL_MARATHON_TIME 16
|
||||
#define CTRL_RACE_TIME 17
|
||||
#define CTRL_POINTS 18
|
||||
#define CTRL_TOKENS 19
|
||||
#define CTRL_UNSKIPPABLE 1A
|
||||
#define CTRL_TWO_CHOICE 1B
|
||||
#define CTRL_THREE_CHOICE 1C
|
||||
#define CTRL_FISH_INFO 1D
|
||||
#define CTRL_HIGHSCORE 1E
|
||||
#define CTRL_TIME 1F
|
||||
|
||||
/*
|
||||
* Colors
|
||||
*/
|
||||
|
||||
#define COLOR_STR(N) EXPAND_AND_STRINGIFY(GLUE(\x4, N))
|
||||
|
||||
// Color magic values, in single-digit hex without prefix
|
||||
|
||||
#define CTRL_DEFAULT 0
|
||||
#define CTRL_RED 1
|
||||
#define CTRL_ADJUSTABLE 2
|
||||
#define CTRL_BLUE 3
|
||||
#define CTRL_LIGHTBLUE 4
|
||||
#define CTRL_PURPLE 5
|
||||
#define CTRL_YELLOW 6
|
||||
#define CTRL_BLACK 7
|
||||
|
||||
#ifdef MESSAGE_DATA_STATIC
|
||||
// For use in message_data_static files
|
||||
|
||||
#define ARG(x) x
|
||||
|
||||
// while a control character, newlines are handled in the charmap conversion
|
||||
// stage to allow normal newline \n usage in message_data_static files
|
||||
#define CMD_NEWLINE STR(CTRL_NEWLINE)
|
||||
#define CMD_END STR(CTRL_END)
|
||||
#define CMD_BOX_BREAK STR(CTRL_BOX_BREAK)
|
||||
#define CMD_COLOR(x) STR(CTRL_COLOR) ARG(x) // 1
|
||||
#define CMD_SHIFT(x) STR(CTRL_SHIFT) ARG(x) // 1
|
||||
#define CMD_TEXTID(x) STR(CTRL_TEXTID) ARG(x) // 2
|
||||
#define CMD_QUICKTEXT_ENABLE STR(CTRL_QUICKTEXT_ENABLE)
|
||||
#define CMD_QUICKTEXT_DISABLE STR(CTRL_QUICKTEXT_DISABLE)
|
||||
#define CMD_PERSISTENT STR(CTRL_PERSISTENT)
|
||||
#define CMD_EVENT STR(CTRL_EVENT)
|
||||
#define CMD_BOX_BREAK_DELAYED(x) STR(CTRL_BOX_BREAK_DELAYED) ARG(x) // 1
|
||||
#define CMD_AWAIT_BUTTON_PRESS STR(CTRL_AWAIT_BUTTON_PRESS)
|
||||
#define CMD_FADE(x) STR(CTRL_FADE) ARG(x) // 1
|
||||
#define CMD_NAME STR(CTRL_NAME)
|
||||
#define CMD_OCARINA STR(CTRL_OCARINA)
|
||||
#define CMD_FADE2(x) STR(CTRL_FADE2) ARG(x) // 2
|
||||
#define CMD_SFX(x) STR(CTRL_SFX) ARG(x) // 2
|
||||
#define CMD_ITEM_ICON(x) STR(CTRL_ITEM_ICON) ARG(x) // 1
|
||||
#define CMD_TEXT_SPEED(x) STR(CTRL_TEXT_SPEED) ARG(x) // 1
|
||||
#define CMD_BACKGROUND(x,y,z) STR(CTRL_BACKGROUND) ARG(x) ARG(y) ARG(z)
|
||||
#define CMD_MARATHON_TIME STR(CTRL_MARATHON_TIME)
|
||||
#define CMD_RACE_TIME STR(CTRL_RACE_TIME)
|
||||
#define CMD_POINTS STR(CTRL_POINTS)
|
||||
#define CMD_TOKENS STR(CTRL_TOKENS)
|
||||
#define CMD_UNSKIPPABLE STR(CTRL_UNSKIPPABLE)
|
||||
#define CMD_TWO_CHOICE STR(CTRL_TWO_CHOICE)
|
||||
#define CMD_THREE_CHOICE STR(CTRL_THREE_CHOICE)
|
||||
#define CMD_FISH_INFO STR(CTRL_FISH_INFO)
|
||||
#define CMD_HIGHSCORE(x) STR(CTRL_HIGHSCORE) ARG(x) // 1
|
||||
#define CMD_TIME STR(CTRL_TIME)
|
||||
|
||||
/*
|
||||
* Highscore values as strings, for code references the HighScores
|
||||
* enum should be used.
|
||||
*/
|
||||
|
||||
#define HS_BANK_RUPEES "\x00"
|
||||
#define HS_UNK_1 "\x01"
|
||||
#define HS_FISHING "\x02"
|
||||
#define HS_BOAT_ARCHERY "\x03"
|
||||
#define HS_HORSE_BACK_BALLOON "\x04"
|
||||
#define HS_SHOOTING_GALLERY "\x06"
|
||||
|
||||
/*
|
||||
* Color values as strings
|
||||
*/
|
||||
|
||||
#define DEFAULT COLOR_STR(CTRL_DEFAULT)
|
||||
#define RED COLOR_STR(CTRL_RED)
|
||||
#define ADJUSTABLE COLOR_STR(CTRL_ADJUSTABLE)
|
||||
#define BLUE COLOR_STR(CTRL_BLUE)
|
||||
#define LIGHTBLUE COLOR_STR(CTRL_LIGHTBLUE)
|
||||
#define PURPLE COLOR_STR(CTRL_PURPLE)
|
||||
#define YELLOW COLOR_STR(CTRL_YELLOW)
|
||||
#define BLACK COLOR_STR(CTRL_BLACK)
|
||||
|
||||
#else
|
||||
// For use in code files
|
||||
#define MSGCOL_DEFAULT HEX(CTRL_DEFAULT)
|
||||
#define MSGCOL_RED HEX(CTRL_RED)
|
||||
#define MSGCOL_ADJUSTABLE HEX(CTRL_ADJUSTABLE)
|
||||
#define MSGCOL_BLUE HEX(CTRL_BLUE)
|
||||
#define MSGCOL_LIGHTBLUE HEX(CTRL_LIGHTBLUE)
|
||||
#define MSGCOL_PURPLE HEX(CTRL_PURPLE)
|
||||
#define MSGCOL_YELLOW HEX(CTRL_YELLOW)
|
||||
#define MSGCOL_BLACK HEX(CTRL_BLACK)
|
||||
|
||||
#define MESSAGE_NEWLINE HEX(CTRL_NEWLINE)
|
||||
#define MESSAGE_END HEX(CTRL_END)
|
||||
#define MESSAGE_BOX_BREAK HEX(CTRL_BOX_BREAK)
|
||||
#define MESSAGE_COLOR HEX(CTRL_COLOR)
|
||||
#define MESSAGE_SHIFT HEX(CTRL_SHIFT)
|
||||
#define MESSAGE_TEXTID HEX(CTRL_TEXTID)
|
||||
#define MESSAGE_QUICKTEXT_ENABLE HEX(CTRL_QUICKTEXT_ENABLE)
|
||||
#define MESSAGE_QUICKTEXT_DISABLE HEX(CTRL_QUICKTEXT_DISABLE)
|
||||
#define MESSAGE_PERSISTENT HEX(CTRL_PERSISTENT)
|
||||
#define MESSAGE_EVENT HEX(CTRL_EVENT)
|
||||
#define MESSAGE_BOX_BREAK_DELAYED HEX(CTRL_BOX_BREAK_DELAYED)
|
||||
#define MESSAGE_AWAIT_BUTTON_PRESS HEX(CTRL_AWAIT_BUTTON_PRESS)
|
||||
#define MESSAGE_FADE HEX(CTRL_FADE)
|
||||
#define MESSAGE_NAME HEX(CTRL_NAME)
|
||||
#define MESSAGE_OCARINA HEX(CTRL_OCARINA)
|
||||
#define MESSAGE_FADE2 HEX(CTRL_FADE2)
|
||||
#define MESSAGE_SFX HEX(CTRL_SFX)
|
||||
#define MESSAGE_ITEM_ICON HEX(CTRL_ITEM_ICON)
|
||||
#define MESSAGE_TEXT_SPEED HEX(CTRL_TEXT_SPEED)
|
||||
#define MESSAGE_BACKGROUND HEX(CTRL_BACKGROUND)
|
||||
#define MESSAGE_MARATHON_TIME HEX(CTRL_MARATHON_TIME)
|
||||
#define MESSAGE_RACE_TIME HEX(CTRL_RACE_TIME)
|
||||
#define MESSAGE_POINTS HEX(CTRL_POINTS)
|
||||
#define MESSAGE_TOKENS HEX(CTRL_TOKENS)
|
||||
#define MESSAGE_UNSKIPPABLE HEX(CTRL_UNSKIPPABLE)
|
||||
#define MESSAGE_TWO_CHOICE HEX(CTRL_TWO_CHOICE)
|
||||
#define MESSAGE_THREE_CHOICE HEX(CTRL_THREE_CHOICE)
|
||||
#define MESSAGE_FISH_INFO HEX(CTRL_FISH_INFO)
|
||||
#define MESSAGE_HIGHSCORE HEX(CTRL_HIGHSCORE)
|
||||
#define MESSAGE_TIME HEX(CTRL_TIME)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -9,4 +9,18 @@ typedef struct MessageTableEntry {
|
||||
/* 0x4 */ const char* segment;
|
||||
} MessageTableEntry; // size = 0x8;
|
||||
|
||||
#define DEFINE_MESSAGE(textId, typePos, msg) \
|
||||
extern const char _message_##textId[];
|
||||
|
||||
#include "assets/text/message_data.h"
|
||||
|
||||
#undef DEFINE_MESSAGE
|
||||
|
||||
#define DEFINE_MESSAGE(textId, typePos, msg) \
|
||||
extern const char _message_##textId##_staff[];
|
||||
|
||||
#include "assets/text/staff_message_data.h"
|
||||
|
||||
#undef DEFINE_MESSAGE
|
||||
|
||||
#endif
|
||||
|
||||
+32
-32
@@ -30,30 +30,30 @@ typedef enum TextBoxType {
|
||||
/* 0x10 */ TEXTBOX_TYPE_MAX
|
||||
} TextBoxType;
|
||||
|
||||
#define TEXTBOX_ENDTYPE_00 0x00
|
||||
#define TEXTBOX_ENDTYPE_DEFAULT 0x00
|
||||
|
||||
#define TEXTBOX_ENDTYPE_10 0x10
|
||||
#define TEXTBOX_ENDTYPE_11 0x11
|
||||
#define TEXTBOX_ENDTYPE_TWO_CHOICE 0x10
|
||||
#define TEXTBOX_ENDTYPE_THREE_CHOICE 0x11
|
||||
#define TEXTBOX_ENDTYPE_12 0x12
|
||||
|
||||
#define TEXTBOX_ENDTYPE_20 0x20
|
||||
#define TEXTBOX_ENDTYPE_NEXT 0x20
|
||||
|
||||
#define TEXTBOX_ENDTYPE_30 0x30
|
||||
#define TEXTBOX_ENDTYPE_PERSISTENT 0x30
|
||||
|
||||
#define TEXTBOX_ENDTYPE_40 0x40
|
||||
#define TEXTBOX_ENDTYPE_41 0x41
|
||||
#define TEXTBOX_ENDTYPE_42 0x42
|
||||
#define TEXTBOX_ENDTYPE_EVENT 0x40
|
||||
#define TEXTBOX_ENDTYPE_PAUSE_MENU 0x41
|
||||
#define TEXTBOX_ENDTYPE_EVENT2 0x42
|
||||
|
||||
#define TEXTBOX_ENDTYPE_50 0x50
|
||||
#define TEXTBOX_ENDTYPE_52 0x52
|
||||
#define TEXTBOX_ENDTYPE_55 0x55
|
||||
#define TEXTBOX_ENDTYPE_56 0x56
|
||||
#define TEXTBOX_ENDTYPE_57 0x57
|
||||
#define TEXTBOX_ENDTYPE_FADE_NORMAL 0x50
|
||||
#define TEXTBOX_ENDTYPE_FADE_SKIPPABLE 0x52
|
||||
#define TEXTBOX_ENDTYPE_FADE_STAGES_1 0x55
|
||||
#define TEXTBOX_ENDTYPE_FADE_STAGES_2 0x56
|
||||
#define TEXTBOX_ENDTYPE_FADE_STAGES_3 0x57
|
||||
|
||||
#define TEXTBOX_ENDTYPE_60 0x60
|
||||
#define TEXTBOX_ENDTYPE_61 0x61
|
||||
#define TEXTBOX_ENDTYPE_62 0x62
|
||||
#define TEXTBOX_ENDTYPE_63 0x63
|
||||
#define TEXTBOX_ENDTYPE_INPUT_BANK 0x60
|
||||
#define TEXTBOX_ENDTYPE_INPUT_DOGGY_RACETRACK_BET 0x61
|
||||
#define TEXTBOX_ENDTYPE_INPUT_BOMBER_CODE 0x62
|
||||
#define TEXTBOX_ENDTYPE_INPUT_LOTTERY_CODE 0x63
|
||||
#define TEXTBOX_ENDTYPE_64 0x64
|
||||
|
||||
typedef enum MessageMode {
|
||||
@@ -154,23 +154,23 @@ u16 Text_GetFaceReaction(struct PlayState* play, FaceReactionSet reactionSet);
|
||||
|
||||
typedef enum TextState {
|
||||
/* 0 */ TEXT_STATE_NONE,
|
||||
/* 1 */ TEXT_STATE_1,
|
||||
/* 1 */ TEXT_STATE_NEXT,
|
||||
/* 2 */ TEXT_STATE_CLOSING,
|
||||
/* 3 */ TEXT_STATE_3,
|
||||
/* 3 */ TEXT_STATE_FADING,
|
||||
/* 4 */ TEXT_STATE_CHOICE,
|
||||
/* 5 */ TEXT_STATE_5,
|
||||
/* 5 */ TEXT_STATE_EVENT,
|
||||
/* 6 */ TEXT_STATE_DONE,
|
||||
/* 7 */ TEXT_STATE_7,
|
||||
/* 7 */ TEXT_STATE_SONG_DEMO_DONE,
|
||||
/* 8 */ TEXT_STATE_8,
|
||||
/* 9 */ TEXT_STATE_9,
|
||||
/* 10 */ TEXT_STATE_10,
|
||||
/* 10 */ TEXT_STATE_AWAITING_NEXT,
|
||||
/* 11 */ TEXT_STATE_11,
|
||||
/* 12 */ TEXT_STATE_12,
|
||||
/* 13 */ TEXT_STATE_13,
|
||||
/* 14 */ TEXT_STATE_14,
|
||||
/* 15 */ TEXT_STATE_15,
|
||||
/* 16 */ TEXT_STATE_16,
|
||||
/* 17 */ TEXT_STATE_17,
|
||||
/* 14 */ TEXT_STATE_INPUT_RUPEES,
|
||||
/* 15 */ TEXT_STATE_INPUT_BOMBER_CODE,
|
||||
/* 16 */ TEXT_STATE_PAUSE_MENU,
|
||||
/* 17 */ TEXT_STATE_INPUT_LOTTERY_CODE,
|
||||
/* 18 */ TEXT_STATE_18
|
||||
} TextState;
|
||||
|
||||
@@ -282,12 +282,12 @@ typedef struct MessageContext {
|
||||
/* 0x1206C */ s32 unk1206C;
|
||||
/* 0x12070 */ s32 unk12070;
|
||||
/* 0x12074 */ s32 unk12074;
|
||||
/* 0x12078 */ s32 bankRupeesSelected;
|
||||
/* 0x1207C */ s32 bankRupees;
|
||||
/* 0x12080 */ struct MessageTableEntry* messageEntryTable;
|
||||
/* 0x12084 */ struct MessageTableEntry* messageEntryTableNes;
|
||||
/* 0x12078 */ s32 rupeesSelected; // Used for bank and doggy racetrack bet
|
||||
/* 0x1207C */ s32 rupeesTotal; // Used for bank and doggy racetrack bet
|
||||
/* 0x12080 */ struct MessageTableEntry* messageTable;
|
||||
/* 0x12084 */ struct MessageTableEntry* messageTableNES;
|
||||
/* 0x12088 */ UNK_TYPE1 unk12088[0x4];
|
||||
/* 0x1208C */ struct MessageTableEntry* messageTableStaff;
|
||||
/* 0x1208C */ struct MessageTableEntry* messageTableCredits;
|
||||
/* 0x12090 */ s16 textIsCredits;
|
||||
/* 0x12092 */ s16 messageHasSetSfx;
|
||||
/* 0x12094 */ u8 textboxSkipped;
|
||||
@@ -326,7 +326,7 @@ void Message_DrawTextChar(struct PlayState* play, TexturePtr texture, Gfx** gfxP
|
||||
void Message_DrawItemIcon(struct PlayState* play, Gfx** gfxP);
|
||||
void Message_HandleOcarina(struct PlayState* play);
|
||||
void Message_LoadItemIcon(struct PlayState* play, u16 itemId, s16 arg2);
|
||||
void Message_SetupLoadItemIcon(struct PlayState* play);
|
||||
void Message_DecodeHeader(struct PlayState* play);
|
||||
void func_801514B0(struct PlayState* play, u16 arg1, u8 arg2);
|
||||
void Message_StartTextbox(struct PlayState* play, u16 textId, Actor* actor);
|
||||
void Message_ContinueTextbox(struct PlayState* play, u16 textId);
|
||||
|
||||
@@ -88,7 +88,7 @@ typedef struct EnHy {
|
||||
/* 0x194 */ ColliderCylinder collider;
|
||||
/* 0x1E0 */ u16 textId;
|
||||
/* 0x1E2 */ u8 waitingOnInit;
|
||||
/* 0x1E3 */ u8 inMsgState3;
|
||||
/* 0x1E3 */ u8 msgFading;
|
||||
/* 0x1E4 */ Path* path;
|
||||
/* 0x1E8 */ s16 curPoint;
|
||||
/* 0x1EC */ Vec3f leftFootPos;
|
||||
|
||||
Reference in New Issue
Block a user