add to ewram, clean up dungeon action

This commit is contained in:
DizzyEggg 2025-04-04 12:58:07 +02:00
parent 66ddb9f9f3
commit 8638f546db
15 changed files with 37 additions and 51 deletions

View File

@ -1,17 +0,0 @@
#ifndef GUARD_CODE_8044CC8_H
#define GUARD_CODE_8044CC8_H
// size: 0x4
typedef struct unkStruct_202EE44
{
u16 actionId;
u8 unk2;
bool8 canBeChosen;
} unkStruct_202EE44;
extern unkStruct_202EE44 gDungeonSubMenu[10];
void AddActionToDungeonSubMenu(u16 actionId, u8 param_2);
void SetActionUnusableInDungeonSubMenu(u16 actionId);
#endif // GUARD_CODE_8044CC8_H

View File

@ -60,4 +60,18 @@ enum DungeonAction
NUM_DUNGEON_ACTIONS
};
// size: 0x4
typedef struct SubMenuAction
{
u16 actionId;
u8 unk2;
bool8 canBeChosen;
} SubMenuAction;
extern SubMenuAction gDungeonSubMenu[10];
extern s32 gDungeonSubMenuItemsCount;
void AddActionToDungeonSubMenu(u16 actionId, u8 param_2);
void SetActionUnusableInDungeonSubMenu(u16 actionId);
#endif

View File

@ -6,7 +6,7 @@
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8041AD0.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_8066D04.h"
#include "code_806CD90.h"
#include "code_8077274_1.h"

View File

@ -47,7 +47,6 @@ struct RgbS16
extern OpenedFile *gDungeonPaletteFile;
extern s32 gDungeonBrightness;
extern RGB gUnknown_202ECA4[];
extern s32 gUnknown_202F3D8;
extern const u8 gUnknown_8107358[25];
extern const DungeonPos gUnknown_80F4598[];
@ -1171,6 +1170,8 @@ UNUSED static void sub_8085B0C(Entity *pokemon)
}
}
static EWRAM_DATA s32 gUnknown_202F3D8 = 0;
void sub_8085B4C(struct_8085B80 a0[], s16 *a1[], Entity *a2[], s32 a3)
{
s32 i;

View File

@ -6,7 +6,7 @@
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8041AD0.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_8066D04.h"
#include "code_806CD90.h"
#include "code_8077274_1.h"

View File

@ -32,8 +32,6 @@
extern u8 gUnknown_202F221;
extern u8 gUnknown_202F222;
extern u8 gUnknown_202F32C;
extern u8 gUnknown_202F32D;
extern u8 gUnknown_203B434;
extern u8 *gUnknown_80FA5B4[];
@ -86,6 +84,9 @@ extern void MarkLastUsedMonMove(Entity *entity, Move *move);
bool8 TryUseChosenMove(struct Entity *attacker, u32 r6, s32 itemId, u32 var_30, bool32 isLinkedMove, struct Move *move);
extern void sub_80838EC(u8 *a);
EWRAM_DATA u8 gUnknown_202F32C = 0;
EWRAM_DATA u8 gUnknown_202F32D = 0;
bool8 sub_8072CF4(Entity *entity)
{
bool8 bVar4;

View File

@ -14,7 +14,7 @@
#include "pokemon.h"
#include "items.h"
#include "structs/str_item_text.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "dungeon_items.h"
#include "dungeon_map_access.h"
#include "dungeon_engine.h"
@ -27,9 +27,8 @@ extern void TriggerWeatherAbilities(void);
extern void sub_8071DA4(Entity *);
extern void TickStatusHeal(Entity *);
extern unkStruct_202EE44 gDungeonSubMenu[10];
extern s32 gDungeonSubMenuItemsCount;
EWRAM_DATA SubMenuAction gDungeonSubMenu[10] = {0};
EWRAM_DATA s32 gDungeonSubMenuItemsCount = 0;
extern bool8 sub_8045888(Entity *);
@ -339,9 +338,9 @@ void sub_8045064(void)
for (i = 0; i < gDungeonSubMenuItemsCount; i++) {
for (j = i + 1; j < gDungeonSubMenuItemsCount; j++) {
unkStruct_202EE44 temp;
unkStruct_202EE44 *iPtr = &gDungeonSubMenu[i];
unkStruct_202EE44 *jPtr = &gDungeonSubMenu[j];
SubMenuAction temp;
SubMenuAction *iPtr = &gDungeonSubMenu[i];
SubMenuAction *jPtr = &gDungeonSubMenu[j];
if (gUnknown_80F7C50[iPtr->actionId].val > gUnknown_80F7C50[jPtr->actionId].val) {
SWAP(*iPtr, *jPtr, temp);

View File

@ -16,7 +16,7 @@
#include "code_801B3C0.h"
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_8066D04.h"
#include "code_806CD90.h"
#include "dungeon_action.h"

View File

@ -24,7 +24,7 @@
#include "dungeon_leader.h"
#include "menu_input.h"
#include "text_1.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_801B3C0.h"
extern void PlayDungeonCancelSE(void);

View File

@ -4,7 +4,7 @@
#include "structs/str_dungeon.h"
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "dungeon_action.h"
#include "dungeon_leader.h"
#include "dungeon_main.h"

View File

@ -3,7 +3,7 @@
#include "code_803D110.h"
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_8097DD0.h"
#include "dungeon.h"
#include "dungeon_8083AB0.h"

View File

@ -2,7 +2,7 @@
#include "globaldata.h"
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_8097DD0.h"
#include "dungeon.h"
#include "dungeon_action.h"

View File

@ -10,7 +10,7 @@
#include "code_801B3C0.h"
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_806CD90.h"
#include "code_8097DD0.h"
#include "dungeon_action.h"

View File

@ -2,7 +2,7 @@
#include "globaldata.h"
#include "code_803E46C.h"
#include "code_803E724.h"
#include "code_8044CC8.h"
#include "dungeon_action.h"
#include "code_8097DD0.h"
#include "dungeon.h"
#include "dungeon_action.h"

View File

@ -125,10 +125,7 @@ gUnknown_202EE39: /* 202EE39 (sub_8060E38) */
gUnknown_202EE3A: /* 202EE3A (sub_8060E38 - sub_8065DBC) */
.space 0xA
gDungeonSubMenu: /* 202EE44 (sub_8044EC8 - sub_80647F0) */
.space 0x28
gDungeonSubMenuItemsCount: /* 202EE6C (sub_8044F5C - sub_8067A80) */
.space 0x4
.include "src/dungeon_action.o"
gUnknown_202EE70: /* 202EE70 (sub_804513C - sub_80828E0) */
.space 0x6
@ -154,23 +151,14 @@ gUnknown_202EE76: /* 202EE76 (sub_804513C - sub_8082A08) */
.include "src/dungeon_8067A80.o"
.include "src/dungeon_logic.o"
.include "src/code_80718D8.o"
gUnknown_202F32C: /* 202F32C (xxx_dungeon_8042F6C - sub_8072CF4) */
.space 0x1
gUnknown_202F32D: /* 202F32D (sub_8072CF4 - UseAttack) */
.space 0x3
.include "src/dungeon_8072CF4.o"
.include "src/dungeon_ai_items.o"
.include "src/code_8073CF0.o"
.include "src/code_8075708.o"
.space 0x4
.include "src/dungeon_ai_attack.o"
.include "src/code_80848F0.o"
gUnknown_202F3D8: /* 202F3D8 (sub_8085B4C - sub_8085B80) */
.space 0x8
.space 0x4
.include "src/pokemon.o"
.include "src/items.o"
.include "src/rescue_team_info.o"