Port evolution_scene

This commit is contained in:
PikalaxALT
2019-11-20 11:08:30 -05:00
parent 539ec639fd
commit e7cb5476c4
30 changed files with 1704 additions and 4663 deletions
+3 -3
View File
@@ -193,8 +193,8 @@ _0800F344: .4byte gBattleBgTemplates
_0800F348: .4byte gUnknown_8248330
thumb_func_end sub_800F324
thumb_func_start sub_800F34C
sub_800F34C: @ 800F34C
thumb_func_start InitBattleBgsVideo
InitBattleBgsVideo: @ 800F34C
push {lr}
movs r0, 0xC5
bl EnableInterrupts
@@ -215,7 +215,7 @@ sub_800F34C: @ 800F34C
bx r0
.align 2, 0
_0800F37C: .4byte 0x0000b040
thumb_func_end sub_800F34C
thumb_func_end InitBattleBgsVideo
thumb_func_start LoadBattleMenuWindowGfx
LoadBattleMenuWindowGfx: @ 800F380
+4 -4
View File
@@ -682,7 +682,7 @@ _080D77B8:
_080D77C8: .4byte 0x00000181
_080D77CC: .4byte gDisplayedStringBattle
_080D77D0:
ldr r1, _080D77F0 @ =gUnknown_83FDF3C
ldr r1, _080D77F0 @ =gBattleStringsTable
adds r0, r6, 0
subs r0, 0xC
lsls r0, 2
@@ -700,7 +700,7 @@ _080D77E2:
pop {r0}
bx r0
.align 2, 0
_080D77F0: .4byte gUnknown_83FDF3C
_080D77F0: .4byte gBattleStringsTable
thumb_func_end BufferStringBattle
thumb_func_start BattleStringExpandPlaceholdersToDisplayedString
@@ -2230,14 +2230,14 @@ _080D847C:
ldrb r0, [r0, 0x2]
lsls r0, 8
orrs r1, r0
ldr r0, _080D8494 @ =gUnknown_83FDF3C
ldr r0, _080D8494 @ =gBattleStringsTable
subs r1, 0xC
lsls r1, 2
adds r1, r0
ldr r1, [r1]
b _080D868E
.align 2, 0
_080D8494: .4byte gUnknown_83FDF3C
_080D8494: .4byte gBattleStringsTable
_080D8498:
ldrb r0, [r4, 0x1]
cmp r0, 0x2
File diff suppressed because it is too large Load Diff
+7 -7
View File
@@ -12790,7 +12790,7 @@ sub_8124EFC: @ 8124EFC
muls r5, r0
ldr r0, _08124F8C @ =gPlayerParty
adds r5, r0
bl sub_8138B2C
bl GetMoveSlotToReplace
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
@@ -14661,7 +14661,7 @@ _08125E80: .4byte sub_8125E84
sub_8125E84: @ 8125E84
push {r4,r5,lr}
sub sp, 0xC
bl sub_8138B2C
bl GetMoveSlotToReplace
lsls r0, 24
lsrs r2, r0, 24
ldr r4, _08125ED0 @ =gUnknown_203B0A0
@@ -14735,7 +14735,7 @@ sub_8125F14: @ 8125F14
ands r0, r1
cmp r0, 0
bne _08125F46
bl sub_8138B2C
bl GetMoveSlotToReplace
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -14783,7 +14783,7 @@ sub_8125F5C: @ 8125F5C
muls r6, r0
ldr r0, _08125FE8 @ =gPlayerParty
adds r6, r0
bl sub_8138B2C
bl GetMoveSlotToReplace
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
@@ -14848,7 +14848,7 @@ sub_8125FFC: @ 8125FFC
muls r5, r0
ldr r0, _08126060 @ =gPlayerParty
adds r5, r0
bl sub_8138B2C
bl GetMoveSlotToReplace
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -14908,14 +14908,14 @@ sub_812607C: @ 812607C
muls r4, r0
ldr r0, _081260D4 @ =gPlayerParty
adds r4, r0
bl sub_8138B2C
bl GetMoveSlotToReplace
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
bl RemoveMonPPBonus
ldrh r5, [r5, 0xE]
bl sub_8138B2C
bl GetMoveSlotToReplace
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
+3 -3
View File
@@ -8406,14 +8406,14 @@ sub_8138B20: @ 8138B20
_08138B28: .4byte gUnknown_203B16C
thumb_func_end sub_8138B20
thumb_func_start sub_8138B2C
sub_8138B2C: @ 8138B2C
thumb_func_start GetMoveSlotToReplace
GetMoveSlotToReplace: @ 8138B2C
ldr r0, _08138B34 @ =gUnknown_203B16E
ldrb r0, [r0]
bx lr
.align 2, 0
_08138B34: .4byte gUnknown_203B16E
thumb_func_end sub_8138B2C
thumb_func_end GetMoveSlotToReplace
thumb_func_start sub_8138B38
sub_8138B38: @ 8138B38
+1
View File
@@ -0,0 +1 @@
gCB2_AfterEvolution
+5 -5
View File
@@ -1797,7 +1797,7 @@ gUnknown_83FDDEB:: @ 83FDDEB
.string "$"
.align 2
gUnknown_83FDF3C:: @ 83FDF3C
gBattleStringsTable:: @ 83FDF3C
.4byte gUnknown_83FB219
.4byte gUnknown_83FB265
.4byte gUnknown_83FB28E
@@ -2448,21 +2448,21 @@ gTrappingMoves:: @ 83FE664
.2byte MOVE_SAND_TOMB
.2byte 0xFFFF
gUnknown_83FE672:: @ 83FE672
gText_PkmnIsEvolving:: @ 83FE672
.string "What?\n"
.string "{STR_VAR_1} is evolving!$"
gUnknown_83FE688:: @ 83FE688
gText_CongratsPkmnEvolved:: @ 83FE688
.string "Congratulations! Your {STR_VAR_1}\n"
.string "evolved into {STR_VAR_2}!{WAIT_SE}\p"
.string "$"
gUnknown_83FE6B5:: @ 83FE6B5
gText_PkmnStoppedEvolving:: @ 83FE6B5
.string "Huh? {STR_VAR_1}\n"
.string "stopped evolving!\p"
.string "$"
gUnknown_83FE6D0:: @ 83FE6D0
gText_EllipsisQuestionMark:: @ 83FE6D0
.string "?\p"
.string "$"
-33
View File
@@ -1,33 +0,0 @@
#include "constants/species.h"
#include "constants/items.h"
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_83F6C90:: @ 83F6C90
.incbin "baserom.gba", 0x3F6C90, 0x20
gUnknown_83F6CB0:: @ 83F6CB0
.incbin "baserom.gba", 0x3F6CB0, 0x6F8
gUnknown_83F73A8:: @ 83F73A8
.incbin "baserom.gba", 0x3F73A8, 0x4E4
gUnknown_83F788C:: @ 83F788C
.incbin "baserom.gba", 0x3F788C, 0x4D4
gUnknown_83F7D60:: @ 83F7D60
.incbin "baserom.gba", 0x3F7D60, 0x6A0
gUnknown_83F8400:: @ 83F8400
.incbin "baserom.gba", 0x3F8400, 0x40
gUnknown_83F8440:: @ 83F8440
.incbin "baserom.gba", 0x3F8440, 0x2D
gUnknown_83F846D:: @ 83F846D
.incbin "baserom.gba", 0x3F846D, 0x10
gUnknown_83F847D:: @ 83F847D
.incbin "baserom.gba", 0x3F847D, 0x323
+1 -1
View File
@@ -4517,7 +4517,7 @@ gUnknown_841E2F5:: @ 841E2F5
gUnknown_841E322:: @ 841E322
.string "{ID}$"
gUnknown_841E325:: @ 841E325
gText_CommunicationStandby5:: @ 841E325
.string "Communication standby$"
gDaycareText_GetAlongVeryWell:: @ 841E33C
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
+35
View File
@@ -0,0 +1,35 @@
JASC-PAL
0100
32
0 0 0
16 16 16
24 32 32
41 49 49
49 65 74
65 82 90
74 98 115
90 115 131
106 131 148
115 148 172
131 164 189
139 180 213
156 197 230
172 213 255
0 0 0
0 0 0
0 0 0
65 90 106
74 98 115
82 106 131
90 115 139
98 131 156
106 139 164
115 148 180
123 156 189
131 172 205
139 180 213
148 189 230
156 197 238
172 213 255
0 0 0
0 0 0
@@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
90 90 90
98 106 106
115 123 123
131 131 131
148 148 148
156 164 164
172 172 172
189 189 189
197 205 205
213 213 213
230 230 230
246 246 246
255 255 255
0 0 0
0 0 0
Binary file not shown.
+1 -1
View File
@@ -5,7 +5,7 @@
extern const struct BgTemplate gBattleBgTemplates[];
void sub_800F34C(void);
void InitBattleBgsVideo(void);
void DrawBattleEntryBackground(void);
void sub_800F6FC(u8 taskId);
void LoadBattleMenuWindowGfx(void);
+4
View File
@@ -83,4 +83,8 @@
// Shiny odds
#define SHINY_ODDS 8 // Actual probability is SHINY_ODDS/65536
// Learning moves
#define MON_ALREADY_KNOWS_MOVE 0xFFFE
#define MON_HAS_MAX_MOVES 0xFFFF
#endif // GUARD_CONSTANTS_POKEMON_H
+1 -1
View File
@@ -14,7 +14,7 @@
#define MON_DATA_OT_NAME 7
#define MON_DATA_MARKINGS 8
#define MON_DATA_CHECKSUM 9
#define MON_DATA_10 10
#define MON_DATA_ENCRYPT_SEPARATOR 10
#define MON_DATA_SPECIES 11
#define MON_DATA_HELD_ITEM 12
#define MON_DATA_MOVE1 13
+1 -1
View File
@@ -10,7 +10,7 @@ extern const u8 *const gNatureNamePointers[];
void ShowSelectMovePokemonSummaryScreen(struct Pokemon *, u8, u8, MainCallback, u16);
void ShowPokemonSummaryScreenSet40EF(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void));
u8 sub_8138B2C(void);
u8 GetMoveSlotToReplace(void);
void SummaryScreen_SetUnknownTaskId(u8 a0);
void SummaryScreen_DestroyUnknownTask(void);
+1
View File
@@ -253,6 +253,7 @@ extern s16 gSpriteCoordOffsetY;
extern const struct SpriteTemplate gDummySpriteTemplate;
extern struct Sprite gSprites[];
extern struct OamMatrix gOamMatrices[];
extern bool8 gAffineAnimsDisabled;
void ResetSpriteData(void);
void AnimateSprites(void);
+7 -1
View File
@@ -688,7 +688,7 @@ extern const u8 gText_XWillBeSentToY[];
extern const u8 gText_ByeByeVar1[];
extern const u8 gText_XSentOverY[];
extern const u8 gText_TakeGoodCareOfX[];
extern const u8 gUnknown_841E325[];
extern const u8 gText_CommunicationStandby5[];
extern const u8 gTradeText_Cancel[];
extern const u8 gTradeText_ChooseAPokemon[];
extern const u8 gTradeText_Summary[];
@@ -763,4 +763,10 @@ extern const u8 gText_DecimalPoint[];
// map_name_popup
extern const u8 gUnknown_841D18D[];
// evolution_scene
extern const u8 gText_PkmnIsEvolving[];
extern const u8 gText_CongratsPkmnEvolved[];
extern const u8 gText_EllipsisQuestionMark[];
extern const u8 gText_PkmnStoppedEvolving[];
#endif //GUARD_STRINGS_H
+3 -3
View File
@@ -7,11 +7,11 @@ void DoInGameTradeScene(void);
void DrawTextOnTradeWindow(u8 windowId, const u8 *str, s8 speed);
u16 GetInGameTradeSpeciesInfo(void);
u16 GetTradeSpecies(void);
void sub_805049C(void);
void sub_80504B0(void);
void InitTradeSequenceBgGpuRegs(void);
void LinkTradeDrawWindow(void);
void LoadTradeAnimGfx(void);
extern const u16 gUnknown_826601C[];
extern const struct WindowTemplate gUnknown_826D1CC;
extern const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate;
#endif //GUARD_TRADE_SCENE_H
+2 -2
View File
@@ -190,7 +190,7 @@ SECTIONS {
src/hof_pc.o(.text);
src/field_specials.o(.text);
src/battle_records.o(.text);
asm/evolution_scene.o(.text);
src/evolution_scene.o(.text);
src/coins.o(.text);
src/fldeff_strength.o(.text);
src/battle_transition.o(.text);
@@ -474,7 +474,7 @@ SECTIONS {
data/fldeff_flash.o(.rodata);
src/field_specials.o(.rodata);
src/battle_records.o(.rodata);
data/evolution_scene.o(.rodata);
src/evolution_scene.o(.rodata);
src/battle_transition.o(.rodata);
src/battle_controller_link_partner.o(.rodata);
data/battle_message.o(.rodata);
+2 -2
View File
@@ -696,7 +696,7 @@ static void CB2_InitBattleInternal(void)
gBattle_BG3_X = 0;
gBattle_BG3_Y = 0;
gBattleTerrain = BattleSetup_GetTerrainId();
sub_800F34C();
InitBattleBgsVideo();
LoadBattleTextboxAndBackground();
ResetSpriteData();
ResetTasks();
@@ -1774,7 +1774,7 @@ void sub_8011A1C(void)
gBattle_BG2_Y = 0;
gBattle_BG3_X = 0;
gBattle_BG3_Y = 0;
sub_800F34C();
InitBattleBgsVideo();
LoadCompressedPalette(gBattleTextboxPalette, 0, 64);
LoadBattleMenuWindowGfx();
ResetSpriteData();
+2 -2
View File
@@ -5045,7 +5045,7 @@ static void atk5A_yesnoboxlearnmove(void)
case 3:
if (!gPaletteFade.active && gMain.callback2 == BattleMainCB2)
{
u8 movePosition = sub_8138B2C();
u8 movePosition = GetMoveSlotToReplace();
if (movePosition == 4)
{
@@ -9629,7 +9629,7 @@ static void atkF2_displaydexinfo(void)
}
break;
case 3:
sub_800F34C();
InitBattleBgsVideo();
LoadBattleTextboxAndBackground();
gBattle_BG3_X = 0x100;
++gBattleCommunication[0];
File diff suppressed because it is too large Load Diff
+6 -6
View File
@@ -2899,7 +2899,7 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data)
struct PokemonSubstruct2 *substruct2 = NULL;
struct PokemonSubstruct3 *substruct3 = NULL;
if (field > MON_DATA_10)
if (field > MON_DATA_ENCRYPT_SEPARATOR)
{
substruct0 = &(GetSubstruct(boxMon, boxMon->personality, 0)->type0);
substruct1 = &(GetSubstruct(boxMon, boxMon->personality, 1)->type1);
@@ -2995,7 +2995,7 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data)
case MON_DATA_CHECKSUM:
retVal = boxMon->checksum;
break;
case MON_DATA_10:
case MON_DATA_ENCRYPT_SEPARATOR:
retVal = boxMon->unknown;
break;
case MON_DATA_SPECIES:
@@ -3236,7 +3236,7 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data)
break;
}
if (field > MON_DATA_10)
if (field > MON_DATA_ENCRYPT_SEPARATOR)
EncryptBoxMon(boxMon);
return retVal;
@@ -3323,7 +3323,7 @@ void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg)
struct PokemonSubstruct2 *substruct2 = NULL;
struct PokemonSubstruct3 *substruct3 = NULL;
if (field > MON_DATA_10)
if (field > MON_DATA_ENCRYPT_SEPARATOR)
{
substruct0 = &(GetSubstruct(boxMon, boxMon->personality, 0)->type0);
substruct1 = &(GetSubstruct(boxMon, boxMon->personality, 1)->type1);
@@ -3382,7 +3382,7 @@ void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg)
case MON_DATA_CHECKSUM:
SET16(boxMon->checksum);
break;
case MON_DATA_10:
case MON_DATA_ENCRYPT_SEPARATOR:
SET16(boxMon->unknown);
break;
case MON_DATA_SPECIES:
@@ -3582,7 +3582,7 @@ void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg)
break;
}
if (field > MON_DATA_10)
if (field > MON_DATA_ENCRYPT_SEPARATOR)
{
boxMon->checksum = CalculateBoxMonChecksum(boxMon);
EncryptBoxMon(boxMon);
+6 -6
View File
@@ -488,7 +488,7 @@ static const struct WindowTemplate gUnknown_826D1BC[] = {
}, DUMMY_WIN_TEMPLATE
};
const struct WindowTemplate gUnknown_826D1CC = {
const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate = {
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
@@ -881,7 +881,7 @@ void CB2_InitTradeAnim_LinkTrade(void)
break;
case 8:
LoadTradeMonPic(1, 1);
sub_80504B0();
LinkTradeDrawWindow();
gMain.state++;
break;
case 9:
@@ -899,7 +899,7 @@ void CB2_InitTradeAnim_LinkTrade(void)
gMain.state++;
break;
case 11:
sub_805049C();
InitTradeSequenceBgGpuRegs();
TradeBufferOTnameAndNicknames();
gMain.state++;
break;
@@ -922,13 +922,13 @@ void CB2_InitTradeAnim_LinkTrade(void)
UpdatePaletteFade();
}
void sub_805049C(void)
void InitTradeSequenceBgGpuRegs(void)
{
SetTradeSequenceBgGpuRegs(5);
SetTradeSequenceBgGpuRegs(0);
}
void sub_80504B0(void)
void LinkTradeDrawWindow(void)
{
FillWindowPixelBuffer(0, PIXEL_FILL(15));
PutWindowTilemap(0);
@@ -2552,7 +2552,7 @@ static void sub_8053E8C(void)
{
case 0:
gMain.state++;
StringExpandPlaceholders(gStringVar4, gUnknown_841E325);
StringExpandPlaceholders(gStringVar4, gText_CommunicationStandby5);
DrawTextOnTradeWindow(0, gStringVar4, 0);
break;
case 1:
+3 -4
View File
@@ -94,10 +94,9 @@ gUnknown_3005354: @ 3005354
.align 2
.include "field_specials.o"
gCB2_AfterEvolution: @ 300537C
.space 0x4
.align 2
.include "evolution_scene.o"
.align 2
.include "save.o"
.align 2
+2 -7
View File
@@ -421,13 +421,8 @@ gPlayerFacingPosition: @ 2039A04
.include "src/field_specials.o"
.align 2
.include "src/battle_records.o"
gUnknown_2039A20: @ 2039A20
.space 0x4
gUnknown_2039A24: @ 2039A24
.space 0x4
.align 2
.include "src/evolution_scene.o"
.align 2
.include "src/coins.o"
.align 2