mirror of
https://github.com/pret/pmd-red.git
synced 2026-03-21 17:46:39 -05:00
Merge pull request #436 from DizzyEggg/externs
Some checks failed
GithubCI / build (push) Has been cancelled
Some checks failed
GithubCI / build (push) Has been cancelled
Move externs to headers - part 1
This commit is contained in:
commit
e29136c878
10
include/blow_away.h
Normal file
10
include/blow_away.h
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
#ifndef GUARD_BLOW_AWAY_H
|
||||
#define GUARD_BLOW_AWAY_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void BlowAwayTarget(Entity *pokemon, Entity *target, u32 direction);
|
||||
void sub_807D068(Entity *pokemon, DungeonPos *pos);
|
||||
|
||||
#endif // GUARD_BLOW_AWAY_H
|
||||
|
|
@ -7,6 +7,5 @@ void sub_803E02C(void);
|
|||
void sub_803E13C(void);
|
||||
void sub_803E178(void);
|
||||
void sub_803E214(void);
|
||||
void sub_803E250(void);
|
||||
|
||||
#endif // GUARD_CODE_803D110_H
|
||||
|
|
|
|||
|
|
@ -1,9 +0,0 @@
|
|||
#ifndef GUARD_CODE_803E724_H
|
||||
#define GUARD_CODE_803E724_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
|
||||
void sub_803EAF0(u32 kind, u8 *name);
|
||||
bool8 sub_803F428(DungeonPos *pos);
|
||||
|
||||
#endif // GUARD_CODE_803E724_H
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#ifndef CODE_807CD9C_H
|
||||
#define CODE_807CD9C_H
|
||||
|
||||
void BlowAwayTarget(Entity *pokemon, Entity *target, u32 direction);
|
||||
void WarpTarget(Entity *pokemon, Entity *target, u32 param_3, DungeonPos *pos);
|
||||
void sub_807D3CC(Entity *param_1);
|
||||
|
||||
#endif /* ifndef CODE_807CD9C_H */
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#ifndef GUARD_CODE_8085E98_H
|
||||
#define GUARD_CODE_8085E98_H
|
||||
|
||||
void sub_8085E98(void);
|
||||
|
||||
#endif
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
#ifndef GUARD_CODE_80861A8_H
|
||||
#define GUARD_CODE_80861A8_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void sub_80861A8(Entity *a0);
|
||||
void sub_80861B8(Entity *a0, u8 r1, s32 direction);
|
||||
void sub_80861D4(Entity *a0, u8 r1, s32 direction);
|
||||
|
||||
#endif
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
#ifndef GUARD_CODE_80869E4_H
|
||||
#define GUARD_CODE_80869E4_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "dungeon_message.h"
|
||||
|
||||
// size: 0x8
|
||||
typedef struct unkStruct_202F3D0
|
||||
{
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4;
|
||||
u8 unk5;
|
||||
} unkStruct_202F3D0;
|
||||
|
||||
void SpriteLookAroundEffect(Entity *entity);
|
||||
void SpriteShockEffect(Entity *entity);
|
||||
|
||||
void sub_8086448(void);
|
||||
void sub_8086500(void);
|
||||
void sub_808654C(void);
|
||||
void sub_8086598(void);
|
||||
void sub_80865E8(void);
|
||||
void sub_808663C(void);
|
||||
void sub_8086690(void);
|
||||
void sub_80866C4(const struct DungeonDialogueStruct *dialogue);
|
||||
void sub_8086738(void);
|
||||
void sub_8086764(void);
|
||||
void sub_8086794(void);
|
||||
void sub_80867F4(void);
|
||||
void sub_808680C(void);
|
||||
void sub_808682C(void);
|
||||
void sub_8086838(u8 entity, u8, u8);
|
||||
void sub_8086848(u8 entity, u8);
|
||||
void sub_8086854(void);
|
||||
void sub_80868F4(Entity *entity);
|
||||
void sub_8086910(Entity *entity);
|
||||
void sub_808692C(void);
|
||||
void sub_80869E4(struct Entity *entity, s32 a1, u8 a2, s32 _someDirection);
|
||||
|
||||
#endif // GUARD_CODE_80869E4_H
|
||||
|
|
@ -60,18 +60,4 @@ 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
|
||||
|
|
|
|||
8
include/drought_orb.h
Normal file
8
include/drought_orb.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_DROUGHT_ORB_H
|
||||
#define GUARD_DROUGHT_ORB_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandleDroughtOrb(Entity *pokemon, Entity *target);
|
||||
|
||||
#endif // GUARD_DROUGHT_ORB_H
|
||||
|
|
@ -2,10 +2,37 @@
|
|||
#define GUARD_DUNGEON_ACTION_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_items.h"
|
||||
|
||||
// size: 0x4
|
||||
typedef struct SubMenuAction
|
||||
{
|
||||
u16 actionId;
|
||||
u8 unk2;
|
||||
bool8 canBeChosen;
|
||||
} SubMenuAction;
|
||||
|
||||
void SetLeaderActionToNothing(bool8 clearActionFields);
|
||||
void SetLeaderActionFields(u16 action);
|
||||
void ClearMonsterActionFields(ActionContainer *actionPointer);
|
||||
void SetMonsterActionFields(ActionContainer *actionPointer, u16 action);
|
||||
void SetActionPassTurnOrWalk(ActionContainer *actionPointer, s16 species);
|
||||
Item * sub_8044CC8(Entity *param_1, ActionParameter *param_2, UNUSED s32 a3);
|
||||
bool8 sub_8044D40(ActionContainer *param_1,s32 index);
|
||||
Item *sub_8044D90(Entity *entity, s32 index, s32 unused);
|
||||
Entity *sub_8044DA4(Entity *entity, s32 index);
|
||||
u16 sub_8044DC8(Item *param_1);
|
||||
void sub_8044DF0(Entity *entity, s32 index, u32 unused);
|
||||
void sub_8044E24(Entity *entity,int index,u32 unused);
|
||||
const u8 *GetDungeonSubMenuItemString(s32 param_1);
|
||||
bool8 CanSubMenuItemBeChosen(s32 itemId);
|
||||
void AddActionToDungeonSubMenu(u16 actionId, u8 param_2);
|
||||
s32 ActionToDungeonSubMenuId(u16 actionId);
|
||||
void SetActionUnusableInDungeonSubMenu(u16 actionId);
|
||||
bool8 IsNotAttacking(Entity *param_1, bool8 param_2);
|
||||
void sub_8045064(void);
|
||||
|
||||
extern SubMenuAction gDungeonSubMenu[10];
|
||||
extern s32 gDungeonSubMenuItemsCount;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
8
include/dungeon_action_execution.h
Normal file
8
include/dungeon_action_execution.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_DUNGEON_ACTION_EXECUTION_H
|
||||
#define GUARD_DUNGEON_ACTION_EXECUTION_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
bool8 ExecuteEntityDungeonAction(Entity *entity);
|
||||
|
||||
#endif
|
||||
|
|
@ -5,6 +5,5 @@
|
|||
|
||||
bool8 TargetLeader(Entity *pokemon);
|
||||
Entity* GetLeaderIfVisible(Entity *pokemon);
|
||||
bool8 sub_8072CF4(Entity *entity);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
6
include/dungeon_cleared_window.h
Normal file
6
include/dungeon_cleared_window.h
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
#ifndef GUARD_CLEARED_WINDOW_H
|
||||
#define GUARD_CLEARED_WINDOW_H
|
||||
|
||||
void ShowDungeonClearedWindow(void);
|
||||
|
||||
#endif // GUARD_CLEARED_WINDOW_H
|
||||
80
include/dungeon_cutscene.h
Normal file
80
include/dungeon_cutscene.h
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
#ifndef GUARD_DUNGEON_CUTSCENE_H
|
||||
#define GUARD_DUNGEON_CUTSCENE_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "dungeon_message.h"
|
||||
|
||||
typedef void (*DungeonCallback)(Entity *);
|
||||
typedef struct struct_8085B80 {
|
||||
u8 unk0;
|
||||
Entity *unk4;
|
||||
s32 unk8;
|
||||
s16 *unkC;
|
||||
} struct_8085B80;
|
||||
|
||||
void sub_80847D4(void);
|
||||
bool8 ShouldShowDungeonBanner(void);
|
||||
void sub_80848F0(void);
|
||||
void DisplayPreFightDialogue(void);
|
||||
void sub_8084E00(Entity *entity, u8 param_2, u8 param_3);
|
||||
void sub_8085140(void);
|
||||
bool8 sub_808529C(s32 speciesId_);
|
||||
void sub_8085374(void);
|
||||
Entity *CutsceneGetLeader(void);
|
||||
Entity *CutsceneGetPartner(void);
|
||||
void sub_80854D4(void);
|
||||
void sub_80855E4(DungeonCallback func);
|
||||
void sub_808563C(DungeonCallback func);
|
||||
Entity *GetEntityFromMonsterBehavior(u8 entityType);
|
||||
void sub_80856C8(Entity * pokemon, s32 x, s32 y);
|
||||
void sub_80856E0(Entity * pokemon, s32 direction);
|
||||
void sub_8085860(s32 x, s32 y);
|
||||
void ShiftCameraToPosition(PixelPos *posStruct, s32 cameraSteps);
|
||||
void SetFacingDirection(Entity *pokemon, s32 direction);
|
||||
void sub_8085930(s32 direction);
|
||||
bool8 ShouldRunMonsterAI(Entity *pokemon);
|
||||
void sub_8085B4C(struct_8085B80 a0[], s16 *a1[], Entity *a2[], s32 a3);
|
||||
bool8 sub_8085B80(struct_8085B80 *a0);
|
||||
void SetDungeonBGColorRGB(s32 r, s32 g, s32 b, bool8 a3, bool8 a4);
|
||||
void sub_8085E98(void);
|
||||
void sub_8085EB0(void);
|
||||
u32 sub_8085EC8(s16 param_1,u32 param_2,u32 param_3,DungeonPos *param_4, bool32 param_5);
|
||||
void sub_8085F44(s32 param_1);
|
||||
void sub_8085F78(void);
|
||||
bool8 sub_80860A8(u8 id);
|
||||
void sub_8086130(void);
|
||||
void sub_80861A8(Entity *a0);
|
||||
void sub_80861B8(Entity *a0, u8 r1, s32 direction);
|
||||
void sub_80861D4(Entity *a0, u8 r1, s32 direction);
|
||||
s32 sub_80861F8(s32 param_1,Entity *param_2,bool32 param_3);
|
||||
void SpriteShockEffect(Entity *entity);
|
||||
void sub_8086448(void);
|
||||
void sub_8086500(void);
|
||||
void sub_808654C(void);
|
||||
void sub_8086598(void);
|
||||
void sub_80865E8(void);
|
||||
void sub_808663C(void);
|
||||
void sub_8086690(void);
|
||||
void sub_80866C4(const struct DungeonDialogueStruct *dialogue);
|
||||
void sub_8086738(void);
|
||||
void sub_8086764(void);
|
||||
void sub_8086794(void);
|
||||
void sub_80867F4(void);
|
||||
void sub_808680C(void);
|
||||
void sub_808682C(void);
|
||||
void sub_8086838(u8 entity, u8 r1, u8 r2);
|
||||
void sub_8086848(u8 entity, u8 r1);
|
||||
void sub_8086854(void);
|
||||
void sub_80868F4(Entity *entity);
|
||||
void sub_8086910(Entity *entity);
|
||||
void sub_808692C(void);
|
||||
void SpriteLookAroundEffect(Entity *entity);
|
||||
void sub_80869E4(struct Entity *entity, s32 a1, u8 a2, s32 _someDirection);
|
||||
void sub_8086A3C(Entity *pokemon);
|
||||
void sub_8086A54(Entity *pokemon);
|
||||
void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
void sub_8086AC0(void);
|
||||
u8 sub_8086AE4(s16 _index);
|
||||
|
||||
#endif
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
#ifndef GUARD_DUNGEON_CUTSCENE_H
|
||||
#define GUARD_DUNGEON_CUTSCENE_H
|
||||
#ifndef GUARD_DUNGEON_CUTSCENES_H
|
||||
#define GUARD_DUNGEON_CUTSCENES_H
|
||||
|
||||
// TODO: Remove this file
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
|
|
@ -139,4 +141,4 @@ void sub_808CBB0(void);
|
|||
void sub_808CD44(void);
|
||||
void sub_808CD9C(void);
|
||||
|
||||
#endif /* ifndef GUARD_DUNGEON_CUTSCENE_H */
|
||||
#endif /* ifndef GUARD_DUNGEON_CUTSCENES_H */
|
||||
|
|
|
|||
|
|
@ -1,11 +1,18 @@
|
|||
#ifndef GUARD_DUNGEON_ENGINE_H
|
||||
#define GUARD_DUNGEON_ENGINE_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/menu.h"
|
||||
|
||||
extern const s16 gSpeedTurns[NUM_SPEED_COUNTERS][25];
|
||||
|
||||
void RunFractionalTurn(bool8 param_1);
|
||||
void sub_80444F4(Entity *pokemon);
|
||||
bool8 IsFloorOver(void);
|
||||
bool8 sub_8044B84(void);
|
||||
|
||||
extern DungeonPos gLeaderPosition;
|
||||
extern MenuInputStruct gDungeonMenu;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
#ifndef GUARD_DUNGEON_SPAWNS_H
|
||||
#define GUARD_DUNGEON_SPAWNS_H
|
||||
#ifndef GUARD_DUNGEON_FLOOR_SPAWNS_H
|
||||
#define GUARD_DUNGEON_FLOOR_SPAWNS_H
|
||||
|
||||
#include "structs/str_spawn_pokemon_data.h"
|
||||
|
||||
|
|
@ -14,4 +14,4 @@ bool8 CanMonsterBeSpawnedHere(s16 speciesToFind);
|
|||
s16 GetRandomFloorMonsterId(s32 arrId);
|
||||
s32 GetSpawnedMonsterLevel(s32 species);
|
||||
|
||||
#endif // GUARD_DUNGEON_SPAWNS_H
|
||||
#endif // GUARD_DUNGEON_FLOOR_SPAWNS_H
|
||||
|
|
@ -2,24 +2,34 @@
|
|||
#define GUARD_DUNGEON_INFO_H
|
||||
|
||||
#include "structs/str_dungeon_location.h"
|
||||
#include "data_serializer.h"
|
||||
|
||||
extern const u16 *const gRandomItemsSets[];
|
||||
extern const u8 gUnknown_8108EC0[];
|
||||
|
||||
s32 GetDungeonFloorCount(u8 dungeon);
|
||||
s32 GetDungeonStartingFloor(u8 dungeon);
|
||||
const u8 *GetDungeonName1(u8 dungeon);
|
||||
const u8 *GetDungeonName2(u8 dungeon);
|
||||
bool8 IsStairDirectionUp(u8 dungeon);
|
||||
s16 GetTurnLimit(u8 dungeon);
|
||||
bool8 IsEnterWithoutGameSave(u8 dungeon);
|
||||
bool8 HasCheckpoint(u8 dungeon);
|
||||
bool8 IsLevelResetDungeon(u8 dungeon);
|
||||
u32 GetMaxItemsAllowed(u8 dungeon);
|
||||
bool8 IsMoneyAllowed(u8 dungeon);
|
||||
s8 GetRescuesAllowed(u8 dungeon);
|
||||
bool8 HasCheckpoint(u8 dungeon);
|
||||
u8 IsRecruitingEnabled(u8 dungeon);
|
||||
bool8 CanLeaderSwitch(u8 dungeon);
|
||||
s16 GetRandomMovementChance(u8 dungeon);
|
||||
bool8 sub_809017C(DungeonLocation* a1);
|
||||
void GeneralizeMazeDungeonLoc(DungeonLocation *dst, const DungeonLocation *src);
|
||||
void PrintYellowDungeonNametoBuffer(u8 *buffer, DungeonLocation *dungeonLocation);
|
||||
void PrintDungeonLocationtoBuffer(u8 *buffer, DungeonLocation *dungeonLocation);
|
||||
|
||||
void GeneralizeMazeDungeonLoc(DungeonLocation *dst, const DungeonLocation *src);
|
||||
void CopyDungeonName1toBuffer(u8 *buffer, DungeonLocation *dungeonLocation);
|
||||
s32 GetDungeonFloorCount(u8 dungeon);
|
||||
s32 GetDungeonStartingFloor(u8 dungeon);
|
||||
void WriteDungeonLocationBits(DataSerializer* r0, DungeonLocation* src);
|
||||
void ReadDungeonLocationBits(DataSerializer* r0, DungeonLocation* dst);
|
||||
bool8 DoEnemiesEvolveWhenKOed(u8 dungeon);
|
||||
|
||||
#define DUNGEON_REQUIREMENTS_PASS 0
|
||||
#define DUNGEON_REQUIREMENTS_FAIL 1
|
||||
|
|
@ -29,6 +39,5 @@ u32 BufferDungeonRequirementsText(u8 dungeonIndex, s32 speciesId_, u8 *buffer, b
|
|||
u32 GetDungeonLocMissionDifficulty(DungeonLocation *dungeon);
|
||||
u8 GetRandomItemForValidDungeonLoc(DungeonLocation *dungeon, u32 param_2);
|
||||
bool8 IsNotValidDungeon(u8 dungeon);
|
||||
u8 IsRecruitingEnabled(u8 dungeon);
|
||||
|
||||
#endif // GUARD_DUNGEON_INFO_H
|
||||
|
|
|
|||
13
include/dungeon_item_action.h
Normal file
13
include/dungeon_item_action.h
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
#ifndef GUARD_DUNGEON_ITEM_ACTION_H
|
||||
#define GUARD_DUNGEON_ITEM_ACTION_H
|
||||
|
||||
#include "structs/str_items.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void sub_80479B8(char param_1, char param_2, u8 param_3, Entity *pokemon, Entity *target, Item *item);
|
||||
bool8 sub_8048950(Entity *param_1,Item *item);
|
||||
bool8 sub_8048A68(Entity *param_1,Item *item);
|
||||
bool8 sub_8048B9C(Entity *entity, Item *item);
|
||||
bool8 sub_8048D50(Entity *pokemon, Item *item);
|
||||
|
||||
#endif // GUARD_DUNGEON_ITEM_ACTION_H
|
||||
8
include/dungeon_kecleon_shop.h
Normal file
8
include/dungeon_kecleon_shop.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_DUNGEON_KECLEON_SHOP_H
|
||||
#define GUARD_DUNGEON_KECLEON_SHOP_H
|
||||
|
||||
void sub_807EC28(bool8 arg0);
|
||||
bool8 sub_807EF48(void);
|
||||
void sub_807EF84(void);
|
||||
|
||||
#endif // GUARD_DUNGEON_KECLEON_SHOP_H
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
#ifndef GUARD_DUNGEON_LEADER_H
|
||||
#define GUARD_DUNGEON_LEADER_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
Entity* GetLeader(void);
|
||||
EntityInfo* GetLeaderInfo(void);
|
||||
|
||||
#endif // GUARD_DUNGEON_LEADER_H
|
||||
13
include/dungeon_leveling.h
Normal file
13
include/dungeon_leveling.h
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
#ifndef GUARD_DUNGEON_LEVELING_H
|
||||
#define GUARD_DUNGEON_LEVELING_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void AddExpPoints(Entity *pokemon, Entity *target, s32 exp);
|
||||
void EnemyEvolution(Entity *entity);
|
||||
void LevelUpTarget(Entity *pokemon, Entity *target, s32 level, u8 param_4, u8 param_5);
|
||||
void LevelDownTarget(Entity *pokemon, Entity *target, u32 level);
|
||||
bool8 sub_8072938(Entity *target, u16 moveId);
|
||||
void sub_8072AC8(s16 *param_1, s32 species, s32 param_3);
|
||||
|
||||
#endif
|
||||
|
|
@ -5,10 +5,6 @@
|
|||
|
||||
const Tile *GetTile(s32 x, s32 y);
|
||||
Tile *GetTileMut(s32 x, s32 y);
|
||||
|
||||
void UpdateTrapsVisibility(void);
|
||||
void DiscoverMinimap(DungeonPos *pos);
|
||||
|
||||
void sub_80495E4(void);
|
||||
void LoadDungeonTilesetAssets(void);
|
||||
void sub_8049820(void);
|
||||
|
|
@ -17,22 +13,24 @@ void sub_8049884(void);
|
|||
void sub_80498A8(s32 x, s32 y);
|
||||
void sub_8049B8C(void);
|
||||
void sub_8049BB0(s32 x, s32 y);
|
||||
void UpdateTrapsVisibility(void);
|
||||
void sub_804A1F0(s32 a0, s32 a1);
|
||||
void sub_804A49C(s32 a0, s32 a1);
|
||||
void ChangeDungeonCameraPos(DungeonPos *pos, s32 a1, u8 a2, u8 a3);
|
||||
void sub_804AA60(void);
|
||||
void sub_804AAAC(void);
|
||||
void sub_804AAD4(void);
|
||||
void DiscoverMinimap(DungeonPos *pos);
|
||||
bool8 PosHasItem(DungeonPos *pos);
|
||||
Entity *GetMonsterAtPos(DungeonPos *pos);
|
||||
bool8 sub_804AD34(DungeonPos *pos);
|
||||
bool8 sub_804AE08(DungeonPos *pos);
|
||||
void sub_804AE84(DungeonPos *pos);
|
||||
bool8 IsTileGround(Tile *tile);
|
||||
bool8 IsWaterTileset(void);
|
||||
|
||||
#define DUNGEON_WATER_TYPE_NONE 0
|
||||
#define DUNGEON_WATER_TYPE_LAVA 1
|
||||
#define DUNGEON_WATER_TYPE_WATER 2
|
||||
|
||||
extern const u8 gDungeonWaterType[76];
|
||||
|
||||
bool8 sub_804AD34(DungeonPos *pos);
|
||||
void sub_804AE84(DungeonPos *pos);
|
||||
bool8 IsTileGround(Tile *tile);
|
||||
bool8 IsWaterTileset(void);
|
||||
|
||||
#endif // GUARD_DUNGEON_MAP_ACCESS_H
|
||||
|
|
|
|||
|
|
@ -13,4 +13,6 @@ void ShowStatusesDescriptionMenu(s32 count, STATUSTEXTS(statuses));
|
|||
#define WHICH_MENU_ITEMS 2
|
||||
Entity *ShowDungeonToWhichMonMenu(s32 *teamId, s32 caseId);
|
||||
|
||||
extern s32 gTeamMenuChosenId;
|
||||
|
||||
#endif // GUARD_DUNGEON_MENU_TEAM_H
|
||||
|
|
|
|||
|
|
@ -27,6 +27,8 @@ struct DungeonDialogueStruct
|
|||
const u8 *str;
|
||||
};
|
||||
|
||||
extern bool8 gUnknown_203B434;
|
||||
|
||||
void sub_80521D0(void);
|
||||
void sub_8052210(bool8 a0);
|
||||
|
||||
|
|
|
|||
|
|
@ -70,8 +70,7 @@ void sub_806A898(Entity *entity, bool8 r7, bool8 showRunAwayEffect);
|
|||
void sub_806A914(bool8 a0, bool8 a1, bool8 showRunAwayEffect);
|
||||
void sub_806A974(void);
|
||||
void sub_806A9B4(Entity *entity, s32 moveIndex);
|
||||
// s16 memes
|
||||
//bool8 sub_806AA0C(s16 _species, bool32 _a1);
|
||||
bool8 sub_806AA0C(s32 _species, bool32 _a1);
|
||||
void sub_806AA70(void);
|
||||
void sub_806AB2C(void);
|
||||
void EndAbilityImmuneStatus(Entity *attacker, Entity *target);
|
||||
|
|
|
|||
32
include/dungeon_mon_spawn.h
Normal file
32
include/dungeon_mon_spawn.h
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
#ifndef GUARD_DUNGEON_MON_SPAWN_H
|
||||
#define GUARD_DUNGEON_MON_SPAWN_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_pokemon.h"
|
||||
|
||||
struct MonSpawnInfo
|
||||
{
|
||||
s16 species;
|
||||
u8 unk2;
|
||||
u32 unk4;
|
||||
s16 level;
|
||||
DungeonPos pos;
|
||||
u8 unk10;
|
||||
};
|
||||
|
||||
void sub_806AD3C(void);
|
||||
void sub_806B168(void);
|
||||
void sub_806B404(void);
|
||||
void sub_806B678(void);
|
||||
void SpawnWildMonsOnFloor(void);
|
||||
Entity* SpawnWildMon(struct MonSpawnInfo *monSpawnInfo, bool8 a1);
|
||||
bool8 SpawnTeamMember(s16 _species, s32 x, s32 y, DungeonMon *monPtr, Entity **a4, bool32 _a5, u32 _a6);
|
||||
void UpdateEntitySpecies(Entity *entity, s32 _species);
|
||||
void ResetMonEntityData(EntityInfo *entInfo, bool8 setStatsToOne);
|
||||
void sub_806C1D8(void);
|
||||
void sub_806C264(s32 teamIndex, EntityInfo *entInfo);
|
||||
void sub_806C330(s32 _x, s32 _y, s16 _species, u32 _a3);
|
||||
void sub_806C3C0(void);
|
||||
void sub_806C42C(void);
|
||||
|
||||
#endif
|
||||
|
|
@ -1,17 +1,26 @@
|
|||
#ifndef GUARD_DUNGEON_MUSIC_H
|
||||
#define GUARD_DUNGEON_MUSIC_H
|
||||
|
||||
u16 DungeonGetCurrentBGSong(void);
|
||||
void PlayDungeonCursorSE(bool8 checkMenuEntriesCount);
|
||||
void PlayDungeonConfirmationSE(void);
|
||||
void sub_8083D1C(void);
|
||||
void PlayDungeonCancelSE(void);
|
||||
void PlayDungeonStartButtonSE(void);
|
||||
void sub_8083D58(void);
|
||||
void sub_8083D68(void);
|
||||
void sub_8083D78(void);
|
||||
void sub_8083D88(void);
|
||||
void PlayDungeonFailBGM(void);
|
||||
void PlayDungeonCompleteBGM(void);
|
||||
void sub_8083E28(void);
|
||||
void PlaySoundEffect(u32 songIndex);
|
||||
void StopSoundEffect(u32 songIndex);
|
||||
bool8 IsFanfareSEPlaying_2(u16 songIndex);
|
||||
void DungeonStartNewBGM(u16 songIndex);
|
||||
void DungeonFadeInNewBGM(u16 songIndex, u32 fadeInSpeed);
|
||||
void DungeonFadeOutBGM(u16 speed);
|
||||
void DungeonStartNewBGM(u16 songIndex);
|
||||
void DungeonStopBGM(void);
|
||||
bool8 IsFanfareSEPlaying_2(u16 songIndex);
|
||||
void PlayDungeonCursorSE(bool8 checkMenuEntriesCount);
|
||||
void PlayDungeonStartButtonSE(void);
|
||||
void PlaySoundEffect(u32 songIndex);
|
||||
void StopDungeonBGM(void);
|
||||
void StopSoundEffect(u32 songIndex);
|
||||
void UpdateDungeonMusic(void);
|
||||
|
||||
#endif // GUARD_DUNGEON_MUSIC_H
|
||||
|
|
|
|||
|
|
@ -1,6 +1,10 @@
|
|||
#ifndef GUARD_DUNGEON_NAME_BANNER_H
|
||||
#define GUARD_DUNGEON_NAME_BANNER_H
|
||||
|
||||
#include "structs/str_file_system.h"
|
||||
|
||||
void ShowDungeonNameBanner_Async(void);
|
||||
|
||||
extern OpenedFile *gDungeonNameBannerPalette;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2,9 +2,20 @@
|
|||
#define GUARD_DUNGEON_RANGE_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
bool8 IsPositionActuallyInSight(DungeonPos *pos1, DungeonPos *pos2);
|
||||
bool8 IsPositionInSight(DungeonPos *pos1, DungeonPos *pos2);
|
||||
void sub_80833E8(DungeonPos *param_1, s32 *param_2);
|
||||
bool8 IsTargetTwoTilesAway(DungeonPos *pos1, DungeonPos *pos2);
|
||||
bool8 sub_8083568(s32 inX, s32 inY, u8 index);
|
||||
Entity* GetLeader(void);
|
||||
EntityInfo* GetLeaderInfo(void);
|
||||
bool8 sub_8083660(DungeonPos *posDst);
|
||||
bool8 sub_808384C(DungeonPos *posDst, const DungeonPos *posSrc);
|
||||
void sub_80838EC(u8 *a0);
|
||||
void sub_8083904(struct DungeonPos *posDst, struct Entity *entityArg);
|
||||
|
||||
extern Entity *gLeaderPointer;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
19
include/dungeon_tilemap.h
Normal file
19
include/dungeon_tilemap.h
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
#ifndef GUARD_DUNGEON_TILEMAP_H
|
||||
#define GUARD_DUNGEON_TILEMAP_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void sub_803F27C(bool8 a0);
|
||||
bool8 sub_803F428(DungeonPos *pos);
|
||||
void sub_803F4A0(Entity *a0);
|
||||
void PointCameraToMonster(Entity *a0);
|
||||
void UpdateCamera(u8 a0);
|
||||
void sub_803F878(s32 a0, s32 a1);
|
||||
s32 GetCameraXPos(void);
|
||||
s32 GetCameraYPos(void);
|
||||
void sub_803F9CC(void);
|
||||
void HandleLuminousOrbAction(Entity *pokemon);
|
||||
void sub_8040094(u8 r0);
|
||||
|
||||
#endif // GUARD_DUNGEON_TILEMAP_H
|
||||
9
include/dungeon_turn_effects.h
Normal file
9
include/dungeon_turn_effects.h
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef GUARD_DUNGEON_TURN_EFFECTS_H
|
||||
#define GUARD_DUNGEON_TURN_EFFECTS_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void ApplyEndOfTurnEffects(Entity *entity);
|
||||
void TickStatusAndHealthRegen(Entity *entity);
|
||||
|
||||
#endif
|
||||
|
|
@ -5,6 +5,7 @@
|
|||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/str_traps.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "structs/map.h"
|
||||
|
||||
static inline EntityInfo *GetEntInfo(Entity *entity)
|
||||
|
|
@ -35,4 +36,7 @@ bool8 CanTargetPosition(Entity *entity, DungeonPos *pos);
|
|||
void SubstitutePlaceholderStringTags(u8 *buffer, Entity *entity, u32 param_3);
|
||||
void sub_8045ACC(void);
|
||||
|
||||
extern u8 gUnknown_202EE70[MAX_TEAM_BODY_SIZE];
|
||||
extern u8 gUnknown_202EE76[DUNGEON_MAX_WILD_POKEMON_BODY_SIZE];
|
||||
|
||||
#endif // GUARD_DUNGEON_UTIL_H
|
||||
|
|
|
|||
|
|
@ -1,32 +0,0 @@
|
|||
#ifndef GUARD_DUNGEON_UTIL_1_H
|
||||
#define GUARD_DUNGEON_UTIL_1_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
typedef void (*DungeonCallback)(Entity *);
|
||||
typedef struct struct_8085B80 {
|
||||
u8 unk0;
|
||||
Entity *unk4;
|
||||
s32 unk8;
|
||||
s16 *unkC;
|
||||
} struct_8085B80;
|
||||
|
||||
Entity *xxx_call_GetLeader(void);
|
||||
Entity *GetPartnerEntity(void);
|
||||
void sub_80854D4(void);
|
||||
void sub_80855E4(DungeonCallback func);
|
||||
void sub_808563C(DungeonCallback func);
|
||||
Entity *GetEntityFromMonsterBehavior(u8 entityType);
|
||||
void sub_80856C8(Entity * pokemon, s32 x, s32 y);
|
||||
void sub_80856E0(Entity * pokemon, s32 direction);
|
||||
void sub_8085764(void);
|
||||
void sub_8085860(s32 x, s32 y);
|
||||
void ShiftCameraToPosition(PixelPos *posStruct, s32 cameraSteps);
|
||||
void SetFacingDirection(Entity *pokemon, s32 direction);
|
||||
void sub_8085930(s32 direction);
|
||||
void sub_80859F0(s32 direction);
|
||||
bool8 ShouldRunMonsterAI(Entity *entity);
|
||||
void sub_8085B4C(struct_8085B80 a0[], s16 *a1[], Entity *a2[], s32 a3);
|
||||
void sub_80857B8(void);
|
||||
|
||||
#endif // GUARD_DUNGEON_UTIL_1_H
|
||||
|
|
@ -1,15 +1,50 @@
|
|||
#ifndef GUARD_DUNGEON_VRAM_H
|
||||
#define GUARD_DUNGEON_VRAM_H
|
||||
|
||||
// TODO: copy stuff from dungeon_vram.c to this header
|
||||
|
||||
extern u8 gUnknown_203B40D;
|
||||
|
||||
#include "structs/str_text.h"
|
||||
#include "structs/sprite_oam.h"
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void sub_803E250(void);
|
||||
void DungeonRunFrameActions(u32 a0);
|
||||
void sub_803E668(u32 unused);
|
||||
void sub_803E708(s32 numFrames, u32 a1);
|
||||
void sub_803E724(s32 r0);
|
||||
void sub_803E748(void);
|
||||
void sub_803E7C8(void);
|
||||
void sub_803E830(void);
|
||||
void sub_803E874(bool8 r10, s32 r9);
|
||||
void BgColorCallNullsub4(void);
|
||||
void sub_803EA10(void);
|
||||
void sub_803EAF0(u32 kind, u8 *name);
|
||||
void DungeonShowWindows(const WindowTemplates *winTemplates, bool8 a1);
|
||||
void DungeonRunFrameActions(u32);
|
||||
void sub_803ED30(s32 a0, Entity *mon, u8 a2, s32 a3);
|
||||
|
||||
struct unkStruct_202ED28
|
||||
{
|
||||
SpriteOAM sprite;
|
||||
DungeonPos pos;
|
||||
};
|
||||
|
||||
struct UnkStruct_202EDE8
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
Entity *unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
};
|
||||
|
||||
extern struct unkStruct_202ED28 gUnknown_202ED28[][6];
|
||||
extern SpriteOAM gUnknown_202EDC0;
|
||||
extern s32 gDungeonBrightness;
|
||||
extern s32 gDungeonFramesCounter;
|
||||
extern s32 gUnknown_202EDD0;
|
||||
extern struct UnkStruct_202EDE8 gUnknown_202EDE8;
|
||||
|
||||
extern u8 gUnknown_203B40C;
|
||||
extern u8 gUnknown_203B40D;
|
||||
|
||||
#endif // GUARD_DUNGEON_VRAM_H
|
||||
|
|
|
|||
9
include/explosion.h
Normal file
9
include/explosion.h
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef GUARD_EXPLOSION_H
|
||||
#define GUARD_EXPLOSION_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandleExplosion(Entity *pokemon,Entity *target,DungeonPos *param_3,s32 param_4,u8 moveType,s16 param_6);
|
||||
|
||||
#endif // GUARD_EXPLOSION_H
|
||||
9
include/expose_trap.h
Normal file
9
include/expose_trap.h
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef GUARD_EXPOSE_TRAP_H
|
||||
#define GUARD_EXPOSE_TRAP_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void sub_807D3CC(Entity *param_1);
|
||||
bool8 ExposeTrap(s32 x,s32 y);
|
||||
|
||||
#endif // GUARD_EXPOSE_TRAP_H
|
||||
|
|
@ -1,6 +1,8 @@
|
|||
#ifndef GUARD_GAME_OPTIONS_H
|
||||
#define GUARD_GAME_OPTIONS_H
|
||||
|
||||
#include "data_serializer.h"
|
||||
|
||||
enum DungeonSpeed
|
||||
{
|
||||
DUNGEON_SPEED_SLOW,
|
||||
|
|
@ -66,10 +68,16 @@ typedef struct GameOptions
|
|||
|
||||
extern GameOptions *gGameOptionsRef;
|
||||
|
||||
GameOptions *GetGameOptions(void);
|
||||
bool8 GameOptionsNotChange(GameOptions *newOptions);
|
||||
void InitializeGameOptions(bool8 initializeGender);
|
||||
void LoadGameOptions(void);
|
||||
GameOptions *GetGameOptions(void);
|
||||
void InitializeGameOptions(bool8 initializeGender);
|
||||
bool8 GameOptionsNotChange(GameOptions *newOptions);
|
||||
void WriteGameOptionsBits(DataSerializer *param_1);
|
||||
void ReadGameOptionsBits(DataSerializer *param_1);
|
||||
void SetWindowBGColor(void);
|
||||
bool8 GameOptions_ShowMiniMap(void);
|
||||
bool8 GameOptions_IsTransparentMiniMap(void);
|
||||
void GameOptions_SetTransparentMiniMap(void);
|
||||
bool8 sub_8094D14(void);
|
||||
|
||||
#endif // GUARD_GAME_OPTIONS_H
|
||||
|
|
|
|||
8
include/hurl_orb.h
Normal file
8
include/hurl_orb.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_HURL_ORB_H
|
||||
#define GUARD_HURL_ORB_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandleHurlOrb(Entity *target, Entity *attacker);
|
||||
|
||||
#endif // GUARD_HURL_ORB_H
|
||||
|
|
@ -79,5 +79,7 @@ bool8 RapidSpinMoveAction(Entity *pokemon, Entity *target, Move *move, s32 param
|
|||
bool8 SureShotMoveAction(Entity *pokemon, Entity *target, Move *move, s32 param_4);
|
||||
bool8 CosmicPowerMoveAction(Entity *pokemon, Entity *target, Move *move, s32 param_4);
|
||||
|
||||
extern const s32 gStatIndexAtkDef;
|
||||
extern const s32 gStatIndexSpecial;
|
||||
|
||||
#endif /* ifndef GUARD_MOVE_ORB_ACTIONS_1_H */
|
||||
|
|
|
|||
8
include/one_room_orb.h
Normal file
8
include/one_room_orb.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_ONE_ROOM_ORB_H
|
||||
#define GUARD_ONE_ROOM_ORB_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandleOneRoomOrb(Entity *pokemon, Entity *target);
|
||||
|
||||
#endif // GUARD_ONE_ROOM_ORB_H
|
||||
|
|
@ -37,24 +37,44 @@ extern RecruitedMon *gRecruitedPokemonRef;
|
|||
void LoadMonsterParameters(void);
|
||||
RecruitedMon *GetRecruitedPokemon(void);
|
||||
void InitializeRecruitedPokemon(void);
|
||||
|
||||
|
||||
u8 GetBodySize(s32 index);
|
||||
void CopyMonsterNameToBuffer(u8 * buffer, s32 index);
|
||||
void CopyYellowMonsterNametoBuffer(u8 *buffer, s16 index);
|
||||
void CopyCyanMonsterNametoBuffer(u8 *buffer, s32 index_);
|
||||
void PrintColoredPokeNameToBuffer(u8 *buffer, Pokemon *pokemon, s32 colorNum);
|
||||
void sub_808D930(u8 *buffer, s32 index);
|
||||
void sub_808D9DC(u8 *buffer, DungeonMon *, s32 colorNum);
|
||||
void sub_808DA0C(u8 *buffer, DungeonMon *);
|
||||
void sub_808CE74(s16 _species, bool32 _isLeader, u8* name);
|
||||
void CreateLevel1Pokemon(Pokemon *pokemon, s16 _species, u8* name, u32 _itemID, const DungeonLocation *location, u16 *moves);
|
||||
void sub_808D0D8(Pokemon *pokemon);
|
||||
void ConvertStoryMonToPokemon(Pokemon *dst, const struct StoryMonData *src);
|
||||
Pokemon *TryAddPokemonToRecruited(Pokemon*);
|
||||
Pokemon *sub_808D278(s32 species);
|
||||
Pokemon *TryAddLevel1PokemonToRecruited(s32 species, u8 *name, u32 _itemID, const DungeonLocation *location, u16 *moveID);
|
||||
void sub_808D31C(Pokemon *param_1);
|
||||
Pokemon *GetPlayerPokemonStruct(void);
|
||||
Pokemon *sub_808D378(void);
|
||||
Pokemon *sub_808D3BC(void);
|
||||
Pokemon *sub_808D3F8(void);
|
||||
Pokemon *GetRecruitedMonBySpecies(s16 species_, s32 sameSpeciesCounter);
|
||||
s32 GetFriendSum_808D480(void);
|
||||
bool8 sub_808D4B0(void);
|
||||
bool8 sub_808D500(void);
|
||||
s32 GetUnitSum_808D544(s32 *team);
|
||||
s32 sub_808D580(s32 *team);
|
||||
s32 sub_808D654(s32 *ptr);
|
||||
s32 sub_808D6A4(s32 *ptr);
|
||||
bool8 sub_808D750(s32 index_);
|
||||
void PeekPokemonItem(s16 index_, BulkItem* item);
|
||||
void GivePokemonItem(s16 index_, BulkItem* item);
|
||||
bool8 IsPokemonRenamed(Pokemon* pokemon);
|
||||
bool8 CanMonLearnMove(u16 moveID, s16 _species);
|
||||
|
||||
u8 *GetCategoryString(s16 index);
|
||||
u8 GetShadowSize(s16 index);
|
||||
bool8 ComparePokemonNames(s16, s16);
|
||||
void CopyMonsterNameToBuffer(u8 * buffer, s32 index);
|
||||
void CopyYellowMonsterNametoBuffer(u8 *buffer, s16 index);
|
||||
void CopyCyanMonsterNametoBuffer(u8 *buffer, s32 index_);
|
||||
void sub_808D930(u8 *buffer, s32 index);
|
||||
char * GetMonSpecies(s16 index);
|
||||
void PrintColoredPokeNameToBuffer(u8 *buffer, Pokemon *pokemon, s32 colorNum);
|
||||
void sub_808D9DC(u8 *buffer, DungeonMon *, s32 colorNum);
|
||||
void sub_808DA0C(u8 *buffer, DungeonMon *);
|
||||
void PrintPokeNameToBuffer(u8 *buffer, Pokemon *pokemon);
|
||||
bool8 sub_808DA44(s32 _species, u32 a2_);
|
||||
u8 *GetCategoryString(s16 index);
|
||||
u8 GetBodySize(s32 index);
|
||||
u8 GetShadowSize(s16 index);
|
||||
s32 GetMovementSpeed(s16 index);
|
||||
u8 GetMovementType(s16 index);
|
||||
u8 GetRegenSpeed(s16 index);
|
||||
|
|
@ -78,43 +98,26 @@ s16 GetInternalNo(s16 index);
|
|||
s32 CalculateEXPGain(s16 index, s32 level);
|
||||
s16 GetPokemonEvolveConditions(s16 index, unkEvolve *r1);
|
||||
u8 GetPokemonOverworldPalette(s16 index, bool32 recolorShopKecleon);
|
||||
bool8 IsPokemonDialogueSpriteAvail(s16 index, s32 spriteId);
|
||||
OpenedFile *OpenPokemonDialogueSpriteFile(s16 index);
|
||||
OpenedFile *GetDialogueSpriteDataPtr(s32 index);
|
||||
s32 GetUnownIndex(s16 index);
|
||||
void GenerateHiddenPower(HiddenPower *);
|
||||
s32 GetEvolutionSequence(Pokemon *pokemon, EvolveStage *);
|
||||
s32 sub_808E400(s32 _species, s16* _a2, bool32 _bodySizeCheck, bool32 _shedinjaCheck);
|
||||
void sub_808E490(Move* a1, s32 species);
|
||||
bool8 IsPokemonDialogueSpriteAvail(s16 index, s32 spriteId);
|
||||
void RecruitedPokemonToDungeonMon(DungeonMon *dst, u32 recruitedPokemonId);
|
||||
void PokemonToDungeonMon(DungeonMon *, Pokemon *, s32);
|
||||
void PokemonToDungeonMon(DungeonMon *dst, Pokemon *src, s32 recruitedPokemonId);
|
||||
void DungeonMonToRecruitedPokemon(s32 id, DungeonMon* src);
|
||||
void DungeonMonToPokemon(Pokemon* dst, DungeonMon* src);
|
||||
void WritePoke1Bits(DataSerializer *, Pokemon *pokemon);
|
||||
void ReadPoke1Bits(DataSerializer *, Pokemon *);
|
||||
s32 sub_808E218(unkStruct_808E218_arg *, Pokemon *pokemon);
|
||||
void CreateLevel1Pokemon(Pokemon *pokemon, s16 _species, u8* name, u32 _itemID, const DungeonLocation *location, u16 *moves);
|
||||
void sub_808D0D8(Pokemon *pokemon);
|
||||
Pokemon *TryAddLevel1PokemonToRecruited(s32 species, u8 *name, u32 _itemID, const DungeonLocation *location, u16 *moveID);
|
||||
Pokemon *GetPlayerPokemonStruct(void);
|
||||
Pokemon *TryAddPokemonToRecruited(Pokemon*);
|
||||
Pokemon *sub_808D378(void);
|
||||
Pokemon *sub_808D3BC(void);
|
||||
Pokemon *sub_808D3F8(void);
|
||||
Pokemon *GetRecruitedMonBySpecies(s16 species_, s32 sameSpeciesCounter);
|
||||
s32 GetFriendSum_808D480(void);
|
||||
bool8 sub_808D4B0(void);
|
||||
bool8 sub_808D500(void);
|
||||
s32 GetUnitSum_808D544(s32 *);
|
||||
s32 sub_808D580(s32 *);
|
||||
bool8 ComparePokemonNames(s16, s16);
|
||||
void PrintPokeNameToBuffer(u8 *buffer, Pokemon *pokemon);
|
||||
void sub_808DFDC(s32 a1, DungeonMon* a2);
|
||||
void GetLvlUpEntry(LevelData* a1, s32 _id, s32 level);
|
||||
const u8* DecompressMoveID(const u8* a1, u16* moveID);
|
||||
bool8 sub_808DA44(s32, u32);
|
||||
void ConvertStoryMonToPokemon(Pokemon *dst, const struct StoryMonData *src);
|
||||
void sub_808CE74(s16 _species, bool32 _isLeader, u8* name);
|
||||
Pokemon *sub_808D278(s32 species);
|
||||
s32 GetMovesLearnedAtLevel(u16* dst, s16 species, s32 level, s32 IQPoints);
|
||||
bool8 CanMonLearnMove(u16 moveID, s16 _species);
|
||||
s32 sub_808E218(unkStruct_808E218_arg* a1, Pokemon* pokemon);
|
||||
s32 GetEvolutionSequence(Pokemon* pokemon, EvolveStage* a2);
|
||||
s32 sub_808E400(s32 _species, s16* _a2, bool32 _bodySizeCheck, bool32 _shedinjaCheck);
|
||||
void sub_808E490(Move* a1, s32 species);
|
||||
char* sub_808E4FC(s32 a1);
|
||||
char* sub_808E51C(s32 a1);
|
||||
void InitShadowSprites(s32 param_1, s32 param_2);
|
||||
bool8 AddShadowSprite(s32 species_, DungeonPos *shadowPos, axdata *axData);
|
||||
|
||||
static inline bool8 PokemonExists(Pokemon *mon)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4,25 +4,36 @@
|
|||
#include "pokemon.h"
|
||||
#include "structs/str_spawn_pokemon_data.h"
|
||||
|
||||
void GenerateHiddenPower(HiddenPower* a1);
|
||||
bool8 HasRecruitedMon(s32 species_);
|
||||
s16 GetBaseSpecies(s16 index);
|
||||
s16 GetBaseSpeciesNoUnown(s16 index);
|
||||
bool8 TacticsTargetLeader(u8 tactic);
|
||||
bool8 HasIQForSkill(s32 pokeIQ, u8 IQSkillIndex);
|
||||
s32 GetNumAvailableIQSkills(u8 *iqSkillBuffer, s32 pokeIQ);
|
||||
void CopyTacticsNameToBuffer(char *buffer, u8 tactic);
|
||||
const u8 *GetIQSkillName(u8 skill);
|
||||
const u8 *GetIQSkillDescription(u8 skill);
|
||||
const u8 *GetTacticsDescription(u8 tactic);
|
||||
void ToggleIQSkill(IqSkillFlags *iq, u32 skillIndex);
|
||||
void SetIQSkill(IqSkillFlags *iq, u32 skillIndex);
|
||||
bool8 IsIQSkillSet(IqSkillFlags *iq, u32 IQSkillBit);
|
||||
void SetDefaultIQSkills(IqSkillFlags *iq, bool8 enableSelfCurer);
|
||||
s32 GetUnownIndex(s16 index);
|
||||
s16 ExtractSpeciesIndex(SpawnPokemonData *data);
|
||||
void SetSpeciesToExtract(SpawnPokemonData *data, s32 species_);
|
||||
void SetSpeciesLevelToExtract(SpawnPokemonData *data, s32 level, s32 species_);
|
||||
s32 ExtractLevel(SpawnPokemonData *data);
|
||||
|
||||
const u8 *GetIQSkillName(u8 skill);
|
||||
void CopyTacticsNameToBuffer(char *buffer, u8 tactic);
|
||||
const u8 *GetIQSkillDescription(u8 skill);
|
||||
const u8 *GetTacticsDescription(u8 tactic);
|
||||
bool8 TacticsTargetLeader(u8 tactic);
|
||||
void GetAvailTacticsforLvl(u8 *tacticsBuffer, s32 pokeLevel);
|
||||
void GetUnlockedTacticFlags(u8 *tacticsBuffer, s32 pokeLevel);
|
||||
bool8 HasIQForSkill(s32 pokeIQ, u8 IQSkillIndex);
|
||||
s32 GetNumAvailableIQSkills(u8 *iqSkillBuffer, s32 pokeIQ);
|
||||
void ToggleIQSkill(IqSkillFlags *iq, u32 skillIndex);
|
||||
void SetIQSkill(IqSkillFlags *iq, u32 skillIndex);
|
||||
void SetDefaultIQSkills(IqSkillFlags *iq, bool8 enableSelfCurer);
|
||||
bool8 IsIQSkillSet(IqSkillFlags *iq, u32 IQSkillBit);
|
||||
void sub_808ED00(void);
|
||||
s32 SaveRecruitedPokemon(u8 *a1, s32 a2);
|
||||
s32 RestoreRecruitedPokemon(u8 *a1, s32 a2);
|
||||
void WritePoke1Bits(DataSerializer *, Pokemon *pokemon);
|
||||
void ReadPoke1Bits(DataSerializer *, Pokemon *);
|
||||
s32 SavePoke2s(u8* buffer, s32 size);
|
||||
s32 RestorePoke2s(u8* a1, s32 size);
|
||||
void ReadPoke1LevelBits(DataSerializer* a1, struct unkPokeSubStruct_C* unkC);
|
||||
void WritePoke1LevelBits(DataSerializer* a1, struct unkPokeSubStruct_C* unkC);
|
||||
|
||||
#endif // GUARD_POKEMON_3_H
|
||||
|
|
|
|||
8
include/pounce_orb.h
Normal file
8
include/pounce_orb.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_POUNCE_ORB_H
|
||||
#define GUARD_POUNCE_ORB_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandlePounceOrb(Entity *pokemon, Entity *target, u8 r2);
|
||||
|
||||
#endif // GUARD_POUNCE_ORB_H
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
#ifndef GUARD_STR_202ED28_H
|
||||
#define GUARD_STR_202ED28_H
|
||||
|
||||
#include "structs/sprite_oam.h"
|
||||
#include "structs/str_position.h"
|
||||
|
||||
struct unkStruct_202ED28
|
||||
{
|
||||
SpriteOAM sprite;
|
||||
DungeonPos pos;
|
||||
};
|
||||
|
||||
extern struct unkStruct_202ED28 gUnknown_202ED28[][6];
|
||||
|
||||
#endif
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
#ifndef GUARD_STR_202EDE8_H
|
||||
#define GUARD_STR_202EDE8_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
struct UnkStruct_202EDE8
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
Entity *unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
};
|
||||
|
||||
extern struct UnkStruct_202EDE8 gUnknown_202EDE8;
|
||||
|
||||
#endif
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
#ifndef GUARD_STR_806B7F8_H
|
||||
#define GUARD_STR_806B7F8_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
struct unkStruct_806B7F8
|
||||
{
|
||||
s16 species;
|
||||
u8 unk2;
|
||||
u32 unk4;
|
||||
s16 level;
|
||||
DungeonPos pos;
|
||||
u8 unk10;
|
||||
};
|
||||
|
||||
Entity* sub_806B7F8(struct unkStruct_806B7F8 *, bool8);
|
||||
|
||||
#endif
|
||||
8
include/switcher_orb.h
Normal file
8
include/switcher_orb.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_SWITCHER_ORB_H
|
||||
#define GUARD_SWITCHER_ORB_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandleSwitcherOrb(Entity *pokemon, Entity *target, bool8 unused);
|
||||
|
||||
#endif // GUARD_SWITCHER_ORB_H
|
||||
8
include/trawl_orb.h
Normal file
8
include/trawl_orb.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef GUARD_TRAWL_ORB_H
|
||||
#define GUARD_TRAWL_ORB_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void HandleTrawlOrb(Entity *user, Entity *target);
|
||||
|
||||
#endif // GUARD_TRAWL_ORB_H
|
||||
9
include/warp_target.h
Normal file
9
include/warp_target.h
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef GUARD_WARP_TARGET_H
|
||||
#define GUARD_WARP_TARGET_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void WarpTarget(Entity *pokemon, Entity *target, u32 param_3, DungeonPos *pos);
|
||||
|
||||
#endif // GUARD_WARP_TARGET_H
|
||||
|
|
@ -5,5 +5,11 @@
|
|||
|
||||
u8 GetApparentWeather(Entity *pokemon);
|
||||
void sub_807E5E4(u8 weather);
|
||||
void sub_807E7FC(bool8 r0);
|
||||
void sub_807E88C(void);
|
||||
void sub_807E8F0(Entity *pokemon);
|
||||
void GetWeatherName(u8 *buffer, u8 weather);
|
||||
void MudWaterSportEffect(u8 which);
|
||||
bool8 sub_807EAA0(bool8 arg0, bool8 arg1);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
24
ld_script.ld
24
ld_script.ld
|
|
@ -194,7 +194,7 @@ SECTIONS {
|
|||
src/personality_test1.o(.text);
|
||||
src/personality_test2.o(.text);
|
||||
src/code_803D0D8.o(.text);
|
||||
src/dungeon_spawns.o(.text);
|
||||
src/dungeon_floor_spawns.o(.text);
|
||||
src/dungeon_name_banner.o(.text);
|
||||
src/code_803DA7C_2.o(.text);
|
||||
src/dungeon_vram.o(.text);
|
||||
|
|
@ -235,18 +235,18 @@ SECTIONS {
|
|||
src/code_8066D04.o(.text);
|
||||
src/dungeon_8067A80.o(.text);
|
||||
src/dungeon_misc.o(.text);
|
||||
src/code_8069E0C.o(.text);
|
||||
src/dungeon_mon_spawn.o(.text);
|
||||
src/code_806CD90.o(.text);
|
||||
src/dungeon_damage.o(.text);
|
||||
src/code_806FDF4.o(.text);
|
||||
src/status_checks.o(.text);
|
||||
src/dungeon_logic.o(.text);
|
||||
src/dungeon_8071B48.o(.text);
|
||||
src/code_80718D8.o(.text);
|
||||
src/dungeon_leveling.o(.text);
|
||||
src/dungeon_ai_leader.o(.text);
|
||||
src/dungeon_8072CF4.o(.text);
|
||||
src/dungeon_action_execution.o(.text);
|
||||
src/dungeon_ai_items.o(.text);
|
||||
src/code_8073CF0.o(.text);
|
||||
src/dungeon_turn_effects.o(.text);
|
||||
src/code_8075708.o(.text);
|
||||
src/dungeon_ai.o(.text);
|
||||
src/move_orb_effects_1.o(.text);
|
||||
|
|
@ -278,7 +278,7 @@ SECTIONS {
|
|||
src/dungeon_random.o(.text);
|
||||
src/dungeon_cleared_window.o(.text);
|
||||
src/dungeon_jobs.o(.text);
|
||||
src/code_80848F0.o(.text);
|
||||
src/dungeon_cutscene.o(.text);
|
||||
src/dungeon_cutscene_skarmory.o(.text);
|
||||
src/dungeon_cutscene_meanies.o(.text);
|
||||
src/dungeon_cutscene_zapdos.o(.text);
|
||||
|
|
@ -574,7 +574,7 @@ SECTIONS {
|
|||
src/personality_test2.o(.rodata);
|
||||
src/code_803D0D8.o(.rodata);
|
||||
src/dungeon_pos_data.o(.rodata);
|
||||
src/dungeon_spawns.o(.rodata);
|
||||
src/dungeon_floor_spawns.o(.rodata);
|
||||
src/dungeon_config.o(.rodata);
|
||||
src/dungeon_name_banner.o(.rodata);
|
||||
src/code_803DA7C_2.o(.rodata);
|
||||
|
|
@ -620,18 +620,18 @@ SECTIONS {
|
|||
src/code_8066D04.o(.rodata);
|
||||
src/dungeon_8067A80.o(.rodata);
|
||||
src/dungeon_misc.o(.rodata);
|
||||
src/code_8069E0C.o(.rodata);
|
||||
src/dungeon_mon_spawn.o(.rodata);
|
||||
src/code_806CD90.o(.rodata);
|
||||
src/dungeon_damage.o(.rodata);
|
||||
src/code_806FDF4.o(.rodata);
|
||||
src/status_checks.o(.rodata);
|
||||
src/dungeon_logic.o(.rodata);
|
||||
src/dungeon_8071B48.o(.rodata);
|
||||
src/code_80718D8.o(.rodata);
|
||||
src/dungeon_leveling.o(.rodata);
|
||||
src/dungeon_ai_leader.o(.rodata);
|
||||
src/dungeon_8072CF4.o(.rodata);
|
||||
src/dungeon_action_execution.o(.rodata);
|
||||
src/dungeon_ai_items.o(.rodata);
|
||||
src/code_8073CF0.o(.rodata);
|
||||
src/dungeon_turn_effects.o(.rodata);
|
||||
src/code_8075708.o(.rodata);
|
||||
src/dungeon_ai.o(.rodata);
|
||||
src/move_orb_effects_1.o(.rodata);
|
||||
|
|
@ -666,7 +666,7 @@ SECTIONS {
|
|||
src/dungeon_random.o(.rodata);
|
||||
src/dungeon_cleared_window.o(.rodata);
|
||||
src/dungeon_jobs.o(.rodata);
|
||||
src/code_80848F0.o(.rodata);
|
||||
src/dungeon_cutscene.o(.rodata);
|
||||
src/dungeon_cutscene_skarmory.o(.rodata);
|
||||
src/dungeon_cutscene_meanies.o(.rodata);
|
||||
src/dungeon_cutscene_zapdos.o(.rodata);
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "blow_away.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_807CD9C.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "dungeon_ai.h"
|
||||
|
|
@ -27,20 +27,14 @@
|
|||
#include "dungeon_strings.h"
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_damage.h"
|
||||
#include "dungeon_kecleon_shop.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
void sub_804EB30();
|
||||
bool8 ExposeTrap(s32 x, s32 y);
|
||||
void sub_807EC28(u32);
|
||||
u8 IsFloorOver(void);
|
||||
void sub_80421AC(Entity * pokemon, Entity * target);
|
||||
void sub_807BB78(Entity *pokemon);
|
||||
extern void UpdateCamera(u32);
|
||||
bool8 sub_808384C(DungeonPos *, DungeonPos *);
|
||||
u8 sub_8083660(DungeonPos *);
|
||||
|
||||
extern u32 gDungeonFramesCounter;
|
||||
|
||||
void sub_807D068(Entity *pokemon, DungeonPos *pos);
|
||||
extern void sub_804EB30();
|
||||
extern bool8 ExposeTrap(s32 x, s32 y);
|
||||
extern void sub_80421AC(Entity * pokemon, Entity * target);
|
||||
extern void sub_807BB78(Entity *pokemon);
|
||||
|
||||
void BlowAwayTarget(Entity *pokemon, Entity *target, u32 direction)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
#include "sprite.h"
|
||||
#include "weather.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
struct UnkStruct_8040094
|
||||
{
|
||||
|
|
@ -42,21 +43,16 @@ extern s32 sub_800E52C(struct UnkStruct_8040094 *a0);
|
|||
extern s32 sub_800EA84(struct UnkStruct_8040094 *a0);
|
||||
extern bool8 sub_800E838(struct UnkStruct_8040094 *a0, s32 a1);
|
||||
extern bool8 sub_800E9A8(s32 a0);
|
||||
extern void sub_803EA10(void);
|
||||
extern void sub_800EEF8(u16 a0);
|
||||
extern bool8 sub_803F428(DungeonPos *pos);
|
||||
extern void sub_800EEE0(u16 a0);
|
||||
extern s32 sub_800EBC8(struct UnkStruct_8040094 *a0);
|
||||
extern bool8 sub_800E7D0(struct UnkStruct_8040094 *a0);
|
||||
extern s32 sub_800ED20(u16 param_1);
|
||||
extern u8 sub_800EC84(s32 param_1);
|
||||
extern bool8 MoveMatchesBideClassStatus(Entity *pokemon, Move *move);
|
||||
extern bool8 IsSleeping(Entity *pokemon);
|
||||
extern void sub_80421C0(Entity *pokemon, u16);
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
|
||||
extern const u8 *const gPtrMagnitudeMessage;
|
||||
extern const s32 gUnknown_8106A8C[];
|
||||
|
||||
u16 sub_80412E0(u16 moveId, u8 weather, bool32 a2);
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
#include "effect_main.h"
|
||||
#include "effect_sub_1.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_803E724.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_806CD90.h"
|
||||
|
|
@ -22,30 +22,25 @@
|
|||
#include "sprite.h"
|
||||
#include "dungeon_info.h"
|
||||
#include "run_dungeon.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "memory.h"
|
||||
#include "random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_data.h"
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_damage.h"
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
// Unknown dungeon file. File split is correct.
|
||||
|
||||
extern const u8 *gPtrFeralFoundItemMessage[];
|
||||
|
||||
extern void sub_803ED30(u8, Entity *pokemon, u8, u8);
|
||||
extern void PlaySoundEffect(u32);
|
||||
|
||||
void EntityUpdateStatusSprites(Entity *entity);
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
|
||||
extern void sub_800DBBC(void);
|
||||
extern void sub_803EA10(void);
|
||||
extern void sub_8042E98(void);
|
||||
extern void sub_800EF28(u8);
|
||||
extern void sub_80429A0(Entity *);
|
||||
|
|
@ -57,10 +52,7 @@ extern void sub_800EF40(u8 r0, u8 r1);
|
|||
extern s32 sub_800E6D8(s32);
|
||||
extern void sub_800EB24(s32 param_1, DungeonPos *param_2, DungeonPos *param_3, s32 param_4, s32 param_5);
|
||||
|
||||
u32 sub_8041764(unkStruct_80416E0 *param_1, bool8 param_2);
|
||||
s32 sub_80416E0(PixelPos *pos, u32 param_2, bool8 param_3);
|
||||
s32 sub_8041550(Entity *entity, s32 a1, u8 a2, u8 a3, s32 a4, u8 a5);
|
||||
s32 sub_804151C(Entity *entity, s32 r1, u8 r2);
|
||||
void sub_804178C(u8 param_1);
|
||||
|
||||
struct UnkStruct_80F6624
|
||||
|
|
@ -196,13 +188,16 @@ static const u32 sStatusSpriteMasks_MuzzledStatus[] = {
|
|||
/*STATUS_MUZZLED not defined*/[1] = STATUS_SPRITE_MUZZLED,
|
||||
};
|
||||
|
||||
s32 sub_804151C(Entity *entity, s32 r1, u8 r2)
|
||||
static s32 sub_8041550(Entity *entity, s32 a1, u8 a2, u8 a3, s32 a4, u8 a5);
|
||||
static u32 sub_8041764(unkStruct_80416E0 *param_1, bool8 param_2);
|
||||
|
||||
static s32 sub_804151C(Entity *entity, s32 r1, u8 r2)
|
||||
{
|
||||
u8 r3 = sub_800DC9C(r1);
|
||||
return sub_8041550(entity, r1, r2, r3, 2, 0);
|
||||
}
|
||||
|
||||
s32 sub_8041550(Entity *entity, s32 a1, u8 a2, u8 a3, s32 a4, u8 a5)
|
||||
static s32 sub_8041550(Entity *entity, s32 a1, u8 a2, u8 a3, s32 a4, u8 a5)
|
||||
{
|
||||
s32 i;
|
||||
EntityInfo *entInfo;
|
||||
|
|
@ -263,7 +258,7 @@ s32 sub_8041550(Entity *entity, s32 a1, u8 a2, u8 a3, s32 a4, u8 a5)
|
|||
return r4;
|
||||
}
|
||||
|
||||
s32 sub_80416A4(DungeonPos *pos_1, u32 param_2, bool8 param_3)
|
||||
static s32 sub_80416A4(DungeonPos *pos_1, u32 param_2, bool8 param_3)
|
||||
{
|
||||
PixelPos pos;
|
||||
|
||||
|
|
@ -302,7 +297,7 @@ s32 sub_80416E0(PixelPos *pos, u32 param_2, bool8 param_3)
|
|||
return ret;
|
||||
}
|
||||
|
||||
u32 sub_8041764(unkStruct_80416E0 *param_1, bool8 param_2)
|
||||
static u32 sub_8041764(unkStruct_80416E0 *param_1, bool8 param_2)
|
||||
{
|
||||
sub_800EE5C(param_1->unk0);
|
||||
sub_800EF64();
|
||||
|
|
@ -1344,7 +1339,7 @@ void sub_80427AC(void)
|
|||
sub_80429A0(entity);
|
||||
if (!enInfo->isNotTeamMember) {
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0], entity, 0);
|
||||
DisplayDungeonLoggableMessageTrue(entity, *gPtrFeralFoundItemMessage);
|
||||
DisplayDungeonLoggableMessageTrue(entity, gPtrFeralFoundItemMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1559,7 +1554,7 @@ void sub_8042B34(s32 a0, s32 a1, s32 a2)
|
|||
unkStruct_80416E0 spStruct;
|
||||
s32 i;
|
||||
s32 r8 = 0;
|
||||
Entity *leader = xxx_call_GetLeader();
|
||||
Entity *leader = CutsceneGetLeader();
|
||||
gUnknown_203B414 = MemoryAlloc(sizeof(*gUnknown_203B414), 7);
|
||||
|
||||
gUnknown_203B414->unk0 = a0;
|
||||
|
|
|
|||
|
|
@ -4,17 +4,16 @@
|
|||
#include "constants/item.h"
|
||||
#include "constants/move_id.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_803E724.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "dungeon_action.h"
|
||||
#include "code_8066D04.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "code_807CD9C.h"
|
||||
#include "dungeon_jobs.h"
|
||||
#include "run_dungeon.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_misc.h"
|
||||
|
|
@ -40,23 +39,17 @@
|
|||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_projectile_throw.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "dungeon_kecleon_shop.h"
|
||||
#include "dungeon_item_action.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_8057588(Entity * pokemon, u8 param_2);
|
||||
extern Item *sub_8044D90(Entity *, s32, u32);
|
||||
u8 sub_8048D50();
|
||||
void sub_8042208(Entity *pokemon, u8 r1);
|
||||
void sub_803E708();
|
||||
void sub_80479B8();
|
||||
extern void sub_807AB38(Entity *, u32);
|
||||
extern Entity * sub_8044DA4(Entity *param_1,int param_2);
|
||||
extern void sub_8044DF0(Entity *, u32, u32);
|
||||
Entity *sub_806773C(Entity *entity);
|
||||
void sub_8067558(Entity *entity, Entity *targetEntity, s32 a2);
|
||||
void sub_8067794(Entity *entity, Entity *targetEntity, s32 a2);
|
||||
extern void sub_807EF84(void);
|
||||
extern void sub_80845E0(Entity *entity);
|
||||
extern void sub_8084448(Entity *entity);
|
||||
|
||||
void HandlePickUpPlayerAction(Entity *entity)
|
||||
{
|
||||
|
|
@ -465,8 +458,6 @@ void sub_8067110(Entity *entity)
|
|||
}
|
||||
}
|
||||
|
||||
extern void sub_8083904(DungeonPos *pos, Entity *entity);
|
||||
|
||||
void sub_80671A0(Entity *entity)
|
||||
{
|
||||
EntityInfo *info = GetEntInfo(entity);
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
#include "dungeon_random.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "dungeon_data.h"
|
||||
#include "dungeon_pokemon_sprites.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "move_effects_target.h"
|
||||
|
|
@ -31,7 +32,6 @@
|
|||
#include "text_util.h"
|
||||
#include "sprite.h"
|
||||
#include "random.h"
|
||||
#include "structs/str_202ED28.h"
|
||||
|
||||
const u8 gUnknown_8106EC8[][13] = {
|
||||
{0, 1, 7, 7, 7, 5, 6, 7, 7, 7, 7, 7, 7},
|
||||
|
|
@ -41,7 +41,6 @@ const u8 gUnknown_8106EC8[][13] = {
|
|||
|
||||
const u8 gUnknown_8106EEF[] = {0x03, 0x04, 0x05, 0x0};
|
||||
|
||||
extern s32 gDungeonFramesCounter;
|
||||
|
||||
extern void sub_8042EC8(Entity *a0, s32 a1);
|
||||
|
||||
|
|
|
|||
|
|
@ -20,17 +20,14 @@
|
|||
#include "pokemon_3.h"
|
||||
#include "position_util.h"
|
||||
#include "text_util.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "string_format.h"
|
||||
#include "dungeon_mon_spawn.h"
|
||||
|
||||
extern u8 gUnknown_202EE70[MAX_TEAM_BODY_SIZE];
|
||||
|
||||
u8 sub_806B8CC();
|
||||
void sub_8083D88();
|
||||
u8 sub_808529C(s32);
|
||||
void nullsub_96(Entity *pokemon,Entity *target);
|
||||
u8 sub_8097900(s16);
|
||||
void sub_806F910(void);
|
||||
|
|
@ -194,7 +191,7 @@ bool8 sub_806F9BC(s16 species)
|
|||
if (!gDungeon->unk644.canRecruit) {
|
||||
return FALSE;
|
||||
}
|
||||
else if (sub_808529C(id) == 0) {
|
||||
else if (!sub_808529C(id)) {
|
||||
return FALSE;
|
||||
}
|
||||
else if (id == MONSTER_MEW && gDungeon->unk644.unk34 == 1) {
|
||||
|
|
@ -306,7 +303,7 @@ bool8 sub_806FA5C(Entity *entity1, Entity *entity2, struct unkStruct_8069D4C *pa
|
|||
|
||||
IncrementAdventureNumJoined();
|
||||
|
||||
if (sub_806B8CC(param_3->id,param_3->pos.x,param_3->pos.y,pokeStruct2,&local_2c,0,1) == 0) {
|
||||
if (SpawnTeamMember(param_3->id,param_3->pos.x,param_3->pos.y,pokeStruct2,&local_2c,0,1) == 0) {
|
||||
LogMessageByIdWithPopupCheckUser(entity1,gUnknown_80FA058);
|
||||
pokeStruct2->flags = 0;
|
||||
}
|
||||
|
|
@ -321,7 +318,7 @@ bool8 sub_806FA5C(Entity *entity1, Entity *entity2, struct unkStruct_8069D4C *pa
|
|||
sub_808D9DC(gFormatBuffer_Monsters[0],pokeStruct2,0);
|
||||
LogMessageByIdWithPopupCheckUser(entity1,gUnknown_80FA0F0);
|
||||
if (flag) {
|
||||
leader = xxx_call_GetLeader();
|
||||
leader = CutsceneGetLeader();
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],leader,0);
|
||||
sub_8092558(gFormatBuffer_FriendArea,friendArea);
|
||||
PlaySound(0xce);
|
||||
|
|
@ -442,7 +439,7 @@ bool8 sub_806FDF4(Entity *entity1,Entity *entity2,Entity **entityPtr)
|
|||
}
|
||||
IncrementAdventureNumJoined();
|
||||
HandleFaint(entity2,500,entity1);
|
||||
if (sub_806B8CC(local_74.id,local_74.pos.x,local_74.pos.y,pokeStruct2,&local_2c,0,0) == 0) {
|
||||
if (SpawnTeamMember(local_74.id,local_74.pos.x,local_74.pos.y,pokeStruct2,&local_2c,0,0) == 0) {
|
||||
pokeStruct2->flags = 0;
|
||||
}
|
||||
else {
|
||||
|
|
@ -452,7 +449,7 @@ bool8 sub_806FDF4(Entity *entity1,Entity *entity2,Entity **entityPtr)
|
|||
}
|
||||
}
|
||||
if (flag) {
|
||||
leader = xxx_call_GetLeader();
|
||||
leader = CutsceneGetLeader();
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],leader,0);
|
||||
sub_8092558(gFormatBuffer_FriendArea,friendArea);
|
||||
PlaySound(0xce);
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
#include "constants/type.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_util.h"
|
||||
|
|
@ -41,36 +41,31 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "dungeon_kecleon_shop.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_turn_effects.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
extern void sub_8073D14(Entity *);
|
||||
extern void sub_8075708(Entity *entity);
|
||||
extern void sub_805229C(void);
|
||||
extern void sub_807E8F0(Entity *);
|
||||
extern void sub_80444F4(Entity *pokemon);
|
||||
extern void WarpTarget(Entity *pokemon, Entity *r1, u32 r2, DungeonPos *r3);
|
||||
extern void sub_80420B8(Entity *pokemon);
|
||||
extern void sub_8041C4C(Entity *pokemon, u32 r1);
|
||||
extern void sub_805E804(void);
|
||||
extern void sub_80838EC(u8 *a);
|
||||
extern bool8 TryUseChosenMove(struct Entity *, u32, u32, u32, u32, struct Move *);
|
||||
extern void nullsub_97(Entity *entity);
|
||||
extern void CheckLeaderTile(void);
|
||||
extern void sub_8086AC0(void);
|
||||
extern void sub_8085140(void);
|
||||
extern void sub_8075708(Entity *entity);
|
||||
extern void TryForcedLoss(u32);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_8075900(Entity *pokemon, u8 r1);
|
||||
extern void sub_806A5B8(Entity *);
|
||||
extern void sub_807EC28(bool8);
|
||||
extern void sub_8075050(EntityInfo *info, Unk_Entity_x184 *strPtr);
|
||||
extern void sub_8074094(Entity *entity);
|
||||
extern bool8 sub_803F428(DungeonPos *pos);
|
||||
|
||||
extern u8 gUnknown_202F32D;
|
||||
|
||||
extern const DungeonPos gUnknown_80F4D44[];
|
||||
|
||||
static EWRAM_DATA s32 gUnknown_202F378 = 0;
|
||||
|
||||
void sub_8074FB0(Entity *entity, s32 a1, DungeonPos *pos)
|
||||
|
|
@ -287,7 +282,7 @@ bool8 DisplayActions(Entity *a0)
|
|||
break;
|
||||
|
||||
TryForcedLoss(0);
|
||||
sub_8074094(mon);
|
||||
ApplyEndOfTurnEffects(mon);
|
||||
if (!EntityIsValid(mon))
|
||||
continue;
|
||||
if (IsFloorOver())
|
||||
|
|
|
|||
|
|
@ -22,13 +22,13 @@
|
|||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "structs/str_806B7F8.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_floor_spawns.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_mon_spawn.h"
|
||||
|
||||
extern bool8 sub_806AA0C(s32, u32);
|
||||
extern s16 GetRandomFloorMonsterId(u32);
|
||||
extern void sub_804178C(u32);
|
||||
|
||||
void sub_807AA30(void)
|
||||
|
|
@ -167,7 +167,7 @@ void sub_807AB38(Entity *entity, bool8 forcedMonsterHouse)
|
|||
}
|
||||
else
|
||||
{
|
||||
struct unkStruct_806B7F8 spawnStruct;
|
||||
struct MonSpawnInfo spawnStruct;
|
||||
|
||||
spawnStruct.species = GetRandomFloorMonsterId(1);
|
||||
spawnStruct.level = 0;
|
||||
|
|
@ -177,7 +177,7 @@ void sub_807AB38(Entity *entity, bool8 forcedMonsterHouse)
|
|||
spawnStruct.pos.x = positions[rndId].x;
|
||||
spawnStruct.pos.y = positions[rndId].y;
|
||||
if (sub_806AA0C(spawnStruct.species, 1)) {
|
||||
Entity *newMonster = sub_806B7F8(&spawnStruct, FALSE);
|
||||
Entity *newMonster = SpawnWildMon(&spawnStruct, FALSE);
|
||||
if (EntityIsValid(newMonster)) {
|
||||
newMonster->unk1C = IntToF248_2(200);
|
||||
for (j = 0; j < 100; j++) {
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@
|
|||
#include "random.h"
|
||||
#include "save.h"
|
||||
#include "text_util.h"
|
||||
#include "pokemon_3.h"
|
||||
|
||||
EWRAM_INIT unkStruct_203B480 *gUnknown_203B480 = {NULL};
|
||||
EWRAM_INIT unkStruct_203B484 *gUnknown_203B484 = {NULL};
|
||||
|
|
@ -22,11 +23,6 @@ EWRAM_DATA UNUSED static u32 fill0 = {0}; // 203B484 is size 0x5C and I need to
|
|||
EWRAM_DATA u32 gUnknown_20392E8[0x36] = {0};
|
||||
EWRAM_DATA unkStruct_203B48C gUnknown_20393C0 = {0};
|
||||
|
||||
extern void WriteDungeonLocationBits(DataSerializer*, DungeonLocation*);
|
||||
extern void ReadDungeonLocationBits(DataSerializer*, DungeonLocation*);
|
||||
extern void WritePoke1LevelBits(DataSerializer* a1, struct unkPokeSubStruct_C* unkC);
|
||||
extern void ReadPoke1LevelBits(DataSerializer*, struct unkPokeSubStruct_C*);
|
||||
|
||||
void sub_80950BC(void)
|
||||
{
|
||||
gUnknown_203B480 = gUnknown_2038C88;
|
||||
|
|
|
|||
|
|
@ -17,7 +17,6 @@
|
|||
#include "event_flag.h"
|
||||
#include "rescue_team_info.h"
|
||||
|
||||
extern bool8 sub_809017C(DungeonLocation *);
|
||||
extern void sub_803C37C(struct DungeonLocation *, u8, u8 *);
|
||||
|
||||
extern u8 sub_8097318(s16 param_1);
|
||||
|
|
@ -31,8 +30,6 @@ u8 sub_8095E78(void);
|
|||
bool8 sub_80963B4(void);
|
||||
s32 CalculateMailChecksum(WonderMail *mail);
|
||||
|
||||
extern void WriteDungeonLocationBits(DataSerializer*, DungeonLocation*);
|
||||
extern void ReadDungeonLocationBits(DataSerializer*, DungeonLocation*);
|
||||
extern void sub_803C4F0(WonderMail *);
|
||||
extern void sub_803C3E0(WonderMail *);
|
||||
extern void sub_803C45C(WonderMail *);
|
||||
|
|
|
|||
|
|
@ -5,19 +5,15 @@
|
|||
#include "pokemon_3.h"
|
||||
#include "friend_area.h"
|
||||
#include "moves.h"
|
||||
#include "strings.h"
|
||||
#include "dungeon_info.h"
|
||||
#include "game_options.h"
|
||||
|
||||
static EWRAM_DATA struct unkStruct_203B494 sUnknown_2039778 = {0};
|
||||
|
||||
EWRAM_INIT struct unkStruct_203B494 *gUnknown_203B494 = { NULL }; // NDS=20EB98C
|
||||
|
||||
// data_810AE24.s
|
||||
extern const u8 *gAdventureLogText[];
|
||||
|
||||
extern void WriteDungeonLocationBits(DataSerializer*, DungeonLocation*);
|
||||
extern void ReadDungeonLocationBits(DataSerializer*, DungeonLocation*);
|
||||
void ReadGameOptionsBits(DataSerializer *param_1);
|
||||
void ReadPlayTimeBits(DataSerializer *r0);
|
||||
void WriteGameOptionsBits(DataSerializer *param_1);
|
||||
void WritePlayTimeBits(DataSerializer *r0);
|
||||
|
||||
void sub_8097670(void)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_data.h"
|
||||
|
||||
bool8 IsWaterDungeon(u32 r0)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "drought_orb.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_807CD9C.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "dungeon_ai.h"
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
#include "dungeon_items.h"
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
void HandleDroughtOrbAction(Entity *pokemon, Entity *target)
|
||||
void HandleDroughtOrb(Entity *pokemon, Entity *target)
|
||||
{
|
||||
s32 x;
|
||||
s32 y;
|
||||
|
|
|
|||
|
|
@ -4,16 +4,15 @@
|
|||
#include "constants/item.h"
|
||||
#include "constants/move_id.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_803E724.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "dungeon_action.h"
|
||||
#include "code_8066D04.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "code_807CD9C.h"
|
||||
#include "run_dungeon.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_misc.h"
|
||||
|
|
@ -36,23 +35,15 @@
|
|||
#include "string_format.h"
|
||||
#include "text_1.h"
|
||||
#include "trap.h"
|
||||
#include "dungeon_submenu.h"
|
||||
#include "dungeon_engine.h"
|
||||
|
||||
extern void sub_80684C4(void);
|
||||
void sub_8045064(void);
|
||||
extern void sub_8068344(void);
|
||||
bool8 CanSubMenuItemBeChosen(s32 param_1);
|
||||
void sub_8068310(s32 n, Pokemon **monPtrs);
|
||||
void sub_8067F00(u8 a0, Pokemon **a1, s32 a2, s32 a3, s32 a4);
|
||||
void sub_8083D1C(void);
|
||||
void PlayDungeonConfirmationSE(void);
|
||||
void PlayDungeonCancelSE(void);
|
||||
void sub_806806C(Pokemon *a0);
|
||||
void CreateDungeonMenuSubWindow(WindowTemplates *a0, s32 a1);
|
||||
|
||||
extern const s32 gUnknown_8106E80[];
|
||||
extern MenuInputStruct gDungeonMenu;
|
||||
extern u32 gDungeonFramesCounter;
|
||||
extern s32 gDungeonSubMenuItemsCount;
|
||||
|
||||
static EWRAM_DATA WindowHeader gUnknown_202F308 = {0};
|
||||
static EWRAM_DATA s32 gUnknown_202F30C = 0;
|
||||
|
|
@ -280,7 +271,7 @@ void sub_8067A80(u8 a0, s32 a1, s32 a2, Pokemon **a3)
|
|||
}
|
||||
|
||||
sub_8045064();
|
||||
CreateDungeonMenuSubWindow(&spTxtStruct, 0x15);
|
||||
CreateDungeonMenuSubWindow(&spTxtStruct.id[0], 0x15);
|
||||
|
||||
while (1) {
|
||||
AddMenuCursorSprite(&gDungeonMenu);
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#include "globaldata.h"
|
||||
#include "constants/tactic.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_8077274_1.h"
|
||||
|
|
@ -13,15 +13,13 @@
|
|||
#include "dungeon_info.h"
|
||||
#include "pokemon_3.h"
|
||||
#include "code_805D8C8.h"
|
||||
#include "structs/str_806B7F8.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_spawns.h"
|
||||
|
||||
extern u8 *gUnknown_80FED68[];
|
||||
#include "dungeon_floor_spawns.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_mon_spawn.h"
|
||||
|
||||
extern void sub_8042920(struct Entity *r0);
|
||||
extern bool8 sub_806AA0C(s32, u32);
|
||||
extern bool8 sub_8083660(DungeonPos *param_1);
|
||||
|
||||
void sub_8071B48(void)
|
||||
{
|
||||
|
|
@ -34,7 +32,7 @@ void sub_8071B48(void)
|
|||
struct Entity *entityPtr;
|
||||
s32 level;
|
||||
struct Dungeon *dungeon; // feels like a hack
|
||||
struct unkStruct_806B7F8 local_2c;
|
||||
struct MonSpawnInfo local_2c;
|
||||
|
||||
entityPtr = NULL;
|
||||
dungeon = gDungeon;
|
||||
|
|
@ -88,7 +86,7 @@ void sub_8071B48(void)
|
|||
|
||||
}
|
||||
if (entityPtr != NULL) {
|
||||
DisplayDungeonLoggableMessageTrue(0,*gUnknown_80FED68);
|
||||
DisplayDungeonLoggableMessageTrue(0,gUnknown_80FED68);
|
||||
sub_8042920(entityPtr);
|
||||
}
|
||||
if (dungeon->unk644.unk2A != 0) {
|
||||
|
|
@ -115,7 +113,7 @@ void sub_8071B48(void)
|
|||
local_2c.unk4 = 0;
|
||||
}
|
||||
local_2c.unk10 = 0;
|
||||
sub_806B7F8(&local_2c, FALSE);
|
||||
SpawnWildMon(&local_2c, FALSE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
#include "dungeon_ai_leader.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_generation.h"
|
||||
#include "dungeon_util.h"
|
||||
|
|
@ -20,10 +20,7 @@
|
|||
#include "dungeon_engine.h"
|
||||
#include "run_dungeon.h"
|
||||
|
||||
extern void sub_8086AC0(void);
|
||||
extern void DisplayActions(u32);
|
||||
extern void TryActivateArtificialWeatherAbilities(void);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void TickStatusAndHealthRegen(Entity *);
|
||||
|
||||
EWRAM_DATA SubMenuAction gDungeonSubMenu[10] = {0};
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_action_execution.h"
|
||||
#include "dungeon_ai_leader.h"
|
||||
#include "dungeon_move_util.h"
|
||||
#include "dungeon_vram.h"
|
||||
|
|
@ -8,7 +9,6 @@
|
|||
#include "code_8066D04.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "code_807CD9C.h"
|
||||
#include "constants/dungeon_action.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/iq_skill.h"
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
#include "constants/targeting.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "move_util.h"
|
||||
|
|
@ -31,36 +31,27 @@
|
|||
#include "dungeon_misc.h"
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_engine.h"
|
||||
|
||||
extern u8 gUnknown_202F221;
|
||||
extern u8 gUnknown_202F222;
|
||||
extern u8 gUnknown_203B434;
|
||||
|
||||
extern u8 *gUnknown_80FA5B4[];
|
||||
extern u8 *gUnknown_80FCF50[];
|
||||
extern u8 *gUnknown_80FCF38[];
|
||||
extern u8 *gUnknown_80FD2CC[];
|
||||
extern u8 *gUnknown_80FE478[];
|
||||
extern u8 *gUnknown_80FE6D4[];
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_action.h"
|
||||
#include "dungeon_turn_effects.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "dungeon_move.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
void sub_8075BA4(Entity *param_1, u8 param_2);
|
||||
void sub_804178C(u8 param_1);
|
||||
void nullsub_95(Entity *);
|
||||
bool8 IsNotAttacking(Entity *, bool8);
|
||||
extern void sub_80671A0(Entity *);
|
||||
extern void sub_8067110(Entity *);
|
||||
void HandleUseMoveAIAction(Entity *target);
|
||||
void sub_8041888(u8 param_1);
|
||||
void sub_8085140(void);
|
||||
void sub_807360C(void);
|
||||
void sub_805EFB4(Entity *, u8);
|
||||
void sub_8074FB0(Entity *, u8, DungeonPos *);
|
||||
|
||||
void HandlePlaceItemAction(Entity *);
|
||||
void HandlePickUpPlayerAction(Entity *);
|
||||
void sub_8066E14(Entity * );
|
||||
void sub_807348C(void);
|
||||
void sub_80732F0(void);
|
||||
void sub_8066BD4(Entity*);
|
||||
void HandleTalkFieldAction(Entity *);
|
||||
void HandleUseMovePlayerAction(Entity *);
|
||||
|
|
@ -73,22 +64,19 @@ void sub_8066FA4(Entity *);
|
|||
void HandleUnsetItemAction(Entity *,bool8);
|
||||
extern u8 DisplayActions(Entity *);
|
||||
void sub_806A1E8(Entity *pokemon);
|
||||
bool8 sub_804AE08(DungeonPos *pos);
|
||||
void HandlePickUpAIAction(Entity *pokemon);
|
||||
void HandleThrowItemAIAction(Entity *pokemon);
|
||||
void HandleEatAIAction(Entity *pokemon);
|
||||
bool8 sub_8044B84(void);
|
||||
extern void sub_8074094(Entity *);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
u32 sub_8075818(Entity *entity);
|
||||
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);
|
||||
u32 sub_8075818(Entity *entity);;
|
||||
|
||||
EWRAM_DATA u8 gUnknown_202F32C = 0;
|
||||
EWRAM_DATA u8 gUnknown_202F32D = 0;
|
||||
|
||||
bool8 sub_8072CF4(Entity *entity)
|
||||
static void HandleSleepTalk(void);
|
||||
static void HandleSnore(void);
|
||||
static void HandleFlashFire(void);
|
||||
|
||||
bool8 ExecuteEntityDungeonAction(Entity *entity)
|
||||
{
|
||||
bool8 bVar4;
|
||||
bool8 bVar5;
|
||||
|
|
@ -100,7 +88,7 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
DungeonPos pos1;
|
||||
|
||||
sub_804178C(1);
|
||||
gUnknown_203B434 = 1;
|
||||
gUnknown_203B434 = TRUE;
|
||||
info = GetEntInfo(entity);
|
||||
info->useHeldItem = FALSE;
|
||||
info->unkF3 = FALSE;
|
||||
|
|
@ -206,7 +194,7 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
break;
|
||||
case ACTION_STAIRS:
|
||||
if ((gDungeon->unk644.dungeonLocation.id == DUNGEON_METEOR_CAVE) && (!gDungeon->deoxysDefeat)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80FA5B4); // It's impossible to go down the stairs now!
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80FA5B4); // It's impossible to go down the stairs now!
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -265,7 +253,7 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
break;
|
||||
}
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],entity,0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80FE6D4);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80FE6D4);
|
||||
break;
|
||||
case ACTION_TALK_FIELD:
|
||||
HandleTalkFieldAction(entity);
|
||||
|
|
@ -293,7 +281,7 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
break;
|
||||
case ACTION_SECOND_THOUGHTS:
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],entity,0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80FE478);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80FE478);
|
||||
break;
|
||||
default:
|
||||
info->action.action = ACTION_PASS_TURN;
|
||||
|
|
@ -321,13 +309,13 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
}
|
||||
}
|
||||
if (bVar4) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80FD2CC);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80FD2CC);
|
||||
}
|
||||
}
|
||||
sub_807360C();
|
||||
HandleFlashFire();
|
||||
if (!sub_8044B84()) {
|
||||
sub_807348C();
|
||||
sub_80732F0();
|
||||
HandleSnore();
|
||||
HandleSleepTalk();
|
||||
if (!EntityIsValid(entity)) {
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -344,7 +332,7 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
if (sub_80706A4(entity,&entity->pos) != '\0') {
|
||||
WarpTarget(entity,entity,0,0);
|
||||
}
|
||||
sub_8074094(entity);
|
||||
ApplyEndOfTurnEffects(entity);
|
||||
EnemyEvolution(entity);
|
||||
}
|
||||
}
|
||||
|
|
@ -353,7 +341,7 @@ bool8 sub_8072CF4(Entity *entity)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_80732F0(void)
|
||||
static void HandleSleepTalk(void)
|
||||
{
|
||||
s32 index;
|
||||
Entity *entity;
|
||||
|
|
@ -409,7 +397,7 @@ void sub_80732F0(void)
|
|||
}
|
||||
}
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0], entity, 0);
|
||||
LogMessageByIdWithPopupCheckUser(entity, *gUnknown_80FCF38); // {ARG_POKEMON_0} uttered its sleep talk!
|
||||
LogMessageByIdWithPopupCheckUser(entity, gUnknown_80FCF38); // {ARG_POKEMON_0} uttered its sleep talk!
|
||||
info->action.direction = sl & DIRECTION_MASK;
|
||||
TryUseChosenMove(entity, 0, ITEM_NOTHING, 1, FALSE, &moveStack);
|
||||
flag = TRUE;
|
||||
|
|
@ -433,7 +421,7 @@ _increase:
|
|||
}
|
||||
}
|
||||
|
||||
void sub_807348C(void)
|
||||
static void HandleSnore(void)
|
||||
{
|
||||
int index;
|
||||
s32 moveIndex;
|
||||
|
|
@ -475,7 +463,7 @@ void sub_807348C(void)
|
|||
}
|
||||
}
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],pokemon,0);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80FCF50);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gUnknown_80FCF50);
|
||||
info->action.direction = r8 & DIRECTION_MASK;
|
||||
TryUseChosenMove(pokemon,0,ITEM_NOTHING,1,FALSE,&chosenMove);
|
||||
info->unk165 |= 0xff;
|
||||
|
|
@ -486,18 +474,14 @@ void sub_807348C(void)
|
|||
}
|
||||
}
|
||||
|
||||
void sub_807360C(void)
|
||||
static void HandleFlashFire(void)
|
||||
{
|
||||
s32 index;
|
||||
Entity *entity;
|
||||
|
||||
for(index = 0; index < DUNGEON_MAX_POKEMON; index++)
|
||||
{
|
||||
entity = gDungeon->activePokemon[index];
|
||||
if(EntityIsValid(entity))
|
||||
{
|
||||
if(GetEntInfo(entity)->unk152 != 0)
|
||||
{
|
||||
for (index = 0; index < DUNGEON_MAX_POKEMON; index++) {
|
||||
Entity *entity = gDungeon->activePokemon[index];
|
||||
if (EntityIsValid(entity)) {
|
||||
if (GetEntInfo(entity)->unk152 != 0) {
|
||||
GetEntInfo(entity)->unk152 = 0;
|
||||
UpdateFlashFireBoost(entity, entity);
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_ai.h"
|
||||
#include "code_803E724.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
|
|
@ -18,19 +18,18 @@
|
|||
#include "dungeon_ai_items.h"
|
||||
#include "dungeon_ai_movement.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "pokemon.h"
|
||||
#include "status_checks.h"
|
||||
#include "structs/map.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "dungeon_misc.h"
|
||||
|
||||
extern char *gPtrCouldntBeUsedMessage;
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
void RunMonsterAI(Entity *pokemon, u32 unused)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -32,29 +32,20 @@
|
|||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "dungeon_damage.h"
|
||||
#include "dungeon_kecleon_shop.h"
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
#define REGULAR_ATTACK_INDEX 4
|
||||
|
||||
extern const u8 *const gItemStickyDoesntWorkText[];
|
||||
extern const u8 *const gPtrMysteriousPowerPreventedUseMessage[];
|
||||
extern const u8 *const gUnknown_80FC6A8[];
|
||||
extern const u8 *const gUnknown_80FC714[];
|
||||
extern const u8 *const gUnknown_80FC718[];
|
||||
|
||||
EWRAM_DATA bool8 gCanAttackInDirection[NUM_DIRECTIONS] = {0};
|
||||
EWRAM_DATA u8 gPotentialAttackTargetDirections[NUM_DIRECTIONS] = {0};
|
||||
EWRAM_DATA s32 gPotentialAttackTargetWeights[NUM_DIRECTIONS] = {0};
|
||||
EWRAM_DATA Entity *gPotentialTargets[NUM_DIRECTIONS] = {0};
|
||||
|
||||
extern void sub_806A1B0(Entity *);
|
||||
extern Item *sub_8044D90(Entity *, s32, u32);
|
||||
extern bool8 sub_8044D40(ActionContainer *, u32);
|
||||
extern void sub_8045BF8(u8 *, struct Item *);
|
||||
extern void sub_8044DF0(struct Entity *, u32, u32);
|
||||
extern void EnemyEvolution(struct Entity *);
|
||||
extern void DiscoverMinimap(DungeonPos *);
|
||||
extern void sub_807EC28(bool8);
|
||||
extern void sub_806A5B8(struct Entity *entity);
|
||||
|
||||
void ChooseAIMove(Entity *pokemon)
|
||||
{
|
||||
|
|
@ -967,14 +958,14 @@ void HandleUseOrbAction(Entity *pokemon)
|
|||
|
||||
if (item->flags & ITEM_FLAG_STICKY) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0], item);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gItemStickyDoesntWorkText);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gItemStickyDoesntWorkText);
|
||||
return;
|
||||
}
|
||||
|
||||
act = entityInfo->action;
|
||||
|
||||
if (IsBossFight()) {
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gPtrMysteriousPowerPreventedUseMessage);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gPtrMysteriousPowerPreventedUseMessage);
|
||||
r4 = TRUE;
|
||||
}
|
||||
else {
|
||||
|
|
@ -994,20 +985,20 @@ void HandleUseOrbAction(Entity *pokemon)
|
|||
|
||||
if (entityInfo->cringeClassStatus.status == 1) {
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0], pokemon, 0);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gUnknown_80FC714);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gUnknown_80FC714);
|
||||
r4 = FALSE;
|
||||
r8 = FALSE;
|
||||
}
|
||||
else if (entityInfo->cringeClassStatus.status == 7) {
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0], pokemon, 0);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gUnknown_80FC718);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gUnknown_80FC718);
|
||||
r4 = FALSE;
|
||||
r8 = FALSE;
|
||||
}
|
||||
else if (entityInfo->burnClassStatus.status == 4)
|
||||
{
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0], pokemon, 0);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, *gUnknown_80FC6A8);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon, gUnknown_80FC6A8);
|
||||
r4 = FALSE;
|
||||
r8 = FALSE;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
#include "constants/status.h"
|
||||
#include "constants/targeting.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "pokemon_3.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -38,8 +38,6 @@ struct CanMoveInDirectionInfo
|
|||
s32 direction;
|
||||
};
|
||||
|
||||
extern const s32 gFaceDirectionIncrements[];
|
||||
|
||||
void AIMovement(Entity *pokemon, bool8 showRunAwayEffect)
|
||||
{
|
||||
EntityInfo *pokemonInfo = GetEntInfo(pokemon);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cleared_window.h"
|
||||
#include "dungeon_info.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_vram.h"
|
||||
|
|
@ -7,12 +8,8 @@
|
|||
#include "text_1.h"
|
||||
#include "run_dungeon.h"
|
||||
#include "dungeon_run_end.h"
|
||||
|
||||
extern void PlayDungeonCompleteBGM(void);
|
||||
extern void PlayDungeonFailBGM(void);
|
||||
extern void PlayDungeonConfirmationSE(void);
|
||||
extern void UpdateDungeonMusic(void);
|
||||
extern u8 sub_8094D14(void);
|
||||
#include "dungeon_music.h"
|
||||
#include "game_options.h"
|
||||
|
||||
void ShowDungeonClearedWindow(void)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,16 +1,15 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "constants/weather.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "structs/str_806B7F8.h"
|
||||
#include "structs/sprite_oam.h"
|
||||
#include "dungeon_cutscenes.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "weather.h"
|
||||
#include "pokemon.h"
|
||||
|
|
@ -19,9 +18,7 @@
|
|||
#include "dungeon_misc.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_8085E98.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "random.h"
|
||||
#include "math.h"
|
||||
#include "code_8004AA0.h"
|
||||
|
|
@ -31,11 +28,13 @@
|
|||
#include "effect_sub_1.h"
|
||||
#include "sprite.h"
|
||||
#include "effect_data.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "pokemon_3.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_map.h"
|
||||
#include "dungeon_mon_spawn.h"
|
||||
|
||||
struct RgbS16
|
||||
{
|
||||
|
|
@ -45,35 +44,16 @@ struct RgbS16
|
|||
};
|
||||
|
||||
extern OpenedFile *gDungeonPaletteFile;
|
||||
extern s32 gDungeonBrightness;
|
||||
extern RGB gUnknown_202ECA4[];
|
||||
|
||||
extern const u8 gUnknown_8107358[25];
|
||||
extern const DungeonPos gUnknown_80F4598[];
|
||||
|
||||
extern bool8 sub_8004C00(unkStruct_202EE8C *a0, s32 a1, s32 a2, s32 brightness, const RGB *ramp, struct RgbS16 *a5);
|
||||
extern void UpdateMinimap(void);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F4A0(u32);
|
||||
extern void sub_803F878(s32, s32);
|
||||
extern void sub_8085F44(s32);
|
||||
extern bool8 sub_800E90C(DungeonPos *);
|
||||
extern void sub_8088EE8(void);
|
||||
extern void sub_8088848(void);
|
||||
extern void sub_808A718(void);
|
||||
extern s32 sub_800E700(s32);
|
||||
extern void sub_8085F44(s32);
|
||||
extern void sub_8052FB8(const u8 *);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void PlaySoundEffect(u32);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_803E748(void);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void sub_8086A3C(Entity *);
|
||||
extern void PlaySoundEffect(u32);
|
||||
extern u32 sub_8002A70(u32, s32, u8);
|
||||
extern s8 sub_8002984(s8, u8);
|
||||
|
||||
|
|
@ -87,7 +67,20 @@ struct unkData_8107234
|
|||
u8 unk5;
|
||||
};
|
||||
|
||||
// size: 0x8
|
||||
typedef struct unkStruct_202F3D0
|
||||
{
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4;
|
||||
u8 unk5;
|
||||
} unkStruct_202F3D0;
|
||||
|
||||
static void sub_8084854(const struct unkData_8107234 *);
|
||||
static void sub_8085764(void);
|
||||
static void sub_80857B8(void);
|
||||
static void sub_80861EC(Entity *);
|
||||
|
||||
static const struct unkData_8107234 gUnknown_8107234[28] = {
|
||||
|
|
@ -151,7 +144,7 @@ void sub_80847D4(void)
|
|||
sub_8097FF8();
|
||||
}
|
||||
|
||||
void sub_8084854(const struct unkData_8107234 *param_1)
|
||||
static void sub_8084854(const struct unkData_8107234 *param_1)
|
||||
{
|
||||
if (gDungeon->unk644.unk34 != 0) {
|
||||
gDungeon->unk3A0D = param_1->unk5;
|
||||
|
|
@ -173,9 +166,9 @@ void sub_8084854(const struct unkData_8107234 *param_1)
|
|||
sub_807E5E4(WEATHER_CLEAR);
|
||||
}
|
||||
|
||||
u32 sub_80848EC(void)
|
||||
bool8 ShouldShowDungeonBanner(void)
|
||||
{
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_80848F0(void)
|
||||
|
|
@ -674,7 +667,7 @@ void sub_8085140(void)
|
|||
}
|
||||
}
|
||||
|
||||
u8 sub_808529C(s32 speciesId_)
|
||||
bool8 sub_808529C(s32 speciesId_)
|
||||
{
|
||||
s32 r3;
|
||||
s32 speciesId = 0;
|
||||
|
|
@ -778,7 +771,7 @@ void sub_8085374(void)
|
|||
tile = GetTile(pos.x, pos.y);
|
||||
temp = sub_807034C(species, tile);
|
||||
if (temp == 0) {
|
||||
struct unkStruct_806B7F8 local_30;
|
||||
struct MonSpawnInfo local_30;
|
||||
|
||||
local_30.species = species;
|
||||
local_30.level = 1;
|
||||
|
|
@ -786,19 +779,19 @@ void sub_8085374(void)
|
|||
local_30.pos = pos;
|
||||
local_30.unk4 = temp;
|
||||
local_30.unk10 = 0;
|
||||
sub_806B7F8(&local_30, 1);
|
||||
SpawnWildMon(&local_30, 1);
|
||||
break;
|
||||
}
|
||||
j++;
|
||||
}
|
||||
}
|
||||
|
||||
Entity *xxx_call_GetLeader(void)
|
||||
Entity *CutsceneGetLeader(void)
|
||||
{
|
||||
return GetLeader();
|
||||
}
|
||||
|
||||
Entity *GetPartnerEntity(void)
|
||||
Entity *CutsceneGetPartner(void)
|
||||
{
|
||||
s32 counter;
|
||||
Entity *entity;
|
||||
|
|
@ -899,7 +892,7 @@ void sub_80855E4(DungeonCallback func)
|
|||
func(entity);
|
||||
}
|
||||
}
|
||||
if ((!flag) && (partnerEntity = GetPartnerEntity(), partnerEntity != NULL)) {
|
||||
if ((!flag) && (partnerEntity = CutsceneGetPartner(), partnerEntity != NULL)) {
|
||||
func(partnerEntity);
|
||||
}
|
||||
}
|
||||
|
|
@ -920,13 +913,12 @@ void sub_808563C(DungeonCallback func)
|
|||
|
||||
Entity *GetEntityFromMonsterBehavior(u8 entityType)
|
||||
{
|
||||
Entity * entity;
|
||||
s32 index;
|
||||
|
||||
for(index = 0; index < DUNGEON_MAX_POKEMON; index++)
|
||||
{
|
||||
entity = gDungeon->activePokemon[index];
|
||||
if ((EntityIsValid(entity)) && (GetEntInfo(entity)->monsterBehavior == entityType)) return entity;
|
||||
for (index = 0; index < DUNGEON_MAX_POKEMON; index++) {
|
||||
Entity *entity = gDungeon->activePokemon[index];
|
||||
if (EntityIsValid(entity) && GetEntInfo(entity)->monsterBehavior == entityType)
|
||||
return entity;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -962,7 +954,7 @@ void sub_80856E0(Entity * pokemon, s32 direction)
|
|||
DungeonRunFrameActions(0x46);
|
||||
}
|
||||
|
||||
void sub_8085764(void)
|
||||
static void sub_8085764(void)
|
||||
{
|
||||
Entity *entity;
|
||||
s32 index;
|
||||
|
|
@ -978,19 +970,16 @@ void sub_8085764(void)
|
|||
}
|
||||
}
|
||||
|
||||
void sub_80857B8(void)
|
||||
static void sub_80857B8(void)
|
||||
{
|
||||
u8 *direction;
|
||||
EntityInfo *entityInfo;
|
||||
Entity *entity;
|
||||
int index;
|
||||
|
||||
for(index = 0; index < DUNGEON_MAX_POKEMON; index++)
|
||||
{
|
||||
entity = gDungeon->activePokemon[index];
|
||||
for (index = 0; index < DUNGEON_MAX_POKEMON; index++) {
|
||||
Entity *entity = gDungeon->activePokemon[index];
|
||||
if (EntityIsValid(entity)) {
|
||||
entityInfo = GetEntInfo(entity);
|
||||
if ((gDungeon->unk4 == 0) && (gDungeon->unk2 == 0)) {
|
||||
EntityInfo *entityInfo = GetEntInfo(entity);
|
||||
if (gDungeon->unk4 == 0 && gDungeon->unk2 == 0) {
|
||||
UpdateEntityPixelPos(entity, 0);
|
||||
entityInfo->unk15C = 0;
|
||||
entityInfo->unkFE = 99;
|
||||
|
|
@ -1087,7 +1076,7 @@ void sub_8085930(s32 direction)
|
|||
}
|
||||
}
|
||||
|
||||
void sub_80859F0(s32 direction)
|
||||
static void sub_80859F0(s32 direction)
|
||||
{
|
||||
s32 index;
|
||||
Entity *entity;
|
||||
|
|
@ -1389,7 +1378,6 @@ void sub_8085F78(void)
|
|||
case 0x2A:
|
||||
sub_808A718();
|
||||
break;
|
||||
|
||||
case 0:
|
||||
case 0x3C:
|
||||
default:
|
||||
|
|
@ -1464,7 +1452,7 @@ void sub_80861D4(Entity *a0, u8 r1, s32 direction)
|
|||
sub_80861EC(a0);
|
||||
}
|
||||
|
||||
void sub_80861EC(Entity *a0)
|
||||
static void sub_80861EC(Entity *a0)
|
||||
{
|
||||
GetEntInfo(a0)->unkFE = 0x63;
|
||||
}
|
||||
|
|
@ -1769,7 +1757,7 @@ void sub_8086690(void)
|
|||
|
||||
void sub_80866C4(const struct DungeonDialogueStruct *dialogue)
|
||||
{
|
||||
SpriteLookAroundEffect(xxx_call_GetLeader());
|
||||
SpriteLookAroundEffect(CutsceneGetLeader());
|
||||
sub_803E708(10, 70);
|
||||
DisplayDungeonDialogue(dialogue);
|
||||
sub_803E708(10, 70);
|
||||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,16 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "weather.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_8088484(Entity *param_1);
|
||||
static void ArticunoScreenFlash(void);
|
||||
|
|
@ -70,7 +49,7 @@ void sub_8087F54(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *articunoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
articunoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ARTICUNO);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_8085374();
|
||||
|
|
@ -102,7 +81,7 @@ void sub_8087FF8(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *articunoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
articunoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ARTICUNO);
|
||||
sub_8085374();
|
||||
sub_80854D4();
|
||||
|
|
@ -112,7 +91,7 @@ void sub_8087FF8(void)
|
|||
HandleFaint(articunoEntity,0x21c,0);
|
||||
}
|
||||
else {
|
||||
sub_8072008(articunoEntity,articunoEntity,gArticunoConfigLevel,0,0);
|
||||
LevelUpTarget(articunoEntity,articunoEntity,gArticunoConfigLevel,0,0);
|
||||
SetFacingDirection(articunoEntity, DIRECTION_SOUTH);
|
||||
sub_8086A3C(articunoEntity);
|
||||
}
|
||||
|
|
@ -134,8 +113,8 @@ void ArticunoPreFightDialogue(void)
|
|||
Entity *partnerEntity;
|
||||
Entity *articunoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
articunoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ARTICUNO);
|
||||
sub_8086448();
|
||||
SpriteLookAroundEffect(partnerEntity);
|
||||
|
|
@ -211,7 +190,7 @@ void ArticunoReFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *articunoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
articunoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ARTICUNO);
|
||||
gDungeon->weather.unkE265 = WEATHER_SNOW;
|
||||
sub_807EAA0(0,1);
|
||||
|
|
@ -233,7 +212,7 @@ void ArticunoPostStoryPreFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *articunoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
articunoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ARTICUNO);
|
||||
sub_8086448();
|
||||
if (sub_8086AE4(MONSTER_ARTICUNO)) {
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,16 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "weather.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_808C8E0(Entity *entity);
|
||||
static void sub_808C9B0(Entity *param_1);
|
||||
|
|
@ -72,7 +51,7 @@ void sub_808C5C0(void)
|
|||
u32 XPos;
|
||||
s32 YPos;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
celebiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_CELEBI);
|
||||
DungeonStartNewBGM(MUS_FRIEND_AREA_HEALING_FOREST);
|
||||
sub_80854D4();
|
||||
|
|
@ -96,7 +75,7 @@ void CelebiJoinDialogue(void)
|
|||
s32 menuChoice;
|
||||
Entity *celebiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
celebiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_CELEBI);
|
||||
if ((HasRecruitedMon(MONSTER_CELEBI)) || (!sub_806FD18(celebiEntity)))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -32,36 +30,14 @@
|
|||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void DeoxysScreenFlash(void);
|
||||
static void sub_808C550(void);
|
||||
|
|
@ -73,7 +49,7 @@ void sub_808C3A0(void)
|
|||
{
|
||||
Entity * leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
DungeonStopBGM();
|
||||
sub_80854D4();
|
||||
sub_8085930(DIRECTION_NORTH);
|
||||
|
|
@ -101,7 +77,7 @@ void DeoxysPreFightDialogue(void)
|
|||
{
|
||||
Entity * leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8086448();
|
||||
if (HasRecruitedMon(MONSTER_DEOXYS_NORMAL)) {
|
||||
// There appears to be no one here.
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -32,7 +30,6 @@
|
|||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
||||
void sub_80885A0(void)
|
||||
{
|
||||
|
|
@ -46,7 +43,7 @@ void sub_80885C4(void)
|
|||
{
|
||||
Entity * leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
DungeonFadeOutBGM(0x3c);
|
||||
sub_803E708(0x3c,0x46);
|
||||
DungeonStopBGM();
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void EnteiScreenFlash(void);
|
||||
|
||||
|
|
@ -68,7 +45,7 @@ void sub_8089C44(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * EnteiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
EnteiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ENTEI);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -83,7 +60,7 @@ void sub_8089C90(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * EnteiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
EnteiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ENTEI);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -111,7 +88,7 @@ void EnteiPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * EnteiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
EnteiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ENTEI);
|
||||
EnteiScreenFlash();
|
||||
DisplayDungeonDialogue(&gEnteiPreFightDialogue_1);
|
||||
|
|
@ -129,7 +106,7 @@ void EnteiReFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * EnteiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
EnteiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ENTEI);
|
||||
EnteiScreenFlash();
|
||||
DisplayDungeonDialogue(&gEnteiReFightDialogue_1);
|
||||
|
|
@ -147,7 +124,7 @@ void EnteiPostStoryPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * EnteiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
EnteiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ENTEI);
|
||||
if (HasRecruitedMon(MONSTER_ENTEI)) {
|
||||
sub_80866C4(&gEnteiPostStoryPreFightDialogue_4);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,16 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_leveling.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void SceneGroudonMovement(Entity * groudonEntity);
|
||||
static void GroudonScreenFlash(void);
|
||||
|
|
@ -71,7 +50,7 @@ void sub_808862C(void)
|
|||
Entity * alakazamEntity;
|
||||
Entity * groudonEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_1);
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_2);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
|
|
@ -98,7 +77,7 @@ void sub_80886C4(void)
|
|||
u32 XPos;
|
||||
s32 YPos;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_1);
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_2);
|
||||
PlaySoundEffect(0x3e5);
|
||||
|
|
@ -123,7 +102,7 @@ void sub_808875C(void)
|
|||
Entity * alakazamEntity;
|
||||
Entity * groudonEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_1);
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_2);
|
||||
sub_80867F4();
|
||||
|
|
@ -135,7 +114,7 @@ void sub_808875C(void)
|
|||
HandleFaint(groudonEntity,0x21c,0);
|
||||
}
|
||||
else {
|
||||
sub_8072008(groudonEntity,groudonEntity,gGroudonConfigLevel,0,0);
|
||||
LevelUpTarget(groudonEntity,groudonEntity,gGroudonConfigLevel,0,0);
|
||||
SetFacingDirection(groudonEntity, DIRECTION_SOUTH);
|
||||
sub_80861D4(groudonEntity,0xf,DIRECTION_SOUTH);
|
||||
}
|
||||
|
|
@ -164,8 +143,8 @@ void GroudonPreFightDialogue(void)
|
|||
Entity * alakazamEntity;
|
||||
Entity * groudonEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_1);
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_2);
|
||||
sub_8086448();
|
||||
|
|
@ -244,7 +223,7 @@ void GroudonReFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * groudonEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_2);
|
||||
sub_8086838(1,1,1);
|
||||
sub_808680C();
|
||||
|
|
@ -276,7 +255,7 @@ void GroudonPostStoryPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * groudonEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_2);
|
||||
sub_8086448();
|
||||
if (sub_8086AE4(MONSTER_GROUDON)) {
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void HoOhDropInEffect(Entity * param_1);
|
||||
static void HoOhScreenFlash(void);
|
||||
|
|
@ -69,7 +46,7 @@ void sub_808A608(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * HoOhEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
HoOhEntity = GetEntityFromMonsterBehavior(BEHAVIOR_HO_OH);
|
||||
DungeonStartNewBGM(MUS_FRIEND_AREA_RAINBOW_PEAK);
|
||||
sub_80867F4();
|
||||
|
|
@ -87,7 +64,7 @@ void sub_808A668(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * HoOhEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
HoOhEntity = GetEntityFromMonsterBehavior(BEHAVIOR_HO_OH);
|
||||
DungeonStartNewBGM(MUS_FRIEND_AREA_RAINBOW_PEAK);
|
||||
sub_80867F4();
|
||||
|
|
@ -124,7 +101,7 @@ void HoOhPreFightDialogue(void)
|
|||
Entity * HoOhEntity;
|
||||
PixelPos local_14;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
HoOhEntity = GetEntityFromMonsterBehavior(BEHAVIOR_HO_OH);
|
||||
local_14.x = leaderEntity->pixelPos.x;
|
||||
local_14.y = leaderEntity->pixelPos.y + -0x1000;
|
||||
|
|
@ -163,7 +140,7 @@ void HoOhReFightDialogue(void)
|
|||
Entity * HoOhEntity;
|
||||
PixelPos local_14;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
HoOhEntity = GetEntityFromMonsterBehavior(BEHAVIOR_HO_OH);
|
||||
|
||||
local_14.x = leaderEntity->pixelPos.x;
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,37 +29,17 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
#include "dungeon_floor_spawns.h"
|
||||
#include "dungeon_map.h"
|
||||
#include "dungeon_mon_spawn.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_808B50C(void);
|
||||
static void JirachiWish(void);
|
||||
|
|
@ -80,7 +58,7 @@ void sub_808B2F4(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * jirachiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
jirachiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_JIRACHI);
|
||||
DungeonStartNewBGM(MUS_FRIEND_AREA_FOREST);
|
||||
CreateJirachiWishWarpTile();
|
||||
|
|
@ -99,7 +77,7 @@ void sub_808B35C(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * jirachiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
jirachiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_JIRACHI);
|
||||
DungeonStartNewBGM(MUS_FRIEND_AREA_FOREST);
|
||||
sub_80854D4();
|
||||
|
|
@ -149,7 +127,7 @@ void JirachiPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * jirachiEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
jirachiEntity = GetEntityFromMonsterBehavior(BEHAVIOR_JIRACHI);
|
||||
sub_8086448();
|
||||
sub_803E708(0x40,70);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,37 +29,16 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_map.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void nullsub_99(void);
|
||||
static void KyogreScreenFlash(void);
|
||||
|
|
@ -75,7 +52,7 @@ void sub_808C10C(void)
|
|||
u32 XPos;
|
||||
s32 YPos;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
kyogreEntity = GetEntityFromMonsterBehavior(BEHAVIOR_KYOGRE);
|
||||
DungeonStopBGM();
|
||||
sub_80854D4();
|
||||
|
|
@ -108,7 +85,7 @@ void KyogrePreFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *KyogreEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
KyogreEntity = GetEntityFromMonsterBehavior(BEHAVIOR_KYOGRE);
|
||||
DungeonStopBGM();
|
||||
if (HasRecruitedMon(MONSTER_KYOGRE)) {
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -32,36 +30,14 @@
|
|||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void LatiosScreenFlash(void);
|
||||
|
||||
|
|
@ -70,7 +46,7 @@ void sub_808A9E4(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * LatiosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
LatiosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LATIOS);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -86,7 +62,7 @@ void sub_808AA3C(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * LatiosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
LatiosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LATIOS);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -102,7 +78,7 @@ void sub_808AA94(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * LatiosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
LatiosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LATIOS);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -128,7 +104,7 @@ void LatiosPreFightDialogue(void)
|
|||
PixelPos local_18;
|
||||
DungeonPos local_19;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
LatiosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LATIOS);
|
||||
|
||||
local_18.x = LatiosEntity->pixelPos.x;
|
||||
|
|
@ -159,7 +135,7 @@ void LatiosReFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * LatiosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
LatiosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LATIOS);
|
||||
sub_8086448();
|
||||
sub_808692C();
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -32,36 +30,14 @@
|
|||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
extern s32 gDungeonBrightness;
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void LugiaScreenFlash(void);
|
||||
static void LugiaScreenFlash2(void);
|
||||
|
|
@ -72,7 +48,7 @@ void sub_808BDEC(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * lugiaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
lugiaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LUGIA);
|
||||
DungeonStopBGM();
|
||||
sub_80854D4();
|
||||
|
|
@ -102,7 +78,7 @@ void LugiaPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * lugiaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
lugiaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_LUGIA);
|
||||
if (HasRecruitedMon(MONSTER_LUGIA)) {
|
||||
sub_8086448();
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_80891F0(void);
|
||||
static void sub_8089294(void);
|
||||
|
|
@ -70,7 +47,7 @@ void sub_8088DC0(void)
|
|||
Entity * groudonEntity;
|
||||
Entity * alakazamEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_1);
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_2);
|
||||
sub_80867F4();
|
||||
|
|
@ -94,7 +71,7 @@ void sub_8088E5C(void)
|
|||
Entity * groudonEntity;
|
||||
Entity * alakazamEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_1);
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_2);
|
||||
sub_80867F4();
|
||||
|
|
@ -123,8 +100,8 @@ void MagmaCavernMidDialogue(void)
|
|||
s16 IDStack [2];
|
||||
PixelPos pos;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
groudonEntity = GetEntityFromMonsterBehavior(BEHAVIOR_GROUDON_1);
|
||||
alakazamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ALAKAZAM_2);
|
||||
sub_8052D44(IDStack,leaderEntity,partnerEntity);
|
||||
|
|
@ -240,7 +217,7 @@ void sub_8089168(void)
|
|||
{
|
||||
Entity *leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8086448();
|
||||
sub_803E708(10,0x46);
|
||||
SpriteLookAroundEffect(leaderEntity);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_80898F8(Entity *r0);
|
||||
static void sub_8089908(Entity *r0);
|
||||
|
|
@ -68,7 +45,7 @@ void sub_808970C(void)
|
|||
{
|
||||
Entity *leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
DungeonStartNewBGM(MUS_TINY_WOODS);
|
||||
sub_80854D4();
|
||||
sub_8085930(DIRECTION_NORTH);
|
||||
|
|
@ -81,7 +58,7 @@ void sub_808974C(void)
|
|||
{
|
||||
Entity *leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_80854D4();
|
||||
sub_8085930(DIRECTION_NORTH);
|
||||
sub_80855E4(sub_8086A3C);
|
||||
|
|
@ -116,7 +93,7 @@ void sub_80897F0(void)
|
|||
{
|
||||
Entity *leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8086448();
|
||||
sub_803E708(10,0x46);
|
||||
sub_808563C(SpriteShockEffect);
|
||||
|
|
@ -151,7 +128,7 @@ void sub_8089878(void)
|
|||
{
|
||||
Entity *leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8086448();
|
||||
sub_803E708(10,0x46);
|
||||
sub_808563C(SpriteShockEffect);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_8087144(void);
|
||||
|
||||
|
|
@ -67,7 +44,7 @@ void sub_8086E9C(void)
|
|||
{
|
||||
Entity * leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_8085374();
|
||||
sub_80854D4();
|
||||
|
|
@ -84,7 +61,7 @@ void sub_8086F00(void)
|
|||
{
|
||||
Entity * leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_80854D4();
|
||||
sub_8085930(DIRECTION_NORTH);
|
||||
sub_80855E4(sub_8086A3C);
|
||||
|
|
@ -122,7 +99,7 @@ void TeamMeaniesPreFightDialogue(void)
|
|||
{
|
||||
Entity *leaderEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8086448();
|
||||
sub_803E708(10, 0x46);
|
||||
DisplayDungeonDialogue(gTeamMeaniesPreFightDialogue_1);
|
||||
|
|
@ -149,8 +126,8 @@ void TeamMeaniesReFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *partnerEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
sub_8086448();
|
||||
DisplayDungeonDialogue(gTeamMeaniesReFightDialogue_1);
|
||||
sub_803E708(10, 0x46);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,38 +33,17 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
void sub_808C9C4(void)
|
||||
{
|
||||
Entity *leaderEntity;
|
||||
Entity *medichamEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
medichamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MEDICHAM);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -134,7 +111,7 @@ void sub_808CB5C(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *medichamEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
medichamEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MEDICHAM);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void MewtwoDropInEffect(Entity *mewtwoEntity);
|
||||
static void MewtwoScreenFlash(void);
|
||||
|
|
@ -69,7 +46,7 @@ void sub_8089914(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *MewtwoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
MewtwoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MEWTWO);
|
||||
DungeonStopBGM();
|
||||
gDungeon->unk7 = 1;
|
||||
|
|
@ -87,7 +64,7 @@ void sub_8089978(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *MewtwoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
MewtwoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MEWTWO);
|
||||
DungeonStopBGM();
|
||||
sub_80854D4();
|
||||
|
|
@ -119,7 +96,7 @@ void MewtwoPreFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *MewtwoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
MewtwoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MEWTWO);
|
||||
sub_8086448();
|
||||
DisplayDungeonDialogue(&gMewtwoPreFightDialogue_1);
|
||||
|
|
@ -146,7 +123,7 @@ void MewtwoReFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *MewtwoEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
MewtwoEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MEWTWO);
|
||||
sub_8086448();
|
||||
if(HasRecruitedMon(MONSTER_MEWTWO)) {
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,36 +29,16 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_leveling.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
extern void sub_8085F44(s32);
|
||||
|
||||
static void MoltresDropInEffect(Entity * moltresEntity);
|
||||
static void MoltresScreenFlash1(s32 xArg, s32 yArg);
|
||||
|
|
@ -73,7 +51,7 @@ void sub_80877E8(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * moltresEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
moltresEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MOLTRES);
|
||||
DungeonStartNewBGM(MUS_THE_MOUNTAIN_OF_FIRE);
|
||||
sub_8085374();
|
||||
|
|
@ -94,7 +72,7 @@ void sub_8087848(void)
|
|||
u32 XPos;
|
||||
s32 YPos;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
moltresEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MOLTRES);
|
||||
DungeonStartNewBGM(MUS_THE_MOUNTAIN_OF_FIRE);
|
||||
sub_80854D4();
|
||||
|
|
@ -104,7 +82,7 @@ void sub_8087848(void)
|
|||
HandleFaint(moltresEntity,0x21c,0);
|
||||
}
|
||||
else {
|
||||
sub_8072008(moltresEntity,moltresEntity,gMoltresConfigLevel,0,0);
|
||||
LevelUpTarget(moltresEntity,moltresEntity,gMoltresConfigLevel,0,0);
|
||||
SetFacingDirection(moltresEntity, DIRECTION_SOUTH);
|
||||
sub_8086A3C(moltresEntity);
|
||||
}
|
||||
|
|
@ -129,8 +107,8 @@ void MoltresPreFightDialogue(void)
|
|||
Entity *partnerEntity;
|
||||
Entity *moltresEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
moltresEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MOLTRES);
|
||||
MoltresScreenFlash1(0xc,5);
|
||||
sub_8086500();
|
||||
|
|
@ -198,8 +176,8 @@ void MoltresReFightDialogue(void)
|
|||
Entity *partnerEntity;
|
||||
Entity *moltresEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
moltresEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MOLTRES);
|
||||
MoltresScreenFlash1(10,5);
|
||||
sub_8086500();
|
||||
|
|
@ -239,7 +217,7 @@ void MoltresPostStoryPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * moltresEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
moltresEntity = GetEntityFromMonsterBehavior(BEHAVIOR_MOLTRES);
|
||||
MoltresScreenFlash1(0xc,5);
|
||||
sub_808654C();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
|
||||
void sub_808CD9C(void)
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,15 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "weather.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void RaikouScreenFlash(void);
|
||||
|
||||
|
|
@ -68,7 +46,7 @@ void sub_8089EFC(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RaikouEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RaikouEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAIKOU);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -83,7 +61,7 @@ void sub_8089F44(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RaikouEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RaikouEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAIKOU);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -98,7 +76,7 @@ void sub_8089F8C(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RaikouEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RaikouEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAIKOU);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -126,7 +104,7 @@ void RaikouPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RaikouEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RaikouEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAIKOU);
|
||||
DisplayDungeonDialogue(&gRaikouPreFightDialogue_1);
|
||||
RaikouScreenFlash();
|
||||
|
|
@ -151,7 +129,7 @@ void RaikouReFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RaikouEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RaikouEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAIKOU);
|
||||
gDungeon->weather.unkE265 = WEATHER_RAIN;
|
||||
sub_807EAA0(0,1);
|
||||
|
|
@ -171,7 +149,7 @@ void RaikouPostStoryPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RaikouEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RaikouEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAIKOU);
|
||||
if (HasRecruitedMon(MONSTER_RAIKOU)) {
|
||||
sub_80866C4(&gRaikouPostStoryPreFightDialogue_4);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,15 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_leveling.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void RayquazaDropInEffect(Entity *rayquazaEntity);
|
||||
static void RayquazaScreenFlash(void);
|
||||
|
|
@ -69,7 +47,7 @@ void sub_80892C8(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * RayquazaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
RayquazaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAYQUAZA);
|
||||
DungeonStartNewBGM(MUS_RAYQUAZAS_DOMAIN);
|
||||
sub_8085374();
|
||||
|
|
@ -87,7 +65,7 @@ void sub_8089328(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * rayquazaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
rayquazaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAYQUAZA);
|
||||
DungeonStartNewBGM(MUS_RAYQUAZAS_DOMAIN);
|
||||
sub_80854D4();
|
||||
|
|
@ -97,7 +75,7 @@ void sub_8089328(void)
|
|||
HandleFaint(rayquazaEntity,0x21c,0);
|
||||
}
|
||||
else {
|
||||
sub_8072008(rayquazaEntity,rayquazaEntity,gRayquazaConfigLevel,0,0);
|
||||
LevelUpTarget(rayquazaEntity,rayquazaEntity,gRayquazaConfigLevel,0,0);
|
||||
sub_8086A3C(rayquazaEntity);
|
||||
}
|
||||
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
|
||||
|
|
@ -118,8 +96,8 @@ void RayquazaPreFightDialogue(void)
|
|||
Entity *partnerEntity;
|
||||
Entity *rayquazaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
rayquazaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAYQUAZA);
|
||||
sub_8086448();
|
||||
DisplayDungeonDialogue(&gRayquazaPreFightDialogue_1);
|
||||
|
|
@ -158,7 +136,7 @@ void RayquazaReFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *rayquazaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
rayquazaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAYQUAZA);
|
||||
sub_8086448();
|
||||
RayquazaScreenFlash();
|
||||
|
|
@ -182,7 +160,7 @@ void RayquazaPostStoryPreFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *rayquazaEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
rayquazaEntity = GetEntityFromMonsterBehavior(BEHAVIOR_RAYQUAZA);
|
||||
sub_8086448();
|
||||
if (sub_8086AE4(MONSTER_RAYQUAZA)) {
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,15 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_map.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_808B1CC(u8 itemID);
|
||||
static void SetupRegiFacingDirection(Entity *regiEntity);
|
||||
|
|
@ -156,7 +134,7 @@ void sub_808AE54(u8 param_1,u8 param_2,DungeonPos *param_3)
|
|||
Item item;
|
||||
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8052D44(IDStack,leaderEntity,0);
|
||||
if (!sub_8098100(0x22) && (param_2 == 0x2E) && (param_1 == 0x17)) {
|
||||
sub_808B1CC(ITEM_NOTHING);
|
||||
|
|
@ -178,7 +156,7 @@ void sub_808AEC8(u8 param_1,u8 param_2,DungeonPos *param_3)
|
|||
Item item;
|
||||
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8052D44(IDStack,leaderEntity,0);
|
||||
if (!sub_8098100(0x22) && (param_2 == 0x2F) && (param_1 == 0x18)) {
|
||||
sub_808B1CC(ITEM_NOTHING);
|
||||
|
|
@ -200,7 +178,7 @@ void sub_808AF3C(u8 param_1,u8 param_2,DungeonPos *param_3)
|
|||
Item item;
|
||||
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8052D44(IDStack,leaderEntity,0);
|
||||
if (!sub_8098100(0x22) && (param_2 == 0x30) && (param_1 == 0x19)) {
|
||||
sub_808B1CC(ITEM_NOTHING);
|
||||
|
|
@ -220,7 +198,7 @@ void sub_808AFB0(u8 param_1)
|
|||
Entity * leaderEntity;
|
||||
s16 IDStack [2];
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8052D44(IDStack,leaderEntity,0);
|
||||
if (!sub_8098100(0x22) && (param_1 == 0x2E) && (!sub_8098100(0x1d)) && (sub_80860A8(ITEM_ROCK_PART) != 0)) {
|
||||
sub_8097FD0(0x1d);
|
||||
|
|
@ -238,7 +216,7 @@ void sub_808B030(u8 param_1)
|
|||
Entity * leaderEntity;
|
||||
s16 IDStack [2];
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8052D44(IDStack,leaderEntity,0);
|
||||
if (!sub_8098100(0x22) && (param_1 == 0x2F) && (!sub_8098100(0x1d)) && (sub_80860A8(ITEM_ICE_PART) != 0)) {
|
||||
sub_8097FD0(0x1d);
|
||||
|
|
@ -256,7 +234,7 @@ void sub_808B0B0(u8 param_1)
|
|||
Entity * leaderEntity;
|
||||
s16 IDStack [2];
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
sub_8052D44(IDStack,leaderEntity,0);
|
||||
if (!sub_8098100(0x22) && (param_1 == 0x30) && (!sub_8098100(0x1d)) && (sub_80860A8(ITEM_STEEL_PART) != 0)) {
|
||||
sub_8097FD0(0x1d);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void SkarmoryEntry(Entity * skarmoryEntity);
|
||||
|
||||
|
|
@ -69,7 +46,7 @@ void sub_8086B14(void)
|
|||
Entity * diglettEntity;
|
||||
Entity * skarmoryEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
diglettEntity = GetEntityFromMonsterBehavior(BEHAVIOR_DIGLETT);
|
||||
skarmoryEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SKARMORY);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
|
|
@ -90,7 +67,7 @@ void sub_8086B94(void)
|
|||
Entity * diglettEntity;
|
||||
Entity * skarmoryEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
diglettEntity = GetEntityFromMonsterBehavior(BEHAVIOR_DIGLETT);
|
||||
skarmoryEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SKARMORY);
|
||||
|
||||
|
|
@ -119,8 +96,8 @@ void SkarmoryPreFightDialogue(void)
|
|||
PixelPos pos1;
|
||||
PixelPos pos2;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader(); // Player
|
||||
partnerEntity = GetPartnerEntity(); // Partner
|
||||
leaderEntity = CutsceneGetLeader(); // Player
|
||||
partnerEntity = CutsceneGetPartner(); // Partner
|
||||
diglettEntity = GetEntityFromMonsterBehavior(BEHAVIOR_DIGLETT); // Diglett
|
||||
skarmoryEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SKARMORY); // Skarmory
|
||||
|
||||
|
|
@ -175,7 +152,7 @@ void SkarmoryReFightDialogue(void)
|
|||
Entity * skarmoryEntity;
|
||||
PixelPos pos;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
skarmoryEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SKARMORY);
|
||||
pos.x = skarmoryEntity->pixelPos.x;
|
||||
pos.y = skarmoryEntity->pixelPos.y + 0x2000;
|
||||
|
|
@ -196,7 +173,7 @@ void SkarmoryReFightDialogue(void)
|
|||
|
||||
void sub_8086E40(void)
|
||||
{
|
||||
SpriteLookAroundEffect(xxx_call_GetLeader());
|
||||
SpriteLookAroundEffect(CutsceneGetLeader());
|
||||
sub_803E708(10,0x46);
|
||||
DisplayDungeonDialogue(&gUnknown_8100D3C);
|
||||
sub_803E708(10,0x46);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
void DummyFightDialogue(void)
|
||||
{
|
||||
|
|
@ -70,7 +47,7 @@ void sub_808CBB0(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *smeargleEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
smeargleEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SMEARGLE);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -140,7 +117,7 @@ void sub_808CD44(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *smeargleEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
smeargleEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SMEARGLE);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -35,31 +33,10 @@
|
|||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
static void sub_808A528(Entity * param_1);
|
||||
static void SuicuneScreenFlash(void);
|
||||
|
|
@ -69,7 +46,7 @@ void sub_808A264(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * SuicuneEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
SuicuneEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SUICUNE);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -86,7 +63,7 @@ void sub_808A2C0(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * SuicuneEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
SuicuneEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SUICUNE);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -101,7 +78,7 @@ void sub_808A308(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * SuicuneEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
SuicuneEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SUICUNE);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_80854D4();
|
||||
|
|
@ -129,7 +106,7 @@ void SuicunePreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * SuicuneEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
SuicuneEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SUICUNE);
|
||||
sub_8086448();
|
||||
DisplayDungeonDialogue(&gSuicunePreFightDialogue_1);
|
||||
|
|
@ -157,7 +134,7 @@ void SuicuneReFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * SuicuneEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
SuicuneEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SUICUNE);
|
||||
DisplayDungeonDialogue(&gSuicuneReFightDialogue_1);
|
||||
SuicuneScreenFlash();
|
||||
|
|
@ -174,7 +151,7 @@ void SuicunePostStoryPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * SuicuneEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
SuicuneEntity = GetEntityFromMonsterBehavior(BEHAVIOR_SUICUNE);
|
||||
if (HasRecruitedMon(MONSTER_SUICUNE)) {
|
||||
sub_80866C4(&gSuicunePostStoryPreFightDialogue_4);
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_cutscene.h"
|
||||
#include "effect_main.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "code_8041AD0.h"
|
||||
#include "code_804267C.h"
|
||||
#include "code_80861A8.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "code_80869E4.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leader.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_logic.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util_1.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "exclusive_pokemon.h"
|
||||
#include "friend_area.h"
|
||||
|
|
@ -31,35 +29,15 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_leveling.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
extern u8 sub_806FD18(Entity *);
|
||||
extern void sub_806FDF4(Entity *, Entity *, Entity **);
|
||||
extern s32 GetCameraXPos(void);
|
||||
extern s32 GetCameraYPos(void);
|
||||
extern void sub_803F878(u32, s32);
|
||||
extern void BgColorCallNullsub4(void);
|
||||
extern void sub_8085EB0(void);
|
||||
extern void sub_8049884(void);
|
||||
extern void sub_8049B8C(void);
|
||||
extern void UpdateMinimap(void);
|
||||
extern void sub_8086A54(Entity *);
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
extern void sub_8041888(u32);
|
||||
extern u32 sub_80861F8(u32, Entity *, u32);
|
||||
extern u8 sub_80860A8(u32);
|
||||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SpawnDroppedItemWrapper(Entity *, DungeonPos *, Item *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_807EAA0(u32, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern u32 GetRandomFloorItem(u32);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
extern void SetupBossFightHP(Entity *pokemon, s32 newHP, u16 songIndex);
|
||||
extern u8 sub_8086AE4(s16 _index);
|
||||
|
||||
struct Zapdos1
|
||||
{
|
||||
|
|
@ -79,7 +57,7 @@ void sub_8087230(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *zapdosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
zapdosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ZAPDOS);
|
||||
DungeonStartNewBGM(MUS_IN_THE_DEPTHS_OF_THE_PIT);
|
||||
sub_8085374();
|
||||
|
|
@ -98,7 +76,7 @@ void sub_808729C(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *zapdosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
zapdosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ZAPDOS);
|
||||
sub_80854D4();
|
||||
sub_8085930(4);
|
||||
|
|
@ -107,7 +85,7 @@ void sub_808729C(void)
|
|||
HandleFaint(zapdosEntity,0x21c,0);
|
||||
}
|
||||
else {
|
||||
sub_8072008(zapdosEntity,zapdosEntity,gZapdosConfigLevel,0,0);
|
||||
LevelUpTarget(zapdosEntity,zapdosEntity,gZapdosConfigLevel,0,0);
|
||||
SetFacingDirection(zapdosEntity,DIRECTION_SOUTH);
|
||||
sub_8086A3C(zapdosEntity);
|
||||
}
|
||||
|
|
@ -138,8 +116,8 @@ void ZapdosPreFightDialogue(void)
|
|||
Entity *zapdosEntity; // sp 0x68
|
||||
struct_8085B80 auStack_48; // r8
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
partnerEntity = GetPartnerEntity();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
partnerEntity = CutsceneGetPartner();
|
||||
zapdosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ZAPDOS);
|
||||
sub_8086448();
|
||||
sub_803E708(10,0x46);
|
||||
|
|
@ -212,7 +190,7 @@ void ZapdosReFightDialogue(void)
|
|||
Entity *leaderEntity;
|
||||
Entity *zapdosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
zapdosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ZAPDOS);
|
||||
sub_8086448();
|
||||
sub_803E708(10,0x46);
|
||||
|
|
@ -237,7 +215,7 @@ void ZapdosPostStoryPreFightDialogue(void)
|
|||
Entity * leaderEntity;
|
||||
Entity * zapdosEntity;
|
||||
|
||||
leaderEntity = xxx_call_GetLeader();
|
||||
leaderEntity = CutsceneGetLeader();
|
||||
zapdosEntity = GetEntityFromMonsterBehavior(BEHAVIOR_ZAPDOS);
|
||||
sub_8086448();
|
||||
if (sub_8086AE4(MONSTER_ZAPDOS)) {
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user