mirror of
https://github.com/pret/pmd-red.git
synced 2026-06-20 11:31:54 -05:00
dungeon leveling / dungeon turn effects
This commit is contained in:
parent
9d6ad7e4da
commit
87bd005c29
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
|
||||
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
|
||||
|
|
@ -8,6 +8,7 @@ bool8 HasRecruitedMon(s32 species_);
|
|||
s16 GetBaseSpecies(s16 index);
|
||||
s16 GetBaseSpeciesNoUnown(s16 index);
|
||||
bool8 TacticsTargetLeader(u8 tactic);
|
||||
void GetUnlockedTacticFlags(u8 *tacticsBuffer, s32 pokeLevel);
|
||||
bool8 HasIQForSkill(s32 pokeIQ, u8 IQSkillIndex);
|
||||
s32 GetNumAvailableIQSkills(u8 *iqSkillBuffer, s32 pokeIQ);
|
||||
void CopyTacticsNameToBuffer(char *buffer, u8 tactic);
|
||||
|
|
|
|||
|
|
@ -242,11 +242,11 @@ SECTIONS {
|
|||
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_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);
|
||||
|
|
@ -627,11 +627,11 @@ SECTIONS {
|
|||
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_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);
|
||||
|
|
|
|||
|
|
@ -41,9 +41,9 @@
|
|||
#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);
|
||||
void sub_8042208(Entity *pokemon, u8 r1);
|
||||
extern void sub_807AB38(Entity *, u32);
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@
|
|||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "dungeon_leveling.h"
|
||||
|
||||
extern void sub_8042900(Entity *r0);
|
||||
extern void sub_8042968(Entity *r0);
|
||||
|
|
@ -44,7 +45,6 @@ void sub_8041BBC(Entity *r0);
|
|||
extern void sub_804178C(u32);
|
||||
extern void sub_8042B20(Entity *entity);
|
||||
extern void sub_8042B0C(Entity *entity);
|
||||
extern void sub_8072AC8(u16 *param_1, s32 species, s32 param_3);
|
||||
extern Entity *gLeaderPointer;
|
||||
extern bool8 sub_80860A8(u8 id);
|
||||
extern u8 gUnknown_202F32C;
|
||||
|
|
@ -55,7 +55,6 @@ extern Entity *sub_80453AC(s16 id);
|
|||
extern void sub_806B678(void);
|
||||
extern void EntityUpdateStatusSprites(Entity *);
|
||||
extern Entity *sub_80696A8(Entity *a0);
|
||||
extern s32 GetMonsterApparentID(Entity *pokemon, s32 _id);
|
||||
extern void sub_806A898(Entity *entity, bool8 r7, bool8 showRunAwayEffect);
|
||||
extern void sub_806A6E8(Entity *entity);
|
||||
|
||||
|
|
|
|||
|
|
@ -44,6 +44,8 @@
|
|||
#include "dungeon_kecleon_shop.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_turn_effects.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
extern void sub_8073D14(Entity *);
|
||||
|
|
@ -59,11 +61,9 @@ 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_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;
|
||||
|
|
@ -284,7 +284,7 @@ bool8 DisplayActions(Entity *a0)
|
|||
break;
|
||||
|
||||
TryForcedLoss(0);
|
||||
sub_8074094(mon);
|
||||
ApplyEndOfTurnEffects(mon);
|
||||
if (!EntityIsValid(mon))
|
||||
continue;
|
||||
if (IsFloorOver())
|
||||
|
|
|
|||
|
|
@ -32,6 +32,8 @@
|
|||
#include "dungeon_engine.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_action.h"
|
||||
#include "dungeon_turn_effects.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
extern u8 gUnknown_202F221;
|
||||
|
|
@ -71,8 +73,6 @@ bool8 sub_804AE08(DungeonPos *pos);
|
|||
void HandlePickUpAIAction(Entity *pokemon);
|
||||
void HandleThrowItemAIAction(Entity *pokemon);
|
||||
void HandleEatAIAction(Entity *pokemon);
|
||||
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);
|
||||
|
|
@ -336,7 +336,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);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,8 +22,6 @@
|
|||
|
||||
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};
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@
|
|||
#include "math.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_boss_dialogue.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "weather.h"
|
||||
|
||||
extern void sub_8042B0C(Entity *);
|
||||
|
|
@ -48,7 +49,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
@ -106,7 +106,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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -49,7 +49,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -48,7 +48,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@
|
|||
#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 *);
|
||||
|
|
@ -45,10 +46,8 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
@ -129,7 +128,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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -49,7 +49,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -49,7 +49,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -48,7 +48,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -48,7 +48,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@
|
|||
#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 *);
|
||||
|
|
@ -48,7 +49,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
@ -98,7 +98,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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,7 +48,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@
|
|||
#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 *);
|
||||
|
|
@ -47,7 +48,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
@ -90,7 +90,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);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ extern u8 sub_80860A8(u32);
|
|||
extern void sub_8052D44(s16 *, Entity *, Entity *);
|
||||
extern void SetDungeonBGColorRGB(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_8085EC8(u32, u32, u32, DungeonPos *, u32);
|
||||
extern void sub_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@
|
|||
#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 *);
|
||||
|
|
@ -44,10 +45,8 @@ 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_8072008(Entity *, Entity *, s16, u32, u32);
|
||||
extern void sub_8085374(void);
|
||||
extern bool8 sub_8085B80(struct_8085B80 *);
|
||||
extern void sub_8086A3C(Entity *pokemon);
|
||||
|
|
@ -100,7 +99,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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
#include "dungeon_config.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "weather.h"
|
||||
#include "game_options.h"
|
||||
#include "code_8077274_1.h"
|
||||
|
|
@ -50,7 +51,6 @@ extern void sub_803ED30(s32, Entity *r0, u8, s32);
|
|||
extern bool8 sub_806A458(Entity *);
|
||||
extern bool8 sub_806F660(Entity *, Entity *);
|
||||
extern bool8 sub_806A58C(s16 a0);
|
||||
extern void sub_8071D4C(Entity *pokemon, Entity *target, s32 exp);
|
||||
extern void sub_8042148(Entity *pokemon);
|
||||
extern void sub_8042A24(Entity *r0);
|
||||
extern void sub_806A390(Entity *r0);
|
||||
|
|
@ -455,7 +455,7 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
|
|||
sub_806CE68(target, 8);
|
||||
}
|
||||
if (HasHeldItem(target, ITEM_JOY_RIBBON) && hpChange > 0 && dmgStruct->dmg != 9999) {
|
||||
sub_8071D4C(attacker, target, hpChange);
|
||||
AddExpPoints(attacker, target, hpChange);
|
||||
}
|
||||
|
||||
if (unkTile != NULL)
|
||||
|
|
@ -718,11 +718,11 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
|
|||
if (targetData->isNotTeamMember) {
|
||||
s32 i;
|
||||
|
||||
sub_8071D4C(attacker, attacker, exp);
|
||||
AddExpPoints(attacker, attacker, exp);
|
||||
for (i = 0; i < MAX_TEAM_MEMBERS; i++) {
|
||||
Entity *teamMember = gDungeon->teamPokemon[i];
|
||||
if (EntityIsValid(teamMember) && teamMember != attacker) {
|
||||
sub_8071D4C(attacker, teamMember, exp);
|
||||
AddExpPoints(attacker, teamMember, exp);
|
||||
}
|
||||
}
|
||||
r10 = TRUE;
|
||||
|
|
|
|||
|
|
@ -3,11 +3,15 @@
|
|||
#include "dungeon_engine.h"
|
||||
#include "run_dungeon.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_main.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "dungeon_ai_leader.h"
|
||||
#include "dungeon_ai.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "dungeon_turn_effects.h"
|
||||
#include "structs/dungeon_entity.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "constants/ability.h"
|
||||
|
|
@ -17,13 +21,8 @@
|
|||
|
||||
extern void sub_807E378(void);
|
||||
extern u8 DisplayActions(u32);
|
||||
extern void TickStatusAndHealthRegen(Entity *);
|
||||
extern void sub_8086AC0(void);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void TryActivateArtificialWeatherAbilities(void);
|
||||
extern void DungeonHandlePlayerInput(void);
|
||||
extern void sub_805F02C(void);
|
||||
extern void sub_8074094(Entity *);
|
||||
extern void sub_8071B48(void);
|
||||
|
||||
static void sub_8044454(void);
|
||||
|
|
@ -306,7 +305,7 @@ static void sub_8044574(void)
|
|||
if (EntityIsValid(teamMon)) {
|
||||
EntityInfo *teamMonInfo = GetEntInfo(teamMon);
|
||||
if (teamMonInfo->aiAllySkip) {
|
||||
sub_8074094(teamMon);
|
||||
ApplyEndOfTurnEffects(teamMon);
|
||||
if (EntityIsValid(teamMon)) {
|
||||
EnemyEvolution(teamMon);
|
||||
teamMonInfo->aiAllySkip = FALSE;
|
||||
|
|
@ -367,7 +366,7 @@ static void sub_8044820(void)
|
|||
entity2 = gDungeon->wildPokemon[index];
|
||||
if ((EntityIsValid(entity2)) && (entityInfo2 = GetEntInfo(entity2), entityInfo2->aiAllySkip))
|
||||
{
|
||||
sub_8074094(entity2);
|
||||
ApplyEndOfTurnEffects(entity2);
|
||||
if (EntityIsValid(entity2)) {
|
||||
EnemyEvolution(entity2);
|
||||
entityInfo2->aiAllySkip = FALSE;
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@
|
|||
#include "dungeon_damage.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_move.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
extern u32 gUnknown_8106A4C;
|
||||
|
|
@ -45,11 +46,7 @@ extern void sub_8045BF8(u8 *, Item *);
|
|||
extern void ActionShowMoveInfo(ActionContainer *);
|
||||
extern void ActionLinkMoves(ActionContainer *);
|
||||
extern void sub_804245C(Entity *, Item *);
|
||||
extern u8 sub_8072938(Entity *, u16);
|
||||
extern void sub_8072008(Entity *pokemon, Entity *r1, u32 r2, u8 r3, u32);
|
||||
extern void LevelDownTarget(Entity *pokemon, Entity *r1, u32 r2);
|
||||
extern s32 sub_8042520(Entity *);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_8042390(Entity *, Item *);
|
||||
|
||||
static void StunSeedItemAction(Entity *, Entity *);
|
||||
|
|
@ -474,7 +471,7 @@ static void TotterSeedItemAction(Entity *pokemon, Entity *target)
|
|||
|
||||
static void JoySeedItemAction(Entity *pokemon, Entity *target)
|
||||
{
|
||||
sub_8072008(pokemon, target, 1, 1, 1);
|
||||
LevelUpTarget(pokemon, target, 1, 1, 1);
|
||||
}
|
||||
|
||||
static void StunSeedItemAction(Entity *pokemon, Entity *target)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "constants/tactic.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_range.h"
|
||||
|
|
@ -29,21 +30,14 @@
|
|||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_music.h"
|
||||
|
||||
EWRAM_DATA s32 gUnknown_202F31C[2] = {0, 0};
|
||||
EWRAM_DATA s32 gUnknown_202F324[2] = {0, 0};
|
||||
static EWRAM_DATA s32 sNewAtkStats[2] = {0, 0};
|
||||
static EWRAM_DATA s32 sNewDefStats[2] = {0, 0};
|
||||
|
||||
extern void ResetMonEntityData(EntityInfo *, u32);
|
||||
void sub_8042A44(Entity *r0);
|
||||
void sub_8072778(Entity *, Entity *, u8, u8);
|
||||
bool8 sub_80725A4(Entity *, Entity *);
|
||||
void GetUnlockedTacticFlags(u8 *tacticsBuffer, s32 pokeLevel);
|
||||
void sub_807218C(Entity *);
|
||||
|
||||
extern void sub_8072B78(Entity *pokemon, Entity *target, s16 id);
|
||||
extern s32 GetMovesLearnedAtLevel(u16* dst, s16 species, s32 level, s32 IQPoints);
|
||||
|
||||
void sub_8072B24(Entity *entity, Move *moves);
|
||||
|
||||
static const u8 gUnknown_8107010[8] = {0, 1, 1, 2, 1, 1, 0, 0};
|
||||
static const u8 * const gUnknown_8107018[3] = {
|
||||
_(""),
|
||||
|
|
@ -52,14 +46,18 @@ static const u8 * const gUnknown_8107018[3] = {
|
|||
};
|
||||
|
||||
static bool8 LevelUp(Entity *, Entity *, u8, u8);
|
||||
static void sub_807218C(Entity *pokemon);
|
||||
static bool8 sub_80725A4(Entity *pokemon, Entity *target);
|
||||
static void sub_8072778(Entity *pokemon, Entity *target, u8 param_2, u8 param_3);
|
||||
static void sub_8072B24(Entity *entity, Move *moves);
|
||||
static void sub_8072B78(Entity *pokemon, Entity *target, s16 id);
|
||||
|
||||
void sub_8071D4C(Entity *pokemon, Entity *target, s32 exp)
|
||||
void AddExpPoints(Entity *pokemon, Entity *target, s32 exp)
|
||||
{
|
||||
s32 newExp;
|
||||
s32 expDiff;
|
||||
EntityInfo *info;
|
||||
|
||||
info = GetEntInfo(target);
|
||||
EntityInfo *info = GetEntInfo(target);
|
||||
if (info->level != 100) {
|
||||
if (!IsExperienceLocked(info->joinedAt.id)) {
|
||||
newExp = info->exp + exp;
|
||||
|
|
@ -179,7 +177,7 @@ void EnemyEvolution(Entity *entity)
|
|||
}
|
||||
}
|
||||
|
||||
void sub_8072008(Entity *pokemon, Entity *target, s32 level, u8 param_4, u8 param_5)
|
||||
void LevelUpTarget(Entity *pokemon, Entity *target, s32 level, u8 param_4, u8 param_5)
|
||||
{
|
||||
bool8 flag;
|
||||
s32 newLevel;
|
||||
|
|
@ -244,7 +242,7 @@ void sub_8072008(Entity *pokemon, Entity *target, s32 level, u8 param_4, u8 para
|
|||
}
|
||||
}
|
||||
|
||||
void sub_807218C(Entity *pokemon)
|
||||
static void sub_807218C(Entity *pokemon)
|
||||
{
|
||||
EntityInfo *info;
|
||||
u8 buffer [400];
|
||||
|
|
@ -419,33 +417,33 @@ static bool8 LevelUp(Entity *pokemon, Entity *target, u8 param_3, u8 param_4)
|
|||
info->HP = info->maxHPStat;
|
||||
}
|
||||
|
||||
gUnknown_202F31C[0] = info->atk[0];
|
||||
gUnknown_202F31C[1] = info->atk[1];
|
||||
gUnknown_202F324[0] = info->def[0];
|
||||
gUnknown_202F324[1] = info->def[1];
|
||||
sNewAtkStats[0] = info->atk[0];
|
||||
sNewAtkStats[1] = info->atk[1];
|
||||
sNewDefStats[0] = info->def[0];
|
||||
sNewDefStats[1] = info->def[1];
|
||||
|
||||
gUnknown_202F31C[0] += leveldata.gainAtt[0];
|
||||
gUnknown_202F31C[1] += leveldata.gainAtt[1];
|
||||
gUnknown_202F324[0] += leveldata.gainDef[0];
|
||||
gUnknown_202F324[1] += leveldata.gainDef[1];
|
||||
sNewAtkStats[0] += leveldata.gainAtt[0];
|
||||
sNewAtkStats[1] += leveldata.gainAtt[1];
|
||||
sNewDefStats[0] += leveldata.gainDef[0];
|
||||
sNewDefStats[1] += leveldata.gainDef[1];
|
||||
|
||||
if(gUnknown_202F31C[0] > 254)
|
||||
gUnknown_202F31C[0] = 255;
|
||||
if(gUnknown_202F31C[1] > 254)
|
||||
gUnknown_202F31C[1] = 255;
|
||||
if(gUnknown_202F324[0] > 254)
|
||||
gUnknown_202F324[0] = 255;
|
||||
if(gUnknown_202F324[1] > 254)
|
||||
gUnknown_202F324[1] = 255;
|
||||
if(sNewAtkStats[0] > 254)
|
||||
sNewAtkStats[0] = 255;
|
||||
if(sNewAtkStats[1] > 254)
|
||||
sNewAtkStats[1] = 255;
|
||||
if(sNewDefStats[0] > 254)
|
||||
sNewDefStats[0] = 255;
|
||||
if(sNewDefStats[1] > 254)
|
||||
sNewDefStats[1] = 255;
|
||||
|
||||
|
||||
LoadIQSkills(target);
|
||||
sub_8079764(target);
|
||||
|
||||
info->atk[0] = gUnknown_202F31C[0];
|
||||
info->atk[1] = gUnknown_202F31C[1];
|
||||
info->def[0] = gUnknown_202F324[0];
|
||||
info->def[1] = gUnknown_202F324[1];
|
||||
info->atk[0] = sNewAtkStats[0];
|
||||
info->atk[1] = sNewAtkStats[1];
|
||||
info->def[0] = sNewDefStats[0];
|
||||
info->def[1] = sNewDefStats[1];
|
||||
|
||||
sub_8072778(pokemon, target, param_3, param_4);
|
||||
}
|
||||
|
|
@ -453,7 +451,7 @@ static bool8 LevelUp(Entity *pokemon, Entity *target, u8 param_3, u8 param_4)
|
|||
return flag;
|
||||
}
|
||||
|
||||
bool8 sub_80725A4(Entity *pokemon, Entity *target)
|
||||
static bool8 sub_80725A4(Entity *pokemon, Entity *target)
|
||||
{
|
||||
EntityInfo *info;
|
||||
LevelData leveldata;
|
||||
|
|
@ -513,33 +511,33 @@ bool8 sub_80725A4(Entity *pokemon, Entity *target)
|
|||
info->HP = info->maxHPStat;
|
||||
}
|
||||
|
||||
gUnknown_202F31C[0] = info->atk[0];
|
||||
gUnknown_202F31C[1] = info->atk[1];
|
||||
gUnknown_202F324[0] = info->def[0];
|
||||
gUnknown_202F324[1] = info->def[1];
|
||||
sNewAtkStats[0] = info->atk[0];
|
||||
sNewAtkStats[1] = info->atk[1];
|
||||
sNewDefStats[0] = info->def[0];
|
||||
sNewDefStats[1] = info->def[1];
|
||||
|
||||
gUnknown_202F31C[0] -= leveldata.gainAtt[0];
|
||||
gUnknown_202F31C[1] -= leveldata.gainAtt[1];
|
||||
gUnknown_202F324[0] -= leveldata.gainDef[0];
|
||||
gUnknown_202F324[1] -= leveldata.gainDef[1];
|
||||
sNewAtkStats[0] -= leveldata.gainAtt[0];
|
||||
sNewAtkStats[1] -= leveldata.gainAtt[1];
|
||||
sNewDefStats[0] -= leveldata.gainDef[0];
|
||||
sNewDefStats[1] -= leveldata.gainDef[1];
|
||||
|
||||
if(gUnknown_202F31C[0] <= 1)
|
||||
gUnknown_202F31C[0] = 1;
|
||||
if(gUnknown_202F31C[1] <= 1)
|
||||
gUnknown_202F31C[1] = 1;
|
||||
if(gUnknown_202F324[0] <= 1)
|
||||
gUnknown_202F324[0] = 1;
|
||||
if(gUnknown_202F324[1] <= 1)
|
||||
gUnknown_202F324[1] = 1;
|
||||
if(sNewAtkStats[0] <= 1)
|
||||
sNewAtkStats[0] = 1;
|
||||
if(sNewAtkStats[1] <= 1)
|
||||
sNewAtkStats[1] = 1;
|
||||
if(sNewDefStats[0] <= 1)
|
||||
sNewDefStats[0] = 1;
|
||||
if(sNewDefStats[1] <= 1)
|
||||
sNewDefStats[1] = 1;
|
||||
|
||||
|
||||
LoadIQSkills(target);
|
||||
sub_8079764(target);
|
||||
|
||||
info->atk[0] = gUnknown_202F31C[0];
|
||||
info->atk[1] = gUnknown_202F31C[1];
|
||||
info->def[0] = gUnknown_202F324[0];
|
||||
info->def[1] = gUnknown_202F324[1];
|
||||
info->atk[0] = sNewAtkStats[0];
|
||||
info->atk[1] = sNewAtkStats[1];
|
||||
info->def[0] = sNewDefStats[0];
|
||||
info->def[1] = sNewDefStats[1];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -560,7 +558,7 @@ bool8 sub_80725A4(Entity *pokemon, Entity *target)
|
|||
}
|
||||
}
|
||||
|
||||
void sub_8072778(Entity *pokemon, Entity *target, u8 param_2, u8 param_3)
|
||||
static void sub_8072778(Entity *pokemon, Entity *target, u8 param_2, u8 param_3)
|
||||
{
|
||||
s32 i, j;
|
||||
u16 learnedMoves[16];
|
||||
|
|
@ -709,16 +707,14 @@ bool8 sub_8072938(Entity *target, u16 moveId)
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_8072AC8(s16 *param_1, s16 species, s32 param_3)
|
||||
void sub_8072AC8(s16 *param_1, s32 species, s32 param_3)
|
||||
{
|
||||
const u8 *levelUpMoves;
|
||||
s32 arrIndex;
|
||||
s32 counter;
|
||||
u16 moveIDs [2];
|
||||
s32 species_s32;
|
||||
s32 index;
|
||||
|
||||
species_s32 = species;
|
||||
s32 species_s32 = (s16) species;
|
||||
|
||||
for(index = 0; index < MAX_MON_MOVES; index++) {
|
||||
param_1[index] = MOVE_NOTHING;
|
||||
|
|
@ -745,7 +741,7 @@ void sub_8072AC8(s16 *param_1, s16 species, s32 param_3)
|
|||
}
|
||||
}
|
||||
|
||||
void sub_8072B24(Entity *entity, Move *moves)
|
||||
static void sub_8072B24(Entity *entity, Move *moves)
|
||||
{
|
||||
int index;
|
||||
int count;
|
||||
|
|
@ -772,7 +768,7 @@ static inline void fu(EntityInfo *entityInfo, s16 id)
|
|||
entityInfo->id = id;
|
||||
}
|
||||
|
||||
void sub_8072B78(Entity *pokemon, Entity *target, s16 id)
|
||||
static void sub_8072B78(Entity *pokemon, Entity *target, s16 id)
|
||||
{
|
||||
OpenedFile *file;
|
||||
const Tile *tile;
|
||||
|
|
@ -64,11 +64,9 @@ extern void sub_8042900(Entity *r0);
|
|||
extern void sub_8042968(Entity *r0);
|
||||
extern void EndAbilityImmuneStatus(Entity *, Entity *);
|
||||
extern void sub_8041BBC(Entity *r0);
|
||||
extern void TryPointCameraToMonster(Entity *, u8);
|
||||
extern void sub_804178C(u32);
|
||||
extern void sub_8042B20(Entity *entity);
|
||||
extern void sub_8042B0C(Entity *entity);
|
||||
extern void sub_8072AC8(u16 *param_1, s32 species, s32 param_3);
|
||||
extern s16 sub_803D970(u32);
|
||||
extern bool8 sub_80860A8(u8 id);
|
||||
extern u8 sub_803D73C(s32 a0);
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ extern s16 sub_8057600(Move *move, s32 itemID);
|
|||
extern void sub_8042238(Entity *pokemon, Entity *target);
|
||||
extern void sub_806A1E8(Entity *pokemon);
|
||||
extern void sub_804178C(u32);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_80428A0(Entity *r0);
|
||||
extern bool8 sub_8040BB0(Entity *entity, Move *move, bool8);
|
||||
extern void sub_8040DA0(Entity *entity, Move *move);
|
||||
|
|
|
|||
|
|
@ -41,11 +41,11 @@
|
|||
#include "dungeon_pos_data.h"
|
||||
#include "dungeon_engine.h"
|
||||
#include "dungeon_damage.h"
|
||||
#include "dungeon_leveling.h"
|
||||
|
||||
extern void sub_80429C8(Entity *r0);
|
||||
extern void sub_806A1E8(Entity *pokemon);
|
||||
extern void sub_804178C(u32);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_80428A0(Entity *r0);
|
||||
extern bool8 sub_8040BB0(Entity *entity, Move *move, bool8);
|
||||
extern void sub_8040DA0(Entity *entity, Move *move);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "dungeon_turn_effects.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "items.h"
|
||||
#include "status.h"
|
||||
|
|
@ -33,26 +34,16 @@
|
|||
#include "dungeon_engine.h"
|
||||
#include "dungeon_damage.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_move_util.h"
|
||||
#include "warp_target.h"
|
||||
|
||||
extern void sub_805229C(void);
|
||||
extern void sub_80420B8(Entity *pokemon);
|
||||
extern void sub_8041C4C(Entity *pokemon, u32 r1);
|
||||
extern void sub_805E804(void);
|
||||
extern bool8 TryUseChosenMove(struct Entity *, u32, u32, u32, u32, struct Move *);
|
||||
extern void nullsub_97(Entity *entity);
|
||||
extern void sub_805EE30(void);
|
||||
extern void sub_8086AC0(void);
|
||||
extern void sub_8085140(void);
|
||||
extern void sub_8075708(Entity *entity);
|
||||
extern void sub_8043ED0(u32);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_8075900(Entity *pokemon, u8 r1);
|
||||
extern void sub_806A5B8(Entity *);
|
||||
extern bool8 DisplayActions(Entity *a0);
|
||||
|
||||
bool8 DisplayActions(Entity *a0);
|
||||
|
||||
void sub_8074094(Entity *entity)
|
||||
void ApplyEndOfTurnEffects(Entity *entity)
|
||||
{
|
||||
s32 rand;
|
||||
EntityInfo *entityInfo;
|
||||
|
|
@ -26,6 +26,7 @@
|
|||
#include "dungeon_engine.h"
|
||||
#include "dungeon_generation.h"
|
||||
#include "dungeon_items.h"
|
||||
#include "dungeon_leveling.h"
|
||||
#include "dungeon_range.h"
|
||||
#include "dungeon_map.h"
|
||||
#include "dungeon_map_access.h"
|
||||
|
|
@ -73,9 +74,7 @@ extern void sub_80848F0(void);
|
|||
extern void IncrementAdventureFloorsExplored(void);
|
||||
extern void sub_806AB2C(void);
|
||||
extern void DisplayPreFightDialogue(void);
|
||||
extern void EnemyEvolution(Entity *);
|
||||
extern void sub_807E5AC(void);
|
||||
extern void TryActivateArtificialWeatherAbilities(void);
|
||||
extern void nullsub_16(void);
|
||||
extern void sub_80521D0(void);
|
||||
extern void sub_8068A84(Pokemon *pokemon);
|
||||
|
|
|
|||
|
|
@ -52,10 +52,9 @@
|
|||
.include "src/code_8066D04.o"
|
||||
.include "src/dungeon_8067A80.o"
|
||||
.include "src/dungeon_logic.o"
|
||||
.include "src/code_80718D8.o"
|
||||
.include "src/dungeon_leveling.o"
|
||||
.include "src/dungeon_8072CF4.o"
|
||||
.include "src/dungeon_ai_items.o"
|
||||
.include "src/code_8073CF0.o"
|
||||
.include "src/code_8075708.o"
|
||||
.space 4
|
||||
.include "src/dungeon_ai_attack.o"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user