diff options
-rw-r--r-- | asm/emerald.s | 14 | ||||
-rw-r--r-- | data/data1.s | 5 | ||||
-rw-r--r-- | data/data2.s | 19 | ||||
-rw-r--r-- | data/text/contest_text.s | 203 | ||||
-rw-r--r-- | data/text/contest_text_pointers.s | 80 |
5 files changed, 307 insertions, 14 deletions
diff --git a/asm/emerald.s b/asm/emerald.s index 9ec0f4594..e9214d7f5 100644 --- a/asm/emerald.s +++ b/asm/emerald.s @@ -415904,7 +415904,7 @@ prints_contest_move_description: ; 80DB370 movs r0, 0xA movs r1, 0 bl Window_FastFillPixels - ldr r1, =gUnknown_08587C50 + ldr r1, =gContestEffectDescriptionPointers ldr r0, =gContestMoves adds r0, r7, r0 ldrb r0, [r0] @@ -435940,7 +435940,7 @@ sub_80E5414: ; 80E5414 cmp r4, r1 bne @080E5470 @080E545E: - ldr r0, =gUnknown_0858CE8C + ldr r0, =gComboStarterLut adds r0, r4, r0 ldrb r0, [r0] b @080E5472 @@ -436944,7 +436944,7 @@ sub_80E5AD4: ; 80E5AD4 ldr r1, =gContestMoves adds r0, r1 ldrb r0, [r0, 0x2] - ldr r2, =gUnknown_0858CE8C + ldr r2, =gComboStarterLut adds r0, r2 ldrb r1, [r0] lsls r0, r1, 2 @@ -872808,7 +872808,7 @@ sub_81C3E2C: ; 81C3E2C bl sub_81C2D2C lsls r0, 24 lsrs r0, 24 - ldr r3, =gUnknown_08587C50 + ldr r3, =gContestEffectDescriptionPointers ldr r2, =gContestMoves lsls r1, r4, 3 adds r1, r2 @@ -872873,7 +872873,7 @@ sub_81C3E9C: ; 81C3E9C .align 2, 0 .pool @081C3F00: - ldr r2, =gUnknown_08587C50 + ldr r2, =gContestEffectDescriptionPointers ldr r1, =gContestMoves lsls r0, r6, 3 adds r0, r1 @@ -903170,7 +903170,7 @@ sub_81D2ACC: ; 81D2ACC lsls r4, 3 ldr r0, =gContestMoves adds r4, r0 - ldr r1, =gUnknown_08587D48 + ldr r1, =gContestMoveTypeTextPointers ldrb r0, [r4, 0x1] lsls r0, 29 lsrs r0, 27 @@ -903185,7 +903185,7 @@ sub_81D2ACC: ; 81D2ACC adds r2, r5, 0 movs r3, 0x4 bl Print - ldr r1, =gUnknown_08587C50 + ldr r1, =gContestEffectDescriptionPointers ldrb r0, [r4] lsls r0, 2 adds r0, r1 diff --git a/data/data1.s b/data/data1.s index 2f33c7c51..637864a39 100644 --- a/data/data1.s +++ b/data/data1.s @@ -334,7 +334,10 @@ gUnknown_082780F2: ; 82780F2 .incbin "base_emerald.gba", 0x2780f2, 0x3f gUnknown_08278131: ; 8278131 - .incbin "base_emerald.gba", 0x278131, 0x53d6 + .incbin "base_emerald.gba", 0x278131, 0x4a51 + +; 827CB82 + .include "data/text/contest_text.s" gUnknown_0827D507: ; 827D507 .incbin "base_emerald.gba", 0x27d507, 0x2a diff --git a/data/data2.s b/data/data2.s index 80e59dc06..b6e631c28 100644 --- a/data/data2.s +++ b/data/data2.s @@ -4178,11 +4178,11 @@ gUnknown_08587C18: ; 8587C18 gUnknown_08587C30: ; 8587C30 .incbin "base_emerald.gba", 0x587c30, 0x20 -gUnknown_08587C50: ; 8587C50 - .incbin "base_emerald.gba", 0x587c50, 0xf8 +; 8587C50 + .include "data/text/contest_text_pointers.s" -gUnknown_08587D48: ; 8587D48 - .incbin "base_emerald.gba", 0x587d48, 0x48 +; 8587D5C + .incbin "base_emerald.gba", 0x587d5c, 0x34 gUnknown_08587D90: ; 8587D90 .incbin "base_emerald.gba", 0x587d90, 0x80 @@ -4484,8 +4484,15 @@ gUnknown_0858C2AC: ; 858C2AC gUnknown_0858CDCC: ; 858CDCC .incbin "base_emerald.gba", 0x58cdcc, 0xc0 -gUnknown_0858CE8C: ; 858CE8C - .incbin "base_emerald.gba", 0x58ce8c, 0x40 +; A look-up table with a 1 for each combo starter ID and a 0 for ID 0, +; which means "not a combo starter move". +gComboStarterLut: ; 858CE8C + .byte 0 + .rept 62 + .byte 1 + .endr + + .align 2, 0 gUnknown_0858CECC: ; 858CECC .incbin "base_emerald.gba", 0x58cecc, 0xc0 diff --git a/data/text/contest_text.s b/data/text/contest_text.s new file mode 100644 index 000000000..310dba2b4 --- /dev/null +++ b/data/text/contest_text.s @@ -0,0 +1,203 @@ +; contest move effect descriptions + +gContestEffect00hDescription: ; 827CB82 + .charmapstr "A highly appealing move.$" + +gContestEffect01hDescription: ; 827CB9B + .charmapstr "After this move, the user is{next}more easily startled.$" + +gContestEffect02hDescription: ; 827CBCE + .charmapstr "Makes a great appeal, but{next}allows no more to the end.$" + +gContestEffect03hDescription: ; 827CC03 + .charmapstr "Can be repeatedly used{next}without boring the JUDGE.$" + +gContestEffect04hDescription: ; 827CC34 + .charmapstr "Can avoid being startled{next}by others once.$" + +gContestEffect05hDescription: ; 827CC5D + .charmapstr "Can avoid being startled{next}by others.$" + +gContestEffect06hDescription: ; 827CC81 + .charmapstr "Can avoid being startled{next}by others a little.$" + +gContestEffect07hDescription: ; 827CCAE + .charmapstr "After this move, the user is{next}less likely to be startled.$" + +gContestEffect08hDescription: ; 827CCE7 + .charmapstr "Slightly startles the{next}POKéMON in front.$" + +gContestEffect09hDescription: ; 827CD0F + .charmapstr "Slightly startles those{next}that have made appeals.$" + +gContestEffect0AhDescription: ; 827CD3F + .charmapstr "Startles the POKéMON that{next}appealed before the user.$" + +gContestEffect0BhDescription: ; 827CD73 + .charmapstr "Startles all POKéMON that{next}have done their appeals.$" + +gContestEffect0ChDescription: ; 827CDA6 + .charmapstr "Badly startles the{next}POKéMON in front.$" + +gContestEffect0DhDescription: ; 827CDCB + .charmapstr "Badly startles those that{next}have made appeals.$" + +gContestEffect0EhDescription: ; 827CDF8 + .charmapstr "Startles the POKéMON that{next}appealed before the user.$" + +gContestEffect0FhDescription: ; 827CE2C + .charmapstr "Startles all POKéMON that{next}have done their appeals.$" + +gContestEffect10hDescription: ; 827CE5F + .charmapstr "Shifts the JUDGE’s{next}attention from others.$" + +gContestEffect11hDescription: ; 827CE89 + .charmapstr "Startles the POKéMON that{next}has the JUDGE’s attention.$" + +gContestEffect12hDescription: ; 827CEBE + .charmapstr "Jams the others, and misses{next}one turn of appeals.$" + +gContestEffect13hDescription: ; 827CEEF + .charmapstr "Startles POKéMON that{next}made a same-type appeal.$" + +gContestEffect14hDescription: ; 827CF1E + .charmapstr "Badly startles POKéMON{next}that made COOL appeals.$" + +gContestEffect15hDescription: ; 827CF4D + .charmapstr "Badly startles POKéMON{next}that made BEAUTY appeals.$" + +gContestEffect16hDescription: ; 827CF7E + .charmapstr "Badly startles POKéMON{next}that made CUTE appeals.$" + +gContestEffect17hDescription: ; 827CFAD + .charmapstr "Badly startles POKéMON{next}that made SMART appeals.$" + +gContestEffect18hDescription: ; 827CFDD + .charmapstr "Badly startles POKéMON{next}that made TOUGH appeals.$" + +gContestEffect19hDescription: ; 827D00D + .charmapstr "Makes one POKéMON after{next}the user nervous.$" + +gContestEffect1AhDescription: ; 827D037 + .charmapstr "Makes all POKéMON after{next}the user nervous.$" + +gContestEffect1BhDescription: ; 827D061 + .charmapstr "Worsens the condition of{next}those that made appeals.$" + +gContestEffect1ChDescription: ; 827D093 + .charmapstr "Badly startles POKéMON in{next}good condition.$" + +gContestEffect1DhDescription: ; 827D0BD + .charmapstr "The appeal works great if{next}performed first.$" + +gContestEffect1EhDescription: ; 827D0E8 + .charmapstr "The appeal works great if{next}performed last.$" + +gContestEffect1FhDescription: ; 827D112 + .charmapstr "Makes the appeal as good{next}as those before it.$" + +gContestEffect20hDescription: ; 827D13F + .charmapstr "Makes the appeal as good{next}as the one before it.$" + +gContestEffect21hDescription: ; 827D16E + .charmapstr "The appeal works better{next}the later it is performed.$" + +gContestEffect22hDescription: ; 827D1A1 + .charmapstr "The appeal’s quality varies{next}depending on its timing.$" + +gContestEffect23hDescription: ; 827D1D6 + .charmapstr "Works well if it’s the same{next}type as the one before.$" + +gContestEffect24hDescription: ; 827D20A + .charmapstr "Works well if different in{next}type than the one before.$" + +gContestEffect25hDescription: ; 827D23F + .charmapstr "Affected by how well the{next}appeal in front goes.$" + +gContestEffect26hDescription: ; 827D26E + .charmapstr "Ups the user’s condition.{next}Helps prevent nervousness.$" + +gContestEffect27hDescription: ; 827D2A3 + .charmapstr "The appeal works well if the{next}user’s condition is good.$" + +gContestEffect28hDescription: ; 827D2DA + .charmapstr "The next appeal can be{next}made earlier next turn.$" + +gContestEffect29hDescription: ; 827D309 + .charmapstr "The next appeal can be{next}made later next turn.$" + +gContestEffect2AhDescription: ; 827D336 + .charmapstr "Makes the next turn’s order{next}more easily scrambled.$" + +gContestEffect2BhDescription: ; 827D369 + .charmapstr "Scrambles the order of{next}appeals on the next turn.$" + +gContestEffect2ChDescription: ; 827D39A + .charmapstr "An appeal that excites the{next}audience in any CONTEST.$" + +gContestEffect2DhDescription: ; 827D3CE + .charmapstr "Badly startles all POKéMON{next}that made good appeals.$" + +gContestEffect2EhDescription: ; 827D401 + .charmapstr "The appeal works best the{next}more the crowd is excited.$" + +gContestEffect2FhDescription: ; 827D436 + .charmapstr "Temporarily stops the{next}crowd from growing excited.$" + +; unused move names + +gUnusedContestMoveName0: ; 827D468 + .charmapstr "RAIN DANCE$" + +gUnusedContestMoveName1: ; 827D473 + .charmapstr "RAGE$" + +gUnusedContestMoveName2: ; 827D478 + .charmapstr "FOCUS ENERGY$" + +gUnusedContestMoveName3: ; 827D485 + .charmapstr "HYPNOSIS$" + +gUnusedContestMoveName4: ; 827D48E + .charmapstr "SOFTBOILED$" + +gUnusedContestMoveName5: ; 827D499 + .charmapstr "HORN ATTACK$" + +gUnusedContestMoveName6: ; 827D4A5 + .charmapstr "SWORDS DANCE$" + +gUnusedContestMoveName7: ; 827D4B2 + .charmapstr "CONVERSION$" + +gUnusedContestMoveName8: ; 827D4BD + .charmapstr "SUNNY DAY$" + +gUnusedContestMoveName9: ; 827D4C7 + .charmapstr "REST$" + +gUnusedContestMoveName10: ; 827D4CC + .charmapstr "VICEGRIP$" + +gUnusedContestMoveName11: ; 827D4D5 + .charmapstr "DEFENSE CURL$" + +gUnusedContestMoveName12: ; 827D4E2 + .charmapstr "LOCK-ON$" + +; contest type names + +gContestMoveTypeCoolText: ; 827D4EA + .charmapstr "COOL$" + +gContestMoveTypeBeautyText: ; 827D4EF + .charmapstr "BEAUTY$" + +gContestMoveTypeCuteText: ; 827D4F6 + .charmapstr "CUTE$" + +gContestMoveTypeSmartText: ; 827D4FB + .charmapstr "SMART$" + +gContestMoveTypeToughText: ; 827D501 + .charmapstr "TOUGH$" diff --git a/data/text/contest_text_pointers.s b/data/text/contest_text_pointers.s new file mode 100644 index 000000000..6e371222b --- /dev/null +++ b/data/text/contest_text_pointers.s @@ -0,0 +1,80 @@ + .align 2, 0 + +gContestEffectDescriptionPointers: ; 8587C50 + .4byte gContestEffect00hDescription + .4byte gContestEffect01hDescription + .4byte gContestEffect02hDescription + .4byte gContestEffect03hDescription + .4byte gContestEffect04hDescription + .4byte gContestEffect05hDescription + .4byte gContestEffect06hDescription + .4byte gContestEffect07hDescription + .4byte gContestEffect08hDescription + .4byte gContestEffect09hDescription + .4byte gContestEffect0AhDescription + .4byte gContestEffect0BhDescription + .4byte gContestEffect0ChDescription + .4byte gContestEffect0DhDescription + .4byte gContestEffect0EhDescription + .4byte gContestEffect0FhDescription + .4byte gContestEffect10hDescription + .4byte gContestEffect11hDescription + .4byte gContestEffect12hDescription + .4byte gContestEffect13hDescription + .4byte gContestEffect14hDescription + .4byte gContestEffect15hDescription + .4byte gContestEffect16hDescription + .4byte gContestEffect17hDescription + .4byte gContestEffect18hDescription + .4byte gContestEffect19hDescription + .4byte gContestEffect1AhDescription + .4byte gContestEffect1BhDescription + .4byte gContestEffect1ChDescription + .4byte gContestEffect1DhDescription + .4byte gContestEffect1EhDescription + .4byte gContestEffect1FhDescription + .4byte gContestEffect20hDescription + .4byte gContestEffect21hDescription + .4byte gContestEffect22hDescription + .4byte gContestEffect23hDescription + .4byte gContestEffect24hDescription + .4byte gContestEffect25hDescription + .4byte gContestEffect26hDescription + .4byte gContestEffect27hDescription + .4byte gContestEffect28hDescription + .4byte gContestEffect29hDescription + .4byte gContestEffect2AhDescription + .4byte gContestEffect2BhDescription + .4byte gContestEffect2ChDescription + .4byte gContestEffect2DhDescription + .4byte gContestEffect2EhDescription + .4byte gContestEffect2FhDescription + +; 8587D10 +; Unreferenced array of pointers to move names. +; All of the moves except Conversion are combo starters, so this may have +; been an early list of combo starters. + .align 2, 0 + .4byte gUnusedContestMoveName0 + .4byte gUnusedContestMoveName0 + .4byte gUnusedContestMoveName1 + .4byte gUnusedContestMoveName2 + .4byte gUnusedContestMoveName3 + .4byte gUnusedContestMoveName4 + .4byte gUnusedContestMoveName5 + .4byte gUnusedContestMoveName6 + .4byte gUnusedContestMoveName7 + .4byte gUnusedContestMoveName8 + .4byte gUnusedContestMoveName9 + .4byte gUnusedContestMoveName10 + .4byte gUnusedContestMoveName11 + .4byte gUnusedContestMoveName12 + + .align 2, 0 + +gContestMoveTypeTextPointers: ; 8587D48 + .4byte gContestMoveTypeCoolText + .4byte gContestMoveTypeBeautyText + .4byte gContestMoveTypeCuteText + .4byte gContestMoveTypeSmartText + .4byte gContestMoveTypeToughText |