mirror of
https://github.com/pret/pmd-red.git
synced 2026-04-26 00:15:48 -05:00
Create constant files for dungeon exit reasons and residual damage types, label some magic numbers, misc fixes
This commit is contained in:
parent
333be4720d
commit
675aea42d9
72
include/constants/dungeon_exit.h
Normal file
72
include/constants/dungeon_exit.h
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
#ifndef GUARD_CONSTANTS_DUNGEON_EXIT_H
|
||||
#define GUARD_CONSTANTS_DUNGEON_EXIT_H
|
||||
|
||||
// constants start at this value
|
||||
#define DUNGEON_EXIT_REASON_START 500
|
||||
|
||||
// reasons after this value are considered successful exits
|
||||
#define DUNGEON_EXIT_REASON_SUCCESS 550
|
||||
|
||||
enum DungeonExitReason
|
||||
{
|
||||
DUNGEON_EXIT_TRANSFORMED_INTO_FRIEND = DUNGEON_EXIT_REASON_START,
|
||||
DUNGEON_EXIT_LEFT_WITHOUT_BEING_BEFRIENDED,
|
||||
DUNGEON_EXIT_FAINTED_FROM_DEBUG_ATTACK,
|
||||
DUNGEON_EXIT_MISSED_JUMP_KICK,
|
||||
DUNGEON_EXIT_MISSED_HI_JUMP_KICK,
|
||||
DUNGEON_EXIT_FAINTED_FROM_DESTINY_BOND,
|
||||
DUNGEON_EXIT_FAINTED_COVERED_IN_SLUDGE,
|
||||
DUNGEON_EXIT_UNUSED_507,
|
||||
DUNGEON_EXIT_UNUSED_508,
|
||||
DUNGEON_EXIT_FAINTED_FROM_RECOIL,
|
||||
DUNGEON_EXIT_FAINTED_FROM_DAMAGE_BOUNCING,
|
||||
DUNGEON_EXIT_DEFEATED_PENT_UP_ENERGY,
|
||||
DUNGEON_EXIT_UNUSED_512,
|
||||
DUNGEON_EXIT_UNUSED_513,
|
||||
DUNGEON_EXIT_UNUSED_514,
|
||||
DUNGEON_EXIT_UNUSED_515,
|
||||
DUNGEON_EXIT_UNUSED_516,
|
||||
DUNGEON_EXIT_UNUSED_517,
|
||||
DUNGEON_EXIT_FAINTED_FROM_SPIKES,
|
||||
DUNGEON_EXIT_DEBUG_DAMAGE,
|
||||
DUNGEON_EXIT_FAINTED_FROM_BURN,
|
||||
DUNGEON_EXIT_FAINTED_FROM_CONSTRICTION,
|
||||
DUNGEON_EXIT_FAINTED_FROM_POISON,
|
||||
DUNGEON_EXIT_FAINTED_FROM_WRAP,
|
||||
DUNGEON_EXIT_FELLED_BY_CURSE,
|
||||
DUNGEON_EXIT_DRAINED_BY_LEECH_SEED,
|
||||
DUNGEON_EXIT_FAINTED_FROM_PERISH_SONG,
|
||||
DUNGEON_EXIT_FAINTED_WHILE_IN_NIGHTMARE,
|
||||
DUNGEON_EXIT_FELLED_BY_THROWN_ROCK,
|
||||
DUNGEON_EXIT_FAINTED_FROM_HUNGER,
|
||||
DUNGEON_EXIT_DISAPPEARED_IN_EXPLOSION,
|
||||
DUNGEON_EXIT_TRIPPED_CHESTNUT_TRAP,
|
||||
DUNGEON_EXIT_FAINTED_DUE_TO_TRAP,
|
||||
DUNGEON_EXIT_FELL_INTO_PITFALL,
|
||||
DUNGEON_EXIT_DEFEATED_BLAST_SEED,
|
||||
DUNGEON_EXIT_FELLED_BY_THROWN_ITEM,
|
||||
DUNGEON_EXIT_TRANSFORMED_INTO_ITEM,
|
||||
DUNGEON_EXIT_FAINTED_FROM_BEING_KNOCKED,
|
||||
DUNGEON_EXIT_FELLED_BY_POKEMON_FLYING,
|
||||
DUNGEON_EXIT_GAVE_UP_EXPLORATION,
|
||||
DUNGEON_EXIT_DELETED_FOR_EVENT,
|
||||
DUNGEON_EXIT_WENT_AWAY,
|
||||
DUNGEON_EXIT_BLOWN_OUT_UNSEEN_FORCE,
|
||||
DUNGEON_EXIT_RETURNED_WITH_FALLEN_PARTNER,
|
||||
DUNGEON_EXIT_FAINTED_DUE_TO_WEATHER,
|
||||
DUNGEON_EXIT_WAS_POSSESSED,
|
||||
DUNGEON_EXIT_FAILED_TO_PROTECT_CLIENT,
|
||||
DUNGEON_EXIT_FAINTED_FROM_WONDER_ORB,
|
||||
DUNGEON_EXIT_FAINTED_FROM_ITEM,
|
||||
DUNGEON_EXIT_UNUSED_549,
|
||||
|
||||
DUNGEON_EXIT_ESCAPED_MIDDLE_OF_EXPLORATION = DUNGEON_EXIT_REASON_SUCCESS,
|
||||
DUNGEON_EXIT_CLEARED_DUNGEON,
|
||||
DUNGEON_EXIT_SUCCEEDED_IN_RESCUE_MISSION,
|
||||
DUNGEON_EXIT_IMPRESSIVELY_COMPLETED_MISSION,
|
||||
DUNGEON_EXIT_BEFRIENDED_MEW,
|
||||
};
|
||||
|
||||
#define NUM_DUNGEON_EXIT_REASONS 55
|
||||
|
||||
#endif
|
||||
31
include/constants/residual_damage.h
Normal file
31
include/constants/residual_damage.h
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#ifndef GUARD_CONSTANTS_RESIDUAL_DAMAGE_H
|
||||
#define GUARD_CONSTANTS_RESIDUAL_DAMAGE_H
|
||||
|
||||
enum ResidualDamageType
|
||||
{
|
||||
RESIDUAL_DAMAGE_REGULAR,
|
||||
RESIDUAL_DAMAGE_BURN,
|
||||
RESIDUAL_DAMAGE_CONSTRICT,
|
||||
RESIDUAL_DAMAGE_POISON,
|
||||
RESIDUAL_DAMAGE_UNUSED_4,
|
||||
RESIDUAL_DAMAGE_WRAP,
|
||||
RESIDUAL_DAMAGE_COUNTERATTACK,
|
||||
RESIDUAL_DAMAGE_CURSE,
|
||||
RESIDUAL_DAMAGE_NIGHTMARE,
|
||||
RESIDUAL_DAMAGE_LEECH_SEED,
|
||||
RESIDUAL_DAMAGE_SPIKES,
|
||||
RESIDUAL_DAMAGE_PERISH_SONG,
|
||||
RESIDUAL_DAMAGE_DESTINY_BOND,
|
||||
RESIDUAL_DAMAGE_LIQUID_OOZE,
|
||||
RESIDUAL_DAMAGE_HUNGER,
|
||||
RESIDUAL_DAMAGE_CHESTNUT_TRAP,
|
||||
RESIDUAL_DAMAGE_UNUSED_16,
|
||||
RESIDUAL_DAMAGE_PITFALL,
|
||||
RESIDUAL_DAMAGE_BAD_WEATHER,
|
||||
RESIDUAL_DAMAGE_MOVE_FAIL,
|
||||
RESIDUAL_DAMAGE_RECOIL,
|
||||
|
||||
NUM_RESIDUAL_DAMAGE_TYPES
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
@ -4,7 +4,7 @@
|
|||
#include "structs/dungeon_entity.h"
|
||||
|
||||
void sub_8083AB0(s16 dungeonExitReason, Entity *target, Entity *entity);
|
||||
bool8 sub_8083C24(void);
|
||||
bool8 IsUnsuccessfulDungeonExit(void);
|
||||
bool8 sub_8083C50(void);
|
||||
bool8 sub_8083C88(u8 param_1);
|
||||
|
||||
|
|
|
|||
|
|
@ -245,28 +245,6 @@ extern const struct CastformWeatherData gCastformByWeather[WEATHER_COUNT];
|
|||
extern const s16 gTypeEffectivenessChart[NUM_TYPES][NUM_TYPES];
|
||||
extern const s32 gEffectivenessChart[NUM_EFFECTIVENESS][NUM_EFFECTIVENESS];
|
||||
|
||||
#define RESIDUAL_DAMAGE_REGULAR 0
|
||||
#define RESIDUAL_DAMAGE_BURN 1
|
||||
#define RESIDUAL_DAMAGE_CONSTRICT 2
|
||||
#define RESIDUAL_DAMAGE_POISON 3
|
||||
#define RESIDUAL_DAMAGE_UNUSED_4 4
|
||||
#define RESIDUAL_DAMAGE_WRAP 5
|
||||
#define RESIDUAL_DAMAGE_COUNTERATTACK 6
|
||||
#define RESIDUAL_DAMAGE_CURSE 7
|
||||
#define RESIDUAL_DAMAGE_NIGHTMARE 8
|
||||
#define RESIDUAL_DAMAGE_LEECH_SEED 9
|
||||
#define RESIDUAL_DAMAGE_SPIKES 10
|
||||
#define RESIDUAL_DAMAGE_PERISH_SONG 11
|
||||
#define RESIDUAL_DAMAGE_DESTINY_BOND 12
|
||||
#define RESIDUAL_DAMAGE_LIQUID_OOZE 13
|
||||
#define RESIDUAL_DAMAGE_HUNGER 14
|
||||
#define RESIDUAL_DAMAGE_CHESTNUT_TRAP 15
|
||||
#define RESIDUAL_DAMAGE_UNUSED_16 16
|
||||
#define RESIDUAL_DAMAGE_PITFALL 17
|
||||
#define RESIDUAL_DAMAGE_BAD_WEATHER 18
|
||||
#define RESIDUAL_DAMAGE_MOVE_FAIL 19
|
||||
#define RESIDUAL_DAMAGE_RECOIL 20
|
||||
|
||||
#define BELLY_GO_DOWN_VALUES_COUNT 20
|
||||
extern const s48_16 gBellyGoDownValues[BELLY_GO_DOWN_VALUES_COUNT];
|
||||
|
||||
|
|
@ -274,6 +252,8 @@ extern const s48_16 gBellyGoDownValues[BELLY_GO_DOWN_VALUES_COUNT];
|
|||
#define EMPTY_BELLY_ALERT_HURRY_EAT_SOMETHING 2
|
||||
#define EMPTY_BELLY_ALERT_YOULL_FAINT 3
|
||||
|
||||
#define MAX_EMPTY_BELLY_ALERT_STEPS 10
|
||||
|
||||
#define WARP_SCARF_ACTIVATION_CHANCES_COUNT 20
|
||||
extern const s16 gWarpScarfActivationChances[WARP_SCARF_ACTIVATION_CHANCES_COUNT];
|
||||
|
||||
|
|
|
|||
|
|
@ -22,62 +22,6 @@ struct unkStruct_8069D4C
|
|||
HiddenPower hiddenPower;
|
||||
};
|
||||
|
||||
#define DUNGEON_EXIT_TRANSFORMED_INTO_FRIEND 0x1f4
|
||||
#define DUNGEON_EXIT_LEFT_WITHOUT_BEING_BEFRIENDED 0x1f5
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_DEBUG_ATTACK 0x1f6
|
||||
#define DUNGEON_EXIT_MISSED_JUMP_KICK 0x1f7
|
||||
#define DUNGEON_EXIT_MISSED_HI_JUMP_KICK 0x1f8
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_DESTINY_BOND 0x1f9
|
||||
#define DUNGEON_EXIT_FAINTED_COVERED_IN_SLUDGE 0x1fa
|
||||
#define DUNGEON_EXIT_UNUSED_507 0x1fb
|
||||
#define DUNGEON_EXIT_UNUSED_508 0x1fc
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_RECOIL 0x1fd
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_DAMAGE_BOUNCING 0x1fe
|
||||
#define DUNGEON_EXIT_DEFEATED_PENT_UP_ENERGY 0x1ff
|
||||
#define DUNGEON_EXIT_UNUSED_512 0x200
|
||||
#define DUNGEON_EXIT_UNUSED_513 0x201
|
||||
#define DUNGEON_EXIT_UNUSED_514 0x202
|
||||
#define DUNGEON_EXIT_UNUSED_515 0x203
|
||||
#define DUNGEON_EXIT_UNUSED_516 0x204
|
||||
#define DUNGEON_EXIT_UNUSED_517 0x205
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_SPIKES 0x206
|
||||
#define DUNGEON_EXIT_DEBUG_DAMAGE 0x207
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_BURN 0x208
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_CONSTRICTION 0x209
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_POISON 0x20a
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_WRAP 0x20b
|
||||
#define DUNGEON_EXIT_FELLED_BY_CURSE 0x20c
|
||||
#define DUNGEON_EXIT_DRAINED_BY_LEECH_SEED 0x20d
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_PERISH_SONG 0x20e
|
||||
#define DUNGEON_EXIT_FAINTED_WHILE_IN_NIGHTMARE 0x20f
|
||||
#define DUNGEON_EXIT_FELLED_BY_THROWN_ROCK 0x210
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_HUNGER 0x211
|
||||
#define DUNGEON_EXIT_DISAPPEARED_IN_EXPLOSION 0x212
|
||||
#define DUNGEON_EXIT_TRIPPED_CHESTNUT_TRAP 0x213
|
||||
#define DUNGEON_EXIT_FAINTED_DUE_TO_TRAP 0x214
|
||||
#define DUNGEON_EXIT_FELL_INTO_PITFALL 0x215
|
||||
#define DUNGEON_EXIT_DEFEATED_BLAST_SEED 0x216
|
||||
#define DUNGEON_EXIT_FELLED_BY_THROWN_ITEM 0x217
|
||||
#define DUNGEON_EXIT_TRANSFORMED_INTO_ITEM 0x218
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_BEING_KNOCKED 0x219
|
||||
#define DUNGEON_EXIT_FELLED_BY_POKEMON_FLYING 0x21a
|
||||
#define DUNGEON_EXIT_GAVE_UP_EXPLORATION 0x21b
|
||||
#define DUNGEON_EXIT_DELETED_FOR_EVENT 0x21c
|
||||
#define DUNGEON_EXIT_WENT_AWAY 0x21d
|
||||
#define DUNGEON_EXIT_BLOWN_OUT_UNSEEN_FORCE 0x21e
|
||||
#define DUNGEON_EXIT_RETURNED_WITH_FALLEN_PARTNER 0x21f
|
||||
#define DUNGEON_EXIT_FAINTED_DUE_TO_WEATHER 0x220
|
||||
#define DUNGEON_EXIT_WAS_POSSESSED 0x221
|
||||
#define DUNGEON_EXIT_FAILED_TO_PROTECT_CLIENT 0x222
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_WONDER_ORB 0x223
|
||||
#define DUNGEON_EXIT_FAINTED_FROM_ITEM 0x224
|
||||
#define DUNGEON_EXIT_UNK 0x225
|
||||
#define DUNGEON_EXIT_ESCAPED_MIDDLE_OF_EXPLORATION 0x226
|
||||
#define DUNGEON_EXIT_CLEARED_DUNGEON 0x227
|
||||
#define DUNGEON_EXIT_SUCCEEDED_IN_RESCUE_MISSION 0x228
|
||||
#define DUNGEON_EXIT_IMPRESSIVELY_COMPLETED_MISSION 0x229
|
||||
#define DUNGEON_EXIT_BEFRIENDED_MEW 0x22a
|
||||
|
||||
void OpenDungeonPaletteFile(void);
|
||||
void CloseDungeonPaletteFile(void);
|
||||
void LoadDungeonPokemonSprites(void);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
#include "structs/str_dungeon.h"
|
||||
|
||||
void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, UnkDungeonGlobal_unk1CE98_sub *param_3);
|
||||
void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, DungeonExitSummary *param_3);
|
||||
s16 GetDungeonExitReasonFromMoveOrItemID(u16 moveID, u8 id);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#define GUARD_DUNGEON_STRINGS_H
|
||||
|
||||
#include "structs/str_item_text.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/trap.h"
|
||||
#include "constants/weather.h"
|
||||
|
||||
|
|
@ -134,7 +135,7 @@ extern const u8 *const gUnknown_80F970C;
|
|||
extern const u8 *const gUnknown_80F9728;
|
||||
extern const u8 *const gUnknown_80F9740;
|
||||
extern const u8 *const gUnknown_80F9760;
|
||||
extern const u8 *const gUnknown_80F9764[];
|
||||
extern const u8 *const gResidualDamageMessages[NUM_RESIDUAL_DAMAGE_TYPES];
|
||||
extern const u8 *const gWeatherNames[WEATHER_COUNT];
|
||||
extern const u8 *const gUnknown_80F9ACC;
|
||||
extern const u8 *const gUnknown_80F9AEC;
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
#include "constants/type.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/iq_skill.h"
|
||||
#include "constants/tactic.h"
|
||||
#include "constants/friend_area.h"
|
||||
|
|
@ -77,7 +78,7 @@ extern const u8 *const gIQSkillNames[NUM_IQ_SKILLS];
|
|||
extern const u8 *const gIQSkillDescriptions[NUM_IQ_SKILLS];
|
||||
extern const u8 *const gTacticsNames[NUM_TACTICS];
|
||||
extern const u8 *const gTacticsDescriptions[NUM_TACTICS + 12];
|
||||
extern const struct unkStruct_8113080 gSpecialDeathTexts[55];
|
||||
extern const struct unkStruct_8113080 gDungeonExitReasonTexts[NUM_DUNGEON_EXIT_REASONS];
|
||||
extern const u8 *const gText_DeathToMove;
|
||||
extern const u8 *const gText_AlignPlaceX;
|
||||
extern const u8 *const gText_Pokemon1WasDefeatedBy;
|
||||
|
|
|
|||
|
|
@ -35,11 +35,11 @@ typedef struct Weather // 0xE264
|
|||
} Weather;
|
||||
|
||||
// size: 0x30
|
||||
typedef struct UnkDungeonGlobal_unk1CE98_sub
|
||||
typedef struct DungeonExitSummary
|
||||
{
|
||||
/* 0x0 */ u8 buffer1[10];
|
||||
/* 0xA */ u8 buffer2[10];
|
||||
/* 0x14 */ s16 moveID;
|
||||
/* 0x14 */ s16 exitReason; // which move knocked out player, or reason to exit dungeon
|
||||
/* 0x16 */ u8 fill16[0x2];
|
||||
/* 0x18 */ DungeonLocation dungeonLocation;
|
||||
/* 0x1C */ Item heldItem;
|
||||
|
|
@ -55,7 +55,7 @@ typedef struct UnkDungeonGlobal_unk1CE98_sub
|
|||
/* 0x2D */ u8 defBoost;
|
||||
/* 0x2E */ u8 spDefBoost;
|
||||
u8 unk2F; // speedBoost?
|
||||
} UnkDungeonGlobal_unk1CE98_sub;
|
||||
} DungeonExitSummary;
|
||||
|
||||
// size: 0x10
|
||||
typedef struct DungeonMusicPlayer
|
||||
|
|
@ -482,7 +482,7 @@ typedef struct Dungeon
|
|||
/* 0x1C590 */ ItemSpawns itemSpawns[ITEM_SPAWN_TYPES_COUNT];
|
||||
/* 0x1CD70 */ u16 trapSpawnChances[NUM_TRAPS];
|
||||
SpawnPokemonData fileMonsterSpawns[MONSTER_SPAWNS_ARR_COUNT]; // Taken directly from "mapparam" which corresponds to available monsters on given dungeon's floor.
|
||||
UnkDungeonGlobal_unk1CE98_sub unk1CE98; // TODO: not sure how large this is
|
||||
DungeonExitSummary exitSummary; // TODO: not sure how large this is
|
||||
u8 unk1CEC8;
|
||||
/* 0x1CECC */ DungeonMusicPlayer musPlayer;
|
||||
} Dungeon;
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@
|
|||
#include "globaldata.h"
|
||||
#include "blow_away.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_message.h"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/item.h"
|
||||
#include "constants/move_id.h"
|
||||
#include "dungeon_vram.h"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/type.h"
|
||||
#include "structs/str_pokemon.h"
|
||||
#include "dungeon_main.h"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "dungeon_8083AB0.h"
|
||||
#include "dungeon_info.h"
|
||||
#include "dungeon_util.h"
|
||||
|
|
@ -18,11 +19,11 @@ void sub_8083AB0(s16 dungeonExitReason_, Entity *target, Entity *entity)
|
|||
EntityInfo * targetEntityInfo;
|
||||
u8 *spAttPtr;
|
||||
u8 buffer [0x14];
|
||||
UnkDungeonGlobal_unk1CE98_sub *temp;
|
||||
DungeonExitSummary *exitSummary;
|
||||
u8 *id;
|
||||
s32 dungeonExitReason = dungeonExitReason_;
|
||||
|
||||
temp = &gDungeon->unk1CE98;
|
||||
exitSummary = &gDungeon->exitSummary;
|
||||
targetEntityInfo = NULL;
|
||||
if ((EntityIsValid(target)) && (GetEntityType(target) == ENTITY_MONSTER)) {
|
||||
targetEntityInfo = GetEntInfo(target);
|
||||
|
|
@ -30,30 +31,30 @@ void sub_8083AB0(s16 dungeonExitReason_, Entity *target, Entity *entity)
|
|||
entityInfo = GetEntInfo(entity);
|
||||
if (targetEntityInfo != NULL) {
|
||||
sub_80709C8(buffer, targetEntityInfo);
|
||||
CopyStringtoBuffer(temp->buffer1, buffer);
|
||||
CopyStringtoBuffer(exitSummary->buffer1, buffer);
|
||||
}
|
||||
else {
|
||||
CopyStringtoBuffer(temp->buffer1, gUnknown_80FE6F4); // Someone
|
||||
CopyStringtoBuffer(exitSummary->buffer1, gUnknown_80FE6F4); // Someone
|
||||
}
|
||||
sub_80709C8(buffer,entityInfo);
|
||||
CopyStringtoBuffer(temp->buffer2, buffer);
|
||||
temp->moveID = dungeonExitReason;
|
||||
temp->heldItem = entityInfo->heldItem;
|
||||
temp->exp = entityInfo->exp;
|
||||
temp->level = entityInfo->level;
|
||||
temp->maxHPStat = entityInfo->maxHPStat;
|
||||
temp->atk = entityInfo->atk[0];
|
||||
temp->spAtk = entityInfo->atk[1];
|
||||
temp->def = entityInfo->def[0];
|
||||
temp->spDef = entityInfo->def[1];
|
||||
temp->dungeonLocation = gDungeon->unk644.dungeonLocation;
|
||||
attackPtr = &temp->attBoost;
|
||||
CopyStringtoBuffer(exitSummary->buffer2, buffer);
|
||||
exitSummary->exitReason = dungeonExitReason;
|
||||
exitSummary->heldItem = entityInfo->heldItem;
|
||||
exitSummary->exp = entityInfo->exp;
|
||||
exitSummary->level = entityInfo->level;
|
||||
exitSummary->maxHPStat = entityInfo->maxHPStat;
|
||||
exitSummary->atk = entityInfo->atk[0];
|
||||
exitSummary->spAtk = entityInfo->atk[1];
|
||||
exitSummary->def = entityInfo->def[0];
|
||||
exitSummary->spDef = entityInfo->def[1];
|
||||
exitSummary->dungeonLocation = gDungeon->unk644.dungeonLocation;
|
||||
attackPtr = &exitSummary->attBoost;
|
||||
*attackPtr = 0;
|
||||
spAttPtr = &temp->spAttBoost;
|
||||
spAttPtr = &exitSummary->spAttBoost;
|
||||
*spAttPtr = 0;
|
||||
defPtr = &temp->defBoost;
|
||||
defPtr = &exitSummary->defBoost;
|
||||
*defPtr = 0;
|
||||
spDefPtr = &temp->spDefBoost;
|
||||
spDefPtr = &exitSummary->spDefBoost;
|
||||
*spDefPtr = 0;
|
||||
if ((entityInfo->heldItem.flags & ITEM_FLAG_EXISTS) && !(entityInfo->heldItem.flags & ITEM_FLAG_STICKY)) {
|
||||
id = &entityInfo->heldItem.id;
|
||||
|
|
@ -78,11 +79,11 @@ void sub_8083AB0(s16 dungeonExitReason_, Entity *target, Entity *entity)
|
|||
}
|
||||
}
|
||||
|
||||
bool8 sub_8083C24(void)
|
||||
bool8 IsUnsuccessfulDungeonExit(void)
|
||||
{
|
||||
UnkDungeonGlobal_unk1CE98_sub *temp = &gDungeon->unk1CE98;
|
||||
DungeonExitSummary *exitSummary = &gDungeon->exitSummary;
|
||||
|
||||
if (temp->moveID < 0x226)
|
||||
if (exitSummary->exitReason < DUNGEON_EXIT_REASON_SUCCESS)
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
|
|
@ -90,9 +91,11 @@ bool8 sub_8083C24(void)
|
|||
|
||||
bool8 sub_8083C50(void)
|
||||
{
|
||||
UnkDungeonGlobal_unk1CE98_sub *temp = &gDungeon->unk1CE98;
|
||||
DungeonExitSummary *exitSummary = &gDungeon->exitSummary;
|
||||
|
||||
if (temp->moveID == 0x227 || temp->moveID == 0x22A || temp->moveID == 0x228)
|
||||
if (exitSummary->exitReason == DUNGEON_EXIT_CLEARED_DUNGEON
|
||||
|| exitSummary->exitReason == DUNGEON_EXIT_BEFRIENDED_MEW
|
||||
|| exitSummary->exitReason == DUNGEON_EXIT_SUCCEEDED_IN_RESCUE_MISSION)
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
|
|
@ -100,10 +103,10 @@ bool8 sub_8083C50(void)
|
|||
|
||||
bool8 sub_8083C88(u8 param_1)
|
||||
{
|
||||
UnkDungeonGlobal_unk1CE98_sub *temp = &gDungeon->unk1CE98;
|
||||
DungeonExitSummary *exitSummary = &gDungeon->exitSummary;
|
||||
|
||||
if ((!HasCheckpoint(gDungeon->unk644.dungeonLocation.id) && (gDungeon->unk644.unk18 != 0 || param_1 != 0))
|
||||
|| temp->moveID != 0x227) {
|
||||
|| exitSummary->exitReason != DUNGEON_EXIT_CLEARED_DUNGEON) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,13 +37,13 @@ void ShowDungeonClearedWindow(void)
|
|||
header.f3 = 0;
|
||||
windows.id[0].pos.y = 20;
|
||||
DungeonShowWindows(&windows, TRUE);
|
||||
if (gDungeon->unk1CE98.moveID > 549) {
|
||||
if (gDungeon->exitSummary.exitReason > 549) {
|
||||
PlayDungeonCompleteBGM();
|
||||
}
|
||||
else {
|
||||
PlayDungeonFailBGM();
|
||||
}
|
||||
PrintOnDungeonFinishedWindow(0, gText_TheLastOuting,&gDungeon->unk1CE98);
|
||||
PrintOnDungeonFinishedWindow(0, gText_TheLastOuting,&gDungeon->exitSummary);
|
||||
while(1) {
|
||||
sub_803E668(0x36);
|
||||
UpdateDungeonMusic();
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
#include "constants/dungeon.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "structs/sprite_oam.h"
|
||||
#include "dungeon_cutscenes.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "constants/bg_music.h"
|
||||
#include "constants/direction.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/friend_area.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -8,8 +8,10 @@
|
|||
#include "pokemon_types.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "string_format.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/move_id.h"
|
||||
#include "constants/monster.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/type.h"
|
||||
#include "constants/iq_skill.h"
|
||||
|
|
@ -366,7 +368,7 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
|
|||
const u8 *str;
|
||||
|
||||
gFormatArgs[0] = dmgStruct->dmg;
|
||||
str = gUnknown_80F9764[dmgStruct->residualDmgType];
|
||||
str = gResidualDamageMessages[dmgStruct->residualDmgType];
|
||||
|
||||
ASM_MATCH_TRICK(dmgStruct);
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,8 @@
|
|||
#include "dungeon_random.h"
|
||||
#include "constants/dungeon_action.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/iq_skill.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/type.h"
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@
|
|||
#include "pokemon.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
|
||||
extern void sub_8042A34(DungeonPos *r0);
|
||||
extern void sub_804178C(u32);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "code_803D110.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_tilemap.h"
|
||||
#include "dungeon_action.h"
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
#include "constants/friend_area.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/iq_skill.h"
|
||||
#include "constants/type.h"
|
||||
#include "constants/weather.h"
|
||||
|
|
|
|||
|
|
@ -394,7 +394,7 @@ bool8 TryUseChosenMove(struct Entity *attacker, u32 r6, s32 itemId, u32 var_30,
|
|||
gUnknown_202F21A = 0;
|
||||
gUnknown_202F21C = 0;
|
||||
gUnknown_202F220 = 0;
|
||||
if (isLinkedMove && GetEntInfo(attacker)->usedLinkedMovesCounter <= 3) {
|
||||
if (isLinkedMove && GetEntInfo(attacker)->usedLinkedMovesCounter < MAX_MON_MOVES) {
|
||||
GetEntInfo(attacker)->usedLinkedMovesCounter++;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#include "globaldata.h"
|
||||
#include "dungeon_misc.h"
|
||||
#include "dungeon_run_end.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
#include "data_serializer.h"
|
||||
#include "dungeon_info.h"
|
||||
|
|
@ -21,30 +22,30 @@ static void WriteDeathText(s16 moveID, u8 *buffer)
|
|||
s32 moveID_s32 = moveID;
|
||||
Move move;
|
||||
|
||||
if (moveID_s32 < 0x1F4) {
|
||||
if (moveID_s32 < DUNGEON_EXIT_REASON_START) {
|
||||
// Needed this cast/variable to match
|
||||
moveID_u16 = moveID_s32;
|
||||
InitPokemonMoveOrNullObject(&move, moveID_u16);
|
||||
BufferMoveName(gFormatBuffer_Items[0], &move, NULL);
|
||||
FormatString(gText_DeathToMove, buffer, buffer + TEXT_BUFFER_LEN, 0); // $m0's $i0
|
||||
} else {
|
||||
strncpy(buffer, gSpecialDeathTexts[moveID - 0x1F4].text, TEXT_BUFFER_LEN);
|
||||
strncpy(buffer, gDungeonExitReasonTexts[moveID - DUNGEON_EXIT_REASON_START].text, TEXT_BUFFER_LEN);
|
||||
}
|
||||
}
|
||||
|
||||
static bool8 WasDefeatedByMove(s16 moveID)
|
||||
{
|
||||
if(moveID < 0x1F4)
|
||||
if (moveID < DUNGEON_EXIT_REASON_START)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
return gSpecialDeathTexts[moveID - 0x1F4].unk0;
|
||||
return gDungeonExitReasonTexts[moveID - DUNGEON_EXIT_REASON_START].unk0;
|
||||
}
|
||||
}
|
||||
|
||||
void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, UnkDungeonGlobal_unk1CE98_sub *param_3)
|
||||
void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, DungeonExitSummary *exitSummary)
|
||||
{
|
||||
u8 buffer[TEXT_BUFFER_LEN];
|
||||
s32 x, y;
|
||||
|
|
@ -52,12 +53,12 @@ void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, UnkDungeon
|
|||
|
||||
sub_80073B8(windowId);
|
||||
PrintFormattedStringOnWindow(16,0,headerText,windowId,0);
|
||||
PrintYellowDungeonNametoBuffer(gFormatBuffer_Monsters[0], ¶m_3->dungeonLocation);
|
||||
PrintYellowDungeonNametoBuffer(gFormatBuffer_Monsters[0], &exitSummary->dungeonLocation);
|
||||
PrintFormattedStringOnWindow(4,16,gText_AlignPlaceX,windowId,0); // #+Place: $m0
|
||||
y = 26;
|
||||
StrncpyCustom(gFormatBuffer_Monsters[0], param_3->buffer1, POKEMON_NAME_LENGTH);
|
||||
StrncpyCustom(gFormatBuffer_Monsters[1], param_3->buffer2, POKEMON_NAME_LENGTH);
|
||||
if (WasDefeatedByMove(param_3->moveID) != 0) {
|
||||
StrncpyCustom(gFormatBuffer_Monsters[0], exitSummary->buffer1, POKEMON_NAME_LENGTH);
|
||||
StrncpyCustom(gFormatBuffer_Monsters[1], exitSummary->buffer2, POKEMON_NAME_LENGTH);
|
||||
if (WasDefeatedByMove(exitSummary->exitReason) != 0) {
|
||||
// $m1 was defeated by
|
||||
FormatString(gText_Pokemon1WasDefeatedBy,buffer, buffer + sizeof(buffer),0);
|
||||
}
|
||||
|
|
@ -70,14 +71,14 @@ void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, UnkDungeon
|
|||
PrintFormattedStringOnWindow(x,y,buffer,windowId,0);
|
||||
|
||||
y += 10;
|
||||
WriteDeathText(param_3->moveID, buffer);
|
||||
WriteDeathText(exitSummary->exitReason, buffer);
|
||||
|
||||
x = (176 - GetStringLineWidth(buffer)) / 2;
|
||||
PrintFormattedStringOnWindow(x,y,buffer,windowId,0);
|
||||
|
||||
y += 16;
|
||||
gFormatArgs[0] = param_3->exp;
|
||||
gFormatArgs[1] = param_3->level;
|
||||
gFormatArgs[0] = exitSummary->exp;
|
||||
gFormatArgs[1] = exitSummary->level;
|
||||
if (gFormatArgs[1] >= 100) {
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_81138C0,windowId,0);
|
||||
}
|
||||
|
|
@ -85,45 +86,45 @@ void PrintOnDungeonFinishedWindow(u32 windowId, const u8 *headerText, UnkDungeon
|
|||
PrintFormattedStringOnWindow(4,y,gUnknown_8113898,windowId,0);
|
||||
}
|
||||
y += 10;
|
||||
gFormatArgs[0] = param_3->maxHPStat;
|
||||
gFormatArgs[0] = exitSummary->maxHPStat;
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_81138D0,windowId,0);
|
||||
y += 10;
|
||||
gFormatArgs[0] = param_3->atk;
|
||||
gFormatArgs[1] = param_3->def;
|
||||
if (param_3->attBoost) {
|
||||
gFormatArgs[0] = gFormatArgs[0] + param_3->attBoost;
|
||||
gFormatArgs[0] = exitSummary->atk;
|
||||
gFormatArgs[1] = exitSummary->def;
|
||||
if (exitSummary->attBoost) {
|
||||
gFormatArgs[0] = gFormatArgs[0] + exitSummary->attBoost;
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_8113950,windowId,0);
|
||||
}
|
||||
else {
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_81138E4,windowId,0);
|
||||
}
|
||||
if (param_3->defBoost) {
|
||||
gFormatArgs[1] = gFormatArgs[1] + param_3->defBoost;
|
||||
if (exitSummary->defBoost) {
|
||||
gFormatArgs[1] = gFormatArgs[1] + exitSummary->defBoost;
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_8113974,windowId,0);
|
||||
}
|
||||
else {
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_8113900,windowId,0);
|
||||
}
|
||||
y += 10;
|
||||
gFormatArgs[0] = param_3->spAtk;
|
||||
gFormatArgs[1] = param_3->spDef;
|
||||
if (param_3->spAttBoost) {
|
||||
gFormatArgs[0] = gFormatArgs[0] + param_3->spAttBoost;
|
||||
gFormatArgs[0] = exitSummary->spAtk;
|
||||
gFormatArgs[1] = exitSummary->spDef;
|
||||
if (exitSummary->spAttBoost) {
|
||||
gFormatArgs[0] = gFormatArgs[0] + exitSummary->spAttBoost;
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_8113990,windowId,0);
|
||||
}
|
||||
else {
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_8113918,windowId,0);
|
||||
}
|
||||
if (param_3->spDefBoost) {
|
||||
gFormatArgs[1] = gFormatArgs[1] + param_3->spDefBoost;
|
||||
if (exitSummary->spDefBoost) {
|
||||
gFormatArgs[1] = gFormatArgs[1] + exitSummary->spDefBoost;
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_81139B4,windowId,0);
|
||||
}
|
||||
else {
|
||||
PrintFormattedStringOnWindow(4,y,gUnknown_8113934,windowId,0);
|
||||
}
|
||||
y += 16;
|
||||
item = &(param_3->heldItem);
|
||||
if ((param_3->heldItem.flags & ITEM_FLAG_EXISTS)) {
|
||||
item = &(exitSummary->heldItem);
|
||||
if ((exitSummary->heldItem.flags & ITEM_FLAG_EXISTS)) {
|
||||
sub_8090E14(gFormatBuffer_Items[0],item,0);
|
||||
}
|
||||
else {
|
||||
|
|
|
|||
|
|
@ -260,28 +260,29 @@ const u8 *const gUnknown_80F970C = _("{POKEMON_0} fell into the pitfall!");
|
|||
const u8 *const gUnknown_80F9728 = _("Avoided the pitfall!");
|
||||
const u8 *const gUnknown_80F9740 = _("{POKEMON_0} is famished.");
|
||||
const u8 *const gUnknown_80F9760 = _("{POKEMON_0} is already famished.");
|
||||
const u8 *const gUnknown_80F9764[] = {
|
||||
[0] = _("{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[1] = _("{POKEMON_1}'s burn inflicted\n{VALUE_0} damage!"),
|
||||
[2] = _("{POKEMON_1} was squeezed for\n{VALUE_0} damage!"),
|
||||
[3] = _("{POKEMON_1} took {VALUE_0} damage\nfrom poison!"),
|
||||
[4] = _("{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[5] = _("{POKEMON_1} was wrapped for\n{VALUE_0} damage!"),
|
||||
[6] = _("{POKEMON_1} took {VALUE_0} damage\nfrom the counterattack!"),
|
||||
[7] = _("{POKEMON_1} was cursed for\n{VALUE_0} damage!"),
|
||||
[8] = _("{POKEMON_1} awoke from its nightmare\nand took {VALUE_0} damage!"),
|
||||
[9] = _("{POKEMON_1} took {VALUE_0} damage\nfrom Leech Seed!"),
|
||||
[10] = _("{POKEMON_1} stepped on spikes for\n{VALUE_0} damage!"),
|
||||
[11] = _("{POKEMON_1} took {VALUE_0} damage\nfrom Perish Song!"),
|
||||
[12] = _("{POKEMON_1} took {VALUE_0} damage\nfrom Destiny Bond!"),
|
||||
[13] = _("{POKEMON_1} was showered with sludge\nfor {VALUE_0} damage!"),
|
||||
[14] = NULL,
|
||||
[15] = _("The Chestnut Trap hit {POKEMON_1}\nfor {VALUE_0} damage!"),
|
||||
[16] = _("The Chestnut Trap hit {POKEMON_1}\nfor {VALUE_0} damage!"),
|
||||
[17] = _("{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[18] = _("The bad weather inflicted {VALUE_0} damage\non {POKEMON_1}!"),
|
||||
[19] = _("The move failed!\n{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[20] = _("The recoil hit {POKEMON_1} for\n{VALUE_0} damage!"),
|
||||
|
||||
const u8 *const gResidualDamageMessages[NUM_RESIDUAL_DAMAGE_TYPES] = {
|
||||
[RESIDUAL_DAMAGE_REGULAR] = _("{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_BURN] = _("{POKEMON_1}'s burn inflicted\n{VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_CONSTRICT] = _("{POKEMON_1} was squeezed for\n{VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_POISON] = _("{POKEMON_1} took {VALUE_0} damage\nfrom poison!"),
|
||||
[RESIDUAL_DAMAGE_UNUSED_4] = _("{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_WRAP] = _("{POKEMON_1} was wrapped for\n{VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_COUNTERATTACK] = _("{POKEMON_1} took {VALUE_0} damage\nfrom the counterattack!"),
|
||||
[RESIDUAL_DAMAGE_CURSE] = _("{POKEMON_1} was cursed for\n{VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_NIGHTMARE] = _("{POKEMON_1} awoke from its nightmare\nand took {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_LEECH_SEED] = _("{POKEMON_1} took {VALUE_0} damage\nfrom Leech Seed!"),
|
||||
[RESIDUAL_DAMAGE_SPIKES] = _("{POKEMON_1} stepped on spikes for\n{VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_PERISH_SONG] = _("{POKEMON_1} took {VALUE_0} damage\nfrom Perish Song!"),
|
||||
[RESIDUAL_DAMAGE_DESTINY_BOND] = _("{POKEMON_1} took {VALUE_0} damage\nfrom Destiny Bond!"),
|
||||
[RESIDUAL_DAMAGE_LIQUID_OOZE] = _("{POKEMON_1} was showered with sludge\nfor {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_HUNGER] = NULL,
|
||||
[RESIDUAL_DAMAGE_CHESTNUT_TRAP] = _("The Chestnut Trap hit {POKEMON_1}\nfor {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_UNUSED_16] = _("The Chestnut Trap hit {POKEMON_1}\nfor {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_PITFALL] = _("{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_BAD_WEATHER] = _("The bad weather inflicted {VALUE_0} damage\non {POKEMON_1}!"),
|
||||
[RESIDUAL_DAMAGE_MOVE_FAIL] = _("The move failed!\n{POKEMON_1} took {VALUE_0} damage!"),
|
||||
[RESIDUAL_DAMAGE_RECOIL] = _("The recoil hit {POKEMON_1} for\n{VALUE_0} damage!"),
|
||||
};
|
||||
|
||||
const u8 *const gWeatherNames[WEATHER_COUNT] = {
|
||||
|
|
|
|||
|
|
@ -18,7 +18,9 @@
|
|||
#include "moves.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/iq_skill.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/type.h"
|
||||
|
|
@ -103,7 +105,7 @@ void ApplyEndOfTurnEffects(Entity *entity)
|
|||
|
||||
baseBellyDecrementValue.hi = 0;
|
||||
baseBellyDecrementValue.lo = 6554;
|
||||
// baseBellyDecrementValue = 0.1;
|
||||
// here baseBellyDecrementValue is 0.1
|
||||
F48_16_SMul(&modifiedBellyDecrementValue, &baseBellyDecrementValue, &gBellyGoDownValues[arrIndex]);
|
||||
if (entityInfo->usedLinkedMovesCounter > 1)
|
||||
modifiedBellyDecrementValue.lo += (gLinkedMovesBellyGoDownValues[entityInfo->usedLinkedMovesCounter] << 0x10);
|
||||
|
|
@ -128,7 +130,7 @@ void ApplyEndOfTurnEffects(Entity *entity)
|
|||
DisplayActions(NULL);
|
||||
if (!EntityIsValid(entity) || IsFloorOver())
|
||||
return;
|
||||
if (gDungeon->unk644.emptyBellyAlert < 10)
|
||||
if (gDungeon->unk644.emptyBellyAlert < MAX_EMPTY_BELLY_ALERT_STEPS)
|
||||
gDungeon->unk644.emptyBellyAlert++;
|
||||
if (gDungeon->unk644.emptyBellyAlert == EMPTY_BELLY_ALERT_YOUR_BELLYS_EMPTY)
|
||||
str = gUnknown_80FD5DC; // "Oh, no! Your Belly's empty!"
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
#include "code_804267C.h"
|
||||
#include "dungeon_message.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/type.h"
|
||||
#include "dungeon_ai.h"
|
||||
#include "dungeon_range.h"
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#include "globaldata.h"
|
||||
#include "explosion.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_vram.h"
|
||||
#include "dungeon_message.h"
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
#include "code_806CD90.h"
|
||||
#include "code_8077274_1.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/monster.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/type.h"
|
||||
#include "constants/weather.h"
|
||||
#include "dungeon_info.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@
|
|||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/targeting.h"
|
||||
#include "constants/type.h"
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@
|
|||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/targeting.h"
|
||||
#include "constants/type.h"
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/move_id.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/targeting.h"
|
||||
#include "constants/type.h"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,9 @@
|
|||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/move_id.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/targeting.h"
|
||||
#include "constants/type.h"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "dungeon_info.h"
|
||||
#include "dungeon_move_util.h"
|
||||
#include "run_dungeon.h"
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "constants/ability.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/item.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/type.h"
|
||||
#include "dungeon_items.h"
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#include "globaldata.h"
|
||||
#include "run_dungeon.h"
|
||||
#include "constants/dungeon.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/monster.h"
|
||||
#include "constants/trap.h"
|
||||
#include "structs/rgb.h"
|
||||
|
|
@ -623,7 +624,7 @@ void RunDungeon_Async(DungeonSetupStruct *setupPtr)
|
|||
ShowDungeonClearedWindow();
|
||||
}
|
||||
|
||||
if (sub_8083C24()) {
|
||||
if (IsUnsuccessfulDungeonExit()) {
|
||||
if (gDungeon->unk6 != 0) {
|
||||
setupPtr->info.unk7C = -2;
|
||||
memset(&setupPtr->info.unk84, 0, sizeof(setupPtr->info.unk84));
|
||||
|
|
|
|||
112
src/strings.c
112
src/strings.c
|
|
@ -859,62 +859,62 @@ const u8 *const gTacticsDescriptions[NUM_TACTICS + 12] = {
|
|||
[NUM_TACTICS ... NUM_TACTICS + 11] = NULL // Used for testing?
|
||||
};
|
||||
|
||||
const struct unkStruct_8113080 gSpecialDeathTexts[55] = {
|
||||
[0] = { 0, _("was transformed into a friend.")},
|
||||
[1] = { 0, _("left without being befriended.")},
|
||||
[2] = { 0, _("fainted from a debug attack.")},
|
||||
[3] = { 0, _("missed a Jump Kick and wiped out.")},
|
||||
[4] = { 0, _("missed a Hi Jump Kick and wiped out.")},
|
||||
[5] = { 0, _("fainted from the foe's Destiny Bond.")},
|
||||
[6] = { 0, _("fainted, covered in sludge.")},
|
||||
[7] = { 1, _("was defeated by a powerful move.")},
|
||||
[8] = { 1, _("was defeated by a powerful move.")},
|
||||
[9] = { 0, _("fainted from a move's recoil damage.")},
|
||||
[10] = { 0, _("fainted from damage it took bouncing.")},
|
||||
[11] = { 1, _("a foe's pent-up energy.")},
|
||||
[12] = { 1, _("was defeated by a powerful move.")},
|
||||
[13] = { 1, _("was defeated by a powerful move.")},
|
||||
[14] = { 1, _("was defeated by a powerful move.")},
|
||||
[15] = { 1, _("was defeated by a powerful move.")},
|
||||
[16] = { 1, _("was defeated by a powerful move.")},
|
||||
[17] = { 1, _("was defeated by a powerful move.")},
|
||||
[18] = { 0, _("fainted from stepping on spikes.")},
|
||||
[19] = { 0, _("debug damage.")},
|
||||
[20] = { 0, _("fainted from a bad burn.")},
|
||||
[21] = { 0, _("fainted, unable to bear constriction.")},
|
||||
[22] = { 0, _("fainted after the poison spread.")},
|
||||
[23] = { 0, _("fainted while still being wrapped.")},
|
||||
[24] = { 0, _("was felled by a curse.")},
|
||||
[25] = { 0, _("was drained to nothing by Leech Seed.")},
|
||||
[26] = { 0, _("fainted from hearing Perish Song.")},
|
||||
[27] = { 0, _("fainted while in a nightmare.")},
|
||||
[28] = { 0, _("was felled by a thrown rock.")},
|
||||
[29] = { 0, _("fainted from hunger.")},
|
||||
[30] = { 0, _("disappeared in an explosion.")},
|
||||
[31] = { 0, _("tripped a Chestnut Trap and fainted.")},
|
||||
[32] = { 0, _("fainted due to a trap's damage.")},
|
||||
[33] = { 0, _("fell into a Pitfall Trap and fainted.")},
|
||||
[34] = { 1, _("a Blast Seed's damage.")},
|
||||
[35] = { 0, _("was felled by a thrown item.")},
|
||||
[36] = { 0, _("was transformed into an item.")},
|
||||
[37] = { 0, _("fainted from being knocked flying.")},
|
||||
[38] = { 0, _("was felled by a Pokémon sent flying.")},
|
||||
[39] = { 0, _("gave up the exploration.")},
|
||||
[40] = { 0, _("was deleted for the sake of an event.")},
|
||||
[41] = { 0, _("went away.")},
|
||||
[42] = { 0, _("was blown out by an unseen force.")},
|
||||
[43] = { 0, _("returned with the fallen partner.")},
|
||||
[44] = { 0, _("fainted due to the weather.")},
|
||||
[45] = { 0, _("was possessed.")},
|
||||
[46] = { 0, _("failed to protect the client Pokémon.")},
|
||||
[47] = { 0, _("fainted from a Wonder Orb.")},
|
||||
[48] = { 0, _("fainted from an item.")},
|
||||
[49] = { 0, _("- ")},
|
||||
[50] = { 0, _("escaped in the middle of exploration.")},
|
||||
[51] = { 0, _("cleared the dungeon.")},
|
||||
[52] = { 0, _("succeeded in the rescue mission.")},
|
||||
[53] = { 0, _("impressively completed a mission.")},
|
||||
[54] = { 0, _("befriended Mew!")},
|
||||
const struct unkStruct_8113080 gDungeonExitReasonTexts[NUM_DUNGEON_EXIT_REASONS] = {
|
||||
[DUNGEON_EXIT_TRANSFORMED_INTO_FRIEND - DUNGEON_EXIT_REASON_START] = { FALSE, _("was transformed into a friend.")},
|
||||
[DUNGEON_EXIT_LEFT_WITHOUT_BEING_BEFRIENDED - DUNGEON_EXIT_REASON_START] = { FALSE, _("left without being befriended.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_DEBUG_ATTACK - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from a debug attack.")},
|
||||
[DUNGEON_EXIT_MISSED_JUMP_KICK - DUNGEON_EXIT_REASON_START] = { FALSE, _("missed a Jump Kick and wiped out.")},
|
||||
[DUNGEON_EXIT_MISSED_HI_JUMP_KICK - DUNGEON_EXIT_REASON_START] = { FALSE, _("missed a Hi Jump Kick and wiped out.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_DESTINY_BOND - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from the foe's Destiny Bond.")},
|
||||
[DUNGEON_EXIT_FAINTED_COVERED_IN_SLUDGE - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted, covered in sludge.")},
|
||||
[DUNGEON_EXIT_UNUSED_507 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_UNUSED_508 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_RECOIL - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from a move's recoil damage.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_DAMAGE_BOUNCING - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from damage it took bouncing.")},
|
||||
[DUNGEON_EXIT_DEFEATED_PENT_UP_ENERGY - DUNGEON_EXIT_REASON_START] = { TRUE, _("a foe's pent-up energy.")},
|
||||
[DUNGEON_EXIT_UNUSED_512 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_UNUSED_513 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_UNUSED_514 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_UNUSED_515 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_UNUSED_516 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_UNUSED_517 - DUNGEON_EXIT_REASON_START] = { TRUE, _("was defeated by a powerful move.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_SPIKES - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from stepping on spikes.")},
|
||||
[DUNGEON_EXIT_DEBUG_DAMAGE - DUNGEON_EXIT_REASON_START] = { FALSE, _("debug damage.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_BURN - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from a bad burn.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_CONSTRICTION - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted, unable to bear constriction.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_POISON - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted after the poison spread.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_WRAP - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted while still being wrapped.")},
|
||||
[DUNGEON_EXIT_FELLED_BY_CURSE - DUNGEON_EXIT_REASON_START] = { FALSE, _("was felled by a curse.")},
|
||||
[DUNGEON_EXIT_DRAINED_BY_LEECH_SEED - DUNGEON_EXIT_REASON_START] = { FALSE, _("was drained to nothing by Leech Seed.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_PERISH_SONG - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from hearing Perish Song.")},
|
||||
[DUNGEON_EXIT_FAINTED_WHILE_IN_NIGHTMARE - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted while in a nightmare.")},
|
||||
[DUNGEON_EXIT_FELLED_BY_THROWN_ROCK - DUNGEON_EXIT_REASON_START] = { FALSE, _("was felled by a thrown rock.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_HUNGER - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from hunger.")},
|
||||
[DUNGEON_EXIT_DISAPPEARED_IN_EXPLOSION - DUNGEON_EXIT_REASON_START] = { FALSE, _("disappeared in an explosion.")},
|
||||
[DUNGEON_EXIT_TRIPPED_CHESTNUT_TRAP - DUNGEON_EXIT_REASON_START] = { FALSE, _("tripped a Chestnut Trap and fainted.")},
|
||||
[DUNGEON_EXIT_FAINTED_DUE_TO_TRAP - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted due to a trap's damage.")},
|
||||
[DUNGEON_EXIT_FELL_INTO_PITFALL - DUNGEON_EXIT_REASON_START] = { FALSE, _("fell into a Pitfall Trap and fainted.")},
|
||||
[DUNGEON_EXIT_DEFEATED_BLAST_SEED - DUNGEON_EXIT_REASON_START] = { TRUE, _("a Blast Seed's damage.")},
|
||||
[DUNGEON_EXIT_FELLED_BY_THROWN_ITEM - DUNGEON_EXIT_REASON_START] = { FALSE, _("was felled by a thrown item.")},
|
||||
[DUNGEON_EXIT_TRANSFORMED_INTO_ITEM - DUNGEON_EXIT_REASON_START] = { FALSE, _("was transformed into an item.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_BEING_KNOCKED - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from being knocked flying.")},
|
||||
[DUNGEON_EXIT_FELLED_BY_POKEMON_FLYING - DUNGEON_EXIT_REASON_START] = { FALSE, _("was felled by a Pokémon sent flying.")},
|
||||
[DUNGEON_EXIT_GAVE_UP_EXPLORATION - DUNGEON_EXIT_REASON_START] = { FALSE, _("gave up the exploration.")},
|
||||
[DUNGEON_EXIT_DELETED_FOR_EVENT - DUNGEON_EXIT_REASON_START] = { FALSE, _("was deleted for the sake of an event.")},
|
||||
[DUNGEON_EXIT_WENT_AWAY - DUNGEON_EXIT_REASON_START] = { FALSE, _("went away.")},
|
||||
[DUNGEON_EXIT_BLOWN_OUT_UNSEEN_FORCE - DUNGEON_EXIT_REASON_START] = { FALSE, _("was blown out by an unseen force.")},
|
||||
[DUNGEON_EXIT_RETURNED_WITH_FALLEN_PARTNER - DUNGEON_EXIT_REASON_START] = { FALSE, _("returned with the fallen partner.")},
|
||||
[DUNGEON_EXIT_FAINTED_DUE_TO_WEATHER - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted due to the weather.")},
|
||||
[DUNGEON_EXIT_WAS_POSSESSED - DUNGEON_EXIT_REASON_START] = { FALSE, _("was possessed.")},
|
||||
[DUNGEON_EXIT_FAILED_TO_PROTECT_CLIENT - DUNGEON_EXIT_REASON_START] = { FALSE, _("failed to protect the client Pokémon.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_WONDER_ORB - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from a Wonder Orb.")},
|
||||
[DUNGEON_EXIT_FAINTED_FROM_ITEM - DUNGEON_EXIT_REASON_START] = { FALSE, _("fainted from an item.")},
|
||||
[DUNGEON_EXIT_UNUSED_549 - DUNGEON_EXIT_REASON_START] = { FALSE, _("- ")},
|
||||
[DUNGEON_EXIT_ESCAPED_MIDDLE_OF_EXPLORATION - DUNGEON_EXIT_REASON_START] = { FALSE, _("escaped in the middle of exploration.")},
|
||||
[DUNGEON_EXIT_CLEARED_DUNGEON - DUNGEON_EXIT_REASON_START] = { FALSE, _("cleared the dungeon.")},
|
||||
[DUNGEON_EXIT_SUCCEEDED_IN_RESCUE_MISSION - DUNGEON_EXIT_REASON_START] = { FALSE, _("succeeded in the rescue mission.")},
|
||||
[DUNGEON_EXIT_IMPRESSIVELY_COMPLETED_MISSION - DUNGEON_EXIT_REASON_START] = { FALSE, _("impressively completed a mission.")},
|
||||
[DUNGEON_EXIT_BEFRIENDED_MEW - DUNGEON_EXIT_REASON_START] = { FALSE, _("befriended Mew!")},
|
||||
};
|
||||
|
||||
const u8 *const gText_DeathToMove = _("{POKEMON_0}'s {MOVE_ITEM_0}.");
|
||||
|
|
|
|||
|
|
@ -7,6 +7,8 @@
|
|||
#include "code_8077274_1.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "code_806CD90.h"
|
||||
#include "constants/dungeon_exit.h"
|
||||
#include "constants/residual_damage.h"
|
||||
#include "constants/trap.h"
|
||||
#include "constants/type.h"
|
||||
#include "run_dungeon.h"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user