mirror of
https://github.com/pret/pmd-red.git
synced 2026-08-28 03:34:22 -05:00
dump dungeon boss dialogue
This commit is contained in:
4328
data/data_80F59C8.s
4328
data/data_80F59C8.s
File diff suppressed because it is too large
Load Diff
@@ -433,4 +433,9 @@
|
||||
#define IS_CASTFORM_FORM_MONSTER(id)((id == MONSTER_CASTFORM_SNOWY || id == MONSTER_CASTFORM_SUNNY || id == MONSTER_CASTFORM_RAINY))
|
||||
#define IS_DEOXYS_FORM_MONSTER(id)((id == MONSTER_DEOXYS_ATTACK || id == MONSTER_DEOXYS_DEFENSE || id == MONSTER_DEOXYS_SPEED))
|
||||
|
||||
// For dialogue strings
|
||||
#define DIALOGUE_MONSTER_PLAYER MONSTER_MAX + 1
|
||||
#define DIALOGUE_MONSTER_PARTNER MONSTER_MAX + 2
|
||||
#define DIALOGUE_MONSTER_NONE MONSTER_MAX + 3
|
||||
|
||||
#endif // GUARD_CONSTANTS_MONSTER_H
|
||||
|
||||
6
include/dungeon_boss_dialogue.h
Normal file
6
include/dungeon_boss_dialogue.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_DUNGEON_BOSS_DIALOGUE_H
|
||||
#define GUARD_DUNGEON_BOSS_DIALOGUE_H
|
||||
|
||||
#include "dungeon_message.h"
|
||||
|
||||
#endif // GUARD_DUNGEON_BOSS_DIALOGUE_H
|
||||
@@ -10,13 +10,19 @@ struct MonDialogueSpriteInfo
|
||||
u8 spriteId;
|
||||
};
|
||||
|
||||
// Depending on partner's pokemon species, the dialogue may be slightly different.
|
||||
#define DIALOGUE_ALLOW_ALL 0
|
||||
#define DIALOGUE_ALLOW_MOST 1 // Bulbasaur, Cyndaquil, Mudkip, Pikachu, Charmander, Treecko
|
||||
#define DIALOGUE_ONLY_SQUIRTLE_TOTODILE 7
|
||||
#define DIALOGUE_ONLY_TORCHIC_CHICORITA 280
|
||||
|
||||
struct DungeonDialogueStruct
|
||||
{
|
||||
u16 unk0;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
s16 unk4;
|
||||
s16 unk6;
|
||||
u16 type;
|
||||
u8 spriteId;
|
||||
u8 spritePlacementId; // Information on mon's portrait x/y and flip
|
||||
s16 speciesId;
|
||||
s16 allowType;
|
||||
const u8 *str;
|
||||
};
|
||||
|
||||
|
||||
857
include/dungeon_strings.h
Normal file
857
include/dungeon_strings.h
Normal file
@@ -0,0 +1,857 @@
|
||||
#ifndef GUARD_DUNGEON_STRINGS_H
|
||||
#define GUARD_DUNGEON_STRINGS_H
|
||||
|
||||
#include "structs/str_item_text.h"
|
||||
#include "constants/trap.h"
|
||||
#include "constants/weather.h"
|
||||
|
||||
struct Struct_80F7C50
|
||||
{
|
||||
const u8 *str;
|
||||
s32 val;
|
||||
};
|
||||
|
||||
struct TutorialFlagMsg
|
||||
{
|
||||
s32 flagId;
|
||||
const u8 *str;
|
||||
};
|
||||
|
||||
extern const ItemText gActions[];
|
||||
extern const struct Struct_80F7C50 gUnknown_80F7C50[];
|
||||
extern const u8 *const gUnknown_80F7F70[];
|
||||
extern const u8 *const gUnknown_80F8104[];
|
||||
extern const u8 *const gTrapDescriptions[NUM_TRAPS];
|
||||
extern const u8 *const gUnknown_80F8968;
|
||||
extern const u8 *const gUnknown_80F8974;
|
||||
extern const u8 *const gUnknown_80F8988;
|
||||
extern const u8 *const gUnknown_80F8994;
|
||||
extern const u8 *const gUnknown_80F89B4;
|
||||
extern const u8 *const gUnknown_80F89D4;
|
||||
extern const u8 *const gUnknown_80F89D8;
|
||||
extern const u8 *const gUnknown_80F89F4;
|
||||
extern const u8 *const gUnknown_80F8A0C;
|
||||
extern const u8 *const gUnknown_80F8A28;
|
||||
extern const u8 *const gUnknown_80F8A4C;
|
||||
extern const u8 *const gUnknown_80F8A6C;
|
||||
extern const u8 *const gUnknown_80F8A84;
|
||||
extern const u8 *const gUnknown_80F8AB0;
|
||||
extern const u8 *const gUnknown_80F8ADC;
|
||||
extern const u8 *const gUnknown_80F8B0C;
|
||||
extern const u8 *const gUnknown_80F8B24;
|
||||
extern const u8 *const gUnknown_80F8B40;
|
||||
extern const u8 *const gUnknown_80F8B64;
|
||||
extern const u8 *const gUnknown_80F8B68;
|
||||
extern const u8 *const gUnknown_80F8B88;
|
||||
extern const u8 *const gUnknown_80F8BB4;
|
||||
extern const u8 *const gUnknown_80F8BE0;
|
||||
extern const u8 *const gUnknown_80F8BE4;
|
||||
extern const u8 *const gItemStickyCannotMove1;
|
||||
extern const u8 *const gItemStickyCannotMove2;
|
||||
extern const u8 *const gItemStickyCannotMove3;
|
||||
extern const u8 *const gItemStickyCannotEquip;
|
||||
extern const u8 *const gMonTookAndReturnedItem;
|
||||
extern const u8 *const gUnknown_80F8CE4;
|
||||
extern const u8 *const gUnknown_80F8CE8;
|
||||
extern const u8 *const gUnknown_80F8D04;
|
||||
extern const u8 *const gUnknown_80F8D20;
|
||||
extern const u8 *const gUnknown_80F8D44;
|
||||
extern const u8 *const gUnknown_80F8D60;
|
||||
extern const u8 *const gUnknown_80F8D7C;
|
||||
extern const u8 *const gUnknown_80F8DB4;
|
||||
extern const u8 *const gUnknown_80F8DB8;
|
||||
extern const u8 *const gUnknown_80F8DE0;
|
||||
extern const u8 *const gUnknown_80F8E04;
|
||||
extern const u8 *const gUnknown_80F8E28;
|
||||
extern const u8 *const gUnknown_80F8E2C;
|
||||
extern const u8 *const gNoExchangesHere;
|
||||
extern const u8 *const gNothingCanBePutDownHere;
|
||||
extern const u8 *const gSwappedGroundItem;
|
||||
extern const u8 *const gMonThrewItem1;
|
||||
extern const u8 *const gMonThrewItem2;
|
||||
extern const u8 *const gCannotTalk;
|
||||
extern const u8 *const gCannotFarewell;
|
||||
extern const u8 *const gMonCringing;
|
||||
extern const u8 *const gMonParalyzed;
|
||||
extern const u8 *const gMonSteppedOnItem;
|
||||
extern const u8 *const gMonTerrifiedCouldntPickUpItem;
|
||||
extern const u8 *const gMonCouldntPickUpItem;
|
||||
extern const u8 *const gPickedUpItem2;
|
||||
extern const u8 *const gPickedUpItemToolbox;
|
||||
extern const u8 *const gPickedUpItem;
|
||||
extern const u8 *const gMonPickedUpItem2;
|
||||
extern const u8 *const gMonPickedUpItemToolbox;
|
||||
extern const u8 *const gMonPickedUpItem;
|
||||
extern const u8 *const gSayFarewellQ;
|
||||
extern const u8 *const gSendMonBackWithItemQ;
|
||||
extern const u8 *const gSendMonBackQ;
|
||||
extern const u8 *const gUnknown_80F9114;
|
||||
extern const u8 *const gUnknown_80F913C;
|
||||
extern const u8 *const gMonWentBack;
|
||||
extern const u8 *const gMonDisappointedAndLeft;
|
||||
extern const u8 *const gUnknown_80F9158;
|
||||
extern const u8 *const gUnknown_80F9174;
|
||||
extern const u8 *const gUnknown_80F9190;
|
||||
extern const u8 *const gUnknown_80F91A8;
|
||||
extern const u8 *const gUnknown_80F91C8;
|
||||
extern const u8 *const gUnknown_80F91E0;
|
||||
extern const u8 *const gUnknown_80F91EC;
|
||||
extern const u8 *const gTrapNames[NUM_TRAPS];
|
||||
extern const u8 *const gUnknown_80F9364;
|
||||
extern const u8 *const gUnknown_80F9380;
|
||||
extern const u8 *const gUnknown_80F9384;
|
||||
extern const u8 *const gUnknown_80F93A4;
|
||||
extern const u8 *const gUnknown_80F93C8;
|
||||
extern const u8 *const gItemFellOnGround;
|
||||
extern const u8 *const gItemFellInWater;
|
||||
extern const u8 *const gItemBuried;
|
||||
extern const u8 *const gItemLost;
|
||||
extern const u8 *const gAllItemsLost;
|
||||
extern const u8 *const gSeveralItemsLost;
|
||||
extern const u8 *const gItemFellOutOfSight;
|
||||
extern const u8 *const gUnknown_80F94C4;
|
||||
extern const u8 *const gUnknown_80F94D8;
|
||||
extern const u8 *const gUnknown_80F94F0;
|
||||
extern const u8 *const gUnknown_80F9510;
|
||||
extern const u8 *const gUnknown_80F9530;
|
||||
extern const u8 *const gPtrFrozenMessage;
|
||||
extern const u8 *const gPtrWrappedAroundMessage;
|
||||
extern const u8 *const gPtrWrappedByMessage;
|
||||
extern const u8 *const gPtrPausedMessage;
|
||||
extern const u8 *const gPtrInfatuatedMessage;
|
||||
extern const u8 *const gPtrBideMessage;
|
||||
extern const u8 *const gUnknown_80F95EC;
|
||||
extern const u8 *const gUnknown_80F9600;
|
||||
extern const u8 *const gUnknown_80F9614;
|
||||
extern const u8 *const gUnknown_80F9630;
|
||||
extern const u8 *const gUnknown_80F9654;
|
||||
extern const u8 *const gUnknown_80F9670;
|
||||
extern const u8 *const gUnknown_80F9688;
|
||||
extern const u8 *const gUnknown_80F96A8;
|
||||
extern const u8 *const gUnknown_80F96BC;
|
||||
extern const u8 *const gUnknown_80F96EC;
|
||||
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 gWeatherNames[WEATHER_COUNT];
|
||||
extern const u8 *const gUnknown_80F9ACC;
|
||||
extern const u8 *const gUnknown_80F9AEC;
|
||||
extern const u8 *const gUnknown_80F9B10;
|
||||
extern const u8 *const gUnknown_80F9B34;
|
||||
extern const u8 *const gUnknown_80F9B58;
|
||||
extern const u8 *const gUnknown_80F9B74;
|
||||
extern const u8 *const gUnknown_80F9B94;
|
||||
extern const u8 *const gUnknown_80F9BB0;
|
||||
extern const u8 *const gUnknown_80F9BD8;
|
||||
extern const u8 *const gUnknown_80F9C08;
|
||||
extern const u8 *const gUnknown_80F9C2C;
|
||||
extern const u8 *const gUnknown_80F9C4C;
|
||||
extern const u8 *const gUnknown_80F9C70;
|
||||
extern const u8 *const gUnknown_80F9C8C;
|
||||
extern const u8 *const gUnknown_80F9CBC;
|
||||
extern const u8 *const gUnknown_80F9CC0[];
|
||||
extern const u8 *const gUnknown_80F9CEC[];
|
||||
extern const u8 *const gUnknown_80F9D28[];
|
||||
extern const u8 *const gUnknown_80F9D84[];
|
||||
extern const u8 *const gUnknown_80F9D8C[];
|
||||
extern const u8 *const gUnknown_80F9DAC[];
|
||||
extern const u8 *const gUnknown_80F9DF0[];
|
||||
extern const u8 *const gUnknown_80F9E44;
|
||||
extern const u8 *const gUnknown_80F9E64;
|
||||
extern const u8 *const gUnknown_80F9E80;
|
||||
extern const u8 *const gUnknown_80F9E84;
|
||||
extern const u8 *const gUnknown_80F9EC8;
|
||||
extern const u8 *const gUnknown_80F9EEC;
|
||||
extern const u8 *const gUnknown_80F9F04;
|
||||
extern const u8 *const gUnknown_80F9F2C;
|
||||
extern const u8 *const gUnknown_80F9FA4;
|
||||
extern const u8 *const gUnknown_80F9FE8;
|
||||
extern const u8 *const gUnknown_80F9FEC;
|
||||
extern const u8 *const gUnknown_80FA004;
|
||||
extern const u8 *const gUnknown_80FA030;
|
||||
extern const u8 *const gUnknown_80FA058;
|
||||
extern const u8 *const gUnknown_80FA090;
|
||||
extern const u8 *const gUnknown_80FA0C8;
|
||||
extern const u8 *const gUnknown_80FA0F0;
|
||||
extern const u8 *const gUnknown_80FA120;
|
||||
extern const u8 *const gUnknown_80FA124[];
|
||||
extern const u8 *const gUnknown_80FA260;
|
||||
extern const u8 *const gUnknown_80FA2B0;
|
||||
extern const u8 *const gUnknown_80FA2F0;
|
||||
extern const u8 *const gUnknown_80FA32C;
|
||||
extern const u8 *const gUnknown_80FA36C;
|
||||
extern const u8 *const gUnknown_80FA370;
|
||||
extern const u8 *const gUnknown_80FA394;
|
||||
extern const u8 *const gUnknown_80FA3B8;
|
||||
extern const u8 *const gUnknown_80FA408;
|
||||
extern const u8 *const gUnknown_80FA448;
|
||||
extern const u8 *const gUnknown_80FA464;
|
||||
extern const u8 *const gUnknown_80FA4D4;
|
||||
extern const u8 *const gUnknown_80FA4D8;
|
||||
extern const u8 *const gUnknown_80FA500;
|
||||
extern const u8 *const gUnknown_80FA52C;
|
||||
extern const u8 *const gUnknown_80FA530;
|
||||
extern const u8 *const gUnknown_80FA54C;
|
||||
extern const u8 *const gUnknown_80FA580;
|
||||
extern const u8 *const gUnknown_80FA5B4;
|
||||
extern const u8 *const gUnknown_80FA5B8;
|
||||
extern const u8 *const gUnknown_80FA5F4;
|
||||
extern const u8 *const gUnknown_80FA61C;
|
||||
extern const u8 *const gUnknown_80FA638;
|
||||
extern const u8 *const gUnknown_80FA658;
|
||||
extern const u8 *const gUnknown_80FA67C;
|
||||
extern const u8 *const gUnknown_80FA69C;
|
||||
extern const u8 *const gUnknown_80FA6BC;
|
||||
extern const u8 *const gUnknown_80FA6D4;
|
||||
extern const u8 *const gUnknown_80FA6E8;
|
||||
extern const u8 *const gUnknown_80FA708;
|
||||
extern const u8 *const gUnknown_80FA70C;
|
||||
extern const u8 *const gUnknown_80FA710;
|
||||
extern const u8 *const gUnknown_80FA734;
|
||||
extern const u8 *const gUnknown_80FA758;
|
||||
extern const u8 *const gUnknown_80FA778;
|
||||
extern const u8 *const gUnknown_80FA79C;
|
||||
extern const u8 *const gUnknown_80FA7BC;
|
||||
extern const u8 *const gUnknown_80FA7DC;
|
||||
extern const u8 *const gUnknown_80FA800;
|
||||
extern const u8 *const gUnknown_80FA81C;
|
||||
extern const u8 *const gUnknown_80FA820;
|
||||
extern const u8 *const gUnknown_80FA824;
|
||||
extern const u8 *const gUnknown_80FA844;
|
||||
extern const u8 *const gUnknown_80FA868;
|
||||
extern const u8 *const gUnknown_80FA888;
|
||||
extern const u8 *const gUnknown_80FA8A8;
|
||||
extern const u8 *const gUnknown_80FA8BC;
|
||||
extern const u8 *const gUnknown_80FA8E0;
|
||||
extern const u8 *const gUnknown_80FA90C;
|
||||
extern const u8 *const gUnknown_80FA934;
|
||||
extern const u8 *const gUnknown_80FA95C;
|
||||
extern const u8 *const gUnknown_80FA97C;
|
||||
extern const u8 *const gUnknown_80FA9A0;
|
||||
extern const u8 *const gUnknown_80FA9C0;
|
||||
extern const u8 *const gUnknown_80FA9DC;
|
||||
extern const u8 *const gUnknown_80FA9F4;
|
||||
extern const u8 *const gUnknown_80FAA0C;
|
||||
extern const u8 *const gUnknown_80FAA2C;
|
||||
extern const u8 *const gUnknown_80FAA48;
|
||||
extern const u8 *const gUnknown_80FAA68;
|
||||
extern const u8 *const gUnknown_80FAA8C;
|
||||
extern const u8 *const gUnknown_80FAAAC;
|
||||
extern const u8 *const gPtrMonStoppedEnduringMessage;
|
||||
extern const u8 *const gPtrMonMirrorMoveFadedMessage;
|
||||
extern const u8 *const gPtrMonConversion2FailedMessage;
|
||||
extern const u8 *const gPtrMonGaveUpVitalThrowMessage;
|
||||
extern const u8 *const gUnknown_80FAB40;
|
||||
extern const u8 *const gUnknown_80FAB6C;
|
||||
extern const u8 *const gUnknown_80FAB90;
|
||||
extern const u8 *const gUnknown_80FABBC;
|
||||
extern const u8 *const gUnknown_80FABC0;
|
||||
extern const u8 *const gUnknown_80FABD8;
|
||||
extern const u8 *const gPtrMonNoLongerPetrifiedMessage;
|
||||
extern const u8 *const gPtrMonNoLongerCringingMessage;
|
||||
extern const u8 *const gUnknown_80FAC38;
|
||||
extern const u8 *const gUnknown_80FAC54;
|
||||
extern const u8 *const gUnknown_80FAC74;
|
||||
extern const u8 *const gUnknown_80FAC88;
|
||||
extern const u8 *const gUnknown_80FACA4;
|
||||
extern const u8 *const gUnknown_80FACC4;
|
||||
extern const u8 *const gUnknown_80FACE4;
|
||||
extern const u8 *const gUnknown_80FACFC;
|
||||
extern const u8 *const gUnknown_80FAD10;
|
||||
extern const u8 *const gUnknown_80FAD2C;
|
||||
extern const u8 *const gUnknown_80FAD4C;
|
||||
extern const u8 *const gUnknown_80FAD6C;
|
||||
extern const u8 *const gUnknown_80FAD8C;
|
||||
extern const u8 *const gUnknown_80FADB0;
|
||||
extern const u8 *const gUnknown_80FADD8;
|
||||
extern const u8 *const gUnknown_80FAE00;
|
||||
extern const u8 *const gUnknown_80FAE1C;
|
||||
extern const u8 *const gUnknown_80FAE3C;
|
||||
extern const u8 *const gUnknown_80FAE58;
|
||||
extern const u8 *const gUnknown_80FAE7C;
|
||||
extern const u8 *const gUnknown_80FAEA0;
|
||||
extern const u8 *const gUnknown_80FAEC8;
|
||||
extern const u8 *const gUnknown_80FAEF0;
|
||||
extern const u8 *const gUnknown_80FAF1C;
|
||||
extern const u8 *const gUnknown_80FAF3C;
|
||||
extern const u8 *const gUnknown_80FAF5C;
|
||||
extern const u8 *const gUnknown_80FAF8C;
|
||||
extern const u8 *const gUnknown_80FAFAC;
|
||||
extern const u8 *const gUnknown_80FAFD0;
|
||||
extern const u8 *const gUnknown_80FAFF0;
|
||||
extern const u8 *const gUnknown_80FB004;
|
||||
extern const u8 *const gUnknown_80FB01C;
|
||||
extern const u8 *const gUnknown_80FB048;
|
||||
extern const u8 *const gUnknown_80FB074;
|
||||
extern const u8 *const gUnknown_80FB09C;
|
||||
extern const u8 *const gUnknown_80FB0C4;
|
||||
extern const u8 *const gUnknown_80FB0E0;
|
||||
extern const u8 *const gUnknown_80FB10C;
|
||||
extern const u8 *const gUnknown_80FB130;
|
||||
extern const u8 *const gUnknown_80FB160;
|
||||
extern const u8 *const gUnknown_80FB17C;
|
||||
extern const u8 *const gUnknown_80FB1A8;
|
||||
extern const u8 *const gUnknown_80FB1C4;
|
||||
extern const u8 *const gUnknown_80FB1E0;
|
||||
extern const u8 *const gUnknown_80FB204;
|
||||
extern const u8 *const gUnknown_80FB21C;
|
||||
extern const u8 *const gUnknown_80FB240;
|
||||
extern const u8 *const gUnknown_80FB25C;
|
||||
extern const u8 *const gUnknown_80FB27C;
|
||||
extern const u8 *const gUnknown_80FB2AC;
|
||||
extern const u8 *const gUnknown_80FB2CC;
|
||||
extern const u8 *const gUnknown_80FB2E0;
|
||||
extern const u8 *const gUnknown_80FB300;
|
||||
extern const u8 *const gUnknown_80FB318;
|
||||
extern const u8 *const gUnknown_80FB31C;
|
||||
extern const u8 *const gUnknown_80FB338;
|
||||
extern const u8 *const gUnknown_80FB35C;
|
||||
extern const u8 *const gUnknown_80FB360;
|
||||
extern const u8 *const gUnknown_80FB380;
|
||||
extern const u8 *const gUnknown_80FB384;
|
||||
extern const u8 *const gUnknown_80FB388;
|
||||
extern const u8 *const gUnknown_80FB3A4;
|
||||
extern const u8 *const gUnknown_80FB3CC;
|
||||
extern const u8 *const gUnknown_80FB3D0;
|
||||
extern const u8 *const gUnknown_80FB3E0;
|
||||
extern const u8 *const gUnknown_80FB3F8;
|
||||
extern const u8 *const gUnknown_80FB414;
|
||||
extern const u8 *const gUnknown_80FB418;
|
||||
extern const u8 *const gUnknown_80FB41C;
|
||||
extern const u8 *const gUnknown_80FB43C;
|
||||
extern const u8 *const gUnknown_80FB458;
|
||||
extern const u8 *const gUnknown_80FB480;
|
||||
extern const u8 *const gUnknown_80FB4B0;
|
||||
extern const u8 *const gUnknown_80FB4D4;
|
||||
extern const u8 *const gUnknown_80FB4F0;
|
||||
extern const u8 *const gUnknown_80FB50C;
|
||||
extern const u8 *const gUnknown_80FB52C;
|
||||
extern const u8 *const gUnknown_80FB548;
|
||||
extern const u8 *const gUnknown_80FB564;
|
||||
extern const u8 *const gUnknown_80FB580;
|
||||
extern const u8 *const gUnknown_80FB598;
|
||||
extern const u8 *const gUnknown_80FB5B4;
|
||||
extern const u8 *const gUnknown_80FB5D4;
|
||||
extern const u8 *const gUnknown_80FB5F8;
|
||||
extern const u8 *const gUnknown_80FB610;
|
||||
extern const u8 *const gUnknown_80FB628;
|
||||
extern const u8 *const gUnknown_80FB64C;
|
||||
extern const u8 *const gUnknown_80FB668;
|
||||
extern const u8 *const gUnknown_80FB688;
|
||||
extern const u8 *const gUnknown_80FB6A4;
|
||||
extern const u8 *const gUnknown_80FB6C0;
|
||||
extern const u8 *const gUnknown_80FB6D8;
|
||||
extern const u8 *const gUnknown_80FB6FC;
|
||||
extern const u8 *const gUnknown_80FB718;
|
||||
extern const u8 *const gUnknown_80FB73C;
|
||||
extern const u8 *const gUnknown_80FB764;
|
||||
extern const u8 *const gUnknown_80FB780;
|
||||
extern const u8 *const gUnknown_80FB7A0;
|
||||
extern const u8 *const gUnknown_80FB7BC;
|
||||
extern const u8 *const gUnknown_80FB7DC;
|
||||
extern const u8 *const gUnknown_80FB7F4;
|
||||
extern const u8 *const gUnknown_80FB810;
|
||||
extern const u8 *const gUnknown_80FB834;
|
||||
extern const u8 *const gUnknown_80FB85C;
|
||||
extern const u8 *const gUnknown_80FB880;
|
||||
extern const u8 *const gUnknown_80FB89C;
|
||||
extern const u8 *const gUnknown_80FB8BC;
|
||||
extern const u8 *const gUnknown_80FB8E4;
|
||||
extern const u8 *const gUnknown_80FB900;
|
||||
extern const u8 *const gUnknown_80FB924;
|
||||
extern const u8 *const gUnknown_80FB940;
|
||||
extern const u8 *const gUnknown_80FB960;
|
||||
extern const u8 *const gUnknown_80FB978;
|
||||
extern const u8 *const gUnknown_80FB994;
|
||||
extern const u8 *const gUnknown_80FB9B0;
|
||||
extern const u8 *const gUnknown_80FB9D8;
|
||||
extern const u8 *const gUnknown_80FB9F0;
|
||||
extern const u8 *const gUnknown_80FBA14;
|
||||
extern const u8 *const gUnknown_80FBA38;
|
||||
extern const u8 *const gUnknown_80FBA60;
|
||||
extern const u8 *const gUnknown_80FBA80;
|
||||
extern const u8 *const gUnknown_80FBAA0;
|
||||
extern const u8 *const gUnknown_80FBAC0;
|
||||
extern const u8 *const gUnknown_80FBAE4;
|
||||
extern const u8 *const gUnknown_80FBB04;
|
||||
extern const u8 *const gUnknown_80FBB28;
|
||||
extern const u8 *const gUnknown_80FBB4C;
|
||||
extern const u8 *const gUnknown_80FBB78;
|
||||
extern const u8 *const gUnknown_80FBB94;
|
||||
extern const u8 *const gUnknown_80FBBB8;
|
||||
extern const u8 *const gUnknown_80FBBD4;
|
||||
extern const u8 *const gUnknown_80FBBF0;
|
||||
extern const u8 *const gUnknown_80FBC14;
|
||||
extern const u8 *const gUnknown_80FBC38;
|
||||
extern const u8 *const gUnknown_80FBC5C;
|
||||
extern const u8 *const gUnknown_80FBC7C;
|
||||
extern const u8 *const gUnknown_80FBCA4;
|
||||
extern const u8 *const gUnknown_80FBCC8;
|
||||
extern const u8 *const gUnknown_80FBCF0;
|
||||
extern const u8 *const gUnknown_80FBD18;
|
||||
extern const u8 *const gUnknown_80FBD3C;
|
||||
extern const u8 *const gUnknown_80FBD58;
|
||||
extern const u8 *const gUnknown_80FBD78;
|
||||
extern const u8 *const gUnknown_80FBD9C;
|
||||
extern const u8 *const gUnknown_80FBDC4;
|
||||
extern const u8 *const gUnknown_80FBDF0;
|
||||
extern const u8 *const gUnknown_80FBE14;
|
||||
extern const u8 *const gUnknown_80FBE3C;
|
||||
extern const u8 *const gUnknown_80FBE40;
|
||||
extern const u8 *const gUnknown_80FBE64;
|
||||
extern const u8 *const gUnknown_80FBE84;
|
||||
extern const u8 *const gUnknown_80FBEA0;
|
||||
extern const u8 *const gUnknown_80FBEC0;
|
||||
extern const u8 *const gUnknown_80FBEE4;
|
||||
extern const u8 *const gUnknown_80FBF04;
|
||||
extern const u8 *const gUnknown_80FBF28;
|
||||
extern const u8 *const gUnknown_80FBF50;
|
||||
extern const u8 *const gUnknown_80FBF68;
|
||||
extern const u8 *const gUnknown_80FBF84;
|
||||
extern const u8 *const gUnknown_80FBF9C;
|
||||
extern const u8 *const gUnknown_80FBFB8;
|
||||
extern const u8 *const gUnknown_80FBFD8;
|
||||
extern const u8 *const gUnknown_80FC000;
|
||||
extern const u8 *const gUnknown_80FC028;
|
||||
extern const u8 *const gUnknown_80FC054;
|
||||
extern const u8 *const gUnknown_80FC074;
|
||||
extern const u8 *const gUnknown_80FC084;
|
||||
extern const u8 *const gUnknown_80FC090;
|
||||
extern const u8 *const gUnknown_80FC09C;
|
||||
extern const u8 *const gUnknown_80FC0AC;
|
||||
extern const u8 *const gUnknown_80FC0B8;
|
||||
extern const u8 *const gUnknown_80FC0C8;
|
||||
extern const u8 *const gUnknown_80FC0D4;
|
||||
extern const u8 *const gUnknown_80FC0E4;
|
||||
extern const u8 *const gUnknown_80FC0FC;
|
||||
extern const u8 *const gUnknown_80FC114;
|
||||
extern const u8 *const gUnknown_80FC118;
|
||||
extern const u8 *const gUnknown_80FC11C;
|
||||
extern const u8 *const gUnknown_80FC138;
|
||||
extern const u8 *const gUnknown_80FC13C;
|
||||
extern const u8 *const gUnknown_80FC158;
|
||||
extern const u8 *const gUnknown_80FC15C;
|
||||
extern const u8 *const gUnknown_80FC180;
|
||||
extern const u8 *const gUnknown_80FC184;
|
||||
extern const u8 *const gUnknown_80FC1A4;
|
||||
extern const u8 *const gUnknown_80FC1C4;
|
||||
extern const u8 *const gUnknown_80FC1F0;
|
||||
extern const u8 *const gUnknown_80FC218;
|
||||
extern const u8 *const gUnknown_80FC21C;
|
||||
extern const u8 *const gUnknown_80FC248;
|
||||
extern const u8 *const gUnknown_80FC270;
|
||||
extern const u8 *const gUnknown_80FC274;
|
||||
extern const u8 *const gUnknown_80FC298;
|
||||
extern const u8 *const gUnknown_80FC2B8;
|
||||
extern const u8 *const gUnknown_80FC2D8;
|
||||
extern const u8 *const gUnknown_80FC2FC;
|
||||
extern const u8 *const gUnknown_80FC31C;
|
||||
extern const u8 *const gUnknown_80FC33C;
|
||||
extern const u8 *const gUnknown_80FC360;
|
||||
extern const u8 *const gUnknown_80FC388;
|
||||
extern const u8 *const gUnknown_80FC3B4;
|
||||
extern const u8 *const gUnknown_80FC3D8;
|
||||
extern const u8 *const gUnknown_80FC3FC;
|
||||
extern const u8 *const gUnknown_80FC428;
|
||||
extern const u8 *const gUnknown_80FC454;
|
||||
extern const u8 *const gUnknown_80FC458;
|
||||
extern const u8 *const gUnknown_80FC47C;
|
||||
extern const u8 *const gUnknown_80FC4A4;
|
||||
extern const u8 *const gUnknown_80FC4D0;
|
||||
extern const u8 *const gUnknown_80FC52C;
|
||||
extern const u8 *const gUnknown_80FC558;
|
||||
extern const u8 *const gUnknown_80FC574;
|
||||
extern const u8 *const gUnknown_80FC584;
|
||||
extern const u8 *const gUnknown_80FC5A8;
|
||||
extern const u8 *const gUnknown_80FC5CC;
|
||||
extern const u8 *const gUnknown_80FC5E0;
|
||||
extern const u8 *const gUnknown_80FC5F8;
|
||||
extern const u8 *const gUnknown_80FC5FC;
|
||||
extern const u8 *const gUnknown_80FC614;
|
||||
extern const u8 *const gUnknown_80FC654;
|
||||
extern const u8 *const gUnknown_80FC678;
|
||||
extern const u8 *const gUnknown_80FC690;
|
||||
extern const u8 *const gUnknown_80FC6A4;
|
||||
extern const u8 *const gUnknown_80FC6A8;
|
||||
extern const u8 *const gUnknown_80FC6D0;
|
||||
extern const u8 *const gUnknown_80FC6FC;
|
||||
extern const u8 *const gUnknown_80FC710;
|
||||
extern const u8 *const gUnknown_80FC714;
|
||||
extern const u8 *const gUnknown_80FC718;
|
||||
extern const u8 *const gUnknown_80FC72C;
|
||||
extern const u8 *const gUnknown_80FC730;
|
||||
extern const u8 *const gUnknown_80FC734;
|
||||
extern const u8 *const gUnknown_80FC74C;
|
||||
extern const u8 *const gUnknown_80FC770;
|
||||
extern const u8 *const gUnknown_80FC790;
|
||||
extern const u8 *const gUnknown_80FC7AC;
|
||||
extern const u8 *const gUnknown_80FC7C8;
|
||||
extern const u8 *const gUnknown_80FC7EC;
|
||||
extern const u8 *const gUnknown_80FC81C;
|
||||
extern const u8 *const gUnknown_80FC854;
|
||||
extern const u8 *const gUnknown_80FC888;
|
||||
extern const u8 *const gUnknown_80FC8C0;
|
||||
extern const u8 *const gUnknown_80FC8F0;
|
||||
extern const u8 *const gUnknown_80FC920;
|
||||
extern const u8 *const gUnknown_80FC924;
|
||||
extern const u8 *const gUnknown_80FC97C;
|
||||
extern const u8 *const gUnknown_80FC9A0;
|
||||
extern const u8 *const gUnknown_80FC9C0;
|
||||
extern const u8 *const gUnknown_80FC9E8;
|
||||
extern const u8 *const gUnknown_80FCA10;
|
||||
extern const u8 *const gUnknown_80FCA3C;
|
||||
extern const u8 *const gUnknown_80FCA60;
|
||||
extern const u8 *const gUnknown_80FCA64;
|
||||
extern const u8 *const gUnknown_80FCA90;
|
||||
extern const u8 *const gUnknown_80FCAC0;
|
||||
extern const u8 *const gUnknown_80FCAE8;
|
||||
extern const u8 *const gUnknown_80FCB14;
|
||||
extern const u8 *const gUnknown_80FCB40;
|
||||
extern const u8 *const gUnknown_80FCB70;
|
||||
extern const u8 *const gUnknown_80FCB98;
|
||||
extern const u8 *const gUnknown_80FCBCC;
|
||||
extern const u8 *const gUnknown_80FCBF8;
|
||||
extern const u8 *const gUnknown_80FCC18;
|
||||
extern const u8 *const gUnknown_80FCC4C;
|
||||
extern const u8 *const gUnknown_80FCC7C;
|
||||
extern const u8 *const gUnknown_80FCCAC;
|
||||
extern const u8 *const gUnknown_80FCCB0;
|
||||
extern const u8 *const gUnknown_80FCCE4;
|
||||
extern const u8 *const gUnknown_80FCCE8;
|
||||
extern const u8 *const gUnknown_80FCD0C;
|
||||
extern const u8 *const gUnknown_80FCD28;
|
||||
extern const u8 *const gUnknown_80FCD54;
|
||||
extern const u8 *const gUnknown_80FCD58;
|
||||
extern const u8 *const gUnknown_80FCD88;
|
||||
extern const u8 *const gUnknown_80FCDB4;
|
||||
extern const u8 *const gUnknown_80FCDE0;
|
||||
extern const u8 *const gUnknown_80FCE00;
|
||||
extern const u8 *const gUnknown_80FCE34;
|
||||
extern const u8 *const gUnknown_80FCE5C;
|
||||
extern const u8 *const gUnknown_80FCE84;
|
||||
extern const u8 *const gUnknown_80FCEB0;
|
||||
extern const u8 *const gUnknown_80FCEDC;
|
||||
extern const u8 *const gUnknown_80FCEFC;
|
||||
extern const u8 *const gUnknown_80FCF18;
|
||||
extern const u8 *const gUnknown_80FCF38;
|
||||
extern const u8 *const gUnknown_80FCF50;
|
||||
extern const u8 *const gUnknown_80FCF74;
|
||||
extern const u8 *const gUnknown_80FCF78;
|
||||
extern const u8 *const gUnknown_80FCF7C;
|
||||
extern const u8 *const gUnknown_80FCF80;
|
||||
extern const u8 *const gUnknown_80FCFA4;
|
||||
extern const u8 *const gUnknown_80FCFBC;
|
||||
extern const u8 *const gUnknown_80FCFE4;
|
||||
extern const u8 *const gUnknown_80FD018;
|
||||
extern const u8 *const gUnknown_80FD040;
|
||||
extern const u8 *const gUnknown_80FD05C;
|
||||
extern const u8 *const gUnknown_80FD060;
|
||||
extern const u8 *const gUnknown_80FD08C;
|
||||
extern const u8 *const gUnknown_80FD0B4;
|
||||
extern const u8 *const gUnknown_80FD0B8;
|
||||
extern const u8 *const gUnknown_80FD0BC;
|
||||
extern const u8 *const gUnknown_80FD0DC;
|
||||
extern const u8 *const gUnknown_80FD0E0;
|
||||
extern const u8 *const gUnknown_80FD0E4;
|
||||
extern const u8 *const gUnknown_80FD104;
|
||||
extern const u8 *const gUnknown_80FD128;
|
||||
extern const u8 *const gUnknown_80FD14C;
|
||||
extern const u8 *const gUnknown_80FD170;
|
||||
extern const u8 *const gUnknown_80FD18C;
|
||||
extern const u8 *const gUnknown_80FD1B0;
|
||||
extern const u8 *const gUnknown_80FD1CC;
|
||||
extern const u8 *const gUnknown_80FD1EC;
|
||||
extern const u8 *const gUnknown_80FD20C;
|
||||
extern const u8 *const gUnknown_80FD22C;
|
||||
extern const u8 *const gUnknown_80FD254;
|
||||
extern const u8 *const gUnknown_80FD27C;
|
||||
extern const u8 *const gUnknown_80FD294;
|
||||
extern const u8 *const gUnknown_80FD2B4;
|
||||
extern const u8 *const gUnknown_80FD2CC;
|
||||
extern const u8 *const gUnknown_80FD2DC;
|
||||
extern const u8 *const gUnknown_80FD2F8;
|
||||
extern const u8 *const gUnknown_80FD320;
|
||||
extern const u8 *const gUnknown_80FD350;
|
||||
extern const u8 *const gUnknown_80FD370;
|
||||
extern const u8 *const gUnknown_80FD3A0;
|
||||
extern const u8 *const gUnknown_80FD3C8;
|
||||
extern const u8 *const gUnknown_80FD3CC;
|
||||
extern const u8 *const gUnknown_80FD3D0;
|
||||
extern const u8 *const gUnknown_80FD3F0;
|
||||
extern const u8 *const gUnknown_80FD40C;
|
||||
extern const u8 *const gUnknown_80FD430;
|
||||
extern const u8 *const gUnknown_80FD434;
|
||||
extern const u8 *const gUnknown_80FD450;
|
||||
extern const u8 *const gUnknown_80FD454;
|
||||
extern const u8 *const gUnknown_80FD46C;
|
||||
extern const u8 *const gUnknown_80FD484;
|
||||
extern const u8 *const gUnknown_80FD4B0;
|
||||
extern const u8 *const gUnknown_80FD4C4;
|
||||
extern const u8 *const gUnknown_80FD4DC;
|
||||
extern const u8 *const gUnknown_80FD500;
|
||||
extern const u8 *const gUnknown_80FD524;
|
||||
extern const u8 *const gUnknown_80FD548;
|
||||
extern const u8 *const gUnknown_80FD54C;
|
||||
extern const u8 *const gUnknown_80FD550;
|
||||
extern const u8 *const gUnknown_80FD574;
|
||||
extern const u8 *const gUnknown_80FD578;
|
||||
extern const u8 *const gUnknown_80FD57C;
|
||||
extern const u8 *const gUnknown_80FD594;
|
||||
extern const u8 *const gUnknown_80FD5B8;
|
||||
extern const u8 *const gUnknown_80FD5DC;
|
||||
extern const u8 *const gUnknown_80FD608;
|
||||
extern const u8 *const gUnknown_80FD628;
|
||||
extern const u8 *const gUnknown_80FD644;
|
||||
extern const u8 *const gUnknown_80FD648[];
|
||||
extern const u8 *const gUnknown_80FD6E8[];
|
||||
extern const u8 *const gUnknown_80FD788;
|
||||
extern const u8 *const gUnknown_80FD7AC;
|
||||
extern const u8 *const gUnknown_80FD7D4;
|
||||
extern const u8 *const gUnknown_80FD7F4;
|
||||
extern const u8 *const gSteppedOnTrapStrings[NUM_TRAPS];
|
||||
extern const u8 *const gUnknown_80FDA80;
|
||||
extern const u8 *const gUnknown_80FDAA0;
|
||||
extern const u8 *const gUnknown_80FDACC;
|
||||
extern const u8 *const gUnknown_80FDAE4;
|
||||
extern const u8 *const gUnknown_80FDB04;
|
||||
extern const u8 *const gUnknown_80FDB2C;
|
||||
extern const u8 *const gUnknown_80FDB5C;
|
||||
extern const u8 *const gUnknown_80FDB7C;
|
||||
extern const u8 *const gUnknown_80FDBA0;
|
||||
extern const u8 *const gUnknown_80FDBB8;
|
||||
extern const u8 *const gUnknown_80FDBD0;
|
||||
extern const u8 *const gUnknown_80FDBF0;
|
||||
extern const u8 *const gUnknown_80FDC18;
|
||||
extern const u8 *const gUnknown_80FDC40;
|
||||
extern const u8 *const gUnknown_80FDC7C;
|
||||
extern const u8 *const gUnknown_80FDC9C;
|
||||
extern const u8 *const gUnknown_80FDCA0;
|
||||
extern const u8 *const gUnknown_80FDCA4;
|
||||
extern const u8 *const gUnknown_80FDCC8;
|
||||
extern const u8 *const gUnknown_80FDCE4;
|
||||
extern const u8 *const gUnknown_80FDD00;
|
||||
extern const u8 *const gUnknown_80FDD20;
|
||||
extern const u8 *const gUnknown_80FDD48;
|
||||
extern const u8 *const gUnknown_80FDD88;
|
||||
extern const u8 *const gUnknown_80FDDA8;
|
||||
extern const u8 *const gUnknown_80FDDAC;
|
||||
extern const u8 *const gUnknown_80FDDD0;
|
||||
extern const u8 *const gUnknown_80FDDF0;
|
||||
extern const u8 *const gUnknown_80FDE18;
|
||||
extern const u8 *const gUnknown_80FDE6C;
|
||||
extern const u8 *const gUnknown_80FDEB8;
|
||||
extern const u8 *const gUnknown_80FDF00;
|
||||
extern const u8 *const gUnknown_80FDF40;
|
||||
extern const u8 *const gUnknown_80FDF70;
|
||||
extern const u8 *const gUnknown_80FDFB8;
|
||||
extern const u8 *const gUnknown_80FDFE8;
|
||||
extern const u8 *const gUnknown_80FE008;
|
||||
extern const u8 *const gUnknown_80FE034;
|
||||
extern const u8 *const gUnknown_80FE060;
|
||||
extern const u8 *const gUnknown_80FE0AC;
|
||||
extern const u8 *const gUnknown_80FE0F4;
|
||||
extern const u8 *const gUnknown_80FE0F8;
|
||||
extern const u8 *const gUnknown_80FE134;
|
||||
extern const u8 *const gUnknown_80FE168;
|
||||
extern const u8 *const gUnknown_80FE1A4;
|
||||
extern const u8 *const gUnknown_80FE20C;
|
||||
extern const u8 *const gUnknown_80FE268;
|
||||
extern const u8 *const gUnknown_80FE28C;
|
||||
extern const u8 *const gUnknown_80FE2D0;
|
||||
extern const u8 *const gUnknown_80FE2EC;
|
||||
extern const u8 *const gPtrItsaMonsterHouseMessage;
|
||||
extern const u8 *const gUnknown_80FE330;
|
||||
extern const u8 *const gUnknown_80FE36C;
|
||||
extern const u8 *const gUnknown_80FE38C;
|
||||
extern const u8 *const gUnknown_80FE3BC;
|
||||
extern const u8 *const gItemStickyDoesntWorkText;
|
||||
extern const u8 *const gUnknown_80FE3EC;
|
||||
extern const u8 *const gUnknown_80FE40C;
|
||||
extern const u8 *const gUnknown_80FE434;
|
||||
extern const u8 *const gUnknown_80FE454;
|
||||
extern const u8 *const gUnknown_80FE458;
|
||||
extern const u8 *const gUnknown_80FE478;
|
||||
extern const u8 *const gUnknown_80FE4B8;
|
||||
extern const u8 *const gUnknown_80FE4D4;
|
||||
extern const u8 *const gUnknown_80FE4F4;
|
||||
extern const u8 *const gUnknown_80FE520;
|
||||
extern const u8 *const gUnknown_80FE568;
|
||||
extern const u8 *const gUnknown_80FE5C0;
|
||||
extern const u8 *const gUnknown_80FE5F0;
|
||||
extern const u8 *const gUnknown_80FE63C;
|
||||
extern const u8 *const gUnknown_80FE65C;
|
||||
extern const u8 *const gUnknown_80FE674;
|
||||
extern const u8 *const gUnknown_80FE690;
|
||||
extern const u8 *const gUnknown_80FE6B4;
|
||||
extern const u8 *const gUnknown_80FE6D4;
|
||||
extern const u8 *const gUnknown_80FE6E8;
|
||||
extern const u8 *const gUnknown_80FE6F4;
|
||||
extern const u8 *const gUnknown_80FE708;
|
||||
extern const u8 *const gUnknown_80FE70C;
|
||||
extern const u8 *const gUnknown_80FE720;
|
||||
extern const u8 *const gUnknown_80FE724;
|
||||
extern const u8 *const gOptionsDungeonTextPtr;
|
||||
extern const u8 *const gOptionsOthersTextPtr;
|
||||
extern const u8 *const gUnknown_80FE748;
|
||||
extern const u8 *const gUnknown_80FE764;
|
||||
extern const u8 *const gUnknown_80FE788;
|
||||
extern const u8 *const gUnknown_80FE7A8;
|
||||
extern const u8 *const gUnknown_80FE7C0;
|
||||
extern const u8 *const gUnknown_80FE7E4;
|
||||
extern const u8 *const gOptionsWindowColorPtr;
|
||||
extern const u8 *const gDsTopScreenOptions[];
|
||||
extern const u8 *const gDsBottomScreenOptions[];
|
||||
extern const u8 *const gGameOptionsTextPtr;
|
||||
extern const u8 *const gUnknown_80FE8F4;
|
||||
extern const u8 *const gUnknown_80FE8F8;
|
||||
extern const u8 *const gTeamToolboxAPtr;
|
||||
extern const u8 *const gTeamToolboxBPtr;
|
||||
extern const u8 *const gFieldItemMenuGroundTextPtr;
|
||||
extern const u8 *const gUnknown_80FE940;
|
||||
extern const u8 *const gWhichTextPtr1;
|
||||
extern const u8 *const gWhichTextPtr2;
|
||||
extern const u8 *const gUnknown_80FE954;
|
||||
extern const u8 *const gUnknown_80FE95C;
|
||||
extern const u8 *const gUnknown_80FE960;
|
||||
extern const u8 *const gUnknown_80FE964;
|
||||
extern const u8 *const gUnknown_80FE978;
|
||||
extern const u8 *const gFieldMenuMovesPtr;
|
||||
extern const u8 *const gFieldMenuItemsPtr;
|
||||
extern const u8 *const gFieldMenuTeamPtr;
|
||||
extern const u8 *const gFieldMenuOthersPtr;
|
||||
extern const u8 *const gFieldMenuGroundPtr;
|
||||
extern const u8 *const gUnknown_80FE9CC;
|
||||
extern const u8 *const gUnknown_80FE9E8;
|
||||
extern const u8 *const gUnknown_80FE9F8;
|
||||
extern const u8 *const gUnknown_80FEA10;
|
||||
extern const u8 *const gUnknown_80FEA28;
|
||||
extern const u8 *const gUnknown_80FEA44;
|
||||
extern const u8 *const gUnknown_80FEA50;
|
||||
extern const u8 *const gUnknown_80FEA68;
|
||||
extern const u8 *const gUnknown_80FEA80;
|
||||
extern const u8 *const gUnknown_80FEA8C;
|
||||
extern const u8 *const gUnknown_80FEAC4;
|
||||
extern const u8 *const gUnknown_80FEAE8;
|
||||
extern const u8 *const gUnknown_80FEB08;
|
||||
extern const u8 *const gUnknown_80FEB30;
|
||||
extern const u8 *const gUnknown_80FEB60;
|
||||
extern const u8 *const gUnknown_80FEB88;
|
||||
extern const u8 *const gUnknown_80FEB8C;
|
||||
extern const u8 *const gUnknown_80FEB90;
|
||||
extern const u8 *const gUnknown_80FEBBC;
|
||||
extern const u8 *const gUnknown_80FEBDC;
|
||||
extern const u8 *const gUnknown_80FEBF8;
|
||||
extern const u8 *const gUnknown_80FEC28;
|
||||
extern const u8 *const gUnknown_80FEC48;
|
||||
extern const u8 *const gUnknown_80FEC7C;
|
||||
extern const u8 *const gUnknown_80FECA0;
|
||||
extern const u8 *const gUnknown_80FECBC;
|
||||
extern const u8 *const gUnknown_80FECE0;
|
||||
extern const u8 *const gUnknown_80FED00;
|
||||
extern const u8 *const gUnknown_80FED04;
|
||||
extern const u8 *const gUnknown_80FED08;
|
||||
extern const u8 *const gUnknown_80FED0C;
|
||||
extern const u8 *const gUnknown_80FED30;
|
||||
extern const u8 *const gUnknown_80FED34;
|
||||
extern const u8 *const gUnknown_80FED68;
|
||||
extern const u8 *const gUnknown_80FED88;
|
||||
extern const u8 *const gUnknown_80FEDA8;
|
||||
extern const u8 *const gUnknown_80FEDC8;
|
||||
extern const u8 *const gUnknown_80FEDE8;
|
||||
extern const u8 *const gUnknown_80FEE04;
|
||||
extern const u8 *const gUnknown_80FEE2C;
|
||||
extern const u8 *const gUnknown_80FEE54;
|
||||
extern const u8 *const gUnknown_80FEE80;
|
||||
extern const u8 *const gUnknown_80FEEA4;
|
||||
extern const u8 *const gUnknown_80FEEC8;
|
||||
extern const u8 *const gUnknown_80FEEEC;
|
||||
extern const u8 *const gUnknown_80FEF0C;
|
||||
extern const u8 *const gUnknown_80FEF30;
|
||||
extern const u8 *const gUnknown_80FEF4C;
|
||||
extern const u8 *const gUnknown_80FEF50;
|
||||
extern const u8 *const gUnknown_80FEF54;
|
||||
extern const u8 *const gUnknown_80FEF74;
|
||||
extern const u8 *const gUnknown_80FEF98;
|
||||
extern const u8 *const gUnknown_80FEFD0;
|
||||
extern const u8 *const gUnknown_80FEFF4;
|
||||
extern const u8 *const gUnknown_80FF01C;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF020;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF080;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF0D8;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF13C;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF1B4;
|
||||
extern const struct TutorialFlagMsg gMovementTutorial;
|
||||
extern const struct TutorialFlagMsg gHungerTutorial;
|
||||
extern const struct TutorialFlagMsg gFoodTutorial;
|
||||
extern const struct TutorialFlagMsg gOranTutorial;
|
||||
extern const struct TutorialFlagMsg gCheriTutorial;
|
||||
extern const struct TutorialFlagMsg gBlastSeedTutorial;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF4A0;
|
||||
extern const struct TutorialFlagMsg gPechaTutorial;
|
||||
extern const struct TutorialFlagMsg gSleepSeedTutorial;
|
||||
extern const struct TutorialFlagMsg gMoneyTutorial;
|
||||
extern const u8 *const gUnknown_80FF674;
|
||||
extern const u8 *const gUnknown_80FF678;
|
||||
extern const u8 *const gUnknown_80FF6A4;
|
||||
extern const u8 *const gUnknown_80FF6F8;
|
||||
extern const u8 *const gUnknown_80FF730;
|
||||
extern const u8 *const gUnknown_80FF76C;
|
||||
extern const u8 *const gText_Hints;
|
||||
extern const u8 *const gHintsNames[];
|
||||
|
||||
enum
|
||||
{
|
||||
HINTS_CONTROLS,
|
||||
HINTS_ORIENTATION,
|
||||
HINTS_SEEDS,
|
||||
HINTS_MOVES,
|
||||
HINTS_RANGE,
|
||||
HINTS_LINKING_MOVES,
|
||||
HINTS_POKEMON_TYPES,
|
||||
HINTS_TOUCH_SCREEN,
|
||||
HINTS_COUNT,
|
||||
};
|
||||
|
||||
#define HINTS_COUNT_RED_VERSION HINTS_COUNT - 1 // No Touch Screen Hints in Red
|
||||
|
||||
extern const u8 *const gHintsDescriptions[2][HINTS_COUNT];
|
||||
|
||||
extern const u8 *const gUnknown_8100208;
|
||||
extern const u8 *const gPtrMagnitudeMessage;
|
||||
extern const u8 *const gPtrSleepingTargetOnlyMessage;
|
||||
extern const u8 *const gPtrFeralFoundItemMessage;
|
||||
extern const u8 *const gPtrSelfHealPreventedHungerMessage;
|
||||
extern const u8 *const gUnknown_81002B8;
|
||||
extern const u8 *const gPtrFinalChanceMessage;
|
||||
extern const u8 *const gPtrLinkedMovesComeApartMessage;
|
||||
extern const u8 *const gPtrLinkMoveOneUseWarningMessage;
|
||||
extern const u8 *const gPtrLinkMoveTwoUsesWarningMessage;
|
||||
extern const u8 *const gPtrIcePartCrumbledMessage;
|
||||
extern const u8 *const gPtrRockPartCrumbledMessage;
|
||||
extern const u8 *const gPtrSteelPartCrumbledMessage;
|
||||
extern const u8 *const gPtrWishStoneCrumbledMessage;
|
||||
extern const u8 *const gPtrMusicBoxPlayedCrumbledMessage;
|
||||
extern const u8 *const gPtrMysteriousPowerPreventedUseMessage;
|
||||
extern const u8 *const gPtrCouldntBeUsedMessage;
|
||||
extern const u8 *const gUnknown_81004E8;
|
||||
extern const u8 *const gUnknown_81004EC;
|
||||
extern const u8 *const gUnknown_81004F0;
|
||||
extern const u8 *const gUnknown_8100524;
|
||||
extern const u8 *const gUnknown_8100548;
|
||||
extern const u8 *const gUnknown_810056C;
|
||||
extern const u8 *const gUnknown_8100594;
|
||||
extern const u8 *const gPtrExposedWoreOffMessage;
|
||||
extern const u8 *const gPtrSealedMoveReleasedMessage;
|
||||
extern const u8 *const gPtrCantLeechSeedSelfMessage;
|
||||
extern const u8 *const gPtrCantLeechSeedMonMessage;
|
||||
extern const u8 *const gPtrMoveInterruptedMessage;
|
||||
extern const u8 *const gPtrClientFaintedMessage;
|
||||
extern const u8 *const gPtrCantUseInDungeonMessage;
|
||||
extern const u8 *const gPtrForecastPreventsTypeSwitchMessage;
|
||||
extern const u8 *const gPtrForecastPreventsConversion2Message;
|
||||
extern const u8 *const gPtrStenchWavedOffMessage;
|
||||
extern const u8 *const gPtrProtectSavedItMessage;
|
||||
|
||||
#endif
|
||||
@@ -550,7 +550,7 @@ SECTIONS {
|
||||
src/dungeon_generation_fixed.o(.rodata);
|
||||
src/dungeon_message.o(.rodata);
|
||||
src/dungeon_strings.o(.rodata);
|
||||
data/data_80F59C8.o(.rodata);
|
||||
src/dungeon_boss_dialogue.o(.rodata);
|
||||
src/dungeon_message_log.o(.rodata);
|
||||
src/dungeon_move.o(.rodata);
|
||||
data/data_8106A4C_0.o(.rodata);
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "dungeon_movement.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "friend_area.h"
|
||||
#include "input.h"
|
||||
@@ -40,47 +41,6 @@
|
||||
#include "text_1.h"
|
||||
#include "trap.h"
|
||||
|
||||
extern u8 *gUnknown_80F8BE0[];
|
||||
extern u8 *gUnknown_80FF76C[];
|
||||
extern u8 *gItemStickyCannotMove1[];
|
||||
extern u8 *gItemStickyCannotMove2[];
|
||||
extern u8 *gItemStickyCannotEquip[];
|
||||
extern u8 *gMonTookAndReturnedItem[];
|
||||
extern u8 *gUnknown_80F8CE4[];
|
||||
extern u8 *gUnknown_80F8CE8[];
|
||||
extern u8 *gUnknown_80F8D04[];
|
||||
extern u8 *gUnknown_80F8D20[];
|
||||
extern u8 *gUnknown_80F8D44[];
|
||||
extern u8 *gUnknown_80F8D60[];
|
||||
extern u8 *gUnknown_80F8D7C[];
|
||||
extern u8 *gUnknown_80F8DB4[];
|
||||
extern u8 *gUnknown_80F8DE0[];
|
||||
extern u8 *gUnknown_80F8E04[];
|
||||
extern u8 *gUnknown_80F8E28[];
|
||||
extern u8 *gItemStickyCannotMove3[];
|
||||
extern u8 *gNothingCanBePutDownHere[];
|
||||
extern u8 *gUnknown_80F8E2C[];
|
||||
extern u8 *gNoExchangesHere[];
|
||||
extern u8 *gSwappedGroundItem[];
|
||||
extern const u8 *const gMonThrewItem2;
|
||||
extern const u8 *const gMonThrewItem1;
|
||||
extern const u8 *const gCannotFarewell;
|
||||
extern const u8 *const gSayFarewellQ;
|
||||
extern const u8 *const gUnknown_80FDFB8;
|
||||
extern const u8 *const gUnknown_80F913C;
|
||||
extern const u8 *const gCannotTalk;
|
||||
extern const u8 *const gUnknown_80FE008;
|
||||
extern const u8 *const gUnknown_80FDF74;
|
||||
extern const u8 *const gUnknown_80FF674;
|
||||
extern const u8 *const gUnknown_80F9114;
|
||||
extern const u8 *const gMonDisappointedAndLeft;
|
||||
extern const u8 *const gSendMonBackQ;
|
||||
extern const u8 *const gSendMonBackWithItemQ;
|
||||
extern const u8 *const gMonWentBack;
|
||||
extern const u8 *const gMonCringing;
|
||||
extern const u8 *const gMonParalyzed;
|
||||
extern const u8 *const gUnknown_80FC690;
|
||||
|
||||
extern s32 gDungeonSubMenuItemsCount;
|
||||
|
||||
extern void sub_8071DA4(Entity *);
|
||||
@@ -131,7 +91,7 @@ void HandleSetItemAction(Entity *param_1, bool8 param_2)
|
||||
if (((itemPtr->flags & ITEM_FLAG_EXISTS)) && ((itemPtr->flags & ITEM_FLAG_SET))) {
|
||||
if ((itemPtr->flags & ITEM_FLAG_STICKY)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],itemPtr);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gItemStickyCannotEquip);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gItemStickyCannotEquip);
|
||||
return;
|
||||
}
|
||||
itemPtr->flags &= ~(ITEM_FLAG_SET);
|
||||
@@ -141,22 +101,22 @@ void HandleSetItemAction(Entity *param_1, bool8 param_2)
|
||||
PlaySoundEffect(0x133);
|
||||
if (param_2 != 0) {
|
||||
if ((item->flags & ITEM_FLAG_STICKY)) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8D04);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8D04);
|
||||
}
|
||||
else {
|
||||
if (GetItemCategory(item->id) == CATEGORY_THROWN_LINE) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8CE4);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8CE4);
|
||||
}
|
||||
else
|
||||
{
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8CE8);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8CE8);
|
||||
}
|
||||
}
|
||||
}
|
||||
item->flags |= ITEM_FLAG_SET;
|
||||
if (((item->flags & ITEM_FLAG_STICKY)) && (param_2 != 0)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8BE0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -171,14 +131,14 @@ void HandleUnsetItemAction(Entity *entity,bool8 enableMessage)
|
||||
if (((item->flags & ITEM_FLAG_EXISTS)) && ((item->flags & ITEM_FLAG_SET))) {
|
||||
if ((item->flags & ITEM_FLAG_STICKY)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gItemStickyCannotEquip);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gItemStickyCannotEquip);
|
||||
return;
|
||||
}
|
||||
item->flags &= ~(ITEM_FLAG_SET);
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item);
|
||||
PlaySoundEffect(0x133);
|
||||
if (enableMessage) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8D20);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8D20);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -207,7 +167,7 @@ void HandleGiveItemAction(Entity *param_1)
|
||||
|
||||
if ((!bVar3) && ((item->flags & (ITEM_FLAG_STICKY | ITEM_FLAG_SET)) == (ITEM_FLAG_STICKY | ITEM_FLAG_SET))) {
|
||||
sub_8045BF8(gFormatBuffer_Items[1],item);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gItemStickyCannotMove2);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gItemStickyCannotMove2);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -215,7 +175,7 @@ void HandleGiveItemAction(Entity *param_1)
|
||||
if (((info2->heldItem).flags & ITEM_FLAG_EXISTS)) {
|
||||
if (((info2->heldItem).flags & ITEM_FLAG_STICKY)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[1],&info2->heldItem);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gItemStickyCannotMove1);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gItemStickyCannotMove1);
|
||||
return;
|
||||
}
|
||||
item1 = (info2->heldItem);
|
||||
@@ -233,9 +193,9 @@ void HandleGiveItemAction(Entity *param_1)
|
||||
sub_8045BF8(gFormatBuffer_Items[0],&item2);
|
||||
sub_8045BF8(gFormatBuffer_Items[1],&item1);
|
||||
PlaySoundEffect(0x14d);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gMonTookAndReturnedItem);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gMonTookAndReturnedItem);
|
||||
if ((item2.flags & ITEM_FLAG_STICKY)) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8BE0);
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -245,9 +205,9 @@ void HandleGiveItemAction(Entity *param_1)
|
||||
info2->heldItem = item3;
|
||||
sub_8045BF8(gFormatBuffer_Items[0],&item3);
|
||||
PlaySoundEffect(0x14d);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8D44);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8D44);
|
||||
if ((item3.flags & ITEM_FLAG_STICKY)) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8BE0);
|
||||
}
|
||||
}
|
||||
sub_806A6E8(entity);
|
||||
@@ -272,13 +232,13 @@ void HandleTakeItemAction(Entity *param_1)
|
||||
info = GetEntInfo(entity);
|
||||
heldItem = &info->heldItem;
|
||||
if (ItemExists(&gTeamInventoryRef->teamItems[ITEM_POWER_BAND])) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8D60);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8D60);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ItemSticky(heldItem)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],heldItem);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8BE0);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -289,7 +249,7 @@ void HandleTakeItemAction(Entity *param_1)
|
||||
ZeroOutItem(heldItem);
|
||||
AddItemToInventory(&item);
|
||||
PlaySoundEffect(0x14d);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8D7C);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8D7C);
|
||||
sub_806A6E8(entity);
|
||||
if (sub_80706A4(entity,&entity->pos) != 0) {
|
||||
WarpTarget(param_1,entity,0,0);
|
||||
@@ -317,11 +277,11 @@ void sub_8066BD4(Entity *param_1)
|
||||
if (heldItem->flags & ITEM_FLAG_STICKY)
|
||||
{
|
||||
sub_8045BF8(gFormatBuffer_Items[0],heldItem);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8BE0);
|
||||
}
|
||||
else if ((item->flags & (ITEM_FLAG_STICKY | ITEM_FLAG_SET)) == (ITEM_FLAG_STICKY | ITEM_FLAG_SET)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8BE0);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -334,7 +294,7 @@ void sub_8066BD4(Entity *param_1)
|
||||
info->heldItem = *item;
|
||||
*item = temp;
|
||||
PlaySoundEffect(0x14d);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80F8DB4);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80F8DB4);
|
||||
if (sub_80706A4(entity,&entity->pos) != 0) {
|
||||
WarpTarget(param_1,entity,0,0);
|
||||
}
|
||||
@@ -360,37 +320,37 @@ void HandlePlaceItemAction(Entity *entity)
|
||||
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item);
|
||||
if (info->action.actionParameters[0].actionUseIndex == 0x80) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8DE0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8DE0);
|
||||
}
|
||||
else if (info->action.actionParameters[0].actionUseIndex < 0x15 && (item->flags & (ITEM_FLAG_STICKY | ITEM_FLAG_SET)) == (ITEM_FLAG_STICKY | ITEM_FLAG_SET)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8BE0);
|
||||
}
|
||||
else if (info->action.actionParameters[0].actionUseIndex == 0x81 && (item->flags & ITEM_FLAG_STICKY)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8BE0);
|
||||
}
|
||||
else {
|
||||
const Tile *tile = GetTile(entity->pos.x, entity->pos.y);
|
||||
if ((tile->terrainType & TERRAIN_TYPE_STAIRS)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8E04);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8E04);
|
||||
}
|
||||
else if (GetTerrainType(tile) != TERRAIN_TYPE_NORMAL) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8E04);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8E04);
|
||||
}
|
||||
else if (tile->object != NULL) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8E04);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8E04);
|
||||
}
|
||||
else {
|
||||
item->flags &= ~(ITEM_FLAG_SET);
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item);
|
||||
if (AddItemToDungeonAt(&entity->pos,item,1) == 0) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8E04);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8E04);
|
||||
}
|
||||
else {
|
||||
ZeroOutItem(item);
|
||||
FillInventoryGaps();
|
||||
PlaySoundEffect(0x14d);
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],entity,0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8E28);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8E28);
|
||||
sub_807AB38(entity,gDungeon->forceMonsterHouse);
|
||||
}
|
||||
}
|
||||
@@ -405,20 +365,20 @@ void sub_8066E14(Entity *entity)
|
||||
item[1] = sub_8044D90(entity,1,6);
|
||||
|
||||
if (info->action.actionParameters[0].actionUseIndex != 0x80) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8E2C);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8E2C);
|
||||
}
|
||||
else if (info->action.actionParameters[1].actionUseIndex < 0x15 && (item[1]->flags & ITEM_FLAG_SET) && (item[1]->flags & ITEM_FLAG_STICKY)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item[1]);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gUnknown_80F8BE0);
|
||||
}
|
||||
else if (info->action.actionParameters[1].actionUseIndex == 0x81 && ItemSticky(item[1])) {
|
||||
sub_8045BF8(gFormatBuffer_Items[1],item[1]);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gItemStickyCannotMove3);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gItemStickyCannotMove3);
|
||||
}
|
||||
else {
|
||||
const Tile *tile = GetTile((entity->pos).x,(entity->pos).y);
|
||||
if (tile->object != NULL && GetEntityType(tile->object) != ENTITY_ITEM) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gNoExchangesHere);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gNoExchangesHere);
|
||||
}
|
||||
else {
|
||||
Item newItems[2];
|
||||
@@ -431,7 +391,7 @@ void sub_8066E14(Entity *entity)
|
||||
RemoveItemFromDungeonAt(&info->action.actionParameters[0].itemPos,1);
|
||||
ZeroOutItem(item[1]);
|
||||
if (!AddItemToDungeonAt(&info->action.actionParameters[0].itemPos,&newItems[1],1)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gNothingCanBePutDownHere);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gNothingCanBePutDownHere);
|
||||
}
|
||||
else {
|
||||
if (info->action.actionParameters[1].actionUseIndex == 0x81) {
|
||||
@@ -445,7 +405,7 @@ void sub_8066E14(Entity *entity)
|
||||
sub_8045BF8(gFormatBuffer_Items[0],&newItems[1]);
|
||||
sub_8045BF8(gFormatBuffer_Items[1],&newItems[0]);
|
||||
PlaySoundEffect(0x14d);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gSwappedGroundItem);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gSwappedGroundItem);
|
||||
sub_807AB38(entity,gDungeon->forceMonsterHouse);
|
||||
}
|
||||
}
|
||||
@@ -462,13 +422,13 @@ void sub_8066FA4(Entity *entity)
|
||||
sub_8045BF8(gFormatBuffer_Items[0],item[0]);
|
||||
if (info->action.actionParameters[0].actionUseIndex < 0x15 && (item[0]->flags & ITEM_FLAG_SET) && (item[0]->flags & ITEM_FLAG_STICKY)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[1],item[0]);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gItemStickyCannotMove3);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gItemStickyCannotMove3);
|
||||
}
|
||||
else if (info->action.actionParameters[0].actionUseIndex == 0x81 && ItemSticky(item[0])) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gItemStickyCannotMove2);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gItemStickyCannotMove2);
|
||||
}
|
||||
else if (tile->object != NULL && GetEntityType(tile->object) != ENTITY_ITEM) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gNoExchangesHere);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gNoExchangesHere);
|
||||
}
|
||||
else {
|
||||
Item newItems[2];
|
||||
@@ -483,7 +443,7 @@ void sub_8066FA4(Entity *entity)
|
||||
RemoveItemFromDungeonAt(&entity->pos,1);
|
||||
ZeroOutItem(item[0]);
|
||||
if (!AddItemToDungeonAt(&entity->pos, &newItems[0],1)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gNothingCanBePutDownHere);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gNothingCanBePutDownHere);
|
||||
}
|
||||
else {
|
||||
if (info->action.actionParameters[0].actionUseIndex == 0x81) {
|
||||
@@ -494,7 +454,7 @@ void sub_8066FA4(Entity *entity)
|
||||
}
|
||||
FillInventoryGaps();
|
||||
PlaySoundEffect(0x14d);
|
||||
LogMessageByIdWithPopupCheckUser(entity,*gSwappedGroundItem);
|
||||
LogMessageByIdWithPopupCheckUser(entity,gSwappedGroundItem);
|
||||
sub_807AB38(entity,gDungeon->forceMonsterHouse);
|
||||
}
|
||||
}
|
||||
@@ -537,16 +497,16 @@ void sub_80671A0(Entity *entity)
|
||||
|
||||
if (info->action.actionParameters[0].actionUseIndex == 0x81 && ItemSticky(item)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0], item);
|
||||
LogMessageByIdWithPopupCheckUser(entity, *gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(entity, gUnknown_80F8BE0);
|
||||
sub_803E708(0x14, 0x4C);
|
||||
}
|
||||
else if ((GetItemCategory(item->id) == CATEGORY_THROWN_LINE || GetItemCategory(item->id) == CATEGORY_THROWN_ARC) && ItemSticky(item)) {
|
||||
sub_8045BF8(gFormatBuffer_Items[0], item);
|
||||
LogMessageByIdWithPopupCheckUser(entity, *gUnknown_80F8BE0);
|
||||
LogMessageByIdWithPopupCheckUser(entity, gUnknown_80F8BE0);
|
||||
sub_803E708(0x14, 0x4C);
|
||||
}
|
||||
else if (ShouldMonsterRunAwayAndShowEffect(entity, TRUE)) {
|
||||
LogMessageByIdWithPopupCheckUser(entity, *gUnknown_80FF76C);
|
||||
LogMessageByIdWithPopupCheckUser(entity, gUnknown_80FF76C);
|
||||
sub_803E708(0x14, 0x4C);
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -11,12 +11,11 @@
|
||||
#include "dungeon_generation.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "dungeon_pokemon_attributes.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "pokemon.h"
|
||||
#include "items.h"
|
||||
#include "structs/str_item_text.h"
|
||||
|
||||
extern u8 *gUnknown_80F91EC[];
|
||||
extern u8 *gUnknown_80F7C50[];
|
||||
extern u8 gUnknown_80F697C[];
|
||||
extern s16 gSpeedTurns[2][0x19];
|
||||
|
||||
@@ -192,14 +191,14 @@ bool8 sub_8044B84(void)
|
||||
const u8 *sub_8044BA8(u16 actionId, u8 id)
|
||||
{
|
||||
if (actionId == ACTION_STAIRS && GetFloorType() == FLOOR_TYPE_RESCUE) {
|
||||
return *gUnknown_80F91EC;
|
||||
return gUnknown_80F91EC;
|
||||
}
|
||||
else {
|
||||
if (!AreStringsDifferent(gUnknown_80F7C50[actionId << 1], gUnknown_80F697C)) {
|
||||
if (!AreStringsDifferent(gUnknown_80F7C50[actionId].str, gUnknown_80F697C)) {
|
||||
return gActions[GetItemActionType(id)].useText;
|
||||
}
|
||||
else {
|
||||
return gUnknown_80F7C50[actionId << 1];
|
||||
return gUnknown_80F7C50[actionId].str;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
3167
src/dungeon_boss_dialogue.c
Normal file
3167
src/dungeon_boss_dialogue.c
Normal file
File diff suppressed because it is too large
Load Diff
@@ -17,6 +17,7 @@
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_map.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_ai_targeting.h"
|
||||
#include "string_format.h"
|
||||
#include "items.h"
|
||||
@@ -32,26 +33,11 @@
|
||||
extern SpriteOAM gUnknown_202EDC0;
|
||||
|
||||
extern const s32 gUnknown_810A3F0[];
|
||||
extern const u8 *gUnknown_80FA408[];
|
||||
extern const u8 *gUnknown_810531C[];
|
||||
extern const u8 *gUnknown_8105360[];
|
||||
extern const u8 *gUnknown_81053A8[];
|
||||
extern const u8 *gUnknown_8105434[];
|
||||
extern const u8 *gPickedUpItemToolbox[];
|
||||
extern const u8 *gMonTerrifiedCouldntPickUpItem[];
|
||||
extern const u8 *gPickedUpItem2[];
|
||||
extern const u8 *gMonCouldntPickUpItem[];
|
||||
extern const u8 *gPickedUpItem[];
|
||||
extern const u8 *gMonSteppedOnItem[];
|
||||
extern const u8 *const gUnknown_80FED30;
|
||||
extern const DungeonPos gUnknown_80F4468[];
|
||||
extern const u8 *const gItemFellOnGround;
|
||||
extern const u8 *const gItemLost;
|
||||
extern const u8 *const gItemFellOutOfSight;
|
||||
extern const u8 *const gItemFellInWater;
|
||||
extern const u8 *const gItemBuried;
|
||||
extern const u8 *gSeveralItemsLost;
|
||||
extern const u8 *gAllItemsLost;
|
||||
|
||||
extern void sub_80416E0(PixelPos *r0, u32, bool8);
|
||||
extern void sub_80855E4(void *);
|
||||
@@ -197,7 +183,7 @@ void PickUpItemFromPos(struct DungeonPos *pos, bool8 printMsg)
|
||||
}
|
||||
sub_8045BF8(gFormatBuffer_Items[0],tileItem);
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],leader,0);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gMonSteppedOnItem);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gMonSteppedOnItem);
|
||||
}
|
||||
else if (ShouldMonsterRunAwayAndShowEffect(leader,1)) {
|
||||
if (!printMsg) {
|
||||
@@ -205,14 +191,14 @@ void PickUpItemFromPos(struct DungeonPos *pos, bool8 printMsg)
|
||||
}
|
||||
sub_8045BF8(gFormatBuffer_Items[0],tileItem);
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],leader,0);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gMonTerrifiedCouldntPickUpItem);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gMonTerrifiedCouldntPickUpItem);
|
||||
}
|
||||
else if (GetItemCategory(tileItem->id) == CATEGORY_POKE) {
|
||||
PlaySoundEffect(0x14c);
|
||||
AddToTeamMoney(GetMoneyValue(tileItem));
|
||||
sub_8045BF8(gFormatBuffer_Items[0],tileItem);
|
||||
RemoveItemFromDungeonAt(pos,TRUE);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gPickedUpItem);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gPickedUpItem);
|
||||
TryDisplayItemPickupTutorialMessage(tileItem->id);
|
||||
}
|
||||
else {
|
||||
@@ -281,10 +267,10 @@ void PickUpItemFromPos(struct DungeonPos *pos, bool8 printMsg)
|
||||
RemoveItemFromDungeonAt(pos,TRUE);
|
||||
PlaySoundEffect(0x14a);
|
||||
if (inventoryIds[index] < 0) {
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gPickedUpItem2);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gPickedUpItem2);
|
||||
}
|
||||
else {
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gPickedUpItemToolbox);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gPickedUpItemToolbox);
|
||||
}
|
||||
TryDisplayItemPickupTutorialMessage(tileItem->id);
|
||||
return;
|
||||
@@ -302,7 +288,7 @@ void PickUpItemFromPos(struct DungeonPos *pos, bool8 printMsg)
|
||||
}
|
||||
sub_8045BF8(gFormatBuffer_Items[0],tileItem);
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],leader,0);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gMonSteppedOnItem);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gMonSteppedOnItem);
|
||||
}
|
||||
else {
|
||||
PlaySoundEffect(0x14a);
|
||||
@@ -310,16 +296,16 @@ void PickUpItemFromPos(struct DungeonPos *pos, bool8 printMsg)
|
||||
leaderInfo->heldItem = *tileItem;
|
||||
sub_8045BF8(gFormatBuffer_Items[0],tileItem);
|
||||
RemoveItemFromDungeonAt(pos,TRUE);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gPickedUpItem2);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gPickedUpItem2);
|
||||
}
|
||||
else if (AddItemToInventory(tileItem) != 0) {
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],leader,0);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gMonCouldntPickUpItem);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gMonCouldntPickUpItem);
|
||||
}
|
||||
else {
|
||||
sub_8045BF8(gFormatBuffer_Items[0],tileItem);
|
||||
RemoveItemFromDungeonAt(pos,TRUE);
|
||||
LogMessageByIdWithPopupCheckUser(leader,*gPickedUpItemToolbox);
|
||||
LogMessageByIdWithPopupCheckUser(leader,gPickedUpItemToolbox);
|
||||
}
|
||||
TryDisplayItemPickupTutorialMessage(tileItem->id);
|
||||
}
|
||||
@@ -759,7 +745,7 @@ void sub_8046D20(void)
|
||||
cVar1 = gDungeon->unk8;
|
||||
gDungeon->unk8 = sub_8046D70();
|
||||
if (((gDungeon->unk8 == 1) && (cVar1 == 0)) &&
|
||||
(DisplayDungeonYesNoMessage(0, *gUnknown_80FA408, 1) == 1)) {
|
||||
(DisplayDungeonYesNoMessage(0, gUnknown_80FA408, 1) == 1)) {
|
||||
gDungeon->unk4 = 1;
|
||||
gDungeon->unk11 = 2;
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_submenu.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "dungeon_visibility.h"
|
||||
#include "input.h"
|
||||
@@ -51,15 +52,6 @@ extern s32 ActionToDungeonSubMenuId(u16 param_1);
|
||||
extern s32 gDungeonSubMenuItemsCount;
|
||||
extern MenuInputStruct gDungeonMenu;
|
||||
|
||||
extern const u8 *const gUnknown_80FE978;
|
||||
extern const u8 *const gUnknown_80FDFE8;
|
||||
extern const u8 *const gUnknown_80F8B40;
|
||||
extern const u8 *const gUnknown_80F8B64;
|
||||
extern const u8 *const gUnknown_80F8BB4;
|
||||
extern const u8 *const gUnknown_80F8B88;
|
||||
extern const u8 *const gUnknown_80FDF70;
|
||||
extern const u8 *const gUnknown_80FDF00;
|
||||
|
||||
static void ShowMovesMenuWindows(Entity *entity, EntityInfo *entInfo, u8 a2, WindowTemplates *windows, WindowHeader *header, u8 *arg5, s32 arg6, s32 arg7);
|
||||
static void AddMovesSubMenuOptions(Entity *entity, bool8 addLinkOptions, bool8 addUseMove);
|
||||
static void SetSubMenuOptionAction(ActionContainer *a0, s32 a1, s32 a2);
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
#include "dungeon_message.h"
|
||||
#include "dungeon_message_log.h"
|
||||
#include "dungeon_music.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_submenu.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "game_options.h"
|
||||
@@ -37,35 +38,6 @@ extern u16 GetLeaderActionId(void);
|
||||
|
||||
extern MenuInputStruct gDungeonMenu;
|
||||
|
||||
extern const u8 *const gUnknown_80FEBF8;
|
||||
extern const u8 *const gUnknown_80FEC28;
|
||||
extern const u8 *const gUnknown_80FDE6C;
|
||||
extern const u8 *const gUnknown_80FDEB8;
|
||||
extern const u8 *const gUnknown_80FEA44;
|
||||
extern const u8 *const gUnknown_80FEA50;
|
||||
extern const u8 *const gUnknown_80FEA28;
|
||||
extern const u8 *const gUnknown_80FEA10;
|
||||
extern const u8 *const gUnknown_80FE9F8;
|
||||
extern const u8 *const gUnknown_80FE9E8;
|
||||
extern const u8 *const gUnknown_80FE9CC;
|
||||
extern const u8 *const gUnknown_80FE8F8;
|
||||
extern const u8 *const gUnknown_80FF770;
|
||||
extern const u8 *const gUnknown_80FE8F4;
|
||||
extern const u8 *const gGameOptionsTextPtr;
|
||||
extern const u8 *const gOptionsDungeonTextPtr;
|
||||
extern const u8 *const gOptionsOthersTextPtr;
|
||||
extern const u8 *const gUnknown_80FE748;
|
||||
extern const u8 *const gUnknown_80FE764;
|
||||
extern const u8 *const gUnknown_80FE7C0;
|
||||
extern const u8 *const gUnknown_80FE788;
|
||||
extern const u8 *const gUnknown_80FE7A8;
|
||||
extern const u8 *const gUnknown_80FE7E4;
|
||||
extern const u8 *const gUnknown_80FA61C;
|
||||
extern const u8 *const gUnknown_80FA5F4;
|
||||
extern const u8 *const gOptionsOthersTextPtr;
|
||||
extern const u8 *const gOptionsWindowColorPtr;
|
||||
extern const u8 *const gUnknown_80FF774[];
|
||||
|
||||
static void PrintOthersMenuOptions(void);
|
||||
static void ShowGameOptionsMenu(void);
|
||||
static void ShowQuickSaveGiveUpMenu(void);
|
||||
@@ -541,16 +513,6 @@ static void PrintOthersMenuOptions(void)
|
||||
sub_80073E0(0);
|
||||
}
|
||||
|
||||
struct Struct_80F7C50
|
||||
{
|
||||
const u8 *str;
|
||||
s32 val;
|
||||
};
|
||||
|
||||
// TODO: Fix this table in other file
|
||||
|
||||
extern const struct Struct_80F7C50 gUnknown_80F7C50[];
|
||||
|
||||
static void PrintQuickSaveMenuOptions(void)
|
||||
{
|
||||
s32 optionsCount, currOptionId;
|
||||
@@ -885,21 +847,6 @@ static bool8 UnknownOthersOption(void)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
enum
|
||||
{
|
||||
HINTS_CONTROLS,
|
||||
HINTS_ORIENTATION,
|
||||
HINTS_SEEDS,
|
||||
HINTS_MOVES,
|
||||
HINTS_RANGE,
|
||||
HINTS_LINKING_MOVES,
|
||||
HINTS_POKEMON_TYPES,
|
||||
HINTS_TOUCH_SCREEN,
|
||||
HINTS_COUNT,
|
||||
};
|
||||
|
||||
#define HINTS_COUNT_RED_VERSION HINTS_COUNT - 1 // No Touch Screen Hints in Red
|
||||
|
||||
static void ShowHintsMenu(void)
|
||||
{
|
||||
while (1) {
|
||||
@@ -981,15 +928,13 @@ static void PrintHintsMenu(void)
|
||||
DungeonShowWindows(&windows, TRUE);
|
||||
sub_80137B0(&gDungeonMenu, 0);
|
||||
sub_80073B8(0);
|
||||
PrintFormattedStringOnWindow(16, 0, gUnknown_80FF770, 0, '\0');
|
||||
PrintFormattedStringOnWindow(16, 0, gText_Hints, 0, '\0');
|
||||
for (i = 0; i < HINTS_COUNT_RED_VERSION; i++) {
|
||||
PrintFormattedStringOnWindow(8, GetMenuEntryYCoord(&gDungeonMenu, i), gUnknown_80FF774[i], 0, '\0');
|
||||
PrintFormattedStringOnWindow(8, GetMenuEntryYCoord(&gDungeonMenu, i), gHintsNames[i], 0, '\0');
|
||||
}
|
||||
sub_80073E0(0);
|
||||
}
|
||||
|
||||
extern const u8 *const gUnknown_80FF7EC[2][HINTS_COUNT];
|
||||
|
||||
static void ShowChosenHintWindow(s32 hintId)
|
||||
{
|
||||
bool8 unk9 = (gGameOptionsRef->unk9 != 0);
|
||||
@@ -1035,8 +980,8 @@ static void ShowChosenHintWindow(s32 hintId)
|
||||
gDungeonMenu.unkC = (gWindows[0].x + 19) * 8;
|
||||
gDungeonMenu.unkE = ((gWindows[0].y + 1) * 8) - 2;
|
||||
sub_80073B8(0);
|
||||
PrintFormattedStringOnWindow(16 + hintId * 8, 0, gUnknown_80FF774[hintId], 0, '\0');
|
||||
PrintFormattedStringOnWindow(8, 16, gUnknown_80FF7EC[unk9][hintId], 0, '\0');
|
||||
PrintFormattedStringOnWindow(16 + hintId * 8, 0, gHintsNames[hintId], 0, '\0');
|
||||
PrintFormattedStringOnWindow(8, 16, gHintsDescriptions[unk9][hintId], 0, '\0');
|
||||
sub_80073E0(0);
|
||||
|
||||
while (1) {
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "text_1.h"
|
||||
#include "text_2.h"
|
||||
#include "text_3.h"
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
void sub_80526D0(s32 r0);
|
||||
static bool8 sub_8052DC0(Entity *);
|
||||
@@ -424,55 +425,55 @@ void DisplayDungeonDialogue(const struct DungeonDialogueStruct *dialogueInfo)
|
||||
InlineStrcpy(gFormatBuffer_Monsters[1], "??");
|
||||
}
|
||||
|
||||
switch (dialogueInfo->unk4) {
|
||||
case 425:
|
||||
switch (dialogueInfo->speciesId) {
|
||||
case DIALOGUE_MONSTER_PLAYER:
|
||||
dialogueMonId = leaderId;
|
||||
sprintfStatic(gSpeakerNameBuffer, _("{COLOR YELLOW}%s{RESET}"), gFormatBuffer_Monsters);
|
||||
break;
|
||||
case 426:
|
||||
case DIALOGUE_MONSTER_PARTNER:
|
||||
dialogueMonId = partnerId;
|
||||
sprintfStatic(gSpeakerNameBuffer, _("{COLOR YELLOW}%s{RESET}"), gFormatBuffer_Monsters[1]);
|
||||
break;
|
||||
case 427:
|
||||
case DIALOGUE_MONSTER_NONE:
|
||||
dialogueMonId = MONSTER_NONE;
|
||||
InlineStrcpy(gSpeakerNameBuffer, _("{COLOR YELLOW}{SPEECH_BUBBLE}{RESET}"));
|
||||
break;
|
||||
default:
|
||||
dialogueMonId = dialogueInfo->unk4;
|
||||
dialogueMonId = dialogueInfo->speciesId;
|
||||
CopyYellowMonsterNametoBuffer(gSpeakerNameBuffer, dialogueMonId);
|
||||
break;
|
||||
}
|
||||
|
||||
if (dialogueInfo->unk0 == 2 || dialogueInfo->unk0 == 3) {
|
||||
if (dialogueInfo->type == 2 || dialogueInfo->type == 3) {
|
||||
InlineStrcpy(gSpeakerNameBuffer, _("{COLOR YELLOW}{SPEECH_BUBBLE}{RESET}"));
|
||||
}
|
||||
|
||||
while (1) {
|
||||
if (dialogueInfo->unk6 == 0)
|
||||
if (dialogueInfo->allowType == DIALOGUE_ALLOW_ALL)
|
||||
break;
|
||||
if (dialogueInfo->unk6 == 7 && (dialogueMonId == MONSTER_SQUIRTLE || dialogueMonId == MONSTER_TOTODILE))
|
||||
if (dialogueInfo->allowType == DIALOGUE_ONLY_SQUIRTLE_TOTODILE && (dialogueMonId == MONSTER_SQUIRTLE || dialogueMonId == MONSTER_TOTODILE))
|
||||
break;
|
||||
if (dialogueInfo->unk6 == 1 && (dialogueMonId == MONSTER_BULBASAUR || dialogueMonId == MONSTER_CYNDAQUIL || dialogueMonId == MONSTER_MUDKIP || dialogueMonId == MONSTER_PIKACHU || dialogueMonId == MONSTER_CHARMANDER || dialogueMonId == MONSTER_TREECKO))
|
||||
if (dialogueInfo->allowType == DIALOGUE_ALLOW_MOST && (dialogueMonId == MONSTER_BULBASAUR || dialogueMonId == MONSTER_CYNDAQUIL || dialogueMonId == MONSTER_MUDKIP || dialogueMonId == MONSTER_PIKACHU || dialogueMonId == MONSTER_CHARMANDER || dialogueMonId == MONSTER_TREECKO))
|
||||
break;
|
||||
if (dialogueInfo->unk6 == 280 && (dialogueMonId == MONSTER_TORCHIC || dialogueMonId == MONSTER_CHIKORITA))
|
||||
if (dialogueInfo->allowType == DIALOGUE_ONLY_TORCHIC_CHICORITA && (dialogueMonId == MONSTER_TORCHIC || dialogueMonId == MONSTER_CHIKORITA))
|
||||
break;
|
||||
dialogueInfo++;
|
||||
}
|
||||
|
||||
if (!gDungeon->unk181e8.blinded
|
||||
&& !gDungeon->unk181e8.hallucinating
|
||||
&& dialogueInfo->unk0 != 4
|
||||
&& dialogueInfo->unk2 != 0x80
|
||||
&& dialogueInfo->type != 4
|
||||
&& dialogueInfo->spriteId != 0x80
|
||||
&& dialogueMonId != MONSTER_NONE)
|
||||
{
|
||||
const struct Struct_sub_808CDB0 *strPtr = sub_808CDB0(dialogueInfo->unk3);
|
||||
const struct Struct_sub_808CDB0 *strPtr = sub_808CDB0(dialogueInfo->spritePlacementId);
|
||||
|
||||
monPortraitPtr = &monPortrait;
|
||||
monPortraitPtr->faceFile = GetDialogueSpriteDataPtr(dialogueMonId);
|
||||
if (monPortraitPtr->faceFile != NULL) {
|
||||
monPortraitPtr->faceData = (PortraitGfx *) monPortraitPtr->faceFile->data;
|
||||
monPortraitPtr->unkE = 0;
|
||||
monPortraitPtr->spriteId = dialogueInfo->unk2;
|
||||
monPortraitPtr->spriteId = dialogueInfo->spriteId;
|
||||
monPortraitPtr->flip = strPtr->flip;
|
||||
monPortraitPtr->pos.x = strPtr->pos.x;
|
||||
monPortraitPtr->pos.y = strPtr->pos.y;
|
||||
@@ -488,14 +489,14 @@ void DisplayDungeonDialogue(const struct DungeonDialogueStruct *dialogueInfo)
|
||||
sub_8052740(10);
|
||||
sub_803EAF0(2, NULL);
|
||||
sub_8052210(FALSE);
|
||||
CreateDialogueBoxAndPortrait(dialogueInfo->str, 0, monPortraitPtr, sUnknownDialogueFlags[dialogueInfo->unk0]);
|
||||
CreateDialogueBoxAndPortrait(dialogueInfo->str, 0, monPortraitPtr, sUnknownDialogueFlags[dialogueInfo->type]);
|
||||
PRINT_STRING_WAIT_PRESS(&chosenMenuIndex);
|
||||
|
||||
if (monPortraitPtr != NULL) {
|
||||
CloseFile(monPortraitPtr->faceFile);
|
||||
}
|
||||
|
||||
if (dialogueInfo->unk0 != 1 && dialogueInfo->unk0 != 3) {
|
||||
if (dialogueInfo->type != 1 && dialogueInfo->type != 3) {
|
||||
LoadDungeonMapPalette();
|
||||
sub_803EAF0(0, NULL);
|
||||
}
|
||||
@@ -616,31 +617,6 @@ static bool8 sub_8052DC0(Entity *entity)
|
||||
return sub_8045888(entity);
|
||||
}
|
||||
|
||||
struct TutorialFlagMsg
|
||||
{
|
||||
s32 flagId;
|
||||
const u8 *str;
|
||||
};
|
||||
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF020;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF080;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF0D8;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF13C;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF1B4;
|
||||
extern const struct TutorialFlagMsg gMovementTutorial;
|
||||
extern const struct TutorialFlagMsg gHungerTutorial;
|
||||
extern const struct TutorialFlagMsg gFoodTutorial;
|
||||
extern const struct TutorialFlagMsg gOranTutorial;
|
||||
extern const struct TutorialFlagMsg gCheriTutorial;
|
||||
extern const struct TutorialFlagMsg gBlastSeedTutorial;
|
||||
extern const struct TutorialFlagMsg gUnknown_80FF4A0;
|
||||
extern const struct TutorialFlagMsg gPechaTutorial;
|
||||
extern const struct TutorialFlagMsg gSleepSeedTutorial;
|
||||
extern const struct TutorialFlagMsg gMoneyTutorial;
|
||||
|
||||
extern const u8 *const gUnknown_80FF6F8;
|
||||
extern const u8 *const gUnknown_80FF6A4;
|
||||
|
||||
static inline bool32 DislayTutorialMsg(Entity *leader, const struct TutorialFlagMsg *tutorial, bool32 unkFunctionCall)
|
||||
{
|
||||
const u8 *str;
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "dungeon_move.h"
|
||||
#include "dungeon_pokemon_attributes.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_strings.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "dungeon_visibility.h"
|
||||
#include "math.h"
|
||||
@@ -317,50 +318,6 @@ static void SortTargets(Entity **targetsArray, Entity *attacker);
|
||||
|
||||
extern const s32 gUnknown_8106A50;
|
||||
extern const s32 gUnknown_8106A4C;
|
||||
extern const u8 *const gUnknown_80FEEA4;
|
||||
extern const u8 *const gUnknown_80FEEC8;
|
||||
extern const u8 *const gUnknown_80FEEEC;
|
||||
extern const u8 *const gUnknown_80FEF0C;
|
||||
extern const u8 *const gUnknown_80FEF30;
|
||||
extern const u8 *const gUnknown_80FEF4C;
|
||||
extern const u8 *const gUnknown_80FEF50;
|
||||
extern const u8 *const gUnknown_80FEF54;
|
||||
extern const u8 *const gUnknown_80FEF74;
|
||||
extern const u8 *const gUnknown_80FEF98;
|
||||
extern const u8 *const gUnknown_80FEFD0;
|
||||
extern const u8 *const gUnknown_80FECA4;
|
||||
extern const u8 *const gUnknown_80F9158;
|
||||
extern const u8 *const gUnknown_80FC72C;
|
||||
extern const u8 *const gUnknown_80FC700;
|
||||
extern const u8 *const gUnknown_80FC6D0;
|
||||
extern const u8 *const gUnknown_80FC710;
|
||||
extern const u8 *const gUnknown_80FC6FC;
|
||||
extern const u8 *const gUnknown_80FECBC;
|
||||
extern const u8 *const gUnknown_80FECE0;
|
||||
extern const u8 *const gUnknown_80F9688;
|
||||
extern const u8 *const gUnknown_80FC714;
|
||||
extern const u8 *const gUnknown_80FC718;
|
||||
extern const u8 *const gUnknown_80FC6A8;
|
||||
extern const u8 *const gUnknown_80FD2D0;
|
||||
extern const u8 *const gUnknown_80FD2DC;
|
||||
extern const u8 *const gUnknown_80F93C8;
|
||||
extern const u8 *const gUnknown_80FC690;
|
||||
extern const u8 *const gUnknown_80FC6A4;
|
||||
extern const u8 *const gUnknown_80FCD28;
|
||||
extern const u8 *const gUnknown_80FCD0C;
|
||||
extern const u8 *const gUnknown_80FDD88;
|
||||
extern const u8 *const gUnknown_80FDD20;
|
||||
extern const u8 *const gUnknown_80FDDA8;
|
||||
extern const u8 *const gUnknown_80FDD48;
|
||||
extern const u8 *const gUnknown_80FDDAC;
|
||||
extern const u8 *const gUnknown_80FC52C;
|
||||
extern const u8 *const gUnknown_80FC558;
|
||||
extern const u8 *const gUnknown_80FC574;
|
||||
extern const u8 *const gUnknown_8100524;
|
||||
extern const u8 *const gUnknown_80F9364;
|
||||
extern const u8 *const gUnknown_80F93A4;
|
||||
extern const u8 *const gUnknown_80F9384;
|
||||
extern const u8 *const gUnknown_80F9380;
|
||||
|
||||
EWRAM_DATA s32 gUnknown_202F208 = 0;
|
||||
EWRAM_DATA s32 gUnknown_202F20C = 0;
|
||||
|
||||
@@ -1,20 +1,8 @@
|
||||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "structs/str_item_text.h"
|
||||
#include "constants/trap.h"
|
||||
|
||||
struct Struct_80F7C50
|
||||
{
|
||||
const u8 *str;
|
||||
s32 val;
|
||||
};
|
||||
|
||||
struct TutorialFlagMsg
|
||||
{
|
||||
s32 flagId;
|
||||
const u8 *str;
|
||||
};
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
// TODO: Give proper names to the strings
|
||||
const ItemText gActions[] = {
|
||||
[0] = { _("{POKEMON_0} used\nthe {MOVE_ITEM_0}."), _("Use")},
|
||||
[1] = { _("{POKEMON_0} threw\nthe {MOVE_ITEM_0}."), _("Throw")},
|
||||
@@ -296,15 +284,15 @@ const u8 *const gUnknown_80F9764[] = {
|
||||
[20] = _("The recoil hit {POKEMON_1} for\n{VALUE_0} damage!"),
|
||||
};
|
||||
|
||||
const u8 *const gWeatherNames[] = {
|
||||
[0] = _("Clear"),
|
||||
[1] = _("Sunny"),
|
||||
[2] = _("Sandstorm"),
|
||||
[3] = _("Cloudy"),
|
||||
[4] = _("Rain"),
|
||||
[5] = _("Hail"),
|
||||
[6] = _("Fog"),
|
||||
[7] = _("Snow"),
|
||||
const u8 *const gWeatherNames[WEATHER_COUNT] = {
|
||||
[WEATHER_CLEAR] = _("Clear"),
|
||||
[WEATHER_SUNNY] = _("Sunny"),
|
||||
[WEATHER_SANDSTORM] = _("Sandstorm"),
|
||||
[WEATHER_CLOUDY] = _("Cloudy"),
|
||||
[WEATHER_RAIN] = _("Rain"),
|
||||
[WEATHER_HAIL] = _("Hail"),
|
||||
[WEATHER_FOG] = _("Fog"),
|
||||
[WEATHER_SNOW] = _("Snow"),
|
||||
};
|
||||
|
||||
const u8 *const gUnknown_80F9ACC = _("{POKEMON_0}'s HP went up {VALUE_0}!");
|
||||
@@ -829,7 +817,7 @@ const u8 *const gUnknown_80FD788 = _("A food item went bad.");
|
||||
const u8 *const gUnknown_80FD7AC = _("Several food items went bad.");
|
||||
const u8 *const gUnknown_80FD7D4 = _("Nothing particularly bad happened.");
|
||||
const u8 *const gUnknown_80FD7F4 = _("Stepped on something weird!");
|
||||
const u8 *const gUnknown_80FD7F8[] = {
|
||||
const u8 *const gSteppedOnTrapStrings[NUM_TRAPS] = {
|
||||
[0] = _("There was a {POKEMON_0} underfoot!"),
|
||||
[1] = _("Mud splashed up from the {POKEMON_0}!"),
|
||||
[2] = _("Stepped on a Sticky Trap!"),
|
||||
@@ -1102,35 +1090,40 @@ const u8 *const gUnknown_80FF6A4 = _("You've reached a destination floor!");
|
||||
const u8 *const gUnknown_80FF6F8 = _("You've reached a destination floor!\nBut the Pokémon you seek isn't here...");
|
||||
const u8 *const gUnknown_80FF730 = _("{MOVE_ITEM_0} was added to\n{POKEMON_0}'s list of usable tactics.");
|
||||
const u8 *const gUnknown_80FF76C = _("Items can't be thrown when a Pokémon's\nterrified!");
|
||||
const u8 *const gUnknown_80FF770 = _("Hints");
|
||||
const u8 *const gUnknown_80FF774[] = {
|
||||
[0] = _("Controls"),
|
||||
[1] = _("Orientation"),
|
||||
[2] = _("Seeds"),
|
||||
[3] = _("Moves"),
|
||||
[4] = _("Range"),
|
||||
[5] = _("Linking moves"),
|
||||
[6] = _("Pokémon types"),
|
||||
[7] = _("Touch Screen"),
|
||||
const u8 *const gText_Hints = _("Hints");
|
||||
|
||||
const u8 *const gHintsNames[HINTS_COUNT] = {
|
||||
[HINTS_CONTROLS] = _("Controls"),
|
||||
[HINTS_ORIENTATION] = _("Orientation"),
|
||||
[HINTS_SEEDS] = _("Seeds"),
|
||||
[HINTS_MOVES] = _("Moves"),
|
||||
[HINTS_RANGE] = _("Range"),
|
||||
[HINTS_LINKING_MOVES] = _("Linking moves"),
|
||||
[HINTS_POKEMON_TYPES] = _("Pokémon types"),
|
||||
[HINTS_TOUCH_SCREEN] = _("Touch Screen"),
|
||||
};
|
||||
|
||||
const u8 *const gUnknown_80FF7EC[] = {
|
||||
[0] = _("{L_BUTTON}+{A_BUTTON}: Use set move\n{L_BUTTON}+{B_BUTTON}: Display message log\n{L_BUTTON}+{R_BUTTON}: Throw set item\n{R_BUTTON}+{DPAD}: Move diagonally\n{SELECT_BUTTON}: Floor map\n{START_BUTTON}: Rotate mode\nSelect item/move + {START_BUTTON}: Description"),
|
||||
[1] = _("Avoid attacks by moving diagonally.\nKeeping {R_BUTTON} pressed, press\n{DPAD} to move only diagonally.\nIt's also crucial to change the direction\nyou're facing without taking a step.\nJust tap {R_BUTTON}!"),
|
||||
[2] = _("Seeds can be thrown.\nThey are usually for eating, but throw\nthem at foes to get the same effect.\nIf you have any Seeds you don't want\nto eat, try throwing them at foes.\nYou can also throw them at partners.\nIf they hit, their effects will be felt."),
|
||||
[3] = _("Normal-, Steel-, Poison-, Ground-,\nFlying-, Bug-, Rock-, Ghost-, and\nFighting-type moves are based on\nAttack and Defense. Fire-, Dark-,\nWater-, Grass-, Electric-, Ice-,\nPsychic-, and Dragon-type moves\nare based on Sp. Atk. and Sp. Def."),
|
||||
[4] = _("All moves have a range of effect.\nA move that affects a room, such as\nGrowl, reaches 2 tiles when in a\ncorridor. However, if the visibility is\nlimited to only 1 tile, the move's\nrange will be likewise restricted.\nCheck the descriptions of moves!"),
|
||||
[5] = _("Moves can be linked at the Gulpin Link\nShop or by using a Link Box.\nTwo moves can be linked and used\nsimultaneously.\nIf they're used even once in defeating\na foe, you will earn more Exp. Points,\nbut your Belly will go down faster, too."),
|
||||
[6] = _("There are seventeen types of Pokémon\nand moves: Normal, Fire, Water, Grass,\nElectric, Ice, Fighting, Poison, Ground,\nFlying, Psychic, Bug, Rock, Ghost,\nDragon, Dark, and Steel. All Pokémon\nhave one or two types that determine\nthe damage they take and give."),
|
||||
[7] = _("Press once: Push a foe to attack.\nTouch the floor to move. Advance text.\nCancel.\nPress twice: Use the set move.\nPress your Pokémon to move fast.\nKeep pressed to change directions\nwithout moving."),
|
||||
[8] = _("{L_BUTTON}+{A_BUTTON}: Use set move\n{L_BUTTON}+{B_BUTTON}: Display message log\n{L_BUTTON}+{R_BUTTON}: Throw set item\n{R_BUTTON}+{DPAD}: Move diagonally\n{NDS_Y_BUTTON}: Rotate mode\n{SELECT_BUTTON}: Floor map\nSelect item/move + {START_BUTTON}: Description"),
|
||||
[9] = _("Avoid attacks by moving diagonally.\nKeeping {R_BUTTON} pressed, press\n{DPAD} to move only diagonally.\nIt's crucial to change the direction\nyou're facing without taking a step.\nHold {NDS_Y_BUTTON} to do so.\n"),
|
||||
[10] = _("Seeds can be thrown.\nThey are usually for eating, but throw\nthem at foes to get the same effect.\nIf you have any Seeds you don't want\nto eat, try throwing them at foes.\nYou can also throw them at partners.\nIf they hit, their effects will be felt."),
|
||||
[11] = _("Normal-, Steel-, Poison-, Ground-,\nFlying-, Bug-, Rock-, Ghost-, and\nFighting-type moves are based on\nAttack and Defense. Fire-, Dark-,\nWater-, Grass-, Electric-, Ice-,\nPsychic-, and Dragon-type moves\nare based on Sp. Atk. and Sp. Def."),
|
||||
[12] = _("All moves have a range of effect.\nA move that affects a room, such as\nGrowl, reaches 2 tiles when in a\ncorridor. However, if the visibility is\nlimited to only 1 tile, the move's\nrange will be likewise restricted.\nCheck the descriptions of moves!"),
|
||||
[13] = _("Moves can be linked at the Gulpin Link\nShop or by using a Link Box.\nTwo moves can be linked and used\nsimultaneously.\nIf they're used even once in defeating\na foe, you will earn more Exp. Points,\nbut your Belly will go down faster, too."),
|
||||
[14] = _("There are seventeen types of Pokémon\nand moves: Normal, Fire, Water, Grass,\nElectric, Ice, Fighting, Poison, Ground,\nFlying, Psychic, Bug, Rock, Ghost,\nDragon, Dark, and Steel. All Pokémon\nhave one or two types that determine\nthe damage they take and give."),
|
||||
[15] = _("Touch once to attack a foe, walk,\nadvance text, cancel, or pick up \nan item off the ground.\nTouch twice to use the set move.\nTouch the leader twice to move fast.\nTouch and hold to change directions\nwithout taking a step."),
|
||||
const u8 *const gHintsDescriptions[2][HINTS_COUNT] = {
|
||||
[0] = {
|
||||
[HINTS_CONTROLS] = _("{L_BUTTON}+{A_BUTTON}: Use set move\n{L_BUTTON}+{B_BUTTON}: Display message log\n{L_BUTTON}+{R_BUTTON}: Throw set item\n{R_BUTTON}+{DPAD}: Move diagonally\n{SELECT_BUTTON}: Floor map\n{START_BUTTON}: Rotate mode\nSelect item/move + {START_BUTTON}: Description"),
|
||||
[HINTS_ORIENTATION] = _("Avoid attacks by moving diagonally.\nKeeping {R_BUTTON} pressed, press\n{DPAD} to move only diagonally.\nIt's also crucial to change the direction\nyou're facing without taking a step.\nJust tap {R_BUTTON}!"),
|
||||
[HINTS_SEEDS] = _("Seeds can be thrown.\nThey are usually for eating, but throw\nthem at foes to get the same effect.\nIf you have any Seeds you don't want\nto eat, try throwing them at foes.\nYou can also throw them at partners.\nIf they hit, their effects will be felt."),
|
||||
[HINTS_MOVES] = _("Normal-, Steel-, Poison-, Ground-,\nFlying-, Bug-, Rock-, Ghost-, and\nFighting-type moves are based on\nAttack and Defense. Fire-, Dark-,\nWater-, Grass-, Electric-, Ice-,\nPsychic-, and Dragon-type moves\nare based on Sp. Atk. and Sp. Def."),
|
||||
[HINTS_RANGE] = _("All moves have a range of effect.\nA move that affects a room, such as\nGrowl, reaches 2 tiles when in a\ncorridor. However, if the visibility is\nlimited to only 1 tile, the move's\nrange will be likewise restricted.\nCheck the descriptions of moves!"),
|
||||
[HINTS_LINKING_MOVES] = _("Moves can be linked at the Gulpin Link\nShop or by using a Link Box.\nTwo moves can be linked and used\nsimultaneously.\nIf they're used even once in defeating\na foe, you will earn more Exp. Points,\nbut your Belly will go down faster, too."),
|
||||
[HINTS_POKEMON_TYPES] = _("There are seventeen types of Pokémon\nand moves: Normal, Fire, Water, Grass,\nElectric, Ice, Fighting, Poison, Ground,\nFlying, Psychic, Bug, Rock, Ghost,\nDragon, Dark, and Steel. All Pokémon\nhave one or two types that determine\nthe damage they take and give."),
|
||||
[HINTS_TOUCH_SCREEN] = _("Press once: Push a foe to attack.\nTouch the floor to move. Advance text.\nCancel.\nPress twice: Use the set move.\nPress your Pokémon to move fast.\nKeep pressed to change directions\nwithout moving."),
|
||||
},
|
||||
[1] = {
|
||||
[HINTS_CONTROLS] = _("{L_BUTTON}+{A_BUTTON}: Use set move\n{L_BUTTON}+{B_BUTTON}: Display message log\n{L_BUTTON}+{R_BUTTON}: Throw set item\n{R_BUTTON}+{DPAD}: Move diagonally\n{NDS_Y_BUTTON}: Rotate mode\n{SELECT_BUTTON}: Floor map\nSelect item/move + {START_BUTTON}: Description"),
|
||||
[HINTS_ORIENTATION] = _("Avoid attacks by moving diagonally.\nKeeping {R_BUTTON} pressed, press\n{DPAD} to move only diagonally.\nIt's crucial to change the direction\nyou're facing without taking a step.\nHold {NDS_Y_BUTTON} to do so.\n"),
|
||||
[HINTS_SEEDS] = _("Seeds can be thrown.\nThey are usually for eating, but throw\nthem at foes to get the same effect.\nIf you have any Seeds you don't want\nto eat, try throwing them at foes.\nYou can also throw them at partners.\nIf they hit, their effects will be felt."),
|
||||
[HINTS_MOVES] = _("Normal-, Steel-, Poison-, Ground-,\nFlying-, Bug-, Rock-, Ghost-, and\nFighting-type moves are based on\nAttack and Defense. Fire-, Dark-,\nWater-, Grass-, Electric-, Ice-,\nPsychic-, and Dragon-type moves\nare based on Sp. Atk. and Sp. Def."),
|
||||
[HINTS_RANGE] = _("All moves have a range of effect.\nA move that affects a room, such as\nGrowl, reaches 2 tiles when in a\ncorridor. However, if the visibility is\nlimited to only 1 tile, the move's\nrange will be likewise restricted.\nCheck the descriptions of moves!"),
|
||||
[HINTS_LINKING_MOVES] = _("Moves can be linked at the Gulpin Link\nShop or by using a Link Box.\nTwo moves can be linked and used\nsimultaneously.\nIf they're used even once in defeating\na foe, you will earn more Exp. Points,\nbut your Belly will go down faster, too."),
|
||||
[HINTS_POKEMON_TYPES] = _("There are seventeen types of Pokémon\nand moves: Normal, Fire, Water, Grass,\nElectric, Ice, Fighting, Poison, Ground,\nFlying, Psychic, Bug, Rock, Ghost,\nDragon, Dark, and Steel. All Pokémon\nhave one or two types that determine\nthe damage they take and give."),
|
||||
[HINTS_TOUCH_SCREEN] = _("Touch once to attack a foe, walk,\nadvance text, cancel, or pick up \nan item off the ground.\nTouch twice to use the set move.\nTouch the leader twice to move fast.\nTouch and hold to change directions\nwithout taking a step."),
|
||||
}
|
||||
};
|
||||
|
||||
const u8 *const gUnknown_8100208 = _("Switch places with your teammate?\nThis will cause the teammate to warp.");
|
||||
|
||||
81
src/trap.c
81
src/trap.c
@@ -28,32 +28,7 @@
|
||||
#include "structs/str_806B7F8.h"
|
||||
#include "dungeon_config.h"
|
||||
#include "dungeon_misc.h"
|
||||
|
||||
extern u8 *gTrapNames[];
|
||||
extern u8 *gUnknown_80FC5FC[];
|
||||
extern u8 *gUnknown_80FC5F8[];
|
||||
extern u8 *gUnknown_80FDB5C[];
|
||||
extern u8 *gUnknown_80FDB7C[];
|
||||
extern u8 *gUnknown_80FD7F4[];
|
||||
extern u8 *gUnknown_80FD7F8[];
|
||||
extern u8 *gUnknown_80FDC18[];
|
||||
extern u8 *gUnknown_80FDC40[];
|
||||
extern u8 *gUnknown_80FDC7C[];
|
||||
extern u8 *gUnknown_80FD7AC[];
|
||||
extern u8 *gUnknown_80FD788[];
|
||||
extern u8 *gUnknown_80FD7D4[];
|
||||
extern u8 *gUnknown_80F970C[];
|
||||
extern u8 *gUnknown_80F9728[];
|
||||
extern u8 *gUnknown_80FED00[];
|
||||
extern u8 *gUnknown_80FED04[];
|
||||
extern u8 *gUnknown_80FED0C[];
|
||||
extern u8 *gUnknown_80FDAA0[];
|
||||
extern u8 *gUnknown_80FDA80[];
|
||||
extern u8 *gUnknown_80FDB04[];
|
||||
extern u8 *gUnknown_80FDB2C[];
|
||||
extern u8 *gUnknown_80FDAE4[];
|
||||
extern u8 *gUnknown_80FDACC[];
|
||||
extern u8 *gUnknown_80FED08[];
|
||||
#include "dungeon_strings.h"
|
||||
|
||||
extern u32 gUnknown_8106A4C;
|
||||
extern u32 gUnknown_8106A50;
|
||||
@@ -158,10 +133,10 @@ bool8 sub_807FD84(Entity *entity)
|
||||
gDungeon->unk13570 = 0;
|
||||
flag = LayTrap(&gDungeon->trapPos,gDungeon->trapID,gDungeon->unk13579);
|
||||
if (flag) {
|
||||
TryDisplayDungeonLoggableMessage5(entity,&gDungeon->trapPos,*gUnknown_80FC5F8); // A trap was laid!
|
||||
TryDisplayDungeonLoggableMessage5(entity,&gDungeon->trapPos,gUnknown_80FC5F8); // A trap was laid!
|
||||
}
|
||||
else {
|
||||
TryDisplayDungeonLoggableMessage5(entity,&gDungeon->trapPos,*gUnknown_80FC5FC); // A trap can't be laid here.
|
||||
TryDisplayDungeonLoggableMessage5(entity,&gDungeon->trapPos,gUnknown_80FC5FC); // A trap can't be laid here.
|
||||
}
|
||||
sub_8049ED4();
|
||||
}
|
||||
@@ -218,7 +193,7 @@ void HandleTrap(Entity *pokemon, DungeonPos *pos, int param_3, char param_4)
|
||||
s32 rand;
|
||||
Trap *trapData;
|
||||
Entity *target;
|
||||
u8 *text;
|
||||
const u8 *text;
|
||||
|
||||
tile = GetTileMut(pos->x,pos->y);
|
||||
entity = tile->object;
|
||||
@@ -241,13 +216,13 @@ void HandleTrap(Entity *pokemon, DungeonPos *pos, int param_3, char param_4)
|
||||
rand = DungeonRandInt(100);
|
||||
text = NULL;
|
||||
if (HasHeldItem(target, ITEM_TRAP_SCARF)) {
|
||||
text = *gUnknown_80FDB5C;
|
||||
text = gUnknown_80FDB5C;
|
||||
}
|
||||
if ((flag == TRUE) || (gDungeon->unk181e8.showInvisibleTrapsMonsters != 0)) {
|
||||
if (rand < 0) text = *gUnknown_80FDB7C;
|
||||
if (rand < 0) text = gUnknown_80FDB7C;
|
||||
}
|
||||
else if (rand < 0xf) {
|
||||
text = *gUnknown_80FDB7C;
|
||||
text = gUnknown_80FDB7C;
|
||||
}
|
||||
if (text != NULL) {
|
||||
if (sub_803F428(pos)) {
|
||||
@@ -264,10 +239,10 @@ void HandleTrap(Entity *pokemon, DungeonPos *pos, int param_3, char param_4)
|
||||
sub_8049ED4();
|
||||
sub_804225C(pokemon,pos,trapData->id);
|
||||
if (gDungeon->unk181e8.blinded) {
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80FD7F4);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gUnknown_80FD7F4);
|
||||
}
|
||||
else {
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,(gUnknown_80FD7F8)[trapData->id]);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gSteppedOnTrapStrings[trapData->id]);
|
||||
}
|
||||
}
|
||||
if (target != NULL) {
|
||||
@@ -387,7 +362,7 @@ void HandleStickyTrap(Entity *pokemon,Entity *target)
|
||||
|
||||
info = GetEntInfo(target);
|
||||
if (HasHeldItem(target,0xe)) {
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FDC7C);
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FDC7C);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -409,14 +384,14 @@ void HandleStickyTrap(Entity *pokemon,Entity *target)
|
||||
}
|
||||
|
||||
if (itemCount == 0) {
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FDC40);
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FDC40);
|
||||
}
|
||||
else {
|
||||
newIndex = DungeonRandInt(itemCount);
|
||||
sub_8045BF8(gFormatBuffer_Items[0], itemStack[newIndex]);
|
||||
itemStack[newIndex]->flags |= ITEM_FLAG_STICKY;
|
||||
sub_80421C0(target, 0x192);
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FDC18);
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FDC18);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -503,14 +478,14 @@ void HandleGrimyTrap(Entity *pokemon, Entity *target)
|
||||
}
|
||||
}
|
||||
if (badFoodCount == 1) {
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD788); // A food item went bad.
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FD788); // A food item went bad.
|
||||
}
|
||||
else if (badFoodCount == 0) {
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD7D4); // Nothing particularly bad happened.
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FD7D4); // Nothing particularly bad happened.
|
||||
}
|
||||
else
|
||||
{
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD7AC); // Several food items went bad
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FD7AC); // Several food items went bad
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -523,7 +498,7 @@ void HandlePitfallTrap(Entity *pokemon, Entity *target, Tile *tile)
|
||||
flag = FALSE;
|
||||
if (target != NULL) {
|
||||
if (IsBossFight()) {
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80FED0C); // But nothing happened...
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gUnknown_80FED0C); // But nothing happened...
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -543,16 +518,16 @@ void HandlePitfallTrap(Entity *pokemon, Entity *target, Tile *tile)
|
||||
gDungeon->unk2 = 2;
|
||||
return;
|
||||
}
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80F9728);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gUnknown_80F9728);
|
||||
}
|
||||
else
|
||||
{
|
||||
SubstitutePlaceholderStringTags(gFormatBuffer_Monsters[0],target,0);
|
||||
if (info->isNotTeamMember) {
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80F970C); // $m0 fell into the pitfall!
|
||||
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80F970C); // $m0 fell into the pitfall!
|
||||
}
|
||||
else {
|
||||
DisplayDungeonLoggableMessageTrue(pokemon,*gUnknown_80F970C); // $m0 fell into the pitfall!
|
||||
DisplayDungeonLoggableMessageTrue(pokemon,gUnknown_80F970C); // $m0 fell into the pitfall!
|
||||
}
|
||||
sub_8068FE0(target,0x215,pokemon);
|
||||
}
|
||||
@@ -604,11 +579,11 @@ void HandleSummonTrap(Entity *pokemon,DungeonPos *pos)
|
||||
sub_80421EC(pos,0x194);
|
||||
if (pokemonSummonCount == 0) {
|
||||
_ret:
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80FED04);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gUnknown_80FED04);
|
||||
}
|
||||
else
|
||||
{
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,*gUnknown_80FED00);
|
||||
LogMessageByIdWithPopupCheckUser(pokemon,gUnknown_80FED00);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -645,9 +620,9 @@ void HandlePPZeroTrap(Entity *param_1,Entity *param_2)
|
||||
flag = TRUE;
|
||||
}
|
||||
if(flag)
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,*gUnknown_80FDA80);
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,gUnknown_80FDA80);
|
||||
else
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,*gUnknown_80FDAA0);
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,gUnknown_80FDAA0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -685,9 +660,9 @@ void HandleSealTrap(Entity *param_1,Entity *param_2)
|
||||
flag = TRUE;
|
||||
}
|
||||
if(flag)
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,*gUnknown_80FDB04);
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,gUnknown_80FDB04);
|
||||
else
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,*gUnknown_80FDB2C);
|
||||
TryDisplayDungeonLoggableMessage3(param_1,param_2,gUnknown_80FDB2C);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -711,7 +686,7 @@ void HandlePokemonTrap(Entity *param_1,DungeonPos *pos)
|
||||
s32 range = gDungeon->unk181e8.visibilityRange;
|
||||
|
||||
if (IsBossFight()) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80FED08);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80FED08);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -773,10 +748,10 @@ void HandlePokemonTrap(Entity *param_1,DungeonPos *pos)
|
||||
}
|
||||
|
||||
if (counter != 0) {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80FDACC);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80FDACC);
|
||||
}
|
||||
else {
|
||||
LogMessageByIdWithPopupCheckUser(param_1,*gUnknown_80FDAE4);
|
||||
LogMessageByIdWithPopupCheckUser(param_1,gUnknown_80FDAE4);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user