diff options
82 files changed, 3466 insertions, 6556 deletions
diff --git a/.gitignore b/.gitignore index 15cc865df..93385ea51 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ build/ porymap.project.cfg .vscode/ *.a +.fuse_hidden* diff --git a/asm/berry_crush.s b/asm/berry_crush.s deleted file mode 100755 index cd70df741..000000000 --- a/asm/berry_crush.s +++ /dev/null @@ -1,5515 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8021A28 -sub_8021A28: @ 8021A28 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - str r0, [sp, 0xC] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x10] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x14] - lsls r3, 24 - movs r0, 0 - str r0, [sp, 0x18] - movs r1, 0 - str r1, [sp, 0x1C] - ldr r2, [sp, 0xC] - adds r2, 0x68 - str r2, [sp, 0x20] - movs r4, 0xF0 - lsls r4, 24 - adds r3, r4 - lsrs r3, 24 - ldr r0, [sp, 0x10] - cmp r0, 0x2 - bne _08021A68 - adds r0, r3, 0 - subs r0, 0x2A - lsls r0, 24 - lsrs r3, r0, 24 -_08021A68: - ldr r2, [sp, 0xC] - ldrb r1, [r2, 0x9] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 1 - subs r6, r3, r0 - cmp r6, 0 - ble _08021A84 - lsrs r0, r6, 31 - adds r0, r6, r0 - asrs r0, 1 - adds r6, r0, 0 - adds r6, 0x10 - b _08021A86 -_08021A84: - movs r6, 0x10 -_08021A86: - movs r5, 0 - ldr r3, [sp, 0xC] - ldrb r3, [r3, 0x9] - cmp r5, r3 - bcc _08021A92 - b _08021D14 -_08021A92: - ldr r4, [sp, 0x10] - lsls r4, 2 - str r4, [sp, 0x24] -_08021A98: - bl DynamicPlaceholderTextUtil_Reset - ldr r0, [sp, 0x10] - cmp r0, 0x1 - beq _08021B48 - cmp r0, 0x1 - bgt _08021AC0 - cmp r0, 0 - beq _08021ADE - ldr r4, [sp, 0x14] - subs r4, 0x4 - lsls r1, r6, 24 - mov r10, r1 - ldr r2, [sp, 0x1C] - adds r2, 0xA2 - mov r9, r2 - ldr r3, [sp, 0x18] - lsls r3, 5 - mov r8, r3 - b _08021C5A -_08021AC0: - ldr r4, [sp, 0x10] - cmp r4, 0x2 - bne _08021AC8 - b _08021C1C -_08021AC8: - ldr r4, [sp, 0x14] - subs r4, 0x4 - lsls r0, r6, 24 - mov r10, r0 - ldr r1, [sp, 0x1C] - adds r1, 0xA2 - mov r9, r1 - ldr r2, [sp, 0x18] - lsls r2, 5 - mov r8, r2 - b _08021C5A -_08021ADE: - ldr r0, [sp, 0x20] - adds r0, 0x20 - adds r0, r5 - ldrb r0, [r0] - str r0, [sp, 0x18] - lsls r3, r5, 1 - ldr r2, [sp, 0x20] - adds r2, 0xC - cmp r5, 0 - beq _08021B04 - adds r0, r2, r3 - subs r1, r5, 0x1 - lsls r1, 1 - adds r1, r2, r1 - ldrh r0, [r0] - ldrh r1, [r1] - cmp r0, r1 - beq _08021B04 - str r5, [sp, 0x1C] -_08021B04: - ldr r4, [sp, 0x24] - ldr r1, [sp, 0x10] - adds r0, r4, r1 - lsls r0, 1 - adds r0, r3, r0 - adds r0, r2, r0 - ldrh r1, [r0] - ldr r0, =gStringVar4 - movs r2, 0x1 - movs r3, 0x4 - bl ConvertIntToDecimalStringN - ldr r0, =gUnknown_082F43B4 - adds r0, r4, r0 - ldr r1, [r0] - ldr r0, =gStringVar4 - bl StringAppend - ldr r4, [sp, 0x14] - subs r4, 0x4 - lsls r2, r6, 24 - mov r10, r2 - ldr r3, [sp, 0x1C] - adds r3, 0xA2 - mov r9, r3 - ldr r0, [sp, 0x18] - lsls r0, 5 - mov r8, r0 - b _08021C5A - .pool -_08021B48: - ldr r1, [sp, 0x20] - adds r0, r1, r5 - adds r0, 0x28 - ldrb r0, [r0] - str r0, [sp, 0x18] - lsls r3, r5, 1 - adds r2, r1, 0 - adds r2, 0xC - cmp r5, 0 - beq _08021B72 - adds r0, r3, 0 - adds r0, 0xA - adds r0, r2, r0 - adds r1, r3, 0 - adds r1, 0x8 - adds r1, r2, r1 - ldrh r0, [r0] - ldrh r1, [r1] - cmp r0, r1 - beq _08021B72 - str r5, [sp, 0x1C] -_08021B72: - ldr r0, [sp, 0x24] - ldr r1, [sp, 0x10] - adds r4, r0, r1 - lsls r4, 1 - adds r4, r3, r4 - adds r4, r2, r4 - ldrh r1, [r4] - lsrs r1, 4 - ldr r0, =gStringVar1 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - movs r7, 0 - ldrb r0, [r4] - movs r3, 0xF - ands r3, r0 - movs r2, 0 - ldr r4, [sp, 0x10] - lsls r4, 2 - str r4, [sp, 0x28] - ldr r4, [sp, 0x14] - subs r4, 0x4 - lsls r0, r6, 24 - mov r10, r0 - ldr r1, [sp, 0x1C] - adds r1, 0xA2 - mov r9, r1 - ldr r0, [sp, 0x18] - lsls r0, 5 - mov r8, r0 - adds r6, 0xE - adds r5, 0x1 - ldr r1, =gUnknown_082F334C - mov r12, r1 -_08021BB8: - movs r0, 0x3 - subs r1, r0, r2 - adds r0, r3, 0 - asrs r0, r1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08021BD0 - lsls r0, r2, 2 - add r0, r12 - ldr r0, [r0] - adds r7, r0 -_08021BD0: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _08021BB8 - adds r0, r7, 0 - ldr r1, =0x000f4240 - bl __udivsi3 - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, =gStringVar2 - adds r1, r3, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, =gUnknown_082F43B4 - ldr r2, [sp, 0x28] - adds r0, r2, r0 - ldr r1, [r0] - ldr r0, =gStringVar4 - bl StringExpandPlaceholders - b _08021C5E - .pool -_08021C1C: - str r5, [sp, 0x18] - str r5, [sp, 0x1C] - lsls r7, r5, 5 - ldr r3, [sp, 0xC] - adds r0, r3, r7 - adds r0, 0xA4 - ldrb r2, [r0] - cmp r2, 0x2B - bls _08021C30 - movs r2, 0 -_08021C30: - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, =gBerries - adds r1, r0 - ldr r0, =gStringVar1 - bl StringCopy - ldr r0, =gUnknown_082F43B4 - ldr r1, [r0, 0x8] - ldr r0, =gStringVar4 - bl StringExpandPlaceholders - ldr r4, [sp, 0x14] - subs r4, 0x4 - lsls r0, r6, 24 - mov r10, r0 - movs r1, 0xA2 - adds r1, r5 - mov r9, r1 - mov r8, r7 -_08021C5A: - adds r6, 0xE - adds r5, 0x1 -_08021C5E: - movs r0, 0x2 - ldr r1, =gStringVar4 - adds r2, r4, 0 - bl GetStringRightAlignXOffset - adds r2, r0, 0 - ldr r3, [sp, 0xC] - movs r4, 0xDD - lsls r4, 1 - adds r0, r3, r4 - ldrb r0, [r0] - lsls r2, 24 - lsrs r2, 24 - mov r1, r10 - lsrs r3, r1, 24 - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r1, =gStringVar4 - str r1, [sp, 0x8] - movs r1, 0x2 - bl AddTextPrinterParameterized3 - ldr r3, [sp, 0x18] - ldr r2, [sp, 0xC] - ldrb r2, [r2, 0x8] - cmp r3, r2 - bne _08021CC0 - ldr r0, =gStringVar3 - ldr r1, =gText_1DotBlueF700 - bl StringCopy - b _08021CC8 - .pool -_08021CC0: - ldr r0, =gStringVar3 - ldr r1, =gText_1DotF700 - bl StringCopy -_08021CC8: - ldr r4, =gStringVar3 - mov r3, r9 - strb r3, [r4] - mov r1, r8 - adds r1, 0x98 - ldr r0, [sp, 0xC] - adds r1, r0, r1 - movs r0, 0 - bl DynamicPlaceholderTextUtil_SetPlaceholderPtr - ldr r0, =gStringVar4 - adds r1, r4, 0 - bl DynamicPlaceholderTextUtil_ExpandPlaceholders - ldr r1, [sp, 0xC] - movs r2, 0xDD - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0] - mov r4, r10 - lsrs r3, r4, 24 - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r2, =gStringVar4 - str r2, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x4 - bl AddTextPrinterParameterized3 - lsls r0, r5, 24 - lsrs r5, r0, 24 - ldr r3, [sp, 0xC] - ldrb r3, [r3, 0x9] - cmp r5, r3 - bcs _08021D14 - b _08021A98 -_08021D14: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8021A28 - - thumb_func_start sub_8021D34 -sub_8021D34: @ 8021D34 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r8, r0 - movs r0, 0 - mov r10, r0 - movs r6, 0 - movs r1, 0 - str r1, [sp, 0xC] - mov r2, r8 - adds r2, 0x68 - str r2, [sp, 0x10] - movs r4, 0xDD - lsls r4, 1 - add r4, r8 - mov r9, r4 - ldrb r0, [r4] - movs r1, 0x4 - bl GetWindowAttribute - lsls r0, 27 - movs r1, 0xD6 - lsls r1, 24 - adds r0, r1 - lsrs r7, r0, 24 - movs r0, 0x9C - lsls r0, 1 - add r0, r8 - ldr r2, [sp, 0x10] - ldrh r1, [r2, 0x4] - bl sub_8021944 - ldrb r0, [r4] - ldr r4, =sBerryCrushTextColors1 - str r4, [sp] - str r6, [sp, 0x4] - ldr r1, =gText_TimeColon - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r4, =gText_SpaceSec - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - movs r1, 0xB0 - subs r0, r1, r0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r2, r9 - ldrb r0, [r2] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - mov r2, r10 - str r2, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - movs r0, 0x9F - lsls r0, 1 - add r0, r8 - movs r4, 0 - ldrsh r1, [r0, r4] - ldr r0, =gStringVar1 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, =gStringVar2 - movs r1, 0xA0 - lsls r1, 1 - add r1, r8 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r5, =gStringVar4 - ldr r1, =gText_XDotY2 - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0x2 - adds r1, r5, 0 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - subs r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r4, r9 - ldrb r0, [r4] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - mov r2, r10 - str r2, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r4, =gText_SpaceMin - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - subs r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r1, r9 - ldrb r0, [r1] - ldr r2, =sBerryCrushTextColors1 - str r2, [sp] - mov r1, r10 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - movs r0, 0x9E - lsls r0, 1 - add r0, r8 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r0, =gStringVar1 - movs r2, 0x2 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - ldr r1, =gText_StrVar1 - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0x2 - adds r1, r5, 0 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - subs r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r4, r9 - ldrb r0, [r4] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - mov r2, r10 - str r2, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - adds r0, r7, 0 - adds r0, 0xE - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r4] - ldr r4, =sBerryCrushTextColors1 - str r4, [sp] - mov r1, r10 - str r1, [sp, 0x4] - ldr r1, =gText_PressingSpeed - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r4, =gText_TimesPerSec - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - movs r2, 0xB0 - subs r0, r2, r0 - lsls r0, 24 - str r0, [sp, 0x18] - lsrs r6, r0, 24 - mov r1, r9 - ldrb r0, [r1] - ldr r2, =sBerryCrushTextColors1 - str r2, [sp] - mov r1, r10 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - mov r4, r8 - ldrb r2, [r4, 0x16] - ldrh r0, [r4, 0x16] - mov r12, r0 - movs r1, 0x7 - mov r9, r1 - movs r5, 0x1 - ldr r3, =gUnknown_082F334C -_08021EEC: - mov r4, r9 - mov r0, r10 - subs r1, r4, r0 - adds r0, r2, 0 - asrs r0, r1 - ands r0, r5 - cmp r0, 0 - beq _08021F0A - mov r1, r10 - lsls r0, r1, 2 - adds r0, r3 - ldr r0, [r0] - ldr r4, [sp, 0xC] - adds r4, r0 - str r4, [sp, 0xC] -_08021F0A: - mov r0, r10 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - cmp r0, 0x7 - bls _08021EEC - ldr r0, =gStringVar1 - mov r2, r12 - lsrs r1, r2, 8 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, =gStringVar2 - ldr r1, =0x000f4240 - ldr r0, [sp, 0xC] - bl __udivsi3 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r4, =gStringVar4 - ldr r1, =gText_XDotY3 - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r2, 0x1 - negs r2, r2 - movs r0, 0x2 - adds r1, r4, 0 - bl GetStringWidth - subs r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r8 - adds r0, 0x25 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _08021FC4 - movs r0, 0xDD - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - ldr r1, =sBerryCrushTextColors4 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - b _08021FDE - .pool -_08021FC4: - movs r0, 0xDD - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - str r2, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 -_08021FDE: - adds r0, r7, 0 - adds r0, 0xE - lsls r0, 24 - lsrs r7, r0, 24 - movs r4, 0xDD - lsls r4, 1 - add r8, r4 - mov r1, r8 - ldrb r0, [r1] - ldr r2, =sBerryCrushTextColors1 - mov r9, r2 - str r2, [sp] - movs r5, 0 - str r5, [sp, 0x4] - ldr r1, =gText_Silkiness - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r0, =gStringVar1 - ldr r4, [sp, 0x10] - ldrh r1, [r4, 0x8] - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, =gStringVar4 - ldr r1, =gText_Var1Percent - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r2, 0x1 - negs r2, r2 - movs r0, 0x2 - adds r1, r4, 0 - bl GetStringWidth - movs r1, 0xB0 - subs r1, r0 - lsls r1, 24 - lsrs r6, r1, 24 - mov r1, r8 - ldrb r0, [r1] - mov r2, r9 - str r2, [sp] - str r5, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8021D34 - - thumb_func_start sub_8022070 -sub_8022070: @ 8022070 - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r6, r1, 0 - adds r0, r6, 0 - adds r0, 0x80 - ldrb r0, [r0] - cmp r0, 0x5 - bls _08022084 - b _08022218 -_08022084: - lsls r0, 2 - ldr r1, =_08022094 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08022094: - .4byte _080220AC - .4byte _080220F8 - .4byte _0802210C - .4byte _08022130 - .4byte _080221F8 - .4byte _08022200 -_080220AC: - ldrb r0, [r4, 0x9] - subs r0, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r6, 0 - bl sub_8022554 - ldrh r0, [r4, 0x12] - lsls r0, 3 - ldr r2, =gUnknown_082F32CC - mov r1, sp - adds r0, r2 - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - ldrh r0, [r4, 0x12] - cmp r0, 0xD - bne _080220DC - ldr r0, =gUnknown_082F3344 - adds r0, 0x4 - b _080220DE - .pool -_080220DC: - ldr r0, =gUnknown_082F3344 -_080220DE: - adds r0, r5, r0 - ldrb r1, [r0] - mov r0, sp - strb r1, [r0, 0x4] - mov r0, sp - bl AddWindow - adds r1, r6, 0 - adds r1, 0x82 - strb r0, [r1] - b _08022218 - .pool -_080220F8: - adds r4, r6, 0 - adds r4, 0x82 - ldrb r0, [r4] - bl PutWindowTilemap - ldrb r0, [r4] - movs r1, 0 - bl FillWindowPixelBuffer - b _08022218 -_0802210C: - adds r5, r6, 0 - adds r5, 0x82 - ldrb r0, [r5] - ldr r4, =0x0000021d - adds r1, r4, 0 - movs r2, 0xD0 - bl LoadUserWindowBorderGfx_ - ldrb r0, [r5] - movs r1, 0 - adds r2, r4, 0 - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - b _08022218 - .pool -_08022130: - ldrb r0, [r4, 0x9] - subs r0, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - ldrh r0, [r4, 0x12] - cmp r0, 0xC - beq _08022184 - cmp r0, 0xC - bgt _08022148 - cmp r0, 0xB - beq _0802214E - b _08022218 -_08022148: - cmp r0, 0xD - beq _080221C8 - b _08022218 -_0802214E: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - ldr r3, =gText_PressesRankings - movs r1, 0x14 - movs r2, 0x3 - bl sub_80219C8 - ldr r0, =gUnknown_082F3344 - adds r0, r5, r0 - ldrb r3, [r0] - lsls r3, 27 - lsrs r3, 24 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0xA0 - bl sub_8021A28 - adds r1, r6, 0 - adds r1, 0x80 - movs r0, 0x5 - b _08022220 - .pool -_08022184: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - ldr r2, =gUnknown_082F43B4 - adds r1, r4, 0 - adds r1, 0x8F - ldrb r1, [r1] - adds r1, 0x3 - lsls r1, 2 - adds r1, r2 - ldr r3, [r1] - movs r1, 0x14 - movs r2, 0x4 - bl sub_80219C8 - ldr r0, =gUnknown_082F3344 - adds r0, r5, r0 - ldrb r3, [r0] - lsls r3, 27 - lsrs r3, 24 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0xA0 - bl sub_8021A28 - adds r1, r6, 0 - adds r1, 0x80 - movs r0, 0x5 - b _08022220 - .pool -_080221C8: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - ldr r3, =gText_CrushingResults - movs r1, 0x16 - movs r2, 0x3 - bl sub_80219C8 - ldr r0, =gUnknown_082F3344 - adds r0, 0x4 - adds r0, r5, r0 - ldrb r3, [r0] - lsls r3, 27 - lsrs r3, 24 - adds r0, r4, 0 - movs r1, 0x2 - movs r2, 0xB0 - bl sub_8021A28 - b _08022218 - .pool -_080221F8: - adds r0, r4, 0 - bl sub_8021D34 - b _08022218 -_08022200: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - movs r1, 0x3 - bl CopyWindowToVram - adds r1, r6, 0 - adds r1, 0x80 - movs r0, 0 - strb r0, [r1] - movs r0, 0x1 - b _08022224 -_08022218: - adds r1, r6, 0 - adds r1, 0x80 - ldrb r0, [r1] - adds r0, 0x1 -_08022220: - strb r0, [r1] - movs r0, 0 -_08022224: - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8022070 - - thumb_func_start sub_802222C -sub_802222C: @ 802222C - push {r4,r5,lr} - adds r4, r0, 0 - movs r0, 0xDD - lsls r0, 1 - adds r5, r4, r0 - ldrb r0, [r5] - movs r1, 0x1 - bl ClearStdWindowAndFrameToTransparent - ldrb r0, [r5] - bl RemoveWindow - adds r0, r4, 0 - bl sub_8022600 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_802222C - - thumb_func_start sub_8022250 -sub_8022250: @ 8022250 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - mov r9, r0 - movs r1, 0 - str r1, [sp, 0xC] - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r6, r0, r1 - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0x1 - beq _080222D0 - cmp r0, 0x1 - bgt _08022288 - cmp r0, 0 - beq _08022296 - b _080224BA - .pool -_08022288: - cmp r0, 0x2 - bne _0802228E - b _08022480 -_0802228E: - cmp r0, 0x3 - bne _08022294 - b _08022494 -_08022294: - b _080224BA -_08022296: - ldr r0, =gUnknown_082F32EC - bl AddWindow - strh r0, [r6, 0x2] - lsls r0, 24 - lsrs r0, 24 - bl PutWindowTilemap - ldrb r0, [r6, 0x2] - movs r1, 0 - bl FillWindowPixelBuffer - ldrb r0, [r6, 0x2] - ldr r4, =0x0000021d - adds r1, r4, 0 - movs r2, 0xD0 - bl LoadUserWindowBorderGfx_ - ldrb r0, [r6, 0x2] - movs r1, 0 - adds r2, r4, 0 - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - b _080224BA - .pool -_080222D0: - ldr r0, =gText_BerryCrush2 - mov r10, r0 - movs r1, 0x1 - negs r1, r1 - mov r8, r1 - movs r0, 0x1 - mov r1, r10 - mov r2, r8 - bl GetStringWidth - lsrs r0, 1 - movs r4, 0x60 - subs r0, r4, r0 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r6, 0x2] - ldr r5, =sBerryCrushTextColorTable - str r5, [sp] - mov r1, r9 - str r1, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - movs r1, 0x1 - adds r2, r7, 0 - movs r3, 0x1 - bl AddTextPrinterParameterized3 - ldr r0, =gText_PressingSpeedRankings - mov r10, r0 - movs r0, 0x1 - mov r1, r10 - mov r2, r8 - bl GetStringWidth - lsrs r0, 1 - subs r4, r0 - lsls r4, 24 - lsrs r7, r4, 24 - ldrb r0, [r6, 0x2] - str r5, [sp] - mov r1, r9 - str r1, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - movs r1, 0x1 - adds r2, r7, 0 - movs r3, 0x11 - bl AddTextPrinterParameterized3 - movs r0, 0x29 - mov r10, r0 -_08022336: - mov r1, r9 - adds r1, 0x2 - ldr r0, =gStringVar1 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - ldr r0, =gStringVar4 - ldr r1, =gText_Var1Players - bl StringExpandPlaceholders - ldrb r0, [r6, 0x2] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r1, =gStringVar4 - str r1, [sp, 0x8] - movs r1, 0x1 - movs r2, 0 - mov r3, r10 - bl AddTextPrinterParameterized3 - movs r0, 0x1 - ldr r1, =gText_TimesPerSec - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - movs r1, 0xC0 - subs r1, r0 - lsls r1, 24 - lsrs r7, r1, 24 - ldrb r0, [r6, 0x2] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r1, =gText_TimesPerSec - str r1, [sp, 0x8] - movs r1, 0x1 - adds r2, r7, 0 - mov r3, r10 - bl AddTextPrinterParameterized3 - movs r2, 0 - mov r0, r9 - lsls r4, r0, 1 - mov r1, r10 - adds r1, 0x10 - str r1, [sp, 0x10] - movs r0, 0x1 - add r9, r0 - adds r0, r4, r6 - ldrb r3, [r0, 0x4] - movs r1, 0x7 - mov r12, r1 - movs r0, 0x1 - mov r8, r0 - ldr r5, =gUnknown_082F334C -_080223AE: - mov r0, r12 - subs r1, r0, r2 - adds r0, r3, 0 - asrs r0, r1 - mov r1, r8 - ands r0, r1 - cmp r0, 0 - beq _080223CA - lsls r0, r2, 2 - adds r0, r5 - ldr r0, [r0] - ldr r1, [sp, 0xC] - adds r1, r0 - str r1, [sp, 0xC] -_080223CA: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x7 - bls _080223AE - adds r0, r4, r6 - ldrh r1, [r0, 0x4] - lsrs r1, 8 - ldr r0, =gStringVar1 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r0, [sp, 0xC] - ldr r1, =0x000f4240 - bl __udivsi3 - adds r1, r0, 0 - ldr r0, =gStringVar2 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, =gStringVar4 - ldr r1, =gText_XDotY3 - bl StringExpandPlaceholders - movs r0, 0x1 - ldr r1, =gStringVar4 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - subs r0, r7, r0 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r6, 0x2] - ldr r1, =sBerryCrushTextColors1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r1, =gStringVar4 - str r1, [sp, 0x8] - movs r1, 0x1 - adds r2, r7, 0 - mov r3, r10 - bl AddTextPrinterParameterized3 - ldr r1, [sp, 0x10] - lsls r0, r1, 24 - lsrs r0, 24 - mov r10, r0 - movs r0, 0 - str r0, [sp, 0xC] - mov r1, r9 - lsls r0, r1, 24 - lsrs r0, 24 - mov r9, r0 - cmp r0, 0x3 - bhi _08022444 - b _08022336 -_08022444: - ldrb r0, [r6, 0x2] - movs r1, 0x3 - bl CopyWindowToVram - b _080224BA - .pool -_08022480: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _080224BA - b _080224C0 - .pool -_08022494: - ldrb r0, [r6, 0x2] - movs r1, 0x1 - bl ClearStdWindowAndFrameToTransparent - ldrb r0, [r6, 0x2] - bl ClearWindowTilemap - ldrb r0, [r6, 0x2] - bl RemoveWindow - adds r0, r4, 0 - bl DestroyTask - bl EnableBothScriptContexts - bl ScriptContext2_Disable - mov r0, r9 - b _080224BE -_080224BA: - ldrh r0, [r6] - adds r0, 0x1 -_080224BE: - strh r0, [r6] -_080224C0: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8022250 - - thumb_func_start ShowBerryCrushRankings -ShowBerryCrushRankings: @ 80224D0 - push {lr} - bl ScriptContext2_Enable - ldr r0, =sub_8022250 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - movs r3, 0xF6 - lsls r3, 1 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0xC] - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0xE] - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0x10] - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0x12] - pop {r0} - bx r0 - .pool - thumb_func_end ShowBerryCrushRankings - - thumb_func_start sub_8022524 -sub_8022524: @ 8022524 - push {r4,lr} - adds r4, r0, 0 - lsls r1, 16 - lsrs r1, 16 - bl sub_8021944 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r0, 0 - bl sub_8035044 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r0, 0x1 - bl sub_8035044 - movs r0, 0x8 - ldrsh r1, [r4, r0] - movs r0, 0x2 - bl sub_8035044 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8022524 - - thumb_func_start sub_8022554 -sub_8022554: @ 8022554 - push {lr} - ldr r2, [r0, 0x78] - adds r2, 0x3E - ldrb r1, [r2] - movs r3, 0x4 - orrs r1, r3 - strb r1, [r2] - ldr r1, [r0, 0x7C] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r3 - strb r0, [r1] - movs r0, 0x2 - movs r1, 0x1 - bl sub_803547C - movs r0, 0x1 - movs r1, 0x1 - bl sub_803547C - movs r0, 0 - movs r1, 0x1 - bl sub_803547C - pop {r0} - bx r0 - thumb_func_end sub_8022554 - - thumb_func_start sub_8022588 -sub_8022588: @ 8022588 - push {r4-r7,lr} - adds r5, r0, 0 - movs r6, 0 - ldrb r0, [r5, 0x9] - cmp r6, r0 - bcs _080225E8 - ldr r7, =gUnknown_082F417C -_08022596: - lsls r0, r6, 2 - movs r1, 0xA2 - lsls r1, 1 - adds r2, r5, r1 - adds r2, r0 - ldrb r1, [r5, 0x9] - subs r1, 0x2 - lsls r0, r1, 2 - adds r0, r1 - adds r0, r6, r0 - adds r0, r7 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, =gUnknown_082F4190 - adds r0, r1 - str r0, [r2] - ldrb r0, [r0] - lsls r0, 3 - ldr r1, =gUnknown_082F32F4 - adds r0, r1 - bl AddWindow - ldr r1, =0x000001bb - adds r4, r5, r1 - adds r4, r6 - strb r0, [r4] - ldrb r0, [r4] - bl PutWindowTilemap - ldrb r0, [r4] - movs r1, 0 - bl FillWindowPixelBuffer - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - ldrb r0, [r5, 0x9] - cmp r6, r0 - bcc _08022596 -_080225E8: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022588 - - thumb_func_start sub_8022600 -sub_8022600: @ 8022600 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r6, r0, 0 - movs r7, 0 - ldrb r0, [r6, 0x9] - cmp r7, r0 - bcs _080226B6 - movs r1, 0 - mov r8, r1 -_08022616: - ldr r1, =0x000001bb - adds r0, r6, r1 - adds r5, r0, r7 - ldrb r0, [r5] - bl PutWindowTilemap - ldrb r0, [r6, 0x8] - cmp r7, r0 - bne _08022668 - lsls r4, r7, 5 - adds r4, 0x98 - adds r4, r6, r4 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - lsrs r0, 1 - movs r2, 0x24 - subs r2, r0 - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r5] - mov r1, r8 - str r1, [sp] - str r1, [sp, 0x4] - ldr r1, =sBerryCrushTextColors2 - str r1, [sp, 0x8] - mov r1, r8 - str r1, [sp, 0xC] - str r4, [sp, 0x10] - movs r1, 0x2 - movs r3, 0x1 - bl AddTextPrinterParameterized4 - b _0802269C - .pool -_08022668: - lsls r4, r7, 5 - adds r4, 0x98 - adds r4, r6, r4 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - lsrs r0, 1 - movs r2, 0x24 - subs r2, r0 - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r5] - mov r1, r8 - str r1, [sp] - str r1, [sp, 0x4] - ldr r1, =sBerryCrushTextColors3 - str r1, [sp, 0x8] - mov r1, r8 - str r1, [sp, 0xC] - str r4, [sp, 0x10] - movs r1, 0x2 - movs r3, 0x1 - bl AddTextPrinterParameterized4 -_0802269C: - ldr r1, =0x000001bb - adds r0, r6, r1 - adds r0, r7 - ldrb r0, [r0] - movs r1, 0x3 - bl CopyWindowToVram - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r6, 0x9] - cmp r7, r0 - bcc _08022616 -_080226B6: - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022600 - - thumb_func_start sub_80226D0 -sub_80226D0: @ 80226D0 - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r0, 0 - movs r5, 0 - ldr r0, =gUnknown_08DE3FD4 - ldr r4, =gDecompressionBuffer - adds r1, r4, 0 - bl LZ77UnCompWram - b _0802271A - .pool -_080226EC: - lsls r1, r5, 2 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r6, r2 - adds r0, r1 - ldr r3, [r0] - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - ldrb r2, [r3, 0x1] - ldrb r3, [r3, 0x2] - movs r0, 0xA - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x3 - bl CopyToBgTilemapBufferRect - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0802271A: - ldrb r0, [r6, 0x9] - cmp r5, r0 - bcc _080226EC - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80226D0 - - thumb_func_start sub_8022730 -sub_8022730: @ 8022730 - push {r4-r7,lr} - adds r6, r0, 0 - movs r5, 0 - ldr r0, =0x0000ff98 - strh r0, [r6, 0x2A] - strh r5, [r6, 0x2C] - ldr r1, =gSpriteCoordOffsetX - strh r5, [r1] - ldr r1, =gSpriteCoordOffsetY - strh r0, [r1] - ldr r4, =gUnknown_082F41F4 -_08022746: - lsls r0, r5, 3 - adds r0, r4 - bl LoadCompressedSpriteSheet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _08022746 - ldr r0, =gUnknown_082F421C - bl LoadSpritePalettes - ldr r0, =gUnknown_082F430C - movs r1, 0x78 - movs r2, 0x58 - movs r3, 0x5 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0xAC - lsls r0, 1 - adds r3, r6, r0 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r3] - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r1, [r3] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] - ldr r1, [r3] - adds r1, 0x2C - ldrb r0, [r1] - movs r2, 0x40 - orrs r0, r2 - strb r0, [r1] - movs r5, 0 - ldrb r1, [r6, 0x9] - cmp r5, r1 - bcs _08022822 - movs r7, 0x4 -_080227AA: - lsls r4, r5, 2 - movs r3, 0xA2 - lsls r3, 1 - adds r0, r6, r3 - adds r0, r4 - ldr r0, [r0] - ldrh r1, [r0, 0x4] - adds r1, 0x78 - lsls r1, 16 - asrs r1, 16 - ldrh r2, [r0, 0x6] - adds r2, 0x20 - lsls r2, 16 - asrs r2, 16 - ldr r0, =gUnknown_082F4324 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0xAE - lsls r0, 1 - adds r3, r6, r0 - adds r3, r4 - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - ldr r0, =gSprites - adds r1, r0 - str r1, [r3] - ldrb r0, [r1, 0x5] - movs r4, 0xD - negs r4, r4 - adds r2, r4, 0 - ands r0, r2 - orrs r0, r7 - strb r0, [r1, 0x5] - ldr r1, [r3] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r7 - strb r0, [r1] - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r6, 0x9] - cmp r5, r0 - bcc _080227AA -_08022822: - movs r5, 0 - ldr r4, =gUnknown_082F41CC+6 - adds r7, r4, 0x1 -_08022828: - lsls r2, r5, 1 - adds r0, r2, r4 - movs r1, 0 - ldrsb r1, [r0, r1] - adds r1, 0x78 - adds r2, r7 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - adds r2, 0x88 - ldr r0, =gUnknown_082F433C - movs r3, 0x6 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r5, 2 - movs r1, 0xC2 - lsls r1, 1 - adds r3, r6, r1 - adds r3, r0 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r3] - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - ldr r0, [r3] - strh r5, [r0, 0x2E] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xA - bls _08022828 - movs r5, 0 -_0802288E: - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 19 - movs r3, 0xB0 - lsls r3, 16 - adds r1, r3 - asrs r1, 16 - ldr r0, =gUnknown_082F4354 - movs r2, 0x8 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r5, 2 - movs r4, 0xD8 - lsls r4, 1 - adds r3, r6, r4 - adds r3, r0 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r3] - ldrb r1, [r0, 0x5] - movs r4, 0xD - negs r4, r4 - adds r2, r4, 0 - ands r1, r2 - strb r1, [r0, 0x5] - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - adds r4, 0x8 - adds r1, r4, 0 - ands r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - movs r3, 0x41 - negs r3, r3 - adds r1, r3, 0 - ands r0, r1 - strb r0, [r2] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bls _0802288E - ldr r4, =gUnknown_082F4384 - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - bl sub_8034D14 - adds r2, r4, 0 - adds r2, 0x10 - movs r0, 0x1 - movs r1, 0 - bl sub_8034D14 - adds r4, 0x20 - movs r0, 0x2 - movs r1, 0 - adds r2, r4, 0 - bl sub_8034D14 - ldrh r0, [r6, 0x12] - cmp r0, 0x1 - bne _08022928 - movs r4, 0x9C - lsls r4, 1 - adds r0, r6, r4 - bl sub_8022554 -_08022928: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022730 - - thumb_func_start sub_8022960 -sub_8022960: @ 8022960 - push {r4-r6,lr} - adds r5, r0, 0 - movs r4, 0 - movs r0, 0x4 - bl FreeSpriteTilesByTag - movs r0, 0x3 - bl FreeSpriteTilesByTag - movs r0, 0x2 - bl FreeSpriteTilesByTag - movs r0, 0x1 - bl FreeSpriteTilesByTag - movs r0, 0x4 - bl FreeSpritePaletteByTag - movs r0, 0x2 - bl FreeSpritePaletteByTag - movs r0, 0x1 - bl FreeSpritePaletteByTag - movs r0, 0xD8 - lsls r0, 1 - adds r6, r5, r0 -_08022996: - lsls r0, r4, 2 - adds r0, r6, r0 - ldr r0, [r0] - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bls _08022996 - movs r0, 0x2 - bl sub_80353DC - movs r0, 0x1 - bl sub_80353DC - movs r0, 0 - bl sub_80353DC - movs r4, 0 - movs r1, 0xC2 - lsls r1, 1 - adds r6, r5, r1 -_080229C4: - lsls r0, r4, 2 - adds r0, r6, r0 - ldr r0, [r0] - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xA - bls _080229C4 - movs r4, 0 - ldrb r2, [r5, 0x9] - cmp r4, r2 - bcs _080229FC -_080229E0: - lsls r1, r4, 2 - movs r2, 0xAE - lsls r2, 1 - adds r0, r5, r2 - adds r0, r1 - ldr r0, [r0] - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r5, 0x9] - cmp r4, r0 - bcc _080229E0 -_080229FC: - movs r1, 0xAC - lsls r1, 1 - adds r0, r5, r1 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08022A18 - adds r0, r2, 0 - bl DestroySprite -_08022A18: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8022960 - - thumb_func_start sub_8022A20 -sub_8022A20: @ 8022A20 - push {lr} - adds r3, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08022A46 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - subs r2, 0x12 - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] -_08022A46: - pop {r0} - bx r0 - thumb_func_end sub_8022A20 - - thumb_func_start sub_8022A4C -sub_8022A4C: @ 8022A4C - push {r4,r5,lr} - adds r3, r0, 0 - movs r1, 0 - ldr r5, =SpriteCallbackDummy - adds r2, r3, 0 - adds r2, 0x2E - movs r4, 0 -_08022A5A: - lsls r0, r1, 1 - adds r0, r2, r0 - strh r4, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x7 - bls _08022A5A - movs r0, 0 - strh r0, [r3, 0x24] - strh r0, [r3, 0x26] - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - subs r2, 0x12 - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - str r5, [r3, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022A4C - - thumb_func_start sub_8022A94 -sub_8022A94: @ 8022A94 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r5, 0 - adds r4, 0x2E - ldrh r0, [r4, 0x4] - ldrh r1, [r4, 0x2] - adds r0, r1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 24 - ldrh r2, [r5, 0x26] - adds r0, r2 - strh r0, [r5, 0x26] - movs r1, 0xE - ldrsh r0, [r4, r1] - movs r6, 0x80 - lsls r6, 8 - ands r0, r6 - cmp r0, 0 - beq _08022AFA - ldrh r0, [r4, 0x6] - ldrh r2, [r5, 0x2E] - adds r0, r2 - strh r0, [r5, 0x2E] - ldrh r0, [r4, 0xA] - ldrh r1, [r4, 0x8] - adds r0, r1 - strh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 23 - movs r2, 0xC - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r5, 0x24] - movs r1, 0xE - ldrsh r0, [r4, r1] - ands r0, r6 - cmp r0, 0 - beq _08022AFA - ldrh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 23 - cmp r0, 0x7E - ble _08022AFA - movs r0, 0 - strh r0, [r5, 0x24] - ldrh r1, [r4, 0xE] - ldr r0, =0x00007fff - ands r0, r1 - strh r0, [r4, 0xE] -_08022AFA: - ldrh r0, [r4] - lsls r0, 16 - asrs r0, 23 - strh r0, [r5, 0x20] - movs r2, 0x22 - ldrsh r1, [r5, r2] - movs r2, 0x26 - ldrsh r0, [r5, r2] - adds r1, r0 - ldrh r2, [r4, 0xE] - ldr r0, =0x00007fff - ands r0, r2 - cmp r1, r0 - ble _08022B1A - ldr r0, =sub_8022A4C - str r0, [r5, 0x1C] -_08022B1A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022A94 - - thumb_func_start sub_8022B28 -sub_8022B28: @ 8022B28 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r7, r6, 0 - adds r7, 0x2E - movs r0, 0 - mov r8, r0 - movs r2, 0xA0 - lsls r2, 2 - strh r2, [r7, 0x2] - movs r0, 0x20 - strh r0, [r7, 0x4] - movs r1, 0xA8 - strh r1, [r7, 0xE] - movs r0, 0x24 - ldrsh r4, [r6, r0] - lsls r4, 23 - lsrs r4, 16 - ldrh r0, [r6, 0x22] - subs r1, r0 - lsls r1, 23 - asrs r1, 16 - adds r2, 0x20 - asrs r2, 1 - movs r0, 0x7 - bl sub_81515D4 - adds r5, r0, 0 - ldrh r0, [r6, 0x20] - lsls r0, 7 - strh r0, [r6, 0x2E] - lsls r4, 16 - asrs r4, 16 - lsls r5, 16 - asrs r5, 16 - movs r0, 0x7 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_81515D4 - strh r0, [r7, 0x6] - movs r0, 0x7 - adds r1, r5, 0 - movs r2, 0x55 - bl sub_8151550 - adds r2, r0, 0 - mov r1, r8 - strh r1, [r7, 0x8] - movs r1, 0xFE - lsls r1, 6 - lsls r2, 16 - asrs r2, 16 - movs r0, 0x7 - bl sub_81515D4 - strh r0, [r7, 0xA] - movs r2, 0x24 - ldrsh r0, [r6, r2] - cmp r0, 0 - bge _08022BA6 - adds r0, 0x3 -_08022BA6: - asrs r0, 2 - strh r0, [r7, 0xC] - ldrh r0, [r7, 0xE] - ldr r2, =0xffff8000 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r7, 0xE] - mov r0, r8 - strh r0, [r6, 0x26] - strh r0, [r6, 0x24] - ldr r0, =sub_8022A94 - str r0, [r6, 0x1C] - adds r2, r6, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - adds r2, 0x12 - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022B28 - - thumb_func_start sub_8022BEC -sub_8022BEC: @ 8022BEC - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r2, 0 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - mov r8, r4 - bl sub_8020C00 - adds r6, r0, 0 - cmp r5, 0x19 - bls _08022C0A - movs r5, 0 -_08022C0A: - cmp r4, 0 - beq _08022C14 - cmp r4, 0x1 - beq _08022C40 - b _08022C4A -_08022C14: - cmp r5, 0 - beq _08022C28 - ldr r0, =gUnknown_082F43CC - lsls r1, r5, 2 - adds r1, r0 - ldr r2, [r1] - adds r0, r6, 0 - adds r1, r7, 0 - bl _call_via_r2 -_08022C28: - ldrb r0, [r6, 0xE] - cmp r0, 0x19 - bls _08022C32 - mov r0, r8 - strb r0, [r6, 0xE] -_08022C32: - ldr r0, =gUnknown_082F43CC - ldrb r1, [r6, 0xE] - lsls r1, 2 - b _08022C44 - .pool -_08022C40: - ldr r0, =gUnknown_082F43CC - lsls r1, r5, 2 -_08022C44: - adds r1, r0 - ldr r0, [r1] - str r0, [r6, 0x4] -_08022C4A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8022BEC - - thumb_func_start sub_8022C58 -sub_8022C58: @ 8022C58 - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - ldrb r2, [r1] - ldrb r3, [r1, 0x1] - lsls r3, 8 - orrs r2, r3 - ldrb r3, [r1, 0x2] - lsls r3, 16 - orrs r2, r3 - ldrb r3, [r1, 0x3] - lsls r3, 24 - adds r0, r2, 0 - orrs r0, r3 - ldrb r2, [r1, 0x9] - strb r2, [r1] - ldrb r4, [r1, 0x8] - lsls r4, 8 - ldrb r2, [r1, 0x7] - orrs r4, r2 - ldr r5, =gPaletteFade - ldrb r3, [r5, 0x8] - movs r2, 0x7F - ands r2, r3 - strb r2, [r5, 0x8] - movs r5, 0x4 - ldrsb r5, [r1, r5] - ldrb r2, [r1, 0x5] - ldrb r3, [r1, 0x6] - str r4, [sp] - adds r1, r5, 0 - bl BeginNormalPaletteFade - bl UpdatePaletteFade - movs r0, 0x2 - strb r0, [r6, 0xE] - movs r0, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8022C58 - - thumb_func_start sub_8022CB0 -sub_8022CB0: @ 8022CB0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0x1 - beq _08022CE4 - cmp r0, 0x1 - bgt _08022CC6 - cmp r0, 0 - beq _08022CD0 - b _08022D06 -_08022CC6: - cmp r0, 0x2 - beq _08022CEA - cmp r0, 0x3 - beq _08022CF6 - b _08022D06 -_08022CD0: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08022D0C - ldrb r0, [r5] - cmp r0, 0 - bne _08022D06 - movs r0, 0x3 - b _08022D0A -_08022CE4: - bl sub_8010434 - b _08022D06 -_08022CEA: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - bne _08022D06 - b _08022D0C -_08022CF6: - ldrb r0, [r4, 0xF] - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r0, 0 - strb r0, [r4, 0xC] - b _08022D0E -_08022D06: - ldrb r0, [r4, 0xC] - adds r0, 0x1 -_08022D0A: - strb r0, [r4, 0xC] -_08022D0C: - movs r0, 0 -_08022D0E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8022CB0 - - thumb_func_start sub_8022D14 -sub_8022D14: @ 8022D14 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r7, r0, 0 - adds r5, r1, 0 - ldrb r4, [r5, 0x3] - lsls r4, 8 - ldrb r0, [r5, 0x2] - orrs r4, r0 - ldrb r6, [r7, 0xC] - cmp r6, 0x1 - beq _08022DC0 - cmp r6, 0x1 - bgt _08022D38 - cmp r6, 0 - beq _08022D42 - b _08022E08 -_08022D38: - cmp r6, 0x2 - beq _08022DD8 - cmp r6, 0x3 - beq _08022DE8 - b _08022E08 -_08022D42: - movs r0, 0 - movs r1, 0 - bl DrawDialogueFrame - ldrb r1, [r5, 0x1] - movs r0, 0x2 - mov r8, r0 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08022D90 - ldr r4, =gStringVar4 - ldr r1, =gUnknown_082F32A4 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringExpandPlaceholders - ldrb r3, [r7, 0xB] - str r6, [sp] - mov r0, r8 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0 - movs r1, 0x1 - adds r2, r4, 0 - bl AddTextPrinterParameterized2 - b _08022DB2 - .pool -_08022D90: - ldr r1, =gUnknown_082F32A4 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - ldrb r3, [r7, 0xB] - str r4, [sp] - mov r0, r8 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0 - movs r1, 0x1 - bl AddTextPrinterParameterized2 -_08022DB2: - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - b _08022E08 - .pool -_08022DC0: - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _08022E0E - cmp r4, 0 - bne _08022E08 - ldrb r0, [r7, 0xC] - adds r0, 0x1 - strb r0, [r7, 0xC] - b _08022E08 -_08022DD8: - ldr r0, =gMain - ldrh r0, [r0, 0x2E] - ands r4, r0 - cmp r4, 0 - bne _08022E08 - b _08022E0E - .pool -_08022DE8: - ldrb r1, [r5, 0x1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08022DFA - movs r0, 0 - movs r1, 0x1 - bl ClearDialogWindowAndFrame -_08022DFA: - ldrb r0, [r7, 0xE] - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - ldrb r0, [r5, 0x4] - b _08022E0C -_08022E08: - ldrb r0, [r7, 0xC] - adds r0, 0x1 -_08022E0C: - strb r0, [r7, 0xC] -_08022E0E: - movs r0, 0 - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8022D14 - - thumb_func_start sub_8022E1C -sub_8022E1C: @ 8022E1C - push {r4,lr} - adds r4, r0, 0 - bl sub_802104C - cmp r0, 0 - beq _08022E34 - ldrb r0, [r4, 0xE] - adds r2, r4, 0 - adds r2, 0x36 - movs r1, 0 - bl sub_8022BEC -_08022E34: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8022E1C - - thumb_func_start sub_8022E3C -sub_8022E3C: @ 8022E3C - push {r4,lr} - adds r4, r0, 0 - bl sub_802130C - cmp r0, 0 - beq _08022E54 - ldrb r0, [r4, 0xE] - adds r2, r4, 0 - adds r2, 0x36 - movs r1, 0 - bl sub_8022BEC -_08022E54: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8022E3C - - thumb_func_start sub_8022E5C -sub_8022E5C: @ 8022E5C - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0 - beq _08022E6C - cmp r0, 0x1 - beq _08022E72 - b _08022E9C -_08022E6C: - bl sub_8010434 - b _08022E9C -_08022E72: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08022EA2 - ldr r0, =0x000001e5 - bl PlayNewMapMusic - movs r0, 0x7 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r1, 0 - movs r0, 0x3 - strh r0, [r4, 0x12] - strb r1, [r4, 0xC] - b _08022EA2 - .pool -_08022E9C: - ldrb r0, [r4, 0xC] - adds r0, 0x1 - strb r0, [r4, 0xC] -_08022EA2: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8022E5C - - thumb_func_start sub_8022EAC -sub_8022EAC: @ 8022EAC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0 - beq _08022EC2 - cmp r0, 0x1 - beq _08022EE8 - adds r0, 0x1 - b _08022EF8 -_08022EC2: - adds r0, r4, 0 - bl sub_8024578 - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8024644 - movs r0, 0x7 - strb r0, [r4, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - b _08022EFA -_08022EE8: - movs r0, 0x8 - strb r0, [r4, 0xE] - movs r0, 0x5 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r0, 0x2 -_08022EF8: - strb r0, [r4, 0xC] -_08022EFA: - movs r0, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8022EAC - - thumb_func_start sub_8022F04 -sub_8022F04: @ 8022F04 - push {lr} - movs r1, 0 - str r1, [r0, 0x4] - ldr r0, =sub_8020E1C - bl SetMainCallback2 - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_8022F04 - - thumb_func_start sub_8022F1C -sub_8022F1C: @ 8022F1C - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r2, r1, 0 - ldrb r0, [r5, 0xC] - cmp r0, 0x5 - bls _08022F2C - b _08023060 -_08022F2C: - lsls r0, 2 - ldr r1, =_08022F3C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08022F3C: - .4byte _08022F54 - .4byte _08022F74 - .4byte _08022F7A - .4byte _08022FAA - .4byte _08022FBA - .4byte _08023044 -_08022F54: - movs r0, 0x1 - str r0, [sp] - adds r0, r2, 0 - movs r1, 0x1 - movs r2, 0 - movs r3, 0 - bl sub_8024644 - movs r0, 0x9 - strb r0, [r5, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - b _08023066 -_08022F74: - bl sub_8010434 - b _08023060 -_08022F7A: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08023066 - adds r4, r5, 0 - adds r4, 0x42 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0xC - bl memset - ldrb r0, [r5, 0x8] - lsls r0, 5 - adds r0, r5, r0 - adds r0, 0xA4 - ldrh r0, [r0] - strh r0, [r4] - movs r0, 0 - adds r1, r4, 0 - movs r2, 0x2 - bl SendBlock - b _08023060 -_08022FAA: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08023066 - movs r0, 0 - strh r0, [r5, 0x10] - b _08023060 -_08022FBA: - bl GetBlockReceivedStatus - ldr r2, =gUnknown_082F4448 - ldrb r4, [r5, 0x9] - subs r1, r4, 0x2 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bne _08023066 - movs r3, 0 - cmp r3, r4 - bcs _0802301E - ldr r7, =gBlockRecvBuffer - movs r6, 0 - ldr r4, =gUnknown_0858AB24 -_08022FDC: - lsls r0, r3, 5 - adds r0, r5, r0 - lsls r1, r3, 8 - adds r1, r7 - ldrh r1, [r1] - adds r2, r0, 0 - adds r2, 0xA4 - strh r1, [r2] - lsls r1, 16 - lsrs r1, 16 - cmp r1, 0xB0 - bls _08022FF6 - strh r6, [r2] -_08022FF6: - ldrh r1, [r2] - lsls r1, 2 - adds r1, r4 - ldrh r0, [r5, 0x18] - ldrb r1, [r1] - adds r0, r1 - strh r0, [r5, 0x18] - ldrh r0, [r2] - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x2] - ldr r0, [r5, 0x1C] - adds r0, r1 - str r0, [r5, 0x1C] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - ldrb r0, [r5, 0x9] - cmp r3, r0 - bcc _08022FDC -_0802301E: - movs r0, 0 - strh r0, [r5, 0x10] - bl ResetBlockReceivedFlags - movs r1, 0x18 - ldrsh r0, [r5, r1] - lsls r0, 8 - movs r1, 0x80 - lsls r1, 6 - bl sub_81515FC - str r0, [r5, 0x20] - b _08023060 - .pool -_08023044: - movs r0, 0 - movs r1, 0x1 - bl ClearDialogWindowAndFrame - movs r0, 0xA - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r1, 0 - movs r0, 0x4 - strh r0, [r5, 0x12] - strb r1, [r5, 0xC] - b _08023066 -_08023060: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_08023066: - movs r0, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8022F1C - - thumb_func_start sub_8023070 -sub_8023070: @ 8023070 - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0x6 - bls _0802307C - b _080231A8 -_0802307C: - lsls r0, 2 - ldr r1, =_0802308C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0802308C: - .4byte _080230A8 - .4byte _080230BA - .4byte _080230E8 - .4byte _08023120 - .4byte _08023150 - .4byte _08023172 - .4byte _08023184 -_080230A8: - movs r0, 0x9C - lsls r0, 1 - adds r1, r4, r0 - adds r0, r4, 0 - bl sub_80214A8 - bl sub_8010434 - b _080231A8 -_080230BA: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _080231AE - movs r2, 0x9C - lsls r2, 1 - adds r1, r4, r2 - movs r0, 0 - strb r0, [r1] - ldr r3, =0x00000139 - adds r1, r4, r3 - strb r0, [r1] - adds r2, 0x2 - adds r1, r4, r2 - strb r0, [r1] - adds r3, 0x2 - adds r1, r4, r3 - strb r0, [r1] - b _080231A8 - .pool -_080230E8: - movs r0, 0x9C - lsls r0, 1 - adds r3, r4, r0 - ldrb r0, [r3] - lsls r0, 2 - movs r2, 0xB8 - lsls r2, 1 - adds r1, r4, r2 - adds r0, r1, r0 - ldr r2, [r0] - ldr r0, =sub_8021608 - str r0, [r2, 0x1C] - ldrb r0, [r3] - lsls r0, 2 - adds r1, r0 - ldr r1, [r1] - adds r1, 0x2C - ldrb r2, [r1] - movs r0, 0x7F - ands r0, r2 - strb r0, [r1] - movs r0, 0x3D - bl PlaySE - b _080231A8 - .pool -_08023120: - movs r3, 0x9C - lsls r3, 1 - adds r2, r4, r3 - ldrb r0, [r2] - lsls r0, 2 - adds r3, 0x38 - adds r1, r4, r3 - adds r3, r1, r0 - ldr r0, [r3] - ldr r1, [r0, 0x1C] - ldr r0, =sub_8021608 - cmp r1, r0 - beq _080231AE - movs r0, 0 - str r0, [r3] - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - bl sub_8010434 - b _080231A8 - .pool -_08023150: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _080231AE - movs r0, 0x9C - lsls r0, 1 - adds r1, r4, r0 - ldrb r0, [r1] - ldrb r2, [r4, 0x9] - cmp r0, r2 - bcs _0802316C - movs r0, 0x2 - b _080231AC -_0802316C: - movs r0, 0 - strb r0, [r1] - b _080231A8 -_08023172: - movs r3, 0x9C - lsls r3, 1 - adds r1, r4, r3 - adds r0, r4, 0 - bl sub_80216A8 - bl sub_8010434 - b _080231A8 -_08023184: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _080231AE - movs r0, 0x2B - bl PlaySE - movs r0, 0xB - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r1, 0 - movs r0, 0x5 - strh r0, [r4, 0x12] - strb r1, [r4, 0xC] - b _080231AE -_080231A8: - ldrb r0, [r4, 0xC] - adds r0, 0x1 -_080231AC: - strb r0, [r4, 0xC] -_080231AE: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8023070 - - thumb_func_start sub_80231B8 -sub_80231B8: @ 80231B8 - push {r4-r7,lr} - adds r4, r0, 0 - ldrb r1, [r4, 0xC] - cmp r1, 0x1 - beq _0802321C - cmp r1, 0x1 - bgt _080231CC - cmp r1, 0 - beq _080231D6 - b _080232DC -_080231CC: - cmp r1, 0x2 - beq _0802329C - cmp r1, 0x3 - beq _080232BE - b _080232DC -_080231D6: - ldrh r0, [r4, 0x2A] - adds r0, 0x4 - strh r0, [r4, 0x2A] - lsls r0, 16 - cmp r0, 0 - bge _080231E4 - b _080232E2 -_080231E4: - strh r1, [r4, 0x2A] - ldr r0, =0x00000139 - adds r3, r4, r0 - movs r0, 0x4 - strb r0, [r3] - movs r2, 0x9C - lsls r2, 1 - adds r1, r4, r2 - movs r0, 0 - strb r0, [r1] - ldr r2, =gUnknown_082F326C - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - adds r0, r2 - ldrb r0, [r0] - movs r2, 0x9D - lsls r2, 1 - adds r1, r4, r2 - strb r0, [r1] - movs r0, 0xD6 - bl PlaySE - b _080232DC - .pool -_0802321C: - ldr r7, =gUnknown_082F326C - movs r0, 0x9C - lsls r0, 1 - adds r6, r4, r0 - ldr r1, =0x00000139 - adds r5, r4, r1 - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - ldrb r2, [r6] - adds r0, r2 - adds r0, r7 - movs r1, 0 - ldrsb r1, [r0, r1] - strh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x12 - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1E - bl SetGpuReg - ldrb r0, [r6] - adds r0, 0x1 - strb r0, [r6] - movs r1, 0x9D - lsls r1, 1 - adds r2, r4, r1 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r2] - cmp r0, r1 - bcc _080232E2 - ldrb r0, [r5] - cmp r0, 0 - beq _080232DC - subs r0, 0x1 - strb r0, [r5] - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r2] - movs r0, 0 - strb r0, [r6] - b _080232E2 - .pool -_0802329C: - movs r0, 0 - strh r0, [r4, 0x2C] - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - bl sub_8010434 - b _080232DC -_080232BE: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _080232E2 - movs r0, 0xC - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r1, 0 - movs r0, 0x6 - strh r0, [r4, 0x12] - strb r1, [r4, 0xC] - b _080232E2 -_080232DC: - ldrb r0, [r4, 0xC] - adds r0, 0x1 - strb r0, [r4, 0xC] -_080232E2: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80231B8 - - thumb_func_start sub_80232EC -sub_80232EC: @ 80232EC - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0x1 - beq _0802330C - cmp r0, 0x1 - bgt _08023302 - cmp r0, 0 - beq _08023332 - b _0802338C -_08023302: - cmp r0, 0x2 - beq _0802332A - cmp r0, 0x3 - beq _08023338 - b _0802338C -_0802330C: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08023392 - movs r1, 0x80 - lsls r1, 5 - movs r0, 0 - str r0, [sp] - adds r0, r1, 0 - movs r2, 0x78 - movs r3, 0x50 - bl sub_802EB24 - b _0802338C -_0802332A: - bl sub_802EB84 - cmp r0, 0 - bne _08023392 -_08023332: - bl sub_8010434 - b _0802338C -_08023338: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08023392 - movs r0, 0x9C - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0 - strb r0, [r1] - ldr r2, =0x00000139 - adds r1, r4, r2 - strb r0, [r1] - adds r2, 0x1 - adds r1, r4, r2 - strb r0, [r1] - adds r2, 0x1 - adds r1, r4, r2 - strb r0, [r1] - strh r0, [r4, 0x10] - ldrb r0, [r4, 0x8] - cmp r0, 0 - bne _08023378 - movs r0, 0xD - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - b _08023382 - .pool -_08023378: - movs r0, 0xE - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC -_08023382: - movs r1, 0 - movs r0, 0x7 - strh r0, [r4, 0x12] - strb r1, [r4, 0xC] - b _08023392 -_0802338C: - ldrb r0, [r4, 0xC] - adds r0, 0x1 - strb r0, [r4, 0xC] -_08023392: - movs r0, 0 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80232EC - - thumb_func_start sub_802339C -sub_802339C: @ 802339C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - movs r0, 0 - mov r8, r0 - movs r2, 0 - adds r7, r2, 0 - ldrb r1, [r4, 0x9] - cmp r7, r1 - bcs _080234AA - movs r2, 0x5E - adds r2, r4 - mov r9, r2 - ldr r3, =gUnknown_082F325C - mov r10, r3 -_080233C0: - lsls r0, r7, 4 - ldr r1, =gRecvCmds - adds r2, r0, r1 - ldrh r1, [r2] - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - movs r3, 0xBC - lsls r3, 6 - cmp r0, r3 - bne _0802349E - ldrh r0, [r2, 0x2] - cmp r0, 0x2 - bne _0802349E - ldrb r1, [r2, 0x4] - movs r0, 0x4 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08023496 - mov r0, r9 - ldrb r2, [r0] - lsrs r1, r2, 3 - mov r3, r10 - adds r0, r7, r3 - ldrb r0, [r0] - orrs r1, r0 - lsls r1, 3 - movs r0, 0x7 - ands r0, r2 - orrs r0, r1 - mov r1, r9 - strb r0, [r1] - lsls r2, r7, 5 - adds r3, r4, r2 - mov r12, r3 - mov r1, r12 - adds r1, 0xB5 - movs r0, 0x1 - strb r0, [r1] - subs r1, 0x7 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - mov r0, r8 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - subs r1, 0x8 - ldrh r0, [r4, 0x28] - ldrh r1, [r1] - subs r0, r1 - lsls r0, 16 - lsrs r3, r0, 16 - mov r5, r12 - adds r5, 0xAA - ldrh r1, [r5] - subs r0, r1, 0x1 - adds r6, r2, 0 - cmp r3, r0 - blt _08023468 - adds r0, r1, 0x1 - cmp r3, r0 - bgt _08023468 - mov r1, r12 - adds r1, 0xA8 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - strh r3, [r5] - mov r0, r12 - adds r0, 0xAC - ldrh r1, [r1] - ldrh r2, [r0] - cmp r1, r2 - bls _08023476 - strh r1, [r0] - b _08023476 - .pool -_08023468: - adds r0, r4, r6 - adds r2, r0, 0 - adds r2, 0xA8 - movs r1, 0 - strh r1, [r2] - adds r0, 0xAA - strh r3, [r0] -_08023476: - adds r1, r4, r6 - ldrh r0, [r4, 0x28] - adds r3, r1, 0 - adds r3, 0xA6 - movs r2, 0 - strh r0, [r3] - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bls _0802349E - strb r2, [r1] - b _0802349E -_08023496: - lsls r0, r7, 5 - adds r0, r4, r0 - adds r0, 0xB5 - strb r1, [r0] -_0802349E: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r3, [r4, 0x9] - cmp r7, r3 - bcc _080233C0 -_080234AA: - mov r0, r8 - cmp r0, 0x1 - bls _080234E0 - movs r7, 0 - ldrb r1, [r4, 0x9] - cmp r7, r1 - bcs _080234E0 - movs r3, 0x2 -_080234BA: - lsls r0, r7, 5 - adds r1, r4, r0 - adds r2, r1, 0 - adds r2, 0xB5 - ldrb r0, [r2] - cmp r0, 0 - beq _080234D4 - orrs r0, r3 - strb r0, [r2] - adds r1, 0xB0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080234D4: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r2, [r4, 0x9] - cmp r7, r2 - bcc _080234BA -_080234E0: - mov r3, r8 - cmp r3, 0 - beq _08023548 - ldrh r0, [r4, 0x2E] - add r0, r8 - strh r0, [r4, 0x2E] - ldr r1, =gUnknown_082F3264 - mov r0, r8 - subs r0, 0x1 - adds r0, r1 - ldrb r0, [r0] - add r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldrh r0, [r4, 0x34] - add r0, r8 - strh r0, [r4, 0x34] - ldrh r0, [r4, 0x1A] - add r0, r8 - strh r0, [r4, 0x1A] - movs r1, 0x18 - ldrsh r0, [r4, r1] - movs r3, 0x1A - ldrsh r2, [r4, r3] - subs r0, r2 - cmp r0, 0 - ble _08023534 - lsls r2, 8 - ldr r1, [r4, 0x20] - adds r0, r2, 0 - bl sub_81515FC - adds r2, r0, 0 - asrs r2, 8 - adds r0, r4, 0 - adds r0, 0x24 - strb r2, [r0] - b _08023548 - .pool -_08023534: - adds r1, r4, 0 - adds r1, 0x24 - movs r0, 0x20 - strb r0, [r1] - adds r2, r4, 0 - adds r2, 0x5E - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] -_08023548: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802339C - - thumb_func_start sub_8023558 -sub_8023558: @ 8023558 - push {r4-r6,lr} - adds r3, r0, 0 - movs r6, 0 - movs r1, 0 - adds r4, r1, 0 - ldrb r0, [r3, 0x9] - cmp r4, r0 - bcs _080235B0 - adds r5, r3, 0 - adds r5, 0x64 -_0802356C: - lsls r0, r4, 5 - adds r1, r3, r0 - adds r0, r1, 0 - adds r0, 0xB5 - ldrb r2, [r0] - cmp r2, 0 - beq _080235A4 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r1, 0 - adds r0, 0xB4 - ldrb r0, [r0] - adds r1, r0, 0x1 - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _08023594 - movs r0, 0x4 - orrs r1, r0 -_08023594: - lsls r0, r4, 1 - adds r0, r4 - lsls r1, r0 - lsls r0, r1, 16 - lsrs r1, r0, 16 - ldrh r0, [r5] - orrs r1, r0 - strh r1, [r5] -_080235A4: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r1, [r3, 0x9] - cmp r4, r1 - bcc _0802356C -_080235B0: - adds r0, r3, 0 - adds r0, 0x24 - ldrb r1, [r0] - adds r0, 0x3C - strh r1, [r0] - cmp r6, 0 - bne _080235D4 - ldr r2, =0x0000013b - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080236A0 - movs r4, 0x9C - lsls r4, 1 - adds r1, r3, r4 - b _08023612 - .pool -_080235D4: - ldr r5, =0x0000013b - adds r2, r3, r5 - ldrb r0, [r2] - cmp r0, 0 - beq _0802361A - ldr r0, =0x00000139 - adds r1, r3, r0 - ldrb r2, [r1] - cmp r6, r2 - beq _0802360C - subs r0, r6, 0x1 - strb r0, [r1] - ldr r1, =gUnknown_082F3290 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - movs r4, 0x9D - lsls r4, 1 - adds r1, r3, r4 - strb r0, [r1] - b _08023640 - .pool -_0802360C: - movs r5, 0x9C - lsls r5, 1 - adds r1, r3, r5 -_08023612: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _08023640 -_0802361A: - movs r0, 0x9C - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0 - strb r0, [r1] - subs r0, r6, 0x1 - ldr r4, =0x00000139 - adds r1, r3, r4 - strb r0, [r1] - ldr r1, =gUnknown_082F3290 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - movs r5, 0x9D - lsls r5, 1 - adds r1, r3, r5 - strb r0, [r1] - movs r0, 0x1 - strb r0, [r2] -_08023640: - ldr r0, =0x0000013b - adds r4, r3, r0 - ldrb r0, [r4] - cmp r0, 0 - beq _080236A0 - movs r2, 0x9C - lsls r2, 1 - adds r1, r3, r2 - movs r5, 0x9D - lsls r5, 1 - adds r2, r3, r5 - ldrb r0, [r1] - ldrb r5, [r2] - cmp r0, r5 - bcc _0802367C - movs r0, 0 - strb r0, [r1] - ldr r5, =0x00000139 - adds r1, r3, r5 - strb r0, [r1] - strb r0, [r2] - strb r0, [r4] - movs r1, 0 - b _08023690 - .pool -_0802367C: - ldr r2, =gUnknown_082F3290 - ldrb r1, [r1] - ldr r4, =0x00000139 - adds r0, r3, r4 - ldrb r0, [r0] - lsls r0, 2 - adds r0, 0x1 - adds r1, r0 - adds r1, r2 - ldrb r1, [r1] -_08023690: - adds r0, r3, 0 - adds r0, 0x5F - strb r1, [r0] - b _080236A8 - .pool -_080236A0: - adds r1, r3, 0 - adds r1, 0x5F - movs r0, 0 - strb r0, [r1] -_080236A8: - ldrh r1, [r3, 0x26] - adds r0, r3, 0 - adds r0, 0x62 - strh r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8023558 - - thumb_func_start sub_80236B8 -sub_80236B8: @ 80236B8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - ldr r3, =gMain - ldrh r1, [r3, 0x2E] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _080236DA - adds r2, r5, 0 - adds r2, 0x5E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_080236DA: - ldrh r1, [r3, 0x2C] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _080236FA - ldrb r0, [r5, 0x8] - lsls r0, 5 - adds r0, r5, r0 - adds r1, r0, 0 - adds r1, 0xB2 - ldrh r0, [r1] - ldrh r2, [r5, 0x28] - cmp r0, r2 - bcs _080236FA - adds r0, 0x1 - strh r0, [r1] -_080236FA: - ldrb r0, [r5, 0x8] - adds r7, r5, 0 - adds r7, 0x5E - cmp r0, 0 - beq _08023710 - ldrb r1, [r7] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08023710 - b _0802384C -_08023710: - adds r4, r5, 0 - adds r4, 0x5C - movs r0, 0x2 - strh r0, [r4] - ldrh r0, [r5, 0x28] - movs r1, 0x1E - bl __umodsi3 - lsls r0, 16 - mov r8, r4 - adds r6, r5, 0 - adds r6, 0x25 - cmp r0, 0 - bne _08023768 - movs r0, 0x2E - ldrsh r2, [r5, r0] - ldr r1, =gUnknown_082F4444 - ldrb r0, [r5, 0x9] - subs r0, 0x2 - adds r0, r1 - ldrb r0, [r0] - cmp r2, r0 - ble _08023754 - ldrh r0, [r5, 0x30] - adds r0, 0x1 - strh r0, [r5, 0x30] - ldrb r0, [r6] - movs r1, 0x10 - orrs r0, r1 - b _0802375C - .pool -_08023754: - ldrb r1, [r6] - movs r0, 0x11 - negs r0, r0 - ands r0, r1 -_0802375C: - strb r0, [r6] - movs r0, 0 - strh r0, [r5, 0x2E] - ldrh r0, [r5, 0x32] - adds r0, 0x1 - strh r0, [r5, 0x32] -_08023768: - ldrh r0, [r5, 0x28] - movs r1, 0xF - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _080237DE - movs r0, 0x34 - ldrsh r2, [r5, r0] - ldr r3, =gUnknown_082F4434 - ldrb r0, [r5, 0x9] - subs r0, 0x2 - lsls r1, r0, 2 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r2, r0 - bge _08023798 - ldrb r1, [r6] - movs r0, 0x1F - ands r0, r1 - strb r0, [r6] - b _080237D8 - .pool -_08023798: - adds r0, r3, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r2, r0 - bge _080237AC - ldrb r0, [r6] - movs r1, 0x1F - ands r1, r0 - movs r0, 0x20 - b _080237D4 -_080237AC: - adds r0, r3, 0x2 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r2, r0 - bge _080237BC - movs r0, 0x2 - strh r0, [r5, 0x34] - b _080237D8 -_080237BC: - adds r0, r3, 0x3 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r2, r0 - bge _080237CC - movs r0, 0x3 - strh r0, [r5, 0x34] - b _080237D8 -_080237CC: - ldrb r0, [r6] - movs r1, 0x1F - ands r1, r0 - movs r0, 0x80 -_080237D4: - orrs r1, r0 - strb r1, [r6] -_080237D8: - movs r0, 0 - strh r0, [r5, 0x34] - b _0802380A -_080237DE: - ldrh r0, [r5, 0x10] - adds r0, 0x1 - strh r0, [r5, 0x10] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3C - bls _0802380A - cmp r0, 0x46 - bls _080237FA - bl sub_8011AC8 - movs r0, 0 - strh r0, [r5, 0x10] - b _0802380A -_080237FA: - ldrb r0, [r7] - movs r4, 0xF8 - ands r4, r0 - cmp r4, 0 - bne _0802380A - bl sub_8011AC8 - strh r4, [r5, 0x10] -_0802380A: - ldrh r1, [r5, 0x28] - ldr r0, =0x00008c9f - cmp r1, r0 - bls _0802381A - ldrb r0, [r7] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r7] -_0802381A: - ldrb r1, [r6] - lsls r1, 27 - lsrs r1, 31 - lsls r1, 1 - ldrb r2, [r7] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r7] - ldrb r0, [r6] - lsrs r0, 5 - adds r2, r5, 0 - adds r2, 0x66 - strh r0, [r2] - adds r4, r5, 0 - adds r4, 0x42 - adds r0, r4, 0 - mov r1, r8 - movs r2, 0xC - bl memcpy - adds r0, r4, 0 - bl sub_800FE50 -_0802384C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80236B8 - - thumb_func_start sub_802385C -sub_802385C: @ 802385C - push {r4,r5,lr} - adds r5, r0, 0 - movs r4, 0 - ldr r3, =gRecvCmds - ldrb r0, [r5, 0x9] - cmp r4, r0 - bcs _08023880 - movs r1, 0 -_0802386C: - lsls r0, r4, 5 - adds r0, r5, r0 - adds r0, 0xB5 - strb r1, [r0] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r5, 0x9] - cmp r4, r0 - bcc _0802386C -_08023880: - adds r2, r3, 0 - ldrh r0, [r2] - movs r1, 0xFF - lsls r1, 8 - ands r1, r0 - movs r0, 0xBC - lsls r0, 6 - cmp r1, r0 - bne _08023898 - ldrh r0, [r2, 0x2] - cmp r0, 0x2 - beq _080238AC -_08023898: - adds r2, r5, 0 - adds r2, 0x25 - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - b _080238EA - .pool -_080238AC: - adds r4, r5, 0 - adds r4, 0x4E - adds r0, r4, 0 - adds r1, r3, 0 - movs r2, 0xE - bl memcpy - ldrh r0, [r4, 0x6] - strh r0, [r5, 0x2A] - movs r0, 0x5 - ldrsb r0, [r4, r0] - strh r0, [r5, 0x2C] - ldrh r0, [r4, 0x8] - strh r0, [r5, 0x28] - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - adds r0, r5, 0 - bl sub_80216E0 - ldrb r1, [r4, 0x4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080238EA - adds r0, r5, 0 - adds r0, 0x25 - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] -_080238EA: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_802385C - - thumb_func_start sub_80238F0 -sub_80238F0: @ 80238F0 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x5C - movs r1, 0 - movs r2, 0xC - bl memset - adds r0, r4, 0 - adds r0, 0x4E - movs r1, 0 - movs r2, 0xE - bl memset - adds r0, r4, 0 - bl sub_802385C - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x12 - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1E - bl SetGpuReg - adds r0, r4, 0 - adds r0, 0x25 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08023978 - ldrh r1, [r4, 0x28] - ldr r0, =0x00008c9f - cmp r1, r0 - bls _08023964 - adds r0, 0x1 - strh r0, [r4, 0x28] - movs r0, 0x10 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - b _0802396E - .pool -_08023964: - movs r0, 0xF - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC -_0802396E: - movs r1, 0 - movs r0, 0 - strh r0, [r4, 0x10] - strb r1, [r4, 0xC] - b _08023992 -_08023978: - ldrh r0, [r4, 0x26] - adds r0, 0x1 - strh r0, [r4, 0x26] - adds r0, r4, 0 - bl sub_802339C - adds r0, r4, 0 - bl sub_8023558 - adds r0, r4, 0 - bl sub_80236B8 - movs r0, 0 -_08023992: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80238F0 - - thumb_func_start sub_8023998 -sub_8023998: @ 8023998 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x5C - movs r1, 0 - movs r2, 0xC - bl memset - adds r0, r4, 0 - adds r0, 0x4E - movs r1, 0 - movs r2, 0xE - bl memset - adds r0, r4, 0 - bl sub_802385C - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x12 - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1E - bl SetGpuReg - adds r0, r4, 0 - adds r0, 0x25 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08023A20 - ldrh r1, [r4, 0x28] - ldr r0, =0x00008c9f - cmp r1, r0 - bls _08023A0C - adds r0, 0x1 - strh r0, [r4, 0x28] - movs r0, 0x10 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - b _08023A16 - .pool -_08023A0C: - movs r0, 0xF - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC -_08023A16: - movs r1, 0 - movs r0, 0 - strh r0, [r4, 0x10] - strb r1, [r4, 0xC] - b _08023A28 -_08023A20: - adds r0, r4, 0 - bl sub_80236B8 - movs r0, 0 -_08023A28: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8023998 - - thumb_func_start sub_8023A30 -sub_8023A30: @ 8023A30 - push {r4-r7,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0x5 - bls _08023A3C - b _08023BB2 -_08023A3C: - lsls r0, 2 - ldr r1, =_08023A4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08023A4C: - .4byte _08023A64 - .4byte _08023A8C - .4byte _08023ADC - .4byte _08023B5C - .4byte _08023B7A - .4byte _08023B94 -_08023A64: - movs r0, 0x8 - strh r0, [r4, 0x12] - movs r0, 0xD6 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - ldr r2, =0x000003ff - movs r1, 0x8 - bl BlendPalettes - movs r0, 0x9C - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x2 - strb r0, [r1] - b _08023BB2 - .pool -_08023A8C: - movs r1, 0x9C - lsls r1, 1 - adds r5, r4, r1 - ldrb r0, [r5] - subs r0, 0x1 - strb r0, [r5] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _08023AA2 - b _08023BB8 -_08023AA2: - movs r0, 0x1 - negs r0, r0 - ldr r2, =0x000003ff - movs r1, 0 - bl BlendPalettes - ldr r2, =0x00000139 - adds r1, r4, r2 - movs r0, 0x4 - strb r0, [r1] - movs r0, 0 - strb r0, [r5] - ldr r2, =gUnknown_082F326C - ldrb r1, [r1] - lsls r0, r1, 3 - subs r0, r1 - adds r0, r2 - ldrb r0, [r0] - movs r2, 0x9D - lsls r2, 1 - adds r1, r4, r2 - strb r0, [r1] - b _08023BB2 - .pool -_08023ADC: - ldr r7, =gUnknown_082F326C - movs r0, 0x9C - lsls r0, 1 - adds r6, r4, r0 - ldr r1, =0x00000139 - adds r5, r4, r1 - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - ldrb r2, [r6] - adds r0, r2 - adds r0, r7 - movs r1, 0 - ldrsb r1, [r0, r1] - strh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x12 - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1A - bl SetGpuReg - ldrh r1, [r4, 0x2C] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x1E - bl SetGpuReg - ldrb r0, [r6] - adds r0, 0x1 - strb r0, [r6] - movs r1, 0x9D - lsls r1, 1 - adds r2, r4, r1 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r2] - cmp r0, r1 - bcc _08023BB8 - ldrb r0, [r5] - cmp r0, 0 - beq _08023BB2 - subs r0, 0x1 - strb r0, [r5] - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r2] - movs r0, 0 - strb r0, [r6] - b _08023BB8 - .pool -_08023B5C: - movs r0, 0 - strh r0, [r4, 0x2C] - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - b _08023BB2 -_08023B7A: - movs r2, 0x9C - lsls r2, 1 - adds r1, r4, r2 - adds r0, r4, 0 - bl sub_80218D4 - cmp r0, 0 - beq _08023BB8 - bl sub_8010434 - movs r0, 0 - strh r0, [r4, 0x10] - b _08023BB2 -_08023B94: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08023BB8 - movs r0, 0x11 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r1, 0 - movs r0, 0 - strh r0, [r4, 0x10] - strb r1, [r4, 0xC] - b _08023BBA -_08023BB2: - ldrb r0, [r4, 0xC] - adds r0, 0x1 - strb r0, [r4, 0xC] -_08023BB8: - movs r0, 0 -_08023BBA: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8023A30 - - thumb_func_start sub_8023BC0 -sub_8023BC0: @ 8023BC0 - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldrb r0, [r5, 0xC] - cmp r0, 0x1 - beq _08023C04 - cmp r0, 0x1 - bgt _08023BD8 - cmp r0, 0 - beq _08023BE2 - b _08023C9C -_08023BD8: - cmp r0, 0x2 - beq _08023C2A - cmp r0, 0x3 - beq _08023C5C - b _08023C9C -_08023BE2: - movs r0, 0x9 - strh r0, [r5, 0x12] - movs r0, 0x20 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - movs r1, 0x8 - movs r2, 0x1F - bl BlendPalettes - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x4 - strb r0, [r1] - b _08023C9C -_08023C04: - movs r0, 0x9C - lsls r0, 1 - adds r4, r5, r0 - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08023CA2 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - movs r2, 0x1F - bl BlendPalettes - movs r0, 0 - strb r0, [r4] - b _08023C9C -_08023C2A: - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - adds r0, r5, 0 - bl sub_80218D4 - cmp r0, 0 - beq _08023CA2 - bl sub_8010434 - movs r0, 0 - strh r0, [r5, 0x10] - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - b _08023C9C -_08023C5C: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08023CA2 - ldr r0, =gStringVar1 - ldr r1, [r5, 0x1C] - movs r2, 0 - movs r3, 0x6 - bl ConvertIntToDecimalStringN - movs r4, 0 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0x7 - movs r2, 0x1 - movs r3, 0 - bl sub_8024644 - movs r0, 0x13 - strb r0, [r5, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r0, 0 - strh r4, [r5, 0x10] - b _08023CA0 - .pool -_08023C9C: - ldrb r0, [r5, 0xC] - adds r0, 0x1 -_08023CA0: - strb r0, [r5, 0xC] -_08023CA2: - movs r0, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8023BC0 - - thumb_func_start sub_8023CAC -sub_8023CAC: @ 8023CAC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r7, r0, 0 - ldrb r0, [r7, 0xC] - cmp r0, 0x7 - bls _08023CC2 - b _0802402E -_08023CC2: - lsls r0, 2 - ldr r1, =_08023CD0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08023CD0: - .4byte _08023CF0 - .4byte _08023D2A - .4byte _08023D38 - .4byte _08023DA0 - .4byte _08023F20 - .4byte _08023FD0 - .4byte _08023FDC - .4byte _08024010 -_08023CF0: - adds r4, r7, 0 - adds r4, 0x42 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x4 - bl memset - ldrb r0, [r7, 0x8] - lsls r0, 5 - adds r0, r7, r0 - adds r2, r0, 0 - adds r2, 0xB2 - ldrh r1, [r7, 0x28] - ldrh r0, [r2] - cmp r0, r1 - bls _08023D12 - strh r1, [r2] -_08023D12: - ldrb r0, [r7, 0x8] - lsls r0, 5 - adds r0, r7, r0 - adds r0, 0xB2 - ldrh r0, [r0] - strh r0, [r4] - movs r0, 0 - adds r1, r4, 0 - movs r2, 0x2 - bl SendBlock - b _0802402E -_08023D2A: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - bne _08023D36 - b _08024034 -_08023D36: - b _08024004 -_08023D38: - bl GetBlockReceivedStatus - ldr r2, =gUnknown_082F4448 - ldrb r3, [r7, 0x9] - subs r1, r3, 0x2 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - beq _08023D50 - b _08024034 -_08023D50: - movs r0, 0 - mov r8, r0 - adds r4, r7, 0 - adds r4, 0x42 - cmp r8, r3 - bcs _08023D7E - ldr r2, =gBlockRecvBuffer -_08023D5E: - mov r3, r8 - lsls r1, r3, 5 - adds r1, r7, r1 - lsls r0, r3, 8 - adds r0, r2 - ldrh r0, [r0] - adds r1, 0xB2 - strh r0, [r1] - mov r0, r8 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldrb r6, [r7, 0x9] - cmp r8, r6 - bcc _08023D5E -_08023D7E: - movs r0, 0 - strh r0, [r7, 0x10] - strh r0, [r4] - bl ResetBlockReceivedFlags - ldrb r0, [r7, 0x8] - cmp r0, 0 - bne _08023D9C - movs r0, 0x3 - b _08024032 - .pool -_08023D9C: - movs r0, 0x6 - b _08024032 -_08023DA0: - adds r0, r7, 0 - adds r0, 0x68 - movs r1, 0 - movs r2, 0x30 - bl memset - ldrh r1, [r7, 0x28] - adds r0, r7, 0 - adds r0, 0x6C - strh r1, [r0] - movs r0, 0x18 - ldrsh r4, [r7, r0] - ldrh r0, [r7, 0x28] - movs r1, 0x3C - bl __udivsi3 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl __divsi3 - adds r1, r7, 0 - adds r1, 0x6E - strh r0, [r1] - movs r1, 0x30 - ldrsh r0, [r7, r1] - lsls r0, 8 - movs r4, 0xC8 - lsls r4, 6 - adds r1, r4, 0 - bl sub_8151574 - adds r2, r0, 0 - movs r3, 0x32 - ldrsh r1, [r7, r3] - lsls r1, 8 - bl sub_81515FC - adds r2, r0, r4 - asrs r2, 8 - movs r1, 0x7F - adds r0, r2, 0 - ands r0, r1 - adds r1, r7, 0 - adds r1, 0x70 - strh r0, [r1] - lsls r2, 8 - movs r1, 0xC8 - lsls r1, 7 - adds r0, r2, 0 - bl sub_81515FC - adds r2, r0, 0 - ldrb r1, [r7, 0x9] - ldr r0, [r7, 0x1C] - muls r0, r1 - lsls r4, r0, 8 - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_8151574 - adds r4, r0, 0 - asrs r0, r4, 8 - str r0, [r7, 0x68] - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r1, r7, 0 - adds r1, 0x8F - strb r0, [r1] - movs r6, 0 - mov r8, r6 - mov r9, r1 - ldrb r0, [r7, 0x9] - cmp r8, r0 - bcc _08023E44 - b _0802402E -_08023E44: - adds r0, r7, 0 - adds r0, 0x88 - add r0, r8 - mov r1, r8 - strb r1, [r0] - adds r0, r7, 0 - adds r0, 0x90 - add r0, r8 - strb r1, [r0] - mov r3, r8 - lsls r2, r3, 1 - adds r1, r7, 0 - adds r1, 0x74 - adds r1, r2 - lsls r0, r3, 5 - adds r3, r7, r0 - adds r5, r3, 0 - adds r5, 0xAE - ldrh r0, [r5] - strh r0, [r1] - adds r1, r7, 0 - adds r1, 0x72 - ldrh r6, [r1] - adds r0, r6 - strh r0, [r1] - mov r1, r9 - ldrb r0, [r1] - adds r6, r2, 0 - cmp r0, 0x1 - beq _08023EAE - cmp r0, 0x1 - bgt _08023E8A - cmp r0, 0 - beq _08023E90 - b _08023F04 -_08023E8A: - cmp r0, 0x2 - beq _08023ECC - b _08023F04 -_08023E90: - ldrh r0, [r5] - cmp r0, 0 - beq _08023ED2 - adds r0, r3, 0 - adds r0, 0xAC - ldrh r2, [r0] - lsls r2, 8 - adds r0, r2, 0 - movs r1, 0xC8 - lsls r1, 7 - bl sub_8151574 - adds r2, r0, 0 - ldrh r4, [r5] - b _08023EFA -_08023EAE: - ldrh r0, [r5] - cmp r0, 0 - beq _08023ED2 - adds r0, r3, 0 - adds r0, 0xB0 - ldrh r2, [r0] - lsls r2, 8 - adds r0, r2, 0 - movs r1, 0xC8 - lsls r1, 7 - bl sub_8151574 - adds r2, r0, 0 - ldrh r4, [r5] - b _08023EFA -_08023ECC: - ldrh r0, [r5] - cmp r0, 0 - bne _08023ED6 -_08023ED2: - movs r4, 0 - b _08023F04 -_08023ED6: - adds r1, r3, 0 - adds r1, 0xB2 - ldrh r0, [r1] - ldrh r2, [r7, 0x28] - cmp r0, r2 - bcc _08023EE8 - movs r4, 0xC8 - lsls r4, 7 - b _08023F04 -_08023EE8: - ldrh r2, [r1] - lsls r2, 8 - adds r0, r2, 0 - movs r1, 0xC8 - lsls r1, 7 - bl sub_8151574 - adds r2, r0, 0 - ldrh r4, [r7, 0x28] -_08023EFA: - lsls r4, 8 - adds r1, r4, 0 - bl sub_81515FC - adds r4, r0, 0 -_08023F04: - asrs r4, 4 - adds r0, r7, 0 - adds r0, 0x7E - adds r0, r6 - strh r4, [r0] - mov r0, r8 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldrb r3, [r7, 0x9] - cmp r8, r3 - bcc _08023E44 - b _0802402E -_08023F20: - movs r6, 0 - mov r8, r6 - ldrb r0, [r7, 0x9] - subs r0, 0x1 - adds r1, r7, 0 - adds r1, 0x68 - str r1, [sp, 0xC] - cmp r8, r0 - bge _08023FC4 -_08023F32: - ldrb r0, [r7, 0x9] - subs r0, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - mov r2, r8 - adds r2, 0x1 - str r2, [sp, 0x8] - cmp r4, r8 - bls _08023FB4 - adds r3, r7, 0 - adds r3, 0x74 - str r3, [sp] - adds r6, r7, 0 - adds r6, 0x88 - str r6, [sp, 0x4] - movs r0, 0x90 - adds r0, r7 - mov r10, r0 - movs r1, 0x7E - adds r1, r7 - mov r9, r1 -_08023F5C: - subs r2, r4, 0x1 - mov r12, r2 - lsls r6, r2, 1 - ldr r0, [sp] - adds r3, r0, r6 - lsls r5, r4, 1 - adds r1, r0, r5 - ldrh r2, [r3] - ldrh r0, [r1] - cmp r2, r0 - bcs _08023F86 - ldrh r0, [r1] - strh r2, [r1] - strh r0, [r3] - ldr r1, [sp, 0x4] - adds r2, r1, r4 - ldrb r3, [r2] - add r1, r12 - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] -_08023F86: - mov r2, r9 - adds r3, r2, r6 - adds r1, r2, r5 - ldrh r2, [r3] - ldrh r6, [r1] - cmp r2, r6 - bcs _08023FAA - ldrh r0, [r1] - strh r2, [r1] - strh r0, [r3] - mov r0, r10 - adds r2, r0, r4 - ldrb r3, [r2] - mov r1, r10 - add r1, r12 - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] -_08023FAA: - mov r1, r12 - lsls r0, r1, 24 - lsrs r4, r0, 24 - cmp r4, r8 - bhi _08023F5C -_08023FB4: - ldr r2, [sp, 0x8] - lsls r0, r2, 24 - lsrs r0, 24 - mov r8, r0 - ldrb r0, [r7, 0x9] - subs r0, 0x1 - cmp r8, r0 - blt _08023F32 -_08023FC4: - movs r0, 0 - ldr r1, [sp, 0xC] - movs r2, 0x30 - bl SendBlock - b _0802402E -_08023FD0: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _08024034 - b _08024004 -_08023FDC: - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08024034 - adds r4, r7, 0 - adds r4, 0x68 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x30 - bl memset - ldr r1, =gBlockRecvBuffer - adds r0, r4, 0 - movs r2, 0x30 - bl memcpy - bl ResetBlockReceivedFlags -_08024004: - movs r0, 0 - strh r0, [r7, 0x10] - b _0802402E - .pool -_08024010: - bl sub_8020E58 - movs r0, 0x12 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r0, 0 - movs r1, 0xB - strh r1, [r7, 0x12] - strb r0, [r7, 0xC] - adds r1, r7, 0 - adds r1, 0x24 - strb r0, [r1] - b _08024034 -_0802402E: - ldrb r0, [r7, 0xC] - adds r0, 0x1 -_08024032: - strb r0, [r7, 0xC] -_08024034: - movs r0, 0 - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8023CAC - - thumb_func_start sub_8024048 -sub_8024048: @ 8024048 - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldrb r0, [r5, 0xC] - cmp r0, 0x4 - bhi _08024124 - lsls r0, 2 - ldr r1, =_08024064 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08024064: - .4byte _08024078 - .4byte _0802408A - .4byte _0802409C - .4byte _080240CC - .4byte _080240DC -_08024078: - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - adds r0, r5, 0 - bl sub_8022070 - cmp r0, 0 - bne _08024124 - b _0802412A -_0802408A: - movs r0, 0 - bl CopyBgTilemapBufferToVram - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x1E - strb r0, [r1] - b _08024124 -_0802409C: - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080240AE - subs r0, 0x1 - strb r0, [r1] - b _0802412A -_080240AE: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0802412A - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_802222C - b _08024124 - .pool -_080240CC: - ldrh r0, [r5, 0x12] - cmp r0, 0xC - bhi _08024124 - adds r0, 0x1 - movs r1, 0 - strh r0, [r5, 0x12] - strb r1, [r5, 0xC] - b _0802412A -_080240DC: - ldr r0, =gStringVar1 - ldr r1, [r5, 0x1C] - movs r2, 0 - movs r3, 0x6 - bl ConvertIntToDecimalStringN - ldr r4, =gStringVar2 - bl GetBerryPowder - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x6 - bl ConvertIntToDecimalStringN - movs r4, 0 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0x2 - movs r2, 0x3 - movs r3, 0 - bl sub_8024644 - movs r0, 0x13 - strb r0, [r5, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - strb r4, [r5, 0xC] - b _0802412A - .pool -_08024124: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_0802412A: - movs r0, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8024048 - - thumb_func_start sub_8024134 -sub_8024134: @ 8024134 - push {r4,r5,lr} - sub sp, 0x10 - adds r5, r0, 0 - adds r4, r1, 0 - ldrb r0, [r5, 0xC] - cmp r0, 0x4 - bhi _08024218 - lsls r0, 2 - ldr r1, =_08024150 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08024150: - .4byte _08024164 - .4byte _080241A0 - .4byte _080241A6 - .4byte _080241F0 - .4byte _08024204 -_08024164: - ldrh r1, [r5, 0x28] - ldr r0, =0x00008c9f - cmp r1, r0 - bls _08024176 - movs r1, 0x9C - lsls r1, 1 - adds r0, r5, r1 - bl sub_8022554 -_08024176: - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r1, 0x8 - movs r2, 0 - movs r3, 0 - bl sub_8024644 - movs r4, 0 - movs r0, 0x13 - strb r0, [r5, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - strb r4, [r5, 0xC] - b _0802421E - .pool -_080241A0: - bl sub_8010434 - b _08024218 -_080241A6: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _0802421E - movs r0, 0 - movs r1, 0 - bl DrawDialogueFrame - ldr r2, =gText_SavingDontTurnOffPower - movs r0, 0 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0 - movs r1, 0x1 - movs r3, 0 - bl AddTextPrinterParameterized2 - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - ldr r0, =sub_8153688 - movs r1, 0 - bl CreateTask - b _08024218 - .pool -_080241F0: - ldr r0, =sub_8153688 - bl FuncIsActiveTask - lsls r0, 24 - cmp r0, 0 - beq _08024218 - b _0802421E - .pool -_08024204: - movs r0, 0x14 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r1, 0 - movs r0, 0xF - strh r0, [r5, 0x12] - strb r1, [r5, 0xC] - b _0802421E -_08024218: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_0802421E: - movs r0, 0 - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8024134 - - thumb_func_start sub_8024228 -sub_8024228: @ 8024228 - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldrb r0, [r5, 0xC] - cmp r0, 0x1 - beq _0802426A - cmp r0, 0x1 - bgt _08024240 - cmp r0, 0 - beq _08024246 - b _080242D0 -_08024240: - cmp r0, 0x2 - beq _08024270 - b _080242D0 -_08024246: - movs r0, 0x1 - str r0, [sp] - adds r0, r6, 0 - movs r1, 0x4 - movs r2, 0 - movs r3, 0 - bl sub_8024644 - movs r0, 0x14 - strb r0, [r5, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r0, 0 - strb r0, [r5, 0xC] - b _080242D8 -_0802426A: - bl DisplayYesNoMenuDefaultYes - b _080242D0 -_08024270: - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r4, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r4, r0 - beq _080242D6 - adds r0, r5, 0 - adds r0, 0x42 - movs r1, 0 - movs r2, 0xC - bl memset - cmp r4, 0 - bne _080242A2 - bl HasAtLeastOneBerry - lsls r0, 24 - cmp r0, 0 - beq _0802429E - strh r4, [r5, 0x14] - b _080242A6 -_0802429E: - movs r0, 0x3 - b _080242A4 -_080242A2: - movs r0, 0x1 -_080242A4: - strh r0, [r5, 0x14] -_080242A6: - movs r0, 0 - movs r1, 0x1 - bl ClearDialogWindowAndFrame - movs r4, 0 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0x8 - movs r2, 0 - movs r3, 0 - bl sub_8024644 - movs r0, 0x15 - strb r0, [r5, 0xE] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - strb r4, [r5, 0xC] - b _080242D6 -_080242D0: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_080242D6: - movs r0, 0 -_080242D8: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8024228 - - thumb_func_start sub_80242E0 -sub_80242E0: @ 80242E0 - push {r4-r7,lr} - adds r4, r0, 0 - movs r5, 0 - ldrb r0, [r4, 0xC] - cmp r0, 0x1 - beq _08024306 - cmp r0, 0x1 - bgt _080242F6 - cmp r0, 0 - beq _08024300 - b _080243AC -_080242F6: - cmp r0, 0x2 - beq _08024328 - cmp r0, 0x3 - beq _08024336 - b _080243AC -_08024300: - bl sub_8010434 - b _080243AC -_08024306: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _080243B2 - ldrh r0, [r4, 0x14] - adds r1, r4, 0 - adds r1, 0x42 - strh r0, [r1] - adds r0, r4, 0 - adds r0, 0x4E - strh r5, [r0] - movs r0, 0 - movs r2, 0x2 - bl SendBlock - b _080243AC -_08024328: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _080243B2 - strh r5, [r4, 0x10] - b _080243AC -_08024336: - bl GetBlockReceivedStatus - ldr r2, =gUnknown_082F4448 - ldrb r3, [r4, 0x9] - subs r1, r3, 0x2 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bne _080243B2 - adds r7, r4, 0 - adds r7, 0x42 - adds r6, r4, 0 - adds r6, 0x4E - cmp r5, r3 - bcs _08024374 - adds r1, r6, 0 - ldr r2, =gBlockRecvBuffer -_0802435C: - lsls r0, r5, 8 - adds r0, r2 - ldrh r0, [r0] - ldrh r3, [r1] - adds r0, r3 - strh r0, [r1] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r4, 0x9] - cmp r5, r0 - bcc _0802435C -_08024374: - ldrh r0, [r6] - cmp r0, 0 - beq _08024390 - movs r0, 0x17 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - b _0802439A - .pool -_08024390: - movs r0, 0x16 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC -_0802439A: - bl ResetBlockReceivedFlags - movs r1, 0 - movs r0, 0 - strh r0, [r7] - strh r0, [r6] - strh r0, [r4, 0x10] - strb r1, [r4, 0xC] - b _080243B4 -_080243AC: - ldrb r0, [r4, 0xC] - adds r0, 0x1 - strb r0, [r4, 0xC] -_080243B2: - movs r0, 0 -_080243B4: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80242E0 - - thumb_func_start sub_80243BC -sub_80243BC: @ 80243BC - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - ldrb r4, [r5, 0xC] - cmp r4, 0x1 - beq _080243EA - cmp r4, 0x1 - bgt _080243D2 - cmp r4, 0 - beq _080243DC - b _08024434 -_080243D2: - cmp r4, 0x2 - beq _080243F6 - cmp r4, 0x3 - beq _0802441A - b _08024434 -_080243DC: - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0x1 - movs r2, 0 - movs r3, 0x10 - b _08024410 -_080243EA: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - beq _08024434 - b _0802443A -_080243F6: - movs r0, 0 - movs r1, 0x1 - bl ClearDialogWindowAndFrame - adds r0, r5, 0 - bl sub_8021488 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 -_08024410: - bl BeginNormalPaletteFade - bl UpdatePaletteFade - b _08024434 -_0802441A: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _0802443A - movs r0, 0x7 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - movs r0, 0 - strh r4, [r5, 0x12] - b _08024438 -_08024434: - ldrb r0, [r5, 0xC] - adds r0, 0x1 -_08024438: - strb r0, [r5, 0xC] -_0802443A: - movs r0, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80243BC - - thumb_func_start sub_8024444 -sub_8024444: @ 8024444 - push {r4,r5,lr} - sub sp, 0x10 - adds r5, r0, 0 - ldrb r4, [r5, 0xC] - cmp r4, 0x1 - beq _080244BC - cmp r4, 0x1 - bgt _0802445A - cmp r4, 0 - beq _08024460 - b _080244F6 -_0802445A: - cmp r4, 0x2 - beq _080244D4 - b _080244F6 -_08024460: - movs r0, 0 - movs r1, 0 - bl DrawDialogueFrame - ldrh r1, [r5, 0x14] - cmp r1, 0x3 - bne _08024490 - ldr r0, =gUnknown_082F32A4 - ldr r2, [r0, 0x14] - ldrb r3, [r5, 0xB] - str r4, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - movs r0, 0 - movs r1, 0x1 - bl AddTextPrinterParameterized2 - b _080244AC - .pool -_08024490: - ldr r0, =gUnknown_082F32A4 - ldr r2, [r0, 0x18] - ldrb r3, [r5, 0xB] - str r4, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0 - movs r1, 0x1 - bl AddTextPrinterParameterized2 -_080244AC: - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - b _080244F6 - .pool -_080244BC: - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _080244FC - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x78 - strb r0, [r1] - b _080244F6 -_080244D4: - movs r0, 0x9C - lsls r0, 1 - adds r1, r5, r0 - ldrb r0, [r1] - adds r4, r0, 0 - cmp r4, 0 - beq _080244E8 - subs r0, 0x1 - strb r0, [r1] - b _080244FC -_080244E8: - movs r0, 0x18 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - strb r4, [r5, 0xC] - b _080244FC -_080244F6: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_080244FC: - movs r0, 0 - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8024444 - - thumb_func_start sub_8024508 -sub_8024508: @ 8024508 - push {r4,r5,lr} - adds r5, r0, 0 - ldrb r4, [r5, 0xC] - cmp r4, 0x1 - beq _08024528 - cmp r4, 0x1 - bgt _0802451C - cmp r4, 0 - beq _08024522 - b _08024558 -_0802451C: - cmp r4, 0x2 - beq _08024538 - b _08024558 -_08024522: - bl sub_8010434 - b _08024558 -_08024528: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _0802455E - bl sub_800AC34 - b _08024558 -_08024538: - ldr r0, =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _0802455E - movs r0, 0x19 - strb r0, [r5, 0xE] - movs r0, 0x5 - movs r1, 0x1 - movs r2, 0 - bl sub_8022BEC - strb r4, [r5, 0xC] - b _0802455E - .pool -_08024558: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_0802455E: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8024508 - - thumb_func_start sub_8024568 -sub_8024568: @ 8024568 - push {lr} - movs r0, 0 - bl sub_8020C0C - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_8024568 - - thumb_func_start sub_8024578 -sub_8024578: @ 8024578 - push {r4-r6,lr} - adds r4, r0, 0 - movs r5, 0 - movs r0, 0x33 - bl IncrementGameStat - strb r5, [r4, 0xD] - movs r1, 0 - strh r5, [r4, 0x10] - movs r0, 0x2 - strh r0, [r4, 0x12] - strh r5, [r4, 0x14] - str r5, [r4, 0x1C] - strh r5, [r4, 0x18] - strh r5, [r4, 0x1A] - str r5, [r4, 0x20] - adds r0, r4, 0 - adds r0, 0x24 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x25 - movs r0, 0 - strb r0, [r1] - strh r5, [r4, 0x26] - strh r5, [r4, 0x28] - strh r5, [r4, 0x2E] - ldr r0, =0x0000ffff - strh r0, [r4, 0x32] - strh r5, [r4, 0x30] - strh r5, [r4, 0x34] - movs r6, 0 - movs r3, 0 -_080245B8: - lsls r0, r5, 5 - adds r2, r4, r0 - adds r1, r2, 0 - adds r1, 0xA4 - ldr r0, =0x0000ffff - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0xA6 - strh r3, [r0] - adds r0, 0x2 - strh r3, [r0] - adds r1, 0x6 - movs r0, 0x1 - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0xAC - strh r3, [r0] - adds r0, 0x2 - strh r3, [r0] - adds r0, 0x2 - strh r3, [r0] - adds r0, 0x2 - strh r3, [r0] - adds r0, 0x2 - strb r6, [r0] - adds r0, 0x1 - strb r6, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bls _080245B8 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8024578 - - thumb_func_start sub_8024604 -sub_8024604: @ 8024604 - push {r4-r6,lr} - sub sp, 0x8 - str r2, [sp, 0x4] - ldr r5, [sp, 0x18] - ldr r6, [sp, 0x1C] - ldr r4, [sp, 0x20] - mov r2, sp - strh r4, [r2] - add r4, sp, 0x4 - ldrb r2, [r4] - strb r2, [r0] - ldrb r2, [r4, 0x1] - strb r2, [r0, 0x1] - ldrb r2, [r4, 0x2] - strb r2, [r0, 0x2] - ldrb r2, [r4, 0x3] - strb r2, [r0, 0x3] - strb r3, [r0, 0x4] - strb r5, [r0, 0x5] - strb r6, [r0, 0x6] - mov r2, sp - ldrb r2, [r2] - strb r2, [r0, 0x7] - mov r2, sp - ldrb r2, [r2, 0x1] - strb r2, [r0, 0x8] - strb r1, [r0, 0x9] - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8024604 - - thumb_func_start sub_8024644 -sub_8024644: @ 8024644 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, [sp, 0x10] - mov r4, sp - strh r3, [r4] - strb r1, [r0] - strb r2, [r0, 0x1] - mov r1, sp - ldrb r1, [r1] - strb r1, [r0, 0x2] - mov r1, sp - ldrb r1, [r1, 0x1] - strb r1, [r0, 0x3] - strb r5, [r0, 0x4] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8024644 - - .align 2, 0 @ don't pad with nop diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 2260dc4a3..562796c4b 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1101,16 +1101,16 @@ .2byte \index .endm - @ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white. - .macro fadescreen effect:req + @ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK) + .macro fadescreen mode:req .byte 0x97 - .byte \effect + .byte \mode .endm - @ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white. Other modes may exist. - .macro fadescreenspeed effect:req, speed:req + @ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK) + .macro fadescreenspeed mode:req, speed:req .byte 0x98 - .byte \effect + .byte \mode .byte \speed .endm @@ -1517,9 +1517,9 @@ .4byte \pointer .endm - .macro fadescreenswapbuffers byte:req + .macro fadescreenswapbuffers mode:req .byte 0xdc - .byte \byte + .byte \mode .endm .macro buffertrainerclassname out:req, class:req diff --git a/data/event_scripts.s b/data/event_scripts.s index 9b14bf6bc..2b9d15848 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -24,6 +24,7 @@ #include "constants/field_poison.h" #include "constants/field_specials.h" #include "constants/field_tasks.h" +#include "constants/field_weather.h" #include "constants/flags.h" #include "constants/frontier_util.h" #include "constants/game_stat.h" @@ -720,9 +721,9 @@ Common_EventScript_ShowPokemonCenterSign:: @ 8271E73 end Common_ShowEasyChatScreen:: @ 8271E7C - fadescreen 1 + fadescreen FADE_TO_BLACK special ShowEasyChatScreen - fadescreen 0 + fadescreen FADE_FROM_BLACK return Common_EventScript_ReadyPetalburgGymForBattle:: @ 8271E84 @@ -773,17 +774,17 @@ Common_EventScript_PlayGymBadgeFanfare:: @ 827207E return Common_EventScript_OutOfCenterPartyHeal:: @ 8272083 - fadescreen 1 + fadescreen FADE_TO_BLACK playfanfare MUS_ME_ASA waitfanfare special HealPlayerParty - fadescreen 0 + fadescreen FADE_FROM_BLACK return EventScript_RegionMap:: @ 827208F lockall msgbox Common_Text_LookCloserAtMap, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK special FieldShowRegionMap waitstate releaseall @@ -868,7 +869,7 @@ Common_EventScript_FerryDepartIsland:: @ 8272250 .include "data/scripts/kecleon.inc" Common_EventScript_NameReceivedPartyMon:: @ 82723DD - fadescreen 1 + fadescreen FADE_TO_BLACK special ChangePokemonNickname waitstate return @@ -1045,16 +1046,16 @@ Common_EventScript_DirectCornerAttendant:: @ 8273767 end Common_EventScript_RemoveStaticPokemon:: @ 827376D - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK release end Common_EventScript_LegendaryFlewAway:: @ 8273776 - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK bufferspeciesname 0, VAR_0x8004 msgbox gText_LegendaryFlewAway, MSGBOX_DEFAULT release diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc index 479e1acd9..45ad72257 100644 --- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc @@ -240,7 +240,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge:: @ 825789A arena_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc index dcf50b963..472a4a2a2 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc @@ -133,7 +133,7 @@ BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: @ 8255E47 goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleArenaLobby_Text_SelectThreeMons, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_PARTY_SIZE diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc index 34f99e5cf..7b5fcd9b4 100644 --- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc @@ -166,7 +166,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249ABF:: @ 8249ABF goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_249C15 frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleDomeLobby_Text_24A26E, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_PARTY_SIZE @@ -367,7 +367,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249D84:: @ 8249D84 call_if_eq BattleFrontier_BattleDomeLobby_EventScript_249DDB compare VAR_RESULT, 3 call_if_eq BattleFrontier_BattleDomeLobby_EventScript_249DE4 - fadescreen 1 + fadescreen FADE_TO_BLACK dome_showresultstree waitstate end @@ -540,11 +540,12 @@ BattleFrontier_BattleDomeLobby_Text_24A51D: @ 824A51D .string "Here is your prize for your Battle\n" .string "Tournament victory.$" -VerdanturfTown_BattleTentLobby_Text_24A554: @ 824A554 +BattleFrontier_BattleDomeLobby_Text_ReceivedPrize: @ 824A554 .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -VerdanturfTown_BattleTentLobby_Text_24A56E: @ 824A56E +@ Unused +BattleFrontier_BattleDomeLobby_Text_BagFullMakeRoom: @ 824A56E .string "Oh, your BAG appears to be full.\p" .string "Please make room in your BAG, then come\n" .string "see me.$" diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc index b8614fa3f..ca44f7b78 100644 --- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc @@ -91,20 +91,20 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3BB:: @ 824B3BB dome_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3DD:: @ 824B3DD msgbox BattleFrontier_BattleDomePreBattleRoom_Text_24B9B5, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK dome_showopponentinfo waitstate goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3F5:: @ 824B3F5 call BattleFrontier_BattleDomePreBattleRoom_EventScript_24B40A - fadescreen 1 + fadescreen FADE_TO_BLACK dome_showtourneytree waitstate goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F @@ -138,7 +138,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B46D:: @ 824B46D message BattleFrontier_BattleDomePreBattleRoom_Text_24B70C waitmessage waitbuttonpress - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, 2 @ 2 of the 3 party mons are selected for battle @@ -227,7 +227,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B5C7:: @ 824B5C7 waitfanfare special HealPlayerParty call BattleFrontier_BattleDomePreBattleRoom_EventScript_24B600 - fadescreen 1 + fadescreen FADE_TO_BLACK dome_showstatictourneytree waitstate goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc index 701ea9a86..dd5440299 100644 --- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc @@ -39,7 +39,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom:: @ 8259AF9 call BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType call BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentStyle msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK factory_setswapped factory_rentmons waitstate @@ -163,7 +163,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon:: @ 8259D98 case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons:: @ 8259DF2 - fadescreen 1 + fadescreen FADE_TO_BLACK factory_swapmons waitstate compare VAR_RESULT, 1 @@ -208,7 +208,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_PauseChallenge:: @ 8259E47 factory_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc index b79af5202..c7d4893ff 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc @@ -168,7 +168,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge:: @ 824FB3F palace_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc index b0e701cf4..d7acb52aa 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc @@ -155,7 +155,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: @ 824D9E6 goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattlePalaceLobby_Text_NowSelectThreeMons, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_PARTY_SIZE diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index 5079b9e31..d2cf3fe32 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -118,7 +118,7 @@ BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: @ 825B8BB goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattlePikeLobby_Text_PleaseChooseThreeMons, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_PARTY_SIZE diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc index 294123f40..a9da7a092 100644 --- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc @@ -125,7 +125,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_PauseChallenge:: @ 825C9FD pike_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc index f98cddd87..c23f62d78 100644 --- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc @@ -131,7 +131,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: @ 8250904 goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattlePyramidLobby_Text_SelectThreeMons, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_PARTY_SIZE diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc index c778627de..48e1496e1 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc @@ -146,7 +146,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_241E22:: @ 8241E22 tower_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc index 5bb0831af..df0145990 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc @@ -219,7 +219,7 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_2492DB:: @ 82492DB tower_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index d9fe11bc5..ef9c60a66 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -216,7 +216,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23E984:: @ 823E984 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_2407A6, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_PARTY_SIZE @@ -283,7 +283,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EAED:: @ 823EAED goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_240A50, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_DOUBLES_PARTY_SIZE @@ -351,7 +351,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EC59:: @ 823EC59 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_240DDB, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE @@ -418,7 +418,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EDC2:: @ 823EDC2 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_24115E, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK call BattleFrontier_EventScript_GetLvlMode copyvar VAR_0x8004, VAR_RESULT setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE @@ -1003,11 +1003,12 @@ BattleFrontier_BattleTowerLobby_Text_23F641: @ 823F641 .string "you have earned this fabulous prize!\p" .string "$" -SlateportCity_BattleTentLobby_Text_23F68C: @ 823F68C +BattleFrontier_BattleTowerLobby_Text_ReceivedPrize: @ 823F68C .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -SlateportCity_BattleTentLobby_Text_23F6A6: @ 823F6A6 +@ Unused +BattleFrontier_BattleTowerLobby_Text_BagFullMakeRoom: @ 823F6A6 .string "Oh, your BAG appears to be full.\p" .string "Please make room in your BAG, then come\n" .string "see me.$" diff --git a/data/maps/BattleFrontier_Lounge7/scripts.inc b/data/maps/BattleFrontier_Lounge7/scripts.inc index 97e41cd96..3dd8fc98c 100644 --- a/data/maps/BattleFrontier_Lounge7/scripts.inc +++ b/data/maps/BattleFrontier_Lounge7/scripts.inc @@ -264,7 +264,7 @@ BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: @ 826564F BattleFrontier_Lounge7_EventScript_TeachTutorMove:: @ 8265696 msgbox BattleFrontier_Lounge7_Text_TeachMoveToWhichMon, MSGBOX_DEFAULT special GetBattleFrontierTutorMoveIndex - fadescreen 1 + fadescreen FADE_TO_BLACK special CloseBattlePointsWindow special CloseBattleFrontierTutorWindow special ChooseMonForMoveTutor diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc index 378819f43..552f3b095 100644 --- a/data/maps/CaveOfOrigin_B1F/scripts.inc +++ b/data/maps/CaveOfOrigin_B1F/scripts.inc @@ -50,12 +50,12 @@ CaveOfOrigin_B1F_EventScript_AtSkyPillar:: @ 823584D msgbox CaveOfOrigin_B1F_Text_WellHeadToSkyPillar, MSGBOX_DEFAULT closemessage playse SE_KAIDAN - fadescreenspeed 1, 4 + fadescreenspeed FADE_TO_BLACK, 4 setflag FLAG_WALLACE_GOES_TO_SKY_PILLAR setvar VAR_SOOTOPOLIS_CITY_STATE, 3 removeobject 1 clearflag FLAG_HIDE_SKY_PILLAR_WALLACE - fadescreen 0 + fadescreen FADE_FROM_BLACK release end diff --git a/data/maps/EverGrandeCity_HallOfFame/scripts.inc b/data/maps/EverGrandeCity_HallOfFame/scripts.inc index e7acaa868..b377271ad 100644 --- a/data/maps/EverGrandeCity_HallOfFame/scripts.inc +++ b/data/maps/EverGrandeCity_HallOfFame/scripts.inc @@ -52,7 +52,7 @@ EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: @ 8229850 EverGrandeCity_HallOfFame_EventScript_GameClearMale:: @ 82298E9 setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F - fadescreenspeed 1, 24 + fadescreenspeed FADE_TO_BLACK, 24 special GameClear waitstate releaseall @@ -60,7 +60,7 @@ EverGrandeCity_HallOfFame_EventScript_GameClearMale:: @ 82298E9 EverGrandeCity_HallOfFame_EventScript_GameClearFemale:: @ 82298F5 setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F - fadescreenspeed 1, 24 + fadescreenspeed FADE_TO_BLACK, 24 special GameClear waitstate releaseall diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc index f7410a31c..439b37f8c 100644 --- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc @@ -1,50 +1,53 @@ FallarborTown_BattleTentBattleRoom_MapScripts:: @ 8200899 map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_BattleTentBattleRoom_OnTransition - map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentBattleRoom_MapScript2_2008DD - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentBattleRoom_MapScript2_200BB0 + map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentBattleRoom_OnFrame + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentBattleRoom_OnWarp .byte 0 + @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden + @ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1 + @ The opponent is represented by object event 3, which has the gfx id VAR_OBJ_GFX_ID_0 + FallarborTown_BattleTentBattleRoom_OnTransition: @ 82008A9 - call FallarborTown_BattleTentBattleRoom_EventScript_2008AF + call FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx end -FallarborTown_BattleTentBattleRoom_EventScript_2008AF:: @ 82008AF +FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 82008AF checkplayergender compare VAR_RESULT, MALE - goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2008C7 + goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale compare VAR_RESULT, FEMALE - goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2008D2 + goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return -FallarborTown_BattleTentBattleRoom_EventScript_2008C7:: @ 82008C7 +FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 82008C7 setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -FallarborTown_BattleTentBattleRoom_EventScript_2008D2:: @ 82008D2 +FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 82008D2 setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -FallarborTown_BattleTentBattleRoom_MapScript2_2008DD: @ 82008DD - map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentBattleRoom_EventScript_2008E7 +FallarborTown_BattleTentBattleRoom_OnFrame: @ 82008DD + map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom .2byte 0 -FallarborTown_BattleTentBattleRoom_EventScript_2008E7:: @ 82008E7 +FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82008E7 lockall showobjectat 1, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM - applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B8D + applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 0 - goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_200B73 - -FallarborTown_BattleTentBattleRoom_EventScript_20090F:: @ 820090F + goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge +FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820090F tower_setopponent addobject 3 - applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_200B96 + applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter waitmovement 0 - applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA3 + applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump playse SE_W187 waitse waitmovement 0 @@ -54,40 +57,38 @@ FallarborTown_BattleTentBattleRoom_EventScript_20090F:: @ 820090F waitmessage call BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle switch VAR_RESULT - case 1, FallarborTown_BattleTentBattleRoom_EventScript_20099C - applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA3 + case 1, FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent + applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump playse SE_W173 waitse waitmovement 0 fallarbortent_getopponentname msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent, MSGBOX_DEFAULT - -FallarborTown_BattleTentBattleRoom_EventScript_20097E:: @ 820097E +FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 820097E frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate -FallarborTown_BattleTentBattleRoom_EventScript_20099C:: @ 820099C - applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA3 +FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 820099C + applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump playse SE_BAN waitse waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsPlayer, MSGBOX_DEFAULT closemessage - -FallarborTown_BattleTentBattleRoom_EventScript_2009B3:: @ 82009B3 +FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: @ 82009B3 frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT switch VAR_RESULT - case 3, FallarborTown_BattleTentBattleRoom_EventScript_200AF3 - applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_200B9E + case 3, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon + applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_OpponentExit waitmovement 0 removeobject 3 - applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA6 + applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer waitmovement 0 - applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B94 + applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored, MSGBOX_DEFAULT special LoadPlayerParty @@ -96,99 +97,102 @@ FallarborTown_BattleTentBattleRoom_EventScript_2009B3:: @ 82009B3 playfanfare MUS_ME_ASA waitfanfare special HealPlayerParty - -FallarborTown_BattleTentBattleRoom_EventScript_200A2A:: @ 8200A2A +FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 8200A2A frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 - call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_200B43 + call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent compare VAR_RESULT, 2 - call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_200B4A + call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 switch VAR_RESULT - case 0, FallarborTown_BattleTentBattleRoom_EventScript_200AD8 - case 1, FallarborTown_BattleTentBattleRoom_EventScript_200A78 - case 2, FallarborTown_BattleTentBattleRoom_EventScript_200AA6 + case 0, FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge + case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge + case 2, FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge -FallarborTown_BattleTentBattleRoom_EventScript_200A78:: @ 8200A78 +FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 8200A78 msgbox BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown, MSGBOX_YESNO switch VAR_RESULT - case NO, FallarborTown_BattleTentBattleRoom_EventScript_200A2A - case YES, FallarborTown_BattleTentBattleRoom_EventScript_200B51 - case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_200A2A + case NO, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge + case YES, FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge + case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -FallarborTown_BattleTentBattleRoom_EventScript_200AA6:: @ 8200AA6 +FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 8200AA6 message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, 0 switch VAR_RESULT - case 1, FallarborTown_BattleTentBattleRoom_EventScript_200A2A - case 0, FallarborTown_BattleTentBattleRoom_EventScript_20097E - case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_200A2A + case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge + case 0, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost + case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -FallarborTown_BattleTentBattleRoom_EventScript_200AD8:: @ 8200AD8 +FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 8200AD8 closemessage - applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BAB + applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos waitmovement 0 - applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B92 + applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle waitmovement 0 - goto FallarborTown_BattleTentBattleRoom_EventScript_20090F + goto FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter waitstate -FallarborTown_BattleTentBattleRoom_EventScript_200AF3:: @ 8200AF3 +FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8200AF3 delay 60 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate + +@ Unreachable code block? The flow into the next block also doesnt make sense arena_get ARENA_DATA_WIN_STREAK compare VAR_RESULT, MAX_STREAK - goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2009B3 + goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum addvar VAR_RESULT, 1 arena_set ARENA_DATA_WIN_STREAK, VAR_RESULT -FallarborTown_BattleTentBattleRoom_EventScript_200B43:: @ 8200B43 +@ See above + +FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8200B43 message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -FallarborTown_BattleTentBattleRoom_EventScript_200B4A:: @ 8200B4A +FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8200B4A message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -FallarborTown_BattleTentBattleRoom_EventScript_200B51:: @ 8200B51 +FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 8200B51 message BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait waitmessage fallarbortent_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end -FallarborTown_BattleTentBattleRoom_EventScript_200B73:: @ 8200B73 - applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA6 +FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge:: @ 8200B73 + applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer waitmovement 0 - applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B94 + applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant waitmovement 0 - goto FallarborTown_BattleTentBattleRoom_EventScript_200A2A + goto FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge end -FallarborTown_BattleTentBattleRoom_Movement_200B8D: @ 8200B8D +FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8200B8D walk_up walk_up walk_up walk_in_place_fastest_right step_end -FallarborTown_BattleTentBattleRoom_Movement_200B92: @ 8200B92 +FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle: @ 8200B92 walk_in_place_fastest_right step_end -FallarborTown_BattleTentBattleRoom_Movement_200B94: @ 8200B94 +FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant: @ 8200B94 walk_in_place_fastest_left step_end -FallarborTown_BattleTentBattleRoom_Movement_200B96: @ 8200B96 +FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 8200B96 walk_down walk_down walk_down @@ -196,41 +200,42 @@ FallarborTown_BattleTentBattleRoom_Movement_200B96: @ 8200B96 walk_in_place_fastest_left step_end -FallarborTown_BattleTentBattleRoom_Movement_200B9C: @ 8200B9C +@ Unused +FallarborTown_BattleTentBattleRoom_Movement_OpponentStepForward: @ 8200B9C walk_left step_end -FallarborTown_BattleTentBattleRoom_Movement_200B9E: @ 8200B9E +FallarborTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8200B9E walk_up walk_up walk_up walk_up step_end -FallarborTown_BattleTentBattleRoom_Movement_200BA3: @ 8200BA3 +FallarborTown_BattleTentBattleRoom_Movement_AttendantJump: @ 8200BA3 disable_jump_landing_ground_effect jump_in_place_down step_end -FallarborTown_BattleTentBattleRoom_Movement_200BA6: @ 8200BA6 +FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer: @ 8200BA6 walk_down walk_down walk_down walk_in_place_fastest_right step_end -FallarborTown_BattleTentBattleRoom_Movement_200BAB: @ 8200BAB +FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos: @ 8200BAB walk_up walk_up walk_up walk_in_place_fastest_down step_end -FallarborTown_BattleTentBattleRoom_MapScript2_200BB0: @ 8200BB0 - map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentBattleRoom_EventScript_200BBA +FallarborTown_BattleTentBattleRoom_OnWarp: @ 8200BB0 + map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects .2byte 0 -FallarborTown_BattleTentBattleRoom_EventScript_200BBA:: @ 8200BBA +FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 8200BBA hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM hideobjectat 1, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM removeobject 3 diff --git a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc index 82c9c97a1..53f5a2b42 100644 --- a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc +++ b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc @@ -1,21 +1,21 @@ FallarborTown_BattleTentCorridor_MapScripts:: @ 82006A7 - map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentCorridor_MapScript2_2006AD + map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentCorridor_OnFrame .byte 0 -FallarborTown_BattleTentCorridor_MapScript2_2006AD: @ 82006AD - map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentCorridor_EventScript_2006B7 +FallarborTown_BattleTentCorridor_OnFrame: @ 82006AD + map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentCorridor_EventScript_EnterCorridor .2byte 0 -FallarborTown_BattleTentCorridor_EventScript_2006B7:: @ 82006B7 +FallarborTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 82006B7 lockall setvar VAR_TEMP_0, 1 - applymovement 1, FallarborTown_BattleTentCorridor_Movement_2006FB - applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_2006FB + applymovement 1, FallarborTown_BattleTentCorridor_Movement_WalkToDoor + applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_WalkToDoor waitmovement 0 opendoor 2, 1 waitdooranim - applymovement 1, FallarborTown_BattleTentCorridor_Movement_200701 - applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_200700 + applymovement 1, FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor + applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor waitmovement 0 closedoor 2, 1 waitdooranim @@ -25,40 +25,44 @@ FallarborTown_BattleTentCorridor_EventScript_2006B7:: @ 82006B7 releaseall end -FallarborTown_BattleTentCorridor_Movement_2006FB: @ 82006FB +FallarborTown_BattleTentCorridor_Movement_WalkToDoor: @ 82006FB walk_up walk_up walk_up walk_up step_end -FallarborTown_BattleTentCorridor_Movement_200700: @ 8200700 +FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor: @ 8200700 walk_up - -FallarborTown_BattleTentCorridor_Movement_200701: @ 8200701 +FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 8200701 walk_up set_invisible step_end -FallarborTown_BattleTentCorridor_Text_200704: @ 8200704 +@ Leftover text from when this was a Contest Hall in R/S +@ Unused +FallarborTown_ContestHall_Text_DoAllRightInPreliminary: @ 8200704 .string "We do all right in the preliminary round,\n" .string "but we can never win the appeals…\p" .string "Maybe it means I have to watch what\n" .string "other contestants are doing…$" -FallarborTown_BattleTentCorridor_Text_200791: @ 8200791 +@ Unused +FallarborTown_ContestHall_Text_MonAllTheseRibbons: @ 8200791 .string "See!\n" .string "My POKéMON won all these RIBBONS!\p" .string "Have your POKéMON earned any RIBBONS?\n" .string "You can check them on your POKéNAV.$" -FallarborTown_BattleTentCorridor_Text_200802: @ 8200802 +@ Unused +FallarborTown_ContestHall_Text_CantWinEverywhere: @ 8200802 .string "I can't beat GYM LEADERS…\p" .string "I can't win any CONTESTS…\p" .string "I've been here, there, and everywhere,\n" .string "and it's all for naught…$" -FallarborTown_BattleTentCorridor_Text_200876: @ 8200876 +@ Unused +FallarborTown_ContestHall_Text_SuperRankStage: @ 8200876 .string "POKéMON CONTESTS\n" .string "SUPER RANK STAGE!$" diff --git a/data/maps/FallarborTown_BattleTentLobby/map.json b/data/maps/FallarborTown_BattleTentLobby/map.json index 2339a3732..d0a1855f8 100644 --- a/data/maps/FallarborTown_BattleTentLobby/map.json +++ b/data/maps/FallarborTown_BattleTentLobby/map.json @@ -24,7 +24,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "FallarborTown_BattleTentLobby_EventScript_200001", + "script": "FallarborTown_BattleTentLobby_EventScript_Attendant", "flag": "0" }, { @@ -37,7 +37,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "FallarborTown_BattleTentLobby_EventScript_20020D", + "script": "FallarborTown_BattleTentLobby_EventScript_Hiker", "flag": "0" }, { @@ -50,7 +50,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "FallarborTown_BattleTentLobby_EventScript_200216", + "script": "FallarborTown_BattleTentLobby_EventScript_LittleBoy", "flag": "0" }, { @@ -63,7 +63,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "FallarborTown_BattleTentLobby_EventScript_20021F", + "script": "FallarborTown_BattleTentLobby_EventScript_Lass", "flag": "0" }, { @@ -76,7 +76,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "FallarborTown_BattleTentLobby_EventScript_200228", + "script": "FallarborTown_BattleTentLobby_EventScript_Scott", "flag": "FLAG_HIDE_FALLARBOR_TOWN_BATTLE_TENT_SCOTT" } ], @@ -104,7 +104,7 @@ "y": 5, "elevation": 0, "player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY", - "script": "FallarborTown_BattleTentLobby_EventScript_20024F" + "script": "FallarborTown_BattleTentLobby_EventScript_RulesBoard" } ] } diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc index 8021b2622..cfcffa9ca 100644 --- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc +++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc @@ -1,32 +1,32 @@ FallarborTown_BattleTentLobby_MapScripts:: @ 81FFE66 - map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentLobby_MapScript2_1FFE85 - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentLobby_MapScript2_1FFE71 + map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentLobby_OnFrame + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentLobby_OnWarp .byte 0 -FallarborTown_BattleTentLobby_MapScript2_1FFE71: @ 81FFE71 - map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentLobby_EventScript_1FFE7B +FallarborTown_BattleTentLobby_OnWarp: @ 81FFE71 + map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth .2byte 0 -FallarborTown_BattleTentLobby_EventScript_1FFE7B:: @ 81FFE7B +FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 81FFE7B setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -FallarborTown_BattleTentLobby_MapScript2_1FFE85: @ 81FFE85 - map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentLobby_EventScript_1FFEAF - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_1FFEB8 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_1FFFCD - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, FallarborTown_BattleTentLobby_EventScript_1FFEED - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_1FFF93 +FallarborTown_BattleTentLobby_OnFrame: @ 81FFE85 + map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_ResumeChallenge + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, FallarborTown_BattleTentLobby_EventScript_WonChallenge + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_LostChallenge .2byte 0 -FallarborTown_BattleTentLobby_EventScript_1FFEAF:: @ 81FFEAF +FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus:: @ 81FFEAF frontier_getstatus end -FallarborTown_BattleTentLobby_EventScript_1FFEB8:: @ 81FFEB8 +FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 81FFEB8 lockall - msgbox FallarborTown_BattleTentLobby_Text_2C4DED, MSGBOX_DEFAULT + msgbox FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT closemessage frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 setvar VAR_TEMP_0, 255 @@ -34,10 +34,10 @@ FallarborTown_BattleTentLobby_EventScript_1FFEB8:: @ 81FFEB8 releaseall end -FallarborTown_BattleTentLobby_EventScript_1FFEED:: @ 81FFEED +FallarborTown_BattleTentLobby_EventScript_WonChallenge:: @ 81FFEED lockall - msgbox FallarborTown_BattleTentLobby_Text_2C4EC3, MSGBOX_DEFAULT - message FallarborTown_BattleTentLobby_Text_2C4EFF + msgbox FallarborTown_BattleTentLobby_Text_BeatThreeTrainers, MSGBOX_DEFAULT + message FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame waitmessage fallarbortent_setrandomprize frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 @@ -45,103 +45,102 @@ FallarborTown_BattleTentLobby_EventScript_1FFEED:: @ 81FFEED playse SE_SAVE waitse -FallarborTown_BattleTentLobby_EventScript_1FFF27:: @ 81FFF27 - msgbox FallarborTown_BattleTentLobby_Text_2C4F22, MSGBOX_DEFAULT +FallarborTown_BattleTentLobby_EventScript_GivePrize:: @ 81FFF27 + msgbox FallarborTown_BattleTentLobby_Text_PresentYouWithPrize, MSGBOX_DEFAULT fallarbortent_giveprize switch VAR_RESULT - case 0, FallarborTown_BattleTentLobby_EventScript_1FFF73 + case FALSE, FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 - message FallarborTown_BattleTentLobby_Text_2C4F69 + message FallarborTown_BattleTentLobby_Text_ReceivedPrize waitmessage playfanfare MUS_FANFA4 waitfanfare - msgbox FallarborTown_BattleTentLobby_Text_2C501F, MSGBOX_DEFAULT + msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -FallarborTown_BattleTentLobby_EventScript_1FFF73:: @ 81FFF73 - msgbox FallarborTown_BattleTentLobby_Text_2C4F83, MSGBOX_DEFAULT +FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 81FFF73 + msgbox FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize, MSGBOX_DEFAULT waitmessage closemessage setvar VAR_TEMP_0, 255 releaseall end -FallarborTown_BattleTentLobby_EventScript_1FFF84:: @ 81FFF84 +FallarborTown_BattleTentLobby_EventScript_PrizeWaiting:: @ 81FFF84 lockall - msgbox FallarborTown_BattleTentLobby_Text_2C4EC3, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_1FFF27 + msgbox FallarborTown_BattleTentLobby_Text_BeatThreeTrainers, MSGBOX_DEFAULT + goto FallarborTown_BattleTentLobby_EventScript_GivePrize end -FallarborTown_BattleTentLobby_EventScript_1FFF93:: @ 81FFF93 +FallarborTown_BattleTentLobby_EventScript_LostChallenge:: @ 81FFF93 lockall - message FallarborTown_BattleTentLobby_Text_2C4FD7 + message FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving waitmessage frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 fallarbortent_save 0 playse SE_SAVE waitse - msgbox FallarborTown_BattleTentLobby_Text_2C501F, MSGBOX_DEFAULT + msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -FallarborTown_BattleTentLobby_EventScript_1FFFCD:: @ 81FFFCD +FallarborTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 81FFFCD lockall - message FallarborTown_BattleTentLobby_Text_2C504C + message FallarborTown_BattleTentLobby_Text_LookingForwardToArrival waitmessage fallarbortent_save CHALLENGE_STATUS_SAVING playse SE_SAVE waitse frontier_set FRONTIER_DATA_PAUSED, FALSE setvar VAR_TEMP_0, 255 - goto FallarborTown_BattleTentLobby_EventScript_20013C + goto FallarborTown_BattleTentLobby_EventScript_EnterChallenge -FallarborTown_BattleTentLobby_EventScript_200001:: @ 8200001 +FallarborTown_BattleTentLobby_EventScript_Attendant:: @ 8200001 lock faceplayer fallarbortent_getprize - compare VAR_RESULT, 0 - goto_if_ne FallarborTown_BattleTentLobby_EventScript_1FFF84 + compare VAR_RESULT, ITEM_NONE + goto_if_ne FallarborTown_BattleTentLobby_EventScript_PrizeWaiting special SavePlayerParty - msgbox FallarborTown_BattleTentLobby_Text_2C47EB, MSGBOX_DEFAULT - -FallarborTown_BattleTentLobby_EventScript_200021:: @ 8200021 - message FallarborTown_BattleTentLobby_Text_2C4843 + msgbox FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT +FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8200021 + message FallarborTown_BattleTentLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, 0 switch VAR_RESULT - case 0, FallarborTown_BattleTentLobby_EventScript_20005D - case 1, FallarborTown_BattleTentLobby_EventScript_200169 - case 2, FallarborTown_BattleTentLobby_EventScript_2001C5 - case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_2001C5 + case 0, FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge + case 1, FallarborTown_BattleTentLobby_EventScript_ExplainChallenge + case 2, FallarborTown_BattleTentLobby_EventScript_CancelChallenge + case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_CancelChallenge -FallarborTown_BattleTentLobby_EventScript_20005D:: @ 820005D +FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 820005D setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_ARENA setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES setvar VAR_RESULT, 2 frontier_checkineligible compare VAR_0x8004, TRUE - goto_if_eq FallarborTown_BattleTentLobby_EventScript_200176 + goto_if_eq FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT - msgbox FallarborTown_BattleTentLobby_Text_2C4BC8, MSGBOX_DEFAULT - fadescreen 1 + msgbox FallarborTown_BattleTentLobby_Text_SelectThreeMons, MSGBOX_DEFAULT + fadescreen FADE_TO_BLACK setvar VAR_0x8004, 2 setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate compare VAR_RESULT, 0 - goto_if_eq FallarborTown_BattleTentLobby_EventScript_2001C2 - msgbox FallarborTown_BattleTentLobby_Text_2C4B35, MSGBOX_YESNO + goto_if_eq FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge + msgbox FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT - case NO, FallarborTown_BattleTentLobby_EventScript_2001C2 - case YES, FallarborTown_BattleTentLobby_EventScript_2000E2 - case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_2001C2 + case NO, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge + case YES, FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge + case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge -FallarborTown_BattleTentLobby_EventScript_2000E2:: @ 82000E2 +FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 82000E2 setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER fallarbortent_init @@ -153,170 +152,166 @@ FallarborTown_BattleTentLobby_EventScript_2000E2:: @ 82000E2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 - goto_if_eq FallarborTown_BattleTentLobby_EventScript_2001AB - -FallarborTown_BattleTentLobby_EventScript_20013C:: @ 820013C + goto_if_eq FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed +FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: @ 820013C special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE - msgbox FallarborTown_BattleTentLobby_Text_2C4DC3, MSGBOX_DEFAULT + msgbox FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent, MSGBOX_DEFAULT closemessage - call FallarborTown_BattleTentLobby_EventScript_2001CF + call FallarborTown_BattleTentLobby_EventScript_WalkToDoor warp MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR, 255, 2, 7 setvar VAR_TEMP_0, 0 waitstate end -FallarborTown_BattleTentLobby_EventScript_200169:: @ 8200169 - msgbox FallarborTown_BattleTentLobby_Text_2C48AC, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_200021 +FallarborTown_BattleTentLobby_EventScript_ExplainChallenge:: @ 8200169 + msgbox FallarborTown_BattleTentLobby_Text_ExplainFallarborTent, MSGBOX_DEFAULT + goto FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge -FallarborTown_BattleTentLobby_EventScript_200176:: @ 8200176 +FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons:: @ 8200176 switch VAR_RESULT - case FRONTIER_LVL_50, FallarborTown_BattleTentLobby_EventScript_200191 - case FRONTIER_LVL_OPEN, FallarborTown_BattleTentLobby_EventScript_20019E + case FRONTIER_LVL_50, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50 + case FRONTIER_LVL_OPEN, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen +FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: @ 8200191 + msgbox FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT + goto FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge -FallarborTown_BattleTentLobby_EventScript_200191:: @ 8200191 - msgbox FallarborTown_BattleTentLobby_Text_2C4BFA, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_2001CD +FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 820019E + msgbox FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT + goto FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge -FallarborTown_BattleTentLobby_EventScript_20019E:: @ 820019E - msgbox FallarborTown_BattleTentLobby_Text_2C4CC0, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_2001CD - -FallarborTown_BattleTentLobby_EventScript_2001AB:: @ 82001AB +FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 82001AB frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 - goto FallarborTown_BattleTentLobby_EventScript_2001C5 + goto FallarborTown_BattleTentLobby_EventScript_CancelChallenge -FallarborTown_BattleTentLobby_EventScript_2001C2:: @ 82001C2 +FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 82001C2 special LoadPlayerParty - -FallarborTown_BattleTentLobby_EventScript_2001C5:: @ 82001C5 - msgbox FallarborTown_BattleTentLobby_Text_2C487F, MSGBOX_DEFAULT - -FallarborTown_BattleTentLobby_EventScript_2001CD:: @ 82001CD +FallarborTown_BattleTentLobby_EventScript_CancelChallenge:: @ 82001C5 + msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge, MSGBOX_DEFAULT +FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge:: @ 82001CD release end -FallarborTown_BattleTentLobby_EventScript_2001CF:: @ 82001CF - applymovement 1, FallarborTown_BattleTentLobby_Movement_2001FE - applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_200205 +FallarborTown_BattleTentLobby_EventScript_WalkToDoor:: @ 82001CF + applymovement 1, FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor + applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor waitmovement 0 opendoor 6, 1 waitdooranim - applymovement 1, FallarborTown_BattleTentLobby_Movement_200202 - applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_200209 + applymovement 1, FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor + applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor waitmovement 0 closedoor 6, 1 waitdooranim return -FallarborTown_BattleTentLobby_Movement_2001FE: @ 82001FE +FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor: @ 82001FE walk_up walk_up walk_up step_end -FallarborTown_BattleTentLobby_Movement_200202: @ 8200202 +FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor: @ 8200202 walk_up set_invisible step_end -FallarborTown_BattleTentLobby_Movement_200205: @ 8200205 +FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor: @ 8200205 walk_up walk_up walk_up step_end -FallarborTown_BattleTentLobby_Movement_200209: @ 8200209 +FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor: @ 8200209 walk_up walk_up set_invisible step_end -FallarborTown_BattleTentLobby_EventScript_20020D:: @ 820020D - msgbox FallarborTown_BattleTentLobby_Text_20045A, MSGBOX_NPC +FallarborTown_BattleTentLobby_EventScript_Hiker:: @ 820020D + msgbox FallarborTown_BattleTentLobby_Text_CameToCampOut, MSGBOX_NPC end -FallarborTown_BattleTentLobby_EventScript_200216:: @ 8200216 - msgbox FallarborTown_BattleTentLobby_Text_200304, MSGBOX_NPC +FallarborTown_BattleTentLobby_EventScript_LittleBoy:: @ 8200216 + msgbox FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid, MSGBOX_NPC end -FallarborTown_BattleTentLobby_EventScript_20021F:: @ 820021F - msgbox FallarborTown_BattleTentLobby_Text_200382, MSGBOX_NPC +FallarborTown_BattleTentLobby_EventScript_Lass:: @ 820021F + msgbox FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite, MSGBOX_NPC end -FallarborTown_BattleTentLobby_EventScript_200228:: @ 8200228 +FallarborTown_BattleTentLobby_EventScript_Scott:: @ 8200228 lock faceplayer - goto_if_set FLAG_MET_SCOTT_IN_FALLARBOR, FallarborTown_BattleTentLobby_EventScript_200245 - msgbox FallarborTown_BattleTentLobby_Text_200501, MSGBOX_DEFAULT + goto_if_set FLAG_MET_SCOTT_IN_FALLARBOR, FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo + msgbox FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone, MSGBOX_DEFAULT addvar VAR_SCOTT_STATE, 1 setflag FLAG_MET_SCOTT_IN_FALLARBOR release end -FallarborTown_BattleTentLobby_EventScript_200245:: @ 8200245 - msgbox FallarborTown_BattleTentLobby_Text_200653, MSGBOX_DEFAULT +FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: @ 8200245 + msgbox FallarborTown_BattleTentLobby_Text_ScottMakeChallenge, MSGBOX_DEFAULT release end -FallarborTown_BattleTentLobby_EventScript_20024F:: @ 820024F +FallarborTown_BattleTentLobby_EventScript_RulesBoard:: @ 820024F lockall msgbox BattleFrontier_BattleArenaLobby_Text_RulesAreListed, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_20025E + goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_20025E:: @ 820025E +FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 820025E message BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading waitmessage multichoice 17, 0, MULTI_FALLARBOR_TENT_RULES, 0 switch VAR_RESULT - case 0, FallarborTown_BattleTentLobby_EventScript_2002BC - case 1, FallarborTown_BattleTentLobby_EventScript_2002CA - case 2, FallarborTown_BattleTentLobby_EventScript_2002D8 - case 3, FallarborTown_BattleTentLobby_EventScript_2002E6 - case 4, FallarborTown_BattleTentLobby_EventScript_2002F4 - case 5, FallarborTown_BattleTentLobby_EventScript_200302 - case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_200302 + case 0, FallarborTown_BattleTentLobby_EventScript_RulesLevel + case 1, FallarborTown_BattleTentLobby_EventScript_RulesBattle + case 2, FallarborTown_BattleTentLobby_EventScript_RulesMind + case 3, FallarborTown_BattleTentLobby_EventScript_RulesSkill + case 4, FallarborTown_BattleTentLobby_EventScript_RulesBody + case 5, FallarborTown_BattleTentLobby_EventScript_ExitRules + case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_ExitRules end -FallarborTown_BattleTentLobby_EventScript_2002BC:: @ 82002BC - msgbox FallarborTown_BattleTentLobby_Text_2C67CD, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_20025E +FallarborTown_BattleTentLobby_EventScript_RulesLevel:: @ 82002BC + msgbox BattleTentLobby_Text_ExplainLevelRules, MSGBOX_DEFAULT + goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_2002CA:: @ 82002CA +FallarborTown_BattleTentLobby_EventScript_RulesBattle:: @ 82002CA msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_20025E + goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_2002D8:: @ 82002D8 +FallarborTown_BattleTentLobby_EventScript_RulesMind:: @ 82002D8 msgbox BattleFrontier_BattleArenaLobby_Text_ExplainMindRules, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_20025E + goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_2002E6:: @ 82002E6 +FallarborTown_BattleTentLobby_EventScript_RulesSkill:: @ 82002E6 msgbox BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_20025E + goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_2002F4:: @ 82002F4 +FallarborTown_BattleTentLobby_EventScript_RulesBody:: @ 82002F4 msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules, MSGBOX_DEFAULT - goto FallarborTown_BattleTentLobby_EventScript_20025E + goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_200302:: @ 8200302 +FallarborTown_BattleTentLobby_EventScript_ExitRules:: @ 8200302 releaseall end -FallarborTown_BattleTentLobby_Text_200304: @ 8200304 +FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid: @ 8200304 .string "Fufufufufu.\p" .string "I'm going to make everyone think\n" .string "I'm just a kid and let them play down.\p" .string "Then, I'll shock them and grab\n" .string "the title!$" -FallarborTown_BattleTentLobby_Text_200382: @ 8200382 +FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite: @ 8200382 .string "You know how BATTLE TENTS offer\n" .string "different events in different towns?\p" .string "My favorite is definitely the BATTLE\n" @@ -325,7 +320,7 @@ FallarborTown_BattleTentLobby_Text_200382: @ 8200382 .string "try to win with all their faith in\l" .string "their POKéMON.$" -FallarborTown_BattleTentLobby_Text_20045A: @ 820045A +FallarborTown_BattleTentLobby_Text_CameToCampOut: @ 820045A .string "I heard something about some tent,\n" .string "so I came to camp out.\p" .string "I didn't know that tents these days\n" @@ -333,7 +328,7 @@ FallarborTown_BattleTentLobby_Text_20045A: @ 820045A .string "Since I'm here, I may as well try\n" .string "my hand at battling!$" -FallarborTown_BattleTentLobby_Text_200501: @ 8200501 +FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone: @ 8200501 .string "SCOTT: Hi, {PLAYER}{KUN}!\n" .string "So you came out to this BATTLE TENT!\p" .string "The people in these parts tend to be\n" @@ -348,7 +343,7 @@ FallarborTown_BattleTentLobby_Text_200501: @ 8200501 .string "Whoops! Never mind!\n" .string "Keep working at it!$" -FallarborTown_BattleTentLobby_Text_200653: @ 8200653 +FallarborTown_BattleTentLobby_Text_ScottMakeChallenge: @ 8200653 .string "SCOTT: Instead of wasting your\n" .string "time with the likes of me, why not\l" .string "make a challenge?$" diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index 20121d500..2cdb626bd 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -190,10 +190,10 @@ FarawayIsland_Interior_EventScript_MewHideLeft:: @ 8267ED0 FarawayIsland_Interior_EventScript_HideMewWhenGrassCut:: @ 8267EDB lockall - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK setflag FLAG_HIDE_MEW removeobject 1 - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK msgbox FarawayIsland_Interior_Text_TheFeelingOfBeingWatchedFaded, MSGBOX_DEFAULT closemessage releaseall diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 9aa9e6790..d6214588f 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -42,7 +42,7 @@ LilycoveCity_ContestLobby_EventScript_ContestArtist:: @ 821A264 waitmovement 0 msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 0 lockall msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO @@ -216,7 +216,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: @ 821A436 waitmovement 0 msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 0 msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO compare VAR_RESULT, YES @@ -504,42 +504,42 @@ LilycoveCity_ContestLobby_EventScript_NinjaBoy:: @ 821A735 LilycoveCity_ContestLobby_EventScript_ContestWinner1:: @ 821A73E lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 1 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner2:: @ 821A745 lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 2 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner3:: @ 821A74C lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 3 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner4:: @ 821A753 lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 4 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner5:: @ 821A75A lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 5 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner6:: @ 821A761 lockall - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 6 releaseall end diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index 6d0c12c9c..68e7d61f3 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -182,35 +182,35 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_RichBoy:: @ 821999C LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: @ 82199A5 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 9 releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: @ 82199B3 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 10 releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: @ 82199C1 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 11 releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: @ 82199CF msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 12 releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: @ 82199DD msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN - fadescreen 1 + fadescreen FADE_TO_BLACK showcontestwinner 13 releaseall end diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc index 7d9e0f239..2592ccd9c 100644 --- a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc +++ b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc @@ -25,9 +25,9 @@ LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: @ 821EA3B compare VAR_RESULT, 1 goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_MonOnlyKnowsOneMove msgbox LilycoveCity_MoveDeletersHouse_Text_WhichMoveShouldBeForgotten, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK special MoveDeleterChooseMoveToForget - fadescreen 0 + fadescreen FADE_FROM_BLACK compare VAR_0x8005, MAX_MON_MOVES goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget special BufferMoveDeleterNicknameAndMove diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc index 5a5e9ebf9..51fd5714a 100644 --- a/data/maps/MagmaHideout_4F/scripts.inc +++ b/data/maps/MagmaHideout_4F/scripts.inc @@ -62,14 +62,14 @@ MagmaHideout_4F_EventScript_Maxie:: @ 823A560 setvar VAR_SLATEPORT_CITY_STATE, 1 setflag FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT setvar VAR_SLATEPORT_HARBOR_STATE, 1 - fadescreen 1 + fadescreen FADE_TO_BLACK removeobject 6 removeobject 2 removeobject 3 removeobject 4 removeobject 5 setflag FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS - fadescreen 0 + fadescreen FADE_FROM_BLACK releaseall end diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc index 32471ab9e..3131aeed4 100644 --- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc @@ -248,7 +248,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: @ 822400C applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown waitmovement 0 special SavePlayerParty - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate compare VAR_RESULT, 0 @@ -267,7 +267,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle:: @ 8224032 special LoadPlayerParty switch VAR_RESULT case 1, MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha - fadescreen 1 + fadescreen FADE_TO_BLACK special SetCB2WhiteOut waitstate @@ -287,7 +287,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071 closemessage setvar VAR_MOSSDEEP_CITY_STATE, 3 fadedefaultbgm - fadescreen 1 + fadescreen FADE_TO_BLACK setvar VAR_MOSSDEEP_SPACE_CENTER_STATE, 3 setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA @@ -304,10 +304,10 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071 setobjectxy 1, 6, 2 turnobject 1, DIR_NORTH call MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer - fadescreen 0 + fadescreen FADE_FROM_BLACK msgbox MossdeepCity_SpaceCenter_2F_Text_StevenThankYouComeSeeMeAtHome, MSGBOX_DEFAULT closemessage - fadescreen 1 + fadescreen FADE_TO_BLACK setflag FLAG_DEFEATED_MAGMA_SPACE_CENTER setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN removeobject 4 @@ -319,7 +319,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071 setobjectxyperm 3, 5, 6 setobjectmovementtype 3, MOVEMENT_TYPE_WANDER_AROUND addobject 3 - fadescreen 0 + fadescreen FADE_FROM_BLACK end MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer:: @ 8224131 diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc index cafadf17c..359b8376f 100644 --- a/data/maps/MtChimney/scripts.inc +++ b/data/maps/MtChimney/scripts.inc @@ -47,13 +47,13 @@ MtChimney_EventScript_Maxie:: @ 822EE0B msgbox MtChimney_Text_MaxieYouHaventSeenLastOfMagma, MSGBOX_DEFAULT closemessage delay 30 - fadescreen 1 + fadescreen FADE_TO_BLACK removeobject 2 removeobject 29 removeobject 3 removeobject 22 setflag FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA - fadescreen 0 + fadescreen FADE_FROM_BLACK setobjectxyperm 1, 10, 12 addobject 1 compare VAR_FACING, DIR_EAST diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc index 18ebc4ff7..8bba1984b 100644 --- a/data/maps/MtPyre_Summit/scripts.inc +++ b/data/maps/MtPyre_Summit/scripts.inc @@ -45,7 +45,7 @@ MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C call_if_eq MtPyre_Summit_EventScript_ArchieFacePlayer2 msgbox MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo, MSGBOX_DEFAULT closemessage - fadescreen 1 + fadescreen FADE_TO_BLACK removeobject 2 removeobject 4 removeobject 5 @@ -54,7 +54,7 @@ MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C setflag FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE setflag FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA fadedefaultbgm - fadescreen 0 + fadescreen FADE_FROM_BLACK delay 20 setvar VAR_MT_PYRE_STATE, 1 compare VAR_0x8008, 0 diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc index 3e84dfa85..e1805b73d 100644 --- a/data/maps/Route101/scripts.inc +++ b/data/maps/Route101/scripts.inc @@ -220,7 +220,7 @@ Route101_EventScript_BirchsBag:: @ 81EBE16 faceplayer setflag FLAG_SYS_POKEMON_GET setflag FLAG_RESCUED_BIRCH - fadescreen 1 + fadescreen FADE_TO_BLACK removeobject 4 setobjectxy OBJ_EVENT_ID_PLAYER, 6, 13 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft diff --git a/data/maps/Route113_GlassWorkshop/scripts.inc b/data/maps/Route113_GlassWorkshop/scripts.inc index 30d453abd..57c5f9f57 100644 --- a/data/maps/Route113_GlassWorkshop/scripts.inc +++ b/data/maps/Route113_GlassWorkshop/scripts.inc @@ -206,10 +206,10 @@ Route113_GlassWorkshop_EventScript_ChooseDifferentItem:: @ 826F003 Route113_GlassWorkshop_EventScript_MakeGlassItem:: @ 826F00F msgbox Route113_GlassWorkshop_Text_IllMakeItemForYou, MSGBOX_DEFAULT closemessage - fadescreen 1 + fadescreen FADE_TO_BLACK playse SE_SELECT delay 30 - fadescreen 0 + fadescreen FADE_FROM_BLACK msgbox Route113_GlassWorkshop_Text_IveFinishedGlassItem, MSGBOX_DEFAULT compare VAR_0x8009, 0 call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassFlute diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc index 03ec9b6f0..58e8ba758 100644 --- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc @@ -64,7 +64,7 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: @ 826FFC8 setvar VAR_WEATHER_INSTITUTE_STATE, 1 clearflag FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS fadedefaultbgm - fadescreen 1 + fadescreen FADE_TO_BLACK setflag FLAG_HIDE_ROUTE_119_TEAM_AQUA setflag FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M removeobject 1 @@ -74,7 +74,7 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: @ 826FFC8 removeobject 7 applymovement OBJ_EVENT_ID_PLAYER, Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition waitmovement 0 - fadescreen 0 + fadescreen FADE_FROM_BLACK applymovement 5, Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer waitmovement 0 copyobjectxytoperm 5 diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index c5c00892a..4b7799510 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -225,10 +225,10 @@ Route120_EventScript_StevenBattleKecleon:: @ 81F568B end Route120_EventScript_RemoveBridgeKecleonPostBattle:: @ 81F571C - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK removeobject 30 @ Invisible Bridge Kecleon removeobject 36 @ Visible Bridge Kecleon - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK goto Route120_EventScript_StevenGiveDeconScope end diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc index 4adac68a7..545a8126c 100644 --- a/data/maps/SkyPillar_Outside/scripts.inc +++ b/data/maps/SkyPillar_Outside/scripts.inc @@ -80,12 +80,12 @@ SkyPillar_Outside_EventScript_WallaceScene:: @ 8239304 msgbox SkyPillar_Outside_Text_GotToGoBackForSootopolis, MSGBOX_DEFAULT closemessage playse SE_KAIDAN - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK clearflag FLAG_HIDE_MAP_NAME_POPUP setvar VAR_SOOTOPOLIS_CITY_STATE, 4 removeobject 1 clearflag FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK releaseall end diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index ecca9e5f6..422ec2d1a 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -76,16 +76,16 @@ SkyPillar_Top_EventScript_RanFromRayquaza:: @ 8239771 end SkyPillar_Top_EventScript_DefeatedRayquaza2:: @ 823977C - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK releaseall end SkyPillar_Top_EventScript_RanFromRayquaza2:: @ 8239785 - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK bufferspeciesname 0, VAR_0x8004 msgbox gText_LegendaryFlewAway, MSGBOX_DEFAULT releaseall diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc index e7f846f48..f67c6f081 100644 --- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc +++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc @@ -1,51 +1,54 @@ SlateportCity_BattleTentBattleRoom_MapScripts:: @ 8209960 map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_BattleTentBattleRoom_OnTransition - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentBattleRoom_MapScript2_20999A - map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentBattleRoom_MapScript2_2099B4 + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentBattleRoom_OnWarp + map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentBattleRoom_OnFrame .byte 0 + @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden + @ The player is represented instead by object event 3, which has the gfx id VAR_OBJ_GFX_ID_1 + SlateportCity_BattleTentBattleRoom_OnTransition: @ 8209970 - call SlateportCity_BattleTentBattleRoom_EventScript_209976 + call SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx end -SlateportCity_BattleTentBattleRoom_EventScript_209976:: @ 8209976 +SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8209976 checkplayergender compare VAR_RESULT, MALE - goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_20998E + goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale compare VAR_RESULT, FEMALE - goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_209994 + goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return -SlateportCity_BattleTentBattleRoom_EventScript_20998E:: @ 820998E +SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 820998E setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -SlateportCity_BattleTentBattleRoom_EventScript_209994:: @ 8209994 +SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8209994 setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -SlateportCity_BattleTentBattleRoom_MapScript2_20999A: @ 820999A - map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentBattleRoom_EventScript_2099A4 +SlateportCity_BattleTentBattleRoom_OnWarp: @ 820999A + map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects .2byte 0 -SlateportCity_BattleTentBattleRoom_EventScript_2099A4:: @ 82099A4 +SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 82099A4 setvar VAR_TEMP_1, 1 hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM hideobjectat 2, MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM end -SlateportCity_BattleTentBattleRoom_MapScript2_2099B4: @ 82099B4 - map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentBattleRoom_EventScript_2099BE +SlateportCity_BattleTentBattleRoom_OnFrame: @ 82099B4 + map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom .2byte 0 -SlateportCity_BattleTentBattleRoom_EventScript_2099BE:: @ 82099BE - applymovement 3, SlateportCity_BattleTentBattleRoom_Movement_209A99 +SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82099BE + applymovement 3, SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 factory_setopponentgfx setobjectxyperm 2, 5, 1 removeobject 2 addobject 2 - applymovement 2, SlateportCity_BattleTentBattleRoom_Movement_209A9E + applymovement 2, SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter waitmovement 0 battletent_getopponentintro lockall @@ -58,41 +61,40 @@ SlateportCity_BattleTentBattleRoom_EventScript_2099BE:: @ 82099BE special DoSpecialTrainerBattle waitstate switch VAR_RESULT - case 1, SlateportCity_BattleTentBattleRoom_EventScript_209A39 - -SlateportCity_BattleTentCorridor_EventScript_209A1B:: @ 8209A1B + case 1, SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent +SlateportCity_BattleTent_EventScript_WarpToLobbyLost:: @ 8209A1B frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate +@ forced stop -SlateportCity_BattleTentBattleRoom_EventScript_209A39:: @ 8209A39 +SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 8209A39 frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT switch VAR_RESULT - case 3, SlateportCity_BattleTentBattleRoom_EventScript_209A7B -@ case 3, SlateportCity_BattleTentCorridor_EventScript_209A7B + case 3, SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon setvar VAR_0x8006, 1 warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 255, 2, 3 waitstate +@ forced stop -SlateportCity_BattleTentBattleRoom_EventScript_209A7B:: @ 8209A7B -SlateportCity_BattleTentCorridor_EventScript_209A7B:: @ 8209A7B +SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8209A7B frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate @ forced stop -SlateportCity_BattleTentBattleRoom_Movement_209A99: @ 8209A99 +SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter: @ 8209A99 walk_up walk_up walk_up walk_in_place_fastest_right step_end -SlateportCity_BattleTentBattleRoom_Movement_209A9E: @ 8209A9E +SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter: @ 8209A9E walk_down walk_down walk_down diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc index 475f117e5..817e3eaba 100644 --- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc +++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc @@ -1,51 +1,52 @@ SlateportCity_BattleTentCorridor_MapScripts:: @ 8208E26 - map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentCorridor_MapScript2_208E5B - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentCorridor_MapScript2_208E31 + map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentCorridor_OnFrame + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentCorridor_OnWarp .byte 0 -SlateportCity_BattleTentCorridor_MapScript2_208E31: @ 8208E31 - map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentCorridor_EventScript_208E3B + @ This is Slateport Tent's version of the Battle Factory Pre-Battle Room + +SlateportCity_BattleTentCorridor_OnWarp: @ 8208E31 + map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentCorridor_EventScript_SetUpObjects .2byte 0 -SlateportCity_BattleTentCorridor_EventScript_208E3B:: @ 8208E3B +SlateportCity_BattleTentCorridor_EventScript_SetUpObjects:: @ 8208E3B setvar VAR_TEMP_1, 1 compare VAR_0x8006, 1 - goto_if_ne SlateportCity_BattleTentCorridor_EventScript_208E56 + goto_if_ne SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth setobjectxy 1, 2, 2 turnobject 1, DIR_SOUTH - -SlateportCity_BattleTentCorridor_EventScript_208E56:: @ 8208E56 +SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth:: @ 8208E56 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -SlateportCity_BattleTentCorridor_MapScript2_208E5B: @ 8208E5B - map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentCorridor_EventScript_208E65 +SlateportCity_BattleTentCorridor_OnFrame: @ 8208E5B + map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentCorridor_EventScript_EnterCorridor .2byte 0 -SlateportCity_BattleTentCorridor_EventScript_208E65:: @ 8208E65 +SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: @ 8208E65 compare VAR_0x8006, 1 - goto_if_eq SlateportCity_BattleTentCorridor_EventScript_208EEE + goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle setvar VAR_TEMP_0, 1 - applymovement 1, SlateportCity_BattleTentCorridor_Movement_209062 - applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_209059 + applymovement 1, SlateportCity_BattleTentCorridor_Movement_AttendantEnter + applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerEnter waitmovement 0 compare VAR_0x8006, 2 - goto_if_eq SlateportCity_BattleTentCorridor_EventScript_209044 + goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge slateporttent_generaterentalmons slateporttent_generateopponentmons msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK slateporttent_rentmons waitstate -SlateportCity_BattleTentCorridor_EventScript_208EB4:: @ 8208EB4 +SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: @ 8208EB4 msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT closemessage applymovement 1, Common_Movement_WalkInPlaceFastestUp waitmovement 0 opendoor 2, 1 waitdooranim - applymovement 1, SlateportCity_BattleTentCorridor_Movement_209068 - applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_20905E + applymovement 1, SlateportCity_BattleTentCorridor_Movement_AttendantExit + applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerExit waitmovement 0 closedoor 2, 1 waitdooranim @@ -53,97 +54,97 @@ SlateportCity_BattleTentCorridor_EventScript_208EB4:: @ 8208EB4 waitstate end -SlateportCity_BattleTentCorridor_EventScript_208EEE:: @ 8208EEE +SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle:: @ 8208EEE factory_setopponentmons factory_resethelditems msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LetUsRestoreMons, MSGBOX_DEFAULT playfanfare MUS_ME_ASA waitfanfare special HealPlayerParty -SlateportCity_BattleTentCorridor_EventScript_208F0D:: @ 8208F0D +SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: @ 8208F0D frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 - call_if_eq SlateportCity_BattleTentCorridor_EventScript_209014 + call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent compare VAR_RESULT, 2 - call_if_eq SlateportCity_BattleTentCorridor_EventScript_20901B + call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 switch VAR_RESULT - case 0, SlateportCity_BattleTentCorridor_EventScript_208FBB - case 1, SlateportCity_BattleTentCorridor_EventScript_208F5B - case 2, SlateportCity_BattleTentCorridor_EventScript_208F89 + case 0, SlateportCity_BattleTentCorridor_EventScript_AskSwapMon + case 1, SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge + case 2, SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge -SlateportCity_BattleTentCorridor_EventScript_208F5B:: @ 8208F5B +SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge:: @ 8208F5B msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT - case NO, SlateportCity_BattleTentCorridor_EventScript_208F0D - case YES, SlateportCity_BattleTentCorridor_EventScript_209022 - case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_208F0D + case NO, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent + case YES, SlateportCity_BattleTentCorridor_EventScript_PauseChallenge + case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent -SlateportCity_BattleTentCorridor_EventScript_208F89:: @ 8208F89 +SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge:: @ 8208F89 message BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, 0 switch VAR_RESULT - case 1, SlateportCity_BattleTentCorridor_EventScript_208F0D - case 0, SlateportCity_BattleTentCorridor_EventScript_209A1B - case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_208F0D + case 1, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent + case 0, SlateportCity_BattleTent_EventScript_WarpToLobbyLost + case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent -SlateportCity_BattleTentCorridor_EventScript_208FBB:: @ 8208FBB +SlateportCity_BattleTentCorridor_EventScript_AskSwapMon:: @ 8208FBB slateporttent_generateopponentmons msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LikeToSwapMon, MSGBOX_YESNO switch VAR_RESULT - case NO, SlateportCity_BattleTentCorridor_EventScript_208EB4 - case YES, SlateportCity_BattleTentCorridor_EventScript_208FF1 - case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_208EB4 + case NO, SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom + case YES, SlateportCity_BattleTentCorridor_EventScript_SwapMons + case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom -SlateportCity_BattleTentCorridor_EventScript_208FF1:: @ 8208FF1 - fadescreen 1 +SlateportCity_BattleTentCorridor_EventScript_SwapMons:: @ 8208FF1 + fadescreen FADE_TO_BLACK slateporttent_swapmons waitstate compare VAR_RESULT, 1 - goto_if_eq SlateportCity_BattleTentCorridor_EventScript_208EB4 + goto_if_eq SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete, MSGBOX_DEFAULT - goto SlateportCity_BattleTentCorridor_EventScript_208EB4 + goto SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom -SlateportCity_BattleTentCorridor_EventScript_209014:: @ 8209014 +SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent:: @ 8209014 message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -SlateportCity_BattleTentCorridor_EventScript_20901B:: @ 820901B +SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent:: @ 820901B message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -SlateportCity_BattleTentCorridor_EventScript_209022:: @ 8209022 +SlateportCity_BattleTentCorridor_EventScript_PauseChallenge:: @ 8209022 message BattleFrontier_BattleFactoryPreBattleRoom_Text_SavingDataPleaseWait waitmessage slateporttent_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end -SlateportCity_BattleTentCorridor_EventScript_209044:: @ 8209044 +SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge:: @ 8209044 special SavePlayerParty factory_setparties 0 - goto SlateportCity_BattleTentCorridor_EventScript_208F0D + goto SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent -SlateportCity_BattleTentCorridor_Movement_209059: @ 8209059 +SlateportCity_BattleTentCorridor_Movement_PlayerEnter: @ 8209059 walk_up walk_up walk_up walk_up step_end -SlateportCity_BattleTentCorridor_Movement_20905E: @ 820905E +SlateportCity_BattleTentCorridor_Movement_PlayerExit: @ 820905E walk_up walk_up set_invisible step_end -SlateportCity_BattleTentCorridor_Movement_209062: @ 8209062 +SlateportCity_BattleTentCorridor_Movement_AttendantEnter: @ 8209062 walk_up walk_up walk_up @@ -151,12 +152,14 @@ SlateportCity_BattleTentCorridor_Movement_209062: @ 8209062 walk_in_place_fastest_down step_end -SlateportCity_BattleTentCorridor_Movement_209068: @ 8209068 +SlateportCity_BattleTentCorridor_Movement_AttendantExit: @ 8209068 walk_up set_invisible step_end -SlateportCity_BattleTentCorridor_Text_20906B: @ 820906B +@ Leftover text from when this was a Contest Hall in R/S +@ Unused +SlateportCity_ContestHall_Text_AdviceForContests: @ 820906B .string "Want a tasty little bit of advice\n" .string "for CONTESTS?\p" .string "Using a certain move after another\n" @@ -167,12 +170,14 @@ SlateportCity_BattleTentCorridor_Text_20906B: @ 820906B .string "Of course, your opponents might try\n" .string "disrupting your POKéMON's showing.$" -SlateportCity_BattleTentCorridor_Text_20917A: @ 820917A +@ Unused +SlateportCity_ContestHall_Text_MyPapaIsContestJudge: @ 820917A .string "My papa, he's a CONTEST JUDGE.\p" .string "I wonder what I should be when I\n" .string "grow up, a JUDGE or a GYM LEADER?$" -SlateportCity_BattleTentCorridor_Text_2091DC: @ 82091DC +@ Unused +SlateportCity_ContestHall_Text_ImLikeMajorlyCheesed: @ 82091DC .string "Hey, man, I'm like majorly cheesed,\n" .string "you know. Like, you know, I just\l" .string "wanted to know why my POKéMON\l" @@ -184,7 +189,8 @@ SlateportCity_BattleTentCorridor_Text_2091DC: @ 82091DC .string "Hey, like, you! Zip it, you know?\n" .string "Just, you know, take this!$" -SlateportCity_BattleTentCorridor_Text_209322: @ 8209322 +@ Unused +SlateportCity_ContestHall_Text_ExplainTorment: @ 8209322 .string "That's, like, TM41, you know?\n" .string "Hey, it's TORMENT, you hearing me?\p" .string "Like, it won't let the other guy\n" @@ -192,7 +198,8 @@ SlateportCity_BattleTentCorridor_Text_209322: @ 8209322 .string "Hey, now, you listen here, like,\n" .string "I'm not laying a torment on you!$" -SlateportCity_BattleTentCorridor_Text_2093ED: @ 82093ED +@ Unused +SlateportCity_ContestHall_Text_MCStepUpTakePartInContest: @ 82093ED .string "MC: Oh, my, my!\n" .string "Now isn't that a dandy of a POKéMON?\p" .string "Please! Do step right up and take\n" @@ -200,7 +207,8 @@ SlateportCity_BattleTentCorridor_Text_2093ED: @ 82093ED .string "You'll do well! I'm sure of it!\n" .string "My eyes have never failed me!$" -SlateportCity_BattleTentCorridor_Text_2094A1: @ 82094A1 +@ Unused +SlateportCity_ContestHall_Text_JudgeWouldntDoToMissContest: @ 82094A1 .string "JUDGE: Well, hello there!\n" .string "I see that you're a TRAINER!\p" .string "Then, it just wouldn't do for you\n" @@ -208,17 +216,20 @@ SlateportCity_BattleTentCorridor_Text_2094A1: @ 82094A1 .string "Get a CONTEST PASS in VERDANTURF\n" .string "CITY and enter anytime!$" -SlateportCity_BattleTentCorridor_Text_20954E: @ 820954E +@ Unused +SlateportCity_ContestHall_Text_ItsAppealTime: @ 820954E .string "It's appeal time!\n" .string "What should I lead with?$" -SlateportCity_BattleTentCorridor_Text_209579: @ 8209579 +@ Unused +SlateportCity_ContestHall_Text_DidntPayAttentionToAppeal: @ 8209579 .string "They didn't pay much attention to\n" .string "my POKéMON's appeal…\p" .string "Humph, that JUDGE, he doesn't know\n" .string "a good thing when he sees it.$" -SlateportCity_BattleTentCorridor_Text_2095F1: @ 82095F1 +@ Unused +SlateportCity_ContestHall_Text_RewardWithSageAdvice: @ 82095F1 .string "Oh, hi! You must be a serious fan to get\n" .string "this close to the action.\p" .string "I'll reward your enthusiasm with\n" @@ -230,35 +241,41 @@ SlateportCity_BattleTentCorridor_Text_2095F1: @ 82095F1 .string "Well, you'd think something good has\n" .string "to happen!$" -SlateportCity_BattleTentCorridor_Text_209718: @ 8209718 +@ Unused +SlateportCity_ContestHall_Text_MoreFreakedOutThanMon: @ 8209718 .string "I can't do this! I'm more freaked out\n" .string "than my POKéMON.\p" .string "I'm shivering and my heart is racing!$" -SlateportCity_BattleTentCorridor_Text_209775: @ 8209775 +@ Unused +SlateportCity_ContestHall_Text_BattleAndContestAlike: @ 8209775 .string "A battle and a CONTEST aren't the\n" .string "same, but they are alike, too.\p" .string "You need to work hard and believe\n" .string "in the POKéMON you've raised.$" -SlateportCity_BattleTentCorridor_Text_2097F6: @ 82097F6 +@ Unused +SlateportCity_ContestHall_Text_MonLooksOnTopOfGame: @ 82097F6 .string "That POKéMON looks like it's on top\n" .string "of its game, huh?\p" .string "A POKéMON that does good in the\n" .string "secondary judging seems to be more\l" .string "relaxed when it's doing appeals.$" -SlateportCity_BattleTentCorridor_Text_209890: @ 8209890 +@ Unused +SlateportCity_ContestHall_Text_MyMonBetterThanThatLot: @ 8209890 .string "Will you look at that sorry sight?\p" .string "Heh, my POKéMON's absolutely better\n" .string "than that lot!$" -SlateportCity_BattleTentCorridor_Text_2098E6: @ 82098E6 +@ Unused +SlateportCity_ContestHall_Text_GetUrgeToMoveWithMon: @ 82098E6 .string "Don't you get the urge to move with\n" .string "POKéMON if they're putting on an\l" .string "energetic appeal?$" -SlateportCity_BattleTentCorridor_Text_20993D: @ 820993D +@ Unused +SlateportCity_ContestHall_Text_HyperRankStage: @ 820993D .string "POKéMON CONTESTS\n" .string "HYPER RANK STAGE!$" diff --git a/data/maps/SlateportCity_BattleTentLobby/map.json b/data/maps/SlateportCity_BattleTentLobby/map.json index 6fa2b3648..5a1c7cdb7 100644 --- a/data/maps/SlateportCity_BattleTentLobby/map.json +++ b/data/maps/SlateportCity_BattleTentLobby/map.json @@ -24,7 +24,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "SlateportCity_BattleTentLobby_EventScript_2088AA", + "script": "SlateportCity_BattleTentLobby_EventScript_Attendant", "flag": "0" }, { @@ -37,7 +37,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "SlateportCity_BattleTentLobby_EventScript_208A3D", + "script": "SlateportCity_BattleTentLobby_EventScript_TormentGiver", "flag": "0" }, { @@ -50,7 +50,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "SlateportCity_BattleTentLobby_EventScript_208A7E", + "script": "SlateportCity_BattleTentLobby_EventScript_Man", "flag": "0" }, { @@ -63,7 +63,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "SlateportCity_BattleTentLobby_EventScript_208A87", + "script": "SlateportCity_BattleTentLobby_EventScript_Girl", "flag": "0" }, { @@ -76,7 +76,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "SlateportCity_BattleTentLobby_EventScript_208A90", + "script": "SlateportCity_BattleTentLobby_EventScript_Woman", "flag": "0" } ], @@ -104,7 +104,7 @@ "y": 5, "elevation": 0, "player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY", - "script": "SlateportCity_BattleTentLobby_EventScript_208A99" + "script": "SlateportCity_BattleTentLobby_EventScript_RulesBoard" } ] } diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc index 8e0fa1108..651c28a38 100644 --- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc +++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc @@ -1,32 +1,32 @@ SlateportCity_BattleTentLobby_MapScripts:: @ 8208730 - map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentLobby_MapScript2_20874F - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentLobby_MapScript2_20873B + map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentLobby_OnFrame + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentLobby_OnWarp .byte 0 -SlateportCity_BattleTentLobby_MapScript2_20873B: @ 820873B - map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentLobby_EventScript_208745 +SlateportCity_BattleTentLobby_OnWarp: @ 820873B + map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth .2byte 0 -SlateportCity_BattleTentLobby_EventScript_208745:: @ 8208745 +SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 8208745 setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -SlateportCity_BattleTentLobby_MapScript2_20874F: @ 820874F - map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentLobby_EventScript_208779 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_208782 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_208871 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, SlateportCity_BattleTentLobby_EventScript_2087B7 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_208837 +SlateportCity_BattleTentLobby_OnFrame: @ 820874F + map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_ResumeChallenge + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, SlateportCity_BattleTentLobby_EventScript_WonChallenge + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_LostChallenge .2byte 0 -SlateportCity_BattleTentLobby_EventScript_208779:: @ 8208779 +SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus:: @ 8208779 frontier_getstatus end -SlateportCity_BattleTentLobby_EventScript_208782:: @ 8208782 +SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8208782 lockall - msgbox SlateportCity_BattleTentLobby_Text_2C5DFA, MSGBOX_DEFAULT + msgbox SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT closemessage frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 setvar VAR_TEMP_0, 255 @@ -34,50 +34,50 @@ SlateportCity_BattleTentLobby_EventScript_208782:: @ 8208782 releaseall end -SlateportCity_BattleTentLobby_EventScript_2087B7:: @ 82087B7 +SlateportCity_BattleTentLobby_EventScript_WonChallenge:: @ 82087B7 lockall - message SlateportCity_BattleTentLobby_Text_2C5C6F + message SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons waitmessage slateporttent_setrandomprize frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 slateporttent_save 0 playse SE_SAVE waitse -SlateportCity_BattleTentLobby_EventScript_2087E9:: @ 82087E9 - msgbox SlateportCity_BattleTentLobby_Text_2C5D14, MSGBOX_DEFAULT +SlateportCity_BattleTentLobby_EventScript_GivePrize:: @ 82087E9 + msgbox SlateportCity_BattleTentLobby_Text_AwardYouThisPrize, MSGBOX_DEFAULT slateporttent_giveprize switch VAR_RESULT - case 0, SlateportCity_BattleTentLobby_EventScript_20882A + case FALSE, SlateportCity_BattleTentLobby_EventScript_NoRoomForPrize frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 - message SlateportCity_BattleTentLobby_Text_23F68C + message BattleFrontier_BattleTowerLobby_Text_ReceivedPrize @ Odd that it uses Tower's instead of Factory's or its own waitmessage playfanfare MUS_FANFA4 waitfanfare - goto SlateportCity_BattleTentLobby_EventScript_208861 + goto SlateportCity_BattleTentLobby_EventScript_EndGivePrize -SlateportCity_BattleTentLobby_EventScript_20882A:: @ 820882A - msgbox SlateportCity_BattleTentLobby_Text_2C5D52, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208861 +SlateportCity_BattleTentLobby_EventScript_NoRoomForPrize:: @ 820882A + msgbox SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_EndGivePrize -SlateportCity_BattleTentLobby_EventScript_208837:: @ 8208837 +SlateportCity_BattleTentLobby_EventScript_LostChallenge:: @ 8208837 lockall - message SlateportCity_BattleTentLobby_Text_2C5BA2 + message SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults waitmessage frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 slateporttent_save 0 playse SE_SAVE waitse -SlateportCity_BattleTentLobby_EventScript_208861:: @ 8208861 - msgbox SlateportCity_BattleTentLobby_Text_2C5AA5, MSGBOX_DEFAULT +SlateportCity_BattleTentLobby_EventScript_EndGivePrize:: @ 8208861 + msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -SlateportCity_BattleTentLobby_EventScript_208871:: @ 8208871 +SlateportCity_BattleTentLobby_EventScript_ResumeChallenge:: @ 8208871 lockall - message SlateportCity_BattleTentLobby_Text_2C5DA7 + message SlateportCity_BattleTentLobby_Text_BeenWaitingForYou waitmessage slateporttent_save CHALLENGE_STATUS_SAVING playse SE_SAVE @@ -85,37 +85,37 @@ SlateportCity_BattleTentLobby_EventScript_208871:: @ 8208871 frontier_set FRONTIER_DATA_PAUSED, FALSE setvar VAR_TEMP_0, 255 setvar VAR_0x8006, 2 - goto SlateportCity_BattleTentLobby_EventScript_2089AC + goto SlateportCity_BattleTentLobby_EventScript_EnterChallenge -SlateportCity_BattleTentLobby_EventScript_2088AA:: @ 82088AA +SlateportCity_BattleTentLobby_EventScript_Attendant:: @ 82088AA lock faceplayer slateporttent_getprize - compare VAR_RESULT, 0 - goto_if_ne SlateportCity_BattleTentLobby_EventScript_2087E9 + compare VAR_RESULT, ITEM_NONE + goto_if_ne SlateportCity_BattleTentLobby_EventScript_GivePrize special SavePlayerParty - msgbox SlateportCity_BattleTentLobby_Text_2C5810, MSGBOX_DEFAULT -SlateportCity_BattleTentLobby_EventScript_2088CA:: @ 82088CA - message SlateportCity_BattleTentLobby_Text_2C586A + msgbox SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT +SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: @ 82088CA + message SlateportCity_BattleTentLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, 0 switch VAR_RESULT - case 0, SlateportCity_BattleTentLobby_EventScript_208906 - case 1, SlateportCity_BattleTentLobby_EventScript_208A07 - case 2, SlateportCity_BattleTentLobby_EventScript_208A2E - case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_208A2E + case 0, SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge + case 1, SlateportCity_BattleTentLobby_EventScript_ExplainChallenge + case 2, SlateportCity_BattleTentLobby_EventScript_CancelChallenge + case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_CancelChallenge -SlateportCity_BattleTentLobby_EventScript_208906:: @ 8208906 +SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge:: @ 8208906 setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_FACTORY setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT - msgbox SlateportCity_BattleTentLobby_Text_2C5B06, MSGBOX_YESNO + msgbox SlateportCity_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT - case NO, SlateportCity_BattleTentLobby_EventScript_208A2B - case YES, SlateportCity_BattleTentLobby_EventScript_208950 - case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_208A2B + case NO, SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge + case YES, SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge + case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge -SlateportCity_BattleTentLobby_EventScript_208950:: @ 8208950 +SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8208950 setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER slateporttent_init @@ -126,156 +126,156 @@ SlateportCity_BattleTentLobby_EventScript_208950:: @ 8208950 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 - goto_if_eq SlateportCity_BattleTentLobby_EventScript_208A14 + goto_if_eq SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed setvar VAR_0x8006, 0 -SlateportCity_BattleTentLobby_EventScript_2089AC:: @ 82089AC - msgbox SlateportCity_BattleTentLobby_Text_2C5B8C, MSGBOX_DEFAULT +SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: @ 82089AC + msgbox SlateportCity_BattleTentLobby_Text_StepThisWay, MSGBOX_DEFAULT closemessage - call SlateportCity_BattleTentLobby_EventScript_2089C9 + call SlateportCity_BattleTentLobby_EventScript_WalkToDoor warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 255, 2, 7 setvar VAR_TEMP_0, 0 waitstate end -SlateportCity_BattleTentLobby_EventScript_2089C9:: @ 82089C9 - applymovement 1, SlateportCity_BattleTentLobby_Movement_2089F8 - applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_2089FF +SlateportCity_BattleTentLobby_EventScript_WalkToDoor:: @ 82089C9 + applymovement 1, SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor + applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor waitmovement 0 opendoor 6, 1 waitdooranim - applymovement 1, SlateportCity_BattleTentLobby_Movement_2089FC - applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_208A03 + applymovement 1, SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor + applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor waitmovement 0 closedoor 6, 1 waitdooranim return -SlateportCity_BattleTentLobby_Movement_2089F8: @ 82089F8 +SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor: @ 82089F8 walk_up walk_up walk_up step_end -SlateportCity_BattleTentLobby_Movement_2089FC: @ 82089FC +SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor: @ 82089FC walk_up set_invisible step_end -SlateportCity_BattleTentLobby_Movement_2089FF: @ 82089FF +SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor: @ 82089FF walk_up walk_up walk_up step_end -SlateportCity_BattleTentLobby_Movement_208A03: @ 8208A03 +SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor: @ 8208A03 walk_up walk_up set_invisible step_end -SlateportCity_BattleTentLobby_EventScript_208A07:: @ 8208A07 - msgbox SlateportCity_BattleTentLobby_Text_2C589C, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_2088CA +SlateportCity_BattleTentLobby_EventScript_ExplainChallenge:: @ 8208A07 + msgbox SlateportCity_BattleTentLobby_Text_ExplainSlateportTent, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge -SlateportCity_BattleTentLobby_EventScript_208A14:: @ 8208A14 +SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 8208A14 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 - goto SlateportCity_BattleTentLobby_EventScript_208A2E + goto SlateportCity_BattleTentLobby_EventScript_CancelChallenge -SlateportCity_BattleTentLobby_EventScript_208A2B:: @ 8208A2B +SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 8208A2B special LoadPlayerParty - -SlateportCity_BattleTentLobby_EventScript_208A2E:: @ 8208A2E - msgbox SlateportCity_BattleTentLobby_Text_2C5AA5, MSGBOX_DEFAULT +SlateportCity_BattleTentLobby_EventScript_CancelChallenge:: @ 8208A2E + msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT release end -SlateportCity_BattleTentLobby_Movement_208A38:: @ 8208A38 +@ Unused +SlateportCity_BattleTentLobby_Movement_UnusedEnterDoor:: @ 8208A38 walk_up walk_up walk_up set_invisible step_end -SlateportCity_BattleTentLobby_EventScript_208A3D:: @ 8208A3D +SlateportCity_BattleTentLobby_EventScript_TormentGiver:: @ 8208A3D lock faceplayer - goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_208A74 - msgbox SlateportCity_BattleTentLobby_Text_208B4E, MSGBOX_DEFAULT + goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_ReceivedTorment + msgbox SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe, MSGBOX_DEFAULT giveitem_std ITEM_TM41 - compare VAR_RESULT, 0 + compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM41 - msgbox SlateportCity_BattleTentLobby_Text_208C5C, MSGBOX_DEFAULT + msgbox SlateportCity_BattleTentLobby_Text_ExplainTorment, MSGBOX_DEFAULT release end -SlateportCity_BattleTentLobby_EventScript_208A74:: @ 8208A74 - msgbox SlateportCity_BattleTentLobby_Text_208C5C, MSGBOX_DEFAULT +SlateportCity_BattleTentLobby_EventScript_ReceivedTorment:: @ 8208A74 + msgbox SlateportCity_BattleTentLobby_Text_ExplainTorment, MSGBOX_DEFAULT release end -SlateportCity_BattleTentLobby_EventScript_208A7E:: @ 8208A7E - msgbox SlateportCity_BattleTentLobby_Text_208D27, MSGBOX_NPC +SlateportCity_BattleTentLobby_EventScript_Man:: @ 8208A7E + msgbox SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons, MSGBOX_NPC end -SlateportCity_BattleTentLobby_EventScript_208A87:: @ 8208A87 - msgbox SlateportCity_BattleTentLobby_Text_208DA6, MSGBOX_NPC +SlateportCity_BattleTentLobby_EventScript_Girl:: @ 8208A87 + msgbox SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons, MSGBOX_NPC end -SlateportCity_BattleTentLobby_EventScript_208A90:: @ 8208A90 - msgbox SlateportCity_BattleTentLobby_Text_208DF1, MSGBOX_NPC +SlateportCity_BattleTentLobby_EventScript_Woman:: @ 8208A90 + msgbox SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection, MSGBOX_NPC end -SlateportCity_BattleTentLobby_EventScript_208A99:: @ 8208A99 +SlateportCity_BattleTentLobby_EventScript_RulesBoard:: @ 8208A99 lockall msgbox BattleFrontier_BattleFactoryLobby_Text_RulesAreListed, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208AA8 + goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_208AA8:: @ 8208AA8 +SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8208AA8 message BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading waitmessage multichoice 17, 0, MULTI_SLATEPORT_TENT_RULES, 0 switch VAR_RESULT - case 0, SlateportCity_BattleTentLobby_EventScript_208B06 - case 1, SlateportCity_BattleTentLobby_EventScript_208B14 - case 2, SlateportCity_BattleTentLobby_EventScript_208B22 - case 3, SlateportCity_BattleTentLobby_EventScript_208B30 - case 4, SlateportCity_BattleTentLobby_EventScript_208B3E - case 5, SlateportCity_BattleTentLobby_EventScript_208B4C - case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_208B4C + case 0, SlateportCity_BattleTentLobby_EventScript_RulesBasics + case 1, SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner + case 2, SlateportCity_BattleTentLobby_EventScript_RulesSwapNumber + case 3, SlateportCity_BattleTentLobby_EventScript_RulesSwapNotes + case 4, SlateportCity_BattleTentLobby_EventScript_RulesMons + case 5, SlateportCity_BattleTentLobby_EventScript_ExitRules + case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_ExitRules end -SlateportCity_BattleTentLobby_EventScript_208B06:: @ 8208B06 - msgbox SlateportCity_BattleTentLobby_Text_2C5F08, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208AA8 +SlateportCity_BattleTentLobby_EventScript_RulesBasics:: @ 8208B06 + msgbox SlateportCity_BattleTentLobby_Text_ExplainBasicRules, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_208B14:: @ 8208B14 - msgbox SlateportCity_BattleTentLobby_Text_2C5F9D, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208AA8 +SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner:: @ 8208B14 + msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_208B22:: @ 8208B22 - msgbox SlateportCity_BattleTentLobby_Text_2C6020, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208AA8 +SlateportCity_BattleTentLobby_EventScript_RulesSwapNumber:: @ 8208B22 + msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_208B30:: @ 8208B30 - msgbox SlateportCity_BattleTentLobby_Text_2C60C0, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208AA8 +SlateportCity_BattleTentLobby_EventScript_RulesSwapNotes:: @ 8208B30 + msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapNotes, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_208B3E:: @ 8208B3E - msgbox SlateportCity_BattleTentLobby_Text_2C61FE, MSGBOX_DEFAULT - goto SlateportCity_BattleTentLobby_EventScript_208AA8 +SlateportCity_BattleTentLobby_EventScript_RulesMons:: @ 8208B3E + msgbox SlateportCity_BattleTentLobby_Text_ExplainMonRules, MSGBOX_DEFAULT + goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_208B4C:: @ 8208B4C +SlateportCity_BattleTentLobby_EventScript_ExitRules:: @ 8208B4C releaseall end -SlateportCity_BattleTentLobby_Text_208B4E: @ 8208B4E +SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe: @ 8208B4E .string "So, like, I couldn't find myself any\n" .string "POKéMON that were, like, for me.\p" .string "So, I figured, like, hey, I should file\n" @@ -285,7 +285,7 @@ SlateportCity_BattleTentLobby_Text_208B4E: @ 8208B4E .string "Hey, like, you! Zip it, you know?\n" .string "Just, you know, take this!$" -SlateportCity_BattleTentLobby_Text_208C5C: @ 8208C5C +SlateportCity_BattleTentLobby_Text_ExplainTorment: @ 8208C5C .string "That's, like, TM41, you know?\n" .string "Hey, it's TORMENT, you hearing me?\p" .string "Like, it won't let the other guy\n" @@ -293,18 +293,18 @@ SlateportCity_BattleTentLobby_Text_208C5C: @ 8208C5C .string "Hey, now, you listen here, like,\n" .string "I'm not laying a torment on you!$" -SlateportCity_BattleTentLobby_Text_208D27: @ 8208D27 +SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons: @ 8208D27 .string "I don't really like BUG POKéMON,\n" .string "but maybe I'll try using some for\l" .string "a change of pace.\p" .string "Who knows, I might even get to like\n" .string "them!$" -SlateportCity_BattleTentLobby_Text_208DA6: @ 8208DA6 +SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons: @ 8208DA6 .string "You can battle all you want here even\n" .string "if you don't have any tough POKéMON.$" -SlateportCity_BattleTentLobby_Text_208DF1: @ 8208DF1 +SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection: @ 8208DF1 .string "Wouldn't it be nice if they had more of\n" .string "a selection?$" diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc index cc0a79e63..16478c5a0 100644 --- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc @@ -61,11 +61,11 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00 closemessage savebgm MUS_DUMMY fadedefaultbgm - fadescreen 1 + fadescreen FADE_TO_BLACK removeobject 2 removeobject 3 removeobject 4 - fadescreen 0 + fadescreen FADE_FROM_BLACK delay 30 setflag FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight @@ -75,7 +75,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00 call Common_EventScript_PlayerHandedOverTheItem msgbox SlateportCity_OceanicMuseum_2F_Text_SternIveGotToGo, MSGBOX_DEFAULT closemessage - fadescreen 1 + fadescreen FADE_TO_BLACK playfanfare MUS_ME_ASA waitfanfare special HealPlayerParty @@ -87,7 +87,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00 clearflag FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE setflag FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE setvar VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 1 - fadescreen 0 + fadescreen FADE_FROM_BLACK release end diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index a1e830913..8831f62a8 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -214,7 +214,7 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: @ 81E5946 waitmovement 0 special RemoveCameraObject delay 60 - fadescreenspeed 1, 8 + fadescreenspeed FADE_TO_BLACK, 8 setweather WEATHER_ABNORMAL doweather setvar VAR_0x8004, 0 @@ -314,7 +314,7 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: @ 81E5A82 waitmovement 0 special RemoveCameraObject delay 60 - fadescreenspeed 1, 8 + fadescreenspeed FADE_TO_BLACK, 8 setweather WEATHER_ABNORMAL doweather setvar VAR_0x8004, 0 @@ -505,7 +505,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: @ 81E5C1E waitmovement 0 special RemoveCameraObject delay 60 - fadescreenspeed 1, 8 + fadescreenspeed FADE_TO_BLACK, 8 call SootopolisCity_EventScript_SetRoughWater removeobject 9 removeobject 10 @@ -558,7 +558,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: @ 81E5CCE waitmovement 0 special RemoveCameraObject delay 60 - fadescreenspeed 1, 8 + fadescreenspeed FADE_TO_BLACK, 8 call SootopolisCity_EventScript_SetRoughWater removeobject 9 removeobject 10 diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc index 6b0e42148..96a28f2dd 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc @@ -126,7 +126,7 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle:: @ 8227AE2 SootopolisCity_MysteryEventsHouse_1F_EventScript_ChooseParty:: @ 8227AEF msgbox SootopolisCity_MysteryEventsHouse_1F_Text_KeepItTo3On3, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate return diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc index 15aecc9d9..e1311b6d1 100644 --- a/data/maps/TrainerHill_Entrance/scripts.inc +++ b/data/maps/TrainerHill_Entrance/scripts.inc @@ -219,7 +219,7 @@ TrainerHill_Entrance_Movement_PlayerExitElevator: @ 8268385 TrainerHill_Entrance_EventScript_Records:: @ 8268388 lockall - fadescreen 1 + fadescreen FADE_TO_BLACK special ShowTrainerHillRecords waitstate releaseall diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc index 38f2f9c40..0e79fe8df 100644 --- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc @@ -1,68 +1,70 @@ VerdanturfTown_BattleTentBattleRoom_MapScripts:: @ 82022FA map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_BattleTentBattleRoom_OnTransition - map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentBattleRoom_MapScript2_20233E - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentBattleRoom_MapScript2_202541 + map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentBattleRoom_OnFrame + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentBattleRoom_OnWarp .byte 0 + @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden + @ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1 + @ The opponent is represented by object event 2, which has the gfx id VAR_OBJ_GFX_ID_0 + VerdanturfTown_BattleTentBattleRoom_OnTransition: @ 820230A - call VerdanturfTown_BattleTentBattleRoom_EventScript_202310 + call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx end -VerdanturfTown_BattleTentBattleRoom_EventScript_202310:: @ 8202310 +VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8202310 checkplayergender compare VAR_RESULT, MALE - goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_202328 + goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale compare VAR_RESULT, FEMALE - goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_202333 + goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return -VerdanturfTown_BattleTentBattleRoom_EventScript_202328:: @ 8202328 +VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 8202328 setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -VerdanturfTown_BattleTentBattleRoom_EventScript_202333:: @ 8202333 +VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8202333 setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -VerdanturfTown_BattleTentBattleRoom_MapScript2_20233E: @ 820233E - map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_202348 +VerdanturfTown_BattleTentBattleRoom_OnFrame: @ 820233E + map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom .2byte 0 -VerdanturfTown_BattleTentBattleRoom_EventScript_202348:: @ 8202348 +VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 8202348 showobjectat 1, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM - applymovement 1, VerdanturfTown_BattleTentBattleRoom_Movement_202575 + applymovement 1, VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 0 - goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_20243C - -VerdanturfTown_BattleTentBattleRoom_EventScript_20236F:: @ 820236F + goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge +VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820236F tower_setopponent addobject 2 - applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_20257B + applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter waitmovement 0 battletent_getopponentintro msgbox gStringVar4, MSGBOX_DEFAULT waitmessage call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle switch VAR_RESULT - case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_2023C8 - -VerdanturfTown_BattleTentBattleRoom_EventScript_2023AA:: @ 82023AA + case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent +VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 82023AA frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate -VerdanturfTown_BattleTentBattleRoom_EventScript_2023C8:: @ 82023C8 +VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 82023C8 frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT switch VAR_RESULT - case 3, VerdanturfTown_BattleTentBattleRoom_EventScript_202501 - applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_202581 + case 3, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon + applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit waitmovement 0 removeobject 2 applymovement 3, Common_Movement_WalkInPlaceFastestDown @@ -76,84 +78,84 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_2023C8:: @ 82023C8 waitfanfare special HealPlayerParty -VerdanturfTown_BattleTentBattleRoom_EventScript_20243C:: @ 820243C +VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 820243C frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 - call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_202565 + call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent compare VAR_RESULT, 2 - call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_20256C + call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 switch VAR_RESULT - case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_2024EA - case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_20248A - case 2, VerdanturfTown_BattleTentBattleRoom_EventScript_2024B8 + case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge + case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge + case 2, VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_20248A:: @ 820248A +VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 820248A msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT - case NO, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C - case YES, VerdanturfTown_BattleTentBattleRoom_EventScript_20251F - case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C + case NO, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge + case YES, VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge + case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_2024B8:: @ 82024B8 +VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 82024B8 message BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, 0 switch VAR_RESULT - case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C - case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_2023AA - case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C + case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge + case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost + case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_2024EA:: @ 82024EA +VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 82024EA applymovement 3, Common_Movement_WalkInPlaceFastestRight applymovement 1, Common_Movement_WalkInPlaceFastestRight waitmovement 0 closemessage - goto VerdanturfTown_BattleTentBattleRoom_EventScript_20236F + goto VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter -VerdanturfTown_BattleTentBattleRoom_EventScript_202501:: @ 8202501 +VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8202501 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate -VerdanturfTown_BattleTentBattleRoom_EventScript_20251F:: @ 820251F +VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 820251F message BattleFrontier_BattlePalaceBattleRoom_Text_SavingData waitmessage verdanturftent_save CHALLENGE_STATUS_PAUSED playse SE_SAVE waitse - fadescreen 1 + fadescreen FADE_TO_BLACK frontier_reset end -VerdanturfTown_BattleTentBattleRoom_MapScript2_202541: @ 8202541 - map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_20254B +VerdanturfTown_BattleTentBattleRoom_OnWarp: @ 8202541 + map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects .2byte 0 -VerdanturfTown_BattleTentBattleRoom_EventScript_20254B:: @ 820254B +VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 820254B hideobjectat 1, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM - call VerdanturfTown_BattleTentBattleRoom_EventScript_202310 + call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx setvar VAR_TEMP_1, 1 - applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_202573 + applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible removeobject 2 end -VerdanturfTown_BattleTentBattleRoom_EventScript_202565:: @ 8202565 +VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8202565 message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor2ndOpponent waitmessage return -VerdanturfTown_BattleTentBattleRoom_EventScript_20256C:: @ 820256C +VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 820256C message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor3rdOpponent waitmessage return -VerdanturfTown_BattleTentBattleRoom_Movement_202573: @ 8202573 +VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible: @ 8202573 set_invisible step_end -VerdanturfTown_BattleTentBattleRoom_Movement_202575: @ 8202575 +VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8202575 set_visible walk_up walk_up @@ -161,7 +163,7 @@ VerdanturfTown_BattleTentBattleRoom_Movement_202575: @ 8202575 face_right step_end -VerdanturfTown_BattleTentBattleRoom_Movement_20257B: @ 820257B +VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 820257B walk_down walk_down walk_down @@ -169,7 +171,7 @@ VerdanturfTown_BattleTentBattleRoom_Movement_20257B: @ 820257B face_left step_end -VerdanturfTown_BattleTentBattleRoom_Movement_202581: @ 8202581 +VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8202581 walk_up walk_up walk_up diff --git a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc index 719c99d1d..b1dedf1a1 100644 --- a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc @@ -1,21 +1,21 @@ VerdanturfTown_BattleTentCorridor_MapScripts:: @ 820208A - map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentCorridor_MapScript2_202090 + map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentCorridor_OnFrame .byte 0 -VerdanturfTown_BattleTentCorridor_MapScript2_202090: @ 8202090 - map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentCorridor_EventScript_20209A +VerdanturfTown_BattleTentCorridor_OnFrame: @ 8202090 + map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor .2byte 0 -VerdanturfTown_BattleTentCorridor_EventScript_20209A:: @ 820209A +VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 820209A lockall setvar VAR_TEMP_0, 1 - applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_2020DE - applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_2020DE + applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor + applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor waitmovement 0 opendoor 2, 1 waitdooranim - applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_2020E4 - applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_2020E3 + applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor + applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor waitmovement 0 closedoor 2, 1 waitdooranim @@ -25,22 +25,24 @@ VerdanturfTown_BattleTentCorridor_EventScript_20209A:: @ 820209A releaseall end -VerdanturfTown_BattleTentCorridor_Movement_2020DE: @ 82020DE +VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor: @ 82020DE walk_up walk_up walk_up walk_up step_end -VerdanturfTown_BattleTentCorridor_Movement_2020E3: @ 82020E3 +VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor: @ 82020E3 walk_up - -VerdanturfTown_BattleTentCorridor_Movement_2020E4: @ 82020E4 +VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 82020E4 walk_up set_invisible step_end -VerdanturfTown_BattleTentCorridor_Text_2020E7: @ 82020E7 + +@ Leftover text from when this was a Contest Hall in R/S +@ Unused +VerdanturfTown_ContestHall_Text_WhichContestYouEntering: @ 82020E7 .string "Which CONTEST are you entering?\n" .string "Want a piece of advice?\p" .string "In any CONTEST, for example, a CUTE\n" @@ -49,21 +51,24 @@ VerdanturfTown_BattleTentCorridor_Text_2020E7: @ 82020E7 .string "You need to work out ways for raising\n" .string "POKéMON better.$" -VerdanturfTown_BattleTentCorridor_Text_2021C4: @ 82021C4 +@ Unused +VerdanturfTown_ContestHall_Text_RaisedMonToBeCute: @ 82021C4 .string "I raised my POKéMON to be cute.\p" .string "I found out you can put POKéMON in\n" .string "a CONTEST for cuteness!\p" .string "I'm so glad I raised my POKéMON with\n" .string "loving care…$" -VerdanturfTown_BattleTentCorridor_Text_202251: @ 8202251 +@ Unused +VerdanturfTown_ContestHall_Text_MyMonRules: @ 8202251 .string "My POKéMON rules!\p" .string "It's cool, tough yet beautiful, cute,\n" .string "and smart. It's complete!\p" .string "I may as well go for wins in every\n" .string "single CONTEST.$" -VerdanturfTown_BattleTentCorridor_Text_2022D6: @ 82022D6 +@ Unused +VerdanturfTown_ContestHall_Text_NormalRankStage: @ 82022D6 .string "POKéMON CONTESTS\n" .string "NORMAL RANK STAGE!$" diff --git a/data/maps/VerdanturfTown_BattleTentLobby/map.json b/data/maps/VerdanturfTown_BattleTentLobby/map.json index ec3dd904d..f04eac473 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/map.json +++ b/data/maps/VerdanturfTown_BattleTentLobby/map.json @@ -24,7 +24,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201873", + "script": "VerdanturfTown_BattleTentLobby_EventScript_Attendant", "flag": "0" }, { @@ -37,7 +37,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201A7B", + "script": "VerdanturfTown_BattleTentLobby_EventScript_AttractGiver", "flag": "0" }, { @@ -50,7 +50,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201ABC", + "script": "VerdanturfTown_BattleTentLobby_EventScript_Boy1", "flag": "0" }, { @@ -63,7 +63,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201AC5", + "script": "VerdanturfTown_BattleTentLobby_EventScript_Boy2", "flag": "0" }, { @@ -76,7 +76,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201AD0", + "script": "VerdanturfTown_BattleTentLobby_EventScript_Scott", "flag": "FLAG_HIDE_VERDANTURF_TOWN_SCOTT" }, { @@ -89,7 +89,7 @@ "movement_range_y": 1, "trainer_type": "0", "trainer_sight_or_berry_tree_id": "0", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201AF7", + "script": "VerdanturfTown_BattleTentLobby_EventScript_LittleBoy", "flag": "0" } ], @@ -117,7 +117,7 @@ "y": 5, "elevation": 0, "player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY", - "script": "VerdanturfTown_BattleTentLobby_EventScript_201B02" + "script": "VerdanturfTown_BattleTentLobby_EventScript_RulesBoard" } ] } diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc index 72f78c0f3..25ed0770f 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc @@ -1,30 +1,30 @@ VerdanturfTown_BattleTentLobby_MapScripts:: @ 82016D0 - map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentLobby_MapScript2_2016EF - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentLobby_MapScript2_2016DB + map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentLobby_OnFrame + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentLobby_OnWarp .byte 0 -VerdanturfTown_BattleTentLobby_MapScript2_2016DB: @ 82016DB - map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentLobby_EventScript_2016E5 +VerdanturfTown_BattleTentLobby_OnWarp: @ 82016DB + map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth .2byte 0 -VerdanturfTown_BattleTentLobby_EventScript_2016E5:: @ 82016E5 +VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 82016E5 setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -VerdanturfTown_BattleTentLobby_MapScript2_2016EF: @ 82016EF - map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentLobby_EventScript_201719 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_201722 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_201837 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, VerdanturfTown_BattleTentLobby_EventScript_201757 - map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_2017FD +VerdanturfTown_BattleTentLobby_OnFrame: @ 82016EF + map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, VerdanturfTown_BattleTentLobby_EventScript_WonChallenge + map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_LostChallenge .2byte 0 -VerdanturfTown_BattleTentLobby_EventScript_201719:: @ 8201719 +VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus:: @ 8201719 frontier_getstatus end -VerdanturfTown_BattleTentLobby_EventScript_201722:: @ 8201722 +VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8201722 lockall msgbox BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge, MSGBOX_DEFAULT closemessage @@ -34,10 +34,10 @@ VerdanturfTown_BattleTentLobby_EventScript_201722:: @ 8201722 releaseall end -VerdanturfTown_BattleTentLobby_EventScript_201757:: @ 8201757 +VerdanturfTown_BattleTentLobby_EventScript_WonChallenge:: @ 8201757 lockall - msgbox VerdanturfTown_BattleTentLobby_Text_2C5731, MSGBOX_DEFAULT - message VerdanturfTown_BattleTentLobby_Text_2C5791 + msgbox VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak, MSGBOX_DEFAULT + message VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded waitmessage verdanturftent_setrandomprize frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 @@ -45,23 +45,23 @@ VerdanturfTown_BattleTentLobby_EventScript_201757:: @ 8201757 playse SE_SAVE waitse -VerdanturfTown_BattleTentLobby_EventScript_201791:: @ 8201791 - msgbox VerdanturfTown_BattleTentLobby_Text_2C57CD, MSGBOX_DEFAULT +VerdanturfTown_BattleTentLobby_EventScript_GivePrize:: @ 8201791 + msgbox VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize, MSGBOX_DEFAULT verdanturftent_giveprize switch VAR_RESULT - case 0, VerdanturfTown_BattleTentLobby_EventScript_2017DD + case FALSE, VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 - message VerdanturfTown_BattleTentLobby_Text_24A554 + message BattleFrontier_BattleDomeLobby_Text_ReceivedPrize @ Odd that it used Dome's copy instead of Palace's waitmessage playfanfare MUS_FANFA4 waitfanfare - msgbox VerdanturfTown_BattleTentLobby_Text_2C539A, MSGBOX_DEFAULT + msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -VerdanturfTown_BattleTentLobby_EventScript_2017DD:: @ 82017DD +VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 82017DD msgbox BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize, MSGBOX_DEFAULT waitmessage closemessage @@ -69,27 +69,27 @@ VerdanturfTown_BattleTentLobby_EventScript_2017DD:: @ 82017DD releaseall end -VerdanturfTown_BattleTentLobby_EventScript_2017EE:: @ 82017EE +VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting:: @ 82017EE lockall - msgbox VerdanturfTown_BattleTentLobby_Text_2C5731, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201791 + msgbox VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak, MSGBOX_DEFAULT + goto VerdanturfTown_BattleTentLobby_EventScript_GivePrize end -VerdanturfTown_BattleTentLobby_EventScript_2017FD:: @ 82017FD +VerdanturfTown_BattleTentLobby_EventScript_LostChallenge:: @ 82017FD lockall - message VerdanturfTown_BattleTentLobby_Text_2C56B8 + message VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded waitmessage frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 verdanturftent_save 0 playse SE_SAVE waitse - msgbox VerdanturfTown_BattleTentLobby_Text_2C539A, MSGBOX_DEFAULT + msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -VerdanturfTown_BattleTentLobby_EventScript_201837:: @ 8201837 +VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 8201837 lockall msgbox BattleFrontier_BattlePalaceLobby_Text_WeHaveBeenWaiting, MSGBOX_DEFAULT message BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge @@ -99,50 +99,49 @@ VerdanturfTown_BattleTentLobby_EventScript_201837:: @ 8201837 waitse frontier_set FRONTIER_DATA_PAUSED, FALSE setvar VAR_TEMP_0, 255 - goto VerdanturfTown_BattleTentLobby_EventScript_2019AE + goto VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge -VerdanturfTown_BattleTentLobby_EventScript_201873:: @ 8201873 +VerdanturfTown_BattleTentLobby_EventScript_Attendant:: @ 8201873 lock faceplayer verdanturftent_getprize - compare VAR_RESULT, 0 - goto_if_ne VerdanturfTown_BattleTentLobby_EventScript_2017EE + compare VAR_RESULT, ITEM_NONE + goto_if_ne VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting special SavePlayerParty - msgbox VerdanturfTown_BattleTentLobby_Text_2C50C3, MSGBOX_DEFAULT - -VerdanturfTown_BattleTentLobby_EventScript_201893:: @ 8201893 - message VerdanturfTown_BattleTentLobby_Text_2C5129 + msgbox VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT +VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8201893 + message VerdanturfTown_BattleTentLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, 0 switch VAR_RESULT - case 0, VerdanturfTown_BattleTentLobby_EventScript_2018CF - case 1, VerdanturfTown_BattleTentLobby_EventScript_2019DB - case 2, VerdanturfTown_BattleTentLobby_EventScript_201A37 - case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_201A37 + case 0, VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge + case 1, VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge + case 2, VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge + case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_2018CF:: @ 82018CF +VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 82018CF setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PALACE setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES setvar VAR_RESULT, 2 frontier_checkineligible compare VAR_0x8004, TRUE - goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_2019E8 + goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT - msgbox VerdanturfTown_BattleTentLobby_Text_2C5633, MSGBOX_DEFAULT - fadescreen 1 + msgbox VerdanturfTown_BattleTentLobby_Text_SelectThreeMons, MSGBOX_DEFAULT + fadescreen FADE_TO_BLACK setvar VAR_0x8004, 1 setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate compare VAR_RESULT, 0 - goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_201A34 - msgbox VerdanturfTown_BattleTentLobby_Text_2C5662, MSGBOX_YESNO + goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge + msgbox VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT - case NO, VerdanturfTown_BattleTentLobby_EventScript_201A34 - case YES, VerdanturfTown_BattleTentLobby_EventScript_201954 - case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_201A34 + case NO, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge + case YES, VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge + case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_201954:: @ 8201954 +VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8201954 setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER verdanturftent_init @@ -154,185 +153,184 @@ VerdanturfTown_BattleTentLobby_EventScript_201954:: @ 8201954 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 - goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_201A1D - -VerdanturfTown_BattleTentLobby_EventScript_2019AE:: @ 82019AE + goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed +VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: @ 82019AE special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE - msgbox VerdanturfTown_BattleTentLobby_Text_2C56A2, MSGBOX_DEFAULT + msgbox VerdanturfTown_BattleTentLobby_Text_NowFollowMe, MSGBOX_DEFAULT closemessage - call VerdanturfTown_BattleTentLobby_EventScript_201A41 + call VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor warp MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR, 255, 2, 7 setvar VAR_TEMP_0, 0 waitstate end -VerdanturfTown_BattleTentLobby_EventScript_2019DB:: @ 82019DB - msgbox VerdanturfTown_BattleTentLobby_Text_2C5163, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201893 +VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge:: @ 82019DB + msgbox VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent, MSGBOX_DEFAULT + goto VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge -VerdanturfTown_BattleTentLobby_EventScript_2019E8:: @ 82019E8 +VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons:: @ 82019E8 switch VAR_RESULT - case FRONTIER_LVL_50, VerdanturfTown_BattleTentLobby_EventScript_201A03 - case FRONTIER_LVL_OPEN, VerdanturfTown_BattleTentLobby_EventScript_201A10 + case FRONTIER_LVL_50, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50 + case FRONTIER_LVL_OPEN, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen -VerdanturfTown_BattleTentLobby_EventScript_201A03:: @ 8201A03 - msgbox VerdanturfTown_BattleTentLobby_Text_2C543D, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201A3F +VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: @ 8201A03 + msgbox VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT + goto VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_201A10:: @ 8201A10 - msgbox VerdanturfTown_BattleTentLobby_Text_2C5538, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201A3F +VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 8201A10 + msgbox VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT + goto VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_201A1D:: @ 8201A1D +VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 8201A1D frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 - goto VerdanturfTown_BattleTentLobby_EventScript_201A37 + goto VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_201A34:: @ 8201A34 +VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 8201A34 special LoadPlayerParty -VerdanturfTown_BattleTentLobby_EventScript_201A37:: @ 8201A37 - msgbox VerdanturfTown_BattleTentLobby_Text_2C539A, MSGBOX_DEFAULT -VerdanturfTown_BattleTentLobby_EventScript_201A3F:: @ 8201A3F +VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge:: @ 8201A37 + msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT +VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge:: @ 8201A3F release end -VerdanturfTown_BattleTentLobby_EventScript_201A41:: @ 8201A41 - applymovement 1, VerdanturfTown_BattleTentLobby_Movement_201A70 - applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_201A70 +VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor:: @ 8201A41 + applymovement 1, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor + applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor waitmovement 0 opendoor 6, 1 waitdooranim - applymovement 1, VerdanturfTown_BattleTentLobby_Movement_201A74 - applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_201A77 + applymovement 1, VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor + applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor waitmovement 0 closedoor 6, 1 waitdooranim return -VerdanturfTown_BattleTentLobby_Movement_201A70: @ 8201A70 +VerdanturfTown_BattleTentLobby_Movement_WalkToDoor: @ 8201A70 walk_up walk_up walk_up step_end -VerdanturfTown_BattleTentLobby_Movement_201A74: @ 8201A74 +VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor: @ 8201A74 walk_up set_invisible step_end -VerdanturfTown_BattleTentLobby_Movement_201A77: @ 8201A77 +VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor: @ 8201A77 walk_up walk_up set_invisible step_end -VerdanturfTown_BattleTentLobby_EventScript_201A7B:: @ 8201A7B +VerdanturfTown_BattleTentLobby_EventScript_AttractGiver:: @ 8201A7B lock faceplayer - goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_201AB2 - msgbox VerdanturfTown_BattleTentLobby_Text_201D9E, MSGBOX_DEFAULT + goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract + msgbox VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep, MSGBOX_DEFAULT giveitem_std ITEM_TM45 compare VAR_RESULT, 0 goto_if_eq Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM45 - msgbox VerdanturfTown_BattleTentLobby_Text_201E43, MSGBOX_DEFAULT + msgbox VerdanturfTown_BattleTentLobby_Text_AttractionMutual, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_201AB2:: @ 8201AB2 - msgbox VerdanturfTown_BattleTentLobby_Text_201E43, MSGBOX_DEFAULT +VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract:: @ 8201AB2 + msgbox VerdanturfTown_BattleTentLobby_Text_AttractionMutual, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_201ABC:: @ 8201ABC - msgbox VerdanturfTown_BattleTentLobby_Text_201EB1, MSGBOX_NPC +VerdanturfTown_BattleTentLobby_EventScript_Boy1:: @ 8201ABC + msgbox VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves, MSGBOX_NPC end -VerdanturfTown_BattleTentLobby_EventScript_201AC5:: @ 8201AC5 +VerdanturfTown_BattleTentLobby_EventScript_Boy2:: @ 8201AC5 lock - msgbox VerdanturfTown_BattleTentLobby_Text_201BD4, MSGBOX_DEFAULT + msgbox VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_201AD0:: @ 8201AD0 +VerdanturfTown_BattleTentLobby_EventScript_Scott:: @ 8201AD0 lock faceplayer - goto_if_set FLAG_MET_SCOTT_IN_VERDANTURF, VerdanturfTown_BattleTentLobby_EventScript_201AED - msgbox VerdanturfTown_BattleTentLobby_Text_201F3F, MSGBOX_DEFAULT + goto_if_set FLAG_MET_SCOTT_IN_VERDANTURF, VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo + msgbox VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers, MSGBOX_DEFAULT addvar VAR_SCOTT_STATE, 1 setflag FLAG_MET_SCOTT_IN_VERDANTURF release end -VerdanturfTown_BattleTentLobby_EventScript_201AED:: @ 8201AED - msgbox VerdanturfTown_BattleTentLobby_Text_202025, MSGBOX_DEFAULT +VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: @ 8201AED + msgbox VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_201AF7:: @ 8201AF7 +VerdanturfTown_BattleTentLobby_EventScript_LittleBoy:: @ 8201AF7 lock - msgbox VerdanturfTown_BattleTentLobby_Text_201D11, MSGBOX_DEFAULT + msgbox VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_201B02:: @ 8201B02 +VerdanturfTown_BattleTentLobby_EventScript_RulesBoard:: @ 8201B02 lockall - msgbox VerdanturfTown_BattleTentLobby_Text_2C6878, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 + msgbox VerdanturfTown_BattleTentLobby_Text_RulesAreListed, MSGBOX_DEFAULT + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201B11:: @ 8201B11 +VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8201B11 message BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading waitmessage setvar VAR_0x8004, SCROLL_MULTI_BATTLE_TENT_RULES special ShowScrollableMultichoice waitstate switch VAR_RESULT - case 0, VerdanturfTown_BattleTentLobby_EventScript_201B7E - case 1, VerdanturfTown_BattleTentLobby_EventScript_201B8C - case 2, VerdanturfTown_BattleTentLobby_EventScript_201B9A - case 3, VerdanturfTown_BattleTentLobby_EventScript_201BA8 - case 4, VerdanturfTown_BattleTentLobby_EventScript_201BB6 - case 5, VerdanturfTown_BattleTentLobby_EventScript_201BC4 - case 6, VerdanturfTown_BattleTentLobby_EventScript_201BD2 - case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_201BD2 + case 0, VerdanturfTown_BattleTentLobby_EventScript_RulesLevel + case 1, VerdanturfTown_BattleTentLobby_EventScript_RulesBasics + case 2, VerdanturfTown_BattleTentLobby_EventScript_RulesNature + case 3, VerdanturfTown_BattleTentLobby_EventScript_RulesMoves + case 4, VerdanturfTown_BattleTentLobby_EventScript_RulesUnderpowered + case 5, VerdanturfTown_BattleTentLobby_EventScript_RulesWhenInDanger + case 6, VerdanturfTown_BattleTentLobby_EventScript_ExitRules + case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_ExitRules end -VerdanturfTown_BattleTentLobby_EventScript_201B7E:: @ 8201B7E - msgbox VerdanturfTown_BattleTentLobby_Text_2C67CD, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 +VerdanturfTown_BattleTentLobby_EventScript_RulesLevel:: @ 8201B7E + msgbox BattleTentLobby_Text_ExplainLevelRules, MSGBOX_DEFAULT + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201B8C:: @ 8201B8C +VerdanturfTown_BattleTentLobby_EventScript_RulesBasics:: @ 8201B8C msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesBasics, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201B9A:: @ 8201B9A +VerdanturfTown_BattleTentLobby_EventScript_RulesNature:: @ 8201B9A msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201BA8:: @ 8201BA8 +VerdanturfTown_BattleTentLobby_EventScript_RulesMoves:: @ 8201BA8 msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201BB6:: @ 8201BB6 +VerdanturfTown_BattleTentLobby_EventScript_RulesUnderpowered:: @ 8201BB6 msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201BC4:: @ 8201BC4 +VerdanturfTown_BattleTentLobby_EventScript_RulesWhenInDanger:: @ 8201BC4 msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesWhenInDanger, MSGBOX_DEFAULT - goto VerdanturfTown_BattleTentLobby_EventScript_201B11 + goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_201BD2:: @ 8201BD2 +VerdanturfTown_BattleTentLobby_EventScript_ExitRules:: @ 8201BD2 releaseall end -VerdanturfTown_BattleTentLobby_Text_201BD4: @ 8201BD4 +VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves: @ 8201BD4 .string "If it doesn't like a certain move,\n" .string "a POKéMON will be reluctant to use it.\p" .string "It doesn't matter how strong it is,\n" @@ -344,14 +342,14 @@ VerdanturfTown_BattleTentLobby_Text_201BD4: @ 8201BD4 .string "potential, it's probably failing at\l" .string "using a disliked move against its will.$" -VerdanturfTown_BattleTentLobby_Text_201D11: @ 8201D11 +VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry: @ 8201D11 .string "My big sister is gentle usually.\n" .string "But when she gets angry,\l" .string "she's really, really scary!\p" .string "I bet a gentle POKéMON will be scary\n" .string "if it gets angry!$" -VerdanturfTown_BattleTentLobby_Text_201D9E: @ 8201D9E +VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep: @ 8201D9E .string "My feelings toward my POKéMON…\n" .string "The attraction runs deep…\p" .string "Oh, hi, you didn't see that, did you?\n" @@ -359,20 +357,20 @@ VerdanturfTown_BattleTentLobby_Text_201D9E: @ 8201D9E .string "How would you like this TM for\n" .string "your POKéMON?$" -VerdanturfTown_BattleTentLobby_Text_201E43: @ 8201E43 +VerdanturfTown_BattleTentLobby_Text_AttractionMutual: @ 8201E43 .string "My feelings toward my POKéMON…\n" .string "I'm sure the attraction is mutual!\p" .string "They battle exactly the way I want\n" .string "them to!$" -VerdanturfTown_BattleTentLobby_Text_201EB1: @ 8201EB1 +VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves: @ 8201EB1 .string "What kind of moves have you taught\n" .string "your POKéMON?\p" .string "I think you would give yourself\n" .string "an advantage if they knew how to\l" .string "heal or protect themselves.$" -VerdanturfTown_BattleTentLobby_Text_201F3F: @ 8201F3F +VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers: @ 8201F3F .string "SCOTT: Hey there, {PLAYER}{KUN}!\n" .string "I thought I might see you here.\p" .string "A BATTLE TENT's a place where\n" @@ -382,7 +380,7 @@ VerdanturfTown_BattleTentLobby_Text_201F3F: @ 8201F3F .string "{PLAYER}{KUN}, I expect you to do\n" .string "the best you can!$" -VerdanturfTown_BattleTentLobby_Text_202025: @ 8202025 +VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly: @ 8202025 .string "SCOTT: I visit here regularly in hopes\n" .string "of seeing tough TRAINERS in action\l" .string "in whatever the situation.$" diff --git a/data/scripts/abnormal_weather.inc b/data/scripts/abnormal_weather.inc index 9a900f315..88da0405f 100644 --- a/data/scripts/abnormal_weather.inc +++ b/data/scripts/abnormal_weather.inc @@ -179,7 +179,7 @@ AbnormalWeather_EventScript_EndEventAndCleanup_1:: @ 8273D1F AbnormalWeather_EventScript_EndEventAndCleanup_2:: @ 8273D31 closemessage - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK setweather WEATHER_SUNNY doweather call AbnormalWeather_EventScript_CleanupMapTiles @@ -187,7 +187,7 @@ AbnormalWeather_EventScript_EndEventAndCleanup_2:: @ 8273D31 setvar VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_NONE setvar VAR_SHOULD_END_ABNORMAL_WEATHER, 0 clearflag FLAG_HIDE_MAP_NAME_POPUP - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK releaseall end diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc index 53b43a1f9..b3ae904a0 100644 --- a/data/scripts/apprentice.inc +++ b/data/scripts/apprentice.inc @@ -96,7 +96,7 @@ Apprentice_EventScript_UseWhatHeldItem: @ 82B6ACF apprentice_msg TRUE, APPRENTICE_MSG_WHAT_HELD_ITEM apprentice_freequestion Apprentice_EventScript_ChooseHoldItem: @ 82B6B09 - fadescreen 1 + fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 apprentice_openbag compare VAR_RESULT, FALSE diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index eecd08273..1af0b996c 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -302,7 +302,7 @@ BerryBlender_EventScript_TryUseBerryBlender1: @ 8293CEE @ VAR_0x8009 here is the Blender number. 1 is top right, 2 is bottom right, 3 is bottom left BerryBlender_EventScript_DoBerryBlending: @ 8293D2C copyvar VAR_0x8004, VAR_0x8009 - fadescreen 1 + fadescreen FADE_TO_BLACK special DoBerryBlending waitstate releaseall @@ -629,7 +629,7 @@ BerryBlender_EventScript_FourPlayerLink: @ 8294139 BerryBlender_EventScript_DoLinkBerryBlending: @ 8294147 setvar VAR_0x8004, 0 - fadescreen 1 + fadescreen FADE_TO_BLACK removeobject 240 removeobject 239 removeobject 238 @@ -678,7 +678,7 @@ BerryBlender_EventScript_LinkError: @ 829419D end BerryBlender_EventScript_SpawnLinkPartners: @ 82941AA - fadescreen 1 + fadescreen FADE_TO_BLACK specialvar VAR_RESULT, GetLinkPartnerNames copyvar VAR_0x8008, VAR_RESULT copyvar VAR_0x8004, VAR_0x8008 @@ -687,7 +687,7 @@ BerryBlender_EventScript_SpawnLinkPartners: @ 82941AA end BerryBlender_EventScript_LinkPlayersArrived: @ 82941C4 - fadescreen 0 + fadescreen FADE_FROM_BLACK switch VAR_0x8008 case 2, BerryBlender_EventScript_TwoPlayerLink case 3, BerryBlender_EventScript_ThreePlayerLink diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index 354aa045e..13d242468 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -39,7 +39,7 @@ BerryTree_EventScript_WantToPlant:: @ 8274374 end BerryTree_EventScript_ChooseBerryToPlant:: @ 8274393 - fadescreen 1 + fadescreen FADE_TO_BLACK closemessage special Bag_ChooseBerry waitstate diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index e4e0f0ffd..c5bdca46d 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -723,7 +723,7 @@ EventScript_BattleColosseum2P_PlayerSpot1:: @ 827737E end EventScript_BattleColosseum4P_PlayerSpot0:: @ 8277388 - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate compare VAR_RESULT, 0 @@ -734,7 +734,7 @@ EventScript_BattleColosseum4P_PlayerSpot0:: @ 8277388 end EventScript_BattleColosseum4P_PlayerSpot1:: @ 82773A3 - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate compare VAR_RESULT, 0 @@ -745,7 +745,7 @@ EventScript_BattleColosseum4P_PlayerSpot1:: @ 82773A3 end EventScript_BattleColosseum4P_PlayerSpot2:: @ 82773BE - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate compare VAR_RESULT, 0 @@ -756,7 +756,7 @@ EventScript_BattleColosseum4P_PlayerSpot2:: @ 82773BE end EventScript_BattleColosseum4P_PlayerSpot3:: @ 82773D9 - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate compare VAR_RESULT, 0 @@ -838,14 +838,14 @@ RecordCorner_EventScript_ReceivedGiftItem:: @ 8277471 CableClub_EventScript_ReadTrainerCard:: @ 827747E msgbox CableClub_Text_GotToLookAtTrainerCard, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK special Script_ShowLinkTrainerCard waitstate end CableClub_EventScript_ReadTrainerCardColored:: @ 827748D msgbox CableClub_Text_GotToLookAtColoredTrainerCard, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK special Script_ShowLinkTrainerCard waitstate end @@ -1309,7 +1309,7 @@ EventScript_WirelessBoxResults:: @ 8277B8A specialvar VAR_RESULT, IsWirelessAdapterConnected compare VAR_RESULT, FALSE goto_if_eq CableClub_EventScript_AdapterNotConnected - fadescreen 1 + fadescreen FADE_TO_BLACK special sub_801A42C waitstate msgbox CableClub_Text_ParticipantsStepUpToCounter, MSGBOX_DEFAULT @@ -1408,7 +1408,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: @ 8277CE9 compare VAR_RESULT, FALSE goto_if_eq MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon msgbox MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK setvar VAR_0x8005, 0 special ChooseMonForWirelessMinigame waitstate @@ -1427,7 +1427,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: @ 8277D35 compare VAR_RESULT, FALSE goto_if_eq MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon msgbox MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK setvar VAR_0x8005, 1 special ChooseMonForWirelessMinigame waitstate diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc index 968464f9d..6506897ee 100644 --- a/data/scripts/day_care.inc +++ b/data/scripts/day_care.inc @@ -102,7 +102,7 @@ Route117_PokemonDayCare_EventScript_GiveMonToRaise:: @ 8291D56 compare VAR_RESULT, 2 goto_if_eq Route117_PokemonDayCare_EventScript_OnlyTwoAliveMons msgbox Route117_PokemonDayCare_Text_WhichMonShouldWeRaise, MSGBOX_DEFAULT - fadescreen 1 + fadescreen FADE_TO_BLACK special ChooseSendDaycareMon waitstate compare VAR_0x8004, 255 diff --git a/data/scripts/field_poison.inc b/data/scripts/field_poison.inc index ccdebd5cd..3ce36b384 100644 --- a/data/scripts/field_poison.inc +++ b/data/scripts/field_poison.inc @@ -15,7 +15,7 @@ EventScript_FieldWhiteOut:: @ 82736D9 waitbuttonpress special Script_FadeOutMapMusic waitstate - fadescreen 1 + fadescreen FADE_TO_BLACK call_if_set FLAG_WHITEOUT_TO_LAVARIDGE, EventScript_SetRespawnLavaridgePkmnCenter special SetCB2WhiteOut waitstate @@ -42,7 +42,7 @@ EventScript_FrontierFieldWhiteOut:: @ 82736F8 goto_if_eq TrainerHill_1F_EventScript_Lost special Script_FadeOutMapMusic waitstate - fadescreen 1 + fadescreen FADE_TO_BLACK special SetCB2WhiteOut waitstate end diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc index f553ea0ad..c2ff593cf 100644 --- a/data/scripts/lilycove_lady.inc +++ b/data/scripts/lilycove_lady.inc @@ -73,7 +73,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor:: @ 82A845E end LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: @ 82A846C - fadescreen 1 + fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 special Script_FavorLadyOpenBagMenu waitstate @@ -326,7 +326,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz:: @ 82A8778 LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz:: @ 82A8785 msgbox LilycoveCity_PokemonCenter_1F_Text_PickYourPrize, MSGBOX_DEFAULT LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: @ 82A878D - fadescreen 1 + fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 special Script_QuizLadyOpenBagMenu waitstate @@ -350,7 +350,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz:: @ 82A87CE special ClearQuizLadyPlayerAnswer setvar VAR_0x8004, EASY_CHAT_TYPE_QUIZ_QUESTION LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: @ 82A87E1 - fadescreen 1 + fadescreen FADE_TO_BLACK special QuizLadySetCustomQuestion waitstate compare VAR_RESULT, 0 @@ -418,7 +418,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock:: @ 82A88B0 end LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: @ 82A88BA - fadescreen 1 + fadescreen FADE_TO_BLACK special OpenPokeblockCaseForContestLady waitstate compare VAR_RESULT, 0xFFFF diff --git a/data/scripts/pc_transfer.inc b/data/scripts/pc_transfer.inc index cc583022d..ec58b26f1 100644 --- a/data/scripts/pc_transfer.inc +++ b/data/scripts/pc_transfer.inc @@ -6,7 +6,7 @@ Common_EventScript_GetGiftMonPartySlot:: @ 827378B return Common_EventScript_NameReceivedBoxMon:: @ 8273797 - fadescreen 1 + fadescreen FADE_TO_BLACK special ChangeBoxPokemonNickname waitstate lock diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index 9e9b23c04..6adcf061b 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -101,14 +101,14 @@ PlayersHouse_2F_EventScript_MomComesUpstairsFemale:: @ 829280F PlayersHouse_2F_EventScript_CheckWallClock:: @ 829283F incrementgamestat GAME_STAT_CHECKED_CLOCK - fadescreen 1 + fadescreen FADE_TO_BLACK special Special_ViewWallClock waitstate releaseall end PlayersHouse_2F_EventScript_SetWallClock:: @ 8292849 - fadescreen 1 + fadescreen FADE_TO_BLACK special StartWallClock waitstate return diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc index 72d1d3c92..6a811d935 100644 --- a/data/scripts/safari_zone.inc +++ b/data/scripts/safari_zone.inc @@ -52,7 +52,7 @@ EventScript_PokeBlockFeeder:: @ 82A4BAC end SafariZone_EventScript_ChoosePokeblock:: @ 82A4BD0 - fadescreen 1 + fadescreen FADE_TO_BLACK special OpenPokeblockCaseOnFeeder waitstate compare VAR_RESULT, 0xFFFF diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc index e92c419dc..523eef39b 100644 --- a/data/scripts/secret_base.inc +++ b/data/scripts/secret_base.inc @@ -214,10 +214,10 @@ SecretBase_EventScript_AlreadyHasSecretBase:: @ 8275BE8 msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_CancelOnEntrance - fadescreenswapbuffers 1 + fadescreenswapbuffers FADE_TO_BLACK special MoveOutOfSecretBaseFromOutside closemessage - fadescreenswapbuffers 0 + fadescreenswapbuffers FADE_FROM_BLACK msgbox SecretBase_Text_MovingCompletedUseSecretPower, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_CancelOnEntrance diff --git a/data/text/battle_tent.inc b/data/text/battle_tent.inc index 48ea8f4d5..98aa689ce 100644 --- a/data/text/battle_tent.inc +++ b/data/text/battle_tent.inc @@ -1,17 +1,17 @@ -FallarborTown_BattleTentLobby_Text_2C47EB: @ 82C47EB +FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C47EB .string "I welcome you to the BATTLE TENT\n" .string "FALLARBOR SITE!\p" .string "I am your guide to the Set KO Tourney!$" -FallarborTown_BattleTentLobby_Text_2C4843: @ 82C4843 +FallarborTown_BattleTentLobby_Text_TakeChallenge: @ 82C4843 .string "Now, do you wish to take the challenge\n" .string "of a Set KO Tourney?$" -FallarborTown_BattleTentLobby_Text_2C487F: @ 82C487F +FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge: @ 82C487F .string "We await your challenge on\n" .string "another occasion!$" -FallarborTown_BattleTentLobby_Text_2C48AC: @ 82C48AC +FallarborTown_BattleTentLobby_Text_ExplainFallarborTent: @ 82C48AC .string "In the FALLARBOR BATTLE TENT,\n" .string "we undertake the Set KO Tourney.\p" .string "All participants enter with a team of\n" @@ -32,20 +32,21 @@ FallarborTown_BattleTentLobby_Text_2C48AC: @ 82C48AC .string "three TRAINERS in succession,\l" .string "we will present you with a fine prize.$" -FallarborTown_BattleTentLobby_Text_2C4B35: @ 82C4B35 +FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C4B35 .string "Before showing you to the BATTLE\n" .string "TENT, I must save. Is that okay?$" -FallarborTown_BattleTentLobby_Text_2C4B77: @ 82C4B77 +@ Unused +FallarborTown_BattleTentLobby_Text_WhichLevelMode: @ 82C4B77 .string "We offer two levels of challenge,\n" .string "Level 50 and Open Level.\l" .string "Which is your choice?$" -FallarborTown_BattleTentLobby_Text_2C4BC8: @ 82C4BC8 +FallarborTown_BattleTentLobby_Text_SelectThreeMons: @ 82C4BC8 .string "Very well, now select your\n" .string "three POKéMON, please.$" -FallarborTown_BattleTentLobby_Text_2C4BFA: @ 82C4BFA +FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C4BFA .string "My dear challenger!\p" .string "You do not have the three POKéMON\n" .string "required for entry.\p" @@ -55,7 +56,7 @@ FallarborTown_BattleTentLobby_Text_2C4BFA: @ 82C4BFA .string "When you have made your preparations,\n" .string "please do return.$" -FallarborTown_BattleTentLobby_Text_2C4CC0: @ 82C4CC0 +FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C4CC0 .string "My dear challenger!\p" .string "You do not have the three POKéMON\n" .string "required for entry.\p" @@ -67,11 +68,11 @@ FallarborTown_BattleTentLobby_Text_2C4CC0: @ 82C4CC0 .string "When you have made your preparations,\n" .string "please do return.$" -FallarborTown_BattleTentLobby_Text_2C4DC3: @ 82C4DC3 +FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent: @ 82C4DC3 .string "I shall now guide you to\n" .string "the BATTLE TENT.$" -FallarborTown_BattleTentLobby_Text_2C4DED: @ 82C4DED +FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C4DED .string "My dear challenger!\p" .string "You did not save the game before\n" .string "shutting down, did you?\p" @@ -81,52 +82,52 @@ FallarborTown_BattleTentLobby_Text_2C4DED: @ 82C4DED .string "You may, of course, start with a fresh\n" .string "challenge.$" -FallarborTown_BattleTentLobby_Text_2C4EC3: @ 82C4EC3 +FallarborTown_BattleTentLobby_Text_BeatThreeTrainers: @ 82C4EC3 .string "How splendid! You have beaten\n" .string "three TRAINERS in succession!$" -FallarborTown_BattleTentLobby_Text_2C4EFF: @ 82C4EFF +FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame: @ 82C4EFF .string "Please wait while I save the game.$" -FallarborTown_BattleTentLobby_Text_2C4F22: @ 82C4F22 +FallarborTown_BattleTentLobby_Text_PresentYouWithPrize: @ 82C4F22 .string "In commemoration of your 3-win streak,\n" .string "we present you with this prize.$" -FallarborTown_BattleTentLobby_Text_2C4F69: @ 82C4F69 +FallarborTown_BattleTentLobby_Text_ReceivedPrize: @ 82C4F69 .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -FallarborTown_BattleTentLobby_Text_2C4F83: @ 82C4F83 +FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize: @ 82C4F83 .string "Oh?\n" .string "Your BAG seems to be full.\p" .string "I urge you to clear space and\n" .string "return for your prize.$" -FallarborTown_BattleTentLobby_Text_2C4FD7: @ 82C4FD7 +FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving: @ 82C4FD7 .string "Thank you so much for participating!\p" .string "Please wait while I save the game.$" -FallarborTown_BattleTentLobby_Text_2C501F: @ 82C501F +FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2: @ 82C501F .string "We await your challenge on\n" .string "another occasion!$" -FallarborTown_BattleTentLobby_Text_2C504C: @ 82C504C +FallarborTown_BattleTentLobby_Text_LookingForwardToArrival: @ 82C504C .string "We have been looking forward to\n" .string "your arrival.\p" .string "Before I show you to the BATTLE TENT,\n" .string "I must save the game. Please wait.$" -VerdanturfTown_BattleTentLobby_Text_2C50C3: @ 82C50C3 +VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C50C3 .string "I welcome you to the BATTLE TENT\n" .string "VERDANTURF SITE!\p" .string "Here, the TRAINER's trust toward\n" .string "POKéMON is tested.$" -VerdanturfTown_BattleTentLobby_Text_2C5129: @ 82C5129 +VerdanturfTown_BattleTentLobby_Text_TakeChallenge: @ 82C5129 .string "Do you wish to take the VERDANTURF\n" .string "BATTLE TENT challenge?$" -VerdanturfTown_BattleTentLobby_Text_2C5163: @ 82C5163 +VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent: @ 82C5163 .string "In the VERDANTURF BATTLE TENT,\n" .string "there is one crucial rule that must\l" .string "be obeyed.\p" @@ -146,16 +147,17 @@ VerdanturfTown_BattleTentLobby_Text_2C5163: @ 82C5163 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -VerdanturfTown_BattleTentLobby_Text_2C539A: @ 82C539A +VerdanturfTown_BattleTentLobby_Text_ReturnFortified: @ 82C539A .string "When you have fortified your heart\n" .string "and POKéMON, you must return.$" -VerdanturfTown_BattleTentLobby_Text_2C53DB: @ 82C53DB +@ Unused +VerdanturfTown_BattleTentLobby_Text_WhichLevelMode: @ 82C53DB .string "There are two levels of difficulty,\n" .string "Level 50 and Open Level.\l" .string "Which is your choice of a challenge?$" -VerdanturfTown_BattleTentLobby_Text_2C543D: @ 82C543D +VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C543D .string "Sigh…\p" .string "You do not have the three POKéMON\n" .string "required for the challenge.\p" @@ -167,7 +169,7 @@ VerdanturfTown_BattleTentLobby_Text_2C543D: @ 82C543D .string "Come back when you have made\n" .string "your preparations.$" -VerdanturfTown_BattleTentLobby_Text_2C5538: @ 82C5538 +VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C5538 .string "Sigh…\p" .string "You do not have the three POKéMON\n" .string "required for the challenge.\p" @@ -179,48 +181,48 @@ VerdanturfTown_BattleTentLobby_Text_2C5538: @ 82C5538 .string "Come back when you have made\n" .string "your preparations.$" -VerdanturfTown_BattleTentLobby_Text_2C5633: @ 82C5633 +VerdanturfTown_BattleTentLobby_Text_SelectThreeMons: @ 82C5633 .string "Good. Now, you must select your\n" .string "three POKéMON.$" -VerdanturfTown_BattleTentLobby_Text_2C5662: @ 82C5662 +VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C5662 .string "I must save before I show you to\n" .string "the BATTLE TENT. Is that okay?$" -VerdanturfTown_BattleTentLobby_Text_2C56A2: @ 82C56A2 +VerdanturfTown_BattleTentLobby_Text_NowFollowMe: @ 82C56A2 .string "Good.\n" .string "Now, follow me.$" -VerdanturfTown_BattleTentLobby_Text_2C56B8: @ 82C56B8 +VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded: @ 82C56B8 .string "I feel privileged for having seen\n" .string "your POKéMON's exploits.\p" .string "The results will be recorded.\n" .string "I must ask you to briefly wait.$" -VerdanturfTown_BattleTentLobby_Text_2C5731: @ 82C5731 +VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak: @ 82C5731 .string "To achieve a 3-win streak…\p" .string "The bonds that bind your heart with\n" .string "your POKéMON seem firm and true.$" -VerdanturfTown_BattleTentLobby_Text_2C5791: @ 82C5791 +VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded: @ 82C5791 .string "Your feat will be recorded.\n" .string "I must ask you to briefly wait.$" -VerdanturfTown_BattleTentLobby_Text_2C57CD: @ 82C57CD +VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize: @ 82C57CD .string "For the feat of your 3-win streak,\n" .string "we present you with this prize.$" -SlateportCity_BattleTentLobby_Text_2C5810: @ 82C5810 +SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C5810 .string "Welcome to the BATTLE TENT\n" .string "SLATEPORT SITE!\p" .string "I am your guide to the Battle Swap\n" .string "Tournament.$" -SlateportCity_BattleTentLobby_Text_2C586A: @ 82C586A +SlateportCity_BattleTentLobby_Text_TakeChallenge: @ 82C586A .string "Would you like to take the Battle\n" .string "Swap challenge?$" -SlateportCity_BattleTentLobby_Text_2C589C: @ 82C589C +SlateportCity_BattleTentLobby_Text_ExplainSlateportTent: @ 82C589C .string "Here at the SLATEPORT BATTLE TENT,\n" .string "we hold Battle Swap events\l" .string "using rental POKéMON.\p" @@ -238,36 +240,39 @@ SlateportCity_BattleTentLobby_Text_2C589C: @ 82C589C .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -SlateportCity_BattleTentLobby_Text_2C5AA5: @ 82C5AA5 +SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit: @ 82C5AA5 .string "We look forward to your next visit.$" -SlateportCity_BattleTentLobby_Text_2C5AC9: @ 82C5AC9 +@ Unused +SlateportCity_BattleTentLobby_Text_WhichLevelMode: @ 82C5AC9 .string "Which level do you wish to challenge?\n" .string "Level 50 or Level 100?$" -SlateportCity_BattleTentLobby_Text_2C5B06: @ 82C5B06 +SlateportCity_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C5B06 .string "Before you begin your challenge,\n" .string "I need to save data. Is that okay?$" -SlateportCity_BattleTentLobby_Text_2C5B4A: @ 82C5B4A +@ Unused +SlateportCity_BattleTentLobby_Text_HoldMonsForSafekeeping: @ 82C5B4A .string "Okay, I will hold your POKéMON for\n" .string "safekeeping while you compete.$" -SlateportCity_BattleTentLobby_Text_2C5B8C: @ 82C5B8C +SlateportCity_BattleTentLobby_Text_StepThisWay: @ 82C5B8C .string "Please step this way.$" -SlateportCity_BattleTentLobby_Text_2C5BA2: @ 82C5BA2 +SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults: @ 82C5BA2 .string "Thank you for participating!\p" .string "I will return your POKéMON in exchange\n" .string "for our rental POKéMON.\p" .string "I must also save your event results.\n" .string "Please wait.$" -SlateportCity_BattleTentLobby_Text_2C5C30: @ 82C5C30 +@ Unused +SlateportCity_BattleTentLobby_Text_ReturnMonsExchangeRentals: @ 82C5C30 .string "I will return your POKéMON in exchange\n" .string "for our rental POKéMON.$" -SlateportCity_BattleTentLobby_Text_2C5C6F: @ 82C5C6F +SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons: @ 82C5C6F .string "Congratulations!\n" .string "You've won three straight matches!\p" .string "I will return your POKéMON in exchange\n" @@ -275,61 +280,65 @@ SlateportCity_BattleTentLobby_Text_2C5C6F: @ 82C5C6F .string "I must also save your event results.\n" .string "Please wait.$" -SlateportCity_BattleTentLobby_Text_2C5D14: @ 82C5D14 +SlateportCity_BattleTentLobby_Text_AwardYouThisPrize: @ 82C5D14 .string "In recognition of your 3-win streak,\n" .string "we award you this prize.$" -SlateportCity_BattleTentLobby_Text_2C5D52: @ 82C5D52 +SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom: @ 82C5D52 .string "Oh?\n" .string "You seem to have no room for this.\p" .string "Please make room in your BAG and\n" .string "let me know.$" -SlateportCity_BattleTentLobby_Text_2C5DA7: @ 82C5DA7 +SlateportCity_BattleTentLobby_Text_BeenWaitingForYou: @ 82C5DA7 .string "We've been waiting for you!\p" .string "Before we resume your challenge,\n" .string "I must save the game.$" -SlateportCity_BattleTentLobby_Text_2C5DFA: @ 82C5DFA +SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C5DFA .string "I'm sorry to say this, but you didn't\n" .string "save before you quit playing last time.\p" .string "As a result, you have been disqualified\n" .string "from your challenge.$" -SlateportCity_BattleTentLobby_Text_2C5E85: @ 82C5E85 +@ Unused +SlateportCity_BattleTentLobby_Text_ReturnPersonalMons: @ 82C5E85 .string "We'll return your personal POKéMON.$" -SlateportCity_BattleTentLobby_Text_2C5EA9: @ 82C5EA9 +@ Unused +SlateportCity_BattleTentLobby_Text_ReceivedPrize: @ 82C5EA9 .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -SlateportCity_BattleTentLobby_Text_2C5EC3: @ 82C5EC3 +@ Unused +SlateportCity_BattleTentLobby_Text_RulesAreListed: @ 82C5EC3 .string "The Battle Swap rules are listed.$" -SlateportCity_BattleTentLobby_Text_2C5EE5: @ 82C5EE5 +@ Unused +SlateportCity_BattleTentLobby_Text_ReadWhichHeading: @ 82C5EE5 .string "Which heading do you want to read?$" -SlateportCity_BattleTentLobby_Text_2C5F08: @ 82C5F08 +SlateportCity_BattleTentLobby_Text_ExplainBasicRules: @ 82C5F08 .string "In a Battle Swap event, you may use\n" .string "only three POKéMON.\p" .string "Whether you are renting or swapping,\n" .string "your team may not have two or more\l" .string "of the same POKéMON.$" -SlateportCity_BattleTentLobby_Text_2C5F9D: @ 82C5F9D +SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules: @ 82C5F9D .string "You may swap POKéMON only with\n" .string "the TRAINER you have just defeated.\p" .string "You may swap for only those POKéMON\n" .string "used by the beaten TRAINER.$" -SlateportCity_BattleTentLobby_Text_2C6020: @ 82C6020 +SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules: @ 82C6020 .string "After every battle you win, you may\n" .string "swap for one of your defeated\l" .string "opponent's POKéMON.\p" .string "You will not be able to swap POKéMON\n" .string "with the third TRAINER in the event.$" -SlateportCity_BattleTentLobby_Text_2C60C0: @ 82C60C0 +SlateportCity_BattleTentLobby_Text_ExplainSwapNotes: @ 82C60C0 .string "There are two key points to be aware\n" .string "of when swapping POKéMON.\p" .string "First, when swapping, you can't check\n" @@ -341,20 +350,23 @@ SlateportCity_BattleTentLobby_Text_2C60C0: @ 82C60C0 .string "This sequence remains unchanged\n" .string "even when swaps are made.$" -SlateportCity_BattleTentLobby_Text_2C61FE: @ 82C61FE +SlateportCity_BattleTentLobby_Text_ExplainMonRules: @ 82C61FE .string "The POKéMON of the SLATEPORT\n" .string "BATTLE TENT are all rentals.\p" .string "All rental POKéMON are kept at\n" .string "Level 30.$" -VerdanturfTown_BattleTentLobby_Text_2C6261: @ 82C6261 +@ Unused +VerdanturfTown_BattleTentLobby_Text_RulesAreListed2: @ 82C6261 .string "The VERDANTURF BATTLE TENT\n" .string "rules are listed.$" -VerdanturfTown_BattleTentLobby_Text_2C628E: @ 82C628E +@ Unused +VerdanturfTown_BattleTentLobby_Text_ReadWhichHeading: @ 82C628E .string "Which heading do you want to read?$" -VerdanturfTown_BattleTentLobby_Text_2C62B1: @ 82C62B1 +@ Unused +VerdanturfTown_BattleTentLobby_Text_ExplainBasicRules: @ 82C62B1 .string "Here at the VERDANTURF BATTLE TENT,\n" .string "POKéMON are required to think and\l" .string "battle by themselves.\p" @@ -362,7 +374,8 @@ VerdanturfTown_BattleTentLobby_Text_2C62B1: @ 82C62B1 .string "with people behave differently\l" .string "depending on their nature.$" -VerdanturfTown_BattleTentLobby_Text_2C636D: @ 82C636D +@ Unused +VerdanturfTown_BattleTentLobby_Text_ExplainNatureRules: @ 82C636D .string "Depending on its nature, a POKéMON\n" .string "may prefer to attack no matter what.\p" .string "Another POKéMON may prefer to protect\n" @@ -375,7 +388,8 @@ VerdanturfTown_BattleTentLobby_Text_2C636D: @ 82C636D .string "It may also dislike certain moves that\n" .string "it has trouble using.$" -VerdanturfTown_BattleTentLobby_Text_2C64BA: @ 82C64BA +@ Unused +VerdanturfTown_BattleTentLobby_Text_ExplainMoveRules: @ 82C64BA .string "There are offensive moves that inflict\n" .string "direct damage on the foe.\p" .string "There are defensive moves that are\n" @@ -388,7 +402,8 @@ VerdanturfTown_BattleTentLobby_Text_2C64BA: @ 82C64BA .string "POKéMON will consider using moves in\n" .string "these three categories.$" -VerdanturfTown_BattleTentLobby_Text_2C6612: @ 82C6612 +@ Unused +VerdanturfTown_BattleTentLobby_Text_ExplainUnderpoweredRules: @ 82C6612 .string "When not under command by its TRAINER,\n" .string "a POKéMON may be unable to effectively\l" .string "use certain moves.\p" @@ -398,21 +413,21 @@ VerdanturfTown_BattleTentLobby_Text_2C6612: @ 82C6612 .string "do not match its nature, it will often\l" .string "be unable to live up to its potential.$" -VerdanturfTown_BattleTentLobby_Text_2C671E: @ 82C671E +@ Unused +VerdanturfTown_BattleTentLobby_Text_ExplainWhenInDangerRules: @ 82C671E .string "Depending on its nature, a POKéMON may\n" .string "start using moves that don't match its\l" .string "nature when it is in trouble.\p" .string "If a POKéMON begins behaving oddly\n" .string "in a pinch, watch it carefully.$" -FallarborTown_BattleTentLobby_Text_2C67CD: @ 82C67CD -VerdanturfTown_BattleTentLobby_Text_2C67CD: @ 82C67CD +BattleTentLobby_Text_ExplainLevelRules: @ 82C67CD .string "At this BATTLE TENT, the levels of\n" .string "your opponents will be adjusted to\l" .string "match the levels of your POKéMON.\p" .string "However, no TRAINER you face will\n" .string "have any POKéMON below Level 30.$" -VerdanturfTown_BattleTentLobby_Text_2C6878: @ 82C6878 +VerdanturfTown_BattleTentLobby_Text_RulesAreListed: @ 82C6878 .string "The VERDANTURF BATTLE TENT\n" .string "rules are listed.$" diff --git a/include/constants/field_weather.h b/include/constants/field_weather.h new file mode 100644 index 000000000..e84dbc48c --- /dev/null +++ b/include/constants/field_weather.h @@ -0,0 +1,24 @@ +#ifndef GUARD_CONSTANTS_FIELD_WEATHER_H +#define GUARD_CONSTANTS_FIELD_WEATHER_H + +#define MAX_RAIN_SPRITES 24 +#define NUM_CLOUD_SPRITES 3 +#define NUM_FOG_HORIZONTAL_SPRITES 20 +#define NUM_ASH_SPRITES 20 +#define NUM_FOG_DIAGONAL_SPRITES 20 +#define NUM_SANDSTORM_SPRITES 20 +#define NUM_SWIRL_SANDSTORM_SPRITES 5 + +// Controls how the weather should be changing the screen palettes. +#define WEATHER_PAL_STATE_CHANGING_WEATHER 0 +#define WEATHER_PAL_STATE_SCREEN_FADING_IN 1 +#define WEATHER_PAL_STATE_SCREEN_FADING_OUT 2 +#define WEATHER_PAL_STATE_IDLE 3 + +// Modes for FadeScreen +#define FADE_FROM_BLACK 0 +#define FADE_TO_BLACK 1 +#define FADE_FROM_WHITE 2 +#define FADE_TO_WHITE 3 + +#endif // GUARD_CONSTANTS_FIELD_WEATHER_H diff --git a/include/field_weather.h b/include/field_weather.h index e587da233..1af320151 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -2,32 +2,7 @@ #define GUARD_WEATHER_H #include "sprite.h" - -#define MAX_RAIN_SPRITES 24 -#define NUM_CLOUD_SPRITES 3 -#define NUM_FOG_HORIZONTAL_SPRITES 20 -#define NUM_ASH_SPRITES 20 -#define NUM_FOG_DIAGONAL_SPRITES 20 -#define NUM_SANDSTORM_SPRITES 20 -#define NUM_SWIRL_SANDSTORM_SPRITES 5 - -// Controls how the weather should be changing the screen palettes. -enum -{ - WEATHER_PAL_STATE_CHANGING_WEATHER, - WEATHER_PAL_STATE_SCREEN_FADING_IN, - WEATHER_PAL_STATE_SCREEN_FADING_OUT, - WEATHER_PAL_STATE_IDLE, -}; - -// For the FadeScreen function. -enum -{ - FADE_FROM_BLACK, - FADE_TO_BLACK, - FADE_FROM_WHITE, - FADE_TO_WHITE, -}; +#include "constants/field_weather.h" struct Weather { diff --git a/include/strings.h b/include/strings.h index d97d435f6..f8d77c73e 100644 --- a/include/strings.h +++ b/include/strings.h @@ -2864,6 +2864,27 @@ extern const u8 gText_JumpsInARow[]; extern const u8 gText_BestScore2[]; extern const u8 gText_ExcellentsInARow[]; +// Berry crush +extern const u8 gText_Var1Berry[]; +extern const u8 gText_XDotY[]; +extern const u8 gText_1DotBlueF700[]; +extern const u8 gText_1DotF700[]; +extern const u8 gText_TimeColon[]; +extern const u8 gText_SpaceSec[]; +extern const u8 gText_XDotY2[]; +extern const u8 gText_SpaceMin[]; +extern const u8 gText_StrVar1[]; +extern const u8 gText_PressingSpeed[]; +extern const u8 gText_TimesPerSec[]; +extern const u8 gText_XDotY3[]; +extern const u8 gText_Silkiness[]; +extern const u8 gText_Var1Percent[]; +extern const u8 gText_PressesRankings[]; +extern const u8 gText_CrushingResults[]; +extern const u8 gText_BerryCrush2[]; +extern const u8 gText_PressingSpeedRankings[]; +extern const u8 gText_Var1Players[]; + // Lilycove Lady extern const u8 gText_ContestLady_Handsome[]; extern const u8 gText_ContestLady_Vinny[]; diff --git a/ld_script.txt b/ld_script.txt index d8c50c40c..7df0fc62e 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -72,7 +72,6 @@ SECTIONS { src/mevent_news.o(.text); src/union_room_chat.o(.text); src/berry_crush.o(.text); - asm/berry_crush.o(.text); src/berry_powder.o(.text); src/dodrio_berry_picking.o(.text); src/pokemon_jump.o(.text); diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 5a9fd5687..bdd1b1462 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -357,7 +357,7 @@ static void sub_81C4F10(void) void ChooseItemsToTossFromPyramidBag(void) { ScriptContext2_Enable(); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); CreateTask(Task_ChooseItemsToTossFromPyramidBag, 10); } diff --git a/src/berry_crush.c b/src/berry_crush.c index 5303da11a..f0987c953 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1,26 +1,36 @@ #include "global.h" -#include "malloc.h" +#include "berry.h" #include "berry_powder.h" #include "bg.h" +#include "decompress.h" +#include "dynamic_placeholder_text_util.h" #include "event_data.h" #include "gpu_regs.h" #include "graphics.h" +#include "international_string_util.h" #include "item_icon.h" #include "item_menu.h" #include "link.h" #include "link_rfu.h" #include "main.h" +#include "malloc.h" #include "math_util.h" #include "menu.h" #include "overworld.h" #include "palette.h" +#include "pokemon_jump.h" +#include "random.h" #include "rom_8034C54.h" +#include "save.h" #include "scanline_effect.h" +#include "script.h" #include "sound.h" #include "sprite.h" #include "string_util.h" +#include "strings.h" #include "task.h" #include "text.h" +#include "text_window.h" #include "trig.h" #include "window.h" #include "constants/items.h" @@ -30,96 +40,146 @@ struct BerryCrushGame_Player { u16 unk0; - u8 filler2[0x12]; - u8 unk14[0xC]; + u16 unk2; + union + { + u8 as_2d_bytes[2][8]; + u16 as_hwords[8]; + } unk4; + u8 unk14[12]; }; -struct BerryCrushGame_PlayersSeparate +struct __attribute__((packed, aligned(2))) BerryCrushGame_4E { - struct BerryCrushGame_Player player; - struct BerryCrushGame_Player others[4]; + u16 unk0; + u16 filler2; + u8 unk4_0:1; + u8 unk4_1:1; + s8 unk5; + u16 unk6; + u16 unk8; + u16 unkA; + u16 unkC; }; -typedef union BerryCrushGame_Players +struct __attribute__((packed)) BerryCrushGame_40 { - struct BerryCrushGame_Player players[5]; - struct BerryCrushGame_PlayersSeparate separate; -} BerryCrushGame_Players; + u8 unk0[2]; + u16 unk2[6]; + struct BerryCrushGame_4E unkE; +}; -struct BerryCrushGame_138_C +struct BerryCrushGame_5C { - u8 filler0[0x8]; - s16 unk8; - u16 unkA; + u16 unk00; + u8 unk02_0:1; + u8 unk02_1:1; + u8 unk02_2:1; + u8 unk02_3:5; + u8 unk03; + u16 unk04; + u16 unk06; + u16 unk08; + u16 unk0A; }; -struct BerryCrushGame_138 +union BerryCrushGame_68 { - u8 filler0[0x4]; - u16 unk4; - u16 unk6; - u16 unk8; - struct BerryCrushGame_138_C *unkC[5]; - u8 filler1C[0x4]; - struct Sprite *unk24[5]; - struct Sprite *unk38[5]; - struct Sprite *unk4C[5]; - struct Sprite *unk60[5]; - struct Sprite *unk74[5]; + struct BerryCrushGame_68_x + { + struct BerryCrushGame_68_x_SubStruct + { + s32 unk00; + u16 unk04; + s16 unk06; + u16 unk08; + u16 unk0A; + u16 unk0C[2][5]; + u8 filler20[16]; + } unk00; + u8 unk30[12]; + struct BerryCrushGame_Player others[4]; + u8 fillerBC[20]; + } as_four_players; + struct BerryCrushGame_68_y + { + u8 filler00[28]; + struct BerryCrushGame_Player unk1C[5]; + u8 fillerBC[20]; + } as_five_players; }; -struct BerryCrushGame_4E +struct BerryCrushGame_138_C { - u8 filler0[0x4]; - u8 unk4; - u8 filler5[0x5]; + u8 unk0; + u8 unk1; + u8 unk2; + u16 unk4; + u16 unk6; + s16 unk8; u16 unkA; - u16 unkC; }; -struct __attribute__((packed)) BerryCrushGame_40 +struct BerryCrushGame_138 { - u8 filler0[0xE]; - struct BerryCrushGame_4E unkE; + u8 unk0; + u8 unk1; + u8 unk2; + u8 unk3; + s16 unk4; + s16 unk6; + s16 unk8; + const struct BerryCrushGame_138_C *unkC[5]; + struct Sprite *unk20; + struct Sprite *unk24[5]; + struct Sprite *unk38[5]; + struct Sprite *unk4C[11]; + struct Sprite *unk78[2]; + u8 unk80; + u8 filler81; + u8 unk82; + u8 unk83[5]; }; struct BerryCrushGame { MainCallback unk0; - void (* unk4)(struct BerryCrushGame *, u8 *); + u32 (* unk4)(struct BerryCrushGame *, u8 *); u8 unk8; u8 unk9; u8 unkA; u8 unkB; u8 unkC; - u8 fillerD[0x1]; + u8 unkD; u8 unkE; u8 unkF; - u8 filler10[0x2]; + u16 unk10; u16 unk12; - u8 filler14[0x2]; + u16 unk14; u16 unk16; - u8 filler18[0x4]; + s16 unk18; + s16 unk1A; int unk1C; - u8 filler20[0x5]; + s32 unk20; + u8 unk24; u8 unk25_0:1; u8 unk25_1:1; u8 unk25_2:1; - u8 filler26[0x2]; + u8 unk25_3:1; + u8 unk25_4:1; + u8 unk25_5:3; + u16 unk26; u16 unk28; - u16 unk2A; + s16 unk2A; s16 unk2C; - u8 filler2E[0x8]; + s16 unk2E; + s16 unk30; + s16 unk32; + s16 unk34; u8 unk36[0xA]; struct BerryCrushGame_40 unk40; - u8 filler60[0x8]; - int unk68; - u16 unk6C; - u8 filler6E[0x4]; - u16 unk72; - u8 filler74[0x10]; - BerryCrushGame_Players unk84; - u8 filler124[0x14]; + struct BerryCrushGame_5C unk5C; + union BerryCrushGame_68 unk68; struct BerryCrushGame_138 unk138; u8 unk1C0[0x1000]; u8 unk11C0[0x1000]; @@ -132,7 +192,7 @@ static void sub_8020F88(void); static void sub_8020FA0(u8); void sub_8020FC4(struct BerryCrushGame *); void sub_8022BEC(u16, u8, u8 *); -void sub_8024604(u8 *, u8, s8, u8, u8, u8, u8); +void sub_8024604(u8 *, u32, s32, u32, u32, u32, u32); static int sub_8021450(struct BerryCrushGame *); void sub_8022588(struct BerryCrushGame *); void sub_8022600(struct BerryCrushGame *); @@ -141,6 +201,9 @@ void sub_8022730(struct BerryCrushGame *); void sub_8022960(struct BerryCrushGame *); void sub_8022524(struct BerryCrushGame_138 *, u16); void sub_8022B28(struct Sprite *); +void sub_8022554(struct BerryCrushGame_138 *r0); +void sub_8024578(struct BerryCrushGame *); +void sub_8024644(u8 *, u32, u32, u32, u32); static EWRAM_DATA struct BerryCrushGame *gUnknown_02022C90 = NULL; @@ -154,13 +217,41 @@ extern const s8 gUnknown_082F41CC[][2]; extern const s8 gUnknown_082F41D2[][2]; extern const u32 gUnknown_082F334C[]; extern const u8 sBerryCrushTextColors1[][3]; +extern const u8 *gUnknown_082F43B4[]; +extern const u8 sBerryCrushTextColors4[]; +extern const struct WindowTemplate gUnknown_082F32CC[]; +extern const u8 gUnknown_082F3344[][4]; +extern const struct WindowTemplate gUnknown_082F32EC; +extern const u8 sBerryCrushTextColorTable[][3]; +extern const struct WindowTemplate gUnknown_082F32F4[]; +extern const u8 gUnknown_082F417C[][5]; +extern const struct BerryCrushGame_138_C gUnknown_082F4190[]; +extern const u8 sBerryCrushTextColors2[][3]; +extern const u8 sBerryCrushTextColors3[][3]; +extern const u32 gUnknown_08DE3FD4[]; +extern const struct CompressedSpriteSheet gUnknown_082F41F4[]; +extern const struct SpritePalette gUnknown_082F421C; +extern const struct SpriteTemplate gUnknown_082F430C; +extern const struct SpriteTemplate gUnknown_082F4324; +extern const struct SpriteTemplate gUnknown_082F433C; +extern const struct SpriteTemplate gUnknown_082F4354; +extern const struct UnkStruct3 gUnknown_082F4384[]; +extern u32 (*const gUnknown_082F43CC[])(struct BerryCrushGame *, u8 *); +extern const u8 *const gUnknown_082F32A4[]; +extern const u8 gUnknown_082F4448[]; +extern const s8 gUnknown_082F326C[][7]; +extern const u8 gUnknown_082F325C[]; +extern const u8 gUnknown_082F3264[]; +extern const u8 gUnknown_082F3290[][4]; +extern const u8 gUnknown_082F4434[][4]; +extern const u8 gUnknown_082F4444[]; struct BerryCrushGame *sub_8020C00(void) { return gUnknown_02022C90; } -int sub_8020C0C(MainCallback callback) +u32 sub_8020C0C(MainCallback callback) { if (!gUnknown_02022C90) return 2; @@ -173,7 +264,7 @@ int sub_8020C0C(MainCallback callback) SetMainCallback2(callback); if (callback == CB2_ReturnToField) { - gTextFlags.autoScroll = 1; + gTextFlags.autoScroll = TRUE; PlayNewMapMusic(MUS_POKECEN); SetMainCallback1(CB1_Overworld); } @@ -237,7 +328,7 @@ static void sub_8020D8C(void) else RemoveBagItem(gSpecialVar_ItemId, 1); - gUnknown_02022C90->unk84.separate.others[gUnknown_02022C90->unk8].unk0 = gSpecialVar_ItemId - FIRST_BERRY_INDEX; + gUnknown_02022C90->unk68.as_four_players.others[gUnknown_02022C90->unk8].unk0 = gSpecialVar_ItemId - FIRST_BERRY_INDEX; gUnknown_02022C90->unkE = 1; gUnknown_02022C90->unkF = 9; sub_8024604(gUnknown_02022C90->unk36, 0, -1, 0, 16, 0, 0); @@ -266,10 +357,10 @@ void sub_8020E58(void) { u32 var0, var1; - var0 = gUnknown_02022C90->unk6C; + var0 = gUnknown_02022C90->unk68.as_four_players.unk00.unk04; var0 <<= 8; var0 = sub_81515FC(var0, 60 << 8); - var1 = gUnknown_02022C90->unk72; + var1 = gUnknown_02022C90->unk68.as_four_players.unk00.unk0A; var1 <<= 8; var1 = sub_81515FC(var1, var0) & 0xFFFF; gUnknown_02022C90->unk16 = var1; @@ -305,7 +396,7 @@ void sub_8020E58(void) break; } - gUnknown_02022C90->unk1C = gUnknown_02022C90->unk68; + gUnknown_02022C90->unk1C = gUnknown_02022C90->unk68.as_four_players.unk00.unk00; if (GiveBerryPowder(gUnknown_02022C90->unk1C)) return; @@ -335,18 +426,22 @@ static void sub_8020FA0(u8 taskId) sub_8021450(gUnknown_02022C90); } -#ifdef NONMATCHING +#define PLAYER_UNK14(game, i) \ + ((u8 *)(game) \ + + offsetof(struct BerryCrushGame, unk68) \ + + offsetof(struct BerryCrushGame_68_x, unk30) \ + + sizeof(struct BerryCrushGame_Player) * (i)) + void sub_8020FC4(struct BerryCrushGame *arg0) { u8 i; for (i = 0; i < arg0->unk9; i++) - StringCopy(arg0->unk84.players[i].unk14, gLinkPlayers[i].name); - + StringCopy(PLAYER_UNK14(arg0, i), gLinkPlayers[i].name); for (; i < 5; i++) { - memset(arg0->unk84.players[i].unk14, 1, PLAYER_NAME_LENGTH); - arg0->unk84.players[i].unk14[PLAYER_NAME_LENGTH] = EOS; + memset(PLAYER_UNK14(arg0, i), 1, PLAYER_NAME_LENGTH); + arg0->unk68.as_five_players.unk1C[i].unk14[PLAYER_NAME_LENGTH] = EOS; } switch (gSaveBlock2Ptr->optionsTextSpeed) @@ -362,85 +457,6 @@ void sub_8020FC4(struct BerryCrushGame *arg0) break; } } -#else -NAKED -void sub_8020FC4(struct BerryCrushGame *arg0) -{ - asm_unified("\n\ - push {r4-r6,lr}\n\ - adds r6, r0, 0\n\ - movs r5, 0\n\ - b _08020FE6\n\ -LOOP_1:\n\ - lsls r0, r5, 5\n\ - adds r0, 0x98\n\ - adds r0, r6, r0\n\ - lsls r1, r5, 3\n\ - subs r1, r5\n\ - lsls r1, 2\n\ - ldr r2, =gLinkPlayers + 8\n\ - adds r1, r2\n\ - bl StringCopy\n\ - adds r0, r5, 0x1\n\ - lsls r0, 24\n\ - lsrs r5, r0, 24\n\ -_08020FE6:\n\ - ldrb r0, [r6, 0x9]\n\ - cmp r5, r0\n\ - bcc LOOP_1\n\ - cmp r5, 0x4\n\ - bhi _08021012\n\ -_08020FF0:\n\ - lsls r4, r5, 5\n\ - adds r0, r4, 0\n\ - adds r0, 0x98\n\ - adds r0, r6, r0\n\ - movs r1, 0x1\n\ - movs r2, 0x7\n\ - bl memset\n\ - adds r4, r6, r4\n\ - adds r4, 0x9F\n\ - movs r0, 0xFF\n\ - strb r0, [r4]\n\ - adds r0, r5, 0x1\n\ - lsls r0, 24\n\ - lsrs r5, r0, 24\n\ - cmp r5, 0x4\n\ - bls _08020FF0\n\ -_08021012:\n\ - ldr r0, =gSaveBlock2Ptr\n\ - ldr r0, [r0]\n\ - ldrb r0, [r0, 0x14]\n\ - lsls r0, 29\n\ - lsrs r0, 29\n\ - cmp r0, 0x1\n\ - beq _0802103E\n\ - cmp r0, 0x1\n\ - bgt _08021034\n\ - cmp r0, 0\n\ - beq _0802103A\n\ - b _08021046\n\ - .pool\n\ -_08021034:\n\ - cmp r0, 0x2\n\ - beq _08021042\n\ - b _08021046\n\ -_0802103A:\n\ - movs r0, 0x8\n\ - b _08021044\n\ -_0802103E:\n\ - movs r0, 0x4\n\ - b _08021044\n\ -_08021042:\n\ - movs r0, 0x1\n\ -_08021044:\n\ - strb r0, [r6, 0xB]\n\ -_08021046:\n\ - pop {r4-r6}\n\ - pop {r0}\n\ - bx r0"); -} -#endif // NONMATCHING int sub_802104C(void) { @@ -503,7 +519,7 @@ int sub_802104C(void) sub_8197200(); sub_8022588(var0); sub_8022600(var0); - gPaletteFade.bufferTransferDisabled = 1; + gPaletteFade.bufferTransferDisabled = TRUE; break; case 7: LoadPalette(gUnknown_08DE3398, 0, 0x180); @@ -524,7 +540,7 @@ int sub_802104C(void) ChangeBgY(1, 0, 0); break; case 9: - gPaletteFade.bufferTransferDisabled = 0; + gPaletteFade.bufferTransferDisabled = FALSE; BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK); ShowBg(0); ShowBg(1); @@ -636,10 +652,10 @@ void sub_80214A8(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1) &gUnknown_082F436C, gUnknown_082F41E8[i], gUnknown_082F41E8[i], - arg0->unk84.separate.others[i].unk0 + 133); + arg0->unk68.as_four_players.others[i].unk0 + 133); arg1->unk38[i] = &gSprites[spriteId]; arg1->unk38[i]->oam.priority = 3; - arg1->unk38[i]->affineAnimPaused = 1; + arg1->unk38[i]->affineAnimPaused = TRUE; arg1->unk38[i]->pos1.x = arg1->unkC[i]->unk8 + 120; arg1->unk38[i]->pos1.y = -16; data = arg1->unk38[i]->data; @@ -695,7 +711,7 @@ void sub_8021608(struct Sprite *sprite) } } -void sub_80216A8(struct BerryCrushGame *arg0) +void sub_80216A8(struct BerryCrushGame *arg0, __attribute__((unused)) struct BerryCrushGame_138 *arg1) { u8 i; for (i = 0; i < arg0->unk9; i++) @@ -726,8 +742,8 @@ void sub_80216E0(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1) else StartSpriteAnim(arg1->unk24[i], 0); - arg1->unk24[i]->invisible = 0; - arg1->unk24[i]->animPaused = 0; + arg1->unk24[i]->invisible = FALSE; + arg1->unk24[i]->animPaused = FALSE; arg1->unk24[i]->pos2.x = gUnknown_082F41CC[(var % 4) - 1][0]; arg1->unk24[i]->pos2.y = gUnknown_082F41CC[(var % 4) - 1][1]; } @@ -750,7 +766,7 @@ void sub_80216E0(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1) arg1->unk4C[i]->pos1.y = gUnknown_082F41D2[i][1] + 136 - (var * 4); arg1->unk4C[i]->pos2.x = gUnknown_082F41D2[i][0] + (gUnknown_082F41D2[i][0] / (var2 * 4)); arg1->unk4C[i]->pos2.y = gUnknown_082F41D2[i][1]; - if (var4E->unk4 & 0x2) + if (var4E->unk4_1) StartSpriteAnim(arg1->unk4C[i], 1); else StartSpriteAnim(arg1->unk4C[i], 0); @@ -823,3 +839,2345 @@ void sub_80219C8(u8 windowId, u8 left, u8 colorId, const u8 *string) left = (left * 4) - (GetStringWidth(2, string, -1) / 2u); AddTextPrinterParameterized3(windowId, 2, left, 0, sBerryCrushTextColors1[colorId], 0, string); } + +#ifdef NONMATCHING +void sub_8021A28(struct BerryCrushGame *sp0C, u8 sp10, u8 sp14, u8 r3) +{ + s32 r6; + u8 i, j; + u8 sp18 = 0; + u8 sp1C = 0; + union BerryCrushGame_68 *sp20 = &sp0C->unk68; + u32 xOffset; + u32 r8, r9, r4, r7, r3_; + u8 r10, r2; + + r3 -= 16; + if (sp10 == 2) + r3 -= 42; + r6 = r3 - 14 * sp0C->unk9; + if (r6 > 0) + r6 = r6 / 2 + 16; + else + r6 = 16; + i = 0; + while (i < sp0C->unk9) + { + DynamicPlaceholderTextUtil_Reset(); + switch (sp10) + { + default: // how can you write this twice?????? + r4 = sp14 - 4; + r10 = r6; + r9 = sp1C + 0xA2; + r8 = sp18; + r6 += 14; + ++i; + break; + case 0: + sp18 = sp20->as_five_players.unk1C[0].unk4.as_2d_bytes[0][i]; + if (i != 0 && sp20->as_four_players.unk00.unk0C[0][i] != sp20->as_four_players.unk00.unk0C[0][i - 1]) + sp1C = i; + ConvertIntToDecimalStringN( + gStringVar4, + sp20->as_four_players.unk00.unk0C[sp10][i], + STR_CONV_MODE_RIGHT_ALIGN, + 4 + ); + StringAppend(gStringVar4, gUnknown_082F43B4[sp10]); + r4 = sp14 - 4; + r10 = r6; + r9 = sp1C + 0xA2; + r8 = sp18; + r6 += 14; + ++i; + break; + case 1: + sp18 = sp20->as_five_players.unk1C[0].unk4.as_2d_bytes[1][i]; + if (i != 0 && sp20->as_four_players.unk00.unk0C[1][i] != sp20->as_four_players.unk00.unk0C[1][i - 1]) + sp1C = i; + ConvertIntToDecimalStringN( + gStringVar1, + sp20->as_four_players.unk00.unk0C[sp10][i] >> 4, + STR_CONV_MODE_RIGHT_ALIGN, + 3 + ); + j = 0; + r3_ = 15 & (u8)sp20->as_four_players.unk00.unk0C[sp10][i]; + r4 = sp14 - 4; + r10 = r6; + r9 = sp1C + 0xA2; + r8 = sp18; + r6 += 14; + ++i; + for (; j < 4; ++j) + if (((r3_ >> (3 - j)) & 1) != 0) // why does it load constant 1 into r10? + r7 += gUnknown_082F334C[j]; + ConvertIntToDecimalStringN( + gStringVar2, + (u8)(r7 / 1000000), + STR_CONV_MODE_LEADING_ZEROS, + 2 + ); + StringExpandPlaceholders(gStringVar4, gText_XDotY); + break; + case 2: + sp18 = i; + sp1C = i; + r2 = sp0C->unk68.as_four_players.others[i].unk0; + if (r2 > 43) + r2 = 0; + StringCopy(gStringVar1,gBerries[r2].name); + StringExpandPlaceholders(gStringVar4, gText_Var1Berry); + r4 = sp14 - 4; + r10 = r6; + r9 = sp1C + 0xA2; + r8 = i; + r6 += 14; + ++i; + break; + } + xOffset = GetStringRightAlignXOffset(2, gStringVar4, r4); + AddTextPrinterParameterized3( + sp0C->unk138.unk82, + 2, + xOffset, + r10, + sBerryCrushTextColors1[0], + 0, + gStringVar4 + ); + if (sp18 == sp0C->unk8) + StringCopy(gStringVar3, gText_1DotBlueF700); + else + StringCopy(gStringVar3, gText_1DotF700); + gStringVar3[0] = r9; + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, PLAYER_UNK14(sp0C, r8)); + DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3); + AddTextPrinterParameterized3( + sp0C->unk138.unk82, + 2, + 4, + r10, + sBerryCrushTextColors1[0], + 0, + gStringVar4 + ); + } +} +#else +NAKED +void sub_8021A28(struct BerryCrushGame *sp0C, u8 sp10, u8 sp14, u8 r3) +{ + asm_unified("\n\ + push {r4-r7,lr}\n\ + mov r7, r10\n\ + mov r6, r9\n\ + mov r5, r8\n\ + push {r5-r7}\n\ + sub sp, 0x2C\n\ + str r0, [sp, 0xC]\n\ + lsls r1, 24\n\ + lsrs r1, 24\n\ + str r1, [sp, 0x10]\n\ + lsls r2, 24\n\ + lsrs r2, 24\n\ + str r2, [sp, 0x14]\n\ + lsls r3, 24\n\ + movs r0, 0\n\ + str r0, [sp, 0x18]\n\ + movs r1, 0\n\ + str r1, [sp, 0x1C]\n\ + ldr r2, [sp, 0xC]\n\ + adds r2, 0x68\n\ + str r2, [sp, 0x20]\n\ + movs r4, 0xF0\n\ + lsls r4, 24\n\ + adds r3, r4\n\ + lsrs r3, 24\n\ + ldr r0, [sp, 0x10]\n\ + cmp r0, 0x2\n\ + bne _08021A68\n\ + adds r0, r3, 0\n\ + subs r0, 0x2A\n\ + lsls r0, 24\n\ + lsrs r3, r0, 24\n\ + _08021A68:\n\ + ldr r2, [sp, 0xC]\n\ + ldrb r1, [r2, 0x9]\n\ + lsls r0, r1, 3\n\ + subs r0, r1\n\ + lsls r0, 1\n\ + subs r6, r3, r0\n\ + cmp r6, 0\n\ + ble _08021A84\n\ + lsrs r0, r6, 31\n\ + adds r0, r6, r0\n\ + asrs r0, 1\n\ + adds r6, r0, 0\n\ + adds r6, 0x10\n\ + b _08021A86\n\ + _08021A84:\n\ + movs r6, 0x10\n\ + _08021A86:\n\ + movs r5, 0\n\ + ldr r3, [sp, 0xC]\n\ + ldrb r3, [r3, 0x9]\n\ + cmp r5, r3\n\ + bcc _08021A92\n\ + b _08021D14\n\ + _08021A92:\n\ + ldr r4, [sp, 0x10]\n\ + lsls r4, 2\n\ + str r4, [sp, 0x24]\n\ + _08021A98:\n\ + bl DynamicPlaceholderTextUtil_Reset\n\ + ldr r0, [sp, 0x10]\n\ + cmp r0, 0x1\n\ + beq _08021B48\n\ + cmp r0, 0x1\n\ + bgt _08021AC0\n\ + cmp r0, 0\n\ + beq _08021ADE\n\ + ldr r4, [sp, 0x14]\n\ + subs r4, 0x4\n\ + lsls r1, r6, 24\n\ + mov r10, r1\n\ + ldr r2, [sp, 0x1C]\n\ + adds r2, 0xA2\n\ + mov r9, r2\n\ + ldr r3, [sp, 0x18]\n\ + lsls r3, 5\n\ + mov r8, r3\n\ + b _08021C5A\n\ + _08021AC0:\n\ + ldr r4, [sp, 0x10]\n\ + cmp r4, 0x2\n\ + bne _08021AC8\n\ + b _08021C1C\n\ + _08021AC8:\n\ + ldr r4, [sp, 0x14]\n\ + subs r4, 0x4\n\ + lsls r0, r6, 24\n\ + mov r10, r0\n\ + ldr r1, [sp, 0x1C]\n\ + adds r1, 0xA2\n\ + mov r9, r1\n\ + ldr r2, [sp, 0x18]\n\ + lsls r2, 5\n\ + mov r8, r2\n\ + b _08021C5A\n\ + _08021ADE:\n\ + ldr r0, [sp, 0x20]\n\ + adds r0, 0x20\n\ + adds r0, r5\n\ + ldrb r0, [r0]\n\ + str r0, [sp, 0x18]\n\ + lsls r3, r5, 1\n\ + ldr r2, [sp, 0x20]\n\ + adds r2, 0xC\n\ + cmp r5, 0\n\ + beq _08021B04\n\ + adds r0, r2, r3\n\ + subs r1, r5, 0x1\n\ + lsls r1, 1\n\ + adds r1, r2, r1\n\ + ldrh r0, [r0]\n\ + ldrh r1, [r1]\n\ + cmp r0, r1\n\ + beq _08021B04\n\ + str r5, [sp, 0x1C]\n\ + _08021B04:\n\ + ldr r4, [sp, 0x24]\n\ + ldr r1, [sp, 0x10]\n\ + adds r0, r4, r1\n\ + lsls r0, 1\n\ + adds r0, r3, r0\n\ + adds r0, r2, r0\n\ + ldrh r1, [r0]\n\ + ldr r0, =gStringVar4\n\ + movs r2, 0x1\n\ + movs r3, 0x4\n\ + bl ConvertIntToDecimalStringN\n\ + ldr r0, =gUnknown_082F43B4\n\ + adds r0, r4, r0\n\ + ldr r1, [r0]\n\ + ldr r0, =gStringVar4\n\ + bl StringAppend\n\ + ldr r4, [sp, 0x14]\n\ + subs r4, 0x4\n\ + lsls r2, r6, 24\n\ + mov r10, r2\n\ + ldr r3, [sp, 0x1C]\n\ + adds r3, 0xA2\n\ + mov r9, r3\n\ + ldr r0, [sp, 0x18]\n\ + lsls r0, 5\n\ + mov r8, r0\n\ + b _08021C5A\n\ + .pool\n\ + _08021B48:\n\ + ldr r1, [sp, 0x20]\n\ + adds r0, r1, r5\n\ + adds r0, 0x28\n\ + ldrb r0, [r0]\n\ + str r0, [sp, 0x18]\n\ + lsls r3, r5, 1\n\ + adds r2, r1, 0\n\ + adds r2, 0xC\n\ + cmp r5, 0\n\ + beq _08021B72\n\ + adds r0, r3, 0\n\ + adds r0, 0xA\n\ + adds r0, r2, r0\n\ + adds r1, r3, 0\n\ + adds r1, 0x8\n\ + adds r1, r2, r1\n\ + ldrh r0, [r0]\n\ + ldrh r1, [r1]\n\ + cmp r0, r1\n\ + beq _08021B72\n\ + str r5, [sp, 0x1C]\n\ + _08021B72:\n\ + ldr r0, [sp, 0x24]\n\ + ldr r1, [sp, 0x10]\n\ + adds r4, r0, r1\n\ + lsls r4, 1\n\ + adds r4, r3, r4\n\ + adds r4, r2, r4\n\ + ldrh r1, [r4]\n\ + lsrs r1, 4\n\ + ldr r0, =gStringVar1\n\ + movs r2, 0x1\n\ + movs r3, 0x3\n\ + bl ConvertIntToDecimalStringN\n\ + movs r7, 0\n\ + ldrb r0, [r4]\n\ + movs r3, 0xF\n\ + ands r3, r0\n\ + movs r2, 0\n\ + ldr r4, [sp, 0x10]\n\ + lsls r4, 2\n\ + str r4, [sp, 0x28]\n\ + ldr r4, [sp, 0x14]\n\ + subs r4, 0x4\n\ + lsls r0, r6, 24\n\ + mov r10, r0\n\ + ldr r1, [sp, 0x1C]\n\ + adds r1, 0xA2\n\ + mov r9, r1\n\ + ldr r0, [sp, 0x18]\n\ + lsls r0, 5\n\ + mov r8, r0\n\ + adds r6, 0xE\n\ + adds r5, 0x1\n\ + ldr r1, =gUnknown_082F334C\n\ + mov r12, r1\n\ + _08021BB8:\n\ + movs r0, 0x3\n\ + subs r1, r0, r2\n\ + adds r0, r3, 0\n\ + asrs r0, r1\n\ + movs r1, 0x1\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + beq _08021BD0\n\ + lsls r0, r2, 2\n\ + add r0, r12\n\ + ldr r0, [r0]\n\ + adds r7, r0\n\ + _08021BD0:\n\ + adds r0, r2, 0x1\n\ + lsls r0, 24\n\ + lsrs r2, r0, 24\n\ + cmp r2, 0x3\n\ + bls _08021BB8\n\ + adds r0, r7, 0\n\ + ldr r1, =0x000f4240\n\ + bl __udivsi3\n\ + lsls r0, 24\n\ + lsrs r3, r0, 24\n\ + ldr r0, =gStringVar2\n\ + adds r1, r3, 0\n\ + movs r2, 0x2\n\ + movs r3, 0x2\n\ + bl ConvertIntToDecimalStringN\n\ + ldr r0, =gUnknown_082F43B4\n\ + ldr r2, [sp, 0x28]\n\ + adds r0, r2, r0\n\ + ldr r1, [r0]\n\ + ldr r0, =gStringVar4\n\ + bl StringExpandPlaceholders\n\ + b _08021C5E\n\ + .pool\n\ + _08021C1C:\n\ + str r5, [sp, 0x18]\n\ + str r5, [sp, 0x1C]\n\ + lsls r7, r5, 5\n\ + ldr r3, [sp, 0xC]\n\ + adds r0, r3, r7\n\ + adds r0, 0xA4\n\ + ldrb r2, [r0]\n\ + cmp r2, 0x2B\n\ + bls _08021C30\n\ + movs r2, 0\n\ + _08021C30:\n\ + lsls r1, r2, 3\n\ + subs r1, r2\n\ + lsls r1, 2\n\ + ldr r0, =gBerries\n\ + adds r1, r0\n\ + ldr r0, =gStringVar1\n\ + bl StringCopy\n\ + ldr r0, =gUnknown_082F43B4\n\ + ldr r1, [r0, 0x8]\n\ + ldr r0, =gStringVar4\n\ + bl StringExpandPlaceholders\n\ + ldr r4, [sp, 0x14]\n\ + subs r4, 0x4\n\ + lsls r0, r6, 24\n\ + mov r10, r0\n\ + movs r1, 0xA2\n\ + adds r1, r5\n\ + mov r9, r1\n\ + mov r8, r7\n\ + _08021C5A:\n\ + adds r6, 0xE\n\ + adds r5, 0x1\n\ + _08021C5E:\n\ + movs r0, 0x2\n\ + ldr r1, =gStringVar4\n\ + adds r2, r4, 0\n\ + bl GetStringRightAlignXOffset\n\ + adds r2, r0, 0\n\ + ldr r3, [sp, 0xC]\n\ + movs r4, 0xDD\n\ + lsls r4, 1\n\ + adds r0, r3, r4\n\ + ldrb r0, [r0]\n\ + lsls r2, 24\n\ + lsrs r2, 24\n\ + mov r1, r10\n\ + lsrs r3, r1, 24\n\ + ldr r1, =sBerryCrushTextColors1\n\ + str r1, [sp]\n\ + movs r4, 0\n\ + str r4, [sp, 0x4]\n\ + ldr r1, =gStringVar4\n\ + str r1, [sp, 0x8]\n\ + movs r1, 0x2\n\ + bl AddTextPrinterParameterized3\n\ + ldr r3, [sp, 0x18]\n\ + ldr r2, [sp, 0xC]\n\ + ldrb r2, [r2, 0x8]\n\ + cmp r3, r2\n\ + bne _08021CC0\n\ + ldr r0, =gStringVar3\n\ + ldr r1, =gText_1DotBlueF700\n\ + bl StringCopy\n\ + b _08021CC8\n\ + .pool\n\ + _08021CC0:\n\ + ldr r0, =gStringVar3\n\ + ldr r1, =gText_1DotF700\n\ + bl StringCopy\n\ + _08021CC8:\n\ + ldr r4, =gStringVar3\n\ + mov r3, r9\n\ + strb r3, [r4]\n\ + mov r1, r8\n\ + adds r1, 0x98\n\ + ldr r0, [sp, 0xC]\n\ + adds r1, r0, r1\n\ + movs r0, 0\n\ + bl DynamicPlaceholderTextUtil_SetPlaceholderPtr\n\ + ldr r0, =gStringVar4\n\ + adds r1, r4, 0\n\ + bl DynamicPlaceholderTextUtil_ExpandPlaceholders\n\ + ldr r1, [sp, 0xC]\n\ + movs r2, 0xDD\n\ + lsls r2, 1\n\ + adds r0, r1, r2\n\ + ldrb r0, [r0]\n\ + mov r4, r10\n\ + lsrs r3, r4, 24\n\ + ldr r1, =sBerryCrushTextColors1\n\ + str r1, [sp]\n\ + movs r1, 0\n\ + str r1, [sp, 0x4]\n\ + ldr r2, =gStringVar4\n\ + str r2, [sp, 0x8]\n\ + movs r1, 0x2\n\ + movs r2, 0x4\n\ + bl AddTextPrinterParameterized3\n\ + lsls r0, r5, 24\n\ + lsrs r5, r0, 24\n\ + ldr r3, [sp, 0xC]\n\ + ldrb r3, [r3, 0x9]\n\ + cmp r5, r3\n\ + bcs _08021D14\n\ + b _08021A98\n\ + _08021D14:\n\ + add sp, 0x2C\n\ + pop {r3-r5}\n\ + mov r8, r3\n\ + mov r9, r4\n\ + mov r10, r5\n\ + pop {r4-r7}\n\ + pop {r0}\n\ + bx r0\n\ + .pool"); +} +#endif + +void sub_8021D34(struct BerryCrushGame *r8) +{ + u8 r10 = 0; + u8 r6 = 0; + u32 sp0C = 0; + union BerryCrushGame_68 *sp10 = &r8->unk68; + u8 r7 = GetWindowAttribute(r8->unk138.unk82, WINDOW_HEIGHT) * 8 - 42; + + sub_8021944(&r8->unk138, sp10->as_four_players.unk00.unk04); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_TimeColon); + r6 = 176 - (u8)GetStringWidth(2, gText_SpaceSec, -1); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_SpaceSec); + ConvertIntToDecimalStringN(gStringVar1, r8->unk138.unk6, STR_CONV_MODE_LEADING_ZEROS, 2); + ConvertIntToDecimalStringN(gStringVar2, r8->unk138.unk8, STR_CONV_MODE_LEADING_ZEROS, 2); + StringExpandPlaceholders(gStringVar4, gText_XDotY2); + r6 -= GetStringWidth(2, gStringVar4, -1); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4); + r6 -= GetStringWidth(2, gText_SpaceMin, -1); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_SpaceMin); + ConvertIntToDecimalStringN(gStringVar1, r8->unk138.unk4, STR_CONV_MODE_LEADING_ZEROS, 1); + StringExpandPlaceholders(gStringVar4, gText_StrVar1); + r6 -= GetStringWidth(2, gStringVar4, -1); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4); + r7 += 14; + AddTextPrinterParameterized3(r8->unk138.unk82, 2, 0, r7, sBerryCrushTextColors1[0], 0, gText_PressingSpeed); + r6 = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_TimesPerSec); + for (; r10 < 8; ++r10) + if (((u8)r8->unk16 >> (7 - r10)) & 1) + sp0C += *(r10 + gUnknown_082F334C); // It's accessed in a different way here for unknown reason + ConvertIntToDecimalStringN(gStringVar1, r8->unk16 >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); + ConvertIntToDecimalStringN(gStringVar2, sp0C / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); + StringExpandPlaceholders(gStringVar4, gText_XDotY3); + r6 -= GetStringWidth(2, gStringVar4, -1); + if (r8->unk25_1) + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors4, 0, gStringVar4); + else + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4); + r7 += 14; + AddTextPrinterParameterized3(r8->unk138.unk82, 2, 0, r7, sBerryCrushTextColors1[0], 0, gText_Silkiness); + ConvertIntToDecimalStringN(gStringVar1, sp10->as_four_players.unk00.unk08, STR_CONV_MODE_RIGHT_ALIGN, 3); + StringExpandPlaceholders(gStringVar4, gText_Var1Percent); + r6 = 176 - (u8)GetStringWidth(2, gStringVar4, -1); + AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4); +} + +bool32 sub_8022070(struct BerryCrushGame *r4, struct BerryCrushGame_138 *r6) +{ + u8 r5; + struct WindowTemplate template; + + switch (r6->unk80) + { + case 0: + r5 = r4->unk9 - 2; + sub_8022554(r6); + memcpy(&template, &gUnknown_082F32CC[r4->unk12], sizeof(struct WindowTemplate)); + if (r4->unk12 == 13) + template.height = gUnknown_082F3344[1][r5]; + else + template.height = gUnknown_082F3344[0][r5]; + r6->unk82 = AddWindow(&template); + break; + case 1: + PutWindowTilemap(r6->unk82); + FillWindowPixelBuffer(r6->unk82, PIXEL_FILL(0)); + break; + case 2: + LoadUserWindowBorderGfx_(r6->unk82, 541, 208); + DrawStdFrameWithCustomTileAndPalette(r6->unk82, 0, 541, 13); + break; + case 3: + r5 = r4->unk9 - 2; + switch (r4->unk12) + { + case 11: + sub_80219C8(r6->unk82, 20, 3, gText_PressesRankings); + sub_8021A28(r4, 0, 0xA0, 8 * gUnknown_082F3344[0][r5]); + r6->unk80 = 5; + return FALSE; + case 12: + sub_80219C8(r6->unk82, 20, 4, gUnknown_082F43B4[r4->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][7] + 3]); + sub_8021A28(r4, 1, 0xA0, 8 * gUnknown_082F3344[0][r5]); + r6->unk80 = 5; + return FALSE; + case 13: + sub_80219C8(r6->unk82, 22, 3, gText_CrushingResults); + sub_8021A28(r4, 2, 0xB0, 8 * gUnknown_082F3344[1][r5]); + break; + } + break; + case 4: + sub_8021D34(r4); + break; + case 5: + CopyWindowToVram(r6->unk82, 3); + r6->unk80 = 0; + return TRUE; + } + ++r6->unk80; + return FALSE; +} + +void sub_802222C(struct BerryCrushGame *r4) +{ + ClearStdWindowAndFrameToTransparent(r4->unk138.unk82, 1); + RemoveWindow(r4->unk138.unk82); + sub_8022600(r4); +} + +void sub_8022250(u8 r4) +{ + u8 r9 = 0, r2, r7, r10; + u32 sp0C = 0; + s16 *r6 = gTasks[r4].data; + const u8 *r10_; // turn r5/sl register swap into r8/sl + + switch (r6[0]) + { + case 0: + r6[1] = AddWindow(&gUnknown_082F32EC); + PutWindowTilemap((u8)r6[1]); + FillWindowPixelBuffer((u8)r6[1], PIXEL_FILL(0)); + LoadUserWindowBorderGfx_((u8)r6[1], 541, 208); + DrawStdFrameWithCustomTileAndPalette((u8)r6[1], 0, 541, 13); + break; + case 1: + r10_ = gText_BerryCrush2; + ++r10_; --r10_; // swap sb/sl + #ifndef NONMATCHING + asm("":::"r8"); // turn r8/sl register swap into sb/sl + #endif + r7 = 96 - GetStringWidth(1, r10_, -1) / 2u; + AddTextPrinterParameterized3( + (u8)r6[1], + 1, + r7, + 1, + sBerryCrushTextColorTable[0], + 0, + r10_ + ); + r10_ = gText_PressingSpeedRankings; + r7 = 96 - GetStringWidth(1, r10_, -1) / 2u; + AddTextPrinterParameterized3( + (u8)r6[1], + 1, + r7, + 17, + sBerryCrushTextColorTable[0], + 0, + r10_ + ); + r10 = 41; + for (; r9 < 4; ++r9) + { + ConvertIntToDecimalStringN(gStringVar1, r9 + 2, STR_CONV_MODE_LEFT_ALIGN, 1); + StringExpandPlaceholders(gStringVar4, gText_Var1Players); + AddTextPrinterParameterized3( + (u8)r6[1], + 1, + 0, + r10, + sBerryCrushTextColors1[0], + 0, + gStringVar4 + ); + r7 = 192 - (u8)GetStringWidth(1, gText_TimesPerSec, -1); + AddTextPrinterParameterized3( + (u8)r6[1], + 1, + r7, + r10, + sBerryCrushTextColors1[0], + 0, + gText_TimesPerSec + ); + for (r2 = 0; r2 < 8; ++r2) + if (((u8)r6[r9 + 2] >> (7 - r2)) & 1) + sp0C += gUnknown_082F334C[r2]; + ConvertIntToDecimalStringN(gStringVar1, (u16)r6[r9 + 2] >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); + ConvertIntToDecimalStringN(gStringVar2, sp0C / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); + StringExpandPlaceholders(gStringVar4, gText_XDotY3); + r7 -= GetStringWidth(1, gStringVar4, -1); + AddTextPrinterParameterized3( + (u8)r6[1], + 1, + r7, + r10, + sBerryCrushTextColors1[0], + 0, + gStringVar4 + ); + r10 += 16; + sp0C = 0; + } + CopyWindowToVram((u8)r6[1], 3); + break; + case 2: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + break; + else + return; + case 3: + ClearStdWindowAndFrameToTransparent((u8)r6[1], 1); + ClearWindowTilemap((u8)r6[1]); + RemoveWindow((u8)r6[1]); + DestroyTask(r4); + EnableBothScriptContexts(); + ScriptContext2_Disable(); + r6[0] = 0; + return; + } + ++r6[0]; +} + +void ShowBerryCrushRankings(void) +{ + u8 taskId; + + ScriptContext2_Enable(); + taskId = CreateTask(sub_8022250, 0); + gTasks[taskId].data[2] = gSaveBlock2Ptr->berryCrush.berryCrushResults[0]; + gTasks[taskId].data[3] = gSaveBlock2Ptr->berryCrush.berryCrushResults[1]; + gTasks[taskId].data[4] = gSaveBlock2Ptr->berryCrush.berryCrushResults[2]; + gTasks[taskId].data[5] = gSaveBlock2Ptr->berryCrush.berryCrushResults[3]; +} + +void sub_8022524(struct BerryCrushGame_138 *r4, u16 r1) +{ + sub_8021944(r4, r1); + sub_8035044(0, r4->unk4); + sub_8035044(1, r4->unk6); + sub_8035044(2, r4->unk8); +} + +void sub_8022554(struct BerryCrushGame_138 *r0) +{ + r0->unk78[0]->invisible = TRUE; + r0->unk78[1]->invisible = TRUE; + sub_803547C(2, 1); + sub_803547C(1, 1); + sub_803547C(0, 1); +} + +void sub_8022588(struct BerryCrushGame *r5) +{ + u8 r6; + + for (r6 = 0; r6 < r5->unk9; ++r6) + { + r5->unk138.unkC[r6] = &gUnknown_082F4190[gUnknown_082F417C[r5->unk9 - 2][r6]]; + r5->unk138.unk83[r6] = AddWindow(&gUnknown_082F32F4[r5->unk138.unkC[r6]->unk0]); + PutWindowTilemap(r5->unk138.unk83[r6]); + FillWindowPixelBuffer(r5->unk138.unk83[r6], 0); + } +} + +void sub_8022600(struct BerryCrushGame *r6) +{ + u8 r7, r2; + u8 *r4; + + for (r7 = 0; r7 < r6->unk9; ++r7) + { + PutWindowTilemap(r6->unk138.unk83[r7]); + if (r7 == r6->unk8) + { + AddTextPrinterParameterized4( + r6->unk138.unk83[r7], + 2, + 36 - GetStringWidth(2, PLAYER_UNK14(r6, r7), 0) / 2u, + 1, + 0, + 0, + sBerryCrushTextColors2[0], + 0, + PLAYER_UNK14(r6, r7) + ); + } + else + { + AddTextPrinterParameterized4( + r6->unk138.unk83[r7], + 2, + 36 - GetStringWidth(2, PLAYER_UNK14(r6, r7), 0) / 2u, + 1, + 0, + 0, + sBerryCrushTextColors3[0], + 0, + PLAYER_UNK14(r6, r7) + ); + } + CopyWindowToVram(r6->unk138.unk83[r7], 3); + } + CopyBgTilemapBufferToVram(0); +} + +void sub_80226D0(struct BerryCrushGame *r6) +{ + u8 r5 = 0; + const u32 *r0 = gUnknown_08DE3FD4; +#ifndef NONMATCHING // r4, r5, r6 register roulette + register u8 *r4 asm("r4") = gDecompressionBuffer; + register u32 r0_ asm("r0"); +#else + u8 *r4 = gDecompressionBuffer; + u32 r0_; +#endif + + LZ77UnCompWram(r0, r4); + for (; r5 < r6->unk9; ++r5) + { + r0_ = r6->unk138.unkC[r5]->unk0; + CopyToBgTilemapBufferRect( + 3, + &r4[r0_ * 40], + r6->unk138.unkC[r5]->unk1, + r6->unk138.unkC[r5]->unk2, + 10, + 2 + ); + } + CopyBgTilemapBufferToVram(3); +} + +void sub_8022730(struct BerryCrushGame *r6) +{ + u8 r5 = 0; + u8 r2; + + r6->unk2A = -104; + r6->unk2C = 0; + gSpriteCoordOffsetX = 0; + gSpriteCoordOffsetY = -104; + for (; r5 < 4; ++r5) + LoadCompressedSpriteSheet(&gUnknown_082F41F4[r5]); + LoadSpritePalettes(&gUnknown_082F421C); + r2 = CreateSprite(&gUnknown_082F430C, 120, 88, 5); + r6->unk138.unk20 = &gSprites[r2]; + r6->unk138.unk20->oam.priority = 3; + r6->unk138.unk20->coordOffsetEnabled = TRUE; + r6->unk138.unk20->animPaused = TRUE; + for (r5 = 0; r5 < r6->unk9; ++r5) + { + r2 = CreateSprite( + &gUnknown_082F4324, + r6->unk138.unkC[r5]->unk4 + 120, + r6->unk138.unkC[r5]->unk6 + 32, + 0 + ); + r6->unk138.unk24[r5] = &gSprites[r2]; + r6->unk138.unk24[r5]->oam.priority = 1; + r6->unk138.unk24[r5]->invisible = TRUE; + r6->unk138.unk24[r5]->coordOffsetEnabled = TRUE; + r6->unk138.unk24[r5]->animPaused = TRUE; + } + for (r5 = 0; r5 < ARRAY_COUNT(r6->unk138.unk4C); ++r5) + { + r2 = CreateSprite( + &gUnknown_082F433C, + gUnknown_082F41D2[r5][0] + 120, + gUnknown_082F41D2[r5][1] + 136, + 6 + ); + r6->unk138.unk4C[r5] = &gSprites[r2]; + r6->unk138.unk4C[r5]->oam.priority = 3; + r6->unk138.unk4C[r5]->invisible = TRUE; + r6->unk138.unk4C[r5]->animPaused = TRUE; + r6->unk138.unk4C[r5]->data[0] = r5; + } + for (r5 = 0; r5 < ARRAY_COUNT(r6->unk138.unk78); ++r5) + { + r2 = CreateSprite( + &gUnknown_082F4354, + 24 * r5 + 176, + 8, + 0 + ); + r6->unk138.unk78[r5] = &gSprites[r2]; + r6->unk138.unk78[r5]->oam.priority = 0; + r6->unk138.unk78[r5]->invisible = FALSE; + r6->unk138.unk78[r5]->animPaused = FALSE; + } + sub_8034D14(0, 0, &gUnknown_082F4384[0]); + sub_8034D14(1, 0, &gUnknown_082F4384[1]); + sub_8034D14(2, 0, &gUnknown_082F4384[2]); + if (r6->unk12 == 1) + sub_8022554(&r6->unk138); +} + +void sub_8022960(struct BerryCrushGame *r5) +{ + u8 r4 = 0; + + FreeSpriteTilesByTag(4); + FreeSpriteTilesByTag(3); + FreeSpriteTilesByTag(2); + FreeSpriteTilesByTag(1); + FreeSpritePaletteByTag(4); + FreeSpritePaletteByTag(2); + FreeSpritePaletteByTag(1); + for (; r4 < ARRAY_COUNT(r5->unk138.unk78); ++r4) + DestroySprite(r5->unk138.unk78[r4]); + sub_80353DC(2); + sub_80353DC(1); + sub_80353DC(0); + for (r4 = 0; r4 < ARRAY_COUNT(r5->unk138.unk4C); ++r4) + DestroySprite(r5->unk138.unk4C[r4]); + for (r4 = 0; r4 < r5->unk9; ++r4) + DestroySprite(r5->unk138.unk24[r4]); + if (r5->unk138.unk20->inUse) + DestroySprite(r5->unk138.unk20); +} + +void sub_8022A20(struct Sprite *sprite) +{ + if (sprite->animEnded) + { + sprite->invisible = TRUE; + sprite->animPaused = TRUE; + } +} + +void sub_8022A4C(struct Sprite *sprite) +{ + u8 r1 = 0; + SpriteCallback r5 = SpriteCallbackDummy; + + for (; r1 < ARRAY_COUNT(sprite->data); ++r1) + sprite->data[r1] = 0; + sprite->pos2.x = 0; + sprite->pos2.y = 0; + sprite->invisible = TRUE; + sprite->animPaused = TRUE; + sprite->callback = r5; +} + +void sub_8022A94(struct Sprite *sprite) +{ + s16 *r4 = sprite->data; + + r4[1] += r4[2]; + sprite->pos2.y += r4[1] >> 8; + if (r4[7] & 0x8000) + { + sprite->data[0] += r4[3]; + r4[4] += r4[5]; + sprite->pos2.x = Sin(r4[4] >> 7, r4[6]); + if (r4[7] & 0x8000 && r4[4] >> 7 > 126) + { + sprite->pos2.x = 0; + r4[7] &= 0x7FFF; + } + } + sprite->pos1.x = r4[0] >> 7; + if (sprite->pos1.y + sprite->pos2.y > (r4[7] & 0x7FFF)) + sprite->callback = sub_8022A4C; +} + +void sub_8022B28(struct Sprite *sprite) +{ + s16 *r7 = sprite->data; + s16 r4, r5; + s32 r2; + u32 r8 = 0; + + r2 = 640; + r7[1] = r2; + r7[2] = 32; + r7[7] = 168; + r4 = sprite->pos2.x * 128; + r5 = sub_81515D4(7, (168 - sprite->pos1.y) << 7, (r2 + 32) >> 1); + sprite->data[0] = sprite->pos1.x << 7; + r7[3] = sub_81515D4(7, r4, r5); + r2 = sub_8151550(7, r5, 85); + r7[4] = r8; + r7[5] = sub_81515D4(7, 0x3F80, r2); + r7[6] = sprite->pos2.x / 4; + r7[7] |= 0x8000; + sprite->pos2.y = r8; + sprite->pos2.x = r8; + sprite->callback = sub_8022A94; + sprite->animPaused = FALSE; + sprite->invisible = FALSE; +} + +void sub_8022BEC(u16 r5, u8 r4, u8 *r7) +{ + struct BerryCrushGame *r6 = sub_8020C00(); + + if (r5 > 25) + r5 = 0; + switch (r4) + { + case 0: + if (r5 != 0) + gUnknown_082F43CC[r5](r6, r7); + if (r6->unkE > 25) + r6->unkE = r4; + r6->unk4 = gUnknown_082F43CC[r6->unkE]; + break; + case 1: + r6->unk4 = gUnknown_082F43CC[r5]; + break; + } +} + +u32 sub_8022C58(struct BerryCrushGame *r6, u8 *r1) +{ + u16 r4; + u32 r0; +#ifndef NONMATCHING // fake match, nobody can write such code + register u32 r2 asm("r2"); + register u32 r3 asm("r3"); + + r2 = r1[0]; + r3 = r1[1]; + r3 <<= 8; + r2 |= r3; + r3 = r1[2]; + r3 <<= 16; + r2 |= r3; + r3 = r1[3]; + r3 <<= 24; + r0 = r2; + r0 |= r3; +#else + u32 r2; + + r0 = T1_READ_32(r1); +#endif + r2 = r1[9]; + r1[0] = r2; + r4 = r1[8] << 8; + r2 = r1[7]; + r4 |= r2; + gPaletteFade.bufferTransferDisabled = FALSE; + BeginNormalPaletteFade(r0, r1[4], r1[5], r1[6], r4); + UpdatePaletteFade(); + r6->unkE = 2; + return 0; +} + +u32 sub_8022CB0(struct BerryCrushGame *r4, u8 *r5) +{ + switch (r4->unkC) + { + case 0: + if (UpdatePaletteFade()) + return 0; + if(r5[0] != 0) + ++r4->unkC; + else + r4->unkC = 3; + return 0; + case 1: + sub_8010434(); + ++r4->unkC; + return 0; + case 2: + if (IsLinkTaskFinished()) + { + ++r4->unkC; + return 0; + } + return 0; + case 3: + sub_8022BEC(r4->unkF, 1, NULL); + r4->unkC = 0; + return 0; + default: + ++r4->unkC; + return 0; + } +} + +u32 sub_8022D14(struct BerryCrushGame *r7, u8 *r5) +{ + u16 r4 = r5[3]; + + r4 <<= 8; + r4 |= r5[2]; + switch (r7->unkC) + { + case 0: + DrawDialogueFrame(0, 0); + if (r5[1] & 2) + { + StringExpandPlaceholders(gStringVar4, gUnknown_082F32A4[r5[0]]); + AddTextPrinterParameterized2(0, 1, gStringVar4, r7->unkB, 0, 2, 1, 3); + } + else + { + AddTextPrinterParameterized2(0, 1, gUnknown_082F32A4[r5[0]], r7->unkB, 0, 2, 1, 3); + } + CopyWindowToVram(0, 3); + break; + case 1: + if (!IsTextPrinterActive(0)) + { + if (r4 == 0) + ++r7->unkC; + break; + } + return 0; + case 2: + if (!(r4 & gMain.newKeys)) + return 0; + break; + case 3: + if (r5[1] & 1) + ClearDialogWindowAndFrame(0, 1); + sub_8022BEC(r7->unkE, 1, NULL); + r7->unkC = r5[4]; + return 0; + } + ++r7->unkC; + return 0; +} + +u32 sub_8022E1C(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + if (sub_802104C() != 0) + sub_8022BEC(r4->unkE, 0, r4->unk36); + return 0; +} + +u32 sub_8022E3C(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + if (sub_802130C() != 0) + sub_8022BEC(r4->unkE, 0, r4->unk36); + return 0; +} + +u32 sub_8022E5C(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + switch (r4->unkC) + { + case 0: + sub_8010434(); + break; + case 1: + if (IsLinkTaskFinished()) + { + PlayNewMapMusic(MUS_RG_SLOT); + sub_8022BEC(7, 1, NULL); + r4->unk12 = 3; + r4->unkC = 0; + } + return 0; + } + ++r4->unkC; + return 0; +} + +u32 sub_8022EAC(struct BerryCrushGame *r4, u8 *r5) +{ + switch (r4->unkC) + { + default: + ++r4->unkC; + break; + case 0: + sub_8024578(r4); + sub_8024644(r5, 0, 1, 0, 1); + r4->unkE = 7; + sub_8022BEC(3, 1, NULL); + break; + case 1: + r4->unkE = 8; + sub_8022BEC(5, 1, NULL); + r4->unkC = 2; + break; + } + return 0; +} + +u32 sub_8022F04(struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1) +{ + r0->unk4 = NULL; + SetMainCallback2(sub_8020E1C); + return 0; +} + +u32 sub_8022F1C(struct BerryCrushGame *r5, u8 *r2) +{ + u8 r3; + + switch (r5->unkC) + { + case 0: + sub_8024644(r2, 1, 0, 0, 1); + r5->unkE = 9; + sub_8022BEC(3, 1, NULL); + return 0; + case 1: + sub_8010434(); + break; + case 2: + if (!IsLinkTaskFinished()) + return 0; + memset(r5->unk40.unk2, 0, sizeof(r5->unk40.unk2)); + r5->unk40.unk2[0] = r5->unk68.as_four_players.others[r5->unk8].unk0; + SendBlock(0, r5->unk40.unk2, 2); + break; + case 3: + if (!IsLinkTaskFinished()) + return 0; + r5->unk10 = 0; + break; + case 4: + if (GetBlockReceivedStatus() != gUnknown_082F4448[r5->unk9 - 2]) + return 0; + for (r3 = 0; r3 < r5->unk9; ++r3) + { + r5->unk68.as_four_players.others[r3].unk0 = gBlockRecvBuffer[r3][0]; + if (r5->unk68.as_four_players.others[r3].unk0 > 0xB0) + r5->unk68.as_four_players.others[r3].unk0 = 0; + r5->unk18 += gUnknown_0858AB24[r5->unk68.as_four_players.others[r3].unk0].unk0; + r5->unk1C += gUnknown_0858AB24[r5->unk68.as_four_players.others[r3].unk0].unk1; + } + r5->unk10 = 0; + ResetBlockReceivedFlags(); + r5->unk20 = sub_81515FC(r5->unk18 << 8, 0x2000); + break; + case 5: + ClearDialogWindowAndFrame(0, 1); + sub_8022BEC(10, 1, NULL); + r5->unk12 = 4; + r5->unkC = 0; + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8023070(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + switch (r4->unkC) + { + case 0: + sub_80214A8(r4, &r4->unk138); + sub_8010434(); + break; + case 1: + if (!IsLinkTaskFinished()) + return 0; + r4->unk138.unk0 = 0; + r4->unk138.unk1 = 0; + r4->unk138.unk2 = 0; + r4->unk138.unk3 = 0; + break; + case 2: + r4->unk138.unk38[r4->unk138.unk0]->callback = sub_8021608; + r4->unk138.unk38[r4->unk138.unk0]->affineAnimPaused = FALSE; + PlaySE(SE_NAGERU); + break; + case 3: + if (r4->unk138.unk38[r4->unk138.unk0]->callback == sub_8021608) + return 0; + r4->unk138.unk38[r4->unk138.unk0] = NULL; + ++r4->unk138.unk0; + sub_8010434(); + break; + case 4: + if (!IsLinkTaskFinished()) + return 0; + if (r4->unk138.unk0 < r4->unk9) + { + r4->unkC = 2; + return 0; + } + r4->unk138.unk0 = 0; + break; + case 5: + sub_80216A8(r4, &r4->unk138); + sub_8010434(); + break; + case 6: + if (!IsLinkTaskFinished()) + return 0; + PlaySE(SE_RU_HYUU); + sub_8022BEC(11, 1, NULL); + r4->unk12 = 5; + r4->unkC = 0; + return 0; + } + ++r4->unkC; + return 0; +} + +u32 sub_80231B8(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + switch (r4->unkC) + { + case 0: + r4->unk2A += 4; + if (r4->unk2A < 0) + return 0; + r4->unk2A = 0; + r4->unk138.unk1 = 4; + r4->unk138.unk0 = 0; + r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; + PlaySE(SE_W070); + break; + case 1: + r4->unk2C = gUnknown_082F326C[r4->unk138.unk1][r4->unk138.unk0]; + SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C); + ++r4->unk138.unk0; + if (r4->unk138.unk0 < r4->unk138.unk2) + return 0; + if (r4->unk138.unk1 == 0) + break; + --r4->unk138.unk1; + r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; + r4->unk138.unk0 = 0; + return 0; + case 2: + r4->unk2C = 0; + SetGpuReg(REG_OFFSET_BG0VOFS, 0); + SetGpuReg(REG_OFFSET_BG2VOFS, 0); + SetGpuReg(REG_OFFSET_BG3VOFS, 0); + sub_8010434(); + break; + case 3: + if (!IsLinkTaskFinished()) + return 0; + sub_8022BEC(12, 1, NULL); + r4->unk12 = 6; + r4->unkC = 0; + return 0; + } + ++r4->unkC; + return 0; +} + +u32 sub_80232EC(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + switch (r4-> unkC) + { + case 1: + if (!IsLinkTaskFinished()) + return 0; + sub_802EB24(0x1000, 0x1000, 120, 80, 0); + break; + case 2: + if (sub_802EB84()) + return 0; + // fallthrough + case 0: + sub_8010434(); + break; + case 3: + if (!IsLinkTaskFinished()) + return 0; + r4->unk138.unk0 = 0; + r4->unk138.unk1 = 0; + r4->unk138.unk2 = 0; + r4->unk138.unk3 = 0; + r4->unk10 = 0; + if (r4->unk8 == 0) + sub_8022BEC(13, 1, NULL); + else + sub_8022BEC(14, 1, NULL); + r4->unk12 = 7; + r4->unkC = 0; + return 0; + } + ++r4->unkC; + return 0; +} + +void sub_802339C(struct BerryCrushGame *r4) +{ + u8 r8 = 0; + u16 r3; + u16 *r2; + u8 r7 = 0; + s32 r2_ = 0; + s32 r0; + + for (r7 = 0; r7 < r4->unk9; ++r7) + { + r2 = gRecvCmds[r7]; + if ((r2[0] & 0xFF00) == 0x2F00 + && r2[1] == 2) + { + if ((u8)r2[2] & 4) + { + r4->unk5C.unk02_3 |= gUnknown_082F325C[r7]; + r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] = 1; + ++r4->unk68.as_four_players.others[r7].unk4.as_hwords[3]; + ++r8; + r3 = r4->unk28 - r4->unk68.as_four_players.others[r7].unk2; + if (r3 >= r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] - 1 + && r3 <= r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] + 1) + { + ++r4->unk68.as_four_players.others[r7].unk4.as_hwords[0]; + r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] = r3; + if (r4->unk68.as_four_players.others[r7].unk4.as_hwords[0] > r4->unk68.as_four_players.others[r7].unk4.as_hwords[2]) + r4->unk68.as_four_players.others[r7].unk4.as_hwords[2] = r4->unk68.as_four_players.others[r7].unk4.as_hwords[0]; + } + else + { + r4->unk68.as_four_players.others[r7].unk4.as_hwords[0] = 0; + r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] = r3; + } + r4->unk68.as_four_players.others[r7].unk2 = r4->unk28; + if (++r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][4] > 2) + r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][4] = 0; + } + else + { + r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] = 0; + } + } + } + if (r8 > 1) + { + for (r7 = 0; r7 < r4->unk9; ++r7) + { + if (r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] != 0) + { + r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] |= 2; + ++r4->unk68.as_four_players.others[r7].unk4.as_hwords[4]; + } + } + } + if (r8 != 0) + { + r4->unk2E += r8; + r8 += gUnknown_082F3264[r8 - 1]; + r4->unk34 += r8; + r4->unk1A += r8; + r0 = r4->unk18; + r2_ = r4->unk1A; + if (r0 - r2_ > 0) + { + r2_ <<= 8; + r2_ = sub_81515FC(r2_, r4->unk20); + r2_ >>= 8; + r4->unk24 = r2_; + } + else + { + r4->unk24 = 32; + r4->unk5C.unk02_0 = 1; + } + } +} + +void sub_8023558(struct BerryCrushGame *r3) +{ + u8 r6 = 0; + u16 r1 = 0; + u8 r4 = 0; + + for (r4 = 0; r4 < r3->unk9; ++r4) + { + if (r3->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] != 0) + { + ++r6; + r1 = r3->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][4] + 1; + if (r3->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] & 2) + r1 |= 4; + r1 <<= 3 * r4; + r3->unk5C.unk08 |= r1; + } + } + r3->unk5C.unk04 = r3->unk24; + if (r6 == 0) + { + if (r3->unk138.unk3 != 0) + ++r3->unk138.unk0; + else + goto SET_UNK5F_0; + } + else + { + if (r3->unk138.unk3 != 0) + { + if (r6 != r3->unk138.unk1) + { + r3->unk138.unk1 = r6 - 1; + r3->unk138.unk2 = gUnknown_082F3290[r6 - 1][0]; + } + else + { + ++r3->unk138.unk0; + } + } + else + { + r3->unk138.unk0 = 0; + r3->unk138.unk1 = r6 - 1; + r3->unk138.unk2 = gUnknown_082F3290[r6 - 1][0]; + r3->unk138.unk3 = 1; + } + } + if (r3->unk138.unk3 != 0) + { + if (r3->unk138.unk0 >= r3->unk138.unk2) + { + r3->unk138.unk0 = 0; + r3->unk138.unk1 = 0; + r3->unk138.unk2 = 0; + r3->unk138.unk3 = 0; + r1 = 0; + } + else + { + r1 = gUnknown_082F3290[r3->unk138.unk1][r3->unk138.unk0 + 1]; + } + r3->unk5C.unk03 = r1; + } + else + { + SET_UNK5F_0: + r3->unk5C.unk03 = 0; + } + r3->unk5C.unk06 = r3->unk26; +} + +void sub_80236B8(struct BerryCrushGame *r5) +{ + if (gMain.newKeys & A_BUTTON) + r5->unk5C.unk02_2 = 1; + if (gMain.heldKeys & A_BUTTON) + { + if (r5->unk68.as_four_players.others[r5->unk8].unk4.as_hwords[5] < r5->unk28) + ++r5->unk68.as_four_players.others[r5->unk8].unk4.as_hwords[5]; + } + if (r5->unk8 != 0 && r5->unk5C.unk02_2 == 0) + return; + r5->unk5C.unk00 = 2; + if (r5->unk28 % 30 == 0) + { + if (r5->unk2E > gUnknown_082F4444[r5->unk9 - 2]) + { + ++r5->unk30; + r5->unk25_4 = 1; + } + else + { + r5->unk25_4 = 0; + } + r5->unk2E = 0; + ++r5->unk32; + } + if (r5->unk28 % 15 == 0) + { + if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][0]) + r5->unk25_5 = 0; + else if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][1]) + r5->unk25_5 = 1; + else if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][2]) + r5->unk34 = 2; // typo since r5->unk34 will be reset? + else if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][3]) + r5->unk34 = 3; // typo since r5->unk34 will be reset? + else + r5->unk25_5 = 4; + r5->unk34 = 0; + } + else + { + ++r5->unk10; + if (r5->unk10 > 60) + { + if (r5->unk10 > 70) + { + sub_8011AC8(); + r5->unk10 = 0; + } + else if (r5->unk5C.unk02_3 == 0) + { + sub_8011AC8(); + r5->unk10 = 0; + } + } + + } + if (r5->unk28 >= 36000) + r5->unk5C.unk02_0 = 1; + r5->unk5C.unk02_1 = r5->unk25_4; + r5->unk5C.unk0A = r5->unk25_5; + memcpy(r5->unk40.unk2, &r5->unk5C, sizeof(r5->unk40.unk2)); + sub_800FE50(r5->unk40.unk2); +} + +void sub_802385C(struct BerryCrushGame *r5) +{ + struct BerryCrushGame_4E *r4_; +#ifndef NONMATCHING + register u32 r4 asm("r4"); + register u32 r0 asm("r0"); + + for (r4 = 0; r4 < r5->unk9; r4 = (u8)r0) + { + r5->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] = 0; + r0 = r4 + 1; + } +#else + u8 r4; + + for (r4 = 0; r4 < r5->unk9; ++r4) + r5->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] = 0; +#endif + if ((gRecvCmds[0][0] & 0xFF00) != 0x2F00 + || gRecvCmds[0][1] != 2) + { + r5->unk25_2 = 0; + } + else + { + r4_ = &r5->unk40.unkE; + memcpy(r4_, gRecvCmds, sizeof(struct BerryCrushGame_4E)); + r5->unk2A = r4_->unk6; + r5->unk2C = r4_->unk5; + r5->unk28 = r4_->unk8; + sub_80216E0(r5, &r5->unk138); + if (r4_->unk4_0) + r5->unk25_3 = 1; + } +} + +u32 sub_80238F0(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + memset(&r4->unk5C, 0, sizeof(r4->unk5C)); + memset(&r4->unk40.unkE, 0, sizeof(r4->unk40.unkE)); + sub_802385C(r4); + SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C); + if (r4->unk25_3) + { + if (r4->unk28 >= 36000) + { + r4->unk28 = 36000; + sub_8022BEC(16, 1, NULL); + } + else + { + sub_8022BEC(15, 1, NULL); + } + r4->unk10 = 0; + r4->unkC = 0; + return 0; + } + else + { + ++r4->unk26; + sub_802339C(r4); + sub_8023558(r4); + sub_80236B8(r4); + return 0; + } +} + +u32 sub_8023998(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + memset(&r4->unk5C, 0, sizeof(r4->unk5C)); + memset(&r4->unk40.unkE, 0, sizeof(r4->unk40.unkE)); + sub_802385C(r4); + SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C); + if (r4->unk25_3) + { + if (r4->unk28 >= 36000) + { + r4->unk28 = 36000; + sub_8022BEC(16, 1, NULL); + } + else + { + sub_8022BEC(15, 1, NULL); + } + r4->unk10 = 0; + r4->unkC = 0; + return 0; + } + else + { + sub_80236B8(r4); + return 0; + } +} + +u32 sub_8023A30(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + switch (r4->unkC) + { + case 0: + r4->unk12 = 8; + PlaySE(SE_W070); + BlendPalettes(0xFFFFFFFF, 8, RGB(31, 31, 0)); + r4->unk138.unk0 = 2; + break; + case 1: + if (--r4->unk138.unk0 != 255) + return 0; + BlendPalettes(0xFFFFFFFF, 0, RGB(31, 31, 0)); + r4->unk138.unk1 = 4; + r4->unk138.unk0 = 0; + r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; + break; + case 2: + r4->unk2C = gUnknown_082F326C[r4->unk138.unk1][r4->unk138.unk0]; + SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C); + SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C); + if (++r4->unk138.unk0 < r4->unk138.unk2) + return 0; + if (r4->unk138.unk1 != 0) + { + --r4->unk138.unk1; + r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; + r4->unk138.unk0 = 0; + return 0; + } + break; + case 3: + r4->unk2C = 0; + SetGpuReg(REG_OFFSET_BG0VOFS, 0); + SetGpuReg(REG_OFFSET_BG2VOFS, 0); + SetGpuReg(REG_OFFSET_BG3VOFS, 0); + break; + case 4: + if (!sub_80218D4(r4, &r4->unk138)) + return 0; + sub_8010434(); + r4->unk10 = 0; + break; + case 5: + if (!IsLinkTaskFinished()) + return 0; + sub_8022BEC(17, 1, NULL); + r4->unk10 = 0; + r4->unkC = 0; + return 0; + } + ++r4->unkC; + return 0; +} + +u32 sub_8023BC0(struct BerryCrushGame *r5, u8 *r6) +{ + switch (r5->unkC) + { + case 0: + r5->unk12 = 9; + PlaySE(SE_HAZURE); + BlendPalettes(0xFFFFFFFF, 8, RGB(31, 0, 0)); + r5->unk138.unk0 = 4; + break; + case 1: + if (--r5->unk138.unk0 != 255) + return 0; + BlendPalettes(0xFFFFFFFF, 0, RGB(31, 0, 0)); + r5->unk138.unk0 = 0; + break; + case 2: + if (!sub_80218D4(r5, &r5->unk138)) + return 0; + sub_8010434(); + r5->unk10 = 0; + SetGpuReg(REG_OFFSET_BG0VOFS, 0); + SetGpuReg(REG_OFFSET_BG2VOFS, 0); + SetGpuReg(REG_OFFSET_BG3VOFS, 0); + break; + case 3: + if (!IsLinkTaskFinished()) + return 0; + ConvertIntToDecimalStringN(gStringVar1, r5->unk1C, STR_CONV_MODE_LEFT_ALIGN, 6); + sub_8024644(r6, 7, 1, 0, 0); + r5->unkE = 19; + sub_8022BEC(3, 1, NULL); + r5->unk10 = 0; + r5->unkC = 0; + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8023CAC(struct BerryCrushGame *r7, __attribute__((unused)) u8 *r1) +{ + u8 r8, r4_; + s32 r2; + s32 r4; + u8 r6; // ??? + + switch (r7->unkC) + { + case 0: + memset(r7->unk40.unk2, 0, 2 * sizeof(u16)); + if (r7->unk68.as_four_players.others[r7->unk8].unk4.as_hwords[5] > r7->unk28) + r7->unk68.as_four_players.others[r7->unk8].unk4.as_hwords[5] = r7->unk28; + r7->unk40.unk2[0] = r7->unk68.as_four_players.others[r7->unk8].unk4.as_hwords[5]; + SendBlock(0, r7->unk40.unk2, 2); + break; + case 1: + if (!IsLinkTaskFinished()) + return 0; + r7->unk10 = 0; + break; + case 2: + if (GetBlockReceivedStatus() != gUnknown_082F4448[r7->unk9 - 2]) + return 0; + for (r8 = 0; r8 < r7->unk9; ++r8) + r7->unk68.as_four_players.others[r8].unk4.as_hwords[5] = gBlockRecvBuffer[r8][0]; + r7->unk10 = 0; + r7->unk40.unk2[0] = 0; + ResetBlockReceivedFlags(); + if (r7->unk8 == 0) + r7->unkC = 3; + else + r7->unkC = 6; + return 0; + case 3: + memset( + &r7->unk68, + 0, + sizeof(struct BerryCrushGame_68_x_SubStruct) + ); + r7->unk68.as_four_players.unk00.unk04 = r7->unk28; + r7->unk68.as_four_players.unk00.unk06 = r7->unk18 / (r7->unk28 / 60); + r2 = sub_8151574(r7->unk30 << 8, 0x3200); + r2 = sub_81515FC(r2, r7->unk32 << 8) + 0x3200; + r2 >>= 8; + r7->unk68.as_four_players.unk00.unk08 = r2 & 0x7F; + r2 <<= 8; + r2 = sub_81515FC(r2, 0x6400); + r4 = (r7->unk1C * r7->unk9) << 8; + r4 = sub_8151574(r4, r2); + r7->unk68.as_four_players.unk00.unk00 = r4 >> 8; + r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][7] = Random() % 3; + for (r6 = 0, r8 = 0; r8 < r7->unk9; ++r8) + { + r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][r8] = r8; + r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[1][r8] = r8; + r7->unk68.as_four_players.unk00.unk0C[0][r8] = r7->unk68.as_four_players.others[r8].unk4.as_hwords[3]; + r7->unk68.as_four_players.unk00.unk0A += r7->unk68.as_four_players.unk00.unk0C[0][r8]; + switch (r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][7]) + { + case 0: + if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[3] != 0) + { + r2 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[2]; + r2 <<= 8; + r2 = sub_8151574(r2, 0x6400); + r4 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[3]; + r4 <<= 8; + r4 = sub_81515FC(r2, r4); + } + else + { + r4 = 0; + } + break; + case 1: + if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[3] != 0) + { + r2 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[4]; + r2 <<= 8; + r2 = sub_8151574(r2, 0x6400); + r4 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[3]; + r4 <<= 8; + r4 = sub_81515FC(r2, r4); + } + else + { + r4 = 0; + } + break; + case 2: + if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[3] == 0) + { + r4 = 0; + } + else if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[5] >= r7->unk28) + { + r4 = 0x6400; + } + else + { + r2 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[5]; + r2 <<= 8; + r2 = sub_8151574(r2, 0x6400); + r4 = r7->unk28; + r4 <<= 8; + r4 = sub_81515FC(r2, r4); + } + break; + } + r4 >>= 4; + r7->unk68.as_four_players.unk00.unk0C[1][r8] = r4; + } + break; + case 4: + for (r6 = 0, r8 = 0; r8 < r7->unk9 - 1; ++r8) + { + for (r4_ = r7->unk9 - 1; r4_ > r8; --r4_) + { + u16 r0; + u8 r3; + u16 *sp00 = r7->unk68.as_four_players.unk00.unk0C[0]; + u8 *sp04 = r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0]; + u8 *r10 = r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[1]; + u16 *r9 = r7->unk68.as_four_players.unk00.unk0C[1]; + s32 r12 = r4_ - 1; + u16 *p1 = sp00 + r12; // these have to be here + u16 *p2 = sp00 + r4_; // to swap operands. macro? + + if (*p1 < *p2) + { + r0 = sp00[r4_]; + sp00[r4_] = sp00[r12]; + sp00[r12] = r0; + r3 = sp04[r4_]; + sp04[r4_] = sp04[r12]; + sp04[r12] = r3; + } + p1 = r9 + r12; + p2 = r9 + r4_; + if (*p1 < *p2) + { + r0 = r9[r4_]; + r9[r4_] = r9[r12]; + r9[r12] = r0; + r3 = r10[r4_]; + r10[r4_] = r10[r12]; + r10[r12] = r3; + } + } + } + SendBlock( + 0, + &r7->unk68, + sizeof(struct BerryCrushGame_68_x_SubStruct) + ); + break; + case 5: + if (!IsLinkTaskFinished()) + return 0; + r7->unk10 = 0; + break; + case 6: + if (GetBlockReceivedStatus() != 1) + return 0; + memset( + &r7->unk68, + 0, + sizeof(struct BerryCrushGame_68_x_SubStruct) + ); + memcpy( + &r7->unk68, + gBlockRecvBuffer, + sizeof(struct BerryCrushGame_68_x_SubStruct) + ); + ResetBlockReceivedFlags(); + r7->unk10 = 0; + break; + case 7: + sub_8020E58(); + sub_8022BEC(18, 1, NULL); + r7->unk12 = 11; + r7->unkC = 0; + r7->unk24 = 0; + return 0; + } + ++r7->unkC; + return 0; +} + +u32 sub_8024048(struct BerryCrushGame *r5, u8 *r6) +{ + switch (r5->unkC) + { + case 0: + if (!sub_8022070(r5, &r5->unk138)) + return 0; + break; + case 1: + CopyBgTilemapBufferToVram(0); + r5->unk138.unk0 = 30; + break; + case 2: + if (r5->unk138.unk0 != 0) + { + --r5->unk138.unk0; + return 0; + } + if (!(gMain.newKeys & A_BUTTON)) + return 0; + PlaySE(SE_SELECT); + sub_802222C(r5); + break; + case 3: + if (r5->unk12 <= 12) + { + ++r5->unk12; + r5->unkC = 0; + return 0; + } + break; + case 4: + ConvertIntToDecimalStringN(gStringVar1, r5->unk1C, STR_CONV_MODE_LEFT_ALIGN, 6); + ConvertIntToDecimalStringN(gStringVar2, GetBerryPowder(), STR_CONV_MODE_LEFT_ALIGN, 6); + sub_8024644(r6, 2, 3, 0, 0); + r5->unkE = 19; + sub_8022BEC(3, 1, NULL); + r5->unkC = 0; + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8024134(struct BerryCrushGame *r5, u8 *r4) +{ + switch (r5->unkC) + { + case 0: + if (r5->unk28 >= 36000) + sub_8022554(&r5->unk138); + sub_8024644(r4, 8, 0, 0, 1); + r5->unkE = 19; + sub_8022BEC(3, 1, NULL); + r5->unkC = 0; + return 0; + case 1: + sub_8010434(); + break; + case 2: + if (!IsLinkTaskFinished()) + return 0; + DrawDialogueFrame(0, 0); + AddTextPrinterParameterized2(0, 1, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); + CopyWindowToVram(0, 3); + CreateTask(sub_8153688, 0); + break; + case 3: + if (FuncIsActiveTask(sub_8153688)) + return 0; + break; + case 4: + sub_8022BEC(20, 1, NULL); + r5->unk12 = 15; + r5->unkC = 0; + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8024228(struct BerryCrushGame *r5, u8 *r6) +{ + s32 r4; +#ifndef NONMATCHING + register s32 r0 asm("r0"); +#else + s32 r0; +#endif + + switch (r5->unkC) + { + case 0: + sub_8024644(r6, 4, 0, 0, 1); + r5->unkE = 20; + sub_8022BEC(3, 1, NULL); + r0 = 0; + r5->unkC = r0; // dunno what it's doing because it's already in case 0 + return 0; + case 1: + DisplayYesNoMenuDefaultYes(); + break; + case 2: + if ((r4 = Menu_ProcessInputNoWrapClearOnChoose()) != -2) + { + memset(r5->unk40.unk2, 0, sizeof(r5->unk40.unk2)); + if (r4 == 0) + { + if (HasAtLeastOneBerry()) + r5->unk14 = 0; + else + r5->unk14 = 3; + } + else + { + r5->unk14 = 1; + } + ClearDialogWindowAndFrame(0, 1); + sub_8024644(r6, 8, 0, 0, 0); + r5->unkE = 21; + sub_8022BEC(3, 1, NULL); + r5->unkC = 0; + } + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_80242E0(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +{ + u8 r5 = 0; + + switch (r4->unkC) + { + case 0: + sub_8010434(); + break; + case 1: + if (!IsLinkTaskFinished()) + return 0; + r4->unk40.unk2[0] = r4->unk14; + r4->unk40.unkE.unk0 = 0; + SendBlock(0, r4->unk40.unk2, sizeof(u16)); + break; + case 2: + if (!IsLinkTaskFinished()) + return 0; + r4->unk10 = 0; + break; + case 3: + if (GetBlockReceivedStatus() != gUnknown_082F4448[r4->unk9 - 2]) + return 0; + for (; r5 < r4->unk9; ++r5) + r4->unk40.unkE.unk0 += gBlockRecvBuffer[r5][0]; + if (r4->unk40.unkE.unk0 != 0) + sub_8022BEC(23, 1, NULL); + else + sub_8022BEC(22, 1, NULL); + ResetBlockReceivedFlags(); + r4->unk40.unk2[0] = 0; + r4->unk40.unkE.unk0 = 0; + r4->unk10 = 0; + r4->unkC = 0; + return 0; + } + ++r4->unkC; + return 0; +} + +u32 sub_80243BC(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1) +{ + switch (r5->unkC) + { + case 0: + BeginNormalPaletteFade(0xFFFFFFFF, 1, 0, 0x10, RGB_BLACK); + UpdatePaletteFade(); + break; + case 1: + if (UpdatePaletteFade()) + return 0; + break; + case 2: + ClearDialogWindowAndFrame(0, 1); + sub_8021488(r5); + BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK); + UpdatePaletteFade(); + break; + case 3: + if (UpdatePaletteFade()) + return 0; + sub_8022BEC(7, 1, NULL); + r5->unk12 = 3; + r5->unkC = 0; + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8024444(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1) +{ + switch (r5->unkC) + { + case 0: + DrawDialogueFrame(0, 0); + if (r5->unk14 == 3) + AddTextPrinterParameterized2(0, 1, gUnknown_082F32A4[5], r5->unkB, 0, 2, 1, 3); + else + AddTextPrinterParameterized2(0, 1, gUnknown_082F32A4[6], r5->unkB, 0, 2, 1, 3); + CopyWindowToVram(0, 3); + break; + case 1: + if (IsTextPrinterActive(0)) + return 0; + r5->unk138.unk0 = 120; + break; + case 2: + if (r5->unk138.unk0 != 0) + --r5->unk138.unk0; + else + { + sub_8022BEC(24, 1, NULL); + r5->unkC = 0; + } + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8024508(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1) +{ + switch (r5->unkC) + { + case 0: + sub_8010434(); + break; + case 1: + if (!IsLinkTaskFinished()) + return 0; + sub_800AC34(); + break; + case 2: + if (gReceivedRemoteLinkPlayers != 0) + return 0; + r5->unkE = 25; + sub_8022BEC(5, 1, NULL); + r5->unkC = 2; // ??? + return 0; + } + ++r5->unkC; + return 0; +} + +u32 sub_8024568(__attribute__((unused)) struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1) +{ + sub_8020C0C(NULL); + return 0; +} + +void sub_8024578(struct BerryCrushGame *r4) +{ + u8 r5 = 0; + + IncrementGameStat(GAME_STAT_51); + r4->unkD = 0; + r4->unk10 = 0; + r4->unk12 = 2; + r4->unk14 = 0; + r4->unk1C = 0; + r4->unk18 = 0; + r4->unk1A = 0; + r4->unk20 = 0; + r4->unk24 = 0; + r4->unk25_0 = 0; + r4->unk25_1 = 0; + r4->unk25_2 = 0; + r4->unk25_3 = 0; + r4->unk25_4 = 0; + r4->unk25_5 = 0; + r4->unk26 = 0; + r4->unk28 = 0; + r4->unk2E = 0; + r4->unk32 = -1; + r4->unk30 = 0; + r4->unk34 = 0; + for (; r5 < 5; ++r5) // why is it 5 instead of 4? fillerBC isn't sufficient for one player + { + r4->unk68.as_four_players.others[r5].unk0 = -1; + r4->unk68.as_four_players.others[r5].unk2 = 0; + r4->unk68.as_four_players.others[r5].unk4.as_hwords[0] = 0; + r4->unk68.as_four_players.others[r5].unk4.as_hwords[1] = 1; + r4->unk68.as_four_players.others[r5].unk4.as_hwords[2] = 0; + r4->unk68.as_four_players.others[r5].unk4.as_hwords[3] = 0; + r4->unk68.as_four_players.others[r5].unk4.as_hwords[4] = 0; + r4->unk68.as_four_players.others[r5].unk4.as_hwords[5] = 0; + r4->unk68.as_four_players.others[r5].unk4.as_2d_bytes[1][4] = 0; + r4->unk68.as_four_players.others[r5].unk4.as_2d_bytes[1][5] = 0; + } +} + +#ifdef NONMATCHING +void sub_8024604(u8 *r0, u32 r1, s32 r2, u32 r3, u32 r5, u32 r6, u32 r4) +{ + u8 sp[8]; + u8 *p; + + 1[(u32 *)sp] = r2; + 0[(u16 *)sp] = r4; + p = &sp[4]; + r0[0] = p[0]; + r0[1] = p[1]; + r0[2] = p[2]; + r0[3] = p[3]; + r0[4] = r3; + r0[5] = r5; + r0[6] = r6; + r0[7] = sp[0]; + r0[8] = sp[1]; + r0[9] = r1; +} +#else +NAKED +void sub_8024604(u8 *r0, u32 r1, s32 r2, u32 r3, u32 r5, u32 r6, u32 r4) +{ + asm_unified("\n\ + push {r4-r6,lr}\n\ + sub sp, 0x8\n\ + str r2, [sp, 0x4]\n\ + ldr r5, [sp, 0x18]\n\ + ldr r6, [sp, 0x1C]\n\ + ldr r4, [sp, 0x20]\n\ + mov r2, sp\n\ + strh r4, [r2]\n\ + add r4, sp, 0x4\n\ + ldrb r2, [r4]\n\ + strb r2, [r0]\n\ + ldrb r2, [r4, 0x1]\n\ + strb r2, [r0, 0x1]\n\ + ldrb r2, [r4, 0x2]\n\ + strb r2, [r0, 0x2]\n\ + ldrb r2, [r4, 0x3]\n\ + strb r2, [r0, 0x3]\n\ + strb r3, [r0, 0x4]\n\ + strb r5, [r0, 0x5]\n\ + strb r6, [r0, 0x6]\n\ + mov r2, sp\n\ + ldrb r2, [r2]\n\ + strb r2, [r0, 0x7]\n\ + mov r2, sp\n\ + ldrb r2, [r2, 0x1]\n\ + strb r2, [r0, 0x8]\n\ + strb r1, [r0, 0x9]\n\ + add sp, 0x8\n\ + pop {r4-r6}\n\ + pop {r0}\n\ + bx r0"); +} +#endif + +void sub_8024644(u8 *r0, u32 r1, u32 r2, u32 r3, u32 r5) +{ + u8 sp[4]; + + 0[(u16 *)sp] = r3; + r0[0] = r1; + r0[1] = r2; + r0[2] = sp[0]; + r0[3] = sp[1]; + r0[4] = r5; +} diff --git a/src/cable_club.c b/src/cable_club.c index b1675030b..ab72ee3f2 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -816,7 +816,7 @@ static void sub_80B32B4(u8 taskId) switch (task->data[0]) { case 0: - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gLinkType = LINKTYPE_BATTLE; ClearLinkCallback_2(); task->data[0]++; @@ -862,7 +862,7 @@ static void sub_80B33BC(u8 taskId) switch (data[0]) { case 0: - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gLinkType = LINKTYPE_BATTLE; ClearLinkCallback_2(); data[0] = 1; @@ -1077,7 +1077,7 @@ static void sub_80B37FC(u8 taskId) { case 0: ScriptContext2_Enable(); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); ClearLinkCallback_2(); task->data[0]++; break; @@ -1110,7 +1110,7 @@ static void sub_80B3894(u8 taskId) { case 0: ScriptContext2_Enable(); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); ClearLinkRfuCallback(); data[0]++; break; diff --git a/src/decoration.c b/src/decoration.c index a0065752a..2a5c2ccd7 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -608,7 +608,7 @@ static void DecorationMenuAction_PutAway(u8 taskId) { RemoveDecorationWindow(0); ClearDialogWindowAndFrame(0, 0); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].data[2] = 0; gTasks[taskId].func = sub_8129ABC; } @@ -1292,7 +1292,7 @@ void sub_8127F68(u8 taskId) { if (sub_8127F38() == TRUE) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].data[2] = 0; gTasks[taskId].func = sub_8128060; } @@ -1682,7 +1682,7 @@ void CancelDecorating(u8 taskId) void sub_8128BBC(u8 taskId) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].data[2] = 0; gTasks[taskId].func = c1_overworld_prev_quest; } @@ -2551,7 +2551,7 @@ void ReturnDecorationPrompt(u8 taskId) void PutAwayDecoration(u8 taskId) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].data[2] = 0; gTasks[taskId].func = sub_81298EC; } @@ -2570,7 +2570,7 @@ void StopPuttingAwayDecorations(u8 taskId) void sub_812A22C(u8 taskId) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].data[2] = 0; gTasks[taskId].func = sub_812A25C; } diff --git a/src/easy_chat.c b/src/easy_chat.c index 77e57ffaf..3aa709732 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1341,7 +1341,7 @@ static void CB2_QuizLadyQuestion(void) switch (gMain.state) { case 0: - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); break; case 1: if (!gPaletteFade.active) diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 2ce2c04bb..2a942c9d9 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -461,7 +461,7 @@ void EggHatch(void) { ScriptContext2_Enable(); CreateTask(Task_EggHatch, 10); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); } static void Task_EggHatch(u8 taskID) diff --git a/src/item_use.c b/src/item_use.c index 54169db1c..2a614243b 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -601,7 +601,7 @@ void ItemUseOutOfBattle_PokeblockCase(u8 taskId) else { gFieldCallback = sub_80AF6D4; - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].func = sub_80FDC00; } } diff --git a/src/player_pc.c b/src/player_pc.c index 94484ab72..e10af43b8 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -484,7 +484,7 @@ static void ItemStorageMenuProcessInput(u8 taskId) static void ItemStorage_Deposit(u8 taskId) { gTasks[taskId].func = Task_ItemStorage_Deposit; - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); } static void Task_ItemStorage_Deposit(u8 taskId) @@ -714,7 +714,7 @@ static void Mailbox_MailOptionsProcessInput(u8 taskId) static void Mailbox_DoMailRead(u8 taskId) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].func = Mailbox_FadeAndReadMail; } @@ -813,7 +813,7 @@ static void Mailbox_Give(u8 taskId) Mailbox_NoPokemonForMail(taskId); else { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].func = Mailbox_DoGiveMailPokeMenu; } } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index fae152bb2..3118f66cd 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1790,7 +1790,7 @@ static void Task_PokemonStorageSystemPC(u8 taskId) } else { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); task->data[0] = 4; } break; diff --git a/src/pokenav.c b/src/pokenav.c index 6b971bc00..a7b7c95a3 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -320,7 +320,7 @@ void CB2_InitPokeNav(void) void OpenPokenavForTutorial(void) { SetMainCallback2(CB2_InitPokenavForTutorial); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); } static void CB2_InitPokenavForTutorial(void) diff --git a/src/scrcmd.c b/src/scrcmd.c index f215b8541..82da62b27 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -650,13 +650,14 @@ bool8 ScrCmd_fadescreenswapbuffers(struct ScriptContext *ctx) switch (mode) { - case 1: + case FADE_TO_BLACK: + case FADE_TO_WHITE: default: CpuCopy32(gPlttBufferUnfaded, gPaletteDecompressionBuffer, PLTT_DECOMP_BUFFER_SIZE); FadeScreen(mode, 0); break; - case 0: - case 2: + case FADE_FROM_BLACK: + case FADE_FROM_WHITE: CpuCopy32(gPaletteDecompressionBuffer, gPlttBufferUnfaded, PLTT_DECOMP_BUFFER_SIZE); FadeScreen(mode, 0); break; diff --git a/src/secret_base.c b/src/secret_base.c index b8752b8a6..fe941008c 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -423,7 +423,7 @@ static void Task_EnterSecretBase(u8 taskId) void EnterSecretBase(void) { CreateTask(Task_EnterSecretBase, 0); - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); } diff --git a/src/shop.c b/src/shop.c index 5f796f307..5b83ca2a9 100755 --- a/src/shop.c +++ b/src/shop.c @@ -348,7 +348,7 @@ static void Task_HandleShopMenuBuy(u8 taskId) data[8] = (u32)CB2_InitBuyMenu >> 16; data[9] = (u32)CB2_InitBuyMenu; gTasks[taskId].func = Task_GoToBuyOrSellMenu; - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); } static void Task_HandleShopMenuSell(u8 taskId) @@ -357,7 +357,7 @@ static void Task_HandleShopMenuSell(u8 taskId) data[8] = (u32)CB2_GoToSellMenu >> 16; data[9] = (u32)CB2_GoToSellMenu; gTasks[taskId].func = Task_GoToBuyOrSellMenu; - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); } void CB2_ExitSellMenu(void) diff --git a/src/start_menu.c b/src/start_menu.c index 93145655f..99f474a90 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -581,7 +581,7 @@ static bool8 HandleStartMenuInput(void) && gMenuCallback != StartMenuSafariZoneRetireCallback && gMenuCallback != StartMenuBattlePyramidRetireCallback) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); } return FALSE; diff --git a/src/union_room.c b/src/union_room.c index 2ef888a2f..3880d85be 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1583,7 +1583,7 @@ void sub_8014790(u8 taskId) case 1: if (!ScriptContext1_IsScriptSetUp()) { - FadeScreen(1, 0); + FadeScreen(FADE_TO_BLACK, 0); data[0] = 2; } break; |