From f0df833f37a20745ded2b13240c692fe20d2dc1c Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Fri, 29 Dec 2017 13:34:24 -0600 Subject: Extract easy chat and pokemon animation --- asm/easy_chat.s | 2 +- asm/pokemon_animation.s | 2 +- data/battle_link_817C95C.s | 174 +++++++++++ data/data2b.s | 2 - data/data2c.s | 2 - data/data_860A4AC.s | 50 ---- data/easy_chat.s | 430 ++++++++++++++++++++++++---- data/graphics.s | 118 ++++---- data/pokemon_animation.s | 240 ++++++++++++++++ data/strings.s | 112 ++++---- graphics/misc/8597C1C.pal | 7 + graphics/misc/8597C24.pal | 9 + graphics/misc/interview.pal | 19 ++ graphics/misc/interview_arrow.png | Bin 0 -> 160 bytes graphics/misc/interview_buttons.png | Bin 0 -> 214 bytes graphics/misc/interview_frame.png | Bin 0 -> 192 bytes graphics/misc/interview_frame_2.png | Bin 0 -> 260 bytes graphics/misc/interview_frame_green.pal | 19 ++ graphics/misc/interview_frame_orange.pal | 19 ++ graphics/misc/interview_triangle_cursor.png | Bin 0 -> 147 bytes ld_script.txt | 3 +- 21 files changed, 994 insertions(+), 214 deletions(-) create mode 100644 data/battle_link_817C95C.s delete mode 100644 data/data_860A4AC.s create mode 100644 data/pokemon_animation.s create mode 100644 graphics/misc/8597C1C.pal create mode 100644 graphics/misc/8597C24.pal create mode 100644 graphics/misc/interview.pal create mode 100644 graphics/misc/interview_arrow.png create mode 100644 graphics/misc/interview_buttons.png create mode 100644 graphics/misc/interview_frame.png create mode 100644 graphics/misc/interview_frame_2.png create mode 100644 graphics/misc/interview_frame_green.pal create mode 100644 graphics/misc/interview_frame_orange.pal create mode 100644 graphics/misc/interview_triangle_cursor.png diff --git a/asm/easy_chat.s b/asm/easy_chat.s index 3a359c9fa..f65c379c2 100644 --- a/asm/easy_chat.s +++ b/asm/easy_chat.s @@ -6075,7 +6075,7 @@ _0811D19C: b _0811D1BC .pool _0811D1A8: - ldr r0, =gText_CombineTwoWordsOrPhrases + ldr r0, =gText_CombineTwoWordsOrPhrases3 str r0, [sp, 0xC] b _0811D1BC .pool diff --git a/asm/pokemon_animation.s b/asm/pokemon_animation.s index 870e658f7..a625f8511 100644 --- a/asm/pokemon_animation.s +++ b/asm/pokemon_animation.s @@ -333,7 +333,7 @@ sub_817F670: @ 817F670 movs r1, 0x3 orrs r0, r1 strb r0, [r4, 0x1] - ldr r0, =gUnknown_0860AD68 + ldr r0, =gSpriteAffineAnimTable_860AD68 str r0, [r4, 0x10] ldr r0, =gUnknown_03001274 ldr r0, [r0] diff --git a/data/battle_link_817C95C.s b/data/battle_link_817C95C.s new file mode 100644 index 000000000..24f70c79c --- /dev/null +++ b/data/battle_link_817C95C.s @@ -0,0 +1,174 @@ + .include "asm/macros.inc" + .include "constants/constants.inc" + + .section .rodata + + .align 1 +gUnknown_0860A4AC:: @ 860A4AC + .2byte 0x0044, 0x005a, 0x0075, 0x00f3, 0x0020, 0x00af, 0x00b3, 0x00ed, 0x0149, 0x0108, 0x011c, 0x0143, 0x008a, 0x0137, 0x00ad, 0x00dc + .2byte 0x000c, 0x00da, 0x00d8, 0x011b, 0x00d9, 0x0117, 0xffff, 0x00de, 0x0095, 0xffff + + .align 1 +gUnknown_0860A4E0:: @ 860A4E0 + .2byte 0x0001, 0x0001, 0x0001, 0x0004, 0x0001, 0x0001, 0x0001, 0x0000, 0x0005, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001 + .2byte 0x0001, 0x0002, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0005, 0x0005, 0x0004, 0x0005, 0x0001, 0x0003, 0x0001 + .2byte 0x0003, 0x0005, 0x0001, 0x0007, 0x0001, 0x0007, 0x0007, 0x0001, 0x0005, 0x0002, 0x0004, 0x0001, 0x0001, 0x0001, 0x0005, 0x0001 + .2byte 0x0002, 0x0004, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001 + .2byte 0x0001, 0x0007, 0x0004, 0x0004, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0004, 0x0001, 0x0001, 0x0001, 0x0004 + .2byte 0x0005, 0x0002, 0x0004, 0x0001, 0x0004, 0x0001, 0x0007, 0x0002, 0x0001, 0x0005, 0x0007, 0x0003, 0x0003, 0x0004, 0x0003, 0x0003 + .2byte 0x0003, 0x0003, 0x0003, 0x0002, 0x0004, 0x0001, 0x0005, 0x0001, 0x0001, 0x0004, 0x0005, 0x0003, 0x0001, 0x0002, 0x0001, 0x0005 + .2byte 0x0004, 0x0003, 0x0006, 0x0004, 0x0003, 0x0003, 0x0003, 0x0002, 0x0004, 0x0001, 0x0001, 0x0001, 0x0005, 0x0001, 0x0001, 0x0007 + .2byte 0x0002, 0x0002, 0x0001, 0x0001, 0x0004, 0x0004, 0x0004, 0x0001, 0x0004, 0x0004, 0x0001, 0x0001, 0x0001, 0x0001, 0x0007, 0x0007 + .2byte 0x0006, 0x0003, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0002, 0x0003, 0x0001, 0x0001, 0x0004, 0x0004 + .2byte 0x0003, 0x0003, 0x0003, 0x0001, 0x0004, 0x0007, 0x0007, 0x0005, 0x0007, 0x0001, 0x0007, 0x0001, 0x0005, 0x0000, 0x0004, 0x0004 + .2byte 0x0004, 0x0004, 0x0004, 0x0002, 0x0002, 0x0006, 0x0003, 0x0006, 0x0004, 0x0004, 0x0002, 0x0005, 0x0002, 0x0001, 0x0001, 0x0006 + .2byte 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0002, 0x0006, 0x0001, 0x0004, 0x0001, 0x0001, 0x0003, 0x0001, 0x0001, 0x0001 + .2byte 0x0001, 0x0001, 0x0004, 0x0001, 0x0001, 0x0003 + + .align 1 +gUnknown_0860A68C:: @ 860A68C + .2byte 0x0004, 0xfffd, 0xfffa + + .align 1 +gUnknown_0860A692:: @ 860A692 + .2byte 0x0004, 0x0004, 0x0006, 0x0006, 0x0007, 0x0006, 0x0002 + + .align 1 +gUnknown_0860A6A0:: @ 860A6A0 + .2byte 0x0091, 0x0003, 0x00fa, 0x0003, 0x00be, 0x0003, 0x0080, 0x0003, 0x006e, 0x0003, 0x0098, 0x0003, 0x0143, 0x0003, 0x0123, 0x0003 + .2byte 0x007f, 0x0003, 0x014a, 0x0003, 0x0039, 0x0003, 0x0134, 0x0003, 0x0038, 0x0003, 0x003d, 0x0003, 0x015a, 0x0000, 0x0037, 0x0003 + .2byte 0x0160, 0x0003, 0x0137, 0x0003, 0x0057, 0x0003, 0x004c, 0xfffc, 0x013b, 0xfffc, 0x00ac, 0xfffc, 0x0035, 0xfffc, 0x00dd, 0xfffc + .2byte 0x007e, 0xfffc, 0x0101, 0xfffc, 0x0034, 0xfffc, 0x0133, 0xfffc, 0x012b, 0xfffc, 0x011c, 0xfffc, 0x0053, 0xfffc, 0x0007, 0xfffc + .2byte 0x004c, 0xfffc, 0xffff, 0x0000 + + .align 1 +gUnknown_0860A728:: @ 860A728 + .2byte 0x013b, 0x0003, 0x00ac, 0x0003, 0x0035, 0x0003, 0x00dd, 0x0003, 0x007e, 0x0003, 0x0101, 0x0003, 0x0034, 0x0003, 0x0133, 0x0003 + .2byte 0x012b, 0x0003, 0x011c, 0x0003, 0x0053, 0x0003, 0x0007, 0x0003, 0x004c, 0x0005, 0x00eb, 0x0003, 0x00ea, 0x0003, 0x00ec, 0x0003 + .2byte 0x0137, 0x0003, 0xffff, 0x0000 + + .align 1 +gUnknown_0860A770:: @ 860A770 + .2byte 0x0137, 0x0003, 0x004c, 0xfffd, 0xffff, 0x0000 + + .align 1 +gUnknown_0860A77C:: @ 860A77C + .2byte 0x0137, 0x0003, 0x004c, 0xfffd, 0xffff, 0x0000 + + .align 1 +gUnknown_0860A788:: @ 860A788 + .2byte 0x0055, 0x0003, 0x0009, 0x0003, 0x00d1, 0x0003, 0x0054, 0x0003, 0x00c0, 0x0003, 0x015f, 0x0003, 0x0056, 0x0000, 0x0057, 0x0003 + .2byte 0x0158, 0x0003, 0xffff, 0x0000 + + .align 1 +gUnknown_0860A7B0:: @ 860A7B0 + .2byte 0x0005, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003 + + .align 1 +gUnknown_0860A7BE:: @ 860A7BE + .2byte 0x0005, 0x0005, 0x0005, 0x0005, 0x0005 + + .align 1 +gUnknown_0860A7C8:: @ 860A7C8 + .2byte 0x0004 + + .align 1 +gUnknown_0860A7CA:: @ 860A7CA + .2byte 0x0005 + + .align 1 +gUnknown_0860A7CC:: @ 860A7CC + .2byte 0x0005 + + .align 1 +gUnknown_0860A7CE:: @ 860A7CE + .2byte 0x0003 + + .align 1 +gUnknown_0860A7D0:: @ 860A7D0 + .2byte 0x0003 + + .align 1 +gUnknown_0860A7D2:: @ 860A7D2 + .2byte 0x0004 + + .align 1 +gUnknown_0860A7D4:: @ 860A7D4 + .2byte 0x0003 + + .align 1 +gUnknown_0860A7D6:: @ 860A7D6 + .2byte 0x0006 + + .align 1 +gUnknown_0860A7D8:: @ 860A7D8 + .2byte 0x0006 + + .align 1 +gUnknown_0860A7DA:: @ 860A7DA + .2byte 0x0006 + + .align 1 +gUnknown_0860A7DC:: @ 860A7DC + .2byte 0x0004 + + .align 1 +gUnknown_0860A7DE:: @ 860A7DE + .2byte 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002 + + .align 1 +gUnknown_0860A7EC:: @ 860A7EC + .2byte 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004 + + .align 1 +gUnknown_0860A7FA:: @ 860A7FA + .2byte 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff + + .align 1 +gUnknown_0860A808:: @ 860A808 + .2byte 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002 + + .align 1 +gUnknown_0860A816:: @ 860A816 + .2byte 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004 + + .align 1 +gUnknown_0860A824:: @ 860A824 + .2byte 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe + + .align 2 +gUnknown_0860A834:: @ 860A834 + .4byte gUnknown_0860A4E0 + .4byte gUnknown_0860A68C + .4byte gUnknown_0860A692 + .4byte gUnknown_0860A6A0 + .4byte gUnknown_0860A728 + .4byte gUnknown_0860A770 + .4byte gUnknown_0860A77C + .4byte gUnknown_0860A788 + .4byte gUnknown_0860A7B0 + .4byte gUnknown_0860A7BE + .4byte gUnknown_0860A7C8 + .4byte gUnknown_0860A7CA + .4byte gUnknown_0860A7CC + .4byte gUnknown_0860A7CE + .4byte gUnknown_0860A7D0 + .4byte gUnknown_0860A7D2 + .4byte gUnknown_0860A7D4 + .4byte gUnknown_0860A7D6 + .4byte gUnknown_0860A7D8 + .4byte gUnknown_0860A7DA + .4byte gUnknown_0860A7DA + .4byte gUnknown_0860A7DC + .4byte gUnknown_0860A7DE + .4byte gUnknown_0860A7EC + .4byte gUnknown_0860A7FA + .4byte gUnknown_0860A808 + .4byte gUnknown_0860A816 + .4byte gUnknown_0860A824 + + .align 1 +gUnknown_0860A8A4:: @ 860A8A4 + .2byte 0x0097, 0x00b2, 0x00bc, 0x008c, 0x00b4, 0x00b5, 0x0093, 0x006a, 0x0091, 0x005e, 0x0030, 0x002a, 0x0095, 0x001c, 0x001d, 0x0064 + .2byte 0x0060, 0xffff + diff --git a/data/data2b.s b/data/data2b.s index 74e13cc7f..1400b31d3 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -1,5 +1,3 @@ -@ the second big chunk of data - #include "constants/items.h" #include "constants/moves.h" #include "constants/species.h" diff --git a/data/data2c.s b/data/data2c.s index 904009254..86418ce62 100644 --- a/data/data2c.s +++ b/data/data2c.s @@ -1,5 +1,3 @@ -@ the second big chunk of data - #include "constants/abilities.h" #include "constants/items.h" #include "constants/moves.h" diff --git a/data/data_860A4AC.s b/data/data_860A4AC.s deleted file mode 100644 index bac17590d..000000000 --- a/data/data_860A4AC.s +++ /dev/null @@ -1,50 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - -gUnknown_0860A4AC:: @ 860A4AC - .incbin "baserom.gba", 0x60a4ac, 0x388 - -gUnknown_0860A834:: @ 860A834 - .incbin "baserom.gba", 0x60a834, 0x70 - -gUnknown_0860A8A4:: @ 860A8A4 - .incbin "baserom.gba", 0x60a8a4, 0x24 - -gUnknown_0860A8C8:: @ 860A8C8 - .incbin "baserom.gba", 0x60a8c8, 0x19c - -gUnknown_0860AA64:: @ 860AA64 - .incbin "baserom.gba", 0x60aa64, 0x1c - -gUnknown_0860AA80:: @ 860AA80 - .incbin "baserom.gba", 0x60aa80, 0x8 - -gUnknown_0860AA88:: @ 860AA88 - .incbin "baserom.gba", 0x60aa88, 0x25c - -gUnknown_0860ACE4:: @ 860ACE4 - .incbin "baserom.gba", 0x60ace4, 0x4b - -gUnknown_0860AD2F:: @ 860AD2F - .incbin "baserom.gba", 0x60ad2f, 0x39 - -gUnknown_0860AD68:: @ 860AD68 - .incbin "baserom.gba", 0x60ad68, 0x8 - -gUnknown_0860AD70:: @ 860AD70 - .incbin "baserom.gba", 0x60ad70, 0x1e - -gUnknown_0860AD8E:: @ 860AD8E - .incbin "baserom.gba", 0x60ad8e, 0x30 - -gUnknown_0860ADBE:: @ 860ADBE - .incbin "baserom.gba", 0x60adbe, 0xbe - -gUnknown_0860AE7C:: @ 860AE7C - .incbin "baserom.gba", 0x60ae7c, 0xc - -gUnknown_0860AE88:: @ 860AE88 - .incbin "baserom.gba", 0x60ae88, 0x8 - diff --git a/data/easy_chat.s b/data/easy_chat.s index 3894cc13d..09d33e660 100644 --- a/data/easy_chat.s +++ b/data/easy_chat.s @@ -5,13 +5,207 @@ .include "constants/constants.inc" .section .rodata - .align 2, 0 + .align 2 gUnknown_08597530:: @ 8597530 - .incbin "baserom.gba", 0x597530, 0x20 + .4byte 0x0000001a + .4byte sub_811A8CC + .4byte 0x00000019 + .4byte sub_811A8F0 + .4byte 0x0000001c + .4byte sub_811A914 + .4byte 0x0000001b + .4byte sub_811A938 gUnknown_08597550:: @ 8597550 - .incbin "baserom.gba", 0x597550, 0x1f8 + .byte 0x00, 0x02, 0x02, 0x00 + + .align 2 + .4byte gText_Profile + .4byte gText_CombineFourWordsOrPhrases + .4byte gText_AndMakeYourProfile + .4byte gText_YourProfile + .4byte gText_IsAsShownOkay + + .byte 0x01, 0x02, 0x03, 0x01 + + .align 2 + .4byte gText_AtTheBattlesStart + .4byte gText_CombineSixWordsOrPhrases + .4byte gText_AndMakeAMessage + .4byte gText_YourFeelingAtTheBattlesStart + .4byte gText_IsAsShownOkay + + .byte 0x02, 0x02, 0x03, 0x01 + + .align 2 + .4byte gText_UponWinningABattle + .4byte gText_CombineSixWordsOrPhrases + .4byte gText_AndMakeAMessage + .4byte gText_WhatYouSayIfYouWin + .4byte gText_IsAsShownOkay + + .byte 0x03, 0x02, 0x03, 0x01 + + .align 2 + .4byte gText_UponLosingABattle + .4byte gText_CombineSixWordsOrPhrases + .4byte gText_AndMakeAMessage + .4byte gText_WhatYouSayIfYouLose + .4byte gText_IsAsShownOkay + + .byte 0x04, 0x02, 0x05, 0x02 + + .align 2 + .4byte NULL + .4byte gText_CombineNineWordsOrPhrases + .4byte gText_AndMakeAMessage2 + .4byte gText_TheMailMessage + .4byte gText_IsAsShownOkay + + .byte 0x05, 0x02, 0x02, 0x05 + + .align 2 + .4byte gText_Interview + .4byte gText_CombineFourWordsOrPhrases + .4byte gText_LetsReplyToTheInterview + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay + + .byte 0x06, 0x02, 0x03, 0x01 + + .align 2 + .4byte gText_TheBardsSong + .4byte gText_ChangeJustOneWordOrPhrase + .4byte gText_AndImproveTheBardsSong + .4byte gText_TheBardsSong2 + .4byte gText_IsAsShownOkay + + .byte 0x07, 0x01, 0x01, 0x04 + + .align 2 + .4byte gText_Interview + .4byte gText_FindWordsThatDescribeYour + .4byte gText_FeelingsRightNow + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay + + .byte 0x09, 0x02, 0x01, 0x03 + + .align 2 + .4byte gText_WhatsHipAndHappening + .4byte gText_CombineTwoWordsOrPhrases + .4byte gText_AndMakeATrendySaying + .4byte gText_TheTrendySaying + .4byte gText_IsAsShownOkay + + .byte 0x10, 0x02, 0x05, 0x87 + + .align 2 + .4byte NULL + .4byte gText_AfterYouHaveReadTheQuiz + .4byte gText_QuestionPressTheAButton + .4byte NULL + .4byte NULL + + .byte 0x0f, 0x01, 0x01, 0x86 + + .align 2 + .4byte gText_TheQuizAnswerIs + .4byte gText_OutOfTheListedChoices + .4byte gText_SelectTheAnswerToTheQuiz + .4byte gText_TheAnswerColon + .4byte gText_IsAsShownOkay + + .byte 0x11, 0x02, 0x05, 0x88 + + .align 2 + .4byte NULL + .4byte gText_CombineNineWordsOrPhrases + .4byte gText_AndCreateAQuiz + .4byte gText_IsThisQuizOK + .4byte NULL + + .byte 0x12, 0x01, 0x01, 0x86 + + .align 2 + .4byte gText_TheQuizAnswerIs + .4byte gText_PickAWordOrPhraseAnd + .4byte gText_SetTheQuizAnswer + .4byte gText_IsThisQuizOK + .4byte NULL + + .byte 0x06, 0x02, 0x03, 0x01 + + .align 2 + .4byte gText_TheBardsSong + .4byte gText_ChangeJustOneWordOrPhrase + .4byte gText_AndImproveTheBardsSong + .4byte gText_TheBardsSong2 + .4byte gText_IsAsShownOkay + + .byte 0x13, 0x02, 0x03, 0x01 + + .align 2 + .4byte gText_ApprenticesPhrase + .4byte gText_FindWordsWhichFit + .4byte gText_TheTrainersImage + .4byte gText_ApprenticePhrase + .4byte gText_IsAsShownOkay + + .byte 0x0d, 0x02, 0x01, 0x03 + + .align 2 + .4byte gText_GoodSaying + .4byte gText_CombineTwoWordsOrPhrases2 + .4byte gText_ToTeachHerAGoodSaying + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay + + .byte 0x0a, 0x01, 0x01, 0x04 + + .align 2 + .4byte gText_Interview + .4byte gText_FindWordsThatDescribeYour + .4byte gText_FeelingsRightNow + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay + + .byte 0x0c, 0x01, 0x01, 0x04 + + .align 2 + .4byte gText_Interview + .4byte gText_FindWordsThatDescribeYour + .4byte gText_FeelingsRightNow + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay + + .byte 0x0b, 0x01, 0x01, 0x04 + + .align 2 + .4byte gText_Interview + .4byte gText_FindWordsThatDescribeYour + .4byte gText_FeelingsRightNow + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay + + .byte 0x0e, 0x01, 0x01, 0x04 + + .align 2 + .4byte gText_FansQuestion + .4byte gText_FindWordsWhichFit + .4byte gText_TheTrainersImage + .4byte gText_TheImage + .4byte gText_IsAsShownOkay + + .byte 0x14, 0x02, 0x02, 0x00 + + .align 2 + .4byte gText_Questionnaire + .4byte gText_CombineFourWordsOrPhrases + .4byte gText_AndFillOutTheQuestionnaire + .4byte gText_TheAnswer + .4byte gText_IsAsShownOkay gUnknown_08597748:: @ 8597748 .byte 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x00, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x00, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a @@ -20,109 +214,239 @@ gUnknown_08597764:: @ 8597764 .2byte 0x0209, 0x140b, 0x1030, 0x102a gUnknown_0859776C:: @ 859776C - .2byte 0x1240, 0x0628, 0x061f, 0x2204, 0x1422, 0x0197, 0x0415, 0x0198, 0x2207, 0x0449, 0x4bff, 0x4b1f, 0x2e3d, 0x1577, 0x6b5f, 0x5ade - .2byte 0x4218, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c5, 0x318c, 0x5af6, 0x6f5b, 0x7fff, 0xccc0, 0x0000, 0xddc0, 0x000c, 0xddc0, 0x00cd - .2byte 0xddc0, 0x0cdd, 0xddc0, 0x0cdd, 0xddc0, 0x00cd, 0xddc0, 0x000c, 0xccc0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 - .2byte 0x0000, 0x0000, 0x0000, 0xc000, 0x0000, 0x6c00, 0x0000, 0x66c0, 0x0000, 0x666c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 - .2byte 0x0000, 0x0000, 0x000c, 0x0000, 0x00c6, 0x0000, 0x0c66, 0x0000, 0xc666, 0x0000, 0xc000, 0x6666, 0xc000, 0x6666, 0xc000, 0x6666 - .2byte 0xc000, 0xcccc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6666, 0x000c, 0x6666, 0x000c, 0x6666, 0x000c - .2byte 0xcccc, 0x000c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 - .2byte 0x0000, 0x0000, 0x0000, 0xc000, 0x0000, 0x6c00, 0x0000, 0x66c0, 0x0000, 0x666c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 - .2byte 0x0000, 0x0000, 0x000c, 0x0000, 0x00c6, 0x0000, 0x0c66, 0x0000, 0xc666, 0x0000, 0xc000, 0x6666, 0xc000, 0x6666, 0xc000, 0x6666 - .2byte 0xc000, 0xcccc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6666, 0x000c, 0x6666, 0x000c, 0x6666, 0x000c - .2byte 0xcccc, 0x000c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x99c0, 0x9999, 0xf99c, 0xff9f, 0xf99c, 0xf999 - .2byte 0xf99c, 0xf99f, 0x999c, 0xf99f, 0xf99c, 0xf99f, 0x99c0, 0x9999, 0xcc00, 0xcccc, 0x9999, 0x9999, 0xff9f, 0xff9f, 0x9f99, 0x9f9f - .2byte 0xff99, 0xff9f, 0x9f99, 0x9f9f, 0x9f99, 0x9f9f, 0x9999, 0x9999, 0xcccc, 0xcccc, 0x9999, 0x9999, 0xff9f, 0x999f, 0xf99f, 0x9999 - .2byte 0xf999, 0x9999, 0xf99f, 0xf999, 0xf99f, 0x9999, 0x9999, 0x9999, 0xcccc, 0xcccc, 0x9999, 0x0c99, 0x9999, 0xc999, 0x9ff9, 0xc999 - .2byte 0xffff, 0xc999, 0xffff, 0xc99f, 0x9999, 0xc999, 0x9999, 0xcc99, 0xcccc, 0x0ccc, 0x99c0, 0x9999, 0xf99c, 0xff9f, 0xf99c, 0x9f99 - .2byte 0xf99c, 0xff9f, 0x999c, 0x9f9f, 0xf99c, 0xff9f, 0x99c0, 0x9999, 0xcc00, 0xcccc, 0x9999, 0x9999, 0x99f9, 0xf9ff, 0x99f9, 0xf99f - .2byte 0x99f9, 0xf9ff, 0x99f9, 0xf99f, 0x9ff9, 0xf9ff, 0x9999, 0x9999, 0xcccc, 0xcccc, 0x9999, 0x9999, 0xff9f, 0x999f, 0xf999, 0xf999 - .2byte 0xf999, 0x9999, 0xf999, 0x9999, 0xf99f, 0x9999, 0x9999, 0x9999, 0xcccc, 0xcccc, 0x9999, 0x0c99, 0x9999, 0xc999, 0xffff, 0xc99f - .2byte 0xffff, 0xc999, 0x9ff9, 0xc999, 0x9999, 0xc999, 0x9999, 0xcc99, 0xcccc, 0x0ccc, 0x0000, 0x5fff, 0x67bd, 0x4b1a, 0x6fff, 0x0000 - .2byte 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0010, 0x0008, 0x003f, 0xf000, 0xf001, 0xf001 - .2byte 0xf001, 0xf001, 0xf001, 0xff01, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0xf0d5, 0x0001, 0x1001, 0x0300 - .2byte 0x0024, 0x1106, 0x0600, 0x2240, 0x1cd0, 0x1111, 0x1111, 0x2222, 0x223f, 0x5022, 0xf007, 0xf01f, 0xf01f, 0xf01f, 0xf01f, 0xfb1f - .2byte 0x1ff0, 0x1ff0, 0x1ff0, 0x1ff0, 0x01b0, 0x0001, 0x1003, 0x4f14, 0x0011, 0x2208, 0x3032, 0x3031, 0xf0e7, 0x1007, 0xff07, 0x4fd0 - .2byte 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0xf0ff, 0xf007, 0xd007, 0x3007, 0xf0e7, 0xf007, 0xf0ff, 0xf007, 0xffff - .2byte 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0xf0ff, 0xf007, 0xf0ff, 0xf0f7, 0xf0ff, 0xf007, 0xf0ff, 0xf007 - .2byte 0xff07, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0xf0ff, 0xf0f7, 0xf0ff, 0xf0f7, 0xf0ff, 0xf007, 0xf007 - .2byte 0xf007, 0xff07, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0x07f0, 0xff60, 0xcd40, 0xf0db, 0x50ff, 0x40ff, 0x1224, 0x0300, 0xf430 - .2byte 0x704f, 0x0f4f, 0x3333, 0x3333, 0x1ff0, 0x1ff0, 0x1ff0, 0x1ff0, 0xf0fe, 0xf01f, 0xf01f, 0xf01f, 0xf01f, 0xd01f, 0x001f, 0x03e7 - .2byte 0x30ff, 0x00dc, 0xf006, 0xf001, 0xf001, 0xf001, 0xf001, 0xf001, 0xff01, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0, 0x01f0 - .2byte 0x01f0, 0xf0c0, 0x0001, 0x0001 + .2byte 0x1240, 0x0628, 0x061f, 0x2204, 0x1422, 0x0197, 0x0415, 0x0198, 0x2207, 0x0449 + .align 2 +gUnknown_08597780:: @ 8597780 + .incbin "graphics/misc/interview_triangle_cursor.gbapal" + + .align 2 +gUnknown_085977A0:: @ 85977A0 + .incbin "graphics/misc/interview_triangle_cursor.4bpp" + + .align 2 +gUnknown_085977C0:: @ 85977C0 + .incbin "graphics/misc/interview_arrow.4bpp" + + .align 2 +gUnknown_085978C0:: @ 85978C0 + .incbin "graphics/misc/interview_buttons.4bpp" + + .align 2 +gUnknown_085979C0:: @ 85979C0 + .incbin "graphics/misc/interview_frame.gbapal" + + .align 2 +gUnknown_085979E0:: @ 85979E0 + .incbin "graphics/misc/interview_frame.4bpp.lz" + + .align 2 gUnknown_08597B14:: @ 8597B14 - .incbin "baserom.gba", 0x597b14, 0x20 + .incbin "graphics/misc/interview_frame_orange.gbapal" + .align 2 gUnknown_08597B34:: @ 8597B34 - .incbin "baserom.gba", 0x597b34, 0x20 + .incbin "graphics/misc/interview_frame_green.gbapal" + .align 2 gUnknown_08597B54:: @ 8597B54 - .incbin "baserom.gba", 0x597b54, 0xc8 + .incbin "graphics/misc/interview_frame_2.4bpp.lz" + .align 2 gUnknown_08597C1C:: @ 8597C1C - .incbin "baserom.gba", 0x597c1c, 0x8 + .incbin "graphics/misc/8597C1C.gbapal" + .align 2 gUnknown_08597C24:: @ 8597C24 - .incbin "baserom.gba", 0x597c24, 0xc + .incbin "graphics/misc/8597C24.gbapal" gUnknown_08597C30:: @ 8597C30 .byte 0x83, 0x18, 0x04, 0x00, 0x63, 0x18, 0x06, 0x00, 0x03, 0x18, 0x0a, 0x00, 0xa3, 0x18, 0x02, 0x00, 0xb0, 0x0c, 0x02, 0x00, 0x83, 0x18, 0x04, 0x00, 0x89, 0x0c, 0x02, 0x01, 0x65, 0x14, 0x0a, 0x03 .byte 0x03, 0x18, 0x0a, 0x02 + .align 2 gUnknown_08597C54:: @ 8597C54 - .incbin "baserom.gba", 0x597c54, 0x10 + .4byte 0x000001c0, 0x000011dd, 0x002021e2, 0x000031fb + .align 2 gUnknown_08597C64:: @ 8597C64 - .incbin "baserom.gba", 0x597c64, 0x20 + window_template 0x01, 0x06, 0x00, 0x12, 0x02, 0x0a, 0x0010 + window_template 0x00, 0x03, 0x0f, 0x18, 0x04, 0x0f, 0x000a + window_template 0x02, 0x01, 0x00, 0x1c, 0x20, 0x03, 0x0000 + window_template_terminator + .align 2 gUnknown_08597C84:: @ 8597C84 - .incbin "baserom.gba", 0x597c84, 0x8 + window_template 0x00, 0x16, 0x09, 0x05, 0x04, 0x0f, 0x006a gUnknown_08597C8C:: @ 8597C8C - .incbin "baserom.gba", 0x597c8c, 0x4 + .string "{CLEAR 17}$" + .align 2 gUnknown_08597C90:: @ 8597C90 .4byte gUnknown_862B810 .4byte gUnknown_862B832 .4byte gUnknown_862B84B .4byte gUnknown_862B86C + .align 2 gUnknown_08597CA0:: @ 8597CA0 - .incbin "baserom.gba", 0x597ca0, 0x20 + obj_tiles gUnknown_085977A0, 0x0020, 0x0000 + obj_tiles gUnknown_085977C0, 0x0100, 0x0002 + obj_tiles gUnknown_085978C0, 0x0100, 0x0003 + null_obj_tiles + .align 2 gUnknown_08597CC0:: @ 8597CC0 - .incbin "baserom.gba", 0x597cc0, 0x28 + obj_pal gUnknown_08597780, 0x0000 + obj_pal gUnknown_08DCB648, 0x0001 + obj_pal gUnknown_08DCB86C, 0x0002 + obj_pal gUnknown_085979C0, 0x0003 + null_obj_pal + .align 2 gUnknown_08597CE8:: @ 8597CE8 - .incbin "baserom.gba", 0x597ce8, 0x20 + obj_tiles gUnknown_085979E0, 0x0800, 0x0005 + obj_tiles gUnknown_08DCB668, 0x1000, 0x0001 + obj_tiles gUnknown_08DCB88C, 0x0800, 0x0006 + obj_tiles gUnknown_08DCBAB0, 0x1000, 0x0004 gUnknown_08597D08:: @ 8597D08 - .byte 0x00, 0x0c, 0x18, 0x38, 0x44, 0x50, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00 + .byte 0x00, 0x0c, 0x18, 0x38, 0x44, 0x50, 0x5c, 0x00 + + .align 2 +gOamData_8597D10:: @ 8597D10 + .2byte 0x0000 + .2byte 0x0000 + .2byte 0x0C00 + .align 2 gUnknown_08597D18:: @ 8597D18 - .incbin "baserom.gba", 0x597d18, 0x50 + spr_template 0x0000, 0x0000, gOamData_8597D10, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_811DF28 + + .align 2 +gUnknown_08597D30:: @ 8597D30 + .2byte 0x4000, 0xc000, 0x0400, 0x0000 + + .align 2 +gUnknown_08597D38:: @ 8597D38 + .2byte 0x0000, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597D40:: @ 8597D40 + .2byte 0x0020, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597D48:: @ 8597D48 + .2byte 0x0040, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597D50:: @ 8597D50 + .2byte 0x0060, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597D58:: @ 8597D58 + .4byte gUnknown_08597D38 + .4byte gUnknown_08597D40 + .4byte gUnknown_08597D48 + .4byte gUnknown_08597D50 + .align 2 gUnknown_08597D68:: @ 8597D68 - .incbin "baserom.gba", 0x597d68, 0x68 + spr_template 0x0001, 0x0001, gUnknown_08597D30, gUnknown_08597D58, NULL, gDummySpriteAffineAnimTable, sub_811DF28 + .align 2 +gUnknown_08597D80:: @ 8597D80 + .2byte 0x4000, 0xc000, 0x0400, 0x0000 + + .align 2 +gUnknown_08597D88:: @ 8597D88 + .2byte 0x0060, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597D90:: @ 8597D90 + .2byte 0x0040, 0x0004, 0x0020, 0x0004, 0xffff, 0x0000 + + .align 2 +gUnknown_08597D9C:: @ 8597D9C + .2byte 0x0040, 0x0004, 0x0000, 0x0004, 0xffff, 0x0000 + + .align 2 +gUnknown_08597DA8:: @ 8597DA8 + .2byte 0x0040, 0x0004, 0x0060, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597DB4:: @ 8597DB4 + .2byte 0x0040, 0x0004, 0xffff, 0x0000 + + .align 2 +gUnknown_08597DBC:: @ 8597DBC + .4byte gUnknown_08597D88 + .4byte gUnknown_08597D90 + .4byte gUnknown_08597D9C + .4byte gUnknown_08597DA8 + .4byte gUnknown_08597DB4 + + .align 2 gUnknown_08597DD0:: @ 8597DD0 - .incbin "baserom.gba", 0x597dd0, 0x20 + spr_template 0x0004, 0x0002, gUnknown_08597D80, gUnknown_08597DBC, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + .align 2 +gUnknown_08597DE8:: @ 8597DE8 + .2byte 0x0000, 0xc000, 0x0c00, 0x0000 + + .align 2 gUnknown_08597DF0:: @ 8597DF0 - .incbin "baserom.gba", 0x597df0, 0x40 + spr_template 0x0006, 0x0002, gUnknown_08597DE8, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + + .align 2 +gUnknown_08597E08:: @ 8597E08 + .2byte 0x4000, 0x4000, 0x0400, 0x0000 + + .align 2 +gUnknown_08597E10:: @ 8597E10 + .2byte 0x0000, 0x4000, 0x0400, 0x0000 + + .align 2 +gUnknown_08597E18:: @ 8597E18 + .2byte 0x0000, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597E20:: @ 8597E20 + .2byte 0x0004, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_08597E28:: @ 8597E28 + .4byte gUnknown_08597E18 + .4byte gUnknown_08597E20 + .align 2 gUnknown_08597E30:: @ 8597E30 - .incbin "baserom.gba", 0x597e30, 0x18 + spr_template 0x0003, 0x0002, gUnknown_08597E08, gUnknown_08597E28, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + .align 2 gUnknown_08597E48:: @ 8597E48 - .incbin "baserom.gba", 0x597e48, 0x18 + spr_template 0x0002, 0x0002, gUnknown_08597E10, gUnknown_08597E28, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy gUnknown_08597E60:: @ 8597E60 .byte 0x10, 0x6f, 0xc4, 0x00, 0x10, 0x4e, 0x82, 0xa0, 0x10, 0x50, 0x86, 0xaa + .align 2 gUnknown_08597E6C:: @ 8597E6C - .incbin "baserom.gba", 0x597e6c, 0x30 + .4byte gText_DelAll + .4byte gText_Cancel5 + .4byte gText_Ok2 + .4byte NULL + + .4byte gText_DelAll + .4byte gText_Cancel5 + .4byte gText_Ok2 + .4byte gText_Quiz + + .4byte gText_DelAll + .4byte gText_Cancel5 + .4byte gText_Ok2 + .4byte gText_Answer @ 8597E9C .include "data/text/easy_chat/easy_chat_groups.inc" diff --git a/data/graphics.s b/data/graphics.s index e135a63e3..278b0da1c 100644 --- a/data/graphics.s +++ b/data/graphics.s @@ -126,23 +126,23 @@ gBlankGfxCompressed:: @ 8C0237C gUnknown_08C093F0:: @ 8C093F0 .incbin "baserom.gba", 0xc093f0, 0x87ac - .align 2 + .align 2 gBattleInterface_BallStatusBarPal:: @ 8C11B9C .incbin "graphics/battle_interface/ball_status_bar.gbapal" - .align 2 + .align 2 gBattleInterface_BallDisplayPal:: @ 8C11BBC .incbin "graphics/battle_interface/ball_display.gbapal" - .align 2 + .align 2 gHealthboxElementsGfxTable:: @ 8C11BDC .incbin "baserom.gba", 0xc11bdc, 0x840 - .align 2 + .align 2 gBattleInterface_BallDisplayGfx:: @ 8C1241C .incbin "graphics/battle_interface/ball_display.4bpp" - .align 2 + .align 2 gUnknown_08C1249C:: @ 8C1249C .incbin "baserom.gba", 0xc1249c, 0x49f4 @@ -268,28 +268,28 @@ gSubstituteDollGfx:: @ 8C2CEE0 gSubstituteDollTilemap:: @ 8C2D120 .incbin "baserom.gba", 0xc2d120, 552 - + gUnknown_08C2D348:: @ 8C2D348 .incbin "baserom.gba", 0xC2D348, 196 - + gUnknown_08C2D40C:: @ 8C2D40C .incbin "baserom.gba", 0xC2D40C, 28 - + gContestConfetti_Gfx:: @ 8C2D428 .incbin "baserom.gba", 0xC2D428, 288 - + gContestConfetti_Pal:: @ 8C2D548 .incbin "baserom.gba", 0xC2D548, 40 - + gUnknown_08C2D570:: @ 8C2D570 .incbin "baserom.gba", 0xC2D570, 316 - + gUnknown_08C2D6AC:: @ 8C2D6AC .incbin "baserom.gba", 0xC2D6AC, 36 - + gUnknown_08C2D6D0:: @ 8C2D6D0 .incbin "baserom.gba", 0xC2D6D0, 40 - + gUnknown_08C2D6F8:: @ 8C2D6F8 .incbin "baserom.gba", 0xC2D6F8, 40 @@ -906,9 +906,9 @@ gMenuMoneyPal:: @ 8D9B0C8 gBuyMenuFrame_Tilemap:: @ 8D9B0F0 .incbin "baserom.gba", 0xd9b0f0, 0x140 - + gMenuMoneyGfx:: @ 8D9B230 - .incbin "baserom.gba", 0xd9b230, 0x84 + .incbin "baserom.gba", 0xd9b230, 0x84 gMenuPokeblock_Gfx:: @ 8D9B2B4 .incbin "baserom.gba", 0xd9b2b4, 0x1bc @@ -1100,7 +1100,7 @@ gUnknown_08DAAFEC:: @ 8DAAFEC .include "data/graphics/decorations/decoration_graphics.inc" @ 8DBA14C - .incbin "baserom.gba", 0xdba14c, 0x3cc + .incbin "baserom.gba", 0xdba14c, 0x3cc gUnknown_08DBA518:: @ 8DBA518 .incbin "baserom.gba", 0xdba518, 0x80 @@ -1435,43 +1435,65 @@ gUnknown_08DC9608:: @ 8DC9608 gUnknown_08DC9628:: @ 8DC9628 .incbin "baserom.gba", 0xdc9628, 0x320 - + gBerryBlenderMiscPalette:: @ 8DCAB88 .incbin "graphics/berry_blender/misc.gbapal" - + gBerryBlenderArrowPalette:: @ 8DC9948 .incbin "graphics/berry_blender/arrow.gbapal" gUnknown_8DC9988:: @ 8DC9988 - .incbin "baserom.gba", 0xdc9988, 0x200 - + .incbin "baserom.gba", 0xdc9988, 0x200 + .align 2 gBerryBlenderMarubatsuTiles:: @ 8DC9B88 .incbin "graphics/berry_blender/marubatsu.4bpp" - + .align 2 gBerryBlenderParticlesTiles:: @ 8E90818 .incbin "graphics/berry_blender/particles.4bpp" - + .space 0x120 .align 2 gBerryBlenderCountdownNumbersTiles:: @ 8DC9F88 .incbin "graphics/berry_blender/countdown_numbers.4bpp" - + .align 2 gBerryBlenderStartTiles:: @ 8DCA588 .incbin "graphics/berry_blender/start.4bpp" - - .space 0x200 - + + .space 0x200 + .align 2 gBerryBlenderArrowTiles:: @ 8DCAB88 .incbin "graphics/berry_blender/arrow.4bpp" + .align 2 gUnknown_08DCB388:: @ 8DCB388 - .incbin "baserom.gba", 0xdcb388, 0xA28 - + .incbin "baserom.gba", 0xdcb388, 0x2C0 + + .align 2 +gUnknown_08DCB648:: @ 8DCB648 + .incbin "baserom.gba", 0xdcb648, 0x20 + + .align 2 +gUnknown_08DCB668:: @ 8DCB668 + .incbin "baserom.gba", 0xdcb668, 0x204 + + .align 2 +gUnknown_08DCB86C:: @ 8DCB86C + .incbin "baserom.gba", 0xdcb86C, 0x20 + + .align 2 +gUnknown_08DCB88C:: @ 8DCB88C + .incbin "baserom.gba", 0xdcb88C, 0x224 + + .align 2 +gUnknown_08DCBAB0:: @ 8DCBAB0 + .incbin "baserom.gba", 0xdcbab0, 0x300 + + .align 2 gUnknown_08DCBDB0:: @ 8DCBDB0 .incbin "baserom.gba", 0xdcbdb0, 0x20 @@ -1604,7 +1626,7 @@ gUnknown_08DD4BF0:: @ 8DD4BF0 gUnknown_08DD4C4C:: @ 8DD4C4C .incbin "baserom.gba", 0xdd4c4c, 0xac - .align 2 + .align 2 gUnknown_08DD4CF8:: @ 8DD4CF8 .incbin "graphics/interface/unk_change_case.4bpp.lz" @@ -1638,61 +1660,61 @@ gUnknown_08DD7300:: @ 8DD7300 .incbin "baserom.gba", 0xdd7300, 0x60 gUnknown_08DD7360:: @ 8DD7360 - .incbin "baserom.gba", 0xdd7360, 0x1420 + .incbin "baserom.gba", 0xdd7360, 0x1420 gUnknown_08DD8780:: @ 8DD8780 - .incbin "baserom.gba", 0xdd8780, 0x40 + .incbin "baserom.gba", 0xdd8780, 0x40 gUnknown_08DD87C0:: @ 8DD87C0 - .incbin "baserom.gba", 0xdd87c0, 0x720 + .incbin "baserom.gba", 0xdd87c0, 0x720 gUnknown_08DD8EE0:: @ 8DD8EE0 - .incbin "baserom.gba", 0xdd8ee0, 0x1a0 + .incbin "baserom.gba", 0xdd8ee0, 0x1a0 gUnknown_08DD9080:: @ 8DD9080 - .incbin "baserom.gba", 0xdd9080, 0x60 + .incbin "baserom.gba", 0xdd9080, 0x60 gUnknown_08DD90E0:: @ 8DD90E0 - .incbin "baserom.gba", 0xdd90e0, 0x638 + .incbin "baserom.gba", 0xdd90e0, 0x638 gUnknown_08DD9718:: @ 8DD9718 - .incbin "baserom.gba", 0xdd9718, 0x15c + .incbin "baserom.gba", 0xdd9718, 0x15c gUnknown_08DD9874:: @ 8DD9874 - .incbin "baserom.gba", 0xdd9874, 0x40 + .incbin "baserom.gba", 0xdd9874, 0x40 gUnknown_08DD98B4:: @ 8DD98B4 - .incbin "baserom.gba", 0xdd98b4, 0x5a4 + .incbin "baserom.gba", 0xdd98b4, 0x5a4 gUnknown_08DD9E58:: @ 8DD9E58 - .incbin "baserom.gba", 0xdd9e58, 0x194 + .incbin "baserom.gba", 0xdd9e58, 0x194 gUnknown_08DD9FEC:: @ 8DD9FEC - .incbin "baserom.gba", 0xdd9fec, 0x40 + .incbin "baserom.gba", 0xdd9fec, 0x40 gUnknown_08DDA02C:: @ 8DDA02C - .incbin "baserom.gba", 0xdda02c, 0x610 + .incbin "baserom.gba", 0xdda02c, 0x610 gUnknown_08DDA63C:: @ 8DDA63C - .incbin "baserom.gba", 0xdda63c, 0x1c4 + .incbin "baserom.gba", 0xdda63c, 0x1c4 gUnknown_08DDA800:: @ 8DDA800 - .incbin "baserom.gba", 0xdda800, 0x40 + .incbin "baserom.gba", 0xdda800, 0x40 gUnknown_08DDA840:: @ 8DDA840 - .incbin "baserom.gba", 0xdda840, 0x600 + .incbin "baserom.gba", 0xdda840, 0x600 gUnknown_08DDAE40:: @ 8DDAE40 - .incbin "baserom.gba", 0xddae40, 0x1a0 + .incbin "baserom.gba", 0xddae40, 0x1a0 gUnknown_08DDAFE0:: @ 8DDAFE0 - .incbin "baserom.gba", 0xddafe0, 0x40 + .incbin "baserom.gba", 0xddafe0, 0x40 gUnknown_08DDB020:: @ 8DDB020 - .incbin "baserom.gba", 0xddb020, 0x2a4 + .incbin "baserom.gba", 0xddb020, 0x2a4 gUnknown_08DDB2C4:: @ 8DDB2C4 - .incbin "baserom.gba", 0xddb2c4, 0x120 + .incbin "baserom.gba", 0xddb2c4, 0x120 gUnknown_08DDB3E4:: @ 8DDB3E4 .incbin "baserom.gba", 0xddb3e4, 0x80 diff --git a/data/pokemon_animation.s b/data/pokemon_animation.s new file mode 100644 index 000000000..535c91b2d --- /dev/null +++ b/data/pokemon_animation.s @@ -0,0 +1,240 @@ + .include "asm/macros.inc" + .include "constants/constants.inc" + + .section .rodata + +gUnknown_0860A8C8:: @ 860A8C8 + .byte 0x00, 0x13, 0x02, 0x08, 0x12, 0x15, 0x17, 0x12, 0x12, 0x19, 0x02, 0x13, 0x11, 0x02, 0x13, 0x01, 0x0f, 0x15, 0x0f, 0x0a, 0x0a, 0x0f, 0x15, 0x0f, 0x09, 0x16, 0x16, 0x12, 0x10, 0x12, 0x15, 0x09 + .byte 0x12, 0x15, 0x09, 0x13, 0x13, 0x10, 0x01, 0x13, 0x06, 0x11, 0x09, 0x02, 0x02, 0x14, 0x02, 0x08, 0x0a, 0x11, 0x09, 0x09, 0x10, 0x0f, 0x02, 0x14, 0x10, 0x10, 0x15, 0x15, 0x12, 0x09, 0x0e, 0x14 + .byte 0x14, 0x0d, 0x15, 0x09, 0x09, 0x0b, 0x0b, 0x0b, 0x02, 0x02, 0x0e, 0x08, 0x08, 0x17, 0x15, 0x02, 0x13, 0x0f, 0x0f, 0x02, 0x0f, 0x15, 0x13, 0x02, 0x0b, 0x0c, 0x13, 0x0f, 0x01, 0x01, 0x14, 0x09 + .byte 0x13, 0x14, 0x0a, 0x09, 0x15, 0x15, 0x02, 0x10, 0x15, 0x10, 0x02, 0x0f, 0x02, 0x06, 0x06, 0x0e, 0x0e, 0x12, 0x0b, 0x12, 0x13, 0x11, 0x11, 0x11, 0x13, 0x19, 0x14, 0x0f, 0x13, 0x16, 0x17, 0x0e + .byte 0x0e, 0x10, 0x09, 0x19, 0x05, 0x12, 0x19, 0x16, 0x17, 0x01, 0x13, 0x13, 0x13, 0x15, 0x15, 0x13, 0x19, 0x16, 0x17, 0x02, 0x0f, 0x09, 0x0d, 0x12, 0x12, 0x02, 0x09, 0x12, 0x15, 0x17, 0x15, 0x15 + .byte 0x09, 0x12, 0x10, 0x11, 0x0f, 0x0a, 0x11, 0x0a, 0x02, 0x0f, 0x0b, 0x16, 0x12, 0x13, 0x13, 0x13, 0x11, 0x12, 0x14, 0x12, 0x13, 0x16, 0x11, 0x12, 0x13, 0x02, 0x10, 0x11, 0x11, 0x11, 0x10, 0x13 + .byte 0x02, 0x11, 0x0b, 0x02, 0x14, 0x14, 0x12, 0x13, 0x01, 0x14, 0x0b, 0x14, 0x08, 0x09, 0x0f, 0x05, 0x09, 0x15, 0x09, 0x0d, 0x15, 0x13, 0x15, 0x0f, 0x13, 0x09, 0x17, 0x17, 0x0a, 0x08, 0x02, 0x02 + .byte 0x05, 0x0f, 0x02, 0x15, 0x09, 0x09, 0x19, 0x15, 0x0e, 0x01, 0x13, 0x02, 0x0f, 0x07, 0x02, 0x08, 0x17, 0x02, 0x13, 0x16, 0x17, 0x19, 0x0e, 0x09, 0x0e, 0x19, 0x17, 0x18, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x15, 0x09, 0x12, 0x10, 0x17, 0x02, 0x12, 0x19, 0x12, 0x08 + .byte 0x0f, 0x15, 0x0b, 0x08, 0x11, 0x08, 0x0f, 0x02, 0x10, 0x10, 0x13, 0x09, 0x14, 0x0a, 0x01, 0x14, 0x12, 0x15, 0x13, 0x15, 0x07, 0x11, 0x11, 0x03, 0x11, 0x19, 0x19, 0x13, 0x12, 0x01, 0x13, 0x14 + .byte 0x0e, 0x17, 0x01, 0x0b, 0x09, 0x04, 0x0f, 0x15, 0x03, 0x19, 0x04, 0x15, 0x13, 0x01, 0x0f, 0x0e, 0x0e, 0x15, 0x09, 0x0e, 0x17, 0x13, 0x09, 0x09, 0x0a, 0x08, 0x0f, 0x0f, 0x13, 0x13, 0x10, 0x10 + .byte 0x14, 0x12, 0x12, 0x09, 0x14, 0x14, 0x11, 0x11, 0x12, 0x01, 0x01, 0x18, 0x02, 0x10, 0x08, 0x0b, 0x0b, 0x0e, 0x13, 0x09, 0x0d, 0x13, 0x11, 0x11, 0x14, 0x01, 0x01, 0x0b, 0x15, 0x02, 0x15, 0x09 + .byte 0x0e, 0x11, 0x11, 0x11, 0x0c, 0x0b, 0x0f, 0x09, 0x14, 0x14, 0x14, 0x09, 0x09, 0x08, 0x0f, 0x15, 0x09, 0x09, 0x09, 0x09, 0x19, 0x17, 0x0d, 0x01, 0x01, 0x11, 0x14, 0x11 + +gUnknown_0860AA64:: @ 860AA64 + .byte 0x00, 0x05, 0x01, 0x01, 0x00, 0x0f, 0x01, 0x04, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x00, 0xff + +gUnknown_0860AA80:: @ 860AA80 + .byte 0x06, 0x1e, 0xfe, 0x0f, 0x06, 0x1e, 0xff, 0x00 + + .align 2 +gUnknown_0860AA88:: @ 860AA88 + .4byte pokemonanimfunc_00 + .4byte pokemonanimfunc_01 + .4byte pokemonanimfunc_02 + .4byte pokemonanimfunc_03 + .4byte pokemonanimfunc_04 + .4byte pokemonanimfunc_05 + .4byte pokemonanimfunc_06 + .4byte pokemonanimfunc_07 + .4byte pokemonanimfunc_08 + .4byte pokemonanimfunc_09 + .4byte pokemonanimfunc_0A + .4byte pokemonanimfunc_0B + .4byte pokemonanimfunc_0C + .4byte pokemonanimfunc_0D + .4byte pokemonanimfunc_0E + .4byte pokemonanimfunc_0F + .4byte pokemonanimfunc_10 + .4byte pokemonanimfunc_11 + .4byte pokemonanimfunc_12 + .4byte pokemonanimfunc_13 + .4byte pokemonanimfunc_14 + .4byte pokemonanimfunc_15 + .4byte pokemonanimfunc_16 + .4byte pokemonanimfunc_17 + .4byte pokemonanimfunc_18 + .4byte pokemonanimfunc_19 + .4byte pokemonanimfunc_1A + .4byte pokemonanimfunc_1B + .4byte pokemonanimfunc_1C + .4byte pokemonanimfunc_1D + .4byte pokemonanimfunc_1E + .4byte pokemonanimfunc_1F + .4byte pokemonanimfunc_20 + .4byte pokemonanimfunc_21 + .4byte pokemonanimfunc_22 + .4byte pokemonanimfunc_23 + .4byte pokemonanimfunc_24 + .4byte pokemonanimfunc_25 + .4byte pokemonanimfunc_26 + .4byte pokemonanimfunc_27 + .4byte pokemonanimfunc_28 + .4byte pokemonanimfunc_29 + .4byte pokemonanimfunc_2A + .4byte pokemonanimfunc_2B + .4byte pokemonanimfunc_2C + .4byte pokemonanimfunc_2D + .4byte pokemonanimfunc_2E + .4byte pokemonanimfunc_2F + .4byte pokemonanimfunc_30 + .4byte pokemonanimfunc_31 + .4byte pokemonanimfunc_32 + .4byte pokemonanimfunc_33 + .4byte pokemonanimfunc_34 + .4byte pokemonanimfunc_35 + .4byte pokemonanimfunc_36 + .4byte pokemonanimfunc_37 + .4byte pokemonanimfunc_38 + .4byte pokemonanimfunc_39 + .4byte pokemonanimfunc_3A + .4byte pokemonanimfunc_3B + .4byte pokemonanimfunc_3C + .4byte pokemonanimfunc_3D + .4byte pokemonanimfunc_3E + .4byte pokemonanimfunc_3F + .4byte pokemonanimfunc_40 + .4byte pokemonanimfunc_41 + .4byte pokemonanimfunc_42 + .4byte pokemonanimfunc_43 + .4byte pokemonanimfunc_44 + .4byte pokemonanimfunc_45 + .4byte pokemonanimfunc_46 + .4byte pokemonanimfunc_47 + .4byte pokemonanimfunc_48 + .4byte pokemonanimfunc_49 + .4byte pokemonanimfunc_4A + .4byte pokemonanimfunc_4B + .4byte pokemonanimfunc_4C + .4byte pokemonanimfunc_4D + .4byte pokemonanimfunc_4E + .4byte pokemonanimfunc_4F + .4byte pokemonanimfunc_50 + .4byte pokemonanimfunc_51 + .4byte pokemonanimfunc_52 + .4byte pokemonanimfunc_53 + .4byte pokemonanimfunc_54 + .4byte pokemonanimfunc_55 + .4byte pokemonanimfunc_56 + .4byte pokemonanimfunc_57 + .4byte pokemonanimfunc_58 + .4byte pokemonanimfunc_59 + .4byte pokemonanimfunc_5A + .4byte pokemonanimfunc_5B + .4byte pokemonanimfunc_5C + .4byte pokemonanimfunc_5D + .4byte pokemonanimfunc_5E + .4byte pokemonanimfunc_5F + .4byte pokemonanimfunc_60 + .4byte pokemonanimfunc_61 + .4byte pokemonanimfunc_62 + .4byte pokemonanimfunc_63 + .4byte pokemonanimfunc_64 + .4byte pokemonanimfunc_65 + .4byte pokemonanimfunc_66 + .4byte pokemonanimfunc_67 + .4byte pokemonanimfunc_68 + .4byte pokemonanimfunc_69 + .4byte pokemonanimfunc_6A + .4byte pokemonanimfunc_6B + .4byte pokemonanimfunc_6C + .4byte pokemonanimfunc_6D + .4byte pokemonanimfunc_6E + .4byte pokemonanimfunc_6F + .4byte pokemonanimfunc_70 + .4byte pokemonanimfunc_71 + .4byte pokemonanimfunc_72 + .4byte pokemonanimfunc_73 + .4byte pokemonanimfunc_74 + .4byte pokemonanimfunc_75 + .4byte pokemonanimfunc_76 + .4byte pokemonanimfunc_77 + .4byte pokemonanimfunc_78 + .4byte pokemonanimfunc_79 + .4byte pokemonanimfunc_7A + .4byte pokemonanimfunc_7B + .4byte pokemonanimfunc_7C + .4byte pokemonanimfunc_7D + .4byte pokemonanimfunc_7E + .4byte pokemonanimfunc_7F + .4byte pokemonanimfunc_80 + .4byte pokemonanimfunc_81 + .4byte pokemonanimfunc_82 + .4byte pokemonanimfunc_83 + .4byte pokemonanimfunc_84 + .4byte pokemonanimfunc_85 + .4byte pokemonanimfunc_86 + .4byte pokemonanimfunc_87 + .4byte pokemonanimfunc_88 + .4byte pokemonanimfunc_89 + .4byte pokemonanimfunc_8A + .4byte pokemonanimfunc_8B + .4byte pokemonanimfunc_8C + .4byte pokemonanimfunc_8D + .4byte pokemonanimfunc_8E + .4byte pokemonanimfunc_8F + .4byte pokemonanimfunc_90 + .4byte pokemonanimfunc_91 + .4byte pokemonanimfunc_92 + .4byte pokemonanimfunc_93 + .4byte pokemonanimfunc_94 + .4byte pokemonanimfunc_95 + .4byte pokemonanimfunc_96 + +gUnknown_0860ACE4:: @ 860ACE4 + .byte 0x60, 0x5f, 0x02, 0x5e, 0x03, 0x46, 0x6d, 0x3e, 0x6e, 0x6f, 0x70, 0x3f, 0x71, 0x13, 0x72, 0x6c, 0x6b, 0x3a, 0x64, 0x14, 0x4f, 0x5d, 0x0f, 0x4c, 0x61, 0x57, 0x58, 0x67, 0x66, 0x59, 0x74, 0x73 + .byte 0x5a, 0x75, 0x76, 0x5b, 0x77, 0x78, 0x65, 0x63, 0x5c, 0x62, 0x6a, 0x69, 0x68, 0x7b, 0x7a, 0x79, 0x7e, 0x7d, 0x7c, 0x81, 0x80, 0x7f, 0x84, 0x82, 0x83, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b + .byte 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96 + +gUnknown_0860AD2F:: @ 860AD2F + .byte 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02, 0x00, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x02, 0x01, 0x02, 0x01 + + .align 2 +gSpriteAffineAnim_860AD48:: @ 860AD48 + obj_rot_scal_anim_frame 0x100, 0x100, 0, 0 + obj_rot_scal_anim_end + + .align 2 +gSpriteAffineAnim_860AD58:: @ 860AD58 + obj_rot_scal_anim_frame -0x100, 0x100, 0, 0 + obj_rot_scal_anim_end + + .align 2 +gSpriteAffineAnimTable_860AD68:: @ 860AD68 + .4byte gSpriteAffineAnim_860AD48 + .4byte gSpriteAffineAnim_860AD58 + +gUnknown_0860AD70:: @ 860AD70 + .byte 0xff, 0xff, 0x06, 0x02, 0x00, 0x06, 0xfe, 0x02, 0x06, 0x02, 0x00, 0x06, 0xfe, 0xfe, 0x06, 0x02, 0x00, 0x06, 0xfe, 0x02, 0x06, 0x02, 0x00, 0x06, 0xff, 0xff, 0x06, 0x00, 0x00, 0x00 + +gUnknown_0860AD8E:: @ 860AD8E + .byte 0x00, 0x08, 0x08, 0x08, 0xf8, 0x0c, 0xf8, 0x08, 0x0c, 0x08, 0xf8, 0x0c, 0xf8, 0x08, 0x0c, 0x08, 0xf8, 0x0c, 0xf8, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x08, 0x10, 0x08, 0xf8, 0x18, 0xf8, 0x08 + .byte 0x18, 0x08, 0xf8, 0x18, 0xf8, 0x08, 0x18, 0x08, 0xf8, 0x18, 0xf8, 0x00, 0x18, 0x00, 0x00, 0x00 + +gUnknown_0860ADBE:: @ 860ADBE + .byte 0x01, 0x01, 0x0c, 0xfe, 0x00, 0x0c, 0x01, 0xff, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00 + +gUnknown_0860ADCC:: @ 860ADCC + .byte 0x00, 0x01, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 + .byte 0x00, 0x0f, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 + .byte 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 + .byte 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 + .byte 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00 + +gUnknown_0860AE1C:: @ 860AE1C + .byte 0x00, 0x05, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x01, 0x04, 0x00, 0x00 + .byte 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00 + .byte 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00 + .byte 0x00, 0x02, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00 + +gUnknown_0860AE54:: @ 860AE54 + .byte 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 + .byte 0x00, 0x14, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 + .byte 0x00, 0x01, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00 + + .align 2 +gUnknown_0860AE7C:: @ 860AE7C + .4byte gUnknown_0860ADCC + .4byte gUnknown_0860AE1C + .4byte gUnknown_0860AE54 + + .align 1 +gUnknown_0860AE88:: @ 860AE88 + .2byte 0x001f, 0x03e0, 0x7c00, 0x0000 diff --git a/data/strings.s b/data/strings.s index a0661f13d..82c5520e6 100644 --- a/data/strings.s +++ b/data/strings.s @@ -2906,112 +2906,112 @@ gUnknown_085EC04F:: @ 85EC04F gUnknown_085EC063:: @ 85EC063 .string "{SPECIAL_F7 0x00}/{LV}{SPECIAL_F7 0x01}{SPECIAL_F7 0x02}$" -gUnknown_085EC06C:: @ 85EC06C +gText_CombineFourWordsOrPhrases:: @ 85EC06C .string "Combine four words or phrases$" -gUnknown_085EC08A:: @ 85EC08A +gText_AndMakeYourProfile:: @ 85EC08A .string "and make your profile.$" -gUnknown_085EC0A1:: @ 85EC0A1 +gText_CombineSixWordsOrPhrases:: @ 85EC0A1 .string "Combine six words or phrases$" -gUnknown_085EC0BE:: @ 85EC0BE +gText_AndMakeAMessage:: @ 85EC0BE .string "and make a message.$" -gUnknown_085EC0D2:: @ 85EC0D2 +gText_FindWordsThatDescribeYour:: @ 85EC0D2 .string "Find words that describe your$" -gUnknown_085EC0F0:: @ 85EC0F0 +gText_FeelingsRightNow:: @ 85EC0F0 .string "feelings right now.$" gUnknown_085EC104:: @ 85EC104 .string "With four phrases,$" -gUnknown_085EC117:: @ 85EC117 +gText_CombineNineWordsOrPhrases:: @ 85EC117 .string "Combine nine words or phrases$" -gUnknown_085EC135:: @ 85EC135 +gText_AndMakeAMessage2:: @ 85EC135 .string "and make a message.$" -gUnknown_085EC149:: @ 85EC149 +gText_ChangeJustOneWordOrPhrase:: @ 85EC149 .string "Change just one word or phrase$" -gUnknown_085EC168:: @ 85EC168 +gText_AndImproveTheBardsSong:: @ 85EC168 .string "and improve the BARD’s song.$" -gUnknown_085EC185:: @ 85EC185 +gText_YourProfile:: @ 85EC185 .string "Your profile$" -gUnknown_085EC192:: @ 85EC192 +gText_YourFeelingAtTheBattlesStart:: @ 85EC192 .string "Your feeling at the battle’s start$" -gUnknown_085EC1B5:: @ 85EC1B5 +gText_WhatYouSayIfYouWin:: @ 85EC1B5 .string "What you say if you win a battle$" -gUnknown_085EC1D6:: @ 85EC1D6 +gText_WhatYouSayIfYouLose:: @ 85EC1D6 .string "What you say if you lose a battle$" -gUnknown_085EC1F8:: @ 85EC1F8 +gText_TheAnswer:: @ 85EC1F8 .string "The answer$" -gUnknown_085EC203:: @ 85EC203 +gText_TheMailMessage:: @ 85EC203 .string "The MAIL message$" gUnknown_085EC214:: @ 85EC214 .string "The MAIL salutation$" -gUnknown_085EC228:: @ 85EC228 +gText_TheBardsSong2:: @ 85EC228 .string "The new song$" -gUnknown_085EC235:: @ 85EC235 +gText_CombineTwoWordsOrPhrases:: @ 85EC235 .string "Combine two words or phrases$" -gUnknown_085EC252:: @ 85EC252 +gText_AndMakeATrendySaying:: @ 85EC252 .string "and make a trendy saying.$" -gUnknown_085EC26C:: @ 85EC26C +gText_TheTrendySaying:: @ 85EC26C .string "The trendy saying$" -gUnknown_085EC27E:: @ 85EC27E +gText_IsAsShownOkay:: @ 85EC27E .string "is as shown. Okay?$" -gUnknown_085EC291:: @ 85EC291 +gText_CombineTwoWordsOrPhrases2:: @ 85EC291 .string "Combine two words or phrases$" -gUnknown_085EC2AE:: @ 85EC2AE +gText_ToTeachHerAGoodSaying:: @ 85EC2AE .string "to teach her a good saying.$" -gUnknown_085EC2CA:: @ 85EC2CA +gText_FindWordsWhichFit:: @ 85EC2CA .string "Find words which fit$" -gUnknown_085EC2DF:: @ 85EC2DF +gText_TheTrainersImage:: @ 85EC2DF .string "the TRAINER’s image.$" -gUnknown_085EC2F4:: @ 85EC2F4 +gText_TheImage:: @ 85EC2F4 .string "The image:$" -gUnknown_085EC2FF:: @ 85EC2FF +gText_OutOfTheListedChoices:: @ 85EC2FF .string "Out of the listed choices,$" -gUnknown_085EC31A:: @ 85EC31A +gText_SelectTheAnswerToTheQuiz:: @ 85EC31A .string "select the answer to the quiz!$" -gUnknown_085EC339:: @ 85EC339 +gText_AndCreateAQuiz:: @ 85EC339 .string "and create a quiz!$" -gUnknown_085EC34C:: @ 85EC34C +gText_PickAWordOrPhraseAnd:: @ 85EC34C .string "Pick a word or phrase and$" -gUnknown_085EC366:: @ 85EC366 +gText_SetTheQuizAnswer:: @ 85EC366 .string "set the quiz answer.$" -gUnknown_085EC37B:: @ 85EC37B +gText_TheAnswerColon:: @ 85EC37B .string "The answer:$" gUnknown_085EC387:: @ 85EC387 .string "The quiz:$" -gUnknown_085EC391:: @ 85EC391 +gText_ApprenticePhrase:: @ 85EC391 .string "Apprentice’s phrase:$" gText_QuitEditing:: @ 85EC3A6 @@ -3020,10 +3020,10 @@ gText_QuitEditing:: @ 85EC3A6 gText_StopGivingPkmnMail:: @ 85EC3B4 .string "Stop giving the POKéMON MAIL?$" -gUnknown_085EC3D2:: @ 85EC3D2 +gText_AndFillOutTheQuestionnaire:: @ 85EC3D2 .string "and fill out the questionnaire.$" -gUnknown_085EC3F2:: @ 85EC3F2 +gText_LetsReplyToTheInterview:: @ 85EC3F2 .string "Let’s reply to the interview!$" gText_AllTextBeingEditedWill:: @ 85EC410 @@ -3056,7 +3056,7 @@ gText_OriginalSongWillBeUsed:: @ 85EC4E9 gUnknown_085EC509:: @ 85EC509 .string "That’s trendy already!$" -gText_CombineTwoWordsOrPhrases:: @ 85EC520 +gText_CombineTwoWordsOrPhrases3:: @ 85EC520 .string "Combine two words or phrases.$" gUnknown_085EC53E:: @ 85EC53E @@ -3074,40 +3074,40 @@ gUnknown_085EC584:: @ 85EC584 gUnknown_085EC594:: @ 85EC594 .string "Cancel the selection?$" -gUnknown_085EC5AA:: @ 85EC5AA +gText_Profile:: @ 85EC5AA .string "PROFILE$" -gUnknown_085EC5B2:: @ 85EC5B2 +gText_AtTheBattlesStart:: @ 85EC5B2 .string "At the battle’s start:$" -gUnknown_085EC5C9:: @ 85EC5C9 +gText_UponWinningABattle:: @ 85EC5C9 .string "Upon winning a battle:$" -gUnknown_085EC5E0:: @ 85EC5E0 +gText_UponLosingABattle:: @ 85EC5E0 .string "Upon losing a battle:$" -gUnknown_085EC5F6:: @ 85EC5F6 +gText_TheBardsSong:: @ 85EC5F6 .string "The BARD’s Song$" -gUnknown_085EC606:: @ 85EC606 +gText_WhatsHipAndHappening:: @ 85EC606 .string "What’s hip and happening?$" -gUnknown_085EC620:: @ 85EC620 +gText_Interview:: @ 85EC620 .string "Interview$" -gUnknown_085EC62A:: @ 85EC62A +gText_GoodSaying:: @ 85EC62A .string "Good saying$" -gUnknown_085EC636:: @ 85EC636 +gText_FansQuestion:: @ 85EC636 .string "Fan’s question$" gUnknown_085EC645:: @ 85EC645 .string "クイズの こたえは?$" @ "kuizuno kotaeha?" ("The quiz's answer is?" in Japanese) -gUnknown_085EC650:: @ 85EC650 +gText_ApprenticesPhrase:: @ 85EC650 .string "Apprentice’s phrase$" -gUnknown_085EC664:: @ 85EC664 +gText_Questionnaire:: @ 85EC664 .string "QUESTIONNAIRE$" gText_YouCannotQuitHere:: @ 85EC672 @@ -3122,13 +3122,13 @@ gText_F700sQuiz:: @ 85EC6A8 gText_Lady:: @ 85EC6B2 .string "Lady$" -gUnknown_085EC6B7:: @ 85EC6B7 +gText_AfterYouHaveReadTheQuiz:: @ 85EC6B7 .string "After you have read the quiz$" -gUnknown_085EC6D4:: @ 85EC6D4 +gText_QuestionPressTheAButton:: @ 85EC6D4 .string "question, press the A Button.$" -gUnknown_085EC6F2:: @ 85EC6F2 +gText_TheQuizAnswerIs:: @ 85EC6F2 .string "The quiz answer is?$" gText_LikeToQuitQuiz:: @ 85EC706 @@ -3137,7 +3137,7 @@ gText_LikeToQuitQuiz:: @ 85EC706 gText_ChallengeQuestionMark:: @ 85EC727 .string "challenge?$" -gUnknown_085EC732:: @ 85EC732 +gText_IsThisQuizOK:: @ 85EC732 .string "Is this quiz OK?$" gText_CreateAQuiz:: @ 85EC743 @@ -5370,19 +5370,19 @@ gUnknown_085EFCA0:: @ 85EFCA0 gUnknown_085EFCAB:: @ 85EFCAB .string "SEAFLOOR2$" -gUnknown_085EFCB5:: @ 85EFCB5 +gText_DelAll:: @ 85EFCB5 .string "DEL. ALL$" -gUnknown_085EFCBE:: @ 85EFCBE +gText_Cancel5:: @ 85EFCBE .string "CANCEL$" -gUnknown_085EFCC5:: @ 85EFCC5 +gText_Ok2:: @ 85EFCC5 .string "OK$" -gUnknown_085EFCC8:: @ 85EFCC8 +gText_Quiz:: @ 85EFCC8 .string "QUIZ$" -gUnknown_085EFCCD:: @ 85EFCCD +gText_Answer:: @ 85EFCCD .string "ANSWER$" gText_PokeBalls:: @ 85EFCD4 diff --git a/graphics/misc/8597C1C.pal b/graphics/misc/8597C1C.pal new file mode 100644 index 000000000..c075c5ce1 --- /dev/null +++ b/graphics/misc/8597C1C.pal @@ -0,0 +1,7 @@ +JASC-PAL +0100 +4 +0 0 0 +0 0 0 +57 205 255 +172 172 238 diff --git a/graphics/misc/8597C24.pal b/graphics/misc/8597C24.pal new file mode 100644 index 000000000..5c8eed0ba --- /dev/null +++ b/graphics/misc/8597C24.pal @@ -0,0 +1,9 @@ +JASC-PAL +0100 +6 +0 0 0 +255 255 255 +98 98 98 +222 213 222 +65 139 74 +230 230 230 diff --git a/graphics/misc/interview.pal b/graphics/misc/interview.pal new file mode 100644 index 000000000..dfe91b5de --- /dev/null +++ b/graphics/misc/interview.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +255 255 148 +255 197 148 +238 139 90 +189 90 41 +255 213 213 +246 180 180 +197 131 131 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +41 49 49 +98 98 98 +180 189 180 +222 213 222 +255 255 255 diff --git a/graphics/misc/interview_arrow.png b/graphics/misc/interview_arrow.png new file mode 100644 index 000000000..1c1073d2f Binary files /dev/null and b/graphics/misc/interview_arrow.png differ diff --git a/graphics/misc/interview_buttons.png b/graphics/misc/interview_buttons.png new file mode 100644 index 000000000..d6dfc7cbd Binary files /dev/null and b/graphics/misc/interview_buttons.png differ diff --git a/graphics/misc/interview_frame.png b/graphics/misc/interview_frame.png new file mode 100644 index 000000000..63470e729 Binary files /dev/null and b/graphics/misc/interview_frame.png differ diff --git a/graphics/misc/interview_frame_2.png b/graphics/misc/interview_frame_2.png new file mode 100644 index 000000000..c0fbba87d Binary files /dev/null and b/graphics/misc/interview_frame_2.png differ diff --git a/graphics/misc/interview_frame_green.pal b/graphics/misc/interview_frame_green.pal new file mode 100644 index 000000000..c64a7216f --- /dev/null +++ b/graphics/misc/interview_frame_green.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +189 255 139 +156 230 106 +123 180 90 +180 213 255 +139 180 230 +115 139 172 +0 0 0 +255 131 131 +238 82 82 +255 238 180 +255 255 213 +115 115 115 +180 189 180 +222 213 222 +255 255 255 diff --git a/graphics/misc/interview_frame_orange.pal b/graphics/misc/interview_frame_orange.pal new file mode 100644 index 000000000..165bad8de --- /dev/null +++ b/graphics/misc/interview_frame_orange.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +255 189 115 +255 139 57 +205 98 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +255 238 180 +255 255 213 +115 115 115 +180 189 180 +222 213 222 +255 255 255 diff --git a/graphics/misc/interview_triangle_cursor.png b/graphics/misc/interview_triangle_cursor.png new file mode 100644 index 000000000..a4a3f0bb1 Binary files /dev/null and b/graphics/misc/interview_triangle_cursor.png differ diff --git a/ld_script.txt b/ld_script.txt index abb7f64da..3c6cf3bf0 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -475,7 +475,8 @@ SECTIONS { data/intro_credits_graphics.o(.rodata); src/evolution_graphics.o(.rodata); src/bard_music.o(.rodata); - data/data_860A4AC.o(.rodata); + data/battle_link_817C95C.o(.rodata); + data/pokemon_animation.o(.rodata); src/battle_controller_recorded_opponent.o(.rodata); src/battle_controller_recorded_player.o(.rodata); src/battle_dome_cards.o(.rodata); -- cgit v1.2.3 From efe19e95c846a658c5e9bd9908de548db00dcab5 Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Sun, 7 Jan 2018 01:29:26 -0600 Subject: Extract door animations --- asm/macros.inc | 14 + data/battle_anim_8170478.s | 48 +- data/field_door.s | 613 +++++++++++++++++++++++- data/rom_8486FEC.s | 8 - graphics/door_anims/00/0.png | Bin 0 -> 170 bytes graphics/door_anims/00/1.png | Bin 0 -> 158 bytes graphics/door_anims/00/2.png | Bin 0 -> 134 bytes graphics/door_anims/01/0.png | Bin 0 -> 183 bytes graphics/door_anims/01/1.png | Bin 0 -> 179 bytes graphics/door_anims/01/2.png | Bin 0 -> 161 bytes graphics/door_anims/02/0.png | Bin 0 -> 151 bytes graphics/door_anims/02/1.png | Bin 0 -> 153 bytes graphics/door_anims/02/2.png | Bin 0 -> 129 bytes graphics/door_anims/03/0.png | Bin 0 -> 183 bytes graphics/door_anims/03/1.png | Bin 0 -> 179 bytes graphics/door_anims/03/2.png | Bin 0 -> 161 bytes graphics/door_anims/04/0.png | Bin 0 -> 180 bytes graphics/door_anims/04/1.png | Bin 0 -> 167 bytes graphics/door_anims/04/2.png | Bin 0 -> 145 bytes graphics/door_anims/05/0.png | Bin 0 -> 165 bytes graphics/door_anims/05/1.png | Bin 0 -> 156 bytes graphics/door_anims/05/2.png | Bin 0 -> 138 bytes graphics/door_anims/06/0.png | Bin 0 -> 172 bytes graphics/door_anims/06/1.png | Bin 0 -> 171 bytes graphics/door_anims/06/2.png | Bin 0 -> 142 bytes graphics/door_anims/07/0.png | Bin 0 -> 172 bytes graphics/door_anims/07/1.png | Bin 0 -> 171 bytes graphics/door_anims/07/2.png | Bin 0 -> 142 bytes graphics/door_anims/08/0.png | Bin 0 -> 186 bytes graphics/door_anims/08/1.png | Bin 0 -> 171 bytes graphics/door_anims/08/2.png | Bin 0 -> 151 bytes graphics/door_anims/09/0.png | Bin 0 -> 181 bytes graphics/door_anims/09/1.png | Bin 0 -> 169 bytes graphics/door_anims/09/2.png | Bin 0 -> 145 bytes graphics/door_anims/10/0.png | Bin 0 -> 177 bytes graphics/door_anims/10/1.png | Bin 0 -> 167 bytes graphics/door_anims/10/2.png | Bin 0 -> 139 bytes graphics/door_anims/11/0.png | Bin 0 -> 199 bytes graphics/door_anims/11/1.png | Bin 0 -> 177 bytes graphics/door_anims/11/2.png | Bin 0 -> 148 bytes graphics/door_anims/12/0.png | Bin 0 -> 170 bytes graphics/door_anims/12/1.png | Bin 0 -> 158 bytes graphics/door_anims/12/2.png | Bin 0 -> 134 bytes graphics/door_anims/13/0.png | Bin 0 -> 178 bytes graphics/door_anims/13/1.png | Bin 0 -> 177 bytes graphics/door_anims/13/2.png | Bin 0 -> 149 bytes graphics/door_anims/14/0.png | Bin 0 -> 187 bytes graphics/door_anims/14/1.png | Bin 0 -> 180 bytes graphics/door_anims/14/2.png | Bin 0 -> 117 bytes graphics/door_anims/15/0.png | Bin 0 -> 177 bytes graphics/door_anims/15/1.png | Bin 0 -> 171 bytes graphics/door_anims/15/2.png | Bin 0 -> 146 bytes graphics/door_anims/16/0.png | Bin 0 -> 162 bytes graphics/door_anims/16/1.png | Bin 0 -> 152 bytes graphics/door_anims/16/2.png | Bin 0 -> 136 bytes graphics/door_anims/17/0.png | Bin 0 -> 162 bytes graphics/door_anims/17/1.png | Bin 0 -> 152 bytes graphics/door_anims/17/2.png | Bin 0 -> 130 bytes graphics/door_anims/18/0.png | Bin 0 -> 194 bytes graphics/door_anims/18/1.png | Bin 0 -> 167 bytes graphics/door_anims/18/2.png | Bin 0 -> 152 bytes graphics/door_anims/19/0.png | Bin 0 -> 196 bytes graphics/door_anims/19/1.png | Bin 0 -> 168 bytes graphics/door_anims/19/2.png | Bin 0 -> 152 bytes graphics/door_anims/20/0.png | Bin 0 -> 205 bytes graphics/door_anims/20/1.png | Bin 0 -> 205 bytes graphics/door_anims/20/2.png | Bin 0 -> 180 bytes graphics/door_anims/21/0.png | Bin 0 -> 198 bytes graphics/door_anims/21/1.png | Bin 0 -> 192 bytes graphics/door_anims/21/2.png | Bin 0 -> 162 bytes graphics/door_anims/22/0.png | Bin 0 -> 154 bytes graphics/door_anims/22/1.png | Bin 0 -> 136 bytes graphics/door_anims/22/2.png | Bin 0 -> 119 bytes graphics/door_anims/23/0.png | Bin 0 -> 186 bytes graphics/door_anims/23/1.png | Bin 0 -> 176 bytes graphics/door_anims/23/2.png | Bin 0 -> 143 bytes graphics/door_anims/24/0.png | Bin 0 -> 176 bytes graphics/door_anims/24/1.png | Bin 0 -> 176 bytes graphics/door_anims/24/2.png | Bin 0 -> 152 bytes graphics/door_anims/25/0.png | Bin 0 -> 188 bytes graphics/door_anims/25/1.png | Bin 0 -> 183 bytes graphics/door_anims/25/2.png | Bin 0 -> 157 bytes graphics/door_anims/26/0.png | Bin 0 -> 232 bytes graphics/door_anims/26/1.png | Bin 0 -> 223 bytes graphics/door_anims/26/2.png | Bin 0 -> 185 bytes graphics/door_anims/27/0.png | Bin 0 -> 126 bytes graphics/door_anims/27/1.png | Bin 0 -> 137 bytes graphics/door_anims/27/2.png | Bin 0 -> 124 bytes graphics/door_anims/28/0.png | Bin 0 -> 167 bytes graphics/door_anims/28/1.png | Bin 0 -> 155 bytes graphics/door_anims/28/2.png | Bin 0 -> 118 bytes graphics/door_anims/29/0.png | Bin 0 -> 186 bytes graphics/door_anims/29/1.png | Bin 0 -> 171 bytes graphics/door_anims/29/2.png | Bin 0 -> 151 bytes graphics/door_anims/30/0.png | Bin 0 -> 167 bytes graphics/door_anims/30/1.png | Bin 0 -> 154 bytes graphics/door_anims/30/2.png | Bin 0 -> 117 bytes graphics/door_anims/31/0.png | Bin 0 -> 129 bytes graphics/door_anims/31/1.png | Bin 0 -> 121 bytes graphics/door_anims/31/2.png | Bin 0 -> 104 bytes graphics/door_anims/32/0.png | Bin 0 -> 194 bytes graphics/door_anims/32/1.png | Bin 0 -> 198 bytes graphics/door_anims/32/2.png | Bin 0 -> 138 bytes graphics/door_anims/33/0.png | Bin 0 -> 144 bytes graphics/door_anims/33/1.png | Bin 0 -> 147 bytes graphics/door_anims/33/2.png | Bin 0 -> 144 bytes graphics/door_anims/34/0.png | Bin 0 -> 148 bytes graphics/door_anims/34/1.png | Bin 0 -> 157 bytes graphics/door_anims/34/2.png | Bin 0 -> 126 bytes graphics/door_anims/35/0.png | Bin 0 -> 161 bytes graphics/door_anims/35/1.png | Bin 0 -> 155 bytes graphics/door_anims/35/2.png | Bin 0 -> 148 bytes graphics/door_anims/36/0.png | Bin 0 -> 138 bytes graphics/door_anims/36/1.png | Bin 0 -> 150 bytes graphics/door_anims/36/2.png | Bin 0 -> 144 bytes graphics/door_anims/37/0.png | Bin 0 -> 201 bytes graphics/door_anims/37/1.png | Bin 0 -> 188 bytes graphics/door_anims/37/2.png | Bin 0 -> 115 bytes graphics/door_anims/38/0.png | Bin 0 -> 206 bytes graphics/door_anims/38/1.png | Bin 0 -> 213 bytes graphics/door_anims/38/2.png | Bin 0 -> 161 bytes graphics/door_anims/39/0.png | Bin 0 -> 133 bytes graphics/door_anims/39/1.png | Bin 0 -> 146 bytes graphics/door_anims/39/2.png | Bin 0 -> 132 bytes graphics/door_anims/40/0.png | Bin 0 -> 205 bytes graphics/door_anims/40/1.png | Bin 0 -> 194 bytes graphics/door_anims/40/2.png | Bin 0 -> 168 bytes graphics/door_anims/41/0.png | Bin 0 -> 198 bytes graphics/door_anims/41/1.png | Bin 0 -> 184 bytes graphics/door_anims/41/2.png | Bin 0 -> 159 bytes graphics/door_anims/42/0.png | Bin 0 -> 211 bytes graphics/door_anims/42/1.png | Bin 0 -> 216 bytes graphics/door_anims/42/2.png | Bin 0 -> 190 bytes graphics/door_anims/42/3.png | Bin 0 -> 180 bytes graphics/door_anims/43/0.png | Bin 0 -> 170 bytes graphics/door_anims/43/1.png | Bin 0 -> 168 bytes graphics/door_anims/43/2.png | Bin 0 -> 161 bytes graphics/door_anims/44/0_left.png | Bin 0 -> 172 bytes graphics/door_anims/44/0_right.png | Bin 0 -> 172 bytes graphics/door_anims/44/1_left.png | Bin 0 -> 162 bytes graphics/door_anims/44/1_right.png | Bin 0 -> 161 bytes graphics/door_anims/44/2_left.png | Bin 0 -> 120 bytes graphics/door_anims/44/2_right.png | Bin 0 -> 121 bytes graphics/door_anims/45/0.png | Bin 0 -> 167 bytes graphics/door_anims/45/1.png | Bin 0 -> 153 bytes graphics/door_anims/45/2.png | Bin 0 -> 127 bytes graphics/door_anims/46/0.png | Bin 0 -> 144 bytes graphics/door_anims/46/1.png | Bin 0 -> 142 bytes graphics/door_anims/46/2.png | Bin 0 -> 127 bytes graphics/door_anims/47/0.png | Bin 0 -> 193 bytes graphics/door_anims/47/1.png | Bin 0 -> 189 bytes graphics/door_anims/47/2.png | Bin 0 -> 183 bytes graphics/door_anims/48/0.png | Bin 0 -> 167 bytes graphics/door_anims/48/1.png | Bin 0 -> 193 bytes graphics/door_anims/48/2.png | Bin 0 -> 150 bytes graphics/door_anims/48/3.png | Bin 0 -> 133 bytes graphics/door_anims/49/0.png | Bin 0 -> 125 bytes graphics/door_anims/49/1.png | Bin 0 -> 120 bytes graphics/door_anims/49/2.png | Bin 0 -> 116 bytes graphics/door_anims/50/0.png | Bin 0 -> 121 bytes graphics/door_anims/50/1.png | Bin 0 -> 116 bytes graphics/door_anims/50/2.png | Bin 0 -> 113 bytes graphics/door_anims/unused_848EDEC/0_bottom.png | Bin 0 -> 106 bytes graphics/door_anims/unused_848EDEC/0_top.png | Bin 0 -> 111 bytes graphics/door_anims/unused_848EDEC/1_bottom.png | Bin 0 -> 105 bytes graphics/door_anims/unused_848EDEC/1_top.png | Bin 0 -> 99 bytes graphics/door_anims/unused_848EDEC/2_bottom.png | Bin 0 -> 89 bytes graphics/door_anims/unused_848EDEC/2_top.png | Bin 0 -> 90 bytes ld_script.txt | 1 - 169 files changed, 643 insertions(+), 41 deletions(-) delete mode 100644 data/rom_8486FEC.s create mode 100644 graphics/door_anims/00/0.png create mode 100644 graphics/door_anims/00/1.png create mode 100644 graphics/door_anims/00/2.png create mode 100644 graphics/door_anims/01/0.png create mode 100644 graphics/door_anims/01/1.png create mode 100644 graphics/door_anims/01/2.png create mode 100644 graphics/door_anims/02/0.png create mode 100644 graphics/door_anims/02/1.png create mode 100644 graphics/door_anims/02/2.png create mode 100644 graphics/door_anims/03/0.png create mode 100644 graphics/door_anims/03/1.png create mode 100644 graphics/door_anims/03/2.png create mode 100644 graphics/door_anims/04/0.png create mode 100644 graphics/door_anims/04/1.png create mode 100644 graphics/door_anims/04/2.png create mode 100644 graphics/door_anims/05/0.png create mode 100644 graphics/door_anims/05/1.png create mode 100644 graphics/door_anims/05/2.png create mode 100644 graphics/door_anims/06/0.png create mode 100644 graphics/door_anims/06/1.png create mode 100644 graphics/door_anims/06/2.png create mode 100644 graphics/door_anims/07/0.png create mode 100644 graphics/door_anims/07/1.png create mode 100644 graphics/door_anims/07/2.png create mode 100644 graphics/door_anims/08/0.png create mode 100644 graphics/door_anims/08/1.png create mode 100644 graphics/door_anims/08/2.png create mode 100644 graphics/door_anims/09/0.png create mode 100644 graphics/door_anims/09/1.png create mode 100644 graphics/door_anims/09/2.png create mode 100644 graphics/door_anims/10/0.png create mode 100644 graphics/door_anims/10/1.png create mode 100644 graphics/door_anims/10/2.png create mode 100644 graphics/door_anims/11/0.png create mode 100644 graphics/door_anims/11/1.png create mode 100644 graphics/door_anims/11/2.png create mode 100644 graphics/door_anims/12/0.png create mode 100644 graphics/door_anims/12/1.png create mode 100644 graphics/door_anims/12/2.png create mode 100644 graphics/door_anims/13/0.png create mode 100644 graphics/door_anims/13/1.png create mode 100644 graphics/door_anims/13/2.png create mode 100644 graphics/door_anims/14/0.png create mode 100644 graphics/door_anims/14/1.png create mode 100644 graphics/door_anims/14/2.png create mode 100644 graphics/door_anims/15/0.png create mode 100644 graphics/door_anims/15/1.png create mode 100644 graphics/door_anims/15/2.png create mode 100644 graphics/door_anims/16/0.png create mode 100644 graphics/door_anims/16/1.png create mode 100644 graphics/door_anims/16/2.png create mode 100644 graphics/door_anims/17/0.png create mode 100644 graphics/door_anims/17/1.png create mode 100644 graphics/door_anims/17/2.png create mode 100644 graphics/door_anims/18/0.png create mode 100644 graphics/door_anims/18/1.png create mode 100644 graphics/door_anims/18/2.png create mode 100644 graphics/door_anims/19/0.png create mode 100644 graphics/door_anims/19/1.png create mode 100644 graphics/door_anims/19/2.png create mode 100644 graphics/door_anims/20/0.png create mode 100644 graphics/door_anims/20/1.png create mode 100644 graphics/door_anims/20/2.png create mode 100644 graphics/door_anims/21/0.png create mode 100644 graphics/door_anims/21/1.png create mode 100644 graphics/door_anims/21/2.png create mode 100644 graphics/door_anims/22/0.png create mode 100644 graphics/door_anims/22/1.png create mode 100644 graphics/door_anims/22/2.png create mode 100644 graphics/door_anims/23/0.png create mode 100644 graphics/door_anims/23/1.png create mode 100644 graphics/door_anims/23/2.png create mode 100644 graphics/door_anims/24/0.png create mode 100644 graphics/door_anims/24/1.png create mode 100644 graphics/door_anims/24/2.png create mode 100644 graphics/door_anims/25/0.png create mode 100644 graphics/door_anims/25/1.png create mode 100644 graphics/door_anims/25/2.png create mode 100644 graphics/door_anims/26/0.png create mode 100644 graphics/door_anims/26/1.png create mode 100644 graphics/door_anims/26/2.png create mode 100644 graphics/door_anims/27/0.png create mode 100644 graphics/door_anims/27/1.png create mode 100644 graphics/door_anims/27/2.png create mode 100644 graphics/door_anims/28/0.png create mode 100644 graphics/door_anims/28/1.png create mode 100644 graphics/door_anims/28/2.png create mode 100644 graphics/door_anims/29/0.png create mode 100644 graphics/door_anims/29/1.png create mode 100644 graphics/door_anims/29/2.png create mode 100644 graphics/door_anims/30/0.png create mode 100644 graphics/door_anims/30/1.png create mode 100644 graphics/door_anims/30/2.png create mode 100644 graphics/door_anims/31/0.png create mode 100644 graphics/door_anims/31/1.png create mode 100644 graphics/door_anims/31/2.png create mode 100644 graphics/door_anims/32/0.png create mode 100644 graphics/door_anims/32/1.png create mode 100644 graphics/door_anims/32/2.png create mode 100644 graphics/door_anims/33/0.png create mode 100644 graphics/door_anims/33/1.png create mode 100644 graphics/door_anims/33/2.png create mode 100644 graphics/door_anims/34/0.png create mode 100644 graphics/door_anims/34/1.png create mode 100644 graphics/door_anims/34/2.png create mode 100644 graphics/door_anims/35/0.png create mode 100644 graphics/door_anims/35/1.png create mode 100644 graphics/door_anims/35/2.png create mode 100644 graphics/door_anims/36/0.png create mode 100644 graphics/door_anims/36/1.png create mode 100644 graphics/door_anims/36/2.png create mode 100644 graphics/door_anims/37/0.png create mode 100644 graphics/door_anims/37/1.png create mode 100644 graphics/door_anims/37/2.png create mode 100644 graphics/door_anims/38/0.png create mode 100644 graphics/door_anims/38/1.png create mode 100644 graphics/door_anims/38/2.png create mode 100644 graphics/door_anims/39/0.png create mode 100644 graphics/door_anims/39/1.png create mode 100644 graphics/door_anims/39/2.png create mode 100644 graphics/door_anims/40/0.png create mode 100644 graphics/door_anims/40/1.png create mode 100644 graphics/door_anims/40/2.png create mode 100644 graphics/door_anims/41/0.png create mode 100644 graphics/door_anims/41/1.png create mode 100644 graphics/door_anims/41/2.png create mode 100644 graphics/door_anims/42/0.png create mode 100644 graphics/door_anims/42/1.png create mode 100644 graphics/door_anims/42/2.png create mode 100644 graphics/door_anims/42/3.png create mode 100644 graphics/door_anims/43/0.png create mode 100644 graphics/door_anims/43/1.png create mode 100644 graphics/door_anims/43/2.png create mode 100644 graphics/door_anims/44/0_left.png create mode 100644 graphics/door_anims/44/0_right.png create mode 100644 graphics/door_anims/44/1_left.png create mode 100644 graphics/door_anims/44/1_right.png create mode 100644 graphics/door_anims/44/2_left.png create mode 100644 graphics/door_anims/44/2_right.png create mode 100644 graphics/door_anims/45/0.png create mode 100644 graphics/door_anims/45/1.png create mode 100644 graphics/door_anims/45/2.png create mode 100644 graphics/door_anims/46/0.png create mode 100644 graphics/door_anims/46/1.png create mode 100644 graphics/door_anims/46/2.png create mode 100644 graphics/door_anims/47/0.png create mode 100644 graphics/door_anims/47/1.png create mode 100644 graphics/door_anims/47/2.png create mode 100644 graphics/door_anims/48/0.png create mode 100644 graphics/door_anims/48/1.png create mode 100644 graphics/door_anims/48/2.png create mode 100644 graphics/door_anims/48/3.png create mode 100644 graphics/door_anims/49/0.png create mode 100644 graphics/door_anims/49/1.png create mode 100644 graphics/door_anims/49/2.png create mode 100644 graphics/door_anims/50/0.png create mode 100644 graphics/door_anims/50/1.png create mode 100644 graphics/door_anims/50/2.png create mode 100644 graphics/door_anims/unused_848EDEC/0_bottom.png create mode 100644 graphics/door_anims/unused_848EDEC/0_top.png create mode 100644 graphics/door_anims/unused_848EDEC/1_bottom.png create mode 100644 graphics/door_anims/unused_848EDEC/1_top.png create mode 100644 graphics/door_anims/unused_848EDEC/2_bottom.png create mode 100644 graphics/door_anims/unused_848EDEC/2_top.png diff --git a/asm/macros.inc b/asm/macros.inc index ee58cc14e..7c35e059d 100644 --- a/asm/macros.inc +++ b/asm/macros.inc @@ -119,3 +119,17 @@ .2byte \unknown .fill 4 @ padding .endm + + .macro door_anim_frame unknown, offset + .byte \unknown + .byte 0 @ padding + .2byte \offset + .endm + + .macro door_anim_gfx metatile_num, unknown, unknown2, tile_addr, palette_addr + .2byte \metatile_num + .byte \unknown + .byte \unknown2 + .4byte \tile_addr + .4byte \palette_addr + .endm diff --git a/data/battle_anim_8170478.s b/data/battle_anim_8170478.s index 0e0f749fe..e5d599a3c 100644 --- a/data/battle_anim_8170478.s +++ b/data/battle_anim_8170478.s @@ -10,33 +10,33 @@ gUnknown_085E5088:: @ 85E5088 .align 2 gUnknown_085E5094:: @ 85E5094 - .4byte gUnknown_08C1A490, 0xd6ec0100 - .4byte gUnknown_08C1A490, 0xd6ed0100 - .4byte gUnknown_08C1A490, 0xd6ee0100 - .4byte gUnknown_08C1A490, 0xd6ef0100 - .4byte gUnknown_08C1A490, 0xd6f00100 - .4byte gUnknown_08C1A490, 0xd6f10100 - .4byte gUnknown_08C1A490, 0xd6f20100 - .4byte gUnknown_08C1A490, 0xd6f30100 - .4byte gUnknown_08C1A490, 0xd6f40100 - .4byte gUnknown_08C1A490, 0xd6f50100 - .4byte gUnknown_08C1A490, 0xd6f60100 - .4byte gUnknown_08C1A490, 0xd6f70100 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6ec + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6ed + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6ee + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6ef + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f0 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f1 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f2 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f3 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f4 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f5 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f6 + obj_tiles gUnknown_08C1A490, 0x0100, 0xd6f7 .align 2 gUnknown_085E50F4:: @ 85E50F4 - .4byte gUnknown_08C1A564, 0x0000d6ec - .4byte gUnknown_08C1A564, 0x0000d6ed - .4byte gUnknown_08C1A564, 0x0000d6ee - .4byte gUnknown_08C1A564, 0x0000d6ef - .4byte gUnknown_08C1A564, 0x0000d6f0 - .4byte gUnknown_08C1A564, 0x0000d6f1 - .4byte gUnknown_08C1A564, 0x0000d6f2 - .4byte gUnknown_08C1A564, 0x0000d6f3 - .4byte gUnknown_08C1A564, 0x0000d6f4 - .4byte gUnknown_08C1A564, 0x0000d6f5 - .4byte gUnknown_08C1A564, 0x0000d6f6 - .4byte gUnknown_08C1A564, 0x0000d6f7 + obj_pal gUnknown_08C1A564, 0xd6ec + obj_pal gUnknown_08C1A564, 0xd6ed + obj_pal gUnknown_08C1A564, 0xd6ee + obj_pal gUnknown_08C1A564, 0xd6ef + obj_pal gUnknown_08C1A564, 0xd6f0 + obj_pal gUnknown_08C1A564, 0xd6f1 + obj_pal gUnknown_08C1A564, 0xd6f2 + obj_pal gUnknown_08C1A564, 0xd6f3 + obj_pal gUnknown_08C1A564, 0xd6f4 + obj_pal gUnknown_08C1A564, 0xd6f5 + obj_pal gUnknown_08C1A564, 0xd6f6 + obj_pal gUnknown_08C1A564, 0xd6f7 .align 2 gUnknown_085E5154:: @ 85E5154 diff --git a/data/field_door.s b/data/field_door.s index 69a7c6534..85c1ae919 100644 --- a/data/field_door.s +++ b/data/field_door.s @@ -1,17 +1,614 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" + .include "asm/macros.inc" + .include "constants/constants.inc" - .section .rodata - .align 2, 0 + .section .rodata + .align 2 +DoorAnimTiles_04:: + .incbin "graphics/door_anims/04/0.4bpp" + .incbin "graphics/door_anims/04/1.4bpp" + .incbin "graphics/door_anims/04/2.4bpp" + + .space 32 + +DoorAnimTiles_05:: + .incbin "graphics/door_anims/05/0.4bpp" + .incbin "graphics/door_anims/05/1.4bpp" + .incbin "graphics/door_anims/05/2.4bpp" + + .space 32 + +DoorAnimTiles_08:: + .incbin "graphics/door_anims/08/0.4bpp" + .incbin "graphics/door_anims/08/1.4bpp" + .incbin "graphics/door_anims/08/2.4bpp" + + .space 32 + +DoorAnimTiles_15:: + .incbin "graphics/door_anims/15/0.4bpp" + .incbin "graphics/door_anims/15/1.4bpp" + .incbin "graphics/door_anims/15/2.4bpp" + + .space 32 + +DoorAnimTiles_16:: + .incbin "graphics/door_anims/16/0.4bpp" + .incbin "graphics/door_anims/16/1.4bpp" + .incbin "graphics/door_anims/16/2.4bpp" + + .space 32 + +DoorAnimTiles_00:: + .incbin "graphics/door_anims/00/0.4bpp" + .incbin "graphics/door_anims/00/1.4bpp" + .incbin "graphics/door_anims/00/2.4bpp" + + .space 32 + +DoorAnimTiles_01:: + .incbin "graphics/door_anims/01/0.4bpp" + .incbin "graphics/door_anims/01/1.4bpp" + .incbin "graphics/door_anims/01/2.4bpp" + +DoorAnimTiles_02:: + .incbin "graphics/door_anims/02/0.4bpp" + .incbin "graphics/door_anims/02/1.4bpp" + .incbin "graphics/door_anims/02/2.4bpp" + +DoorAnimTiles_03:: + .incbin "graphics/door_anims/03/0.4bpp" + .incbin "graphics/door_anims/03/1.4bpp" + .incbin "graphics/door_anims/03/2.4bpp" + +DoorAnimTiles_06:: + .incbin "graphics/door_anims/06/0.4bpp" + .incbin "graphics/door_anims/06/1.4bpp" + .incbin "graphics/door_anims/06/2.4bpp" + + .space 32 + +DoorAnimTiles_07:: + .incbin "graphics/door_anims/07/0.4bpp" + .incbin "graphics/door_anims/07/1.4bpp" + .incbin "graphics/door_anims/07/2.4bpp" + + .space 32 + +DoorAnimTiles_09:: + .incbin "graphics/door_anims/09/0.4bpp" + .incbin "graphics/door_anims/09/1.4bpp" + .incbin "graphics/door_anims/09/2.4bpp" + + .space 0x5900 + + .incbin "graphics/door_anims/unused_848EDEC/0_top.4bpp" + .incbin "graphics/door_anims/unused_848EDEC/1_top.4bpp" + .incbin "graphics/door_anims/unused_848EDEC/2_top.4bpp" + + .space 0x140 + + .incbin "graphics/door_anims/unused_848EDEC/0_bottom.4bpp" + .incbin "graphics/door_anims/unused_848EDEC/1_bottom.4bpp" + .incbin "graphics/door_anims/unused_848EDEC/2_bottom.4bpp" + + .space 32 + +DoorAnimTiles_10:: + .incbin "graphics/door_anims/10/0.4bpp" + .incbin "graphics/door_anims/10/1.4bpp" + .incbin "graphics/door_anims/10/2.4bpp" + + .space 32 + +DoorAnimTiles_11:: + .incbin "graphics/door_anims/11/0.4bpp" + .incbin "graphics/door_anims/11/1.4bpp" + .incbin "graphics/door_anims/11/2.4bpp" + + .space 32 + +DoorAnimTiles_12:: + .incbin "graphics/door_anims/12/0.4bpp" + .incbin "graphics/door_anims/12/1.4bpp" + .incbin "graphics/door_anims/12/2.4bpp" + + .space 32 + +DoorAnimTiles_13:: + .incbin "graphics/door_anims/13/0.4bpp" + .incbin "graphics/door_anims/13/1.4bpp" + .incbin "graphics/door_anims/13/2.4bpp" + + .space 32 + +DoorAnimTiles_14:: + .incbin "graphics/door_anims/14/0.4bpp" + .incbin "graphics/door_anims/14/1.4bpp" + .incbin "graphics/door_anims/14/2.4bpp" + + .space 32 + +DoorAnimTiles_17:: + .incbin "graphics/door_anims/17/0.4bpp" + .incbin "graphics/door_anims/17/1.4bpp" + .incbin "graphics/door_anims/17/2.4bpp" + + .space 32 + +DoorAnimTiles_18:: + .incbin "graphics/door_anims/18/0.4bpp" + .incbin "graphics/door_anims/18/1.4bpp" + .incbin "graphics/door_anims/18/2.4bpp" + + .space 32 + +DoorAnimTiles_19:: + .incbin "graphics/door_anims/19/0.4bpp" + .incbin "graphics/door_anims/19/1.4bpp" + .incbin "graphics/door_anims/19/2.4bpp" + + .space 32 + +DoorAnimTiles_20:: + .incbin "graphics/door_anims/20/0.4bpp" + .incbin "graphics/door_anims/20/1.4bpp" + .incbin "graphics/door_anims/20/2.4bpp" + + .space 32 + +DoorAnimTiles_21:: + .incbin "graphics/door_anims/21/0.4bpp" + .incbin "graphics/door_anims/21/1.4bpp" + .incbin "graphics/door_anims/21/2.4bpp" + + .space 32 + +DoorAnimTiles_22:: + .incbin "graphics/door_anims/22/0.4bpp" + .incbin "graphics/door_anims/22/1.4bpp" + .incbin "graphics/door_anims/22/2.4bpp" + + .space 32 + +DoorAnimTiles_23:: + .incbin "graphics/door_anims/23/0.4bpp" + .incbin "graphics/door_anims/23/1.4bpp" + .incbin "graphics/door_anims/23/2.4bpp" + + .space 32 + +DoorAnimTiles_24:: + .incbin "graphics/door_anims/24/0.4bpp" + .incbin "graphics/door_anims/24/1.4bpp" + .incbin "graphics/door_anims/24/2.4bpp" + + .space 32 + +DoorAnimTiles_25:: + .incbin "graphics/door_anims/25/0.4bpp" + .incbin "graphics/door_anims/25/1.4bpp" + .incbin "graphics/door_anims/25/2.4bpp" + + .space 32 + +DoorAnimTiles_26:: + .incbin "graphics/door_anims/26/0.4bpp" + .incbin "graphics/door_anims/26/1.4bpp" + .incbin "graphics/door_anims/26/2.4bpp" + + .space 32 + +DoorAnimTiles_27:: + .incbin "graphics/door_anims/27/0.4bpp" + .incbin "graphics/door_anims/27/1.4bpp" + .incbin "graphics/door_anims/27/2.4bpp" + + .space 32 + +DoorAnimTiles_28:: + .incbin "graphics/door_anims/28/0.4bpp" + .incbin "graphics/door_anims/28/1.4bpp" + .incbin "graphics/door_anims/28/2.4bpp" + + .space 32 + +DoorAnimTiles_29:: + .incbin "graphics/door_anims/29/0.4bpp" + .incbin "graphics/door_anims/29/1.4bpp" + .incbin "graphics/door_anims/29/2.4bpp" + + .space 32 + +DoorAnimTiles_30:: + .incbin "graphics/door_anims/30/0.4bpp" + .incbin "graphics/door_anims/30/1.4bpp" + .incbin "graphics/door_anims/30/2.4bpp" + + .space 32 + +DoorAnimTiles_31:: + .incbin "graphics/door_anims/31/0.4bpp" + .incbin "graphics/door_anims/31/1.4bpp" + .incbin "graphics/door_anims/31/2.4bpp" + + .space 32 + +DoorAnimTiles_32:: + .incbin "graphics/door_anims/32/0.4bpp" + .incbin "graphics/door_anims/32/1.4bpp" + .incbin "graphics/door_anims/32/2.4bpp" + + .space 32 + +DoorAnimTiles_33:: + .incbin "graphics/door_anims/33/0.4bpp" + .incbin "graphics/door_anims/33/1.4bpp" + .incbin "graphics/door_anims/33/2.4bpp" + + .space 32 + +DoorAnimTiles_34:: + .incbin "graphics/door_anims/34/0.4bpp" + .incbin "graphics/door_anims/34/1.4bpp" + .incbin "graphics/door_anims/34/2.4bpp" + + .space 32 + +DoorAnimTiles_35:: + .incbin "graphics/door_anims/35/0.4bpp" + .incbin "graphics/door_anims/35/1.4bpp" + .incbin "graphics/door_anims/35/2.4bpp" + + .space 32 + +DoorAnimTiles_36:: + .incbin "graphics/door_anims/36/0.4bpp" + .incbin "graphics/door_anims/36/1.4bpp" + .incbin "graphics/door_anims/36/2.4bpp" + + .space 32 + +DoorAnimTiles_37:: + .incbin "graphics/door_anims/37/0.4bpp" + .incbin "graphics/door_anims/37/1.4bpp" + .incbin "graphics/door_anims/37/2.4bpp" + + .space 32 + +DoorAnimTiles_38:: + .incbin "graphics/door_anims/38/0.4bpp" + .incbin "graphics/door_anims/38/1.4bpp" + .incbin "graphics/door_anims/38/2.4bpp" + + .space 32 + +DoorAnimTiles_39:: + .incbin "graphics/door_anims/39/0.4bpp" + .incbin "graphics/door_anims/39/1.4bpp" + .incbin "graphics/door_anims/39/2.4bpp" + + .space 32 + +DoorAnimTiles_40:: + .incbin "graphics/door_anims/40/0.4bpp" + .incbin "graphics/door_anims/40/1.4bpp" + .incbin "graphics/door_anims/40/2.4bpp" + + .space 32 + +DoorAnimTiles_41:: + .incbin "graphics/door_anims/41/0.4bpp" + .incbin "graphics/door_anims/41/1.4bpp" + .incbin "graphics/door_anims/41/2.4bpp" + +DoorAnimTiles_42:: + .incbin "graphics/door_anims/42/0.4bpp" + .incbin "graphics/door_anims/42/1.4bpp" + .incbin "graphics/door_anims/42/2.4bpp" + .incbin "graphics/door_anims/42/3.4bpp" + + .space 32 + +DoorAnimTiles_43:: + .incbin "graphics/door_anims/43/0.4bpp" + .incbin "graphics/door_anims/43/1.4bpp" + .incbin "graphics/door_anims/43/2.4bpp" + + .space 32 + +DoorAnimTiles_44:: + .incbin "graphics/door_anims/44/0_left.4bpp" + .incbin "graphics/door_anims/44/0_right.4bpp" + .incbin "graphics/door_anims/44/1_left.4bpp" + .incbin "graphics/door_anims/44/1_right.4bpp" + .incbin "graphics/door_anims/44/2_left.4bpp" + .incbin "graphics/door_anims/44/2_right.4bpp" + + .space 32 + +DoorAnimTiles_45:: + .incbin "graphics/door_anims/45/0.4bpp" + .incbin "graphics/door_anims/45/1.4bpp" + .incbin "graphics/door_anims/45/2.4bpp" + + .space 32 + +DoorAnimTiles_46:: + .incbin "graphics/door_anims/46/0.4bpp" + .incbin "graphics/door_anims/46/1.4bpp" + .incbin "graphics/door_anims/46/2.4bpp" + + .space 32 + +DoorAnimTiles_47:: + .incbin "graphics/door_anims/47/0.4bpp" + .incbin "graphics/door_anims/47/1.4bpp" + .incbin "graphics/door_anims/47/2.4bpp" + + .space 32 + +DoorAnimTiles_48:: + .incbin "graphics/door_anims/48/0.4bpp" + .incbin "graphics/door_anims/48/1.4bpp" + .incbin "graphics/door_anims/48/2.4bpp" + .incbin "graphics/door_anims/48/3.4bpp" + + .space 32 + +DoorAnimTiles_49:: + .incbin "graphics/door_anims/49/0.4bpp" + .incbin "graphics/door_anims/49/1.4bpp" + .incbin "graphics/door_anims/49/2.4bpp" + + .space 32 + +DoorAnimTiles_50:: + .incbin "graphics/door_anims/50/0.4bpp" + .incbin "graphics/door_anims/50/1.4bpp" + .incbin "graphics/door_anims/50/2.4bpp" + + .space 32 + + .align 2 gUnknown_08496F8C:: @ 8496F8C - .incbin "baserom.gba", 0x496f8c, 0x14 + door_anim_frame 4, -1 + door_anim_frame 4, 0 + door_anim_frame 4, 0x100 + door_anim_frame 4, 0x200 + door_anim_frame 0, 0 + .align 2 gUnknown_08496FA0:: @ 8496FA0 - .incbin "baserom.gba", 0x496fa0, 0x14 + door_anim_frame 4, 0x200 + door_anim_frame 4, 0x100 + door_anim_frame 4, 0 + door_anim_frame 4, -1 + door_anim_frame 0, 0 + .align 2 gUnknown_08496FB4:: @ 8496FB4 - .incbin "baserom.gba", 0x496fb4, 0x1c0 + door_anim_frame 4, -1 + door_anim_frame 4, 0 + door_anim_frame 4, 0x200 + door_anim_frame 4, 0x400 + door_anim_frame 0, 0 + + .align 2 +gUnknown_08496FC8:: @ 8496FB4 + door_anim_frame 4, 0x400 + door_anim_frame 4, 0x200 + door_anim_frame 4, 0 + door_anim_frame 4, -1 + door_anim_frame 0, 0 + +DoorAnimPalettes_8496FDC:: @ 8496FDC + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_8496FE4:: @ 8496FE4 + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_8496FEC:: @ 8496FEC + .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 + +DoorAnimPalettes_8496FF4:: @ 8496FF4 + .byte 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_8496FFC:: @ 8496FFC + .byte 0x0a, 0x0a, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 + +DoorAnimPalettes_8497004:: @ 8497004 + .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 + +DoorAnimPalettes_849700C:: @ 849700C + .byte 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b + +DoorAnimPalettes_8497014:: @ 8497014 + .byte 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a + +DoorAnimPalettes_849701C:: @ 849701C + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_8497024:: @ 8497024 + .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 + +DoorAnimPalettes_849702C:: @ 849702C + .byte 0x0a, 0x0a, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 + +DoorAnimPalettes_8497034:: @ 8497034 + .byte 0x09, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_849703C:: @ 849703C + .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 + +DoorAnimPalettes_8497044:: @ 8497044 + .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 +DoorAnimPalettes_849704C:: @ 849704C + .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 + +DoorAnimPalettes_8497054:: @ 8497054 + .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 + +DoorAnimPalettes_849705C:: @ 849705C + .byte 0x00, 0x00, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 + +DoorAnimPalettes_8497064:: @ 8497064 + .byte 0x06, 0x06, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_849706C:: @ 849706C + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_8497074:: @ 8497074 + .byte 0x06, 0x06, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 + +DoorAnimPalettes_849707C:: @ 849707C + .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 + +DoorAnimPalettes_8497084:: @ 8497084 + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_849708C:: @ 849708C + .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 + +DoorAnimPalettes_8497094:: @ 8497094 + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_849709C:: @ 849709C + .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 + +DoorAnimPalettes_84970A4:: @ 84970A4 + .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 + +DoorAnimPalettes_84970AC:: @ 84970AC + .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 + +DoorAnimPalettes_84970B4:: @ 84970B4 + .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 + +DoorAnimPalettes_84970BC:: @ 84970BC + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_84970C4:: @ 84970C4 + .byte 0x0b, 0x0b, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_84970CC:: @ 84970CC + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_84970D4:: @ 84970D4 + .byte 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_84970DC:: @ 84970DC + .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 + +DoorAnimPalettes_84970E4:: @ 84970E4 + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_84970EC:: @ 84970EC + .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 + +DoorAnimPalettes_84970F4:: @ 84970F4 + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_84970FC:: @ 84970FC + .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 + +DoorAnimPalettes_8497104:: @ 8497104 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + +DoorAnimPalettes_849710C:: @ 849710C + .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 + +DoorAnimPalettes_8497114:: @ 8497114 + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_849711C:: @ 849711C + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_8497124:: @ 8497124 + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_849712C:: @ 849712C + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_8497134:: @ 8497134 + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_849713C:: @ 849713C + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_8497144:: @ 8497144 + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_849714C:: @ 849714C + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 + +DoorAnimPalettes_8497154:: @ 8497154 + .byte 0x09, 0x09, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_849715C:: @ 849715C + .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 + +DoorAnimPalettes_8497164:: @ 8497164 + .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + +DoorAnimPalettes_849716C:: @ 849716C + .byte 0x09, 0x09, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 + + .align 2 gUnknown_08497174:: @ 8497174 - .incbin "baserom.gba", 0x497174, 0x288 + door_anim_gfx 0x0021, 0x00, 0x01, DoorAnimTiles_00, DoorAnimPalettes_8496FDC + door_anim_gfx 0x0061, 0x01, 0x01, DoorAnimTiles_01, DoorAnimPalettes_8496FE4 + door_anim_gfx 0x01cd, 0x01, 0x01, DoorAnimTiles_02, DoorAnimPalettes_8496FEC + door_anim_gfx 0x0041, 0x01, 0x01, DoorAnimTiles_03, DoorAnimPalettes_8496FF4 + door_anim_gfx 0x0248, 0x00, 0x01, DoorAnimTiles_04, DoorAnimPalettes_8496FFC + door_anim_gfx 0x0249, 0x00, 0x01, DoorAnimTiles_05, DoorAnimPalettes_8497004 + door_anim_gfx 0x022f, 0x00, 0x01, DoorAnimTiles_06, DoorAnimPalettes_849700C + door_anim_gfx 0x021f, 0x00, 0x01, DoorAnimTiles_07, DoorAnimPalettes_8497014 + door_anim_gfx 0x02a5, 0x00, 0x01, DoorAnimTiles_08, DoorAnimPalettes_849701C + door_anim_gfx 0x0287, 0x00, 0x01, DoorAnimTiles_09, DoorAnimPalettes_849702C + door_anim_gfx 0x02ac, 0x00, 0x01, DoorAnimTiles_10, DoorAnimPalettes_849706C + door_anim_gfx 0x03a1, 0x00, 0x01, DoorAnimTiles_11, DoorAnimPalettes_8497074 + door_anim_gfx 0x02dc, 0x00, 0x01, DoorAnimTiles_12, DoorAnimPalettes_8497064 + door_anim_gfx 0x0225, 0x00, 0x01, DoorAnimTiles_13, DoorAnimPalettes_849705C + door_anim_gfx 0x01db, 0x01, 0x01, DoorAnimTiles_14, DoorAnimPalettes_8497084 + door_anim_gfx 0x0246, 0x00, 0x01, DoorAnimTiles_15, DoorAnimPalettes_8497024 + door_anim_gfx 0x028e, 0x00, 0x01, DoorAnimTiles_16, DoorAnimPalettes_849707C + door_anim_gfx 0x02a1, 0x00, 0x01, DoorAnimTiles_17, DoorAnimPalettes_8497034 + door_anim_gfx 0x021c, 0x00, 0x01, DoorAnimTiles_18, DoorAnimPalettes_849704C + door_anim_gfx 0x021e, 0x00, 0x01, DoorAnimTiles_19, DoorAnimPalettes_8497054 + door_anim_gfx 0x021d, 0x01, 0x01, DoorAnimTiles_20, DoorAnimPalettes_849703C + door_anim_gfx 0x021a, 0x00, 0x01, DoorAnimTiles_21, DoorAnimPalettes_8497044 + door_anim_gfx 0x0224, 0x00, 0x01, DoorAnimTiles_22, DoorAnimPalettes_849708C + door_anim_gfx 0x0289, 0x00, 0x01, DoorAnimTiles_23, DoorAnimPalettes_8497094 + door_anim_gfx 0x030c, 0x01, 0x01, DoorAnimTiles_24, DoorAnimPalettes_849709C + door_anim_gfx 0x032d, 0x01, 0x01, DoorAnimTiles_25, DoorAnimPalettes_84970A4 + door_anim_gfx 0x02ed, 0x01, 0x01, DoorAnimTiles_26, DoorAnimPalettes_84970AC + door_anim_gfx 0x0264, 0x01, 0x01, DoorAnimTiles_27, DoorAnimPalettes_84970B4 + door_anim_gfx 0x022b, 0x00, 0x01, DoorAnimTiles_28, DoorAnimPalettes_84970BC + door_anim_gfx 0x02f7, 0x00, 0x01, DoorAnimTiles_29, DoorAnimPalettes_84970C4 + door_anim_gfx 0x0297, 0x00, 0x01, DoorAnimTiles_30, DoorAnimPalettes_84970CC + door_anim_gfx 0x0285, 0x01, 0x01, DoorAnimTiles_31, DoorAnimPalettes_84970D4 + door_anim_gfx 0x025d, 0x01, 0x01, DoorAnimTiles_32, DoorAnimPalettes_84970DC + door_anim_gfx 0x020e, 0x01, 0x01, DoorAnimTiles_33, DoorAnimPalettes_84970E4 + door_anim_gfx 0x03b0, 0x01, 0x01, DoorAnimTiles_34, DoorAnimPalettes_84970EC + door_anim_gfx 0x028a, 0x01, 0x01, DoorAnimTiles_35, DoorAnimPalettes_84970F4 + door_anim_gfx 0x0263, 0x01, 0x01, DoorAnimTiles_36, DoorAnimPalettes_84970FC + door_anim_gfx 0x0329, 0x01, 0x01, DoorAnimTiles_37, DoorAnimPalettes_8497104 + door_anim_gfx 0x0291, 0x00, 0x01, DoorAnimTiles_38, DoorAnimPalettes_849710C + door_anim_gfx 0x021b, 0x02, 0x01, DoorAnimTiles_39, DoorAnimPalettes_8497114 + door_anim_gfx 0x0209, 0x01, 0x01, DoorAnimTiles_40, DoorAnimPalettes_849711C + door_anim_gfx 0x0219, 0x00, 0x01, DoorAnimTiles_41, DoorAnimPalettes_8497124 + door_anim_gfx 0x0393, 0x01, 0x01, DoorAnimTiles_42, DoorAnimPalettes_849712C + door_anim_gfx 0x03d4, 0x01, 0x01, DoorAnimTiles_42, DoorAnimPalettes_849712C + door_anim_gfx 0x036c, 0x01, 0x01, DoorAnimTiles_42, DoorAnimPalettes_849712C + door_anim_gfx 0x025e, 0x01, 0x01, DoorAnimTiles_43, DoorAnimPalettes_8497134 + door_anim_gfx 0x02ad, 0x01, 0x02, DoorAnimTiles_44, DoorAnimPalettes_849713C + door_anim_gfx 0x03fc, 0x00, 0x01, DoorAnimTiles_45, DoorAnimPalettes_849714C + door_anim_gfx 0x0396, 0x01, 0x01, DoorAnimTiles_46, DoorAnimPalettes_849714C + door_anim_gfx 0x020a, 0x01, 0x01, DoorAnimTiles_47, DoorAnimPalettes_8497154 + door_anim_gfx 0x026b, 0x01, 0x01, DoorAnimTiles_48, DoorAnimPalettes_849715C + door_anim_gfx 0x032c, 0x01, 0x01, DoorAnimTiles_49, DoorAnimPalettes_8497164 + door_anim_gfx 0x0383, 0x01, 0x01, DoorAnimTiles_50, DoorAnimPalettes_849716C + door_anim_gfx 0x0000, 0x00, 0x00, NULL, NULL + diff --git a/data/rom_8486FEC.s b/data/rom_8486FEC.s deleted file mode 100644 index 9b7834a32..000000000 --- a/data/rom_8486FEC.s +++ /dev/null @@ -1,8 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2, 0 - -gUnknown_8486FEC:: @ 8486FEC - .incbin "baserom.gba", 0x486fec, 0xFFA0 diff --git a/graphics/door_anims/00/0.png b/graphics/door_anims/00/0.png new file mode 100644 index 000000000..ac2c4b438 Binary files /dev/null and b/graphics/door_anims/00/0.png differ diff --git a/graphics/door_anims/00/1.png b/graphics/door_anims/00/1.png new file mode 100644 index 000000000..cfe812f75 Binary files /dev/null and b/graphics/door_anims/00/1.png differ diff --git a/graphics/door_anims/00/2.png b/graphics/door_anims/00/2.png new file mode 100644 index 000000000..88e5d480c Binary files /dev/null and b/graphics/door_anims/00/2.png differ diff --git a/graphics/door_anims/01/0.png b/graphics/door_anims/01/0.png new file mode 100644 index 000000000..cb8c6fc4c Binary files /dev/null and b/graphics/door_anims/01/0.png differ diff --git a/graphics/door_anims/01/1.png b/graphics/door_anims/01/1.png new file mode 100644 index 000000000..102db4cef Binary files /dev/null and b/graphics/door_anims/01/1.png differ diff --git a/graphics/door_anims/01/2.png b/graphics/door_anims/01/2.png new file mode 100644 index 000000000..0a97da6ce Binary files /dev/null and b/graphics/door_anims/01/2.png differ diff --git a/graphics/door_anims/02/0.png b/graphics/door_anims/02/0.png new file mode 100644 index 000000000..744949971 Binary files /dev/null and b/graphics/door_anims/02/0.png differ diff --git a/graphics/door_anims/02/1.png b/graphics/door_anims/02/1.png new file mode 100644 index 000000000..6c328b9ff Binary files /dev/null and b/graphics/door_anims/02/1.png differ diff --git a/graphics/door_anims/02/2.png b/graphics/door_anims/02/2.png new file mode 100644 index 000000000..0ee9ba8f0 Binary files /dev/null and b/graphics/door_anims/02/2.png differ diff --git a/graphics/door_anims/03/0.png b/graphics/door_anims/03/0.png new file mode 100644 index 000000000..cb8c6fc4c Binary files /dev/null and b/graphics/door_anims/03/0.png differ diff --git a/graphics/door_anims/03/1.png b/graphics/door_anims/03/1.png new file mode 100644 index 000000000..102db4cef Binary files /dev/null and b/graphics/door_anims/03/1.png differ diff --git a/graphics/door_anims/03/2.png b/graphics/door_anims/03/2.png new file mode 100644 index 000000000..0a97da6ce Binary files /dev/null and b/graphics/door_anims/03/2.png differ diff --git a/graphics/door_anims/04/0.png b/graphics/door_anims/04/0.png new file mode 100644 index 000000000..1c2cd1db1 Binary files /dev/null and b/graphics/door_anims/04/0.png differ diff --git a/graphics/door_anims/04/1.png b/graphics/door_anims/04/1.png new file mode 100644 index 000000000..65b58bc82 Binary files /dev/null and b/graphics/door_anims/04/1.png differ diff --git a/graphics/door_anims/04/2.png b/graphics/door_anims/04/2.png new file mode 100644 index 000000000..8c8e37b7d Binary files /dev/null and b/graphics/door_anims/04/2.png differ diff --git a/graphics/door_anims/05/0.png b/graphics/door_anims/05/0.png new file mode 100644 index 000000000..8f4fe425f Binary files /dev/null and b/graphics/door_anims/05/0.png differ diff --git a/graphics/door_anims/05/1.png b/graphics/door_anims/05/1.png new file mode 100644 index 000000000..52002fb32 Binary files /dev/null and b/graphics/door_anims/05/1.png differ diff --git a/graphics/door_anims/05/2.png b/graphics/door_anims/05/2.png new file mode 100644 index 000000000..2b4f36508 Binary files /dev/null and b/graphics/door_anims/05/2.png differ diff --git a/graphics/door_anims/06/0.png b/graphics/door_anims/06/0.png new file mode 100644 index 000000000..2b3cade89 Binary files /dev/null and b/graphics/door_anims/06/0.png differ diff --git a/graphics/door_anims/06/1.png b/graphics/door_anims/06/1.png new file mode 100644 index 000000000..c397bd4da Binary files /dev/null and b/graphics/door_anims/06/1.png differ diff --git a/graphics/door_anims/06/2.png b/graphics/door_anims/06/2.png new file mode 100644 index 000000000..8883dad1c Binary files /dev/null and b/graphics/door_anims/06/2.png differ diff --git a/graphics/door_anims/07/0.png b/graphics/door_anims/07/0.png new file mode 100644 index 000000000..2b3cade89 Binary files /dev/null and b/graphics/door_anims/07/0.png differ diff --git a/graphics/door_anims/07/1.png b/graphics/door_anims/07/1.png new file mode 100644 index 000000000..c397bd4da Binary files /dev/null and b/graphics/door_anims/07/1.png differ diff --git a/graphics/door_anims/07/2.png b/graphics/door_anims/07/2.png new file mode 100644 index 000000000..8883dad1c Binary files /dev/null and b/graphics/door_anims/07/2.png differ diff --git a/graphics/door_anims/08/0.png b/graphics/door_anims/08/0.png new file mode 100644 index 000000000..832abe1c4 Binary files /dev/null and b/graphics/door_anims/08/0.png differ diff --git a/graphics/door_anims/08/1.png b/graphics/door_anims/08/1.png new file mode 100644 index 000000000..f6a402eec Binary files /dev/null and b/graphics/door_anims/08/1.png differ diff --git a/graphics/door_anims/08/2.png b/graphics/door_anims/08/2.png new file mode 100644 index 000000000..082f1a212 Binary files /dev/null and b/graphics/door_anims/08/2.png differ diff --git a/graphics/door_anims/09/0.png b/graphics/door_anims/09/0.png new file mode 100644 index 000000000..6205d426d Binary files /dev/null and b/graphics/door_anims/09/0.png differ diff --git a/graphics/door_anims/09/1.png b/graphics/door_anims/09/1.png new file mode 100644 index 000000000..333f28fac Binary files /dev/null and b/graphics/door_anims/09/1.png differ diff --git a/graphics/door_anims/09/2.png b/graphics/door_anims/09/2.png new file mode 100644 index 000000000..5288fc4ea Binary files /dev/null and b/graphics/door_anims/09/2.png differ diff --git a/graphics/door_anims/10/0.png b/graphics/door_anims/10/0.png new file mode 100644 index 000000000..c1fc3d631 Binary files /dev/null and b/graphics/door_anims/10/0.png differ diff --git a/graphics/door_anims/10/1.png b/graphics/door_anims/10/1.png new file mode 100644 index 000000000..3daffe355 Binary files /dev/null and b/graphics/door_anims/10/1.png differ diff --git a/graphics/door_anims/10/2.png b/graphics/door_anims/10/2.png new file mode 100644 index 000000000..48e2d3a8c Binary files /dev/null and b/graphics/door_anims/10/2.png differ diff --git a/graphics/door_anims/11/0.png b/graphics/door_anims/11/0.png new file mode 100644 index 000000000..d5b78a46f Binary files /dev/null and b/graphics/door_anims/11/0.png differ diff --git a/graphics/door_anims/11/1.png b/graphics/door_anims/11/1.png new file mode 100644 index 000000000..72ed6d148 Binary files /dev/null and b/graphics/door_anims/11/1.png differ diff --git a/graphics/door_anims/11/2.png b/graphics/door_anims/11/2.png new file mode 100644 index 000000000..8b20c59c4 Binary files /dev/null and b/graphics/door_anims/11/2.png differ diff --git a/graphics/door_anims/12/0.png b/graphics/door_anims/12/0.png new file mode 100644 index 000000000..ac2c4b438 Binary files /dev/null and b/graphics/door_anims/12/0.png differ diff --git a/graphics/door_anims/12/1.png b/graphics/door_anims/12/1.png new file mode 100644 index 000000000..cfe812f75 Binary files /dev/null and b/graphics/door_anims/12/1.png differ diff --git a/graphics/door_anims/12/2.png b/graphics/door_anims/12/2.png new file mode 100644 index 000000000..88e5d480c Binary files /dev/null and b/graphics/door_anims/12/2.png differ diff --git a/graphics/door_anims/13/0.png b/graphics/door_anims/13/0.png new file mode 100644 index 000000000..8c3b85068 Binary files /dev/null and b/graphics/door_anims/13/0.png differ diff --git a/graphics/door_anims/13/1.png b/graphics/door_anims/13/1.png new file mode 100644 index 000000000..1b92f4bca Binary files /dev/null and b/graphics/door_anims/13/1.png differ diff --git a/graphics/door_anims/13/2.png b/graphics/door_anims/13/2.png new file mode 100644 index 000000000..e4be80873 Binary files /dev/null and b/graphics/door_anims/13/2.png differ diff --git a/graphics/door_anims/14/0.png b/graphics/door_anims/14/0.png new file mode 100644 index 000000000..af845aef4 Binary files /dev/null and b/graphics/door_anims/14/0.png differ diff --git a/graphics/door_anims/14/1.png b/graphics/door_anims/14/1.png new file mode 100644 index 000000000..53725c901 Binary files /dev/null and b/graphics/door_anims/14/1.png differ diff --git a/graphics/door_anims/14/2.png b/graphics/door_anims/14/2.png new file mode 100644 index 000000000..1b3a8e178 Binary files /dev/null and b/graphics/door_anims/14/2.png differ diff --git a/graphics/door_anims/15/0.png b/graphics/door_anims/15/0.png new file mode 100644 index 000000000..d9f37092b Binary files /dev/null and b/graphics/door_anims/15/0.png differ diff --git a/graphics/door_anims/15/1.png b/graphics/door_anims/15/1.png new file mode 100644 index 000000000..b9dbb58c4 Binary files /dev/null and b/graphics/door_anims/15/1.png differ diff --git a/graphics/door_anims/15/2.png b/graphics/door_anims/15/2.png new file mode 100644 index 000000000..ce6a1fe2b Binary files /dev/null and b/graphics/door_anims/15/2.png differ diff --git a/graphics/door_anims/16/0.png b/graphics/door_anims/16/0.png new file mode 100644 index 000000000..a385f7ad0 Binary files /dev/null and b/graphics/door_anims/16/0.png differ diff --git a/graphics/door_anims/16/1.png b/graphics/door_anims/16/1.png new file mode 100644 index 000000000..67b16f45d Binary files /dev/null and b/graphics/door_anims/16/1.png differ diff --git a/graphics/door_anims/16/2.png b/graphics/door_anims/16/2.png new file mode 100644 index 000000000..e796302f0 Binary files /dev/null and b/graphics/door_anims/16/2.png differ diff --git a/graphics/door_anims/17/0.png b/graphics/door_anims/17/0.png new file mode 100644 index 000000000..90774f8f7 Binary files /dev/null and b/graphics/door_anims/17/0.png differ diff --git a/graphics/door_anims/17/1.png b/graphics/door_anims/17/1.png new file mode 100644 index 000000000..06a278c0c Binary files /dev/null and b/graphics/door_anims/17/1.png differ diff --git a/graphics/door_anims/17/2.png b/graphics/door_anims/17/2.png new file mode 100644 index 000000000..e0e60042c Binary files /dev/null and b/graphics/door_anims/17/2.png differ diff --git a/graphics/door_anims/18/0.png b/graphics/door_anims/18/0.png new file mode 100644 index 000000000..2605a89a2 Binary files /dev/null and b/graphics/door_anims/18/0.png differ diff --git a/graphics/door_anims/18/1.png b/graphics/door_anims/18/1.png new file mode 100644 index 000000000..d76dd3157 Binary files /dev/null and b/graphics/door_anims/18/1.png differ diff --git a/graphics/door_anims/18/2.png b/graphics/door_anims/18/2.png new file mode 100644 index 000000000..2280e92fc Binary files /dev/null and b/graphics/door_anims/18/2.png differ diff --git a/graphics/door_anims/19/0.png b/graphics/door_anims/19/0.png new file mode 100644 index 000000000..80309914b Binary files /dev/null and b/graphics/door_anims/19/0.png differ diff --git a/graphics/door_anims/19/1.png b/graphics/door_anims/19/1.png new file mode 100644 index 000000000..5097cd859 Binary files /dev/null and b/graphics/door_anims/19/1.png differ diff --git a/graphics/door_anims/19/2.png b/graphics/door_anims/19/2.png new file mode 100644 index 000000000..52487c3c3 Binary files /dev/null and b/graphics/door_anims/19/2.png differ diff --git a/graphics/door_anims/20/0.png b/graphics/door_anims/20/0.png new file mode 100644 index 000000000..5e93af90b Binary files /dev/null and b/graphics/door_anims/20/0.png differ diff --git a/graphics/door_anims/20/1.png b/graphics/door_anims/20/1.png new file mode 100644 index 000000000..438d0f16a Binary files /dev/null and b/graphics/door_anims/20/1.png differ diff --git a/graphics/door_anims/20/2.png b/graphics/door_anims/20/2.png new file mode 100644 index 000000000..4483dacd0 Binary files /dev/null and b/graphics/door_anims/20/2.png differ diff --git a/graphics/door_anims/21/0.png b/graphics/door_anims/21/0.png new file mode 100644 index 000000000..839dc109d Binary files /dev/null and b/graphics/door_anims/21/0.png differ diff --git a/graphics/door_anims/21/1.png b/graphics/door_anims/21/1.png new file mode 100644 index 000000000..5cabacdc9 Binary files /dev/null and b/graphics/door_anims/21/1.png differ diff --git a/graphics/door_anims/21/2.png b/graphics/door_anims/21/2.png new file mode 100644 index 000000000..73353c9bb Binary files /dev/null and b/graphics/door_anims/21/2.png differ diff --git a/graphics/door_anims/22/0.png b/graphics/door_anims/22/0.png new file mode 100644 index 000000000..96dd8ea11 Binary files /dev/null and b/graphics/door_anims/22/0.png differ diff --git a/graphics/door_anims/22/1.png b/graphics/door_anims/22/1.png new file mode 100644 index 000000000..446d5bec3 Binary files /dev/null and b/graphics/door_anims/22/1.png differ diff --git a/graphics/door_anims/22/2.png b/graphics/door_anims/22/2.png new file mode 100644 index 000000000..59438d105 Binary files /dev/null and b/graphics/door_anims/22/2.png differ diff --git a/graphics/door_anims/23/0.png b/graphics/door_anims/23/0.png new file mode 100644 index 000000000..a331665a8 Binary files /dev/null and b/graphics/door_anims/23/0.png differ diff --git a/graphics/door_anims/23/1.png b/graphics/door_anims/23/1.png new file mode 100644 index 000000000..7ea47bba0 Binary files /dev/null and b/graphics/door_anims/23/1.png differ diff --git a/graphics/door_anims/23/2.png b/graphics/door_anims/23/2.png new file mode 100644 index 000000000..9d2b940cc Binary files /dev/null and b/graphics/door_anims/23/2.png differ diff --git a/graphics/door_anims/24/0.png b/graphics/door_anims/24/0.png new file mode 100644 index 000000000..49dd2b432 Binary files /dev/null and b/graphics/door_anims/24/0.png differ diff --git a/graphics/door_anims/24/1.png b/graphics/door_anims/24/1.png new file mode 100644 index 000000000..10bb6c2f4 Binary files /dev/null and b/graphics/door_anims/24/1.png differ diff --git a/graphics/door_anims/24/2.png b/graphics/door_anims/24/2.png new file mode 100644 index 000000000..328b692ea Binary files /dev/null and b/graphics/door_anims/24/2.png differ diff --git a/graphics/door_anims/25/0.png b/graphics/door_anims/25/0.png new file mode 100644 index 000000000..291e71e90 Binary files /dev/null and b/graphics/door_anims/25/0.png differ diff --git a/graphics/door_anims/25/1.png b/graphics/door_anims/25/1.png new file mode 100644 index 000000000..4c0b5a105 Binary files /dev/null and b/graphics/door_anims/25/1.png differ diff --git a/graphics/door_anims/25/2.png b/graphics/door_anims/25/2.png new file mode 100644 index 000000000..a19c6c27b Binary files /dev/null and b/graphics/door_anims/25/2.png differ diff --git a/graphics/door_anims/26/0.png b/graphics/door_anims/26/0.png new file mode 100644 index 000000000..a4e6ef57c Binary files /dev/null and b/graphics/door_anims/26/0.png differ diff --git a/graphics/door_anims/26/1.png b/graphics/door_anims/26/1.png new file mode 100644 index 000000000..495b7d743 Binary files /dev/null and b/graphics/door_anims/26/1.png differ diff --git a/graphics/door_anims/26/2.png b/graphics/door_anims/26/2.png new file mode 100644 index 000000000..dece153ab Binary files /dev/null and b/graphics/door_anims/26/2.png differ diff --git a/graphics/door_anims/27/0.png b/graphics/door_anims/27/0.png new file mode 100644 index 000000000..45056f579 Binary files /dev/null and b/graphics/door_anims/27/0.png differ diff --git a/graphics/door_anims/27/1.png b/graphics/door_anims/27/1.png new file mode 100644 index 000000000..287f7e55a Binary files /dev/null and b/graphics/door_anims/27/1.png differ diff --git a/graphics/door_anims/27/2.png b/graphics/door_anims/27/2.png new file mode 100644 index 000000000..02c810637 Binary files /dev/null and b/graphics/door_anims/27/2.png differ diff --git a/graphics/door_anims/28/0.png b/graphics/door_anims/28/0.png new file mode 100644 index 000000000..3da426d0f Binary files /dev/null and b/graphics/door_anims/28/0.png differ diff --git a/graphics/door_anims/28/1.png b/graphics/door_anims/28/1.png new file mode 100644 index 000000000..77f8a5991 Binary files /dev/null and b/graphics/door_anims/28/1.png differ diff --git a/graphics/door_anims/28/2.png b/graphics/door_anims/28/2.png new file mode 100644 index 000000000..f90e0d148 Binary files /dev/null and b/graphics/door_anims/28/2.png differ diff --git a/graphics/door_anims/29/0.png b/graphics/door_anims/29/0.png new file mode 100644 index 000000000..832abe1c4 Binary files /dev/null and b/graphics/door_anims/29/0.png differ diff --git a/graphics/door_anims/29/1.png b/graphics/door_anims/29/1.png new file mode 100644 index 000000000..f6a402eec Binary files /dev/null and b/graphics/door_anims/29/1.png differ diff --git a/graphics/door_anims/29/2.png b/graphics/door_anims/29/2.png new file mode 100644 index 000000000..082f1a212 Binary files /dev/null and b/graphics/door_anims/29/2.png differ diff --git a/graphics/door_anims/30/0.png b/graphics/door_anims/30/0.png new file mode 100644 index 000000000..f199a34b9 Binary files /dev/null and b/graphics/door_anims/30/0.png differ diff --git a/graphics/door_anims/30/1.png b/graphics/door_anims/30/1.png new file mode 100644 index 000000000..15beb5a36 Binary files /dev/null and b/graphics/door_anims/30/1.png differ diff --git a/graphics/door_anims/30/2.png b/graphics/door_anims/30/2.png new file mode 100644 index 000000000..2306a6b53 Binary files /dev/null and b/graphics/door_anims/30/2.png differ diff --git a/graphics/door_anims/31/0.png b/graphics/door_anims/31/0.png new file mode 100644 index 000000000..94c738d3f Binary files /dev/null and b/graphics/door_anims/31/0.png differ diff --git a/graphics/door_anims/31/1.png b/graphics/door_anims/31/1.png new file mode 100644 index 000000000..817eff6e7 Binary files /dev/null and b/graphics/door_anims/31/1.png differ diff --git a/graphics/door_anims/31/2.png b/graphics/door_anims/31/2.png new file mode 100644 index 000000000..cf05cc488 Binary files /dev/null and b/graphics/door_anims/31/2.png differ diff --git a/graphics/door_anims/32/0.png b/graphics/door_anims/32/0.png new file mode 100644 index 000000000..a18d49d80 Binary files /dev/null and b/graphics/door_anims/32/0.png differ diff --git a/graphics/door_anims/32/1.png b/graphics/door_anims/32/1.png new file mode 100644 index 000000000..2fc91d012 Binary files /dev/null and b/graphics/door_anims/32/1.png differ diff --git a/graphics/door_anims/32/2.png b/graphics/door_anims/32/2.png new file mode 100644 index 000000000..6d05fcc11 Binary files /dev/null and b/graphics/door_anims/32/2.png differ diff --git a/graphics/door_anims/33/0.png b/graphics/door_anims/33/0.png new file mode 100644 index 000000000..3597efaa6 Binary files /dev/null and b/graphics/door_anims/33/0.png differ diff --git a/graphics/door_anims/33/1.png b/graphics/door_anims/33/1.png new file mode 100644 index 000000000..6c9c4db27 Binary files /dev/null and b/graphics/door_anims/33/1.png differ diff --git a/graphics/door_anims/33/2.png b/graphics/door_anims/33/2.png new file mode 100644 index 000000000..d52c8243f Binary files /dev/null and b/graphics/door_anims/33/2.png differ diff --git a/graphics/door_anims/34/0.png b/graphics/door_anims/34/0.png new file mode 100644 index 000000000..26e0a0654 Binary files /dev/null and b/graphics/door_anims/34/0.png differ diff --git a/graphics/door_anims/34/1.png b/graphics/door_anims/34/1.png new file mode 100644 index 000000000..89baa478c Binary files /dev/null and b/graphics/door_anims/34/1.png differ diff --git a/graphics/door_anims/34/2.png b/graphics/door_anims/34/2.png new file mode 100644 index 000000000..35cf42295 Binary files /dev/null and b/graphics/door_anims/34/2.png differ diff --git a/graphics/door_anims/35/0.png b/graphics/door_anims/35/0.png new file mode 100644 index 000000000..d9703db87 Binary files /dev/null and b/graphics/door_anims/35/0.png differ diff --git a/graphics/door_anims/35/1.png b/graphics/door_anims/35/1.png new file mode 100644 index 000000000..da3ecb839 Binary files /dev/null and b/graphics/door_anims/35/1.png differ diff --git a/graphics/door_anims/35/2.png b/graphics/door_anims/35/2.png new file mode 100644 index 000000000..32acbcaa2 Binary files /dev/null and b/graphics/door_anims/35/2.png differ diff --git a/graphics/door_anims/36/0.png b/graphics/door_anims/36/0.png new file mode 100644 index 000000000..0bb35c0c5 Binary files /dev/null and b/graphics/door_anims/36/0.png differ diff --git a/graphics/door_anims/36/1.png b/graphics/door_anims/36/1.png new file mode 100644 index 000000000..c3a2aa3e2 Binary files /dev/null and b/graphics/door_anims/36/1.png differ diff --git a/graphics/door_anims/36/2.png b/graphics/door_anims/36/2.png new file mode 100644 index 000000000..33b2a1e02 Binary files /dev/null and b/graphics/door_anims/36/2.png differ diff --git a/graphics/door_anims/37/0.png b/graphics/door_anims/37/0.png new file mode 100644 index 000000000..cf0bcd397 Binary files /dev/null and b/graphics/door_anims/37/0.png differ diff --git a/graphics/door_anims/37/1.png b/graphics/door_anims/37/1.png new file mode 100644 index 000000000..a5fcb7e27 Binary files /dev/null and b/graphics/door_anims/37/1.png differ diff --git a/graphics/door_anims/37/2.png b/graphics/door_anims/37/2.png new file mode 100644 index 000000000..70774fcf7 Binary files /dev/null and b/graphics/door_anims/37/2.png differ diff --git a/graphics/door_anims/38/0.png b/graphics/door_anims/38/0.png new file mode 100644 index 000000000..b952321b7 Binary files /dev/null and b/graphics/door_anims/38/0.png differ diff --git a/graphics/door_anims/38/1.png b/graphics/door_anims/38/1.png new file mode 100644 index 000000000..a7dd729d3 Binary files /dev/null and b/graphics/door_anims/38/1.png differ diff --git a/graphics/door_anims/38/2.png b/graphics/door_anims/38/2.png new file mode 100644 index 000000000..cad72bd9d Binary files /dev/null and b/graphics/door_anims/38/2.png differ diff --git a/graphics/door_anims/39/0.png b/graphics/door_anims/39/0.png new file mode 100644 index 000000000..60e983141 Binary files /dev/null and b/graphics/door_anims/39/0.png differ diff --git a/graphics/door_anims/39/1.png b/graphics/door_anims/39/1.png new file mode 100644 index 000000000..3173d57c8 Binary files /dev/null and b/graphics/door_anims/39/1.png differ diff --git a/graphics/door_anims/39/2.png b/graphics/door_anims/39/2.png new file mode 100644 index 000000000..04f77999d Binary files /dev/null and b/graphics/door_anims/39/2.png differ diff --git a/graphics/door_anims/40/0.png b/graphics/door_anims/40/0.png new file mode 100644 index 000000000..5e1504117 Binary files /dev/null and b/graphics/door_anims/40/0.png differ diff --git a/graphics/door_anims/40/1.png b/graphics/door_anims/40/1.png new file mode 100644 index 000000000..cf185c5ab Binary files /dev/null and b/graphics/door_anims/40/1.png differ diff --git a/graphics/door_anims/40/2.png b/graphics/door_anims/40/2.png new file mode 100644 index 000000000..7b34bef94 Binary files /dev/null and b/graphics/door_anims/40/2.png differ diff --git a/graphics/door_anims/41/0.png b/graphics/door_anims/41/0.png new file mode 100644 index 000000000..61d365737 Binary files /dev/null and b/graphics/door_anims/41/0.png differ diff --git a/graphics/door_anims/41/1.png b/graphics/door_anims/41/1.png new file mode 100644 index 000000000..f9480e4d9 Binary files /dev/null and b/graphics/door_anims/41/1.png differ diff --git a/graphics/door_anims/41/2.png b/graphics/door_anims/41/2.png new file mode 100644 index 000000000..5b8c3fa44 Binary files /dev/null and b/graphics/door_anims/41/2.png differ diff --git a/graphics/door_anims/42/0.png b/graphics/door_anims/42/0.png new file mode 100644 index 000000000..a88a24cd6 Binary files /dev/null and b/graphics/door_anims/42/0.png differ diff --git a/graphics/door_anims/42/1.png b/graphics/door_anims/42/1.png new file mode 100644 index 000000000..ca8cd3853 Binary files /dev/null and b/graphics/door_anims/42/1.png differ diff --git a/graphics/door_anims/42/2.png b/graphics/door_anims/42/2.png new file mode 100644 index 000000000..e9e5122b4 Binary files /dev/null and b/graphics/door_anims/42/2.png differ diff --git a/graphics/door_anims/42/3.png b/graphics/door_anims/42/3.png new file mode 100644 index 000000000..d077bca49 Binary files /dev/null and b/graphics/door_anims/42/3.png differ diff --git a/graphics/door_anims/43/0.png b/graphics/door_anims/43/0.png new file mode 100644 index 000000000..eec2d2c65 Binary files /dev/null and b/graphics/door_anims/43/0.png differ diff --git a/graphics/door_anims/43/1.png b/graphics/door_anims/43/1.png new file mode 100644 index 000000000..a013b2990 Binary files /dev/null and b/graphics/door_anims/43/1.png differ diff --git a/graphics/door_anims/43/2.png b/graphics/door_anims/43/2.png new file mode 100644 index 000000000..8f3dc2a18 Binary files /dev/null and b/graphics/door_anims/43/2.png differ diff --git a/graphics/door_anims/44/0_left.png b/graphics/door_anims/44/0_left.png new file mode 100644 index 000000000..37a2530e7 Binary files /dev/null and b/graphics/door_anims/44/0_left.png differ diff --git a/graphics/door_anims/44/0_right.png b/graphics/door_anims/44/0_right.png new file mode 100644 index 000000000..f7a5d4dc7 Binary files /dev/null and b/graphics/door_anims/44/0_right.png differ diff --git a/graphics/door_anims/44/1_left.png b/graphics/door_anims/44/1_left.png new file mode 100644 index 000000000..cb3474672 Binary files /dev/null and b/graphics/door_anims/44/1_left.png differ diff --git a/graphics/door_anims/44/1_right.png b/graphics/door_anims/44/1_right.png new file mode 100644 index 000000000..ed367c276 Binary files /dev/null and b/graphics/door_anims/44/1_right.png differ diff --git a/graphics/door_anims/44/2_left.png b/graphics/door_anims/44/2_left.png new file mode 100644 index 000000000..d66ecc90d Binary files /dev/null and b/graphics/door_anims/44/2_left.png differ diff --git a/graphics/door_anims/44/2_right.png b/graphics/door_anims/44/2_right.png new file mode 100644 index 000000000..de82f04cf Binary files /dev/null and b/graphics/door_anims/44/2_right.png differ diff --git a/graphics/door_anims/45/0.png b/graphics/door_anims/45/0.png new file mode 100644 index 000000000..867a8b0e9 Binary files /dev/null and b/graphics/door_anims/45/0.png differ diff --git a/graphics/door_anims/45/1.png b/graphics/door_anims/45/1.png new file mode 100644 index 000000000..263a31f87 Binary files /dev/null and b/graphics/door_anims/45/1.png differ diff --git a/graphics/door_anims/45/2.png b/graphics/door_anims/45/2.png new file mode 100644 index 000000000..f3039a7c1 Binary files /dev/null and b/graphics/door_anims/45/2.png differ diff --git a/graphics/door_anims/46/0.png b/graphics/door_anims/46/0.png new file mode 100644 index 000000000..5d2fd8b8d Binary files /dev/null and b/graphics/door_anims/46/0.png differ diff --git a/graphics/door_anims/46/1.png b/graphics/door_anims/46/1.png new file mode 100644 index 000000000..f79cc787d Binary files /dev/null and b/graphics/door_anims/46/1.png differ diff --git a/graphics/door_anims/46/2.png b/graphics/door_anims/46/2.png new file mode 100644 index 000000000..1a1afcaa1 Binary files /dev/null and b/graphics/door_anims/46/2.png differ diff --git a/graphics/door_anims/47/0.png b/graphics/door_anims/47/0.png new file mode 100644 index 000000000..0dbf2ece9 Binary files /dev/null and b/graphics/door_anims/47/0.png differ diff --git a/graphics/door_anims/47/1.png b/graphics/door_anims/47/1.png new file mode 100644 index 000000000..7e16467fa Binary files /dev/null and b/graphics/door_anims/47/1.png differ diff --git a/graphics/door_anims/47/2.png b/graphics/door_anims/47/2.png new file mode 100644 index 000000000..592268d98 Binary files /dev/null and b/graphics/door_anims/47/2.png differ diff --git a/graphics/door_anims/48/0.png b/graphics/door_anims/48/0.png new file mode 100644 index 000000000..a7d64821e Binary files /dev/null and b/graphics/door_anims/48/0.png differ diff --git a/graphics/door_anims/48/1.png b/graphics/door_anims/48/1.png new file mode 100644 index 000000000..97b09977f Binary files /dev/null and b/graphics/door_anims/48/1.png differ diff --git a/graphics/door_anims/48/2.png b/graphics/door_anims/48/2.png new file mode 100644 index 000000000..72eb0bc55 Binary files /dev/null and b/graphics/door_anims/48/2.png differ diff --git a/graphics/door_anims/48/3.png b/graphics/door_anims/48/3.png new file mode 100644 index 000000000..ea5d9843c Binary files /dev/null and b/graphics/door_anims/48/3.png differ diff --git a/graphics/door_anims/49/0.png b/graphics/door_anims/49/0.png new file mode 100644 index 000000000..3125df9b4 Binary files /dev/null and b/graphics/door_anims/49/0.png differ diff --git a/graphics/door_anims/49/1.png b/graphics/door_anims/49/1.png new file mode 100644 index 000000000..b5b9acf88 Binary files /dev/null and b/graphics/door_anims/49/1.png differ diff --git a/graphics/door_anims/49/2.png b/graphics/door_anims/49/2.png new file mode 100644 index 000000000..6234d8928 Binary files /dev/null and b/graphics/door_anims/49/2.png differ diff --git a/graphics/door_anims/50/0.png b/graphics/door_anims/50/0.png new file mode 100644 index 000000000..47d33217a Binary files /dev/null and b/graphics/door_anims/50/0.png differ diff --git a/graphics/door_anims/50/1.png b/graphics/door_anims/50/1.png new file mode 100644 index 000000000..1a5a8c05c Binary files /dev/null and b/graphics/door_anims/50/1.png differ diff --git a/graphics/door_anims/50/2.png b/graphics/door_anims/50/2.png new file mode 100644 index 000000000..38242302c Binary files /dev/null and b/graphics/door_anims/50/2.png differ diff --git a/graphics/door_anims/unused_848EDEC/0_bottom.png b/graphics/door_anims/unused_848EDEC/0_bottom.png new file mode 100644 index 000000000..51c624396 Binary files /dev/null and b/graphics/door_anims/unused_848EDEC/0_bottom.png differ diff --git a/graphics/door_anims/unused_848EDEC/0_top.png b/graphics/door_anims/unused_848EDEC/0_top.png new file mode 100644 index 000000000..1a1971336 Binary files /dev/null and b/graphics/door_anims/unused_848EDEC/0_top.png differ diff --git a/graphics/door_anims/unused_848EDEC/1_bottom.png b/graphics/door_anims/unused_848EDEC/1_bottom.png new file mode 100644 index 000000000..a3cc83feb Binary files /dev/null and b/graphics/door_anims/unused_848EDEC/1_bottom.png differ diff --git a/graphics/door_anims/unused_848EDEC/1_top.png b/graphics/door_anims/unused_848EDEC/1_top.png new file mode 100644 index 000000000..e6c96394c Binary files /dev/null and b/graphics/door_anims/unused_848EDEC/1_top.png differ diff --git a/graphics/door_anims/unused_848EDEC/2_bottom.png b/graphics/door_anims/unused_848EDEC/2_bottom.png new file mode 100644 index 000000000..f8466fa9c Binary files /dev/null and b/graphics/door_anims/unused_848EDEC/2_bottom.png differ diff --git a/graphics/door_anims/unused_848EDEC/2_top.png b/graphics/door_anims/unused_848EDEC/2_top.png new file mode 100644 index 000000000..1864760e3 Binary files /dev/null and b/graphics/door_anims/unused_848EDEC/2_top.png differ diff --git a/ld_script.txt b/ld_script.txt index 3c6cf3bf0..4a4e41058 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -363,7 +363,6 @@ SECTIONS { data/maps.o(.rodata); data/fieldmap.o(.rodata); src/metatile_behavior.o(.rodata); - data/rom_8486FEC.o(.rodata); data/field_door.o(.rodata); data/field_player_avatar.o(.rodata); data/field_map_obj.o(.rodata); -- cgit v1.2.3 From a11c65ff1ac380cd213b26d0bb7a2787936b33f9 Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Sun, 7 Jan 2018 17:50:13 -0600 Subject: Port field_door --- asm/field_door.s | 754 ----------------------------------------- data/field_door.s | 614 --------------------------------- include/field_camera.h | 1 + include/field_door.h | 16 + ld_script.txt | 4 +- src/field_door.c | 896 +++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 915 insertions(+), 1370 deletions(-) delete mode 100644 asm/field_door.s delete mode 100644 data/field_door.s create mode 100644 src/field_door.c diff --git a/asm/field_door.s b/asm/field_door.s deleted file mode 100644 index 037c76566..000000000 --- a/asm/field_door.s +++ /dev/null @@ -1,754 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_808A400 -sub_808A400: @ 808A400 - push {lr} - adds r2, r0, 0 - ldrb r0, [r2, 0x3] - cmp r0, 0x2 - bne _0808A420 - ldrh r1, [r1, 0x2] - ldr r0, [r2, 0x4] - adds r0, r1 - ldr r1, =0x06007e00 - movs r2, 0x80 - bl CpuFastSet - b _0808A42E - .pool -_0808A420: - ldrh r1, [r1, 0x2] - ldr r0, [r2, 0x4] - adds r0, r1 - ldr r1, =0x06007f00 - movs r2, 0x40 - bl CpuFastSet -_0808A42E: - pop {r0} - bx r0 - .pool - thumb_func_end sub_808A400 - - thumb_func_start door_build_blockdef -door_build_blockdef: @ 808A438 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 16 - lsrs r5, r1, 16 - movs r4, 0 - adds r1, r6, 0 -_0808A444: - ldrb r0, [r2] - lsls r0, 28 - lsrs r3, r0, 16 - adds r2, 0x1 - adds r0, r5, r4 - orrs r3, r0 - strh r3, [r1] - adds r1, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - ble _0808A444 - cmp r4, 0x7 - bgt _0808A472 - lsls r0, r4, 1 - adds r1, r0, r6 -_0808A462: - ldrb r0, [r2] - lsls r3, r0, 12 - adds r2, 0x1 - strh r3, [r1] - adds r1, 0x2 - adds r4, 0x1 - cmp r4, 0x7 - ble _0808A462 -_0808A472: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end door_build_blockdef - - thumb_func_start door_patch_tilemap -door_patch_tilemap: @ 808A478 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x30 - adds r7, r1, 0 - mov r9, r2 - adds r5, r3, 0 - ldrb r0, [r0, 0x3] - cmp r0, 0x2 - bne _0808A4F4 - add r4, sp, 0x10 - movs r1, 0xFC - lsls r1, 2 - adds r0, r4, 0 - adds r2, r5, 0 - bl door_build_blockdef - mov r6, r9 - subs r6, 0x1 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl DrawDoorMetatileAt - movs r1, 0xFD - lsls r1, 2 - adds r0, r5, 0x4 - mov r8, r0 - adds r0, r4, 0 - mov r2, r8 - bl door_build_blockdef - adds r0, r7, 0 - mov r1, r9 - adds r2, r4, 0 - bl DrawDoorMetatileAt - movs r1, 0xFE - lsls r1, 2 - adds r0, r4, 0 - adds r2, r5, 0 - bl door_build_blockdef - adds r5, r7, 0x1 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl DrawDoorMetatileAt - movs r1, 0xFF - lsls r1, 2 - adds r0, r4, 0 - mov r2, r8 - bl door_build_blockdef - adds r0, r5, 0 - mov r1, r9 - adds r2, r4, 0 - bl DrawDoorMetatileAt - b _0808A522 -_0808A4F4: - movs r1, 0xFE - lsls r1, 2 - mov r0, sp - adds r2, r5, 0 - bl door_build_blockdef - mov r1, r9 - subs r1, 0x1 - adds r0, r7, 0 - mov r2, sp - bl DrawDoorMetatileAt - movs r1, 0xFF - lsls r1, 2 - adds r2, r5, 0x4 - mov r0, sp - bl door_build_blockdef - adds r0, r7, 0 - mov r1, r9 - mov r2, sp - bl DrawDoorMetatileAt -_0808A522: - add sp, 0x30 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end door_patch_tilemap - - thumb_func_start sub_808A530 -sub_808A530: @ 808A530 - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - subs r7, r6, 0x1 - adds r0, r5, 0 - adds r1, r7, 0 - bl CurrentMapDrawMetatileAt - adds r0, r5, 0 - adds r1, r6, 0 - bl CurrentMapDrawMetatileAt - ldrb r0, [r4, 0x3] - cmp r0, 0x2 - bne _0808A562 - adds r4, r5, 0x1 - adds r0, r4, 0 - adds r1, r7, 0 - bl CurrentMapDrawMetatileAt - adds r0, r4, 0 - adds r1, r6, 0 - bl CurrentMapDrawMetatileAt -_0808A562: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808A530 - - thumb_func_start sub_808A568 -sub_808A568: @ 808A568 - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r7, r3, 0 - ldrh r1, [r5, 0x2] - ldr r0, =0x0000ffff - cmp r1, r0 - bne _0808A5B0 - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_808A530 - bl sub_808A964 - lsls r0, 24 - cmp r0, 0 - beq _0808A5E2 - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - adds r1, 0x7 - ldr r0, =gSpecialVar_0x8005 - ldrh r2, [r0] - adds r2, 0x7 - adds r0, r4, 0 - bl sub_808A530 - b _0808A5E2 - .pool -_0808A5B0: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_808A400 - ldr r3, [r4, 0x8] - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r7, 0 - bl door_patch_tilemap - bl sub_808A964 - lsls r0, 24 - cmp r0, 0 - beq _0808A5E2 - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - adds r1, 0x7 - ldr r0, =gSpecialVar_0x8005 - ldrh r2, [r0] - adds r2, 0x7 - ldr r3, [r4, 0x8] - adds r0, r4, 0 - bl door_patch_tilemap -_0808A5E2: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_808A568 - - thumb_func_start sub_808A5F0 -sub_808A5F0: @ 808A5F0 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - movs r1, 0xA - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0808A616 - movs r2, 0x8 - ldrsh r1, [r4, r2] - lsls r1, 2 - adds r1, r5, r1 - movs r0, 0xC - ldrsh r2, [r4, r0] - movs r0, 0xE - ldrsh r3, [r4, r0] - adds r0, r6, 0 - bl sub_808A568 -_0808A616: - movs r2, 0xA - ldrsh r1, [r4, r2] - movs r2, 0x8 - ldrsh r0, [r4, r2] - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0] - cmp r1, r0 - bne _0808A644 - movs r0, 0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - movs r1, 0x8 - ldrsh r0, [r4, r1] - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _0808A64A - movs r0, 0 - b _0808A64C -_0808A644: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] -_0808A64A: - movs r0, 0x1 -_0808A64C: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808A5F0 - - thumb_func_start task50_overworld_door -task50_overworld_door: @ 808A654 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r2, r4, 2 - adds r2, r4 - lsls r2, 3 - ldr r0, =gTasks + 0x8 - adds r2, r0 - ldrh r1, [r2] - lsls r1, 16 - ldrh r0, [r2, 0x2] - orrs r1, r0 - ldrh r0, [r2, 0x4] - lsls r0, 16 - ldrh r3, [r2, 0x6] - orrs r0, r3 - bl sub_808A5F0 - cmp r0, 0 - bne _0808A682 - adds r0, r4, 0 - bl DestroyTask -_0808A682: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end task50_overworld_door - - thumb_func_start door_frame_last -door_frame_last: @ 808A68C - push {lr} - adds r1, r0, 0 - b _0808A694 -_0808A692: - adds r1, 0x4 -_0808A694: - ldrb r0, [r1] - cmp r0, 0 - bne _0808A692 - subs r0, r1, 0x4 - pop {r1} - bx r1 - thumb_func_end door_frame_last - - thumb_func_start door_find -door_find: @ 808A6A0 - push {lr} - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - b _0808A6B6 -_0808A6AA: - ldrh r0, [r2] - cmp r0, r1 - bne _0808A6B4 - adds r0, r2, 0 - b _0808A6BE -_0808A6B4: - adds r2, 0xC -_0808A6B6: - ldr r0, [r2, 0x4] - cmp r0, 0 - bne _0808A6AA - movs r0, 0 -_0808A6BE: - pop {r1} - bx r1 - thumb_func_end door_find - - thumb_func_start task_overworld_door_add_if_inactive -task_overworld_door_add_if_inactive: @ 808A6C4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - mov r8, r3 - ldr r4, =task50_overworld_door - adds r0, r4, 0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808A718 - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r2, =gTasks + 0x8 - adds r1, r2 - strh r7, [r1, 0xC] - mov r2, r8 - strh r2, [r1, 0xE] - strh r5, [r1, 0x2] - lsrs r2, r5, 16 - strh r2, [r1] - strh r6, [r1, 0x6] - lsrs r2, r6, 16 - strh r2, [r1, 0x4] - lsls r0, 24 - asrs r0, 24 - b _0808A71C - .pool -_0808A718: - movs r0, 0x1 - negs r0, r0 -_0808A71C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end task_overworld_door_add_if_inactive - - thumb_func_start sub_808A728 -sub_808A728: @ 808A728 - push {lr} - bl sub_808A530 - pop {r0} - bx r0 - thumb_func_end sub_808A728 - - thumb_func_start sub_808A734 -sub_808A734: @ 808A734 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r0, r5, 0 - adds r1, r6, 0 - bl MapGridGetMetatileIdAt - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl door_find - adds r4, r0, 0 - cmp r4, 0 - beq _0808A76A - ldr r1, =gUnknown_08496F8C - adds r0, r1, 0 - bl door_frame_last - adds r1, r0, 0 - adds r0, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_808A568 -_0808A76A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_808A734 - - thumb_func_start task_overworld_door_add_for_opening_door_at -@ s32 task_overworld_door_add_for_opening_door_at(void *a1, s32 x, s32 y) -task_overworld_door_add_for_opening_door_at: @ 808A774 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r0, r5, 0 - adds r1, r6, 0 - bl MapGridGetMetatileIdAt - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl door_find - adds r2, r0, 0 - adds r4, r2, 0 - cmp r2, 0 - bne _0808A79E - movs r0, 0x1 - negs r0, r0 - b _0808A7C0 -_0808A79E: - ldrb r0, [r2, 0x3] - cmp r0, 0x2 - beq _0808A7B0 - ldr r1, =gUnknown_08496F8C - adds r0, r2, 0 - b _0808A7B4 - .pool -_0808A7B0: - ldr r1, =gUnknown_08496FB4 - adds r0, r4, 0 -_0808A7B4: - adds r2, r5, 0 - adds r3, r6, 0 - bl task_overworld_door_add_if_inactive - lsls r0, 24 - asrs r0, 24 -_0808A7C0: - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end task_overworld_door_add_for_opening_door_at - - thumb_func_start sub_808A7CC -sub_808A7CC: @ 808A7CC - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r0, r5, 0 - adds r1, r6, 0 - bl MapGridGetMetatileIdAt - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl door_find - cmp r0, 0 - beq _0808A800 - ldr r1, =gUnknown_08496FA0 - adds r2, r5, 0 - adds r3, r6, 0 - bl task_overworld_door_add_if_inactive - lsls r0, 24 - asrs r0, 24 - b _0808A804 - .pool -_0808A800: - movs r0, 0x1 - negs r0, r0 -_0808A804: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808A7CC - - thumb_func_start cur_mapdata_get_door_x2_at -cur_mapdata_get_door_x2_at: @ 808A80C - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - adds r1, r2, 0 - bl MapGridGetMetatileIdAt - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl door_find - cmp r0, 0 - beq _0808A830 - ldrb r0, [r0, 0x2] - lsls r0, 24 - asrs r0, 24 - b _0808A834 -_0808A830: - movs r0, 0x1 - negs r0, r0 -_0808A834: - pop {r4} - pop {r1} - bx r1 - thumb_func_end cur_mapdata_get_door_x2_at - - thumb_func_start sub_808A83C -sub_808A83C: @ 808A83C - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, =gUnknown_08497174 - adds r1, r3, 0 - bl task_overworld_door_add_for_opening_door_at - pop {r0} - bx r0 - .pool - thumb_func_end sub_808A83C - - thumb_func_start FieldSetDoorOpened -FieldSetDoorOpened: @ 808A854 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsDoor - lsls r0, 24 - cmp r0, 0 - beq _0808A876 - ldr r0, =gUnknown_08497174 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_808A734 -_0808A876: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end FieldSetDoorOpened - - thumb_func_start FieldSetDoorClosed -FieldSetDoorClosed: @ 808A880 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsDoor - lsls r0, 24 - cmp r0, 0 - beq _0808A8A2 - ldr r0, =gUnknown_08497174 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_808A728 -_0808A8A2: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end FieldSetDoorClosed - - thumb_func_start FieldAnimateDoorClose -FieldAnimateDoorClose: @ 808A8AC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsDoor - lsls r0, 24 - cmp r0, 0 - beq _0808A8D8 - ldr r0, =gUnknown_08497174 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_808A7CC - lsls r0, 24 - asrs r0, 24 - b _0808A8DC - .pool -_0808A8D8: - movs r0, 0x1 - negs r0, r0 -_0808A8DC: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end FieldAnimateDoorClose - - thumb_func_start FieldAnimateDoorOpen -FieldAnimateDoorOpen: @ 808A8E4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsDoor - lsls r0, 24 - cmp r0, 0 - beq _0808A910 - ldr r0, =gUnknown_08497174 - adds r1, r4, 0 - adds r2, r5, 0 - bl task_overworld_door_add_for_opening_door_at - lsls r0, 24 - asrs r0, 24 - b _0808A914 - .pool -_0808A910: - movs r0, 0x1 - negs r0, r0 -_0808A914: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end FieldAnimateDoorOpen - - thumb_func_start FieldIsDoorAnimationRunning -FieldIsDoorAnimationRunning: @ 808A91C - push {lr} - ldr r0, =task50_overworld_door - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .pool - thumb_func_end FieldIsDoorAnimationRunning - - thumb_func_start GetDoorSoundEffect -GetDoorSoundEffect: @ 808A930 - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, =gUnknown_08497174 - adds r1, r3, 0 - bl cur_mapdata_get_door_x2_at - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _0808A958 - cmp r0, 0x1 - bne _0808A954 - movs r0, 0x12 - b _0808A95E - .pool -_0808A954: - cmp r0, 0x2 - beq _0808A95C -_0808A958: - movs r0, 0x8 - b _0808A95E -_0808A95C: - movs r0, 0x2F -_0808A95E: - pop {r1} - bx r1 - thumb_func_end GetDoorSoundEffect - - thumb_func_start sub_808A964 -sub_808A964: @ 808A964 - push {lr} - ldr r0, =0x00004002 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0808A990 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrh r1, [r0, 0x4] - ldr r0, =0x0000101a - cmp r1, r0 - bne _0808A990 - movs r0, 0x1 - b _0808A992 - .pool -_0808A990: - movs r0, 0 -_0808A992: - pop {r1} - bx r1 - thumb_func_end sub_808A964 - - .align 2, 0 @ Don't pad with nop. diff --git a/data/field_door.s b/data/field_door.s deleted file mode 100644 index 85c1ae919..000000000 --- a/data/field_door.s +++ /dev/null @@ -1,614 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2 - -DoorAnimTiles_04:: - .incbin "graphics/door_anims/04/0.4bpp" - .incbin "graphics/door_anims/04/1.4bpp" - .incbin "graphics/door_anims/04/2.4bpp" - - .space 32 - -DoorAnimTiles_05:: - .incbin "graphics/door_anims/05/0.4bpp" - .incbin "graphics/door_anims/05/1.4bpp" - .incbin "graphics/door_anims/05/2.4bpp" - - .space 32 - -DoorAnimTiles_08:: - .incbin "graphics/door_anims/08/0.4bpp" - .incbin "graphics/door_anims/08/1.4bpp" - .incbin "graphics/door_anims/08/2.4bpp" - - .space 32 - -DoorAnimTiles_15:: - .incbin "graphics/door_anims/15/0.4bpp" - .incbin "graphics/door_anims/15/1.4bpp" - .incbin "graphics/door_anims/15/2.4bpp" - - .space 32 - -DoorAnimTiles_16:: - .incbin "graphics/door_anims/16/0.4bpp" - .incbin "graphics/door_anims/16/1.4bpp" - .incbin "graphics/door_anims/16/2.4bpp" - - .space 32 - -DoorAnimTiles_00:: - .incbin "graphics/door_anims/00/0.4bpp" - .incbin "graphics/door_anims/00/1.4bpp" - .incbin "graphics/door_anims/00/2.4bpp" - - .space 32 - -DoorAnimTiles_01:: - .incbin "graphics/door_anims/01/0.4bpp" - .incbin "graphics/door_anims/01/1.4bpp" - .incbin "graphics/door_anims/01/2.4bpp" - -DoorAnimTiles_02:: - .incbin "graphics/door_anims/02/0.4bpp" - .incbin "graphics/door_anims/02/1.4bpp" - .incbin "graphics/door_anims/02/2.4bpp" - -DoorAnimTiles_03:: - .incbin "graphics/door_anims/03/0.4bpp" - .incbin "graphics/door_anims/03/1.4bpp" - .incbin "graphics/door_anims/03/2.4bpp" - -DoorAnimTiles_06:: - .incbin "graphics/door_anims/06/0.4bpp" - .incbin "graphics/door_anims/06/1.4bpp" - .incbin "graphics/door_anims/06/2.4bpp" - - .space 32 - -DoorAnimTiles_07:: - .incbin "graphics/door_anims/07/0.4bpp" - .incbin "graphics/door_anims/07/1.4bpp" - .incbin "graphics/door_anims/07/2.4bpp" - - .space 32 - -DoorAnimTiles_09:: - .incbin "graphics/door_anims/09/0.4bpp" - .incbin "graphics/door_anims/09/1.4bpp" - .incbin "graphics/door_anims/09/2.4bpp" - - .space 0x5900 - - .incbin "graphics/door_anims/unused_848EDEC/0_top.4bpp" - .incbin "graphics/door_anims/unused_848EDEC/1_top.4bpp" - .incbin "graphics/door_anims/unused_848EDEC/2_top.4bpp" - - .space 0x140 - - .incbin "graphics/door_anims/unused_848EDEC/0_bottom.4bpp" - .incbin "graphics/door_anims/unused_848EDEC/1_bottom.4bpp" - .incbin "graphics/door_anims/unused_848EDEC/2_bottom.4bpp" - - .space 32 - -DoorAnimTiles_10:: - .incbin "graphics/door_anims/10/0.4bpp" - .incbin "graphics/door_anims/10/1.4bpp" - .incbin "graphics/door_anims/10/2.4bpp" - - .space 32 - -DoorAnimTiles_11:: - .incbin "graphics/door_anims/11/0.4bpp" - .incbin "graphics/door_anims/11/1.4bpp" - .incbin "graphics/door_anims/11/2.4bpp" - - .space 32 - -DoorAnimTiles_12:: - .incbin "graphics/door_anims/12/0.4bpp" - .incbin "graphics/door_anims/12/1.4bpp" - .incbin "graphics/door_anims/12/2.4bpp" - - .space 32 - -DoorAnimTiles_13:: - .incbin "graphics/door_anims/13/0.4bpp" - .incbin "graphics/door_anims/13/1.4bpp" - .incbin "graphics/door_anims/13/2.4bpp" - - .space 32 - -DoorAnimTiles_14:: - .incbin "graphics/door_anims/14/0.4bpp" - .incbin "graphics/door_anims/14/1.4bpp" - .incbin "graphics/door_anims/14/2.4bpp" - - .space 32 - -DoorAnimTiles_17:: - .incbin "graphics/door_anims/17/0.4bpp" - .incbin "graphics/door_anims/17/1.4bpp" - .incbin "graphics/door_anims/17/2.4bpp" - - .space 32 - -DoorAnimTiles_18:: - .incbin "graphics/door_anims/18/0.4bpp" - .incbin "graphics/door_anims/18/1.4bpp" - .incbin "graphics/door_anims/18/2.4bpp" - - .space 32 - -DoorAnimTiles_19:: - .incbin "graphics/door_anims/19/0.4bpp" - .incbin "graphics/door_anims/19/1.4bpp" - .incbin "graphics/door_anims/19/2.4bpp" - - .space 32 - -DoorAnimTiles_20:: - .incbin "graphics/door_anims/20/0.4bpp" - .incbin "graphics/door_anims/20/1.4bpp" - .incbin "graphics/door_anims/20/2.4bpp" - - .space 32 - -DoorAnimTiles_21:: - .incbin "graphics/door_anims/21/0.4bpp" - .incbin "graphics/door_anims/21/1.4bpp" - .incbin "graphics/door_anims/21/2.4bpp" - - .space 32 - -DoorAnimTiles_22:: - .incbin "graphics/door_anims/22/0.4bpp" - .incbin "graphics/door_anims/22/1.4bpp" - .incbin "graphics/door_anims/22/2.4bpp" - - .space 32 - -DoorAnimTiles_23:: - .incbin "graphics/door_anims/23/0.4bpp" - .incbin "graphics/door_anims/23/1.4bpp" - .incbin "graphics/door_anims/23/2.4bpp" - - .space 32 - -DoorAnimTiles_24:: - .incbin "graphics/door_anims/24/0.4bpp" - .incbin "graphics/door_anims/24/1.4bpp" - .incbin "graphics/door_anims/24/2.4bpp" - - .space 32 - -DoorAnimTiles_25:: - .incbin "graphics/door_anims/25/0.4bpp" - .incbin "graphics/door_anims/25/1.4bpp" - .incbin "graphics/door_anims/25/2.4bpp" - - .space 32 - -DoorAnimTiles_26:: - .incbin "graphics/door_anims/26/0.4bpp" - .incbin "graphics/door_anims/26/1.4bpp" - .incbin "graphics/door_anims/26/2.4bpp" - - .space 32 - -DoorAnimTiles_27:: - .incbin "graphics/door_anims/27/0.4bpp" - .incbin "graphics/door_anims/27/1.4bpp" - .incbin "graphics/door_anims/27/2.4bpp" - - .space 32 - -DoorAnimTiles_28:: - .incbin "graphics/door_anims/28/0.4bpp" - .incbin "graphics/door_anims/28/1.4bpp" - .incbin "graphics/door_anims/28/2.4bpp" - - .space 32 - -DoorAnimTiles_29:: - .incbin "graphics/door_anims/29/0.4bpp" - .incbin "graphics/door_anims/29/1.4bpp" - .incbin "graphics/door_anims/29/2.4bpp" - - .space 32 - -DoorAnimTiles_30:: - .incbin "graphics/door_anims/30/0.4bpp" - .incbin "graphics/door_anims/30/1.4bpp" - .incbin "graphics/door_anims/30/2.4bpp" - - .space 32 - -DoorAnimTiles_31:: - .incbin "graphics/door_anims/31/0.4bpp" - .incbin "graphics/door_anims/31/1.4bpp" - .incbin "graphics/door_anims/31/2.4bpp" - - .space 32 - -DoorAnimTiles_32:: - .incbin "graphics/door_anims/32/0.4bpp" - .incbin "graphics/door_anims/32/1.4bpp" - .incbin "graphics/door_anims/32/2.4bpp" - - .space 32 - -DoorAnimTiles_33:: - .incbin "graphics/door_anims/33/0.4bpp" - .incbin "graphics/door_anims/33/1.4bpp" - .incbin "graphics/door_anims/33/2.4bpp" - - .space 32 - -DoorAnimTiles_34:: - .incbin "graphics/door_anims/34/0.4bpp" - .incbin "graphics/door_anims/34/1.4bpp" - .incbin "graphics/door_anims/34/2.4bpp" - - .space 32 - -DoorAnimTiles_35:: - .incbin "graphics/door_anims/35/0.4bpp" - .incbin "graphics/door_anims/35/1.4bpp" - .incbin "graphics/door_anims/35/2.4bpp" - - .space 32 - -DoorAnimTiles_36:: - .incbin "graphics/door_anims/36/0.4bpp" - .incbin "graphics/door_anims/36/1.4bpp" - .incbin "graphics/door_anims/36/2.4bpp" - - .space 32 - -DoorAnimTiles_37:: - .incbin "graphics/door_anims/37/0.4bpp" - .incbin "graphics/door_anims/37/1.4bpp" - .incbin "graphics/door_anims/37/2.4bpp" - - .space 32 - -DoorAnimTiles_38:: - .incbin "graphics/door_anims/38/0.4bpp" - .incbin "graphics/door_anims/38/1.4bpp" - .incbin "graphics/door_anims/38/2.4bpp" - - .space 32 - -DoorAnimTiles_39:: - .incbin "graphics/door_anims/39/0.4bpp" - .incbin "graphics/door_anims/39/1.4bpp" - .incbin "graphics/door_anims/39/2.4bpp" - - .space 32 - -DoorAnimTiles_40:: - .incbin "graphics/door_anims/40/0.4bpp" - .incbin "graphics/door_anims/40/1.4bpp" - .incbin "graphics/door_anims/40/2.4bpp" - - .space 32 - -DoorAnimTiles_41:: - .incbin "graphics/door_anims/41/0.4bpp" - .incbin "graphics/door_anims/41/1.4bpp" - .incbin "graphics/door_anims/41/2.4bpp" - -DoorAnimTiles_42:: - .incbin "graphics/door_anims/42/0.4bpp" - .incbin "graphics/door_anims/42/1.4bpp" - .incbin "graphics/door_anims/42/2.4bpp" - .incbin "graphics/door_anims/42/3.4bpp" - - .space 32 - -DoorAnimTiles_43:: - .incbin "graphics/door_anims/43/0.4bpp" - .incbin "graphics/door_anims/43/1.4bpp" - .incbin "graphics/door_anims/43/2.4bpp" - - .space 32 - -DoorAnimTiles_44:: - .incbin "graphics/door_anims/44/0_left.4bpp" - .incbin "graphics/door_anims/44/0_right.4bpp" - .incbin "graphics/door_anims/44/1_left.4bpp" - .incbin "graphics/door_anims/44/1_right.4bpp" - .incbin "graphics/door_anims/44/2_left.4bpp" - .incbin "graphics/door_anims/44/2_right.4bpp" - - .space 32 - -DoorAnimTiles_45:: - .incbin "graphics/door_anims/45/0.4bpp" - .incbin "graphics/door_anims/45/1.4bpp" - .incbin "graphics/door_anims/45/2.4bpp" - - .space 32 - -DoorAnimTiles_46:: - .incbin "graphics/door_anims/46/0.4bpp" - .incbin "graphics/door_anims/46/1.4bpp" - .incbin "graphics/door_anims/46/2.4bpp" - - .space 32 - -DoorAnimTiles_47:: - .incbin "graphics/door_anims/47/0.4bpp" - .incbin "graphics/door_anims/47/1.4bpp" - .incbin "graphics/door_anims/47/2.4bpp" - - .space 32 - -DoorAnimTiles_48:: - .incbin "graphics/door_anims/48/0.4bpp" - .incbin "graphics/door_anims/48/1.4bpp" - .incbin "graphics/door_anims/48/2.4bpp" - .incbin "graphics/door_anims/48/3.4bpp" - - .space 32 - -DoorAnimTiles_49:: - .incbin "graphics/door_anims/49/0.4bpp" - .incbin "graphics/door_anims/49/1.4bpp" - .incbin "graphics/door_anims/49/2.4bpp" - - .space 32 - -DoorAnimTiles_50:: - .incbin "graphics/door_anims/50/0.4bpp" - .incbin "graphics/door_anims/50/1.4bpp" - .incbin "graphics/door_anims/50/2.4bpp" - - .space 32 - - .align 2 -gUnknown_08496F8C:: @ 8496F8C - door_anim_frame 4, -1 - door_anim_frame 4, 0 - door_anim_frame 4, 0x100 - door_anim_frame 4, 0x200 - door_anim_frame 0, 0 - - .align 2 -gUnknown_08496FA0:: @ 8496FA0 - door_anim_frame 4, 0x200 - door_anim_frame 4, 0x100 - door_anim_frame 4, 0 - door_anim_frame 4, -1 - door_anim_frame 0, 0 - - .align 2 -gUnknown_08496FB4:: @ 8496FB4 - door_anim_frame 4, -1 - door_anim_frame 4, 0 - door_anim_frame 4, 0x200 - door_anim_frame 4, 0x400 - door_anim_frame 0, 0 - - .align 2 -gUnknown_08496FC8:: @ 8496FB4 - door_anim_frame 4, 0x400 - door_anim_frame 4, 0x200 - door_anim_frame 4, 0 - door_anim_frame 4, -1 - door_anim_frame 0, 0 - -DoorAnimPalettes_8496FDC:: @ 8496FDC - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_8496FE4:: @ 8496FE4 - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_8496FEC:: @ 8496FEC - .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 - -DoorAnimPalettes_8496FF4:: @ 8496FF4 - .byte 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_8496FFC:: @ 8496FFC - .byte 0x0a, 0x0a, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 - -DoorAnimPalettes_8497004:: @ 8497004 - .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 - -DoorAnimPalettes_849700C:: @ 849700C - .byte 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b - -DoorAnimPalettes_8497014:: @ 8497014 - .byte 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a - -DoorAnimPalettes_849701C:: @ 849701C - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_8497024:: @ 8497024 - .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 - -DoorAnimPalettes_849702C:: @ 849702C - .byte 0x0a, 0x0a, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_8497034:: @ 8497034 - .byte 0x09, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_849703C:: @ 849703C - .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 - -DoorAnimPalettes_8497044:: @ 8497044 - .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_849704C:: @ 849704C - .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 - -DoorAnimPalettes_8497054:: @ 8497054 - .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 - -DoorAnimPalettes_849705C:: @ 849705C - .byte 0x00, 0x00, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 - -DoorAnimPalettes_8497064:: @ 8497064 - .byte 0x06, 0x06, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_849706C:: @ 849706C - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_8497074:: @ 8497074 - .byte 0x06, 0x06, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 - -DoorAnimPalettes_849707C:: @ 849707C - .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 - -DoorAnimPalettes_8497084:: @ 8497084 - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_849708C:: @ 849708C - .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 - -DoorAnimPalettes_8497094:: @ 8497094 - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_849709C:: @ 849709C - .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 - -DoorAnimPalettes_84970A4:: @ 84970A4 - .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_84970AC:: @ 84970AC - .byte 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 - -DoorAnimPalettes_84970B4:: @ 84970B4 - .byte 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06 - -DoorAnimPalettes_84970BC:: @ 84970BC - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_84970C4:: @ 84970C4 - .byte 0x0b, 0x0b, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_84970CC:: @ 84970CC - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_84970D4:: @ 84970D4 - .byte 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_84970DC:: @ 84970DC - .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_84970E4:: @ 84970E4 - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_84970EC:: @ 84970EC - .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_84970F4:: @ 84970F4 - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_84970FC:: @ 84970FC - .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_8497104:: @ 8497104 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - -DoorAnimPalettes_849710C:: @ 849710C - .byte 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05 - -DoorAnimPalettes_8497114:: @ 8497114 - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_849711C:: @ 849711C - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_8497124:: @ 8497124 - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_849712C:: @ 849712C - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_8497134:: @ 8497134 - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_849713C:: @ 849713C - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_8497144:: @ 8497144 - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_849714C:: @ 849714C - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01 - -DoorAnimPalettes_8497154:: @ 8497154 - .byte 0x09, 0x09, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_849715C:: @ 849715C - .byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09 - -DoorAnimPalettes_8497164:: @ 8497164 - .byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - -DoorAnimPalettes_849716C:: @ 849716C - .byte 0x09, 0x09, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07 - - .align 2 -gUnknown_08497174:: @ 8497174 - door_anim_gfx 0x0021, 0x00, 0x01, DoorAnimTiles_00, DoorAnimPalettes_8496FDC - door_anim_gfx 0x0061, 0x01, 0x01, DoorAnimTiles_01, DoorAnimPalettes_8496FE4 - door_anim_gfx 0x01cd, 0x01, 0x01, DoorAnimTiles_02, DoorAnimPalettes_8496FEC - door_anim_gfx 0x0041, 0x01, 0x01, DoorAnimTiles_03, DoorAnimPalettes_8496FF4 - door_anim_gfx 0x0248, 0x00, 0x01, DoorAnimTiles_04, DoorAnimPalettes_8496FFC - door_anim_gfx 0x0249, 0x00, 0x01, DoorAnimTiles_05, DoorAnimPalettes_8497004 - door_anim_gfx 0x022f, 0x00, 0x01, DoorAnimTiles_06, DoorAnimPalettes_849700C - door_anim_gfx 0x021f, 0x00, 0x01, DoorAnimTiles_07, DoorAnimPalettes_8497014 - door_anim_gfx 0x02a5, 0x00, 0x01, DoorAnimTiles_08, DoorAnimPalettes_849701C - door_anim_gfx 0x0287, 0x00, 0x01, DoorAnimTiles_09, DoorAnimPalettes_849702C - door_anim_gfx 0x02ac, 0x00, 0x01, DoorAnimTiles_10, DoorAnimPalettes_849706C - door_anim_gfx 0x03a1, 0x00, 0x01, DoorAnimTiles_11, DoorAnimPalettes_8497074 - door_anim_gfx 0x02dc, 0x00, 0x01, DoorAnimTiles_12, DoorAnimPalettes_8497064 - door_anim_gfx 0x0225, 0x00, 0x01, DoorAnimTiles_13, DoorAnimPalettes_849705C - door_anim_gfx 0x01db, 0x01, 0x01, DoorAnimTiles_14, DoorAnimPalettes_8497084 - door_anim_gfx 0x0246, 0x00, 0x01, DoorAnimTiles_15, DoorAnimPalettes_8497024 - door_anim_gfx 0x028e, 0x00, 0x01, DoorAnimTiles_16, DoorAnimPalettes_849707C - door_anim_gfx 0x02a1, 0x00, 0x01, DoorAnimTiles_17, DoorAnimPalettes_8497034 - door_anim_gfx 0x021c, 0x00, 0x01, DoorAnimTiles_18, DoorAnimPalettes_849704C - door_anim_gfx 0x021e, 0x00, 0x01, DoorAnimTiles_19, DoorAnimPalettes_8497054 - door_anim_gfx 0x021d, 0x01, 0x01, DoorAnimTiles_20, DoorAnimPalettes_849703C - door_anim_gfx 0x021a, 0x00, 0x01, DoorAnimTiles_21, DoorAnimPalettes_8497044 - door_anim_gfx 0x0224, 0x00, 0x01, DoorAnimTiles_22, DoorAnimPalettes_849708C - door_anim_gfx 0x0289, 0x00, 0x01, DoorAnimTiles_23, DoorAnimPalettes_8497094 - door_anim_gfx 0x030c, 0x01, 0x01, DoorAnimTiles_24, DoorAnimPalettes_849709C - door_anim_gfx 0x032d, 0x01, 0x01, DoorAnimTiles_25, DoorAnimPalettes_84970A4 - door_anim_gfx 0x02ed, 0x01, 0x01, DoorAnimTiles_26, DoorAnimPalettes_84970AC - door_anim_gfx 0x0264, 0x01, 0x01, DoorAnimTiles_27, DoorAnimPalettes_84970B4 - door_anim_gfx 0x022b, 0x00, 0x01, DoorAnimTiles_28, DoorAnimPalettes_84970BC - door_anim_gfx 0x02f7, 0x00, 0x01, DoorAnimTiles_29, DoorAnimPalettes_84970C4 - door_anim_gfx 0x0297, 0x00, 0x01, DoorAnimTiles_30, DoorAnimPalettes_84970CC - door_anim_gfx 0x0285, 0x01, 0x01, DoorAnimTiles_31, DoorAnimPalettes_84970D4 - door_anim_gfx 0x025d, 0x01, 0x01, DoorAnimTiles_32, DoorAnimPalettes_84970DC - door_anim_gfx 0x020e, 0x01, 0x01, DoorAnimTiles_33, DoorAnimPalettes_84970E4 - door_anim_gfx 0x03b0, 0x01, 0x01, DoorAnimTiles_34, DoorAnimPalettes_84970EC - door_anim_gfx 0x028a, 0x01, 0x01, DoorAnimTiles_35, DoorAnimPalettes_84970F4 - door_anim_gfx 0x0263, 0x01, 0x01, DoorAnimTiles_36, DoorAnimPalettes_84970FC - door_anim_gfx 0x0329, 0x01, 0x01, DoorAnimTiles_37, DoorAnimPalettes_8497104 - door_anim_gfx 0x0291, 0x00, 0x01, DoorAnimTiles_38, DoorAnimPalettes_849710C - door_anim_gfx 0x021b, 0x02, 0x01, DoorAnimTiles_39, DoorAnimPalettes_8497114 - door_anim_gfx 0x0209, 0x01, 0x01, DoorAnimTiles_40, DoorAnimPalettes_849711C - door_anim_gfx 0x0219, 0x00, 0x01, DoorAnimTiles_41, DoorAnimPalettes_8497124 - door_anim_gfx 0x0393, 0x01, 0x01, DoorAnimTiles_42, DoorAnimPalettes_849712C - door_anim_gfx 0x03d4, 0x01, 0x01, DoorAnimTiles_42, DoorAnimPalettes_849712C - door_anim_gfx 0x036c, 0x01, 0x01, DoorAnimTiles_42, DoorAnimPalettes_849712C - door_anim_gfx 0x025e, 0x01, 0x01, DoorAnimTiles_43, DoorAnimPalettes_8497134 - door_anim_gfx 0x02ad, 0x01, 0x02, DoorAnimTiles_44, DoorAnimPalettes_849713C - door_anim_gfx 0x03fc, 0x00, 0x01, DoorAnimTiles_45, DoorAnimPalettes_849714C - door_anim_gfx 0x0396, 0x01, 0x01, DoorAnimTiles_46, DoorAnimPalettes_849714C - door_anim_gfx 0x020a, 0x01, 0x01, DoorAnimTiles_47, DoorAnimPalettes_8497154 - door_anim_gfx 0x026b, 0x01, 0x01, DoorAnimTiles_48, DoorAnimPalettes_849715C - door_anim_gfx 0x032c, 0x01, 0x01, DoorAnimTiles_49, DoorAnimPalettes_8497164 - door_anim_gfx 0x0383, 0x01, 0x01, DoorAnimTiles_50, DoorAnimPalettes_849716C - door_anim_gfx 0x0000, 0x00, 0x00, NULL, NULL - diff --git a/include/field_camera.h b/include/field_camera.h index a8559e1c2..f68c67854 100644 --- a/include/field_camera.h +++ b/include/field_camera.h @@ -24,5 +24,6 @@ extern u16 gUnknown_03005DE8; void DrawWholeMapView(void); void CurrentMapDrawMetatileAt(int x, int y); +void DrawDoorMetatileAt(int x, int y, u16 *arr); #endif //GUARD_FIELD_CAMERA_H diff --git a/include/field_door.h b/include/field_door.h index f1dfc551d..dd039a5c2 100644 --- a/include/field_door.h +++ b/include/field_door.h @@ -1,11 +1,27 @@ #ifndef GUARD_FIELDDOOR_H #define GUARD_FIELDDOOR_H +struct DoorGraphics +{ + u16 metatileNum; + u8 sound; + u8 size; + const void *tiles; + const void *palette; +}; + +struct DoorAnimFrame +{ + u8 time; + u16 offset; +}; + void FieldSetDoorOpened(u32, u32); void FieldSetDoorClosed(u32, u32); s8 FieldAnimateDoorClose(u32, u32); s8 FieldAnimateDoorOpen(u32, u32); bool8 FieldIsDoorAnimationRunning(void); u32 GetDoorSoundEffect(u32 x, u32 y); +bool8 sub_808A964(void); #endif diff --git a/ld_script.txt b/ld_script.txt index 4a4e41058..e7a8f81f7 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -92,7 +92,7 @@ SECTIONS { asm/fieldmap.o(.text); src/metatile_behavior.o(.text); asm/field_camera.o(.text); - asm/field_door.o(.text); + src/field_door.o(.text); asm/field_player_avatar.o(.text); src/field_map_obj.o(.text); asm/field_ground_effect.o(.text); @@ -363,7 +363,7 @@ SECTIONS { data/maps.o(.rodata); data/fieldmap.o(.rodata); src/metatile_behavior.o(.rodata); - data/field_door.o(.rodata); + src/field_door.o(.rodata); data/field_player_avatar.o(.rodata); data/field_map_obj.o(.rodata); data/field_ground_effect.o(.rodata); diff --git a/src/field_door.c b/src/field_door.c new file mode 100644 index 000000000..38c031264 --- /dev/null +++ b/src/field_door.c @@ -0,0 +1,896 @@ +#include "global.h" +#include "field_door.h" +#include "field_camera.h" +#include "fieldmap.h" +#include "metatile_behavior.h" +#include "event_data.h" +#include "constants/songs.h" +#include "constants/flags.h" +#include "constants/maps.h" +#include "task.h" + +const u8 DoorAnimTiles_04[][0x100] = +{ + INCBIN_U8("graphics/door_anims/04/0.4bpp"), + INCBIN_U8("graphics/door_anims/04/1.4bpp"), + INCBIN_U8("graphics/door_anims/04/2.4bpp"), +}; + +// TODO: Make these blank palette includes? +asm(".space 32"); + +const u8 DoorAnimTiles_05[][0x100] = +{ + INCBIN_U8("graphics/door_anims/05/0.4bpp"), + INCBIN_U8("graphics/door_anims/05/1.4bpp"), + INCBIN_U8("graphics/door_anims/05/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_08[][0x100] = +{ + INCBIN_U8("graphics/door_anims/08/0.4bpp"), + INCBIN_U8("graphics/door_anims/08/1.4bpp"), + INCBIN_U8("graphics/door_anims/08/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_15[][0x100] = +{ + INCBIN_U8("graphics/door_anims/15/0.4bpp"), + INCBIN_U8("graphics/door_anims/15/1.4bpp"), + INCBIN_U8("graphics/door_anims/15/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_16[][0x100] = +{ + INCBIN_U8("graphics/door_anims/16/0.4bpp"), + INCBIN_U8("graphics/door_anims/16/1.4bpp"), + INCBIN_U8("graphics/door_anims/16/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_00[][0x100] = +{ + INCBIN_U8("graphics/door_anims/00/0.4bpp"), + INCBIN_U8("graphics/door_anims/00/1.4bpp"), + INCBIN_U8("graphics/door_anims/00/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_01[][0x100] = +{ + INCBIN_U8("graphics/door_anims/01/0.4bpp"), + INCBIN_U8("graphics/door_anims/01/1.4bpp"), + INCBIN_U8("graphics/door_anims/01/2.4bpp"), +}; + +const u8 DoorAnimTiles_02[][0x100] = +{ + INCBIN_U8("graphics/door_anims/02/0.4bpp"), + INCBIN_U8("graphics/door_anims/02/1.4bpp"), + INCBIN_U8("graphics/door_anims/02/2.4bpp"), +}; + +const u8 DoorAnimTiles_03[][0x100] = +{ + INCBIN_U8("graphics/door_anims/03/0.4bpp"), + INCBIN_U8("graphics/door_anims/03/1.4bpp"), + INCBIN_U8("graphics/door_anims/03/2.4bpp"), +}; + +const u8 DoorAnimTiles_06[][0x100] = +{ + INCBIN_U8("graphics/door_anims/06/0.4bpp"), + INCBIN_U8("graphics/door_anims/06/1.4bpp"), + INCBIN_U8("graphics/door_anims/06/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_07[][0x100] = +{ + INCBIN_U8("graphics/door_anims/07/0.4bpp"), + INCBIN_U8("graphics/door_anims/07/1.4bpp"), + INCBIN_U8("graphics/door_anims/07/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_09[][0x100] = +{ + INCBIN_U8("graphics/door_anims/09/0.4bpp"), + INCBIN_U8("graphics/door_anims/09/1.4bpp"), + INCBIN_U8("graphics/door_anims/09/2.4bpp"), +}; + +asm(".space 0x5900"); + +const u8 DoorAnimTiles_UnusedTops[][0x40] = +{ + INCBIN_U8("graphics/door_anims/unused_848EDEC/0_top.4bpp"), + INCBIN_U8("graphics/door_anims/unused_848EDEC/1_top.4bpp"), + INCBIN_U8("graphics/door_anims/unused_848EDEC/2_top.4bpp"), +}; + +asm(".space 0x140"); + +const u8 DoorAnimTiles_UnusedBottoms[][0x40] = +{ + INCBIN_U8("graphics/door_anims/unused_848EDEC/0_bottom.4bpp"), + INCBIN_U8("graphics/door_anims/unused_848EDEC/1_bottom.4bpp"), + INCBIN_U8("graphics/door_anims/unused_848EDEC/2_bottom.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_10[][0x100] = +{ + INCBIN_U8("graphics/door_anims/10/0.4bpp"), + INCBIN_U8("graphics/door_anims/10/1.4bpp"), + INCBIN_U8("graphics/door_anims/10/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_11[][0x100] = +{ + INCBIN_U8("graphics/door_anims/11/0.4bpp"), + INCBIN_U8("graphics/door_anims/11/1.4bpp"), + INCBIN_U8("graphics/door_anims/11/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_12[][0x100] = +{ + INCBIN_U8("graphics/door_anims/12/0.4bpp"), + INCBIN_U8("graphics/door_anims/12/1.4bpp"), + INCBIN_U8("graphics/door_anims/12/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_13[][0x100] = +{ + INCBIN_U8("graphics/door_anims/13/0.4bpp"), + INCBIN_U8("graphics/door_anims/13/1.4bpp"), + INCBIN_U8("graphics/door_anims/13/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_14[][0x100] = +{ + INCBIN_U8("graphics/door_anims/14/0.4bpp"), + INCBIN_U8("graphics/door_anims/14/1.4bpp"), + INCBIN_U8("graphics/door_anims/14/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_17[][0x100] = +{ + INCBIN_U8("graphics/door_anims/17/0.4bpp"), + INCBIN_U8("graphics/door_anims/17/1.4bpp"), + INCBIN_U8("graphics/door_anims/17/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_18[][0x100] = +{ + INCBIN_U8("graphics/door_anims/18/0.4bpp"), + INCBIN_U8("graphics/door_anims/18/1.4bpp"), + INCBIN_U8("graphics/door_anims/18/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_19[][0x100] = +{ + INCBIN_U8("graphics/door_anims/19/0.4bpp"), + INCBIN_U8("graphics/door_anims/19/1.4bpp"), + INCBIN_U8("graphics/door_anims/19/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_20[][0x100] = +{ + INCBIN_U8("graphics/door_anims/20/0.4bpp"), + INCBIN_U8("graphics/door_anims/20/1.4bpp"), + INCBIN_U8("graphics/door_anims/20/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_21[][0x100] = +{ + INCBIN_U8("graphics/door_anims/21/0.4bpp"), + INCBIN_U8("graphics/door_anims/21/1.4bpp"), + INCBIN_U8("graphics/door_anims/21/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_22[][0x100] = +{ + INCBIN_U8("graphics/door_anims/22/0.4bpp"), + INCBIN_U8("graphics/door_anims/22/1.4bpp"), + INCBIN_U8("graphics/door_anims/22/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_23[][0x100] = +{ + INCBIN_U8("graphics/door_anims/23/0.4bpp"), + INCBIN_U8("graphics/door_anims/23/1.4bpp"), + INCBIN_U8("graphics/door_anims/23/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_24[][0x100] = +{ + INCBIN_U8("graphics/door_anims/24/0.4bpp"), + INCBIN_U8("graphics/door_anims/24/1.4bpp"), + INCBIN_U8("graphics/door_anims/24/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_25[][0x100] = +{ + INCBIN_U8("graphics/door_anims/25/0.4bpp"), + INCBIN_U8("graphics/door_anims/25/1.4bpp"), + INCBIN_U8("graphics/door_anims/25/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_26[][0x100] = +{ + INCBIN_U8("graphics/door_anims/26/0.4bpp"), + INCBIN_U8("graphics/door_anims/26/1.4bpp"), + INCBIN_U8("graphics/door_anims/26/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_27[][0x100] = +{ + INCBIN_U8("graphics/door_anims/27/0.4bpp"), + INCBIN_U8("graphics/door_anims/27/1.4bpp"), + INCBIN_U8("graphics/door_anims/27/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_28[][0x100] = +{ + INCBIN_U8("graphics/door_anims/28/0.4bpp"), + INCBIN_U8("graphics/door_anims/28/1.4bpp"), + INCBIN_U8("graphics/door_anims/28/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_29[][0x100] = +{ + INCBIN_U8("graphics/door_anims/29/0.4bpp"), + INCBIN_U8("graphics/door_anims/29/1.4bpp"), + INCBIN_U8("graphics/door_anims/29/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_30[][0x100] = +{ + INCBIN_U8("graphics/door_anims/30/0.4bpp"), + INCBIN_U8("graphics/door_anims/30/1.4bpp"), + INCBIN_U8("graphics/door_anims/30/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_31[][0x100] = +{ + INCBIN_U8("graphics/door_anims/31/0.4bpp"), + INCBIN_U8("graphics/door_anims/31/1.4bpp"), + INCBIN_U8("graphics/door_anims/31/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_32[][0x100] = +{ + INCBIN_U8("graphics/door_anims/32/0.4bpp"), + INCBIN_U8("graphics/door_anims/32/1.4bpp"), + INCBIN_U8("graphics/door_anims/32/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_33[][0x100] = +{ + INCBIN_U8("graphics/door_anims/33/0.4bpp"), + INCBIN_U8("graphics/door_anims/33/1.4bpp"), + INCBIN_U8("graphics/door_anims/33/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_34[][0x100] = +{ + INCBIN_U8("graphics/door_anims/34/0.4bpp"), + INCBIN_U8("graphics/door_anims/34/1.4bpp"), + INCBIN_U8("graphics/door_anims/34/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_35[][0x100] = +{ + INCBIN_U8("graphics/door_anims/35/0.4bpp"), + INCBIN_U8("graphics/door_anims/35/1.4bpp"), + INCBIN_U8("graphics/door_anims/35/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_36[][0x100] = +{ + INCBIN_U8("graphics/door_anims/36/0.4bpp"), + INCBIN_U8("graphics/door_anims/36/1.4bpp"), + INCBIN_U8("graphics/door_anims/36/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_37[][0x100] = +{ + INCBIN_U8("graphics/door_anims/37/0.4bpp"), + INCBIN_U8("graphics/door_anims/37/1.4bpp"), + INCBIN_U8("graphics/door_anims/37/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_38[][0x100] = +{ + INCBIN_U8("graphics/door_anims/38/0.4bpp"), + INCBIN_U8("graphics/door_anims/38/1.4bpp"), + INCBIN_U8("graphics/door_anims/38/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_39[][0x100] = +{ + INCBIN_U8("graphics/door_anims/39/0.4bpp"), + INCBIN_U8("graphics/door_anims/39/1.4bpp"), + INCBIN_U8("graphics/door_anims/39/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_40[][0x100] = +{ + INCBIN_U8("graphics/door_anims/40/0.4bpp"), + INCBIN_U8("graphics/door_anims/40/1.4bpp"), + INCBIN_U8("graphics/door_anims/40/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_41[][0x100] = +{ + INCBIN_U8("graphics/door_anims/41/0.4bpp"), + INCBIN_U8("graphics/door_anims/41/1.4bpp"), + INCBIN_U8("graphics/door_anims/41/2.4bpp"), +}; + +const u8 DoorAnimTiles_42[][0x100] = +{ + INCBIN_U8("graphics/door_anims/42/0.4bpp"), + INCBIN_U8("graphics/door_anims/42/1.4bpp"), + INCBIN_U8("graphics/door_anims/42/2.4bpp"), + INCBIN_U8("graphics/door_anims/42/3.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_43[][0x100] = +{ + INCBIN_U8("graphics/door_anims/43/0.4bpp"), + INCBIN_U8("graphics/door_anims/43/1.4bpp"), + INCBIN_U8("graphics/door_anims/43/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_44[][0x100] = +{ + INCBIN_U8("graphics/door_anims/44/0_left.4bpp"), + INCBIN_U8("graphics/door_anims/44/0_right.4bpp"), + INCBIN_U8("graphics/door_anims/44/1_left.4bpp"), + INCBIN_U8("graphics/door_anims/44/1_right.4bpp"), + INCBIN_U8("graphics/door_anims/44/2_left.4bpp"), + INCBIN_U8("graphics/door_anims/44/2_right.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_45[][0x100] = +{ + INCBIN_U8("graphics/door_anims/45/0.4bpp"), + INCBIN_U8("graphics/door_anims/45/1.4bpp"), + INCBIN_U8("graphics/door_anims/45/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_46[][0x100] = +{ + INCBIN_U8("graphics/door_anims/46/0.4bpp"), + INCBIN_U8("graphics/door_anims/46/1.4bpp"), + INCBIN_U8("graphics/door_anims/46/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_47[][0x100] = +{ + INCBIN_U8("graphics/door_anims/47/0.4bpp"), + INCBIN_U8("graphics/door_anims/47/1.4bpp"), + INCBIN_U8("graphics/door_anims/47/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_48[][0x100] = +{ + INCBIN_U8("graphics/door_anims/48/0.4bpp"), + INCBIN_U8("graphics/door_anims/48/1.4bpp"), + INCBIN_U8("graphics/door_anims/48/2.4bpp"), + INCBIN_U8("graphics/door_anims/48/3.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_49[][0x100] = +{ + INCBIN_U8("graphics/door_anims/49/0.4bpp"), + INCBIN_U8("graphics/door_anims/49/1.4bpp"), + INCBIN_U8("graphics/door_anims/49/2.4bpp"), +}; + +asm(".space 32"); + +const u8 DoorAnimTiles_50[][0x100] = +{ + INCBIN_U8("graphics/door_anims/50/0.4bpp"), + INCBIN_U8("graphics/door_anims/50/1.4bpp"), + INCBIN_U8("graphics/door_anims/50/2.4bpp"), +}; + +asm(".space 32"); + +static const struct DoorAnimFrame gDoorOpenAnimFrames[] = +{ + {4, -1}, + {4, 0}, + {4, 0x100}, + {4, 0x200}, + {0, 0}, +}; + +static const struct DoorAnimFrame gDoorCloseAnimFrames[] = +{ + {4, 0x200}, + {4, 0x100}, + {4, 0}, + {4, -1}, + {0, 0}, +}; + +static const struct DoorAnimFrame gBigDoorOpenAnimFrames[] = +{ + {4, -1}, + {4, 0}, + {4, 0x200}, + {4, 0x400}, + {0, 0}, +}; + +static const struct DoorAnimFrame gBigDoorCloseAnimFrames[] = +{ + {4, 0x400}, + {4, 0x200}, + {4, 0}, + {4, -1}, + {0, 0}, +}; + +const u8 DoorAnimPalettes_8496FDC[] = {1, 1, 1, 1, 1, 1, 1, 1}; // door 00 +const u8 DoorAnimPalettes_8496FE4[] = {1, 1, 1, 1, 1, 1, 1, 1}; // door 01 +const u8 DoorAnimPalettes_8496FEC[] = {5, 5, 5, 5, 5, 5, 5, 5}; // door 02 +const u8 DoorAnimPalettes_8496FF4[] = {0, 0, 1, 1, 1, 1, 1, 1}; // door 03 +const u8 DoorAnimPalettes_8496FFC[] = {10, 10, 6, 6, 6, 6, 6, 6}; // door 04 +const u8 DoorAnimPalettes_8497004[] = {8, 8, 8, 8, 8, 8, 8, 8}; // door 05 +const u8 DoorAnimPalettes_849700C[] = {11, 11, 11, 11, 11, 11, 11, 11}; // door 06 +const u8 DoorAnimPalettes_8497014[] = {10, 10, 10, 10, 10, 10, 10, 10}; // door 07 +const u8 DoorAnimPalettes_849701C[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 08 +const u8 DoorAnimPalettes_8497024[] = {8, 8, 8, 8, 8, 8, 8, 8}; // door 09 +const u8 DoorAnimPalettes_849702C[] = {10, 10, 9, 9, 9, 9, 9, 9}; // door 10 +const u8 DoorAnimPalettes_8497034[] = {9, 9, 1, 1, 1, 1, 1, 1}; // door 11 +const u8 DoorAnimPalettes_849703C[] = {8, 8, 8, 8, 8, 8, 8, 8}; // door 12 +const u8 DoorAnimPalettes_8497044[] = {9, 9, 9, 9, 9, 9, 9, 9}; // door 13 +const u8 DoorAnimPalettes_849704C[] = {6, 6, 6, 6, 6, 6, 6, 6}; // door 14 +const u8 DoorAnimPalettes_8497054[] = {6, 6, 6, 6, 6, 6, 6, 6}; // door 15 +const u8 DoorAnimPalettes_849705C[] = {0, 0, 5, 5, 5, 5, 5, 5}; // door 16 +const u8 DoorAnimPalettes_8497064[] = {6, 6, 1, 1, 1, 1, 1, 1}; // door 17 +const u8 DoorAnimPalettes_849706C[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 18 +const u8 DoorAnimPalettes_8497074[] = {6, 6, 5, 5, 5, 5, 5, 5}; // door 19 +const u8 DoorAnimPalettes_849707C[] = {5, 5, 5, 5, 5, 5, 5, 5}; // door 20 +const u8 DoorAnimPalettes_8497084[] = {1, 1, 1, 1, 1, 1, 1, 1}; // door 21 +const u8 DoorAnimPalettes_849708C[] = {6, 6, 6, 6, 6, 6, 6, 6}; // door 22 +const u8 DoorAnimPalettes_8497094[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 23 +const u8 DoorAnimPalettes_849709C[] = {5, 5, 5, 5, 5, 5, 5, 5}; // door 24 +const u8 DoorAnimPalettes_84970A4[] = {9, 9, 9, 9, 9, 9, 9, 9}; // door 25 +const u8 DoorAnimPalettes_84970AC[] = {8, 8, 8, 8, 8, 8, 8, 8}; // door 26 +const u8 DoorAnimPalettes_84970B4[] = {6, 6, 6, 6, 6, 6, 6, 6}; // door 27 +const u8 DoorAnimPalettes_84970BC[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 28 +const u8 DoorAnimPalettes_84970C4[] = {11, 11, 7, 7, 7, 7, 7, 7}; // door 29 +const u8 DoorAnimPalettes_84970CC[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 30 +const u8 DoorAnimPalettes_84970D4[] = {6, 6, 7, 7, 7, 7, 7, 7}; // door 31 +const u8 DoorAnimPalettes_84970DC[] = {9, 9, 9, 9, 9, 9, 9, 9}; // door 32 +const u8 DoorAnimPalettes_84970E4[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 33 +const u8 DoorAnimPalettes_84970EC[] = {9, 9, 9, 9, 9, 9, 9, 9}; // door 34 +const u8 DoorAnimPalettes_84970F4[] = {1, 1, 1, 1, 1, 1, 1, 1}; // door 35 +const u8 DoorAnimPalettes_84970FC[] = {9, 9, 9, 9, 9, 9, 9, 9}; // door 36 +const u8 DoorAnimPalettes_8497104[] = {0, 0, 0, 0, 0, 0, 0, 0}; // door 37 +const u8 DoorAnimPalettes_849710C[] = {5, 5, 5, 5, 5, 5, 5, 5}; // door 38 +const u8 DoorAnimPalettes_8497114[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 39 +const u8 DoorAnimPalettes_849711C[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 40 +const u8 DoorAnimPalettes_8497124[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 41 +const u8 DoorAnimPalettes_849712C[] = {1, 1, 1, 1, 1, 1, 1, 1}; // doors 42, 43, and 44 +const u8 DoorAnimPalettes_8497134[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 45 +const u8 DoorAnimPalettes_849713C[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 46 +const u8 DoorAnimPalettes_8497144[] = {1, 1, 1, 1, 1, 1, 1, 1}; // unused +const u8 DoorAnimPalettes_849714C[] = {1, 1, 1, 1, 1, 1, 1, 1}; // doors 47 and 48 +const u8 DoorAnimPalettes_8497154[] = {9, 9, 7, 7, 7, 7, 7, 7}; // door 49 +const u8 DoorAnimPalettes_849715C[] = {9, 9, 9, 9, 9, 9, 9, 9}; // door 50 +const u8 DoorAnimPalettes_8497164[] = {7, 7, 7, 7, 7, 7, 7, 7}; // door 51 +const u8 DoorAnimPalettes_849716C[] = {9, 9, 7, 7, 7, 7, 7, 7}; // door 52 + +static const struct DoorGraphics gDoorAnimGraphicsTable[] = +{ + {0x021, 0, 1, DoorAnimTiles_00, DoorAnimPalettes_8496FDC}, // door 00 + {0x061, 1, 1, DoorAnimTiles_01, DoorAnimPalettes_8496FE4}, // door 01 + {0x1CD, 1, 1, DoorAnimTiles_02, DoorAnimPalettes_8496FEC}, // door 02 + {0x041, 1, 1, DoorAnimTiles_03, DoorAnimPalettes_8496FF4}, // door 03 + {0x248, 0, 1, DoorAnimTiles_04, DoorAnimPalettes_8496FFC}, // door 04 + {0x249, 0, 1, DoorAnimTiles_05, DoorAnimPalettes_8497004}, // door 05 + {0x22F, 0, 1, DoorAnimTiles_06, DoorAnimPalettes_849700C}, // door 06 + {0x21F, 0, 1, DoorAnimTiles_07, DoorAnimPalettes_8497014}, // door 07 + {0x2A5, 0, 1, DoorAnimTiles_08, DoorAnimPalettes_849701C}, // door 08 + {0x287, 0, 1, DoorAnimTiles_09, DoorAnimPalettes_849702C}, // door 09 + {0x2AC, 0, 1, DoorAnimTiles_10, DoorAnimPalettes_849706C}, // door 10 + {0x3A1, 0, 1, DoorAnimTiles_11, DoorAnimPalettes_8497074}, // door 11 + {0x2DC, 0, 1, DoorAnimTiles_12, DoorAnimPalettes_8497064}, // door 12 + {0x225, 0, 1, DoorAnimTiles_13, DoorAnimPalettes_849705C}, // door 13 + {0x1DB, 1, 1, DoorAnimTiles_14, DoorAnimPalettes_8497084}, // door 14 + {0x246, 0, 1, DoorAnimTiles_15, DoorAnimPalettes_8497024}, // door 15 + {0x28E, 0, 1, DoorAnimTiles_16, DoorAnimPalettes_849707C}, // door 16 + {0x2A1, 0, 1, DoorAnimTiles_17, DoorAnimPalettes_8497034}, // door 17 + {0x21C, 0, 1, DoorAnimTiles_18, DoorAnimPalettes_849704C}, // door 18 + {0x21E, 0, 1, DoorAnimTiles_19, DoorAnimPalettes_8497054}, // door 19 + {0x21D, 1, 1, DoorAnimTiles_20, DoorAnimPalettes_849703C}, // door 20 + {0x21A, 0, 1, DoorAnimTiles_21, DoorAnimPalettes_8497044}, // door 21 + {0x224, 0, 1, DoorAnimTiles_22, DoorAnimPalettes_849708C}, // door 22 + {0x289, 0, 1, DoorAnimTiles_23, DoorAnimPalettes_8497094}, // door 23 + {0x30C, 1, 1, DoorAnimTiles_24, DoorAnimPalettes_849709C}, // door 24 + {0x32D, 1, 1, DoorAnimTiles_25, DoorAnimPalettes_84970A4}, // door 25 + {0x2ED, 1, 1, DoorAnimTiles_26, DoorAnimPalettes_84970AC}, // door 26 + {0x264, 1, 1, DoorAnimTiles_27, DoorAnimPalettes_84970B4}, // door 27 + {0x22B, 0, 1, DoorAnimTiles_28, DoorAnimPalettes_84970BC}, // door 28 + {0x2F7, 0, 1, DoorAnimTiles_29, DoorAnimPalettes_84970C4}, // door 29 + {0x297, 0, 1, DoorAnimTiles_30, DoorAnimPalettes_84970CC}, // door 30 + {0x285, 1, 1, DoorAnimTiles_31, DoorAnimPalettes_84970D4}, // door 31 + {0x25D, 1, 1, DoorAnimTiles_32, DoorAnimPalettes_84970DC}, // door 32 + {0x20E, 1, 1, DoorAnimTiles_33, DoorAnimPalettes_84970E4}, // door 33 + {0x3B0, 1, 1, DoorAnimTiles_34, DoorAnimPalettes_84970EC}, // door 34 + {0x28A, 1, 1, DoorAnimTiles_35, DoorAnimPalettes_84970F4}, // door 35 + {0x263, 1, 1, DoorAnimTiles_36, DoorAnimPalettes_84970FC}, // door 36 + {0x329, 1, 1, DoorAnimTiles_37, DoorAnimPalettes_8497104}, // door 37 + {0x291, 0, 1, DoorAnimTiles_38, DoorAnimPalettes_849710C}, // door 38 + {0x21B, 2, 1, DoorAnimTiles_39, DoorAnimPalettes_8497114}, // door 39 + {0x209, 1, 1, DoorAnimTiles_40, DoorAnimPalettes_849711C}, // door 40 + {0x219, 0, 1, DoorAnimTiles_41, DoorAnimPalettes_8497124}, // door 41 + {0x393, 1, 1, DoorAnimTiles_42, DoorAnimPalettes_849712C}, // door 42 + {0x3D4, 1, 1, DoorAnimTiles_42, DoorAnimPalettes_849712C}, // door 43 + {0x36C, 1, 1, DoorAnimTiles_42, DoorAnimPalettes_849712C}, // door 44 + {0x25E, 1, 1, DoorAnimTiles_43, DoorAnimPalettes_8497134}, // door 45 + {0x2AD, 1, 2, DoorAnimTiles_44, DoorAnimPalettes_849713C}, // door 46 + {0x3FC, 0, 1, DoorAnimTiles_45, DoorAnimPalettes_849714C}, // door 47 + {0x396, 1, 1, DoorAnimTiles_46, DoorAnimPalettes_849714C}, // door 48 + {0x20A, 1, 1, DoorAnimTiles_47, DoorAnimPalettes_8497154}, // door 49 + {0x26B, 1, 1, DoorAnimTiles_48, DoorAnimPalettes_849715C}, // door 50 + {0x32C, 1, 1, DoorAnimTiles_49, DoorAnimPalettes_8497164}, // door 51 + {0x383, 1, 1, DoorAnimTiles_50, DoorAnimPalettes_849716C}, // door 52 + {0, 0, 0, NULL, NULL}, +}; + +static void CopyDoorTilesToVram(const struct DoorGraphics *gfx, const struct DoorAnimFrame *frame) +{ + if (gfx->size == 2) + CpuFastSet(gfx->tiles + frame->offset, (void *)(VRAM + 0x7E00), 0x80); + else + CpuFastSet(gfx->tiles + frame->offset, (void *)(VRAM + 0x7F00), 0x40); +} + +static void door_build_blockdef(u16 *a, u16 b, const u8 *c) +{ + int i; + u16 unk; + + for (i = 0; i < 4; i++) + { + unk = *(c++) << 12; + a[i] = unk | (b + i); + } + for (; i < 8; i++) + { + unk = *(c++) << 12; + a[i] = unk; + } +} + +static void DrawCurrentDoorAnimFrame(const struct DoorGraphics *gfx, u32 x, u32 y, const u8 *pal) +{ + u16 arr[24]; + + if (gfx->size == 2) + { + door_build_blockdef(&arr[8], 0x3F0, pal); + DrawDoorMetatileAt(x, y - 1, &arr[8]); + door_build_blockdef(&arr[8], 0x3F4, pal + 4); + DrawDoorMetatileAt(x, y, &arr[8]); + door_build_blockdef(&arr[8], 0x3F8, pal); + DrawDoorMetatileAt(x + 1, y - 1, &arr[8]); + door_build_blockdef(&arr[8], 0x3FC, pal + 4); + DrawDoorMetatileAt(x + 1, y, &arr[8]); + } + else + { + door_build_blockdef(&arr[0], 0x3F8, pal); + DrawDoorMetatileAt(x, y - 1, &arr[0]); + door_build_blockdef(&arr[0], 0x3FC, pal + 4); + DrawDoorMetatileAt(x, y, &arr[0]); + } +} + +static void DrawClosedDoorTiles(const struct DoorGraphics *gfx, u32 x, u32 y) +{ + CurrentMapDrawMetatileAt(x, y - 1); + CurrentMapDrawMetatileAt(x, y); + + if (gfx->size == 2) + { + CurrentMapDrawMetatileAt(x + 1, y - 1); + CurrentMapDrawMetatileAt(x + 1, y); + } +} + +static void DrawDoor(const struct DoorGraphics *gfx, const struct DoorAnimFrame *frame, u32 x, u32 y) +{ + if (frame->offset == 0xFFFF) + { + DrawClosedDoorTiles(gfx, x, y); + if (sub_808A964()) + DrawClosedDoorTiles(gfx, gSpecialVar_0x8004 + 7, gSpecialVar_0x8005 + 7); + } + else + { + CopyDoorTilesToVram(gfx, frame); + DrawCurrentDoorAnimFrame(gfx, x, y, gfx->palette); + if (sub_808A964()) + DrawCurrentDoorAnimFrame(gfx, gSpecialVar_0x8004 + 7, gSpecialVar_0x8005 + 7, gfx->palette); + } +} + +enum +{ + TD_FRAMELIST = 0, + TD_GFX = 2, + TD_FRAME = 4, + TD_COUNTER, + TD_X, + TD_Y +}; + +static bool32 sub_808A5F0(struct DoorGraphics *gfx, struct DoorAnimFrame *frames, s16 *taskData) +{ + if (taskData[TD_COUNTER] == 0) + DrawDoor(gfx, &frames[taskData[TD_FRAME]], taskData[TD_X], taskData[TD_Y]); + if (taskData[TD_COUNTER] == frames[taskData[TD_FRAME]].time) + { + taskData[TD_COUNTER] = 0; + taskData[TD_FRAME]++; + if (frames[taskData[TD_FRAME]].time == 0) + return FALSE; + else + return TRUE; + } + taskData[TD_COUNTER]++; + return TRUE; +} + +static void Task_AnimateDoor(u8 taskId) +{ + u16 *taskData = gTasks[taskId].data; + struct DoorAnimFrame *frames = (struct DoorAnimFrame *)(taskData[TD_FRAMELIST] << 16 | taskData[TD_FRAMELIST + 1]); + struct DoorGraphics *gfx = (struct DoorGraphics *)(taskData[TD_GFX] << 16 | taskData[TD_GFX + 1]); + + if (sub_808A5F0(gfx, frames, taskData) == FALSE) + DestroyTask(taskId); +} + +static const struct DoorAnimFrame *GetLastDoorFrame(const struct DoorAnimFrame *frame, const void *unused) +{ + while (frame->time != 0) + frame++; + return frame - 1; +} + +static const struct DoorGraphics *GetDoorGraphics(const struct DoorGraphics *gfx, u16 metatileNum) +{ + while (gfx->tiles != NULL) + { + if (gfx->metatileNum == metatileNum) + return gfx; + gfx++; + } + return NULL; +} + +static s8 StartDoorAnimationTask(const struct DoorGraphics *gfx, const struct DoorAnimFrame *frames, u32 x, u32 y) +{ + if (FuncIsActiveTask(Task_AnimateDoor) == TRUE) + return -1; + else + { + u8 taskId = CreateTask(Task_AnimateDoor, 0x50); + s16 *taskData = gTasks[taskId].data; + + taskData[TD_X] = x; + taskData[TD_Y] = y; + + taskData[TD_FRAMELIST + 1] = (u32)frames; + taskData[TD_FRAMELIST] = (u32)frames >> 16; + + taskData[TD_GFX + 1] = (u32)gfx; + taskData[TD_GFX] = (u32)gfx >> 16; + + return taskId; + } +} + +static void DrawClosedDoor(const struct DoorGraphics *gfx, u32 x, u32 y) +{ + DrawClosedDoorTiles(gfx, x, y); +} + +static void DrawOpenedDoor(const struct DoorGraphics *gfx, u32 x, u32 y) +{ + gfx = GetDoorGraphics(gfx, MapGridGetMetatileIdAt(x, y)); + if (gfx != NULL) + DrawDoor(gfx, GetLastDoorFrame(gDoorOpenAnimFrames, gDoorOpenAnimFrames), x, y); +} + +static s8 StartDoorOpenAnimation(const struct DoorGraphics *gfx, u32 x, u32 y) +{ + gfx = GetDoorGraphics(gfx, MapGridGetMetatileIdAt(x, y)); + if (gfx == NULL) + { + return -1; + } + else + { + if (gfx->size == 2) + return StartDoorAnimationTask(gfx, gBigDoorOpenAnimFrames, x, y); + else + return StartDoorAnimationTask(gfx, gDoorOpenAnimFrames, x, y); + } +} + +static s8 StartDoorCloseAnimation(const struct DoorGraphics *gfx, u32 x, u32 y) +{ + gfx = GetDoorGraphics(gfx, MapGridGetMetatileIdAt(x, y)); + if (gfx == NULL) + return -1; + else + return StartDoorAnimationTask(gfx, gDoorCloseAnimFrames, x, y); +} + +static s8 cur_mapdata_get_door_x2_at(const struct DoorGraphics *gfx, u32 x, u32 y) +{ + gfx = GetDoorGraphics(gfx, MapGridGetMetatileIdAt(x, y)); + if (gfx == NULL) + return -1; + else + return gfx->sound; +} + +void unref_sub_808A83C(u32 x, u32 y) +{ + StartDoorOpenAnimation(gDoorAnimGraphicsTable, x, y); +} + +void FieldSetDoorOpened(u32 x, u32 y) +{ + if (MetatileBehavior_IsDoor(MapGridGetMetatileBehaviorAt(x, y))) + DrawOpenedDoor(gDoorAnimGraphicsTable, x, y); +} + +void FieldSetDoorClosed(u32 x, u32 y) +{ + if (MetatileBehavior_IsDoor(MapGridGetMetatileBehaviorAt(x, y))) + DrawClosedDoor(gDoorAnimGraphicsTable, x, y); +} + +s8 FieldAnimateDoorClose(u32 x, u32 y) +{ + if (!MetatileBehavior_IsDoor(MapGridGetMetatileBehaviorAt(x, y))) + return -1; + else + return StartDoorCloseAnimation(gDoorAnimGraphicsTable, x, y); +} + +s8 FieldAnimateDoorOpen(u32 x, u32 y) +{ + if (!MetatileBehavior_IsDoor(MapGridGetMetatileBehaviorAt(x, y))) + return -1; + else + return StartDoorOpenAnimation(gDoorAnimGraphicsTable, x, y); +} + +bool8 FieldIsDoorAnimationRunning(void) +{ + return FuncIsActiveTask(Task_AnimateDoor); +} + +u32 GetDoorSoundEffect(u32 x, u32 y) +{ + int sound = cur_mapdata_get_door_x2_at(gDoorAnimGraphicsTable, x, y); + + if (sound == 0) + return SE_DOOR; + else if (sound == 1) + return SE_JIDO_DOA; + else if (sound == 2) + return SE_TU_SAA; + else + return SE_DOOR; +} + +bool8 sub_808A964(void) +{ + if (FlagGet(FLAG_SPECIAL_FLAG_0x4002)) + { + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR_2) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR_2)) + { + return TRUE; + } + } + return FALSE; +} -- cgit v1.2.3 From 0eadf71b1a0676f70024ac93a7b4bfa325fa09a3 Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Sun, 7 Jan 2018 18:58:52 -0600 Subject: Move forward declaration --- include/field_door.h | 1 - src/field_door.c | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/include/field_door.h b/include/field_door.h index dd039a5c2..8b4955cac 100644 --- a/include/field_door.h +++ b/include/field_door.h @@ -22,6 +22,5 @@ s8 FieldAnimateDoorClose(u32, u32); s8 FieldAnimateDoorOpen(u32, u32); bool8 FieldIsDoorAnimationRunning(void); u32 GetDoorSoundEffect(u32 x, u32 y); -bool8 sub_808A964(void); #endif diff --git a/src/field_door.c b/src/field_door.c index 38c031264..f73c6bb55 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -9,6 +9,8 @@ #include "constants/maps.h" #include "task.h" +bool8 sub_808A964(void); + const u8 DoorAnimTiles_04[][0x100] = { INCBIN_U8("graphics/door_anims/04/0.4bpp"), -- cgit v1.2.3