summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoroctorock <79596758+octorock@users.noreply.github.com>2022-12-22 23:47:13 +0100
committeroctorock <79596758+octorock@users.noreply.github.com>2022-12-22 23:47:13 +0100
commitea9b7e7848ae5c194acd7bb13fb40b1ccfe49e1e (patch)
tree5433636373843e18fa182c44b630b7612639fa9d
parentc28018843601b99907ab79ef3fd9e689b078e384 (diff)
Fix palette groups
-rw-r--r--asm/non_matching/itemTryPickupObject/sub_080762D8.inc4
-rw-r--r--data/gfx/palette_groups.s594
-rw-r--r--include/main.h1
-rw-r--r--include/structures.h20
-rw-r--r--linker.ld2
-rw-r--r--src/beanstalkSubtask.c6
-rw-r--r--src/fileselect.c10
-rw-r--r--src/gameUtils.c2
-rw-r--r--src/interrupts.c12
-rw-r--r--src/item/itemTryPickupObject.c2
-rw-r--r--src/itemUtils.c4
-rw-r--r--src/menu/figurineMenu.c2
-rw-r--r--src/menu/pauseMenu.c6
-rw-r--r--src/object/crenelBeanSprout.c6
-rw-r--r--src/object/itemForSale.c12
-rw-r--r--src/player.c4
-rw-r--r--src/playerUtils.c14
-rw-r--r--src/script.c4
-rw-r--r--src/subtask.c24
-rw-r--r--src/ui.c227
20 files changed, 487 insertions, 469 deletions
diff --git a/asm/non_matching/itemTryPickupObject/sub_080762D8.inc b/asm/non_matching/itemTryPickupObject/sub_080762D8.inc
index 09315195..92bdec0b 100644
--- a/asm/non_matching/itemTryPickupObject/sub_080762D8.inc
+++ b/asm/non_matching/itemTryPickupObject/sub_080762D8.inc
@@ -54,7 +54,7 @@ _08076340:
adds r1, #0xa8
movs r0, #5
strb r0, [r1]
- ldr r0, _08076368 @ =gUnk_0200AF00
+ ldr r0, _08076368 @ =gHUD
adds r0, #0x2e
movs r1, #8
strb r1, [r0]
@@ -69,7 +69,7 @@ _0807635A:
b _08076380
.align 2, 0
_08076364: .4byte gPlayerState
-_08076368: .4byte gUnk_0200AF00
+_08076368: .4byte gHUD
_0807636C:
ldr r1, [r5, #0x18]
cmp r1, #0
diff --git a/data/gfx/palette_groups.s b/data/gfx/palette_groups.s
index 93873c37..d6d40796 100644
--- a/data/gfx/palette_groups.s
+++ b/data/gfx/palette_groups.s
@@ -3495,623 +3495,623 @@ gPaletteGroup_10::
palette_set palette=pal_0, offset=0x10, count=5
palette_set palette=pal_3438, offset=0x18, count=1, terminator=1
-gPaletteGroup_21::
+gPaletteGroup_12::
palette_set palette=pal_12, offset=0xf, count=1, terminator=1
-gPaletteGroup_20::
+gPaletteGroup_11::
palette_set palette=pal_0, offset=0x10, count=5
palette_set palette=pal_0, count=5, terminator=1
-gPaletteGroup_37::
+gPaletteGroup_28::
palette_set palette=pal_354, offset=0x2, count=13, terminator=1
-gPaletteGroup_48::
+gPaletteGroup_39::
palette_set palette=pal_380, offset=0x2, count=13, terminator=1
-gPaletteGroup_30::
+gPaletteGroup_21::
palette_set palette=pal_367, offset=0x2, count=13, terminator=1
-gPaletteGroup_29::
+gPaletteGroup_20::
palette_set palette=pal_393, offset=0x2, count=13, terminator=1
-gPaletteGroup_23::
+gPaletteGroup_14::
palette_set palette=pal_1118, offset=0x2, count=13, terminator=1
-gPaletteGroup_31::
+gPaletteGroup_22::
palette_set palette=pal_1118, offset=0x2, count=13, terminator=1
-gPaletteGroup_32::
+gPaletteGroup_23::
palette_set palette=pal_1131, offset=0x2, count=13, terminator=1
-gPaletteGroup_33::
+gPaletteGroup_24::
palette_set palette=pal_1144, offset=0x2, count=13, terminator=1
-gPaletteGroup_34::
+gPaletteGroup_25::
palette_set palette=pal_1157, offset=0x2, count=13, terminator=1
-gPaletteGroup_70::
+gPaletteGroup_61::
palette_set palette=pal_1170, offset=0x2, count=13, terminator=1
-gPaletteGroup_36::
+gPaletteGroup_27::
palette_set palette=pal_406, offset=0x2, count=13, terminator=1
-gPaletteGroup_269::
+gPaletteGroup_170::
palette_set palette=pal_419, offset=0x2, count=13, terminator=1
-gPaletteGroup_63::
+gPaletteGroup_54::
palette_set palette=pal_432, offset=0x2, count=13, terminator=1
-gPaletteGroup_27::
+gPaletteGroup_18::
palette_set palette=pal_1183, offset=0x2, count=13, terminator=1
-gPaletteGroup_72::
+gPaletteGroup_63::
palette_set palette=pal_1196, offset=0x2, count=13, terminator=1
-gPaletteGroup_73::
+gPaletteGroup_64::
palette_set palette=pal_1209, offset=0x2, count=13, terminator=1
-gPaletteGroup_74::
+gPaletteGroup_65::
palette_set palette=pal_1222, offset=0x2, count=13, terminator=1
-gPaletteGroup_75::
+gPaletteGroup_66::
palette_set palette=pal_1235, offset=0x2, count=13, terminator=1
-gPaletteGroup_102::
+gPaletteGroup_93::
palette_set palette=pal_1248, offset=0x2, count=13, terminator=1
-gPaletteGroup_24::
+gPaletteGroup_15::
palette_set palette=pal_685, offset=0x2, count=13, terminator=1
-gPaletteGroup_208::
+gPaletteGroup_109::
palette_set palette=pal_698, offset=0x2, count=13, terminator=1
-gPaletteGroup_26::
+gPaletteGroup_17::
palette_set palette=pal_711, offset=0x2, count=13, terminator=1
-gPaletteGroup_35::
+gPaletteGroup_26::
palette_set palette=pal_724, offset=0x2, count=13, terminator=1
-gPaletteGroup_99::
+gPaletteGroup_90::
palette_set palette=pal_737, offset=0x2, count=13, terminator=1
-gPaletteGroup_45::
+gPaletteGroup_36::
palette_set palette=pal_750, offset=0x2, count=13, terminator=1
-gPaletteGroup_46::
+gPaletteGroup_37::
palette_set palette=pal_763, offset=0x2, count=13, terminator=1
-gPaletteGroup_227::
+gPaletteGroup_128::
palette_set palette=pal_776, offset=0x2, count=13, terminator=1
-gPaletteGroup_103::
+gPaletteGroup_94::
palette_set palette=pal_789, offset=0x2, count=13, terminator=1
-gPaletteGroup_64::
+gPaletteGroup_55::
palette_set palette=pal_802, offset=0x2, count=13, terminator=1
-gPaletteGroup_203::
+gPaletteGroup_104::
palette_set palette=pal_815, offset=0x2, count=13, terminator=1
-gPaletteGroup_229::
+gPaletteGroup_130::
palette_set palette=pal_828, offset=0x2, count=13, terminator=1
-gPaletteGroup_69::
+gPaletteGroup_60::
palette_set palette=pal_845, offset=0x2, count=13, terminator=1
-gPaletteGroup_65::
+gPaletteGroup_56::
palette_set palette=pal_858, offset=0x2, count=13, terminator=1
-gPaletteGroup_261::
+gPaletteGroup_162::
palette_set palette=pal_1105, offset=0x2, count=13, terminator=1
-gPaletteGroup_66::
+gPaletteGroup_57::
palette_set palette=pal_871, offset=0x2, count=13, terminator=1
-gPaletteGroup_67::
+gPaletteGroup_58::
palette_set palette=pal_884, offset=0x2, count=13, terminator=1
-gPaletteGroup_244::
+gPaletteGroup_145::
palette_set palette=pal_897, offset=0x2, count=13, terminator=1
-gPaletteGroup_68::
+gPaletteGroup_59::
palette_set palette=pal_910, offset=0x2, count=13, terminator=1
-gPaletteGroup_243::
+gPaletteGroup_144::
palette_set palette=pal_962, offset=0x2, count=13, terminator=1
-gPaletteGroup_279::
+gPaletteGroup_180::
palette_set palette=pal_923, offset=0x2, count=13, terminator=1
-gPaletteGroup_254::
+gPaletteGroup_155::
palette_set palette=pal_936, offset=0x2, count=13, terminator=1
-gPaletteGroup_255::
+gPaletteGroup_156::
palette_set palette=pal_949, offset=0x2, count=13, terminator=1
-gPaletteGroup_268::
+gPaletteGroup_169::
palette_set palette=pal_975, offset=0x2, count=13, terminator=1
-gPaletteGroup_204::
+gPaletteGroup_105::
palette_set palette=pal_988, offset=0x2, count=13, terminator=1
-gPaletteGroup_205::
+gPaletteGroup_106::
palette_set palette=pal_1001, offset=0x2, count=13, terminator=1
-gPaletteGroup_206::
+gPaletteGroup_107::
palette_set palette=pal_1014, offset=0x2, count=13, terminator=1
-gPaletteGroup_207::
+gPaletteGroup_108::
palette_set palette=pal_1027, offset=0x2, count=13, terminator=1
-gPaletteGroup_219::
+gPaletteGroup_120::
palette_set palette=pal_1040, offset=0x2, count=13, terminator=1
-gPaletteGroup_262::
+gPaletteGroup_163::
palette_set palette=pal_1053, offset=0x2, count=13, terminator=1
-gPaletteGroup_263::
+gPaletteGroup_164::
palette_set palette=pal_1066, offset=0x2, count=13, terminator=1
-gPaletteGroup_264::
+gPaletteGroup_165::
palette_set palette=pal_1079, offset=0x2, count=13, terminator=1
-gPaletteGroup_265::
+gPaletteGroup_166::
palette_set palette=pal_1092, offset=0x2, count=13, terminator=1
-gPaletteGroup_25::
+gPaletteGroup_16::
palette_set palette=pal_445, offset=0x2, count=13, terminator=1
-gPaletteGroup_55::
+gPaletteGroup_46::
palette_set palette=pal_458, offset=0x2, count=13, terminator=1
-gPaletteGroup_76::
+gPaletteGroup_67::
palette_set palette=pal_471, offset=0x2, count=13, terminator=1
-gPaletteGroup_94::
+gPaletteGroup_85::
palette_set palette=pal_484, offset=0x2, count=13, terminator=1
-gPaletteGroup_28::
+gPaletteGroup_19::
palette_set palette=pal_497, offset=0x2, count=13, terminator=1
-gPaletteGroup_38::
+gPaletteGroup_29::
palette_set palette=pal_536, offset=0x2, count=13, terminator=1
-gPaletteGroup_39::
+gPaletteGroup_30::
palette_set palette=pal_549, offset=0x2, count=13, terminator=1
-gPaletteGroup_42::
+gPaletteGroup_33::
palette_set palette=pal_588, offset=0x2, count=13, terminator=1
-gPaletteGroup_108::
+gPaletteGroup_99::
palette_set palette=pal_601, offset=0x2, count=13, terminator=1
-gPaletteGroup_109::
+gPaletteGroup_100::
palette_set palette=pal_510, offset=0x2, count=13, terminator=1
-gPaletteGroup_266::
+gPaletteGroup_167::
palette_set palette=pal_523, offset=0x2, count=13, terminator=1
-gPaletteGroup_53::
+gPaletteGroup_44::
palette_set palette=pal_575, offset=0x2, count=13, terminator=1
-gPaletteGroup_40::
+gPaletteGroup_31::
palette_set palette=pal_614, offset=0x2, count=13, terminator=1
-gPaletteGroup_41::
+gPaletteGroup_32::
palette_set palette=pal_627, offset=0x2, count=13, terminator=1
-gPaletteGroup_47::
+gPaletteGroup_38::
palette_set palette=pal_640, offset=0x2, count=13, terminator=1
-gPaletteGroup_50::
+gPaletteGroup_41::
palette_set palette=pal_666, offset=0x2, count=13, terminator=1
-gPaletteGroup_71::
+gPaletteGroup_62::
palette_set palette=pal_1921, offset=0x2, count=13, terminator=1
-gPaletteGroup_101::
+gPaletteGroup_92::
palette_set palette=pal_1934, offset=0x2, count=13, terminator=1
-gPaletteGroup_201::
+gPaletteGroup_102::
palette_set palette=pal_1947, offset=0x2, count=13, terminator=1
-gPaletteGroup_202::
+gPaletteGroup_103::
palette_set palette=pal_1960, offset=0x2, count=13, terminator=1
-gPaletteGroup_60::
+gPaletteGroup_51::
palette_set palette=pal_1262, offset=0x2, count=13, terminator=1
-gPaletteGroup_61::
+gPaletteGroup_52::
palette_set palette=pal_1275, offset=0x2, count=13, terminator=1
-gPaletteGroup_98::
+gPaletteGroup_89::
palette_set palette=pal_1288, offset=0x2, count=13, terminator=1
-gPaletteGroup_256::
+gPaletteGroup_157::
palette_set palette=pal_1301, offset=0x2, count=13, terminator=1
-gPaletteGroup_267::
+gPaletteGroup_168::
palette_set palette=pal_1314, offset=0x2, count=13, terminator=1
-gPaletteGroup_62::
+gPaletteGroup_53::
palette_set palette=pal_1327, offset=0x2, count=13, terminator=1
-gPaletteGroup_22::
+gPaletteGroup_13::
palette_set palette=pal_1340, offset=0x2, count=13, terminator=1
-gPaletteGroup_54::
+gPaletteGroup_45::
palette_set palette=pal_1353, offset=0x2, count=13, terminator=1
-gPaletteGroup_245::
+gPaletteGroup_146::
palette_set palette=pal_1366, offset=0x2, count=13, terminator=1
-gPaletteGroup_246::
+gPaletteGroup_147::
palette_set palette=pal_1379, offset=0x2, count=13, terminator=1
-gPaletteGroup_247::
+gPaletteGroup_148::
palette_set palette=pal_1392, offset=0x2, count=13, terminator=1
-gPaletteGroup_248::
+gPaletteGroup_149::
palette_set palette=pal_1405, offset=0x2, count=13, terminator=1
-gPaletteGroup_249::
+gPaletteGroup_150::
palette_set palette=pal_1418, offset=0x2, count=13, terminator=1
-gPaletteGroup_43::
+gPaletteGroup_34::
palette_set palette=pal_1431, offset=0x2, count=13, terminator=1
-gPaletteGroup_250::
+gPaletteGroup_151::
palette_set palette=pal_1444, offset=0x2, count=13, terminator=1
-gPaletteGroup_251::
+gPaletteGroup_152::
palette_set palette=pal_1457, offset=0x2, count=13, terminator=1
-gPaletteGroup_252::
+gPaletteGroup_153::
palette_set palette=pal_1470, offset=0x2, count=13, terminator=1
-gPaletteGroup_253::
+gPaletteGroup_154::
palette_set palette=pal_1483, offset=0x2, count=13, terminator=1
-gPaletteGroup_44::
+gPaletteGroup_35::
palette_set palette=pal_1908, offset=0x2, count=13, terminator=1
-gPaletteGroup_200::
+gPaletteGroup_101::
palette_set palette=pal_1973, offset=0x2, count=13, terminator=1
-gPaletteGroup_209::
+gPaletteGroup_110::
palette_set palette=pal_1986, offset=0x2, count=13, terminator=1
-gPaletteGroup_220::
+gPaletteGroup_121::
palette_set palette=pal_1496, offset=0x2, count=13, terminator=1
-gPaletteGroup_224::
+gPaletteGroup_125::
palette_set palette=pal_1999, offset=0x2, count=13, terminator=1
-gPaletteGroup_225::
+gPaletteGroup_126::
palette_set palette=pal_1509, offset=0x2, count=13, terminator=1
-gPaletteGroup_226::
+gPaletteGroup_127::
palette_set palette=pal_1522, offset=0x2, count=13, terminator=1
-gPaletteGroup_230::
+gPaletteGroup_131::
palette_set palette=pal_2012, offset=0x2, count=13, terminator=1
-gPaletteGroup_231::
+gPaletteGroup_132::
palette_set palette=pal_2025, offset=0x2, count=13, terminator=1
-gPaletteGroup_232::
+gPaletteGroup_133::
palette_set palette=pal_2038, offset=0x2, count=13, terminator=1
-gPaletteGroup_257::
+gPaletteGroup_158::
palette_set palette=pal_2051, offset=0x2, count=13, terminator=1
-gPaletteGroup_258::
+gPaletteGroup_159::
palette_set palette=pal_2064, offset=0x2, count=13, terminator=1
-gPaletteGroup_259::
+gPaletteGroup_160::
palette_set palette=pal_2077, offset=0x2, count=13, terminator=1
-gPaletteGroup_260::
+gPaletteGroup_161::
palette_set palette=pal_1535, offset=0x2, count=13, terminator=1
-gPaletteGroup_210::
+gPaletteGroup_111::
palette_set palette=pal_2090, offset=0xb, count=1, terminator=1
-gPaletteGroup_211::
+gPaletteGroup_112::
palette_set palette=pal_2091, offset=0xb, count=1, terminator=1
-gPaletteGroup_212::
+gPaletteGroup_113::
palette_set palette=pal_2092, offset=0xb, count=1, terminator=1
-gPaletteGroup_213::
+gPaletteGroup_114::
palette_set palette=pal_2093, offset=0xb, count=1, terminator=1
-gPaletteGroup_104::
+gPaletteGroup_95::
palette_set palette=pal_2124, count=16, terminator=1
-gPaletteGroup_105::
+gPaletteGroup_96::
palette_set palette=pal_2143, count=16, terminator=1
-gPaletteGroup_106::
+gPaletteGroup_97::
palette_set palette=pal_2162, count=16, terminator=1
-gPaletteGroup_107::
+gPaletteGroup_98::
palette_set palette=pal_2181, count=16, terminator=1
-gPaletteGroup_77::
+gPaletteGroup_68::
palette_set palette=pal_1548, offset=0x3, count=12, terminator=1
-gPaletteGroup_78::
+gPaletteGroup_69::
palette_set palette=pal_1560, offset=0x3, count=12, terminator=1
-gPaletteGroup_79::
+gPaletteGroup_70::
palette_set palette=pal_1572, offset=0x3, count=12, terminator=1
-gPaletteGroup_80::
+gPaletteGroup_71::
palette_set palette=pal_1584, offset=0x3, count=12, terminator=1
-gPaletteGroup_81::
+gPaletteGroup_72::
palette_set palette=pal_1596, offset=0x3, count=12, terminator=1
-gPaletteGroup_82::
+gPaletteGroup_73::
palette_set palette=pal_1608, offset=0x3, count=12, terminator=1
-gPaletteGroup_83::
+gPaletteGroup_74::
palette_set palette=pal_1620, offset=0x3, count=12, terminator=1
-gPaletteGroup_84::
+gPaletteGroup_75::
palette_set palette=pal_1632, offset=0x3, count=12, terminator=1
-gPaletteGroup_85::
+gPaletteGroup_76::
palette_set palette=pal_1644, offset=0x3, count=12, terminator=1
-gPaletteGroup_95::
+gPaletteGroup_86::
palette_set palette=pal_1656, offset=0x3, count=12, terminator=1
-gPaletteGroup_96::
+gPaletteGroup_87::
palette_set palette=pal_1668, offset=0x3, count=12, terminator=1
-gPaletteGroup_97::
+gPaletteGroup_88::
palette_set palette=pal_1680, offset=0x3, count=12, terminator=1
-gPaletteGroup_86::
+gPaletteGroup_77::
palette_set palette=pal_1692, offset=0x3, count=12, terminator=1
-gPaletteGroup_87::
+gPaletteGroup_78::
palette_set palette=pal_1704, offset=0x3, count=12, terminator=1
-gPaletteGroup_88::
+gPaletteGroup_79::
palette_set palette=pal_1716, offset=0x3, count=12, terminator=1
-gPaletteGroup_89::
+gPaletteGroup_80::
palette_set palette=pal_1728, offset=0x3, count=12, terminator=1
-gPaletteGroup_90::
+gPaletteGroup_81::
palette_set palette=pal_1740, offset=0x3, count=12, terminator=1
-gPaletteGroup_91::
+gPaletteGroup_82::
palette_set palette=pal_1752, offset=0x3, count=12, terminator=1
-gPaletteGroup_92::
+gPaletteGroup_83::
palette_set palette=pal_1764, offset=0x3, count=12, terminator=1
-gPaletteGroup_93::
+gPaletteGroup_84::
palette_set palette=pal_1776, offset=0x3, count=12, terminator=1
-gPaletteGroup_214::
+gPaletteGroup_115::
palette_set palette=pal_1788, offset=0x3, count=12, terminator=1
-gPaletteGroup_215::
+gPaletteGroup_116::
palette_set palette=pal_1800, offset=0x3, count=12, terminator=1
-gPaletteGroup_216::
+gPaletteGroup_117::
palette_set palette=pal_1812, offset=0x3, count=12, terminator=1
-gPaletteGroup_217::
+gPaletteGroup_118::
palette_set palette=pal_1824, offset=0x3, count=12, terminator=1
-gPaletteGroup_218::
+gPaletteGroup_119::
palette_set palette=pal_1836, offset=0x3, count=12, terminator=1
-gPaletteGroup_228::
+gPaletteGroup_129::
palette_set palette=pal_1848, offset=0x3, count=12, terminator=1
-gPaletteGroup_223::
+gPaletteGroup_124::
palette_set palette=pal_1860, offset=0x3, count=12, terminator=1
-gPaletteGroup_222::
+gPaletteGroup_123::
palette_set palette=pal_1872, offset=0x3, count=12, terminator=1
-gPaletteGroup_221::
+gPaletteGroup_122::
palette_set palette=pal_1884, offset=0x3, count=12, terminator=1
-gPaletteGroup_49::
+gPaletteGroup_40::
palette_set palette=pal_2204, count=8, terminator=1
-gPaletteGroup_51::
+gPaletteGroup_42::
palette_set palette=pal_2094, offset=0x5, count=3, terminator=1
-gPaletteGroup_52::
+gPaletteGroup_43::
palette_set palette=pal_2097, offset=0x5, count=3, terminator=1
-gPaletteGroup_56::
+gPaletteGroup_47::
palette_set palette=pal_5, offset=0x1f, count=1, terminator=1
-gPaletteGroup_57::
+gPaletteGroup_48::
palette_set palette=pal_6, offset=0x1f, count=1, terminator=1
-gPaletteGroup_58::
+gPaletteGroup_49::
palette_set palette=pal_7, offset=0x1f, count=1, terminator=1
-gPaletteGroup_59::
+gPaletteGroup_50::
palette_set palette=pal_8, offset=0x1f, count=1, terminator=1
-gPaletteGroup_100::
+gPaletteGroup_91::
palette_set palette=pal_562, offset=0x2, count=13, terminator=1
-gPaletteGroup_233::
+gPaletteGroup_134::
palette_set palette=pal_2100, offset=0x9, count=6, terminator=1
-gPaletteGroup_234::
+gPaletteGroup_135::
palette_set palette=pal_2106, offset=0x9, count=6, terminator=1
-gPaletteGroup_235::
+gPaletteGroup_136::
palette_set palette=pal_2112, offset=0x9, count=6, terminator=1
-gPaletteGroup_236::
+gPaletteGroup_137::
palette_set palette=pal_2118, offset=0x9, count=6, terminator=1
-gPaletteGroup_237::
+gPaletteGroup_138::
palette_set palette=pal_2307, offset=0x6, count=9, terminator=1
-gPaletteGroup_238::
+gPaletteGroup_139::
palette_set palette=pal_2316, offset=0x6, count=9, terminator=1
-gPaletteGroup_239::
+gPaletteGroup_140::
palette_set palette=pal_2325, offset=0x6, count=9, terminator=1
-gPaletteGroup_240::
+gPaletteGroup_141::
palette_set palette=pal_2334, offset=0x6, count=9, terminator=1
-gPaletteGroup_241::
+gPaletteGroup_142::
palette_set palette=pal_2343, offset=0x6, count=9, terminator=1
-gPaletteGroup_242::
+gPaletteGroup_143::
palette_set palette=pal_2352, offset=0x6, count=9, terminator=1
-gPaletteGroup_270::
+gPaletteGroup_171::
palette_set palette=pal_2361, offset=0x7, count=8, terminator=1
-gPaletteGroup_271::
+gPaletteGroup_172::
palette_set palette=pal_2369, offset=0x7, count=8, terminator=1
-gPaletteGroup_272::
+gPaletteGroup_173::
palette_set palette=pal_2377, offset=0x7, count=8, terminator=1
-gPaletteGroup_273::
+gPaletteGroup_174::
palette_set palette=pal_2385, offset=0x7, count=8, terminator=1
-gPaletteGroup_274::
+gPaletteGroup_175::
palette_set palette=pal_2393, offset=0x7, count=8, terminator=1
-gPaletteGroup_275::
+gPaletteGroup_176::
palette_set palette=pal_2401, offset=0x7, count=8, terminator=1
-gPaletteGroup_276::
+gPaletteGroup_177::
palette_set palette=pal_2409, offset=0x7, count=8, terminator=1
-gPaletteGroup_277::
+gPaletteGroup_178::
palette_set palette=pal_2417, offset=0x7, count=8, terminator=1
-gPaletteGroup_278::
+gPaletteGroup_179::
palette_set palette=pal_2425, offset=0x7, count=8, terminator=1
-gPaletteGroup_280::
+gPaletteGroup_181::
palette_set palette=pal_0, count=4
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_0, offset=0x10, count=5, terminator=1
-gPaletteGroup_281::
+gPaletteGroup_182::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2220, offset=0x15, count=6, terminator=1
-gPaletteGroup_282::
+gPaletteGroup_183::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2220, offset=0x15, count=6
palette_set palette=pal_13, offset=0x1e, count=1, terminator=1
-gPaletteGroup_283::
+gPaletteGroup_184::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2254, offset=0xb, count=2
palette_set palette=pal_2220, offset=0x15, count=6, terminator=1
-gPaletteGroup_284::
+gPaletteGroup_185::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2217, offset=0x5, count=1
palette_set palette=pal_2226, offset=0x6, count=7
palette_set palette=pal_2220, offset=0x15, count=6
palette_set palette=pal_14, offset=0x17, count=1, terminator=1
-gPaletteGroup_285::
+gPaletteGroup_186::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2233, offset=0xc, count=1, terminator=1
-gPaletteGroup_286::
+gPaletteGroup_187::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2233, offset=0xc, count=1, terminator=1
-gPaletteGroup_287::
+gPaletteGroup_188::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2234, offset=0xb, count=2, terminator=1
-gPaletteGroup_288::
+gPaletteGroup_189::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2234, offset=0xb, count=2, terminator=1
-gPaletteGroup_289::
+gPaletteGroup_190::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2236, offset=0x9, count=4, terminator=1
-gPaletteGroup_290::
+gPaletteGroup_191::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2240, offset=0x9, count=4, terminator=1
-gPaletteGroup_291::
+gPaletteGroup_192::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2240, offset=0x9, count=4, terminator=1
-gPaletteGroup_292::
+gPaletteGroup_193::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2244, offset=0xa, count=3, terminator=1
-gPaletteGroup_293::
+gPaletteGroup_194::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2240, offset=0x9, count=4, terminator=1
-gPaletteGroup_294::
+gPaletteGroup_195::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2244, offset=0xa, count=3, terminator=1
-gPaletteGroup_295::
+gPaletteGroup_196::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2240, offset=0x9, count=4, terminator=1
-gPaletteGroup_296::
+gPaletteGroup_197::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2236, offset=0x9, count=4, terminator=1
-gPaletteGroup_297::
+gPaletteGroup_198::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2240, offset=0x9, count=4, terminator=1
-gPaletteGroup_298::
+gPaletteGroup_199::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2240, offset=0x9, count=4, terminator=1
-gPaletteGroup_299::
+gPaletteGroup_200::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2247, offset=0xb, count=2, terminator=1
-gPaletteGroup_300::
+gPaletteGroup_201::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2249, offset=0xa, count=3, terminator=1
-gPaletteGroup_301::
+gPaletteGroup_202::
palette_set palette=pal_2215, offset=0xd, count=2
palette_set palette=pal_2252, offset=0xb, count=2, terminator=1
-gPaletteGroup_302::
+gPaletteGroup_203::
palette_set palette=pal_0, count=5
palette_set palette=pal_2256, offset=0xb, count=2
palette_set palette=pal_0, offset=0x10, count=5
palette_set palette=pal_2258, offset=0x15, count=1, terminator=1
-gPaletteGroup_303::
+gPaletteGroup_204::
palette_set palette=pal_0, count=5
palette_set palette=pal_0, offset=0x10, count=5
palette_set palette=pal_2258, offset=0x15, count=1, terminator=1
-gPaletteGroup_304::
+gPaletteGroup_205::
palette_set palette=pal_0, count=5
palette_set palette=pal_0, offset=0x10, count=5
palette_set palette=pal_157, offset=0x18, count=1
@@ -4123,12 +4123,12 @@ gPaletteGroup_304::
palette_set palette=pal_163, offset=0x1e, count=1
palette_set palette=pal_164, offset=0x1f, count=1, terminator=1
-gPaletteGroup_305::
+gPaletteGroup_206::
palette_set palette=pal_11, offset=0xc, count=1
palette_set palette=pal_2433, offset=0x13, count=1, terminator=1
.ifndef EU
-gPaletteGroup_306::
+gPaletteGroup_207::
palette_set palette=pal_0, count=4
palette_set palette=pal_0, offset=0x10, count=5
palette_set palette=pal_2218, offset=0xc, count=2, terminator=1
@@ -4146,6 +4146,15 @@ gPaletteGroups::
.4byte gPaletteGroup_8
.4byte gPaletteGroup_9
.4byte gPaletteGroup_10
+ .4byte gPaletteGroup_11
+ .4byte gPaletteGroup_12
+ .4byte gPaletteGroup_13
+ .4byte gPaletteGroup_14
+ .4byte gPaletteGroup_15
+ .4byte gPaletteGroup_16
+ .4byte gPaletteGroup_17
+ .4byte gPaletteGroup_18
+ .4byte gPaletteGroup_19
.4byte gPaletteGroup_20
.4byte gPaletteGroup_21
.4byte gPaletteGroup_22
@@ -4236,6 +4245,96 @@ gPaletteGroups::
.4byte gPaletteGroup_107
.4byte gPaletteGroup_108
.4byte gPaletteGroup_109
+ .4byte gPaletteGroup_110
+ .4byte gPaletteGroup_111
+ .4byte gPaletteGroup_112
+ .4byte gPaletteGroup_113
+ .4byte gPaletteGroup_114
+ .4byte gPaletteGroup_115
+ .4byte gPaletteGroup_116
+ .4byte gPaletteGroup_117
+ .4byte gPaletteGroup_118
+ .4byte gPaletteGroup_119
+ .4byte gPaletteGroup_120
+ .4byte gPaletteGroup_121
+ .4byte gPaletteGroup_122
+ .4byte gPaletteGroup_123
+ .4byte gPaletteGroup_124
+ .4byte gPaletteGroup_125
+ .4byte gPaletteGroup_126
+ .4byte gPaletteGroup_127
+ .4byte gPaletteGroup_128
+ .4byte gPaletteGroup_129
+ .4byte gPaletteGroup_130
+ .4byte gPaletteGroup_131
+ .4byte gPaletteGroup_132
+ .4byte gPaletteGroup_133
+ .4byte gPaletteGroup_134
+ .4byte gPaletteGroup_135
+ .4byte gPaletteGroup_136
+ .4byte gPaletteGroup_137
+ .4byte gPaletteGroup_138
+ .4byte gPaletteGroup_139
+ .4byte gPaletteGroup_140
+ .4byte gPaletteGroup_141
+ .4byte gPaletteGroup_142
+ .4byte gPaletteGroup_143
+ .4byte gPaletteGroup_144
+ .4byte gPaletteGroup_145
+ .4byte gPaletteGroup_146
+ .4byte gPaletteGroup_147
+ .4byte gPaletteGroup_148
+ .4byte gPaletteGroup_149
+ .4byte gPaletteGroup_150
+ .4byte gPaletteGroup_151
+ .4byte gPaletteGroup_152
+ .4byte gPaletteGroup_153
+ .4byte gPaletteGroup_154
+ .4byte gPaletteGroup_155
+ .4byte gPaletteGroup_156
+ .4byte gPaletteGroup_157
+ .4byte gPaletteGroup_158
+ .4byte gPaletteGroup_159
+ .4byte gPaletteGroup_160
+ .4byte gPaletteGroup_161
+ .4byte gPaletteGroup_162
+ .4byte gPaletteGroup_163
+ .4byte gPaletteGroup_164
+ .4byte gPaletteGroup_165
+ .4byte gPaletteGroup_166
+ .4byte gPaletteGroup_167
+ .4byte gPaletteGroup_168
+ .4byte gPaletteGroup_169
+ .4byte gPaletteGroup_170
+ .4byte gPaletteGroup_171
+ .4byte gPaletteGroup_172
+ .4byte gPaletteGroup_173
+ .4byte gPaletteGroup_174
+ .4byte gPaletteGroup_175
+ .4byte gPaletteGroup_176
+ .4byte gPaletteGroup_177
+ .4byte gPaletteGroup_178
+ .4byte gPaletteGroup_179
+ .4byte gPaletteGroup_180
+ .4byte gPaletteGroup_181
+ .4byte gPaletteGroup_182
+ .4byte gPaletteGroup_183
+ .4byte gPaletteGroup_184
+ .4byte gPaletteGroup_185
+ .4byte gPaletteGroup_186
+ .4byte gPaletteGroup_187
+ .4byte gPaletteGroup_188
+ .4byte gPaletteGroup_189
+ .4byte gPaletteGroup_190
+ .4byte gPaletteGroup_191
+ .4byte gPaletteGroup_192
+ .4byte gPaletteGroup_193
+ .4byte gPaletteGroup_194
+ .4byte gPaletteGroup_195
+ .4byte gPaletteGroup_196
+ .4byte gPaletteGroup_197
+ .4byte gPaletteGroup_198
+ .4byte gPaletteGroup_199
.4byte gPaletteGroup_200
.4byte gPaletteGroup_201
.4byte gPaletteGroup_202
@@ -4243,105 +4342,6 @@ gPaletteGroups::
.4byte gPaletteGroup_204
.4byte gPaletteGroup_205
.4byte gPaletteGroup_206
- .4byte gPaletteGroup_207
- .4byte gPaletteGroup_208
- .4byte gPaletteGroup_209
- .4byte gPaletteGroup_210
- .4byte gPaletteGroup_211
- .4byte gPaletteGroup_212
- .4byte gPaletteGroup_213
- .4byte gPaletteGroup_214
- .4byte gPaletteGroup_215
- .4byte gPaletteGroup_216
- .4byte gPaletteGroup_217
- .4byte gPaletteGroup_218
- .4byte gPaletteGroup_219
- .4byte gPaletteGroup_220
- .4byte gPaletteGroup_221
- .4byte gPaletteGroup_222
- .4byte gPaletteGroup_223
- .4byte gPaletteGroup_224
- .4byte gPaletteGroup_225
- .4byte gPaletteGroup_226
- .4byte gPaletteGroup_227
- .4byte gPaletteGroup_228
- .4byte gPaletteGroup_229
- .4byte gPaletteGroup_230
- .4byte gPaletteGroup_231
- .4byte gPaletteGroup_232
- .4byte gPaletteGroup_233
- .4byte gPaletteGroup_234
- .4byte gPaletteGroup_235
- .4byte gPaletteGroup_236
- .4byte gPaletteGroup_237
- .4byte gPaletteGroup_238
- .4byte gPaletteGroup_239
- .4byte gPaletteGroup_240
- .4byte gPaletteGroup_241
- .4byte gPaletteGroup_242
- .4byte gPaletteGroup_243
- .4byte gPaletteGroup_244
- .4byte gPaletteGroup_245
- .4byte gPaletteGroup_246
- .4byte gPaletteGroup_247
- .4byte gPaletteGroup_248
- .4byte gPaletteGroup_249
- .4byte gPaletteGroup_250
- .4byte gPaletteGroup_251
- .4byte gPaletteGroup_252
- .4byte gPaletteGroup_253
- .4byte gPaletteGroup_254
- .4byte gPaletteGroup_255
- .4byte gPaletteGroup_256
- .4byte gPaletteGroup_257
- .4byte gPaletteGroup_258
- .4byte gPaletteGroup_259
- .4byte gPaletteGroup_260
- .4byte gPaletteGroup_261
- .4byte gPaletteGroup_262
- .4byte gPaletteGroup_263
- .4byte gPaletteGroup_264
- .4byte gPaletteGroup_265
- .4byte gPaletteGroup_266
- .4byte gPaletteGroup_267
- .4byte gPaletteGroup_268
- .4byte gPaletteGroup_269
- .4byte gPaletteGroup_270
- .4byte gPaletteGroup_271
- .4byte gPaletteGroup_272
- .4byte gPaletteGroup_273
- .4byte gPaletteGroup_274
- .4byte gPaletteGroup_275
- .4byte gPaletteGroup_276
- .4byte gPaletteGroup_277
- .4byte gPaletteGroup_278
- .4byte gPaletteGroup_279
- .4byte gPaletteGroup_280
- .4byte gPaletteGroup_281
- .4byte gPaletteGroup_282
- .4byte gPaletteGroup_283
- .4byte gPaletteGroup_284
- .4byte gPaletteGroup_285
- .4byte gPaletteGroup_286
- .4byte gPaletteGroup_287
- .4byte gPaletteGroup_288
- .4byte gPaletteGroup_289
- .4byte gPaletteGroup_290
- .4byte gPaletteGroup_291
- .4byte gPaletteGroup_292
- .4byte gPaletteGroup_293
- .4byte gPaletteGroup_294
- .4byte gPaletteGroup_295
- .4byte gPaletteGroup_296
- .4byte gPaletteGroup_297
- .4byte gPaletteGroup_298
- .4byte gPaletteGroup_299
- .4byte gPaletteGroup_300
- .4byte gPaletteGroup_301
- .4byte gPaletteGroup_302
- .4byte gPaletteGroup_303
- .4byte gPaletteGroup_304
- .4byte gPaletteGroup_305
.ifndef EU
- .4byte gPaletteGroup_306
+ .4byte gPaletteGroup_207
.endif
diff --git a/include/main.h b/include/main.h
index bb301dcc..a5680d10 100644
--- a/include/main.h
+++ b/include/main.h
@@ -71,6 +71,7 @@ typedef struct {
/**
* HUD structure.
*/
+// TODO Rather a structure more generally about gfx?
typedef struct {
/*0x000*/ u8 nextToLoad;
/*0x001*/ u8 _1;
diff --git a/include/structures.h b/include/structures.h
index 8de98b91..27287719 100644
--- a/include/structures.h
+++ b/include/structures.h
@@ -90,9 +90,23 @@ typedef struct {
u32* firstTile;
} UIElement;
+typedef enum {
+ HUD_HIDE_NONE,
+ HUD_HIDE_1 = 0x1, // A
+ HUD_HIDE_2 = 0x2, // B
+ HUD_HIDE_4 = 0x4, // R
+ HUD_HIDE_8 = 0x8,
+ HUD_HIDE_HEARTS = 0x10,
+ HUD_HIDE_CHARGE_BAR = 0x20,
+ HUD_HIDE_RUPEES = 0x40,
+ HUD_HIDE_KEYS = 0x80,
+
+ HUD_HIDE_ALL = 0xff
+} HUDHideFlags;
+
typedef struct {
u8 unk_0;
- u8 unk_1;
+ u8 hideFlags;
u8 unk_2;
u8 health;
u8 maxHealth;
@@ -125,8 +139,8 @@ typedef struct {
u8 unk_32;
u8 unk_33;
UIElement elements[MAX_UI_ELEMENTS];
-} struct_0200AF00;
-extern struct_0200AF00 gUnk_0200AF00;
+} HUD;
+extern HUD gHUD;
#define MAX_GFX_SLOTS 44
diff --git a/linker.ld b/linker.ld
index 5dbca29a..c2f5db8d 100644
--- a/linker.ld
+++ b/linker.ld
@@ -31,7 +31,7 @@ SECTIONS {
. = 0x00002A40; gSave = .;
. = 0x00002F00; gMapDataTopSpecial = .;
. = 0x00006F00; gUnk_02006F00 = .;
- . = 0x0000AF00; gUnk_0200AF00 = .;
+ . = 0x0000AF00; gHUD = .;
. = 0x0000AF34; gUnk_0200AF34 = .;
. = 0x0000B240; gUnk_0200B240 = .;
. = 0x0000B640; gUnk_0200B640 = .;
diff --git a/src/beanstalkSubtask.c b/src/beanstalkSubtask.c
index e2b77f97..4612e66b 100644
--- a/src/beanstalkSubtask.c
+++ b/src/beanstalkSubtask.c
@@ -310,7 +310,7 @@ u32 UpdatePlayerCollision(void) {
if (gPlayerEntity.animationState != 0) {
return 0;
}
- gUnk_0200AF00.unk_2d = 4;
+ gHUD.unk_2d = 4;
if ((gPlayerState.playerInput.newInput & (PLAYER_INPUT_80 | PLAYER_INPUT_40)) == 0) {
return 0;
}
@@ -324,7 +324,7 @@ u32 UpdatePlayerCollision(void) {
if ((gPlayerState.flags & 0x4080) != 0) {
return 0;
}
- gUnk_0200AF00.unk_2d = 6;
+ gHUD.unk_2d = 6;
if ((gPlayerState.playerInput.newInput & (PLAYER_INPUT_80 | PLAYER_INPUT_8)) == 0) {
return 0;
}
@@ -335,7 +335,7 @@ u32 UpdatePlayerCollision(void) {
if (HasDungeonMap() == 0) {
return 0;
}
- gUnk_0200AF00.unk_2d = 6;
+ gHUD.unk_2d = 6;
if ((gPlayerState.playerInput.newInput & (PLAYER_INPUT_80 | PLAYER_INPUT_8)) == 0) {
return 0;
}
diff --git a/src/fileselect.c b/src/fileselect.c
index 5324661c..bc54c39b 100644
--- a/src/fileselect.c
+++ b/src/fileselect.c
@@ -404,7 +404,7 @@ static void HandleFileScreenEnter(void) {
ClearTilemaps();
ResetPalettes();
ResetPaletteTable(0);
- MemClear(&gUnk_0200AF00, sizeof(gUnk_0200AF00));
+ MemClear(&gHUD, sizeof(gHUD));
MemClear(&gMapDataBottomSpecial, sizeof(gMapDataBottomSpecial));
gMapDataBottomSpecial.unk3 = 7;
gMapDataBottomSpecial.unk6 = gSaveHeader->language > LANGUAGE_EN ? 3 : 0;
@@ -543,13 +543,13 @@ void sub_08050790(void) {
}
static void HideButtonR(void) {
- gUnk_0200AF00.buttonX[2] = 0x140;
- gUnk_0200AF00.buttonY[2] = 0x24;
+ gHUD.buttonX[2] = 0x140;
+ gHUD.buttonY[2] = 0x24;
}
static void ShowButtonR(void) {
- gUnk_0200AF00.buttonX[2] = 0xD0;
- gUnk_0200AF00.buttonY[2] = 0x24;
+ gHUD.buttonX[2] = 0xD0;
+ gHUD.buttonY[2] = 0x24;
}
static void HandleFileSelect(void) {
diff --git a/src/gameUtils.c b/src/gameUtils.c
index d9a9319b..75ec1ca5 100644
--- a/src/gameUtils.c
+++ b/src/gameUtils.c
@@ -432,7 +432,7 @@ bool32 CanDispEzloMessage(void) {
s32 tmp = PL_STATE_WALK;
if (!(gInput.heldKeys & SELECT_BUTTON) || gPlayerState.controlMode != CONTROL_ENABLED ||
- gPauseMenuOptions.disabled || gUnk_0200AF00.unk_1)
+ gPauseMenuOptions.disabled || gHUD.hideFlags != HUD_HIDE_NONE)
return FALSE;
if ((gPlayerState.flags & (PL_NO_CAP | PL_CAPTURED | PL_DISABLE_ITEMS)) || (gPlayerState.framestate_last > tmp) ||
diff --git a/src/interrupts.c b/src/interrupts.c
index 33a7d5e7..db6cb6c2 100644
--- a/src/interrupts.c
+++ b/src/interrupts.c
@@ -225,9 +225,9 @@ void PlayerUpdate(Entity* this) {
static void HandlePlayerLife(Entity* this) {
u32 temp;
- gUnk_0200AF00.unk_2f = 0;
- gUnk_0200AF00.unk_2d = 0;
- gUnk_0200AF00.unk_2e = 0;
+ gHUD.unk_2f = 0;
+ gHUD.unk_2d = 0;
+ gHUD.unk_2e = 0;
if ((gPlayerEntity.contactFlags & 0x80) && (gPlayerEntity.iframes > 0))
SoundReq(SFX_86);
@@ -255,7 +255,7 @@ static void HandlePlayerLife(Entity* this) {
return;
#ifdef EU
- if ((gUnk_0200AF00.unk_1 == 0) && gRoomTransition.frameCount % 90 == 0) {
+ if ((gHUD.hideFlags == HUD_HIDE_NONE) && gRoomTransition.frameCount % 90 == 0) {
temp = gSave.stats.maxHealth / 4;
if (temp > 24)
temp = 24;
@@ -276,7 +276,7 @@ static void HandlePlayerLife(Entity* this) {
if (gSave.stats.health <= temp) {
gRoomVars.unk2 = 1;
- if ((gUnk_0200AF00.unk_1 == 0) && gRoomTransition.frameCount % 90 == 0) {
+ if ((gHUD.hideFlags == HUD_HIDE_NONE) && gRoomTransition.frameCount % 90 == 0) {
EnqueueSFX(SFX_LOW_HEALTH);
}
}
@@ -323,7 +323,7 @@ static void sub_080171F0(void) {
sub_080028E0(&gPlayerEntity);
if (gPlayerState.flags & PL_CLONING)
- gUnk_0200AF00.unk_2f = 1;
+ gHUD.unk_2f = 1;
sub_08078180();
gPlayerState.field_0x7 &= ~0x80;
diff --git a/src/item/itemTryPickupObject.c b/src/item/itemTryPickupObject.c
index 8a7b40dc..ace68c5d 100644
--- a/src/item/itemTryPickupObject.c
+++ b/src/item/itemTryPickupObject.c
@@ -95,7 +95,7 @@ void ItemPickupCheck(ItemBehavior* this, u32 index) {
carried->subAction = 5;
gPlayerState.framestate = PL_STATE_THROW;
sub_080762C4(this, carried, 2, index);
- gUnk_0200AF00.unk_2e = 8;
+ gHUD.unk_2e = 8;
SoundReq(SFX_102);
break;
case 1:
diff --git a/src/itemUtils.c b/src/itemUtils.c
index 36ed6bbf..c77bfa84 100644
--- a/src/itemUtils.c
+++ b/src/itemUtils.c
@@ -304,8 +304,8 @@ void ForceEquipItem(u32 itemId, u32 equipSlot) {
}
gSave.stats.itemButtons[equipSlot] = itemId;
gSave.stats.itemButtons[otherItemSlot] = otherItem;
- gUnk_0200AF00.unk_13 = 0x7f;
- gUnk_0200AF00.unk_14 = 0x7f;
+ gHUD.unk_13 = 0x7f;
+ gHUD.unk_14 = 0x7f;
}
}
diff --git a/src/menu/figurineMenu.c b/src/menu/figurineMenu.c
index 2a19f06d..5e0c7563 100644
--- a/src/menu/figurineMenu.c
+++ b/src/menu/figurineMenu.c
@@ -592,7 +592,7 @@ void sub_080A4DB8(u32 param_1) {
MemClear(&gBG0Buffer, sizeof(gBG0Buffer));
MemClear(&gBG1Buffer, sizeof(gBG1Buffer));
MemClear(&gBG2Buffer, sizeof(gBG2Buffer));
- MemClear(gUnk_0200AF00.elements, sizeof(gUnk_0200AF00.elements));
+ MemClear(gHUD.elements, sizeof(gHUD.elements));
MemClear(&gFigurineMenu, sizeof(gFigurineMenu));
gFigurineMenu.unk2e = -1;
gMenu.field_0x3 = gPauseMenuOptions.unk2[param_1];
diff --git a/src/menu/pauseMenu.c b/src/menu/pauseMenu.c
index 39573fe5..652522fd 100644
--- a/src/menu/pauseMenu.c
+++ b/src/menu/pauseMenu.c
@@ -763,13 +763,13 @@ void sub_080A56A0(void) {
case 0:
case 2:
if (gGenericMenu.unk10.a[gMenu.field_0x3] != 0) {
- gUnk_0200AF00.buttonY[0] = 0x10;
+ gHUD.buttonY[0] = 0x10;
} else {
- gUnk_0200AF00.buttonY[0] = 0xfff0;
+ gHUD.buttonY[0] = 0xfff0;
}
break;
default:
- gUnk_0200AF00.buttonY[0] = 0xfff0;
+ gHUD.buttonY[0] = 0xfff0;
break;
}
diff --git a/src/object/crenelBeanSprout.c b/src/object/crenelBeanSprout.c
index a0fb206d..70279d9a 100644
--- a/src/object/crenelBeanSprout.c
+++ b/src/object/crenelBeanSprout.c
@@ -172,9 +172,9 @@ void CrenelBeanSprout_Action1(CrenelBeanSproutEntity* this) {
this->unk_70 = ((super->x.HALF.HI + (s8)gUnk_08123184[tmp]) & -0x10) | 8;
this->unk_72 = ((super->y.HALF.HI + (s8)gUnk_08123184[(tmp) + 1]) & -0x10) | 8;
if (sub_080B1AB4(this->unk_70, this->unk_72, super->collisionLayer) == 0x19) {
- gUnk_0200AF00.unk_2f = 3;
+ gHUD.unk_2f = 3;
} else {
- gUnk_0200AF00.unk_2f = 0;
+ gHUD.unk_2f = 0;
}
PositionRelative(&gPlayerEntity, super, 0, 0x10000);
if (GetTileUnderEntity(super) == 0x19) {
@@ -184,7 +184,7 @@ void CrenelBeanSprout_Action1(CrenelBeanSproutEntity* this) {
if ((gPlayerState.playerInput.newInput & (PLAYER_INPUT_80 | PLAYER_INPUT_40)) == 0) {
return;
}
- if (gUnk_0200AF00.unk_2f != 3) {
+ if (gHUD.unk_2f != 3) {
return;
}
gPlayerState.heldObject = 0;
diff --git a/src/object/itemForSale.c b/src/object/itemForSale.c
index e4629fa1..dfef44de 100644
--- a/src/object/itemForSale.c
+++ b/src/object/itemForSale.c
@@ -85,7 +85,7 @@ void ItemForSale_Init(ItemForSaleEntity* this) {
void ItemForSale_Action1(ItemForSaleEntity* this) {
if (super->subAction != 0) {
super->action = 2;
- gUnk_0200AF00.unk_2f = 2;
+ gHUD.unk_2f = 2;
} else {
if (super->type == 0x36) {
if (super->interactType != 0) {
@@ -102,7 +102,7 @@ void ItemForSale_Action1(ItemForSaleEntity* this) {
ResetActiveItems();
gPlayerState.heldObject = 4;
gNewPlayerEntity.unk_74 = super;
- gUnk_0200AF00.unk_2f = 2;
+ gHUD.unk_2f = 2;
MessageClose();
}
}
@@ -112,14 +112,14 @@ void ItemForSale_Action1(ItemForSaleEntity* this) {
void ItemForSale_Action2(ItemForSaleEntity* this) {
void* ptr;
- gUnk_0200AF00.unk_2f = 2;
+ gHUD.unk_2f = 2;
super->spriteSettings.draw = gPlayerEntity.spriteSettings.draw;
if ((gPlayerState.heldObject == 0) || (super != gNewPlayerEntity.unk_74)) {
sub_080819B4(this);
} else {
ptr = sub_080784E4();
if (((*(int*)(ptr + 8) == 0) ||
- ((*(u8*)(ptr + 1) != 1 || (gUnk_0200AF00.unk_2f = 7, (gPlayerState.playerInput.newInput &
+ ((*(u8*)(ptr + 1) != 1 || (gHUD.unk_2f = 7, (gPlayerState.playerInput.newInput &
(PLAYER_INPUT_80 | PLAYER_INPUT_8)) == 0)))) &&
((gPlayerState.playerInput.newInput & (PLAYER_INPUT_80 | PLAYER_INPUT_10 | PLAYER_INPUT_8)) != 0)) {
sub_080819B4(this);
@@ -130,7 +130,7 @@ void ItemForSale_Action2(ItemForSaleEntity* this) {
void sub_080819B4(ItemForSaleEntity* this) {
Entity* parent;
u8* puVar2;
- struct_0200AF00* ptr;
+ HUD* ptr;
if (gRoomVars.shopItemType == 0) {
if (super->parent != NULL) {
@@ -140,7 +140,7 @@ void sub_080819B4(ItemForSaleEntity* this) {
}
gPlayerState.heldObject = 0;
gNewPlayerEntity.unk_74 = 0;
- ptr = &gUnk_0200AF00;
+ ptr = &gHUD;
gRoomVars.shopItemType = 0;
ptr->unk_2c = 0;
ptr->unk_2f = 0;
diff --git a/src/player.c b/src/player.c
index d5f7a4e7..cd32e8c9 100644
--- a/src/player.c
+++ b/src/player.c
@@ -1830,7 +1830,7 @@ static void PlayerPull(Entity* this) {
gPlayerState.framestate = PL_STATE_PULL;
sPlayerPullStates[this->subAction](this);
- gUnk_0200AF00.unk_2e = 8;
+ gHUD.unk_2e = 8;
}
static void sub_08072214(Entity* this) {
@@ -2756,7 +2756,7 @@ static void sub_08073584(Entity* this) {
return;
}
- gUnk_0200AF00.unk_2f = 1;
+ gHUD.unk_2f = 1;
if (sub_0807A2F8(0)) {
this->subAction++;
this->direction = 4 * (this->animationState & 6);
diff --git a/src/playerUtils.c b/src/playerUtils.c
index e73e6dff..ffacff28 100644
--- a/src/playerUtils.c
+++ b/src/playerUtils.c
@@ -208,7 +208,7 @@ bool32 IsPreventedFromUsingItem(void) {
}
return FALSE;
default:
- if ((((gUnk_0200AF00.unk_2c == 0xc) && (gPlayerState.field_0x1c == 0)) &&
+ if ((((gHUD.unk_2c == 0xc) && (gPlayerState.field_0x1c == 0)) &&
(gPlayerState.floor_type != SURFACE_SWAMP)) &&
((((gPlayerState.playerInput.heldInput & PLAYER_INPUT_ANY_DIRECTION) != 0 &&
((gPlayerState.flags & (PL_BURNING | PL_ROLLING)) == 0)) &&
@@ -970,21 +970,21 @@ void sub_08078180(void) {
u8 uVar3;
struct_03003DF8* ptr;
- if (gUnk_0200AF00.unk_2f != 0)
+ if (gHUD.unk_2f != 0)
return;
uVar1 = 0;
if ((gPlayerState.jump_status == 0) &&
((gPlayerState.flags & (PL_IN_HOLE | PL_FROZEN | PL_BURNING | PL_DISABLE_ITEMS | PL_DRUGGED)) == 0)) {
if ((u8)(gPlayerState.heldObject - 1) < 4) {
- if (gUnk_0200AF00.unk_2e != 0) {
- uVar1 = gUnk_0200AF00.unk_2e;
+ if (gHUD.unk_2e != 0) {
+ uVar1 = gHUD.unk_2e;
} else {
uVar1 = 3;
}
} else {
- if (gUnk_0200AF00.unk_2d != 0) {
- uVar1 = gUnk_0200AF00.unk_2d;
+ if (gHUD.unk_2d != 0) {
+ uVar1 = gHUD.unk_2d;
} else {
ptr = sub_080784E4();
if (ptr->entity->interactType == 0) {
@@ -1034,7 +1034,7 @@ void sub_08078180(void) {
}
}
}
- gUnk_0200AF00.unk_2c = uVar1;
+ gHUD.unk_2c = uVar1;
}
bool32 sub_080782C0(void) {
diff --git a/src/script.c b/src/script.c
index 78e355b1..29cee3df 100644
--- a/src/script.c
+++ b/src/script.c
@@ -446,13 +446,13 @@ void DisablePauseMenuAndPutAwayItems(void) {
}
void DisablePauseMenu(void) {
- gUnk_0200AF00.unk_1 = 0xff;
+ gHUD.hideFlags = HUD_HIDE_ALL;
gPauseMenuOptions.disabled = 0xff;
}
void EnablePauseMenu(void) {
gPauseMenuOptions.disabled = 0;
- gUnk_0200AF00.unk_1 = 0;
+ gHUD.hideFlags = HUD_HIDE_NONE;
RecoverUI(0, 0);
ResetPlayerAnimationAndAction();
PlayerDropHeldObject();
diff --git a/src/subtask.c b/src/subtask.c
index 864d3550..3cae246b 100644
--- a/src/subtask.c
+++ b/src/subtask.c
@@ -117,18 +117,18 @@ void sub_080A7040(u32 param_1) {
}
void sub_080A70AC(const KeyButtonLayout* layout) {
- MemClear(&gUnk_0200AF00.elements, 0x300);
- gUnk_0200AF00.unk_13 = 0x7f;
- gUnk_0200AF00.unk_14 = 0x7f;
- gUnk_0200AF00.buttonX[0] = layout->aButtonX;
- gUnk_0200AF00.buttonY[0] = (s8)layout->aButtonY;
- gUnk_0200AF00.unk_30[0] = layout->aButtonText;
- gUnk_0200AF00.buttonX[1] = layout->bButtonX;
- gUnk_0200AF00.buttonY[1] = (s8)layout->bButtonY;
- gUnk_0200AF00.unk_30[1] = layout->bButtonText;
- gUnk_0200AF00.buttonX[2] = layout->rButtonX;
- gUnk_0200AF00.buttonY[2] = (s8)layout->rButtonY;
- gUnk_0200AF00.unk_32 = layout->rButtonText;
+ MemClear(&gHUD.elements, 0x300);
+ gHUD.unk_13 = 0x7f;
+ gHUD.unk_14 = 0x7f;
+ gHUD.buttonX[0] = layout->aButtonX;
+ gHUD.buttonY[0] = (s8)layout->aButtonY;
+ gHUD.unk_30[0] = layout->aButtonText;
+ gHUD.buttonX[1] = layout->bButtonX;
+ gHUD.buttonY[1] = (s8)layout->bButtonY;
+ gHUD.unk_30[1] = layout->bButtonText;
+ gHUD.buttonX[2] = layout->rButtonX;
+ gHUD.buttonY[2] = (s8)layout->rButtonY;
+ gHUD.unk_32 = layout->rButtonText;
layout++;
do {
CreateUIElement(layout->aButtonX, layout->aButtonY);
diff --git a/src/ui.c b/src/ui.c
index f412560d..1abad8dd 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -1,13 +1,14 @@
+#include "area.h"
+#include "common.h"
+#include "functions.h"
+#include "game.h"
#include "global.h"
-#include "sound.h"
#include "message.h"
-#include "functions.h"
-#include "screen.h"
-#include "common.h"
-#include "save.h"
#include "player.h"
-#include "area.h"
-#include "game.h"
+#include "save.h"
+#include "screen.h"
+#include "sound.h"
+#include "structures.h"
extern void sub_0805ECEC(u32, u32, u32, u32);
extern bool32 ItemIsBottle(u32);
@@ -106,7 +107,7 @@ void UpdateUIElements(void) {
UIElement* element;
const UIElementDefinition* definition;
for (index = 0; index < MAX_UI_ELEMENTS; index++) {
- element = &gUnk_0200AF00.elements[index];
+ element = &gHUD.elements[index];
if (element->used != 0) {
definition = &gUIElementDefinitions[element->type];
definition->updateFunction(element);
@@ -120,7 +121,7 @@ void DrawUIElements(void) {
UIElementDefinition* definition;
index = 0;
for (index = 0; index < MAX_UI_ELEMENTS; index++) {
- element = &gUnk_0200AF00.elements[index];
+ element = &gHUD.elements[index];
if (element->used == 1 && element->unk_0_1 == 1) {
gOamCmd.x = element->x;
gOamCmd.y = element->y;
@@ -140,7 +141,7 @@ void sub_0801C25C(void) {
UIElement* element;
for (index = 0; index < MAX_UI_ELEMENTS; index++) {
- element = &gUnk_0200AF00.elements[index];
+ element = &gHUD.elements[index];
if (((element->used) == 1) && ((element->unk_0_1) == 1)) {
u8 temp = element->unk_0_2;
if (temp == 1) {
@@ -149,14 +150,14 @@ void sub_0801C25C(void) {
}
}
}
- if (gUnk_0200AF00.unk_13 < 0) {
- tmp = gUnk_0200AF00.unk_13 & 0x7f;
- gUnk_0200AF00.unk_13 = tmp;
+ if (gHUD.unk_13 < 0) {
+ tmp = gHUD.unk_13 & 0x7f;
+ gHUD.unk_13 = tmp;
sub_0801C2F0(0x11a, tmp);
}
- if (gUnk_0200AF00.unk_14 < 0) {
- tmp = gUnk_0200AF00.unk_14 & 0x7f;
- gUnk_0200AF00.unk_14 = tmp;
+ if (gHUD.unk_14 < 0) {
+ tmp = gHUD.unk_14 & 0x7f;
+ gHUD.unk_14 = tmp;
sub_0801C2F0(0x126, tmp);
}
}
@@ -177,12 +178,12 @@ void sub_0801C2F0(u32 param_1, u32 param_2) {
}
void DrawUI(void) {
- gUnk_0200AF00.unk_0 &= ~gUnk_0200AF00.unk_1;
+ gHUD.unk_0 &= ~gHUD.hideFlags;
DrawHearts();
DrawChargeBar();
DrawRupees();
DrawKeys();
- gUnk_0200AF00.unk_0 = 0;
+ gHUD.unk_0 = 0;
UpdateUIElements();
}
@@ -194,13 +195,13 @@ void InitUI(bool32 keepHealthAndRupees) {
health = gSave.stats.health >> 1;
rupees = gSave.stats.rupees;
} else {
- health = gUnk_0200AF00.health;
- rupees = gUnk_0200AF00.rupees;
+ health = gHUD.health;
+ rupees = gHUD.rupees;
}
- MemClear(&gUnk_0200AF00, sizeof(struct_0200AF00));
- gUnk_0200AF00.health = health;
- gUnk_0200AF00.rupees = rupees;
- gUnk_0200AF00.maxHealth = gSave.stats.maxHealth >> 1;
+ MemClear(&gHUD, sizeof(HUD));
+ gHUD.health = health;
+ gHUD.rupees = rupees;
+ gHUD.maxHealth = gSave.stats.maxHealth >> 1;
LoadPaletteGroup(0xc);
LoadGfxGroup(0x10);
MemClear(&gBG0Buffer, sizeof(gBG0Buffer));
@@ -210,21 +211,21 @@ void InitUI(bool32 keepHealthAndRupees) {
gOAMControls.unk[0].unk7 = 1;
gOAMControls.unk[0].unk6 = 1;
gOAMControls.unk[1].unk6 = 1;
- gUnk_0200AF00.unk_13 = 0x7f;
- gUnk_0200AF00.unk_14 = 0x7f;
- gUnk_0200AF00.unk_8 = 0x7f;
+ gHUD.unk_13 = 0x7f;
+ gHUD.unk_14 = 0x7f;
+ gHUD.unk_8 = 0x7f;
DrawHearts();
DrawRupees();
DrawChargeBar();
DrawKeys();
- gUnk_0200AF00.buttonX[0] = 0xd0;
- gUnk_0200AF00.buttonX[1] = 0xb8;
- gUnk_0200AF00.buttonX[2] = 0xd8;
- gUnk_0200AF00.buttonY[0] = 0x1c;
- gUnk_0200AF00.buttonY[1] = 0x1c;
- gUnk_0200AF00.buttonY[2] = 0xe;
+ gHUD.buttonX[0] = 0xd0;
+ gHUD.buttonX[1] = 0xb8;
+ gHUD.buttonX[2] = 0xd8;
+ gHUD.buttonY[0] = 0x1c;
+ gHUD.buttonY[1] = 0x1c;
+ gHUD.buttonY[2] = 0xe;
// TODO why is this array cleared again? Is it filled by the function calls in the mean time?
- MemClear(gUnk_0200AF00.elements, sizeof(gUnk_0200AF00.elements));
+ MemClear(gHUD.elements, sizeof(gHUD.elements));
CreateUIElement(UI_ELEMENT_TEXT_R, 9);
CreateUIElement(UI_ELEMENT_ITEM_A, 0);
CreateUIElement(UI_ELEMENT_ITEM_B, 0);
@@ -240,9 +241,9 @@ void RefreshUI(void) {
}
void RecoverUI(u32 bottomPt, u32 topPt) {
- gUnk_0200AF00.unk_2 = 0;
- gUnk_0200AF00.unk_10 = 0;
- gUnk_0200AF00.unk_a = 0;
+ gHUD.unk_2 = 0;
+ gHUD.unk_10 = 0;
+ gHUD.unk_a = 0;
}
void DrawRupees(void) {
@@ -254,9 +255,9 @@ void DrawRupees(void) {
const u16* ptr3;
struct_02035160* ptr4;
- if ((gUnk_0200AF00.unk_1 & 0x40) != 0) {
- if (gUnk_0200AF00.unk_a != 0) {
- gUnk_0200AF00.unk_a = 0;
+ if (gHUD.hideFlags & HUD_HIDE_RUPEES) {
+ if (gHUD.unk_a != 0) {
+ gHUD.unk_a = 0;
ptr4 = &gUnk_02035160;
ptr = &ptr4->unk_0;
ptr->unk_0 = 0;
@@ -273,8 +274,8 @@ void DrawRupees(void) {
gScreen.bg0.updated = 1;
}
} else {
- if (gUnk_0200AF00.unk_a == 0) {
- gUnk_0200AF00.unk_a = 2;
+ if (gHUD.unk_a == 0) {
+ gHUD.unk_a = 2;
ptr4 = &gUnk_02035160;
ptr2 = &ptr4->unk_40;
ptr3 = gWalletSizes;
@@ -295,33 +296,35 @@ void DrawRupees(void) {
cVar1 = 0;
}
- if (gUnk_0200AF00.rupees != gSave.stats.rupees) {
- if (gUnk_0200AF00.rupees < gSave.stats.rupees) {
- gUnk_0200AF00.rupees++;
+ if (gHUD.rupees != gSave.stats.rupees) {
+ if (gHUD.rupees < gSave.stats.rupees) {
+ gHUD.rupees++;
} else {
- gUnk_0200AF00.rupees--;
+ gHUD.rupees--;
}
cVar1 = 2;
}
switch (cVar1) {
case 2:
- temp = gUnk_0200AF00.unk_c;
+ temp = gHUD.unk_c;
temp &= 3;
if ((temp) == 0) {
SoundReq(SFX_RUPEE_GET);
}
case 1:
- DrawDigits(0x70, gUnk_0200AF00.rupees,
- (u16)gWalletSizes[(u32)gSave.stats.walletType * 2] <= gUnk_0200AF00.rupees, 3);
- cVar1 = gUnk_0200AF00.unk_c + 1;
+ DrawDigits(0x70, gHUD.rupees,
+ (u16)gWalletSizes[(u32)gSave.stats.walletType * 2] <= gHUD.rupees, 3);
+ cVar1 = gHUD.unk_c + 1;
default:
- gUnk_0200AF00.unk_c = cVar1;
+ gHUD.unk_c = cVar1;
break;
}
}
}
-// Draw icon with text for rupees or keys
+/**
+ * Draw icon with text for rupees or keys
+*/
void DrawDigits(u32 iconVramIndex, u32 count, u32 isTextYellow, u32 digits) {
int iVar2;
int iVar3;
@@ -357,9 +360,9 @@ void sub_0801C66C(void) {
struct_02034CF0* ptr;
s32 index;
- if (gUnk_0200AF00.unk_2 != 0) {
- gUnk_0200AF00.unk_2 = 0;
- if (gUnk_0200AF00.maxHealth > 0x28) {
+ if (gHUD.unk_2 != 0) {
+ gHUD.unk_2 = 0;
+ if (gHUD.maxHealth > 0x28) {
index = 2;
} else {
index = 1;
@@ -390,14 +393,14 @@ void DrawHearts(void) {
s32 tmp1;
u16* ptr2;
- if ((gUnk_0200AF00.unk_1 & 0x10) != 0) {
+ if (gHUD.hideFlags & HUD_HIDE_HEARTS) {
sub_0801C824();
sub_0801C66C();
return;
}
maxHealth = gSave.stats.maxHealth / 2;
- if (maxHealth != gUnk_0200AF00.maxHealth) {
- gUnk_0200AF00.maxHealth = maxHealth;
+ if (maxHealth != gHUD.maxHealth) {
+ gHUD.maxHealth = maxHealth;
sub_0801C824();
sub_0801C66C();
}
@@ -410,35 +413,35 @@ void DrawHearts(void) {
health = maxHealth;
}
maxHealth = 0;
- if (health != gUnk_0200AF00.health) {
+ if (health != gHUD.health) {
maxHealth = 1;
- if (health > gUnk_0200AF00.health) {
+ if (health > gHUD.health) {
maxHealth = 2;
}
}
switch (maxHealth) {
case 2:
- uVar1 = gUnk_0200AF00.unk_5++;
+ uVar1 = gHUD.unk_5++;
if ((uVar1 & 1) == 0) {
if ((uVar1 & 7) == 0) {
SoundReq(SFX_HEART_GET);
}
- gUnk_0200AF00.health++;
+ gHUD.health++;
} else {
maxHealth = 0;
}
break;
case 1:
- gUnk_0200AF00.health--;
+ gHUD.health--;
// fallthough
default:
- gUnk_0200AF00.unk_5 = 0;
+ gHUD.unk_5 = 0;
break;
}
- if ((gUnk_0200AF00.unk_2 == 0) || (maxHealth != 0)) {
- gUnk_0200AF00.unk_2 = 2;
- uVar2 = gUnk_0200AF00.health >> 2;
+ if ((gHUD.unk_2 == 0) || (maxHealth != 0)) {
+ gHUD.unk_2 = 2;
+ uVar2 = gHUD.health >> 2;
if (uVar2 > 10) {
tmp1 = 10;
uVar6 = uVar2 - 10;
@@ -447,7 +450,7 @@ void DrawHearts(void) {
uVar6 = 0;
}
- maxHealth = gUnk_0200AF00.maxHealth >> 2;
+ maxHealth = gHUD.maxHealth >> 2;
uVar1 = maxHealth;
if (maxHealth > 10) {
maxHealth = 10;
@@ -463,12 +466,12 @@ void DrawHearts(void) {
DmaSet(3, gUnk_080C8F2C + (10 - tmp1), ptr2 + 1, maxHealth | 0x80000000);
- if ((gUnk_0200AF00.health & 3) != 0) {
+ if ((gHUD.health & 3) != 0) {
if (9 < uVar2) {
uVar2 -= 10;
ptr2 += 0x20;
}
- ptr2[uVar2 + 1] = ((gUnk_0200AF00.health & 3) + 0x11) | 0xf000;
+ ptr2[uVar2 + 1] = ((gHUD.health & 3) + 0x11) | 0xf000;
}
gScreen.bg0.updated = 1;
}
@@ -477,9 +480,9 @@ void DrawHearts(void) {
void sub_0801C824(void) {
struct_02034CF0* ptr;
- if (gUnk_0200AF00.unk_6 != 0) {
- gUnk_0200AF00.unk_6 = 0;
- if (gUnk_0200AF00.maxHealth > 4 * 10) {
+ if (gHUD.unk_6 != 0) {
+ gHUD.unk_6 = 0;
+ if (gHUD.maxHealth > 4 * 10) {
ptr = &gUnk_02034D30.unk_40; // Show second row of hearts
} else {
ptr = &gUnk_02034D30.unk_0;
@@ -503,22 +506,22 @@ void DrawChargeBar(void) {
u32 tmp5;
tmp1 = FALSE;
- if ((gUnk_0200AF00.unk_1 & 0x20) == 0) {
+ if ((gHUD.hideFlags & HUD_HIDE_CHARGE_BAR) == 0) {
tmp1 = gPlayerState.chargeState.action != 0;
}
if (!tmp1)
return sub_0801C824();
- ptr1 = (gUnk_0200AF00.maxHealth > 0x28) ? (u16*)((u8*)(&gUnk_02034D30) + 0x40) : (u16*)&gUnk_02034D30.unk_0;
+ ptr1 = (gHUD.maxHealth > 0x28) ? (u16*)((u8*)(&gUnk_02034D30) + 0x40) : (u16*)&gUnk_02034D30.unk_0;
tmp2 = Div(gPlayerState.chargeState.chargeTimer + 19, 20);
if (tmp2 > 40) {
tmp2 = 40;
}
- if (gUnk_0200AF00.unk_6 == 0 || gUnk_0200AF00.unk_7 != tmp2) {
- gUnk_0200AF00.unk_6 = 1;
- gUnk_0200AF00.unk_7 = tmp2;
+ if (gHUD.unk_6 == 0 || gHUD.unk_7 != tmp2) {
+ gHUD.unk_6 = 1;
+ gHUD.unk_7 = tmp2;
tmp3 = Div(tmp2, 4);
tmp5 = rem;
ptr1[0] = 0xf016;
@@ -533,16 +536,16 @@ void DrawChargeBar(void) {
switch (gPlayerState.chargeState.action) {
case 4:
case 5:
- gUnk_0200AF00.unk_9 += (gPlayerState.chargeState.action == 4) ? 2 : 1;
- tmp3 = gUnk_0200AF00.unk_9 >> 4 & 3;
+ gHUD.unk_9 += (gPlayerState.chargeState.action == 4) ? 2 : 1;
+ tmp3 = gHUD.unk_9 >> 4 & 3;
break;
default:
tmp3 = 0;
break;
}
- if (tmp3 != gUnk_0200AF00.unk_8) {
- gUnk_0200AF00.unk_8 = tmp3;
+ if (tmp3 != gHUD.unk_8) {
+ gHUD.unk_8 = tmp3;
ptr1 = (u16*)0x600c2c0;
DmaSet(3, gUnk_080C8F7C[tmp3], ptr1, 0x84000030);
}
@@ -554,9 +557,9 @@ void DrawKeys(void) {
substruct_0E2* ptr2;
u32 temp;
- if (!(((gUnk_0200AF00.unk_1 & 0x80) == 0) && (AreaHasKeys()))) {
- if (gUnk_0200AF00.unk_10 != 0) {
- gUnk_0200AF00.unk_10 = 0;
+ if (!(((gHUD.hideFlags & HUD_HIDE_KEYS) == 0) && (AreaHasKeys()))) {
+ if (gHUD.unk_10 != 0) {
+ gHUD.unk_10 = 0;
ptr1 = &gUnk_020350E2.unk_0[0];
ptr1->unk_0 = 0;
ptr1->unk_2 = 0;
@@ -569,7 +572,7 @@ void DrawKeys(void) {
gScreen.bg0.updated = 1;
}
} else {
- if (gUnk_0200AF00.unk_10 == 0) {
+ if (gHUD.unk_10 == 0) {
ptr1 = &gUnk_020350E2.unk_0[0];
ptr2 = &gUnk_020350E2.unk_0[1];
temp = 0xf01c;
@@ -584,10 +587,10 @@ void DrawKeys(void) {
ptr2->unk_6 = temp + 3;
gScreen.bg0.updated = 1;
}
- if ((gUnk_0200AF00.dungeonKeys != gSave.dungeonKeys[gArea.dungeon_idx]) || (gUnk_0200AF00.unk_10 == 0)) {
- gUnk_0200AF00.unk_10 = 2;
- gUnk_0200AF00.dungeonKeys = gSave.dungeonKeys[gArea.dungeon_idx];
- DrawDigits(0x76, gUnk_0200AF00.dungeonKeys, 0, 2);
+ if ((gHUD.dungeonKeys != gSave.dungeonKeys[gArea.dungeon_idx]) || (gHUD.unk_10 == 0)) {
+ gHUD.unk_10 = 2;
+ gHUD.dungeonKeys = gSave.dungeonKeys[gArea.dungeon_idx];
+ DrawDigits(0x76, gHUD.dungeonKeys, 0, 2);
}
}
}
@@ -599,7 +602,7 @@ void CreateUIElement(u32 type, u32 type2) {
for (index = 0; index < MAX_UI_ELEMENTS; index++) {
- element = gUnk_0200AF00.elements;
+ element = gHUD.elements;
element += index;
if (!element->used) {
@@ -665,8 +668,8 @@ void ButtonUIElement(UIElement* element) {
}
void ButtonUIElement_Action0(UIElement* element) {
- element->x = gUnk_0200AF00.buttonX[element->type];
- element->y = gUnk_0200AF00.buttonY[element->type] - 0x20;
+ element->x = gHUD.buttonX[element->type];
+ element->y = gHUD.buttonY[element->type] - 0x20;
element->action = 1;
element->unk_0_1 = 1;
sub_0801CAFC(element, element->type);
@@ -681,10 +684,10 @@ void ButtonUIElement_Action1(UIElement* element) {
MAX_MOVEMENT = (!element->type2) ? 4 : 8;
- if (element->type2 == 0 && (((gUnk_0200AF00.unk_1 >> element->type) & 1) || (gMessage.doTextBox & 0x7f) != 0)) {
- y = (s16)gUnk_0200AF00.buttonY[element->type] - 0x28;
+ if (element->type2 == 0 && (((gHUD.hideFlags >> element->type) & 1) || (gMessage.doTextBox & 0x7f) != 0)) {
+ y = (s16)gHUD.buttonY[element->type] - 0x28;
} else {
- y = (s16)gUnk_0200AF00.buttonY[element->type];
+ y = (s16)gHUD.buttonY[element->type];
}
y -= (s16)element->y;
@@ -700,7 +703,7 @@ void ButtonUIElement_Action1(UIElement* element) {
element->y += y_diff;
}
- x = (short)gUnk_0200AF00.buttonX[element->type];
+ x = (short)gHUD.buttonX[element->type];
x -= (short)element->x;
x_diff = (x < 0) ? -x : x;
@@ -752,9 +755,9 @@ void ItemUIElement(UIElement* element) {
uiElementType = 0;
}
- psVar8 = &gUnk_0200AF00.unk_13;
+ psVar8 = &gHUD.unk_13;
if (uiElementType != 0) {
- psVar8 = &gUnk_0200AF00.unk_14;
+ psVar8 = &gHUD.unk_14;
}
switch ((s32)element->unk_8) {
@@ -797,12 +800,12 @@ void ItemUIElement(UIElement* element) {
void TextUIElement(UIElement* element) {
UIElement* buttonUIElement;
u32 tmp;
- extern struct_0200AF00* ptr;
+ extern HUD* ptr;
u32 tmp1;
UIElement* ptr2;
if (element->type2 == 9) {
- tmp = gUnk_0200AF00.unk_2f;
+ tmp = gHUD.unk_2f;
if (tmp == 0) {
switch (gArea.portal_mode) {
case 2:
@@ -812,13 +815,13 @@ void TextUIElement(UIElement* element) {
tmp = 0xa;
break;
default:
- tmp = gUnk_0200AF00.unk_2c;
+ tmp = gHUD.unk_2c;
break;
}
}
- gUnk_0200AF00.unk_32 = tmp;
+ gHUD.unk_32 = tmp;
}
- tmp = gUnk_0200AF00.unk_30[element->buttonElementId];
+ tmp = gHUD.unk_30[element->buttonElementId];
element->unk_0_1 = 0;
if (tmp != 0) {
tmp += gUnk_080C9044[((SaveHeader*)0x2000000)->language];
@@ -836,7 +839,7 @@ UIElement* FindUIElement(u32 type) {
UIElement* element;
u32 index;
for (index = 0; index < MAX_UI_ELEMENTS; index++) {
- element = &gUnk_0200AF00.elements[index];
+ element = &gHUD.elements[index];
if (element->used != 0 && type == element->type) {
return element;
}
@@ -851,8 +854,8 @@ void HeartUIElement(UIElement* element) {
u32 health;
u32 frameIndex;
element->unk_0_1 = 0;
- if (((gUnk_0200AF00.unk_1 & 0x10) == 0) && ((gMessage.doTextBox & 0x7f) == 0)) {
- health = gUnk_0200AF00.health;
+ if (((gHUD.hideFlags & HUD_HIDE_HEARTS) == 0) && ((gMessage.doTextBox & 0x7f) == 0)) {
+ health = gHUD.health;
if (health != 0) {
element->unk_0_1 = 1;
// Calculate the position for this heart.
@@ -880,8 +883,8 @@ void EzloNagUIElement(UIElement* element) {
}
void EzloNagUIElement_Action0(UIElement* element) {
- if (gUnk_0200AF00.ezloNagFuncIndex == 1) {
- gUnk_0200AF00.ezloNagFuncIndex = 2;
+ if (gHUD.ezloNagFuncIndex == 1) {
+ gHUD.ezloNagFuncIndex = 2;
element->x = 0x10;
element->y = 0x90;
element->unk_6 = 0;
@@ -898,19 +901,19 @@ void EzloNagUIElement_Action1(UIElement* element) {
if (tmp == 0) {
element->action = 2;
element->type = UI_ELEMENT_EZLONAGACTIVE;
- gUnk_0200AF00.ezloNagFuncIndex = 3;
+ gHUD.ezloNagFuncIndex = 3;
SoundReq(SFX_EZLO_UI);
}
}
void EzloNagUIElement_Action2(UIElement* element) {
- if (gUnk_0200AF00.ezloNagFuncIndex >= 5 || (gMessage.doTextBox & 0x7f)) {
+ if (gHUD.ezloNagFuncIndex >= 5 || (gMessage.doTextBox & 0x7f)) {
element->action = 0;
element->unk_0_1 = 0;
return;
}
sub_0801CAD0(element);
if (element->frameSettings == 1) {
- gUnk_0200AF00.ezloNagFuncIndex = 4;
+ gHUD.ezloNagFuncIndex = 4;
}
}