Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More pal work #1102

Merged
merged 18 commits into from
Jul 31, 2023
6 changes: 0 additions & 6 deletions src/7fd10_len_b40.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,6 @@ BSS s16 D_8010CCFA;
BSS s16 D_8010CCFC;
BSS s16 D_8010CCFE;
BSS s16 D_8010CD00;
BSS char D_8010CD04[0xC];
BSS s16 D_8010CD10;
BSS s16 D_8010CD12;
BSS char D_8010CD14[0xA];
BSS s32 D_8010CD20;
BSS char D_8010CD24[0xC];

extern s32 MenuIndexFromPartnerID[];

Expand Down
96 changes: 65 additions & 31 deletions src/80850_len_3060.c
Original file line number Diff line number Diff line change
@@ -1,21 +1,30 @@
#include "common.h"
#include "hud_element.h"

BSS s16 D_8010CD10;
BSS s16 D_8010CD12;
BSS char D_8010CD14[0xA];
ethteck marked this conversation as resolved.
Show resolved Hide resolved
BSS s32 D_8010CD20;
BSS char D_8010CD24[0xC];
ethteck marked this conversation as resolved.
Show resolved Hide resolved

SHIFT_BSS UiStatus gUIStatus;

extern HudScript* TimesHudScript;
extern HudScript* SPIncrementHudScripts[];
extern HudScript* SPStarHudScripts[];
extern s32 StatusBarSPIncrementOffsets[];

extern s16 D_8010CD10;
extern s16 D_8010CD12;

extern HudScript* DigitHudScripts[10];

extern HudScript HES_StatusHP;
extern HudScript HES_StatusHP_de;
extern HudScript HES_StatusHP_fr;
extern HudScript HES_StatusHP_es;
extern HudScript HES_StatusHeart;
extern HudScript HES_StatusFP;
extern HudScript HES_StatusFP_de;
extern HudScript HES_StatusFP_fr;
extern HudScript HES_StatusFP_es;
extern HudScript HES_StatusFlower;
extern HudScript HES_Item_CoinSparkleRandom;
extern HudScript HES_StatusStarPoint;
Expand Down Expand Up @@ -303,7 +312,6 @@ void initialize_status_bar(void) {
UiStatus* uiStatus = &gUIStatus;
PlayerData* playerData = &gPlayerData;
s32 iconIndex;
s32 newVar;

uiStatus->drawPosX = 12;
D_8010CD10 = 0;
Expand Down Expand Up @@ -346,69 +354,95 @@ void initialize_status_bar(void) {

close_status_bar();

iconIndex = hud_element_create(&HES_StatusHP);
uiStatus->hpIconIndices[0] = iconIndex;
#if VERSION_PAL
switch (gCurrentLanguage) {
case LANGUAGE_EN:
iconIndex = uiStatus->hpIconIndices[0] = hud_element_create(&HES_StatusHP);
break;
case LANGUAGE_DE:
iconIndex = uiStatus->hpIconIndices[0] = hud_element_create(&HES_StatusHP_de);
break;
case LANGUAGE_FR:
iconIndex = uiStatus->hpIconIndices[0] = hud_element_create(&HES_StatusHP_fr);
break;
case LANGUAGE_ES:
iconIndex = uiStatus->hpIconIndices[0] = hud_element_create(&HES_StatusHP_es);
break;
}

hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);
#else
uiStatus->hpIconIndices[0] = iconIndex = hud_element_create(&HES_StatusHP);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);
#endif

iconIndex = hud_element_create(&HES_StatusHeart);
uiStatus->hpIconIndices[1] = iconIndex;
uiStatus->hpIconIndices[1] = iconIndex = hud_element_create(&HES_StatusHeart);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusFP);
uiStatus->fpIconIndices[0] = iconIndex;
#if VERSION_PAL
switch (gCurrentLanguage) {
case LANGUAGE_EN:
iconIndex = uiStatus->fpIconIndices[0] = hud_element_create(&HES_StatusFP);
break;
case LANGUAGE_DE:
iconIndex = uiStatus->fpIconIndices[0] = hud_element_create(&HES_StatusFP_de);
break;
case LANGUAGE_FR:
iconIndex = uiStatus->fpIconIndices[0] = hud_element_create(&HES_StatusFP_fr);
break;
case LANGUAGE_ES:
iconIndex = uiStatus->fpIconIndices[0] = hud_element_create(&HES_StatusFP_es);
break;
}

hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);
#else
uiStatus->fpIconIndices[0] = iconIndex = hud_element_create(&HES_StatusFP);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);
#endif

iconIndex = hud_element_create(&HES_StatusFlower);
uiStatus->fpIconIndices[1] = iconIndex;
uiStatus->fpIconIndices[1] = iconIndex = hud_element_create(&HES_StatusFlower);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusCoin);
uiStatus->coinIconIndex = iconIndex;
uiStatus->coinIconIndex = iconIndex = hud_element_create(&HES_StatusCoin);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_Item_CoinSparkleRandom);
uiStatus->coinSparkleIconIndex = iconIndex;
uiStatus->coinSparkleIconIndex = iconIndex = hud_element_create(&HES_Item_CoinSparkleRandom);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusStarPoint);
uiStatus->starpointsIconIndex = iconIndex;
uiStatus->starpointsIconIndex = iconIndex = hud_element_create(&HES_StatusStarPoint);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusSPShine);
uiStatus->starpointsShineIconIndex = iconIndex;
uiStatus->starpointsShineIconIndex = iconIndex = hud_element_create(&HES_StatusSPShine);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

newVar = hud_element_create(&HES_StatusTimes);
iconIndex = newVar;
uiStatus->iconIndex8 = iconIndex;
uiStatus->iconIndex8 = iconIndex = hud_element_create(&HES_StatusTimes);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusTimes);
uiStatus->iconIndex9 = iconIndex;
uiStatus->iconIndex9 = iconIndex = hud_element_create(&HES_StatusTimes);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusTimes);
uiStatus->iconIndexA = iconIndex;
uiStatus->iconIndexA = iconIndex = hud_element_create(&HES_StatusTimes);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusTimes);
uiStatus->iconIndexB = iconIndex;
uiStatus->iconIndexB = iconIndex = hud_element_create(&HES_StatusTimes);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

iconIndex = hud_element_create(&HES_StatusStar1);
uiStatus->starIconIndex = iconIndex;
uiStatus->starIconIndex = iconIndex = hud_element_create(&HES_StatusStar1);
hud_element_set_flags(iconIndex, HUD_ELEMENT_FLAG_80);
hud_element_clear_flags(iconIndex, HUD_ELEMENT_FLAG_FILTER_TEX);

Expand Down
Loading
Loading