merge overworld with master

This commit is contained in:
DizzyEggg
2018-02-15 12:41:32 +01:00
26 changed files with 2235 additions and 5957 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ cache:
apt: true apt: true
install: install:
- pushd $HOME - pushd $HOME
- travis_retry wget http://download.sourceforge.net/devkitpro/devkitARM_r46-x86_64-linux.tar.bz2 - travis_retry wget http://download.sourceforge.net/devkitpro/devkitARM_r47-x86_64-linux.tar.bz2
- tar xf devkitARM*.tar.bz2 - tar xf devkitARM*.tar.bz2
- travis_retry git clone https://github.com/pret/agbcc.git - travis_retry git clone https://github.com/pret/agbcc.git
- cd agbcc && ./build.sh && ./install.sh $TRAVIS_BUILD_DIR - cd agbcc && ./build.sh && ./install.sh $TRAVIS_BUILD_DIR
-93
View File
@@ -1,93 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start hm_prepare_rocksmash
hm_prepare_rocksmash: @ 8145DC4
push {r4,lr}
movs r0, 0x57
bl npc_before_player_of_type
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08145DD8
movs r0, 0
b _08145DF2
_08145DD8:
ldr r4, =gSpecialVar_Result
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
ldr r1, =gUnknown_03005DB0
ldr r0, =FieldCallback_Teleport
str r0, [r1]
ldr r1, =gUnknown_0203CEEC
ldr r0, =sub_8145E0C
str r0, [r1]
movs r0, 0x1
_08145DF2:
pop {r4}
pop {r1}
bx r1
.pool
thumb_func_end hm_prepare_rocksmash
thumb_func_start sub_8145E0C
sub_8145E0C: @ 8145E0C
push {lr}
bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
ldr r0, =FieryPath_EventScript_2908FD
bl ScriptContext1_SetupScript
pop {r0}
bx r0
.pool
thumb_func_end sub_8145E0C
thumb_func_start sub_8145E2C
sub_8145E2C: @ 8145E2C
push {lr}
bl oei_task_add
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r2, =sub_8145E74
lsrs r0, r2, 16
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
ldr r0, =gFieldEffectArguments
ldr r1, [r0]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
ldr r1, =gStringVar1
bl GetMonNickname
movs r0, 0
pop {r1}
bx r1
.pool
thumb_func_end sub_8145E2C
thumb_func_start sub_8145E74
sub_8145E74: @ 8145E74
push {lr}
movs r0, 0x28
bl FieldEffectActiveListRemove
bl EnableBothScriptContexts
pop {r0}
bx r0
thumb_func_end sub_8145E74
.align 2, 0 @ Don't pad with nop.
-220
View File
@@ -1,220 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start SetUpFieldMove_SweetScent
SetUpFieldMove_SweetScent: @ 8159EF0
ldr r1, =gUnknown_03005DB0
ldr r0, =FieldCallback_Teleport
str r0, [r1]
ldr r1, =gUnknown_0203CEEC
ldr r0, =hm2_sweet_scent
str r0, [r1]
movs r0, 0x1
bx lr
.pool
thumb_func_end SetUpFieldMove_SweetScent
thumb_func_start hm2_sweet_scent
hm2_sweet_scent: @ 8159F10
push {lr}
movs r0, 0x33
bl FieldEffectStart
bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
pop {r0}
bx r0
.pool
thumb_func_end hm2_sweet_scent
thumb_func_start FldEff_SweetScent
FldEff_SweetScent: @ 8159F2C
push {lr}
bl sub_80AC3D0
bl oei_task_add
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r2, =sub_8159F5C
lsrs r0, r2, 16
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
movs r0, 0
pop {r1}
bx r1
.pool
thumb_func_end FldEff_SweetScent
thumb_func_start sub_8159F5C
sub_8159F5C: @ 8159F5C
push {r4,r5,lr}
sub sp, 0x4
movs r0, 0xEC
bl PlaySE
ldr r5, =gPlttBufferUnfaded
ldr r1, =gPaletteDecompressionBuffer
movs r4, 0x80
lsls r4, 1
adds r0, r5, 0
adds r2, r4, 0
bl CpuFastSet
ldr r0, =gPlttBufferFaded
adds r1, r5, 0
adds r2, r4, 0
bl CpuFastSet
bl GetPlayerAvatarObjectId
ldr r2, =gSprites
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 4
adds r1, r0
lsls r1, 2
adds r1, r2
ldrb r1, [r1, 0x5]
lsrs r1, 4
adds r1, 0x10
movs r0, 0x1
lsls r0, r1
mvns r0, r0
movs r1, 0x1F
str r1, [sp]
movs r1, 0x4
movs r2, 0
movs r3, 0x8
bl BeginNormalPaletteFade
ldr r0, =sub_8159FEC
movs r1, 0
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
movs r0, 0
strh r0, [r1, 0x8]
movs r0, 0x33
bl FieldEffectActiveListRemove
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8159F5C
thumb_func_start sub_8159FEC
sub_8159FEC: @ 8159FEC
push {r4-r6,lr}
sub sp, 0x4
lsls r0, 24
lsrs r5, r0, 24
ldr r0, =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0
bne _0815A088
bl sub_81BE72C
movs r0, 0x40
movs r1, 0x8
movs r2, 0x1F
bl BlendPalettes
ldr r0, =gTasks
lsls r1, r5, 2
adds r1, r5
lsls r1, 3
adds r4, r1, r0
ldrh r1, [r4, 0x8]
movs r2, 0x8
ldrsh r0, [r4, r2]
cmp r0, 0x40
bne _0815A084
strh r6, [r4, 0x8]
bl SweetScentWildEncounter
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815A044
adds r0, r5, 0
bl DestroyTask
b _0815A088
.pool
_0815A044:
ldr r0, =sub_815A090
str r0, [r4]
bl GetPlayerAvatarObjectId
ldr r2, =gSprites
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 4
adds r1, r0
lsls r1, 2
adds r1, r2
ldrb r1, [r1, 0x5]
lsrs r1, 4
adds r1, 0x10
movs r0, 0x1
lsls r0, r1
mvns r0, r0
movs r1, 0x1F
str r1, [sp]
movs r1, 0x4
movs r2, 0x8
movs r3, 0
bl BeginNormalPaletteFade
bl sub_81BE6B8
b _0815A088
.pool
_0815A084:
adds r0, r1, 0x1
strh r0, [r4, 0x8]
_0815A088:
add sp, 0x4
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end sub_8159FEC
thumb_func_start sub_815A090
sub_815A090: @ 815A090
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _0815A0BE
ldr r0, =gPaletteDecompressionBuffer
ldr r1, =gPlttBufferUnfaded
movs r2, 0x80
lsls r2, 1
bl CpuFastSet
bl sub_80AC3E4
ldr r0, =EventScript_290CAE
bl ScriptContext1_SetupScript
adds r0, r4, 0
bl DestroyTask
_0815A0BE:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_815A090
.align 2, 0 @ Don't pad with nop.
-5477
View File
File diff suppressed because it is too large Load Diff
-141
View File
@@ -1,141 +0,0 @@
@ the second big chunk of data
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_082FECFC:: @ 82FECFC
.incbin "graphics/birch_speech/bg0.gbapal"
.incbin "graphics/birch_speech/bg1.gbapal"
.align 2
gBirchIntroShadowGfx:: @ 82FED3C
.incbin "graphics/birch_speech/shadow.4bpp.lz"
.align 2
gUnknown_082FEEF0:: @ 82FEEF0
.incbin "graphics/birch_speech/map.bin.lz"
.align 2
gUnknown_082FF018:: @ 82FF018
.incbin "graphics/birch_speech/bg2.gbapal"
.align 2
gUnknown_082FF028:: @ 82FF028
.space 16
.align 2
gUnknown_082FF038:: @ 82FF038
window_template 0x00, 0x02, 0x01, 0x1a, 0x02, 0x0f, 0x0001
window_template 0x00, 0x02, 0x05, 0x1a, 0x02, 0x0f, 0x0035
.align 2
gUnknown_082FF048:: @ 82FF048
window_template 0x00, 0x02, 0x01, 0x1a, 0x06, 0x0f, 0x0001
window_template 0x00, 0x02, 0x09, 0x1a, 0x02, 0x0f, 0x009d
window_template 0x00, 0x02, 0x0d, 0x1a, 0x02, 0x0f, 0x00d1
window_template 0x00, 0x02, 0x11, 0x1a, 0x02, 0x0f, 0x0105
window_template 0x00, 0x02, 0x15, 0x1a, 0x02, 0x0f, 0x0139
.align 2
gUnknown_082FF070:: @ 82FF070
window_template 0x00, 0x02, 0x0f, 0x1a, 0x04, 0x0f, 0x016d
null_window_template
.align 2
gUnknown_082FF080:: @ 82FF080
window_template 0x00, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x0001
.align 2
gUnknown_082FF088:: @ 82FF088
window_template 0x00, 0x03, 0x05, 0x06, 0x04, 0x0f, 0x006d
window_template 0x00, 0x03, 0x02, 0x09, 0x0a, 0x0f, 0x0085
null_window_template
.align 2
gMainMenuBgPal:: @ 82FF0A0
.incbin "graphics/misc/main_menu_bg.gbapal"
.align 2
gMainMenuTextPal:: @ 82FF0C0
.incbin "graphics/misc/main_menu_text.gbapal"
.align 2
gUnknown_082FF0E0:: @ 82FF0E0
.byte 0x0a, 0x0b, 0x0c
gUnknown_082FF0E3:: @ 82FF0E3
.byte 0x0a, 0x01, 0x0c
.align 2
gUnknown_082FF0E8:: @ 82FF0E8
.4byte 0x000001e8, 0x00003071
.align 2
gUnknown_082FF0F0:: @ 82FF0F0
.4byte 0x000001ec
.align 2
gUnknown_082FF0F4:: @ 82FF0F4
.byte 0x02, 0x78, 0x08, 0x03, 0x78, 0x98, 0x03, 0x00, 0x04, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00
.align 2
gUnknown_082FF104:: @ 82FF104
.2byte 0xfffe, 0xfffe, 0x3000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
gUnknown_082FF114:: @ 82FF114
.4byte gUnknown_082FF104
.align 2
gUnknown_082FF118:: @ 82FF118
.4byte gText_BirchBoy, 0x00000000
.4byte gText_BirchGirl, 0x00000000
.align 2
gMalePresetNames:: @ 82FF128
.4byte gText_DefaultNameStu
.4byte gText_DefaultNameMilton
.4byte gText_DefaultNameTom
.4byte gText_DefaultNameKenny
.4byte gText_DefaultNameReid
.4byte gText_DefaultNameJude
.4byte gText_DefaultNameJaxson
.4byte gText_DefaultNameEaston
.4byte gText_DefaultNameWalker
.4byte gText_DefaultNameTeru
.4byte gText_DefaultNameJohnny
.4byte gText_DefaultNameBrett
.4byte gText_DefaultNameSeth
.4byte gText_DefaultNameTerry
.4byte gText_DefaultNameCasey
.4byte gText_DefaultNameDarren
.4byte gText_DefaultNameLandon
.4byte gText_DefaultNameCollin
.4byte gText_DefaultNameStanley
.4byte gText_DefaultNameQuincy
.align 2
gFemalePresetNames:: @ 82FF178
.4byte gText_DefaultNameKimmy
.4byte gText_DefaultNameTiara
.4byte gText_DefaultNameBella
.4byte gText_DefaultNameJayla
.4byte gText_DefaultNameAllie
.4byte gText_DefaultNameLianna
.4byte gText_DefaultNameSara
.4byte gText_DefaultNameMonica
.4byte gText_DefaultNameCamila
.4byte gText_DefaultNameAubree
.4byte gText_DefaultNameRuthie
.4byte gText_DefaultNameHazel
.4byte gText_DefaultNameNadine
.4byte gText_DefaultNameTanja
.4byte gText_DefaultNameYasmin
.4byte gText_DefaultNameNicola
.4byte gText_DefaultNameLillie
.4byte gText_DefaultNameTerra
.4byte gText_DefaultNameLucy
.4byte gText_DefaultNameHalie
+1 -1
View File
@@ -434,7 +434,7 @@ gUnknown_08615D9C:: @ 8615D9C
.4byte sub_80D3718, 0x00000007 .4byte sub_80D3718, 0x00000007
.4byte SetUpFieldMove_Flash, 0x0000000d .4byte SetUpFieldMove_Flash, 0x0000000d
.4byte sub_8135654, 0x0000000d .4byte sub_8135654, 0x0000000d
.4byte hm_prepare_rocksmash, 0x0000000d .4byte SetUpFieldMove_Strength, 0x0000000d
.4byte sub_81B5820, 0x00000008 .4byte sub_81B5820, 0x00000008
.4byte sub_81B5884, 0x0000000d .4byte sub_81B5884, 0x0000000d
.4byte sub_81B5974, 0x0000000d .4byte sub_81B5974, 0x0000000d
+9 -9
View File
@@ -1,4 +1,4 @@
gUnknown_082C897B:: @ 82C897B gText_Birch_Welcome:: @ 82C897B
.string "Hi! Sorry to keep you waiting!\p" .string "Hi! Sorry to keep you waiting!\p"
.string "Welcome to the world of POKéMON!\p" .string "Welcome to the world of POKéMON!\p"
.string "My name is BIRCH.\p" .string "My name is BIRCH.\p"
@@ -6,12 +6,12 @@ gUnknown_082C897B:: @ 82C897B
.string "PROFESSOR.\p" .string "PROFESSOR.\p"
.string "$" .string "$"
gUnknown_082C89FB:: @ 82C89FB gText_Birch_Pokemon:: @ 82C89FB
.string "This is what we call a “POKéMON.”\p" .string "This is what we call a “POKéMON.”\p"
.string "\n" .string "\n"
.string "$" .string "$"
gUnknown_082C8A1F:: @ 82C8A1F gText_Birch_MainSpeech:: @ 82C8A1F
.string "This world is widely inhabited by\n" .string "This world is widely inhabited by\n"
.string "creatures known as POKéMON.\p" .string "creatures known as POKéMON.\p"
.string "We humans live alongside POKéMON,\n" .string "We humans live alongside POKéMON,\n"
@@ -28,28 +28,28 @@ gUnknown_082C8A1F:: @ 82C8A1F
.string "Thats what I do.\p" .string "Thats what I do.\p"
.string "$" .string "$"
gUnknown_082C8BD0:: @ 82C8BD0 gText_Birch_AndYouAre:: @ 82C8BD0
.string "And you are?$" .string "And you are?$"
gUnknown_082C8BDD:: @ 82C8BDD gText_Birch_BoyOrGirl:: @ 82C8BDD
.string "Are you a boy?\n" .string "Are you a boy?\n"
.string "Or are you a girl?$" .string "Or are you a girl?$"
gUnknown_082C8BFF:: @ 82C8BFF gText_Birch_WhatsYourName:: @ 82C8BFF
.string "All right.\n" .string "All right.\n"
.string "Whats your name?$" .string "Whats your name?$"
gUnknown_082C8C1C:: @ 82C8C1C gText_Birch_SoItsPlayer:: @ 82C8C1C
.string "So its {PLAYER}{KUN}?$" .string "So its {PLAYER}{KUN}?$"
gUnknown_082C8C2A:: @ 82C8C2A gText_Birch_YourePlayer:: @ 82C8C2A
.string "Ah, okay!\p" .string "Ah, okay!\p"
.string "Youre {PLAYER}{KUN} whos moving to my\n" .string "Youre {PLAYER}{KUN} whos moving to my\n"
.string "hometown of LITTLEROOT.\l" .string "hometown of LITTLEROOT.\l"
.string "I get it now!\p" .string "I get it now!\p"
.string "$" .string "$"
gUnknown_082C8C7A:: @ 82C8C7A gText_Birch_AreYouReady:: @ 82C8C7A
.string "All right, are you ready?\p" .string "All right, are you ready?\p"
.string "Your very own adventure is about\n" .string "Your very own adventure is about\n"
.string "to unfold.\p" .string "to unfold.\p"
+1
View File
@@ -12,5 +12,6 @@
#define RGB_YELLOW RGB(31, 31, 0) #define RGB_YELLOW RGB(31, 31, 0)
#define RGB_MAGENTA RGB(31, 0, 31) #define RGB_MAGENTA RGB(31, 0, 31)
#define RGB_CYAN RGB(0, 31, 31) #define RGB_CYAN RGB(0, 31, 31)
#define RGB_WHITEALPHA RGB_WHITE | 0x8000
#endif // GUARD_RGB_H #endif // GUARD_RGB_H
+3
View File
@@ -380,4 +380,7 @@ extern const u8 SecretBase_RedCave1_Text_274E75[];
extern const u8 SecretBase_RedCave1_Text_2751E1[]; extern const u8 SecretBase_RedCave1_Text_2751E1[];
extern const u8 SecretBase_RedCave1_Text_2754F6[]; extern const u8 SecretBase_RedCave1_Text_2754F6[];
extern const u8 SecretBase_RedCave1_Text_2758CC[]; extern const u8 SecretBase_RedCave1_Text_2758CC[];
extern const u8 FieryPath_EventScript_2908FD[];
extern const u8 EventScript_290CAE[];
#endif //GUARD_EVENT_SCRIPTS_H #endif //GUARD_EVENT_SCRIPTS_H
+3
View File
@@ -74,10 +74,13 @@ extern u32 gFieldEffectArguments[8];
u32 FieldEffectStart(u8); u32 FieldEffectStart(u8);
bool8 FieldEffectActiveListContains(u8 id); bool8 FieldEffectActiveListContains(u8 id);
void sub_80B69DC(void); void sub_80B69DC(void);
u8 AddNewGameBirchObject(s16, s16, u8);
void FieldEffectStop(struct Sprite *sprite, u8 id); void FieldEffectStop(struct Sprite *sprite, u8 id);
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer); u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
void sub_80B7FC8(void); void sub_80B7FC8(void);
void FieldEffectActiveListRemove(u8 id); void FieldEffectActiveListRemove(u8 id);
void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8); void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8);
extern void (*gUnknown_0203CEEC)(void);
extern bool8 (*gUnknown_03005DB0)(void);
#endif //GUARD_FIELD_EFFECTS_H #endif //GUARD_FIELD_EFFECTS_H
+1
View File
@@ -6,6 +6,7 @@ void ClearPlayerAvatarInfo(void);
void SetPlayerAvatarExtraStateTransition(u8, u8); void SetPlayerAvatarExtraStateTransition(u8, u8);
u8 GetPlayerAvatarGenderByGraphicsId(u8); u8 GetPlayerAvatarGenderByGraphicsId(u8);
bool8 TestPlayerAvatarFlags(u8); bool8 TestPlayerAvatarFlags(u8);
u8 GetPlayerAvatarObjectId(void);
void PlayerGetDestCoords(s16 *, s16 *); void PlayerGetDestCoords(s16 *, s16 *);
u8 player_get_direction_lower_nybble(void); u8 player_get_direction_lower_nybble(void);
u8 player_get_direction_upper_nybble(void); u8 player_get_direction_upper_nybble(void);
+2
View File
@@ -10,5 +10,7 @@ void pal_fill_black(void);
bool8 sub_80ABDFC(void); bool8 sub_80ABDFC(void);
void sub_80AF168(void); void sub_80AF168(void);
void UpdateWeatherPerDay(u16 days); void UpdateWeatherPerDay(u16 days);
void sub_80AC3D0(void);
void sub_80AC3E4(void);
#endif //GUARD_FIELD_SCREEN_H #endif //GUARD_FIELD_SCREEN_H
+7
View File
@@ -0,0 +1,7 @@
#ifndef GUARD_FLDEFF_GROUNDSHAKE_H
#define GUARD_FLDEFF_GROUNDSHAKE_H
void sub_81BE6B8(void);
void sub_81BE72C(void);
#endif // GUARD_FLDEFF_GROUNDSHAKE_H
+4
View File
@@ -198,6 +198,10 @@ extern u32 gUnknown_020223C0;
extern bool8 gLinkVSyncDisabled; extern bool8 gLinkVSyncDisabled;
extern u32 gLinkStatus; extern u32 gLinkStatus;
void c2_mystery_gift(void);
void sub_801867C(void);
bool8 sub_80093CC(void);
void Task_DestroySelf(u8 taskId); void Task_DestroySelf(u8 taskId);
void OpenLink(void); void OpenLink(void);
void CloseLink(void); void CloseLink(void);
+1
View File
@@ -34,6 +34,7 @@ void sub_8197930(void);
u8 GetPlayerTextSpeed(void); u8 GetPlayerTextSpeed(void);
void sub_81978B0(u16 arg0); void sub_81978B0(u16 arg0);
void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextSubPrinter *, u16));
void box_print(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str); void box_print(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str);
void sub_8198070(u8 windowId, bool8 copyToVram); void sub_8198070(u8 windowId, bool8 copyToVram);
void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock); void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock);
+9 -1
View File
@@ -6,9 +6,17 @@
// Exported RAM declarations // Exported RAM declarations
// Exported ROM declarations // Exported ROM declarations
struct ArrowStruct {
u8 unk0[6];
u16 unk6[4];
u8 unkE;
};
void Task_ScrollIndicatorArrowPairOnMainMenu(u8);
u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u16, u16, u16 *); u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u16, u16, u16 *);
void RemoveScrollIndicatorArrowPair(u8); void RemoveScrollIndicatorArrowPair(u8);
u8 AddScrollIndicatorArrowPair(void*, void*); u8 AddScrollIndicatorArrowPair(const struct ArrowStruct*, void*);
void sub_81AF15C(u8, u8, u8); void sub_81AF15C(u8, u8, u8);
#endif //GUARD_MENU_INDICATORS_H #endif //GUARD_MENU_INDICATORS_H
+10
View File
@@ -0,0 +1,10 @@
#ifndef GUARD_POKEMON_3_H
#define GUARD_POKEMON_3_H
u16 sub_806EFF0(u16);
const u8* GetTrainerClassNameFromId(u16 trainerId);
const u8* GetTrainerNameFromId(u16 trainerId);
void PlayMapChosenOrBattleBGM(u16 song);
u8 GetTrainerEncounterMusicId(u16 trainerOpponentId);
#endif // GUARD_POKEMON_3_H
+2
View File
@@ -11,6 +11,8 @@ void UpdateBirchState(u16 days);
void UpdateFrontierManiac(u16 days); void UpdateFrontierManiac(u16 days);
void UpdateFrontierGambler(u16 days); void UpdateFrontierGambler(u16 days);
void SetShoalItemFlag(u16 days); void SetShoalItemFlag(u16 days);
bool8 npc_before_player_of_type(u8);
u8 oei_task_add(void); u8 oei_task_add(void);
#endif //GUARD_ROM6_H #endif //GUARD_ROM6_H
+70
View File
@@ -231,6 +231,76 @@ extern const u8 gText_FemaleSymbol[];
extern const u8 gText_SelectorArrow3[]; extern const u8 gText_SelectorArrow3[];
extern const u8 gText_YesNo[]; extern const u8 gText_YesNo[];
// main menu/birch speech text
extern const u8 gText_SaveFileErased[];
extern const u8 gText_SaveFileCorrupted[];
extern const u8 gJPText_No1MSubCircuit[];
extern const u8 gText_BatteryRunDry[];
extern const u8 gText_MainMenuNewGame[];
extern const u8 gText_MainMenuOption[];
extern const u8 gText_MainMenuContinue[];
extern const u8 gText_MainMenuMysteryGift2[];
extern const u8 gText_MainMenuMysteryEvents[];
extern const u8 gText_MainMenuMysteryGift[];
extern const u8 gText_WirelessNotConnected[];
extern const u8 gText_MysteryGiftCantUse[];
extern const u8 gText_MysteryEventsCantUse[];
extern const u8 gText_Birch_Welcome[];
extern const u8 gText_ThisIsAPokemon[];
extern const u8 gText_Birch_MainSpeech[];
extern const u8 gText_Birch_AndYouAre[];
extern const u8 gText_Birch_BoyOrGirl[];
extern const u8 gText_Birch_WhatsYourName[];
extern const u8 gText_Birch_SoItsPlayer[];
extern const u8 gText_Birch_YourePlayer[];
extern const u8 gText_Birch_AreYouReady[];
extern const u8 gText_ContinueMenuPlayer[];
extern const u8 gText_ContinueMenuTime[];
extern const u8 gText_ContinueMenuPokedex[];
extern const u8 gText_ContinueMenuBadges[];
extern const u8 gText_BirchBoy[];
extern const u8 gText_BirchGirl[];
extern const u8 gText_DefaultNameStu[];
extern const u8 gText_DefaultNameMilton[];
extern const u8 gText_DefaultNameTom[];
extern const u8 gText_DefaultNameKenny[];
extern const u8 gText_DefaultNameReid[];
extern const u8 gText_DefaultNameJude[];
extern const u8 gText_DefaultNameJaxson[];
extern const u8 gText_DefaultNameEaston[];
extern const u8 gText_DefaultNameWalker[];
extern const u8 gText_DefaultNameTeru[];
extern const u8 gText_DefaultNameJohnny[];
extern const u8 gText_DefaultNameBrett[];
extern const u8 gText_DefaultNameSeth[];
extern const u8 gText_DefaultNameTerry[];
extern const u8 gText_DefaultNameCasey[];
extern const u8 gText_DefaultNameDarren[];
extern const u8 gText_DefaultNameLandon[];
extern const u8 gText_DefaultNameCollin[];
extern const u8 gText_DefaultNameStanley[];
extern const u8 gText_DefaultNameQuincy[];
extern const u8 gText_DefaultNameKimmy[];
extern const u8 gText_DefaultNameTiara[];
extern const u8 gText_DefaultNameBella[];
extern const u8 gText_DefaultNameJayla[];
extern const u8 gText_DefaultNameAllie[];
extern const u8 gText_DefaultNameLianna[];
extern const u8 gText_DefaultNameSara[];
extern const u8 gText_DefaultNameMonica[];
extern const u8 gText_DefaultNameCamila[];
extern const u8 gText_DefaultNameAubree[];
extern const u8 gText_DefaultNameRuthie[];
extern const u8 gText_DefaultNameHazel[];
extern const u8 gText_DefaultNameNadine[];
extern const u8 gText_DefaultNameTanja[];
extern const u8 gText_DefaultNameYasmin[];
extern const u8 gText_DefaultNameNicola[];
extern const u8 gText_DefaultNameLillie[];
extern const u8 gText_DefaultNameTerra[];
extern const u8 gText_DefaultNameLucy[];
extern const u8 gText_DefaultNameHalie[];
// mystery event menu text // mystery event menu text
extern const u8 gText_EventSafelyLoaded[]; extern const u8 gText_EventSafelyLoaded[];
extern const u8 gText_LoadErrorEndingSession[]; extern const u8 gText_LoadErrorEndingSession[];
+4 -4
View File
@@ -57,7 +57,7 @@ SECTIONS {
asm/link_rfu.o(.text); asm/link_rfu.o(.text);
asm/rom_8011DC0.o(.text); asm/rom_8011DC0.o(.text);
src/rtc.o(.text); src/rtc.o(.text);
asm/main_menu.o(.text); src/main_menu.o(.text);
src/battle_controllers.o(.text); src/battle_controllers.o(.text);
src/decompress.o(.text); src/decompress.o(.text);
asm/rom_8034C54.o(.text); asm/rom_8034C54.o(.text);
@@ -193,7 +193,7 @@ SECTIONS {
asm/pokedex_cry_screen.o(.text); asm/pokedex_cry_screen.o(.text);
src/coins.o(.text); src/coins.o(.text);
src/landmark.o(.text); src/landmark.o(.text);
asm/fldeff_strength.o(.text); src/fldeff_strength.o(.text);
src/battle_transition.o(.text); src/battle_transition.o(.text);
src/battle_controller_link_partner.o(.text); src/battle_controller_link_partner.o(.text);
src/battle_message.o(.text); src/battle_message.o(.text);
@@ -207,7 +207,7 @@ SECTIONS {
asm/contest_ai.o(.text); asm/contest_ai.o(.text);
asm/battle_anim_sound_tasks.o(.text); asm/battle_anim_sound_tasks.o(.text);
src/battle_controller_safari.o(.text); src/battle_controller_safari.o(.text);
asm/fldeff_sweetscent.o(.text); src/fldeff_sweetscent.o(.text);
asm/battle_anim_815A0D4.o(.text); asm/battle_anim_815A0D4.o(.text);
asm/learn_move.o(.text); asm/learn_move.o(.text);
asm/fldeff_softboiled.o(.text); asm/fldeff_softboiled.o(.text);
@@ -371,7 +371,7 @@ SECTIONS {
src/link_rfu.o(.rodata); src/link_rfu.o(.rodata);
data/rom_8011DC0.o(.rodata); data/rom_8011DC0.o(.rodata);
src/rtc.o(.rodata); src/rtc.o(.rodata);
data/main_menu.o(.rodata); src/main_menu.o(.rodata);
data/battle_1.o(.rodata); data/battle_1.o(.rodata);
data/data2b.o(.rodata); data/data2b.o(.rodata);
src/battle_main.o(.rodata); src/battle_main.o(.rodata);
+44
View File
@@ -0,0 +1,44 @@
#include "global.h"
#include "event_data.h"
#include "event_scripts.h"
#include "field_effect.h"
#include "party_menu.h"
#include "rom6.h"
#include "script.h"
#include "task.h"
void FldEff_UseStrength(void);
void sub_8145E74(void);
bool8 SetUpFieldMove_Strength(void)
{
if (npc_before_player_of_type(87) == TRUE)
{
gSpecialVar_Result = GetCursorSelectionMonId();
gUnknown_03005DB0 = FieldCallback_Teleport;
gUnknown_0203CEEC = FldEff_UseStrength;
return TRUE;
}
return FALSE;
}
void FldEff_UseStrength(void)
{
gFieldEffectArguments[0] = GetCursorSelectionMonId();
ScriptContext1_SetupScript(FieryPath_EventScript_2908FD);
}
bool8 sub_8145E2C(void)
{
u8 taskId = oei_task_add();
gTasks[taskId].data[8] = (u32)sub_8145E74 >> 16;
gTasks[taskId].data[9] = (u32)sub_8145E74;
GetMonNickname(&gPlayerParty[gFieldEffectArguments[0]], gStringVar1);
return FALSE;
}
void sub_8145E74(void)
{
FieldEffectActiveListRemove(FLDEFF_USE_STRENGTH);
EnableBothScriptContexts();
}
+97
View File
@@ -0,0 +1,97 @@
#include "global.h"
#include "constants/rgb.h"
#include "constants/songs.h"
#include "event_data.h"
#include "event_scripts.h"
#include "field_effect.h"
#include "field_player_avatar.h"
#include "field_screen.h"
#include "fldeff_groundshake.h"
#include "palette.h"
#include "party_menu.h"
#include "rom6.h"
#include "script.h"
#include "sound.h"
#include "sprite.h"
#include "task.h"
#include "wild_encounter.h"
void hm2_sweet_scent(void);
void sub_8159F5C(void);
void sub_8159FEC(u8 taskId);
void sub_815A090(u8 taskId);
bool8 SetUpFieldMove_SweetScent(void)
{
gUnknown_03005DB0 = FieldCallback_Teleport;
gUnknown_0203CEEC = hm2_sweet_scent;
return TRUE;
}
void hm2_sweet_scent(void)
{
FieldEffectStart(FLDEFF_SWEET_SCENT);
gFieldEffectArguments[0] = GetCursorSelectionMonId();
}
bool8 FldEff_SweetScent()
{
u8 taskId;
sub_80AC3D0();
taskId = oei_task_add();
gTasks[taskId].data[8] = (u32)sub_8159F5C >> 16;
gTasks[taskId].data[9] = (u32)sub_8159F5C;
return FALSE;
}
void sub_8159F5C(void)
{
u8 taskId;
PlaySE(SE_W230);
CpuFastSet(gPlttBufferUnfaded, gPaletteDecompressionBuffer, 0x100);
CpuFastSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x100);
BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarObjectId()].oam.paletteNum + 16)), 4, 0, 8, RGB_RED);
taskId = CreateTask(sub_8159FEC, 0);
gTasks[taskId].data[0] = 0;
FieldEffectActiveListRemove(FLDEFF_SWEET_SCENT);
}
void sub_8159FEC(u8 taskId)
{
if (!gPaletteFade.active)
{
sub_81BE72C();
BlendPalettes(0x00000040, 8, RGB_RED);
if (gTasks[taskId].data[0] == 64)
{
gTasks[taskId].data[0] = 0;
if (SweetScentWildEncounter() == TRUE)
{
DestroyTask(taskId);
}
else
{
gTasks[taskId].func = sub_815A090;
BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarObjectId()].oam.paletteNum + 16)), 4, 8, 0, RGB_RED);
sub_81BE6B8();
}
}
else
{
gTasks[taskId].data[0]++;
}
}
}
void sub_815A090(u8 taskId)
{
if (!gPaletteFade.active)
{
CpuFastSet(gPaletteDecompressionBuffer, gPlttBufferUnfaded, 0x100);
sub_80AC3E4();
ScriptContext1_SetupScript(EventScript_290CAE);
DestroyTask(taskId);
}
}
-3
View File
@@ -7,9 +7,6 @@
#include "rom6.h" #include "rom6.h"
#include "task.h" #include "task.h"
extern bool8 (*gUnknown_03005DB0)(void);
extern void (*gUnknown_0203CEEC)(void);
bool8 SetUpFieldMove_Teleport(void) bool8 SetUpFieldMove_Teleport(void)
{ {
if (Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType) == TRUE) if (Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType) == TRUE)
+1 -1
View File
@@ -214,7 +214,7 @@ const struct YesNoFuncTable gUnknown_08614084 = {BagMenuActuallyToss, BagMenuCan
const struct YesNoFuncTable gUnknown_0861408C = {sub_81AD84C, sub_81AD6FC}; const struct YesNoFuncTable gUnknown_0861408C = {sub_81AD84C, sub_81AD6FC};
const u16 gUnknown_08614094[] = {0x1C00, 0x110, 0x1064, -1, -1, 0x6F, 0x6F, 0}; const struct ArrowStruct gUnknown_08614094 = {0, 0x1C, 16, 1, 100, 16, -1, -1, 0x6F, 0x6F, 0};
const u8 gUnknown_086140A4[] = INCBIN_U8("graphics/interface/select_button.4bpp"); const u8 gUnknown_086140A4[] = INCBIN_U8("graphics/interface/select_button.4bpp");
+1962
View File
File diff suppressed because it is too large Load Diff
+1 -4
View File
@@ -119,10 +119,7 @@ gUnknown_02022D00: @ 2022D00
@ src/main_menu.c @ src/main_menu.c
gUnknown_02022D04: @ 2022D04 gUnknown_02022D04: @ 2022D04
.space 0x2 .include "src/main_menu.o"
gUnknown_02022D06: @ 2022D06
.space 0x2
gUnknown_02022D08: @ 2022D08 gUnknown_02022D08: @ 2022D08
.space 0x1 .space 0x1