diff options
71 files changed, 11341 insertions, 20016 deletions
diff --git a/asm/battle_2.s b/asm/battle_2.s deleted file mode 100644 index 5a751ba55..000000000 --- a/asm/battle_2.s +++ /dev/null @@ -1,6434 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_8012324 -sub_8012324: @ 8012324 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - ldr r0, _08012340 @ =gBattleCommunication - movs r1, 0 - strb r1, [r0, 0x4] - ldr r0, _08012344 @ =gActiveBank - strb r1, [r0] - ldr r0, _08012348 @ =gNoOfAllBanks - bl _08012F74 - .align 2, 0 -_08012340: .4byte gBattleCommunication -_08012344: .4byte gActiveBank -_08012348: .4byte gNoOfAllBanks -_0801234C: - ldr r4, _08012374 @ =gActiveBank - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _08012378 @ =gBattleCommunication - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x6 - bls _08012368 - bl _08012F66 -_08012368: - lsls r0, 2 - ldr r1, _0801237C @ =_08012380 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08012374: .4byte gActiveBank -_08012378: .4byte gBattleCommunication -_0801237C: .4byte _08012380 - .align 2, 0 -_08012380: - .4byte _0801239C - .4byte _080124C8 - .4byte _08012A28 - .4byte _08012DA8 - .4byte _08012E50 - .4byte _08012E94 - .4byte _08012F38 -_0801239C: - ldr r4, _08012434 @ =gSharedMem - ldr r0, _08012438 @ =gActiveBank - ldrb r0, [r0] - ldr r1, _0801243C @ =0x00016068 - adds r0, r1 - adds r0, r4 - movs r1, 0x6 - strb r1, [r0] - ldr r0, _08012440 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080123F8 - movs r1, 0x2 - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - beq _080123F8 - eors r5, r1 - adds r0, r5, 0 - bl GetBankByPlayerAI - ldr r2, _08012444 @ =0x000160a6 - adds r1, r4, r2 - ldrb r1, [r1] - ldr r2, _08012448 @ =gBitTable - lsls r0, 24 - lsrs r0, 22 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _080123F8 - ldr r4, _0801244C @ =gBattleCommunication - adds r0, r5, 0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x4 - beq _080123F8 - bl _08012F66 -_080123F8: - ldr r0, _08012434 @ =gSharedMem - ldr r3, _08012444 @ =0x000160a6 - adds r0, r3 - ldrb r3, [r0] - ldr r1, _08012448 @ =gBitTable - ldr r4, _08012438 @ =gActiveBank - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ands r3, r0 - cmp r3, 0 - beq _08012468 - ldr r0, _08012450 @ =gActionForBanks - adds r0, r2, r0 - movs r1, 0xD - strb r1, [r0] - ldr r0, _08012440 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08012454 - ldr r0, _0801244C @ =gBattleCommunication - ldrb r1, [r4] - adds r1, r0 - movs r0, 0x4 - strb r0, [r1] - bl _08012F66 - .align 2, 0 -_08012434: .4byte gSharedMem -_08012438: .4byte gActiveBank -_0801243C: .4byte 0x00016068 -_08012440: .4byte gBattleTypeFlags -_08012444: .4byte 0x000160a6 -_08012448: .4byte gBitTable -_0801244C: .4byte gBattleCommunication -_08012450: .4byte gActionForBanks -_08012454: - ldr r0, _08012464 @ =gBattleCommunication - ldrb r1, [r4] - adds r1, r0 - movs r0, 0x3 - strb r0, [r1] - bl _08012F66 - .align 2, 0 -_08012464: .4byte gBattleCommunication -_08012468: - ldr r1, _0801249C @ =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - bne _08012488 - movs r0, 0x80 - lsls r0, 15 - ands r1, r0 - cmp r1, 0 - beq _080124A8 -_08012488: - ldr r0, _080124A0 @ =gActionForBanks - adds r0, r2, r0 - strb r3, [r0] - ldr r1, _080124A4 @ =gBattleCommunication - ldrb r0, [r4] - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] - bl _08012F66 - .align 2, 0 -_0801249C: .4byte gBattleMons -_080124A0: .4byte gActionForBanks -_080124A4: .4byte gBattleCommunication -_080124A8: - ldr r0, _080124C0 @ =gActionForBanks - ldrb r1, [r0] - ldr r0, _080124C4 @ =gBattleBufferB - ldrb r2, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r2, r0 - movs r0, 0 - bl Emitcmd18 - bl _08012E32 - .align 2, 0 -_080124C0: .4byte gActionForBanks -_080124C4: .4byte gBattleBufferB -_080124C8: - ldr r4, _08012520 @ =gBattleExecBuffer - ldr r1, _08012524 @ =gBitTable - ldr r3, _08012528 @ =gActiveBank - ldrb r5, [r3] - lsls r0, r5, 2 - adds r0, r1 - ldr r2, [r0] - lsls r0, r2, 4 - movs r1, 0xF0 - lsls r1, 24 - orrs r0, r1 - orrs r0, r2 - lsls r1, r2, 8 - orrs r0, r1 - lsls r2, 12 - orrs r0, r2 - ldr r1, [r4] - ands r1, r0 - mov r8, r3 - cmp r1, 0 - beq _080124F6 - bl _08012F66 -_080124F6: - ldr r2, _0801252C @ =gActionForBanks - adds r2, r5, r2 - ldr r1, _08012530 @ =gBattleBufferB - lsls r0, r5, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldrb r0, [r3] - lsls r0, 9 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0xC - bls _08012514 - b _08012968 -_08012514: - lsls r0, 2 - ldr r1, _08012534 @ =_08012538 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08012520: .4byte gBattleExecBuffer -_08012524: .4byte gBitTable -_08012528: .4byte gActiveBank -_0801252C: .4byte gActionForBanks -_08012530: .4byte gBattleBufferB -_08012534: .4byte _08012538 - .align 2, 0 -_08012538: - .4byte _0801256C - .4byte _080126B4 - .4byte _080126E0 - .4byte _08012968 - .4byte _08012968 - .4byte _080128B0 - .4byte _08012908 - .4byte _08012968 - .4byte _08012968 - .4byte _08012968 - .4byte _08012968 - .4byte _08012968 - .4byte _0801292C -_0801256C: - bl AreAllMovesUnusable - lsls r0, 24 - cmp r0, 0 - beq _080125D0 - ldr r0, _080125B4 @ =gBattleCommunication - ldr r2, _080125B8 @ =gActiveBank - ldrb r1, [r2] - adds r1, r0 - movs r4, 0 - movs r0, 0x5 - strb r0, [r1] - ldr r3, _080125BC @ =gSharedMem - ldrb r0, [r2] - ldr r1, _080125C0 @ =0x00016060 - adds r0, r1 - adds r0, r3 - strb r4, [r0] - ldrb r0, [r2] - ldr r4, _080125C4 @ =0x00016094 - adds r0, r4 - adds r0, r3 - movs r1, 0x3 - strb r1, [r0] - ldrb r1, [r2] - ldr r0, _080125C8 @ =0x00016010 - adds r2, r1, r0 - adds r2, r3 - ldr r0, _080125CC @ =gBattleBufferB - lsls r1, 9 - adds r0, 0x3 - adds r1, r0 - ldrb r0, [r1] - strb r0, [r2] - bl _08012F90 - .align 2, 0 -_080125B4: .4byte gBattleCommunication -_080125B8: .4byte gActiveBank -_080125BC: .4byte gSharedMem -_080125C0: .4byte 0x00016060 -_080125C4: .4byte 0x00016094 -_080125C8: .4byte 0x00016010 -_080125CC: .4byte gBattleBufferB -_080125D0: - ldr r1, _080125FC @ =gDisableStructs - ldr r5, _08012600 @ =gActiveBank - ldrb r4, [r5] - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r0, r1 - ldrh r2, [r0, 0x6] - cmp r2, 0 - beq _0801260C - ldr r1, _08012604 @ =gChosenMovesByBanks - lsls r0, r4, 1 - adds r0, r1 - strh r2, [r0] - ldr r1, _08012608 @ =gBattleCommunication - ldrb r0, [r5] - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] - bl _08012F90 - .align 2, 0 -_080125FC: .4byte gDisableStructs -_08012600: .4byte gActiveBank -_08012604: .4byte gChosenMovesByBanks -_08012608: .4byte gBattleCommunication -_0801260C: - add r2, sp, 0x4 - ldr r3, _080126AC @ =gBattleMons - movs r1, 0x58 - adds r0, r4, 0 - muls r0, r1 - adds r0, r3 - ldrh r0, [r0] - strh r0, [r2, 0x10] - ldrb r0, [r5] - muls r0, r1 - adds r0, r3 - adds r0, 0x21 - ldrb r0, [r0] - strb r0, [r2, 0x12] - ldrb r0, [r5] - muls r0, r1 - adds r0, r3 - adds r0, 0x22 - ldrb r0, [r0] - strb r0, [r2, 0x13] - movs r4, 0 - mov r1, sp - adds r1, 0xC - str r1, [sp, 0x18] - add r2, sp, 0x10 - mov r10, r2 - mov r8, r3 - adds r7, r5, 0 - movs r6, 0x58 - movs r3, 0xC - add r3, r8 - mov r9, r3 - add r5, sp, 0x4 -_0801264E: - lsls r2, r4, 1 - ldrb r0, [r7] - muls r0, r6 - adds r0, r2, r0 - add r0, r9 - ldrh r0, [r0] - strh r0, [r5] - ldr r0, [sp, 0x18] - adds r3, r0, r4 - ldrb r0, [r7] - muls r0, r6 - adds r0, r4, r0 - mov r1, r8 - adds r1, 0x24 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - ldrb r0, [r7] - adds r1, r0, 0 - muls r1, r6 - adds r2, r1 - add r2, r9 - ldrh r0, [r2] - add r1, r8 - adds r1, 0x3B - ldrb r1, [r1] - lsls r2, r4, 24 - lsrs r2, 24 - bl CalculatePPWithBonus - mov r2, r10 - adds r1, r2, r4 - strb r0, [r1] - adds r5, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - ble _0801264E - ldr r0, _080126B0 @ =gBattleTypeFlags - ldrb r0, [r0] - movs r1, 0x1 - ands r1, r0 - movs r0, 0 - movs r2, 0 - add r3, sp, 0x4 - bl Emitcmd20 - b _0801289E - .align 2, 0 -_080126AC: .4byte gBattleMons -_080126B0: .4byte gBattleTypeFlags -_080126B4: - ldr r0, _080126D0 @ =gBattleTypeFlags - ldrh r1, [r0] - ldr r0, _080126D4 @ =0x00000902 - ands r0, r1 - cmp r0, 0 - bne _080126C2 - b _08012908 -_080126C2: - ldr r1, _080126D8 @ =gUnknown_02024C1C - mov r3, r8 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r1 - ldr r1, _080126DC @ =BattleScript_ActionSelectionItemsCantBeUsed - b _080129CC - .align 2, 0 -_080126D0: .4byte gBattleTypeFlags -_080126D4: .4byte 0x00000902 -_080126D8: .4byte gUnknown_02024C1C -_080126DC: .4byte BattleScript_ActionSelectionItemsCantBeUsed -_080126E0: - ldr r3, _08012738 @ =gSharedMem - ldr r5, _0801273C @ =gActiveBank - ldrb r0, [r5] - ldr r4, _08012740 @ =0x00016064 - adds r1, r0, r4 - adds r1, r3 - ldr r2, _08012744 @ =gBattlePartyID - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - ldr r7, _08012748 @ =gBattleMons - ldrb r2, [r5] - movs r6, 0x58 - adds r0, r2, 0 - muls r0, r6 - adds r1, r7, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, _0801274C @ =0x0400e000 - ands r0, r1 - cmp r0, 0 - bne _08012722 - ldr r0, _08012750 @ =gStatuses3 - lsls r1, r2, 2 - adds r1, r0 - ldr r1, [r1] - movs r0, 0x80 - lsls r0, 3 - ands r1, r0 - cmp r1, 0 - beq _08012758 -_08012722: - lsls r0, r2, 1 - adds r0, r2 - ldr r2, _08012754 @ =0x0001606c - adds r1, r3, r2 - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0x6 - b _0801286C - .align 2, 0 -_08012738: .4byte gSharedMem -_0801273C: .4byte gActiveBank -_08012740: .4byte 0x00016064 -_08012744: .4byte gBattlePartyID -_08012748: .4byte gBattleMons -_0801274C: .4byte 0x0400e000 -_08012750: .4byte gStatuses3 -_08012754: .4byte 0x0001606c -_08012758: - str r1, [sp] - movs r0, 0xC - adds r1, r2, 0 - movs r2, 0x17 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080127E0 - ldrb r1, [r5] - str r4, [sp] - movs r0, 0xC - movs r2, 0x47 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080127A8 - ldrb r0, [r5] - muls r0, r6 - adds r1, r0, r7 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080127A8 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080127A8 - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1A - bne _080127E0 -_080127A8: - ldr r5, _08012808 @ =gActiveBank - ldrb r1, [r5] - movs r0, 0 - str r0, [sp] - movs r0, 0xF - movs r2, 0x2A - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08012818 - ldr r2, _0801280C @ =gBattleMons - ldrb r1, [r5] - movs r0, 0x58 - muls r0, r1 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x8 - beq _080127E0 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x8 - bne _08012818 -_080127E0: - subs r1, r4, 0x1 - lsls r1, 4 - movs r0, 0x4 - orrs r1, r0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08012810 @ =gLastUsedAbility - ldrb r3, [r0] - ldr r0, _08012808 @ =gActiveBank - ldrb r2, [r0] - lsls r0, r2, 1 - adds r0, r2 - ldr r2, _08012814 @ =gSharedMem + 0x1606C - adds r0, r2 - str r0, [sp] - movs r0, 0 - movs r2, 0x6 - bl EmitChoosePokemon - b _0801289E - .align 2, 0 -_08012808: .4byte gActiveBank -_0801280C: .4byte gBattleMons -_08012810: .4byte gLastUsedAbility -_08012814: .4byte gSharedMem + 0x1606C -_08012818: - ldr r0, _08012830 @ =gActiveBank - ldrb r1, [r0] - mov r8, r0 - cmp r1, 0x2 - bne _08012840 - ldr r0, _08012834 @ =gActionForBanks - ldrb r0, [r0] - cmp r0, 0x2 - bne _08012840 - ldr r3, _08012838 @ =gSharedMem - ldr r4, _0801283C @ =0x00016068 - b _08012854 - .align 2, 0 -_08012830: .4byte gActiveBank -_08012834: .4byte gActionForBanks -_08012838: .4byte gSharedMem -_0801283C: .4byte 0x00016068 -_08012840: - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0x3 - bne _08012884 - ldr r0, _08012874 @ =gActionForBanks - ldrb r0, [r0, 0x1] - cmp r0, 0x2 - bne _08012884 - ldr r3, _08012878 @ =gSharedMem - ldr r4, _0801287C @ =0x00016069 -_08012854: - adds r0, r3, r4 - ldrb r2, [r0] - mov r0, r8 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - ldr r1, _08012880 @ =0x0001606c - adds r3, r1 - adds r0, r3 - str r0, [sp] - movs r0, 0 - movs r1, 0 -_0801286C: - movs r3, 0 - bl EmitChoosePokemon - b _0801289E - .align 2, 0 -_08012874: .4byte gActionForBanks -_08012878: .4byte gSharedMem -_0801287C: .4byte 0x00016069 -_08012880: .4byte 0x0001606c -_08012884: - ldr r0, _080128A8 @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - ldr r1, _080128AC @ =gSharedMem + 0x1606C - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0x6 - movs r3, 0 - bl EmitChoosePokemon -_0801289E: - ldr r0, _080128A8 @ =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - b _08012968 - .align 2, 0 -_080128A8: .4byte gActiveBank -_080128AC: .4byte gSharedMem + 0x1606C -_080128B0: - bl PlayerPartyAndPokemonStorageFull - lsls r0, 24 - cmp r0, 0 - beq _08012968 - ldr r1, _080128EC @ =gUnknown_02024C1C - ldr r2, _080128F0 @ =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, _080128F4 @ =BattleScript_PrintFullBox - str r1, [r0] - ldr r0, _080128F8 @ =gBattleCommunication - ldrb r1, [r2] - adds r1, r0 - movs r3, 0 - movs r0, 0x5 - strb r0, [r1] - ldr r1, _080128FC @ =gSharedMem - ldrb r0, [r2] - ldr r4, _08012900 @ =0x00016060 - adds r0, r4 - adds r0, r1 - strb r3, [r0] - ldrb r0, [r2] - ldr r2, _08012904 @ =0x00016094 - adds r0, r2 - adds r0, r1 - strb r3, [r0] - b _08012F90 - .align 2, 0 -_080128EC: .4byte gUnknown_02024C1C -_080128F0: .4byte gActiveBank -_080128F4: .4byte BattleScript_PrintFullBox -_080128F8: .4byte gBattleCommunication -_080128FC: .4byte gSharedMem -_08012900: .4byte 0x00016060 -_08012904: .4byte 0x00016094 -_08012908: - ldr r4, _08012924 @ =gActiveBank - ldrb r0, [r4] - lsls r1, r0, 1 - adds r1, r0 - ldr r0, _08012928 @ =gSharedMem + 0x1606C - adds r1, r0 - movs r0, 0 - bl EmitOpenBag - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _08012968 - .align 2, 0 -_08012924: .4byte gActiveBank -_08012928: .4byte gSharedMem + 0x1606C -_0801292C: - ldr r4, _08012964 @ =gBattleCommunication - mov r3, r8 - ldrb r1, [r3] - adds r1, r4 - movs r5, 0 - movs r0, 0x6 - strb r0, [r1] - ldrb r0, [r3] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - strb r5, [r0] - movs r0, 0 - bl Emitcmd50 - mov r4, r8 - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _08012F90 - .align 2, 0 -_08012964: .4byte gBattleCommunication -_08012968: - ldr r0, _08012994 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0xA - ands r0, r1 - cmp r0, 0x8 - bne _080129A8 - ldr r0, _08012998 @ =gBattleBufferB - ldr r4, _0801299C @ =gActiveBank - ldrb r1, [r4] - lsls r1, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bne _080129A8 - ldr r0, _080129A0 @ =BattleScript_PrintCantRunFromTrainer - bl b_call_bc_move_exec - ldr r1, _080129A4 @ =gBattleCommunication - ldrb r0, [r4] - adds r0, r1 - b _08012BFE - .align 2, 0 -_08012994: .4byte gBattleTypeFlags -_08012998: .4byte gBattleBufferB -_0801299C: .4byte gActiveBank -_080129A0: .4byte BattleScript_PrintCantRunFromTrainer -_080129A4: .4byte gBattleCommunication -_080129A8: - bl CanRunFromBattle - lsls r0, 24 - cmp r0, 0 - beq _08012A14 - ldr r0, _080129F4 @ =gBattleBufferB - ldr r3, _080129F8 @ =gActiveBank - ldrb r2, [r3] - lsls r1, r2, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bne _08012A14 - ldr r1, _080129FC @ =gUnknown_02024C1C - lsls r0, r2, 2 - adds r0, r1 - ldr r1, _08012A00 @ =BattleScript_PrintCantEscapeFromBattle -_080129CC: - str r1, [r0] - ldr r0, _08012A04 @ =gBattleCommunication - ldrb r1, [r3] - adds r1, r0 - movs r2, 0 - movs r0, 0x5 - strb r0, [r1] - ldr r1, _08012A08 @ =gSharedMem - ldrb r0, [r3] - ldr r4, _08012A0C @ =0x00016060 - adds r0, r4 - adds r0, r1 - strb r2, [r0] - ldrb r0, [r3] - ldr r3, _08012A10 @ =0x00016094 - adds r0, r3 - adds r0, r1 - strb r2, [r0] - b _08012F90 - .align 2, 0 -_080129F4: .4byte gBattleBufferB -_080129F8: .4byte gActiveBank -_080129FC: .4byte gUnknown_02024C1C -_08012A00: .4byte BattleScript_PrintCantEscapeFromBattle -_08012A04: .4byte gBattleCommunication -_08012A08: .4byte gSharedMem -_08012A0C: .4byte 0x00016060 -_08012A10: .4byte 0x00016094 -_08012A14: - ldr r2, _08012A20 @ =gBattleCommunication - ldr r0, _08012A24 @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012A20: .4byte gBattleCommunication -_08012A24: .4byte gActiveBank -_08012A28: - ldr r4, _08012A6C @ =gBattleExecBuffer - ldr r1, _08012A70 @ =gBitTable - ldr r3, _08012A74 @ =gActiveBank - ldrb r5, [r3] - lsls r0, r5, 2 - adds r0, r1 - ldr r2, [r0] - lsls r0, r2, 4 - movs r1, 0xF0 - lsls r1, 24 - orrs r0, r1 - orrs r0, r2 - lsls r1, r2, 8 - orrs r0, r1 - lsls r2, 12 - orrs r0, r2 - ldr r1, [r4] - ands r1, r0 - mov r8, r3 - cmp r1, 0 - beq _08012A54 - b _08012F66 -_08012A54: - ldr r1, _08012A78 @ =gActionForBanks - adds r0, r5, r1 - ldrb r0, [r0] - adds r3, r1, 0 - cmp r0, 0x9 - bls _08012A62 - b _08012F66 -_08012A62: - lsls r0, 2 - ldr r1, _08012A7C @ =_08012A80 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08012A6C: .4byte gBattleExecBuffer -_08012A70: .4byte gBitTable -_08012A74: .4byte gActiveBank -_08012A78: .4byte gActionForBanks -_08012A7C: .4byte _08012A80 - .align 2, 0 -_08012A80: - .4byte _08012AA8 - .4byte _08012BB0 - .4byte _08012BE8 - .4byte _08012CE0 - .4byte _08012D04 - .4byte _08012D18 - .4byte _08012D2C - .4byte _08012D5C - .4byte _08012D70 - .4byte _08012D94 -_08012AA8: - ldr r0, _08012AC8 @ =gBattleBufferB - mov r1, r8 - ldrb r4, [r1] - lsls r1, r4, 9 - adds r2, r0, 0x1 - adds r1, r2 - ldrb r1, [r1] - adds r6, r0, 0 - cmp r1, 0x9 - bgt _08012ACC - cmp r1, 0x3 - blt _08012ACC - adds r0, r4, r3 - strb r1, [r0] - b _08012F90 - .align 2, 0 -_08012AC8: .4byte gBattleBufferB -_08012ACC: - adds r3, r6, 0 - mov r5, r8 - ldrb r4, [r5] - lsls r1, r4, 9 - adds r7, r3, 0x2 - adds r0, r1, r7 - ldrb r2, [r0] - adds r3, 0x3 - mov r9, r3 - add r1, r9 - ldrb r0, [r1] - lsls r0, 8 - orrs r2, r0 - ldr r0, _08012AF4 @ =0x0000ffff - cmp r2, r0 - bne _08012AFC - ldr r0, _08012AF8 @ =gBattleCommunication - adds r0, r4, r0 - b _08012BFE - .align 2, 0 -_08012AF4: .4byte 0x0000ffff -_08012AF8: .4byte gBattleCommunication -_08012AFC: - bl sub_8015894 - lsls r0, 24 - cmp r0, 0 - beq _08012B48 - ldr r0, _08012B38 @ =gBattleCommunication - ldrb r1, [r5] - adds r1, r0 - movs r2, 0 - movs r0, 0x5 - strb r0, [r1] - ldr r3, _08012B3C @ =gSharedMem - ldrb r0, [r5] - ldr r4, _08012B40 @ =0x00016060 - adds r0, r4 - adds r0, r3 - strb r2, [r0] - ldrb r0, [r5] - lsls r0, 9 - adds r1, r6, 0x1 - adds r0, r1 - strb r2, [r0] - ldrb r0, [r5] - ldr r1, _08012B44 @ =0x00016094 - adds r0, r1 - adds r0, r3 - movs r1, 0x1 - strb r1, [r0] - b _08012F90 - .align 2, 0 -_08012B38: .4byte gBattleCommunication -_08012B3C: .4byte gSharedMem -_08012B40: .4byte 0x00016060 -_08012B44: .4byte 0x00016094 -_08012B48: - ldr r6, _08012B98 @ =gSharedMem - mov r2, r8 - ldrb r0, [r2] - ldr r2, _08012B9C @ =0x0001608c - adds r1, r0, r2 - adds r1, r6 - lsls r0, 9 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, _08012BA0 @ =gChosenMovesByBanks - mov r4, r8 - ldrb r3, [r4] - lsls r5, r3, 1 - adds r5, r0 - ldr r4, _08012BA4 @ =gBattleMons - adds r2, r3, r2 - adds r2, r6 - ldrb r0, [r2] - lsls r0, 1 - movs r1, 0x58 - muls r1, r3 - adds r0, r1 - adds r4, 0xC - adds r0, r4 - ldrh r0, [r0] - strh r0, [r5] - mov r1, r8 - ldrb r0, [r1] - ldr r2, _08012BA8 @ =0x00016010 - adds r1, r0, r2 - adds r1, r6 - lsls r0, 9 - add r0, r9 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, _08012BAC @ =gBattleCommunication - mov r3, r8 - ldrb r1, [r3] - b _08012E3C - .align 2, 0 -_08012B98: .4byte gSharedMem -_08012B9C: .4byte 0x0001608c -_08012BA0: .4byte gChosenMovesByBanks -_08012BA4: .4byte gBattleMons -_08012BA8: .4byte 0x00016010 -_08012BAC: .4byte gBattleCommunication -_08012BB0: - ldr r2, _08012BD8 @ =gBattleBufferB - ldr r5, _08012BDC @ =gActiveBank - ldrb r4, [r5] - lsls r1, r4, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r3, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - cmp r3, 0 - bne _08012BCE - b _08012F60 -_08012BCE: - ldr r0, _08012BE0 @ =gLastUsedItem - strh r3, [r0] - ldr r0, _08012BE4 @ =gBattleCommunication - ldrb r1, [r5] - b _08012E3C - .align 2, 0 -_08012BD8: .4byte gBattleBufferB -_08012BDC: .4byte gActiveBank -_08012BE0: .4byte gLastUsedItem -_08012BE4: .4byte gBattleCommunication -_08012BE8: - ldr r4, _08012C04 @ =gBattleBufferB - ldr r7, _08012C08 @ =gActiveBank - ldrb r2, [r7] - lsls r0, r2, 9 - adds r1, r4, 0x1 - adds r0, r1 - ldrb r1, [r0] - cmp r1, 0x6 - bne _08012C10 - ldr r0, _08012C0C @ =gBattleCommunication - adds r0, r2, r0 -_08012BFE: - movs r1, 0 - strb r1, [r0] - b _08012F66 - .align 2, 0 -_08012C04: .4byte gBattleBufferB -_08012C08: .4byte gActiveBank -_08012C0C: .4byte gBattleCommunication -_08012C10: - ldr r0, _08012CC4 @ =gSharedMem - mov r12, r0 - ldr r3, _08012CC8 @ =0x00016068 - adds r0, r2, r3 - add r0, r12 - strb r1, [r0] - ldr r0, _08012CCC @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08012CBE - ldrb r0, [r7] - lsls r1, r0, 1 - adds r1, r0 - ldr r5, _08012CD0 @ =0x0001606c - adds r1, r5 - add r1, r12 - ldrb r2, [r1] - movs r0, 0xF - ands r0, r2 - strb r0, [r1] - ldrb r0, [r7] - lsls r2, r0, 1 - adds r2, r0 - adds r2, r5 - add r2, r12 - lsls r0, 9 - adds r6, r4, 0x2 - adds r0, r6 - ldrb r1, [r0] - movs r3, 0xF0 - adds r0, r3, 0 - ands r0, r1 - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r7] - lsls r1, r0, 1 - adds r1, r0 - ldr r2, _08012CD4 @ =0x0001606d - adds r1, r2 - add r1, r12 - lsls r0, 9 - adds r4, 0x3 - mov r8, r4 - add r0, r8 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r7] - movs r4, 0x2 - eors r0, r4 - lsls r1, r0, 1 - adds r1, r0 - adds r1, r5 - add r1, r12 - ldrb r2, [r1] - adds r0, r3, 0 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r7] - eors r0, r4 - lsls r1, r0, 1 - adds r1, r0 - adds r1, r5 - add r1, r12 - ldrb r0, [r7] - lsls r0, 9 - adds r0, r6 - ldrb r0, [r0] - ands r3, r0 - lsrs r3, 4 - ldrb r0, [r1] - orrs r3, r0 - strb r3, [r1] - ldrb r0, [r7] - eors r4, r0 - lsls r1, r4, 1 - adds r1, r4 - ldr r3, _08012CD8 @ =0x0001606e - adds r1, r3 - add r1, r12 - ldrb r0, [r7] - lsls r0, 9 - add r0, r8 - ldrb r0, [r0] - strb r0, [r1] -_08012CBE: - ldr r0, _08012CDC @ =gBattleCommunication - ldrb r1, [r7] - b _08012E3C - .align 2, 0 -_08012CC4: .4byte gSharedMem -_08012CC8: .4byte 0x00016068 -_08012CCC: .4byte gBattleTypeFlags -_08012CD0: .4byte 0x0001606c -_08012CD4: .4byte 0x0001606d -_08012CD8: .4byte 0x0001606e -_08012CDC: .4byte gBattleCommunication -_08012CE0: - ldr r2, _08012CF8 @ =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - str r0, [r2] - ldr r2, _08012CFC @ =gBattleCommunication - ldr r0, _08012D00 @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012CF8: .4byte gHitMarker -_08012CFC: .4byte gBattleCommunication -_08012D00: .4byte gActiveBank -_08012D04: - ldr r2, _08012D10 @ =gBattleCommunication - ldr r0, _08012D14 @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012D10: .4byte gBattleCommunication -_08012D14: .4byte gActiveBank -_08012D18: - ldr r2, _08012D24 @ =gBattleCommunication - ldr r0, _08012D28 @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012D24: .4byte gBattleCommunication -_08012D28: .4byte gActiveBank -_08012D2C: - ldr r2, _08012D50 @ =gBattleBufferB - ldr r0, _08012D54 @ =gActiveBank - ldrb r4, [r0] - lsls r1, r4, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r3, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - cmp r3, 0 - bne _08012D4A - b _08012F60 -_08012D4A: - ldr r1, _08012D58 @ =gBattleCommunication - adds r1, r4, r1 - b _08012E3E - .align 2, 0 -_08012D50: .4byte gBattleBufferB -_08012D54: .4byte gActiveBank -_08012D58: .4byte gBattleCommunication -_08012D5C: - ldr r2, _08012D68 @ =gBattleCommunication - ldr r0, _08012D6C @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012D68: .4byte gBattleCommunication -_08012D6C: .4byte gActiveBank -_08012D70: - ldr r2, _08012D88 @ =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - str r0, [r2] - ldr r2, _08012D8C @ =gBattleCommunication - ldr r0, _08012D90 @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012D88: .4byte gHitMarker -_08012D8C: .4byte gBattleCommunication -_08012D90: .4byte gActiveBank -_08012D94: - ldr r2, _08012DA0 @ =gBattleCommunication - ldr r0, _08012DA4 @ =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _08012E3E - .align 2, 0 -_08012DA0: .4byte gBattleCommunication -_08012DA4: .4byte gActiveBank -_08012DA8: - ldr r3, _08012E10 @ =gBattleExecBuffer - ldr r4, _08012E14 @ =gBitTable - ldr r0, _08012E18 @ =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r4 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - beq _08012DD2 - b _08012F66 -_08012DD2: - ldr r0, _08012E1C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x41 - ands r0, r1 - cmp r0, 0x1 - bne _08012E06 - movs r1, 0x2 - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - bne _08012E06 - adds r0, r5, 0 - eors r0, r1 - bl GetBankByPlayerAI - ldr r1, _08012E20 @ =gSharedMem - ldr r2, _08012E24 @ =0x000160a6 - adds r1, r2 - ldrb r1, [r1] - lsls r0, 24 - lsrs r0, 22 - adds r0, r4 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08012E28 -_08012E06: - movs r0, 0 - movs r1, 0 - bl EmitLinkStandbyMsg - b _08012E30 - .align 2, 0 -_08012E10: .4byte gBattleExecBuffer -_08012E14: .4byte gBitTable -_08012E18: .4byte gActiveBank -_08012E1C: .4byte gBattleTypeFlags -_08012E20: .4byte gSharedMem -_08012E24: .4byte 0x000160a6 -_08012E28: - movs r0, 0 - movs r1, 0x1 - bl EmitLinkStandbyMsg -_08012E30: - ldr r4, _08012E48 @ =gActiveBank -_08012E32: - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, _08012E4C @ =gBattleCommunication - ldrb r1, [r4] -_08012E3C: - adds r1, r0 -_08012E3E: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _08012F66 - .align 2, 0 -_08012E48: .4byte gActiveBank -_08012E4C: .4byte gBattleCommunication -_08012E50: - ldr r3, _08012E84 @ =gBattleExecBuffer - ldr r1, _08012E88 @ =gBitTable - ldr r0, _08012E8C @ =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - bne _08012F66 - ldr r1, _08012E90 @ =gBattleCommunication - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] - b _08012F66 - .align 2, 0 -_08012E84: .4byte gBattleExecBuffer -_08012E88: .4byte gBitTable -_08012E8C: .4byte gActiveBank -_08012E90: .4byte gBattleCommunication -_08012E94: - ldr r2, _08012EB8 @ =gSharedMem - ldr r5, _08012EBC @ =gActiveBank - ldrb r1, [r5] - ldr r3, _08012EC0 @ =0x00016060 - adds r0, r1, r3 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08012ECC - ldr r0, _08012EC4 @ =gBattleCommunication - adds r0, r1, r0 - ldr r4, _08012EC8 @ =0x00016094 - adds r1, r4 - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - b _08012F66 - .align 2, 0 -_08012EB8: .4byte gSharedMem -_08012EBC: .4byte gActiveBank -_08012EC0: .4byte 0x00016060 -_08012EC4: .4byte gBattleCommunication -_08012EC8: .4byte 0x00016094 -_08012ECC: - ldr r0, _08012F20 @ =gBankAttacker - strb r1, [r0] - ldr r7, _08012F24 @ =gBattlescriptCurrInstr - ldr r6, _08012F28 @ =gUnknown_02024C1C - ldrb r0, [r5] - lsls r0, 2 - adds r0, r6 - ldr r4, [r0] - str r4, [r7] - ldr r3, _08012F2C @ =gBattleExecBuffer - ldr r1, _08012F30 @ =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - bne _08012F12 - ldr r0, _08012F34 @ =gBattleScriptingCommandsTable - ldrb r1, [r4] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - bl _call_via_r0 -_08012F12: - ldrb r0, [r5] - lsls r0, 2 - adds r0, r6 - ldr r1, [r7] - str r1, [r0] - b _08012F66 - .align 2, 0 -_08012F20: .4byte gBankAttacker -_08012F24: .4byte gBattlescriptCurrInstr -_08012F28: .4byte gUnknown_02024C1C -_08012F2C: .4byte gBattleExecBuffer -_08012F30: .4byte gBitTable -_08012F34: .4byte gBattleScriptingCommandsTable -_08012F38: - ldr r3, _08012FA0 @ =gBattleExecBuffer - ldr r1, _08012FA4 @ =gBitTable - ldr r0, _08012FA8 @ =gActiveBank - ldrb r4, [r0] - lsls r0, r4, 2 - adds r0, r1 - ldr r2, [r0] - lsls r0, r2, 4 - movs r1, 0xF0 - lsls r1, 24 - orrs r0, r1 - orrs r0, r2 - lsls r1, r2, 8 - orrs r0, r1 - lsls r2, 12 - orrs r0, r2 - ldr r3, [r3] - ands r3, r0 - cmp r3, 0 - bne _08012F66 -_08012F60: - ldr r0, _08012FAC @ =gBattleCommunication - adds r0, r4, r0 - strb r3, [r0] -_08012F66: - ldr r0, _08012FA8 @ =gActiveBank - ldrb r1, [r0] - adds r1, 0x1 - strb r1, [r0] - ldr r0, _08012FB0 @ =gNoOfAllBanks - lsls r1, 24 - lsrs r1, 24 -_08012F74: - adds r2, r0, 0 - ldrb r0, [r2] - cmp r1, r0 - bcs _08012F80 - bl _0801234C -_08012F80: - ldr r0, _08012FAC @ =gBattleCommunication - ldrb r0, [r0, 0x4] - ldrb r2, [r2] - cmp r0, r2 - bne _08012F90 - ldr r1, _08012FB4 @ =gBattleMainFunc - ldr r0, _08012FB8 @ =sub_80133C8 - str r0, [r1] -_08012F90: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08012FA0: .4byte gBattleExecBuffer -_08012FA4: .4byte gBitTable -_08012FA8: .4byte gActiveBank -_08012FAC: .4byte gBattleCommunication -_08012FB0: .4byte gNoOfAllBanks -_08012FB4: .4byte gBattleMainFunc -_08012FB8: .4byte sub_80133C8 - thumb_func_end sub_8012324 - - thumb_func_start sub_8012FBC -sub_8012FBC: @ 8012FBC - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r2, _08012FE8 @ =gUnknown_02024A76 - adds r4, r0, r2 - ldrb r5, [r4] - adds r2, r1, r2 - ldrb r3, [r2] - strb r3, [r4] - strb r5, [r2] - ldr r2, _08012FEC @ =gTurnOrder - adds r0, r2 - ldrb r5, [r0] - adds r1, r2 - ldrb r2, [r1] - strb r2, [r0] - strb r5, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08012FE8: .4byte gUnknown_02024A76 -_08012FEC: .4byte gTurnOrder - thumb_func_end sub_8012FBC - - thumb_func_start GetWhoStrikesFirst -GetWhoStrikesFirst: @ 8012FF0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _080130B8 - ldr r1, [sp, 0x8] - str r1, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _080130B8 - ldr r1, _08013070 @ =gBattleMons - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r0, r1 - adds r0, 0x20 - ldrb r3, [r0] - cmp r3, 0x21 - bne _0801305C - ldr r0, _08013074 @ =gBattleWeather - ldrh r1, [r0] - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0801306C -_0801305C: - cmp r3, 0x22 - bne _08013078 - ldr r0, _08013074 @ =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _08013078 -_0801306C: - movs r3, 0x2 - b _0801307A - .align 2, 0 -_08013070: .4byte gBattleMons -_08013074: .4byte gBattleWeather -_08013078: - movs r3, 0x1 -_0801307A: - movs r0, 0x58 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - ldr r2, _080130B0 @ =gBattleMons - adds r0, r2 - adds r0, 0x20 - ldrb r2, [r0] - cmp r2, 0x21 - bne _0801309A - ldr r0, _080130B4 @ =gBattleWeather - ldrh r1, [r0] - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - bne _080130AA -_0801309A: - cmp r2, 0x22 - bne _080130BA - ldr r0, _080130B4 @ =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _080130BA -_080130AA: - movs r7, 0x2 - b _080130BC - .align 2, 0 -_080130B0: .4byte gBattleMons -_080130B4: .4byte gBattleWeather -_080130B8: - movs r3, 0x1 -_080130BA: - movs r7, 0x1 -_080130BC: - ldr r1, _08013100 @ =gBattleMons - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r4, r0, r1 - ldrh r0, [r4, 0x6] - muls r3, r0 - ldr r2, _08013104 @ =gStatStageRatios - movs r1, 0x1B - ldrsb r1, [r4, r1] - lsls r1, 1 - adds r0, r1, r2 - ldrb r0, [r0] - muls r0, r3 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - bl __divsi3 - mov r8, r0 - ldrh r0, [r4, 0x2E] - cmp r0, 0xAF - bne _0801310C - ldr r1, _08013108 @ =gEnigmaBerries - mov r3, r9 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r6, [r0, 0x7] - ldrb r5, [r0, 0x1A] - b _08013120 - .align 2, 0 -_08013100: .4byte gBattleMons -_08013104: .4byte gStatStageRatios -_08013108: .4byte gEnigmaBerries -_0801310C: - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r6, r0, 24 - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r5, r0, 24 -_08013120: - ldr r0, _080131DC @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08013154 - ldr r0, _080131E0 @ =0x00000809 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08013154 - mov r0, r9 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08013154 - movs r0, 0x6E - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - movs r1, 0x64 - bl __udivsi3 - mov r8, r0 -_08013154: - cmp r6, 0x18 - bne _0801315E - mov r2, r8 - lsrs r2, 1 - mov r8, r2 -_0801315E: - ldr r1, _080131E4 @ =gBattleMons - movs r0, 0x58 - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0801317C - mov r0, r8 - lsrs r0, 2 - mov r8, r0 -_0801317C: - cmp r6, 0x1A - bne _08013198 - ldr r0, _080131E8 @ =gRandomTurnNumber - ldrh r4, [r0] - lsls r0, r5, 16 - subs r0, r5 - movs r1, 0x64 - bl __divsi3 - cmp r4, r0 - bge _08013198 - movs r1, 0x1 - negs r1, r1 - mov r8, r1 -_08013198: - ldr r1, _080131E4 @ =gBattleMons - movs r0, 0x58 - mov r2, r10 - muls r2, r0 - adds r0, r2, 0 - adds r4, r0, r1 - ldrh r0, [r4, 0x6] - adds r3, r0, 0 - muls r3, r7 - ldr r2, _080131EC @ =gStatStageRatios - movs r1, 0x1B - ldrsb r1, [r4, r1] - lsls r1, 1 - adds r0, r1, r2 - ldrb r0, [r0] - muls r0, r3 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - bl __divsi3 - adds r7, r0, 0 - ldrh r0, [r4, 0x2E] - cmp r0, 0xAF - bne _080131F4 - ldr r1, _080131F0 @ =gEnigmaBerries - mov r3, r10 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r6, [r0, 0x7] - ldrb r5, [r0, 0x1A] - b _08013208 - .align 2, 0 -_080131DC: .4byte gBattleTypeFlags -_080131E0: .4byte 0x00000809 -_080131E4: .4byte gBattleMons -_080131E8: .4byte gRandomTurnNumber -_080131EC: .4byte gStatStageRatios -_080131F0: .4byte gEnigmaBerries -_080131F4: - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r6, r0, 24 - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r5, r0, 24 -_08013208: - ldr r0, _08013280 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08013238 - ldr r0, _08013284 @ =0x00000809 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08013238 - mov r0, r10 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08013238 - movs r0, 0x6E - muls r0, r7 - movs r1, 0x64 - bl __udivsi3 - adds r7, r0, 0 -_08013238: - cmp r6, 0x18 - bne _0801323E - lsrs r7, 1 -_0801323E: - ldr r2, _08013288 @ =gBattleMons - movs r0, 0x58 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - adds r1, r2, 0 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0801325A - lsrs r7, 2 -_0801325A: - cmp r6, 0x1A - bne _08013274 - ldr r0, _0801328C @ =gRandomTurnNumber - ldrh r4, [r0] - lsls r0, r5, 16 - subs r0, r5 - movs r1, 0x64 - bl __divsi3 - cmp r4, r0 - bge _08013274 - movs r7, 0x1 - negs r7, r7 -_08013274: - ldr r2, [sp, 0x4] - cmp r2, 0 - beq _08013290 - movs r3, 0 - b _08013334 - .align 2, 0 -_08013280: .4byte gBattleTypeFlags -_08013284: .4byte 0x00000809 -_08013288: .4byte gBattleMons -_0801328C: .4byte gRandomTurnNumber -_08013290: - ldr r0, _080132B0 @ =gActionForBanks - mov r3, r9 - adds r1, r3, r0 - ldrb r1, [r1] - adds r2, r0, 0 - cmp r1, 0 - bne _080132E4 - ldr r0, _080132B4 @ =gProtectStructs - lsls r1, r3, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - bge _080132B8 - movs r3, 0xA5 - b _080132E6 - .align 2, 0 -_080132B0: .4byte gActionForBanks -_080132B4: .4byte gProtectStructs -_080132B8: - ldr r1, _080132D8 @ =gSharedMem - ldr r0, _080132DC @ =0x0001608c - add r0, r9 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 1 - movs r1, 0x58 - mov r3, r9 - muls r3, r1 - adds r1, r3, 0 - adds r0, r1 - ldr r1, _080132E0 @ =gBattleMons - adds r1, 0xC - adds r0, r1 - ldrh r3, [r0] - b _080132E6 - .align 2, 0 -_080132D8: .4byte gSharedMem -_080132DC: .4byte 0x0001608c -_080132E0: .4byte gBattleMons -_080132E4: - movs r3, 0 -_080132E6: - mov r1, r10 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08013334 - ldr r0, _08013304 @ =gProtectStructs - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - bge _08013308 - movs r2, 0xA5 - b _08013336 - .align 2, 0 -_08013304: .4byte gProtectStructs -_08013308: - ldr r1, _08013328 @ =gSharedMem - ldr r0, _0801332C @ =0x0001608c - add r0, r10 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 1 - movs r1, 0x58 - mov r2, r10 - muls r2, r1 - adds r1, r2, 0 - adds r0, r1 - ldr r1, _08013330 @ =gBattleMons - adds r1, 0xC - adds r0, r1 - ldrh r2, [r0] - b _08013336 - .align 2, 0 -_08013328: .4byte gSharedMem -_0801332C: .4byte 0x0001608c -_08013330: .4byte gBattleMons -_08013334: - movs r2, 0 -_08013336: - ldr r4, _08013380 @ =gBattleMoves - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r0, r4 - movs r1, 0x7 - ldrsb r1, [r0, r1] - lsls r3, r2, 1 - cmp r1, 0 - bne _0801335A - adds r0, r3, r2 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x7] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _08013398 -_0801335A: - adds r0, r3, r2 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x7] - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - bne _0801338E - cmp r8, r7 - bne _08013384 - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08013384 - movs r3, 0x2 - b _080133B4 - .align 2, 0 -_08013380: .4byte gBattleMoves -_08013384: - cmp r8, r7 - bcs _080133B6 - movs r0, 0x1 - str r0, [sp, 0x8] - b _080133B6 -_0801338E: - cmp r1, r0 - bge _080133B6 - movs r1, 0x1 - str r1, [sp, 0x8] - b _080133B6 -_08013398: - cmp r8, r7 - bne _080133AE - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _080133AE - movs r2, 0x2 - str r2, [sp, 0x8] - b _080133B6 -_080133AE: - cmp r8, r7 - bcs _080133B6 - movs r3, 0x1 -_080133B4: - str r3, [sp, 0x8] -_080133B6: - ldr r0, [sp, 0x8] - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end GetWhoStrikesFirst - - thumb_func_start sub_80133C8 -sub_80133C8: @ 80133C8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r3, 0 - ldr r0, _0801341C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08013434 - ldr r0, _08013420 @ =gActiveBank - strb r3, [r0] - ldr r4, _08013424 @ =gNoOfAllBanks - mov r8, r0 - ldrb r0, [r4] - cmp r3, r0 - bcc _080133F0 - b _08013622 -_080133F0: - ldr r7, _08013428 @ =gUnknown_02024A76 - ldr r6, _0801342C @ =gActionForBanks - mov r2, r8 - ldr r5, _08013430 @ =gTurnOrder -_080133F8: - adds r1, r3, r7 - ldrb r0, [r2] - adds r0, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r3, r5 - ldrb r0, [r2] - strb r0, [r1] - adds r3, 0x1 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r4] - cmp r0, r1 - bcc _080133F8 - b _08013622 - .align 2, 0 -_0801341C: .4byte gBattleTypeFlags -_08013420: .4byte gActiveBank -_08013424: .4byte gNoOfAllBanks -_08013428: .4byte gUnknown_02024A76 -_0801342C: .4byte gActionForBanks -_08013430: .4byte gTurnOrder -_08013434: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08013484 - ldr r0, _08013478 @ =gActiveBank - strb r3, [r0] - ldr r1, _0801347C @ =gNoOfAllBanks - mov r8, r0 - adds r2, r1, 0 - ldrb r2, [r2] - cmp r3, r2 - bcs _08013494 - ldr r0, _08013480 @ =gActionForBanks - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0x3 - beq _08013492 -_08013456: - mov r7, r8 - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0801347C @ =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcs _08013494 - ldrb r0, [r7] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x3 - bne _08013456 - b _08013492 - .align 2, 0 -_08013478: .4byte gActiveBank -_0801347C: .4byte gNoOfAllBanks -_08013480: .4byte gActionForBanks -_08013484: - ldr r0, _080134FC @ =gActionForBanks - ldrb r0, [r0] - ldr r2, _08013500 @ =gActiveBank - mov r8, r2 - cmp r0, 0x3 - bne _08013494 - strb r3, [r2] -_08013492: - movs r3, 0x5 -_08013494: - cmp r3, 0x5 - bne _08013520 - ldr r6, _08013504 @ =gUnknown_02024A76 - ldr r1, _080134FC @ =gActionForBanks - mov r3, r8 - ldrb r0, [r3] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r6] - ldr r2, _08013508 @ =gTurnOrder - ldrb r0, [r3] - strb r0, [r2] - movs r3, 0x1 - movs r5, 0 - adds r4, r1, 0 - ldr r7, _0801350C @ =gBattleMainFunc - mov r9, r7 - ldr r0, _08013510 @ =bc_80154A0 - mov r12, r0 - ldr r1, _08013514 @ =gSharedMem - mov r10, r1 - ldr r7, _08013518 @ =gNoOfAllBanks - ldrb r7, [r7] - cmp r5, r7 - bge _080134EC - adds r7, r6, 0 - adds r6, r4, 0 - adds r4, r2, 0 - ldr r2, _08013518 @ =gNoOfAllBanks -_080134CE: - mov r0, r8 - ldrb r0, [r0] - cmp r5, r0 - beq _080134E4 - adds r1, r3, r7 - adds r0, r5, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, r4 - strb r5, [r0] - adds r3, 0x1 -_080134E4: - adds r5, 0x1 - ldrb r1, [r2] - cmp r5, r1 - blt _080134CE -_080134EC: - mov r2, r12 - mov r3, r9 - str r2, [r3] - ldr r1, _0801351C @ =0x0001601d - add r1, r10 - movs r0, 0 - strb r0, [r1] - b _08013632 - .align 2, 0 -_080134FC: .4byte gActionForBanks -_08013500: .4byte gActiveBank -_08013504: .4byte gUnknown_02024A76 -_08013508: .4byte gTurnOrder -_0801350C: .4byte gBattleMainFunc -_08013510: .4byte bc_80154A0 -_08013514: .4byte gSharedMem -_08013518: .4byte gNoOfAllBanks -_0801351C: .4byte 0x0001601d -_08013520: - movs r0, 0 - mov r7, r8 - strb r0, [r7] - ldr r1, _080135B0 @ =gNoOfAllBanks - ldrb r0, [r1] - cmp r0, 0 - beq _08013566 - ldr r6, _080135B4 @ =gActionForBanks - mov r2, r8 - ldr r5, _080135B8 @ =gUnknown_02024A76 - ldr r4, _080135BC @ =gTurnOrder -_08013536: - ldrb r0, [r2] - adds r0, r6 - ldrb r1, [r0] - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08013554 - adds r0, r3, r5 - strb r1, [r0] - adds r1, r3, r4 - mov r7, r8 - ldrb r0, [r7] - strb r0, [r1] - adds r3, 0x1 -_08013554: - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080135B0 @ =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcc _08013536 -_08013566: - movs r0, 0 - mov r2, r8 - strb r0, [r2] - ldr r7, _080135B0 @ =gNoOfAllBanks - ldrb r0, [r7] - cmp r0, 0 - beq _080135AA - ldr r6, _080135B4 @ =gActionForBanks - ldr r5, _080135B8 @ =gUnknown_02024A76 - ldr r4, _080135BC @ =gTurnOrder -_0801357A: - ldrb r0, [r2] - adds r0, r6 - ldrb r1, [r0] - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08013598 - adds r0, r3, r5 - strb r1, [r0] - adds r1, r3, r4 - mov r7, r8 - ldrb r0, [r7] - strb r0, [r1] - adds r3, 0x1 -_08013598: - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080135B0 @ =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcc _0801357A -_080135AA: - movs r5, 0 - b _08013618 - .align 2, 0 -_080135B0: .4byte gNoOfAllBanks -_080135B4: .4byte gActionForBanks -_080135B8: .4byte gUnknown_02024A76 -_080135BC: .4byte gTurnOrder -_080135C0: - adds r4, r5, 0x1 - adds r7, r4, 0 - ldrb r1, [r1] - cmp r7, r1 - bge _08013616 - ldr r6, _08013640 @ =gUnknown_02024A76 - lsls r2, r5, 24 - mov r8, r2 -_080135D0: - ldr r0, _08013644 @ =gTurnOrder - adds r1, r5, r0 - ldrb r3, [r1] - adds r0, r4, r0 - ldrb r1, [r0] - adds r0, r5, r6 - ldrb r2, [r0] - cmp r2, 0x1 - beq _0801360C - adds r0, r4, r6 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0801360C - cmp r2, 0x2 - beq _0801360C - cmp r0, 0x2 - beq _0801360C - adds r0, r3, 0 - movs r2, 0 - bl GetWhoStrikesFirst - lsls r0, 24 - cmp r0, 0 - beq _0801360C - lsls r1, r4, 24 - lsrs r1, 24 - mov r3, r8 - lsrs r0, r3, 24 - bl sub_8012FBC -_0801360C: - adds r4, 0x1 - ldr r0, _08013648 @ =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _080135D0 -_08013616: - adds r5, r7, 0 -_08013618: - ldr r1, _08013648 @ =gNoOfAllBanks - ldrb r0, [r1] - subs r0, 0x1 - cmp r5, r0 - blt _080135C0 -_08013622: - ldr r1, _0801364C @ =gBattleMainFunc - ldr r0, _08013650 @ =bc_80154A0 - str r0, [r1] - ldr r0, _08013654 @ =gSharedMem - ldr r7, _08013658 @ =0x0001601d - adds r0, r7 - movs r1, 0 - strb r1, [r0] -_08013632: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08013640: .4byte gUnknown_02024A76 -_08013644: .4byte gTurnOrder -_08013648: .4byte gNoOfAllBanks -_0801364C: .4byte gBattleMainFunc -_08013650: .4byte bc_80154A0 -_08013654: .4byte gSharedMem -_08013658: .4byte 0x0001601d - thumb_func_end sub_80133C8 - - thumb_func_start TurnValuesCleanUp -TurnValuesCleanUp: @ 801365C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r1, _080136B4 @ =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r0, _080136B8 @ =gNoOfAllBanks - ldrb r2, [r0] - adds r5, r1, 0 - cmp r2, 0 - beq _08013754 - ldr r7, _080136BC @ =gProtectStructs - adds r6, r5, 0 - ldr r0, _080136C0 @ =gUnknown_02024AD0 - mov r12, r0 - ldr r1, _080136C4 @ =gDisableStructs - mov r8, r1 - mov r10, r8 -_0801368A: - mov r2, r9 - cmp r2, 0 - beq _080136C8 - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - b _08013724 - .align 2, 0 -_080136B4: .4byte gActiveBank -_080136B8: .4byte gNoOfAllBanks -_080136BC: .4byte gProtectStructs -_080136C0: .4byte gUnknown_02024AD0 -_080136C4: .4byte gDisableStructs -_080136C8: - ldrb r0, [r6] - lsls r0, 4 - adds r2, r0, r7 - movs r1, 0 - mov r4, r10 - movs r3, 0 -_080136D4: - adds r0, r2, r1 - strb r3, [r0] - adds r1, 0x1 - cmp r1, 0xF - bls _080136D4 - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r0, r4 - ldrb r0, [r1, 0x16] - cmp r0, 0 - beq _080136F2 - subs r0, 0x1 - strb r0, [r1, 0x16] -_080136F2: - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r0, r4 - ldrb r0, [r1, 0x19] - cmp r0, 0 - beq _08013724 - subs r0, 0x1 - strb r0, [r1, 0x19] - ldrb r2, [r5] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x19] - cmp r0, 0 - bne _08013724 - movs r0, 0x58 - muls r2, r0 - add r2, r12 - ldr r0, [r2] - ldr r1, _0801376C @ =0xffbfffff - ands r0, r1 - str r0, [r2] -_08013724: - ldrb r2, [r5] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - add r0, r8 - ldrb r0, [r0, 0xA] - cmp r0, 0 - bne _08013742 - movs r0, 0x58 - muls r2, r0 - add r2, r12 - ldr r0, [r2] - ldr r1, _08013770 @ =0xfeffffff - ands r0, r1 - str r0, [r2] -_08013742: - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08013774 @ =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcc _0801368A -_08013754: - movs r0, 0 - ldr r2, _08013778 @ =gSideTimer - strb r0, [r2, 0x8] - strb r0, [r2, 0x14] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801376C: .4byte 0xffbfffff -_08013770: .4byte 0xfeffffff -_08013774: .4byte gNoOfAllBanks -_08013778: .4byte gSideTimer - thumb_func_end TurnValuesCleanUp - - thumb_func_start SpecialStatusesClear -SpecialStatusesClear: @ 801377C - push {r4-r6,lr} - ldr r2, _080137C0 @ =gActiveBank - movs r0, 0 - strb r0, [r2] - ldr r0, _080137C4 @ =gNoOfAllBanks - ldrb r1, [r0] - adds r6, r0, 0 - cmp r1, 0 - beq _080137BA - adds r3, r2, 0 - movs r4, 0 - ldr r5, _080137C8 @ =gSpecialStatuses -_08013794: - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, r0, r5 - movs r1, 0 -_080137A0: - adds r0, r2, r1 - strb r4, [r0] - adds r1, 0x1 - cmp r1, 0x13 - bls _080137A0 - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r6] - cmp r0, r1 - bcc _08013794 -_080137BA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080137C0: .4byte gActiveBank -_080137C4: .4byte gNoOfAllBanks -_080137C8: .4byte gSpecialStatuses - thumb_func_end SpecialStatusesClear - - thumb_func_start bc_80154A0 -bc_80154A0: @ 80137CC - push {r4-r7,lr} - ldr r0, _08013850 @ =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - bne _08013884 - ldr r0, _08013854 @ =gSharedMem - ldr r1, _08013858 @ =0x0001601d - adds r2, r0, r1 - ldr r0, _0801385C @ =gNoOfAllBanks - ldrb r1, [r2] - adds r7, r0, 0 - ldrb r0, [r7] - cmp r1, r0 - bcs _08013884 - ldr r6, _08013860 @ =gActiveBank - ldr r5, _08013864 @ =gBankAttacker - adds r4, r2, 0 - movs r1, 0x84 - lsls r1, 1 - mov r12, r1 -_080137FA: - ldrb r0, [r4] - strb r0, [r5] - strb r0, [r6] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08013868 @ =gChosenMovesByBanks - ldrb r3, [r6] - lsls r0, r3, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r12 - bne _0801387C - ldr r1, _0801386C @ =gBattleMons - movs r0, 0x58 - muls r0, r3 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0801387C - ldr r2, _08013870 @ =gDisableStructs - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x18] - lsls r0, 31 - cmp r0, 0 - bne _0801387C - ldr r0, _08013874 @ =gProtectStructs - lsls r1, r3, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - blt _0801387C - ldr r0, _08013878 @ =BattleScript_FocusPunchSetUp - bl b_call_bc_move_exec - b _080138BE - .align 2, 0 -_08013850: .4byte gHitMarker -_08013854: .4byte gSharedMem -_08013858: .4byte 0x0001601d -_0801385C: .4byte gNoOfAllBanks -_08013860: .4byte gActiveBank -_08013864: .4byte gBankAttacker -_08013868: .4byte gChosenMovesByBanks -_0801386C: .4byte gBattleMons -_08013870: .4byte gDisableStructs -_08013874: .4byte gProtectStructs -_08013878: .4byte BattleScript_FocusPunchSetUp -_0801387C: - ldrb r0, [r4] - ldrb r2, [r7] - cmp r0, r2 - bcc _080137FA -_08013884: - bl b_clear_atk_up_if_hit_flag_unless_enraged - ldr r1, _080138C4 @ =gCurrentMoveTurn - movs r0, 0 - strb r0, [r1] - ldr r1, _080138C8 @ =gFightStateTracker - ldr r0, _080138CC @ =gUnknown_02024A76 - movs r2, 0 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, _080138D0 @ =gDynamicBasePower - movs r3, 0 - strh r2, [r0] - ldr r1, _080138D4 @ =gSharedMem - ldr r2, _080138D8 @ =0x0001601c - adds r0, r1, r2 - strb r3, [r0] - ldr r2, _080138DC @ =gBattleMainFunc - ldr r0, _080138E0 @ =sub_80138F0 - str r0, [r2] - ldr r0, _080138E4 @ =gBattleCommunication - strb r3, [r0, 0x3] - strb r3, [r0, 0x4] - ldr r2, _080138E8 @ =0x00016112 - adds r0, r1, r2 - strb r3, [r0] - ldr r0, _080138EC @ =0x00017130 - adds r1, r0 - strb r3, [r1] -_080138BE: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080138C4: .4byte gCurrentMoveTurn -_080138C8: .4byte gFightStateTracker -_080138CC: .4byte gUnknown_02024A76 -_080138D0: .4byte gDynamicBasePower -_080138D4: .4byte gSharedMem -_080138D8: .4byte 0x0001601c -_080138DC: .4byte gBattleMainFunc -_080138E0: .4byte sub_80138F0 -_080138E4: .4byte gBattleCommunication -_080138E8: .4byte 0x00016112 -_080138EC: .4byte 0x00017130 - thumb_func_end bc_80154A0 - - thumb_func_start sub_80138F0 -sub_80138F0: @ 80138F0 - push {r4-r6,lr} - ldr r6, _08013944 @ =gBattleOutcome - ldrb r0, [r6] - ldr r2, _08013948 @ =gFightStateTracker - cmp r0, 0 - beq _08013900 - movs r0, 0xC - strb r0, [r2] -_08013900: - ldr r1, _0801394C @ =gSharedMem - ldr r4, _08013950 @ =gCurrentMoveTurn - ldrb r0, [r4] - ldr r3, _08013954 @ =0x00016057 - adds r5, r1, r3 - strb r0, [r5] - ldr r1, _08013958 @ =gUnknown_081FA640 - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - ldr r0, _0801395C @ =gNoOfAllBanks - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - bcc _08013970 - ldr r2, _08013960 @ =gHitMarker - ldr r0, [r2] - ldr r1, _08013964 @ =0xffefffff - ands r0, r1 - str r0, [r2] - ldr r3, _08013968 @ =gBattleMainFunc - ldr r2, _0801396C @ =gUnknown_081FA678 - ldrb r1, [r6] - movs r0, 0x7F - ands r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [r3] - b _08013984 - .align 2, 0 -_08013944: .4byte gBattleOutcome -_08013948: .4byte gFightStateTracker -_0801394C: .4byte gSharedMem -_08013950: .4byte gCurrentMoveTurn -_08013954: .4byte 0x00016057 -_08013958: .4byte gUnknown_081FA640 -_0801395C: .4byte gNoOfAllBanks -_08013960: .4byte gHitMarker -_08013964: .4byte 0xffefffff -_08013968: .4byte gBattleMainFunc -_0801396C: .4byte gUnknown_081FA678 -_08013970: - ldrb r0, [r5] - cmp r0, r1 - beq _08013984 - ldr r2, _0801398C @ =gHitMarker - ldr r0, [r2] - ldr r1, _08013990 @ =0xfffffdff - ands r0, r1 - ldr r1, _08013994 @ =0xfff7ffff - ands r0, r1 - str r0, [r2] -_08013984: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801398C: .4byte gHitMarker -_08013990: .4byte 0xfffffdff -_08013994: .4byte 0xfff7ffff - thumb_func_end sub_80138F0 - - thumb_func_start sub_8013998 -sub_8013998: @ 8013998 - push {r4,lr} - ldr r1, _080139D0 @ =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r0, _080139D4 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080139EC - ldr r1, _080139D8 @ =gBattleTextBuff1 - ldr r4, _080139DC @ =gBattleOutcome - ldrb r0, [r4] - strb r0, [r1] - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, _080139E0 @ =gBankAttacker - strb r0, [r1] - ldr r1, _080139E4 @ =gBattlescriptCurrInstr - ldr r0, _080139E8 @ =gUnknown_081D8E02 - str r0, [r1] - ldrb r1, [r4] - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - b _08013B48 - .align 2, 0 -_080139D0: .4byte gFightStateTracker -_080139D4: .4byte gBattleTypeFlags -_080139D8: .4byte gBattleTextBuff1 -_080139DC: .4byte gBattleOutcome -_080139E0: .4byte gBankAttacker -_080139E4: .4byte gBattlescriptCurrInstr -_080139E8: .4byte gUnknown_081D8E02 -_080139EC: - movs r0, 0x90 - lsls r0, 4 - ands r0, r1 - cmp r0, 0 - beq _08013A04 - ldr r1, _080139FC @ =gBattlescriptCurrInstr - ldr r0, _08013A00 @ =gUnknown_081D8E0D - b _08013B46 - .align 2, 0 -_080139FC: .4byte gBattlescriptCurrInstr -_08013A00: .4byte gUnknown_081D8E0D -_08013A04: - movs r0, 0xA - ands r0, r1 - cmp r0, 0x8 - beq _08013A0E - b _08013B42 -_08013A0E: - bl BattleMusicStop - ldr r1, _08013A3C @ =gBattlescriptCurrInstr - ldr r0, _08013A40 @ =BattleScript_LocalTrainerBattleWon - str r0, [r1] - ldr r2, _08013A44 @ =gTrainers - ldr r0, _08013A48 @ =gTrainerBattleOpponent - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - subs r0, 0x2 - cmp r0, 0x31 - bls _08013A30 - b _08013B38 -_08013A30: - lsls r0, 2 - ldr r1, _08013A4C @ =_08013A50 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08013A3C: .4byte gBattlescriptCurrInstr -_08013A40: .4byte BattleScript_LocalTrainerBattleWon -_08013A44: .4byte gTrainers -_08013A48: .4byte gTrainerBattleOpponent -_08013A4C: .4byte _08013A50 - .align 2, 0 -_08013A50: - .4byte _08013B24 - .4byte _08013B24 - .4byte _08013B24 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B18 - .4byte _08013B2E - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B18 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B38 - .4byte _08013B24 - .4byte _08013B24 - .4byte _08013B24 -_08013B18: - ldr r0, _08013B20 @ =0x00000163 - bl PlayBGM - b _08013B48 - .align 2, 0 -_08013B20: .4byte 0x00000163 -_08013B24: - movs r0, 0xD4 - lsls r0, 1 - bl PlayBGM - b _08013B48 -_08013B2E: - movs r0, 0xB1 - lsls r0, 1 - bl PlayBGM - b _08013B48 -_08013B38: - movs r0, 0xCE - lsls r0, 1 - bl PlayBGM - b _08013B48 -_08013B42: - ldr r1, _08013B54 @ =gBattlescriptCurrInstr - ldr r0, _08013B58 @ =BattleScript_PayDayMoneyAndPickUpItems -_08013B46: - str r0, [r1] -_08013B48: - ldr r1, _08013B5C @ =gBattleMainFunc - ldr r0, _08013B60 @ =sub_8013C9C - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08013B54: .4byte gBattlescriptCurrInstr -_08013B58: .4byte BattleScript_PayDayMoneyAndPickUpItems -_08013B5C: .4byte gBattleMainFunc -_08013B60: .4byte sub_8013C9C - thumb_func_end sub_8013998 - - thumb_func_start sub_8013B64 -sub_8013B64: @ 8013B64 - push {r4,lr} - ldr r1, _08013B9C @ =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r0, _08013BA0 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08013BB8 - ldr r1, _08013BA4 @ =gBattleTextBuff1 - ldr r4, _08013BA8 @ =gBattleOutcome - ldrb r0, [r4] - strb r0, [r1] - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, _08013BAC @ =gBankAttacker - strb r0, [r1] - ldr r1, _08013BB0 @ =gBattlescriptCurrInstr - ldr r0, _08013BB4 @ =gUnknown_081D8E02 - str r0, [r1] - ldrb r1, [r4] - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - b _08013BBE - .align 2, 0 -_08013B9C: .4byte gFightStateTracker -_08013BA0: .4byte gBattleTypeFlags -_08013BA4: .4byte gBattleTextBuff1 -_08013BA8: .4byte gBattleOutcome -_08013BAC: .4byte gBankAttacker -_08013BB0: .4byte gBattlescriptCurrInstr -_08013BB4: .4byte gUnknown_081D8E02 -_08013BB8: - ldr r1, _08013BCC @ =gBattlescriptCurrInstr - ldr r0, _08013BD0 @ =BattleScript_LocalBattleLost - str r0, [r1] -_08013BBE: - ldr r1, _08013BD4 @ =gBattleMainFunc - ldr r0, _08013BD8 @ =sub_8013C9C - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08013BCC: .4byte gBattlescriptCurrInstr -_08013BD0: .4byte BattleScript_LocalBattleLost -_08013BD4: .4byte gBattleMainFunc -_08013BD8: .4byte sub_8013C9C - thumb_func_end sub_8013B64 - - thumb_func_start sub_8013BDC -sub_8013BDC: @ 8013BDC - push {lr} - ldr r1, _08013C04 @ =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r1, _08013C08 @ =gProtectStructs - ldr r0, _08013C0C @ =gBankAttacker - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x1] - lsls r0, 27 - lsrs r0, 30 - cmp r0, 0x1 - beq _08013C18 - cmp r0, 0x2 - beq _08013C28 - ldr r1, _08013C10 @ =gBattlescriptCurrInstr - ldr r0, _08013C14 @ =BattleScript_GotAwaySafely - b _08013C2C - .align 2, 0 -_08013C04: .4byte gFightStateTracker -_08013C08: .4byte gProtectStructs -_08013C0C: .4byte gBankAttacker -_08013C10: .4byte gBattlescriptCurrInstr -_08013C14: .4byte BattleScript_GotAwaySafely -_08013C18: - ldr r1, _08013C20 @ =gBattlescriptCurrInstr - ldr r0, _08013C24 @ =BattleScript_SmokeBallEscape - b _08013C2C - .align 2, 0 -_08013C20: .4byte gBattlescriptCurrInstr -_08013C24: .4byte BattleScript_SmokeBallEscape -_08013C28: - ldr r1, _08013C38 @ =gBattlescriptCurrInstr - ldr r0, _08013C3C @ =BattleScript_RanAwayUsingMonAbility -_08013C2C: - str r0, [r1] - ldr r1, _08013C40 @ =gBattleMainFunc - ldr r0, _08013C44 @ =sub_8013C9C - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08013C38: .4byte gBattlescriptCurrInstr -_08013C3C: .4byte BattleScript_RanAwayUsingMonAbility -_08013C40: .4byte gBattleMainFunc -_08013C44: .4byte sub_8013C9C - thumb_func_end sub_8013BDC - - thumb_func_start sub_8013C48 -sub_8013C48: @ 8013C48 - ldr r1, _08013C7C @ =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r1, _08013C80 @ =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x7 - strb r0, [r1, 0x1] - ldr r2, _08013C84 @ =gBankAttacker - ldrb r0, [r2] - strb r0, [r1, 0x2] - ldr r3, _08013C88 @ =gBattlePartyID - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, _08013C8C @ =gBattlescriptCurrInstr - ldr r0, _08013C90 @ =BattleScript_WildMonFled - str r0, [r1] - ldr r1, _08013C94 @ =gBattleMainFunc - ldr r0, _08013C98 @ =sub_8013C9C - str r0, [r1] - bx lr - .align 2, 0 -_08013C7C: .4byte gFightStateTracker -_08013C80: .4byte gBattleTextBuff1 -_08013C84: .4byte gBankAttacker -_08013C88: .4byte gBattlePartyID -_08013C8C: .4byte gBattlescriptCurrInstr -_08013C90: .4byte BattleScript_WildMonFled -_08013C94: .4byte gBattleMainFunc -_08013C98: .4byte sub_8013C9C - thumb_func_end sub_8013C48 - - thumb_func_start sub_8013C9C -sub_8013C9C: @ 8013C9C - push {r4-r7,lr} - ldr r0, _08013D00 @ =gFightStateTracker - ldrb r0, [r0] - subs r0, 0xB - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08013D7C - ldr r0, _08013D04 @ =gBattleTypeFlags - ldrh r0, [r0] - ldr r1, _08013D08 @ =0x00000b92 - ands r1, r0 - cmp r1, 0 - bne _08013D4C - ldr r2, _08013D0C @ =gActiveBank - strb r1, [r2] - ldr r0, _08013D10 @ =gNoOfAllBanks - ldrb r0, [r0] - cmp r1, r0 - bcs _08013D48 - adds r4, r2, 0 - ldr r6, _08013D14 @ =gBattleMons - movs r5, 0x58 - adds r7, r6, 0 - adds r7, 0x30 -_08013CCE: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08013D36 - ldr r2, _08013D18 @ =gBattleResults - ldrh r0, [r2, 0x6] - cmp r0, 0 - bne _08013D1C - ldrb r0, [r4] - muls r0, r5 - adds r0, r6 - ldrh r0, [r0] - strh r0, [r2, 0x6] - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r5 - adds r1, r7 - adds r0, r2, 0 - adds r0, 0x8 - bl StringCopy - b _08013D36 - .align 2, 0 -_08013D00: .4byte gFightStateTracker -_08013D04: .4byte gBattleTypeFlags -_08013D08: .4byte 0x00000b92 -_08013D0C: .4byte gActiveBank -_08013D10: .4byte gNoOfAllBanks -_08013D14: .4byte gBattleMons -_08013D18: .4byte gBattleResults -_08013D1C: - ldrb r0, [r4] - muls r0, r5 - adds r0, r6 - ldrh r0, [r0] - strh r0, [r2, 0x26] - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r5 - adds r1, r7 - adds r0, r2, 0 - adds r0, 0x14 - bl StringCopy -_08013D36: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08013D68 @ =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08013CCE -_08013D48: - bl sub_80BDEC8 -_08013D4C: - movs r0, 0x3 - bl BeginFastPaletteFade - movs r0, 0x5 - bl FadeOutMapMusic - ldr r1, _08013D6C @ =gBattleMainFunc - ldr r0, _08013D70 @ =sub_8013DA8 - str r0, [r1] - ldr r1, _08013D74 @ =gCB2_AfterEvolution - ldr r0, _08013D78 @ =sub_800F808 - str r0, [r1] - b _08013D96 - .align 2, 0 -_08013D68: .4byte gNoOfAllBanks -_08013D6C: .4byte gBattleMainFunc -_08013D70: .4byte sub_8013DA8 -_08013D74: .4byte gCB2_AfterEvolution -_08013D78: .4byte sub_800F808 -_08013D7C: - ldr r0, _08013D9C @ =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08013D96 - ldr r1, _08013DA0 @ =gBattleScriptingCommandsTable - ldr r0, _08013DA4 @ =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 -_08013D96: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08013D9C: .4byte gBattleExecBuffer -_08013DA0: .4byte gBattleScriptingCommandsTable -_08013DA4: .4byte gBattlescriptCurrInstr - thumb_func_end sub_8013C9C - - thumb_func_start sub_8013DA8 -sub_8013DA8: @ 8013DA8 - push {lr} - ldr r0, _08013DD0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08013DEA - bl ResetSpriteData - ldr r0, _08013DD4 @ =gLeveledUpInBattle - ldrb r0, [r0] - cmp r0, 0 - beq _08013DCA - ldr r0, _08013DD8 @ =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0x1 - beq _08013DE4 -_08013DCA: - ldr r1, _08013DDC @ =gBattleMainFunc - ldr r0, _08013DE0 @ =c4_overworld - b _08013DE8 - .align 2, 0 -_08013DD0: .4byte gPaletteFade -_08013DD4: .4byte gLeveledUpInBattle -_08013DD8: .4byte gBattleOutcome -_08013DDC: .4byte gBattleMainFunc -_08013DE0: .4byte c4_overworld -_08013DE4: - ldr r1, _08013DF0 @ =gBattleMainFunc - ldr r0, _08013DF4 @ =bc_evolution_cutscene -_08013DE8: - str r0, [r1] -_08013DEA: - pop {r0} - bx r0 - .align 2, 0 -_08013DF0: .4byte gBattleMainFunc -_08013DF4: .4byte bc_evolution_cutscene - thumb_func_end sub_8013DA8 - - thumb_func_start bc_evolution_cutscene -bc_evolution_cutscene: @ 8013DF8 - push {r4,r5,lr} - ldr r0, _08013E4C @ =gLeveledUpInBattle - ldrb r1, [r0] - adds r3, r0, 0 - cmp r1, 0 - beq _08013E6E -_08013E04: - movs r5, 0 -_08013E06: - ldrb r2, [r3] - ldr r0, _08013E50 @ =gBitTable - lsls r1, r5, 2 - adds r1, r0 - ldr r1, [r1] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08013E60 - bics r2, r1 - strb r2, [r3] - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _08013E54 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0 - beq _08013E60 - ldr r0, _08013E58 @ =gBattleMainFunc - ldr r1, _08013E5C @ =sub_8013E88 - str r1, [r0] - lsls r3, r5, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r2, 0 - movs r2, 0x81 - bl EvolutionScene - b _08013E74 - .align 2, 0 -_08013E4C: .4byte gLeveledUpInBattle -_08013E50: .4byte gBitTable -_08013E54: .4byte gPlayerParty -_08013E58: .4byte gBattleMainFunc -_08013E5C: .4byte sub_8013E88 -_08013E60: - adds r5, 0x1 - ldr r3, _08013E7C @ =gLeveledUpInBattle - cmp r5, 0x5 - ble _08013E06 - ldrb r0, [r3] - cmp r0, 0 - bne _08013E04 -_08013E6E: - ldr r1, _08013E80 @ =gBattleMainFunc - ldr r0, _08013E84 @ =c4_overworld - str r0, [r1] -_08013E74: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08013E7C: .4byte gLeveledUpInBattle -_08013E80: .4byte gBattleMainFunc -_08013E84: .4byte c4_overworld - thumb_func_end bc_evolution_cutscene - - thumb_func_start sub_8013E88 -sub_8013E88: @ 8013E88 - push {lr} - ldr r0, _08013EA0 @ =gMain - ldr r1, [r0, 0x4] - ldr r0, _08013EA4 @ =sub_800F808 - cmp r1, r0 - bne _08013E9A - ldr r1, _08013EA8 @ =gBattleMainFunc - ldr r0, _08013EAC @ =bc_evolution_cutscene - str r0, [r1] -_08013E9A: - pop {r0} - bx r0 - .align 2, 0 -_08013EA0: .4byte gMain -_08013EA4: .4byte sub_800F808 -_08013EA8: .4byte gBattleMainFunc -_08013EAC: .4byte bc_evolution_cutscene - thumb_func_end sub_8013E88 - - thumb_func_start c4_overworld -c4_overworld: @ 8013EB0 - push {r4-r6,lr} - ldr r5, _08013F30 @ =gBattleTypeFlags - ldrh r1, [r5] - movs r6, 0x2 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _08013ECE - ldr r4, _08013F34 @ =gPlayerParty - adds r0, r4, 0 - bl RandomlyGivePartyPokerus - adds r0, r4, 0 - bl PartySpreadPokerus -_08013ECE: - ldrh r4, [r5] - adds r0, r6, 0 - ands r0, r4 - cmp r0, 0 - beq _08013EE0 - ldr r0, _08013F38 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _08013F2A -_08013EE0: - ldr r1, _08013F3C @ =gSpecialVar_Result - ldr r5, _08013F40 @ =gBattleOutcome - ldrb r0, [r5] - strh r0, [r1] - ldr r3, _08013F44 @ =gMain - ldr r0, _08013F48 @ =0x0000043d - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, _08013F4C @ =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r3] - movs r0, 0x80 - lsls r0, 3 - ands r0, r4 - cmp r0, 0 - beq _08013F1C - ldr r0, _08013F50 @ =gEnemyParty - bl UpdateRoamerHPStatus - ldrb r0, [r5] - cmp r0, 0x1 - beq _08013F18 - cmp r0, 0x7 - bne _08013F1C -_08013F18: - bl SetRoamerInactive -_08013F1C: - movs r0, 0x5A - bl m4aSongNumStop - ldr r0, _08013F44 @ =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_08013F2A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08013F30: .4byte gBattleTypeFlags -_08013F34: .4byte gPlayerParty -_08013F38: .4byte gReceivedRemoteLinkPlayers -_08013F3C: .4byte gSpecialVar_Result -_08013F40: .4byte gBattleOutcome -_08013F44: .4byte gMain -_08013F48: .4byte 0x0000043d -_08013F4C: .4byte gPreBattleCallback1 -_08013F50: .4byte gEnemyParty - thumb_func_end c4_overworld - - thumb_func_start sub_8013F54 -sub_8013F54: @ 8013F54 - push {lr} - ldr r0, _08013F84 @ =gFightStateTracker - ldrb r0, [r0] - subs r0, 0xB - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08013F90 - ldr r2, _08013F88 @ =gSharedMem + 0x17140 - adds r1, r2, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - beq _08013F74 - subs r0, 0x1 - strb r0, [r1] -_08013F74: - ldr r0, _08013F8C @ =gBattleMainFunc - ldrb r1, [r1] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - str r1, [r0] - b _08013FAA - .align 2, 0 -_08013F84: .4byte gFightStateTracker -_08013F88: .4byte gSharedMem + 0x17140 -_08013F8C: .4byte gBattleMainFunc -_08013F90: - ldr r0, _08013FB0 @ =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08013FAA - ldr r1, _08013FB4 @ =gBattleScriptingCommandsTable - ldr r0, _08013FB8 @ =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 -_08013FAA: - pop {r0} - bx r0 - .align 2, 0 -_08013FB0: .4byte gBattleExecBuffer -_08013FB4: .4byte gBattleScriptingCommandsTable -_08013FB8: .4byte gBattlescriptCurrInstr - thumb_func_end sub_8013F54 - - thumb_func_start sub_8013FBC -sub_8013FBC: @ 8013FBC - push {lr} - ldr r0, _08013FDC @ =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08013FD8 - ldr r1, _08013FE0 @ =gBattleScriptingCommandsTable - ldr r0, _08013FE4 @ =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 -_08013FD8: - pop {r0} - bx r0 - .align 2, 0 -_08013FDC: .4byte gBattleExecBuffer -_08013FE0: .4byte gBattleScriptingCommandsTable -_08013FE4: .4byte gBattlescriptCurrInstr - thumb_func_end sub_8013FBC - - thumb_func_start sub_8013FE8 -sub_8013FE8: @ 8013FE8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - movs r0, 0x4 - str r0, [sp] - ldr r7, _08014028 @ =gBankAttacker - ldr r1, _0801402C @ =gTurnOrder - ldr r0, _08014030 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r7] - ldr r1, _08014034 @ =gSharedMem - mov r10, r1 - ldr r0, _08014038 @ =0x000160a6 - add r0, r10 - ldrb r2, [r0] - ldr r1, _0801403C @ =gBitTable - ldrb r0, [r7] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ands r2, r0 - cmp r2, 0 - beq _08014044 - ldr r1, _08014040 @ =gFightStateTracker - movs r0, 0xC - b _080146CC - .align 2, 0 -_08014028: .4byte gBankAttacker -_0801402C: .4byte gTurnOrder -_08014030: .4byte gCurrentMoveTurn -_08014034: .4byte gSharedMem -_08014038: .4byte 0x000160a6 -_0801403C: .4byte gBitTable -_08014040: .4byte gFightStateTracker -_08014044: - ldr r1, _080140B8 @ =gCritMultiplier - movs r0, 0x1 - strb r0, [r1] - ldr r1, _080140BC @ =0x0001601f - add r1, r10 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _080140C0 @ =0x000160e7 - add r0, r10 - strb r2, [r0] - ldr r0, _080140C4 @ =gBattleMoveFlags - strb r2, [r0] - ldr r0, _080140C8 @ =gMultiHitCounter - strb r2, [r0] - ldr r0, _080140CC @ =gBattleCommunication - strb r2, [r0, 0x6] - ldr r3, _080140D0 @ =gCurrMovePos - ldrb r0, [r7] - ldr r2, _080140D4 @ =0x0001608c - adds r0, r2 - add r0, r10 - ldrb r0, [r0] - ldr r4, _080140D8 @ =gUnknown_02024BE5 - strb r0, [r4] - strb r0, [r3] - ldr r1, _080140DC @ =gProtectStructs - ldrb r2, [r7] - lsls r0, r2, 4 - adds r5, r0, r1 - ldrb r1, [r5] - lsls r0, r1, 29 - adds r4, r2, 0 - mov r8, r3 - cmp r0, 0 - bge _080140F0 - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r5] - ldr r2, _080140E0 @ =gCurrentMove - ldr r1, _080140E4 @ =gChosenMove - movs r0, 0xA5 - strh r0, [r1] - strh r0, [r2] - ldr r2, _080140E8 @ =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 4 - orrs r0, r1 - str r0, [r2] - movs r0, 0xA5 - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r7] - ldr r2, _080140EC @ =0x00016010 - adds r1, r2 - b _08014200 - .align 2, 0 -_080140B8: .4byte gCritMultiplier -_080140BC: .4byte 0x0001601f -_080140C0: .4byte 0x000160e7 -_080140C4: .4byte gBattleMoveFlags -_080140C8: .4byte gMultiHitCounter -_080140CC: .4byte gBattleCommunication -_080140D0: .4byte gCurrMovePos -_080140D4: .4byte 0x0001608c -_080140D8: .4byte gUnknown_02024BE5 -_080140DC: .4byte gProtectStructs -_080140E0: .4byte gCurrentMove -_080140E4: .4byte gChosenMove -_080140E8: .4byte gHitMarker -_080140EC: .4byte 0x00016010 -_080140F0: - ldr r1, _08014128 @ =gBattleMons - movs r0, 0x58 - adds r5, r4, 0 - muls r5, r0 - adds r0, r1, 0 - adds r0, 0x50 - adds r0, r5, r0 - ldr r2, [r0] - movs r0, 0x80 - lsls r0, 5 - ands r0, r2 - cmp r0, 0 - bne _08014114 - movs r6, 0x80 - lsls r6, 15 - ands r6, r2 - cmp r6, 0 - beq _08014138 -_08014114: - ldr r3, _0801412C @ =gCurrentMove - ldr r2, _08014130 @ =gChosenMove - ldr r1, _08014134 @ =gLockedMove - lsls r0, r4, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - strh r0, [r3] - b _08014280 - .align 2, 0 -_08014128: .4byte gBattleMons -_0801412C: .4byte gCurrentMove -_08014130: .4byte gChosenMove -_08014134: .4byte gLockedMove -_08014138: - ldr r3, _08014188 @ =gDisableStructs - mov r12, r3 - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r2, r0, r3 - ldrh r4, [r2, 0x6] - adds r1, r4, 0 - cmp r1, 0 - beq _08014218 - ldrb r3, [r2, 0xC] - lsls r0, r3, 1 - adds r0, r5 - str r0, [sp, 0x8] - ldr r0, _0801418C @ =gBattleMons - adds r0, 0xC - mov r9, r0 - ldr r0, [sp, 0x8] - add r0, r9 - ldrh r0, [r0] - cmp r1, r0 - bne _080141A0 - ldr r1, _08014190 @ =gCurrentMove - ldr r0, _08014194 @ =gChosenMove - strh r4, [r0] - strh r4, [r1] - ldrb r0, [r2, 0xC] - ldr r2, _08014198 @ =gUnknown_02024BE5 - strb r0, [r2] - mov r3, r8 - strb r0, [r3] - ldrh r0, [r1] - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r7] - ldr r4, _0801419C @ =0x00016010 - adds r1, r4 - b _08014200 - .align 2, 0 -_08014188: .4byte gDisableStructs -_0801418C: .4byte gBattleMons -_08014190: .4byte gCurrentMove -_08014194: .4byte gChosenMove -_08014198: .4byte gUnknown_02024BE5 -_0801419C: .4byte 0x00016010 -_080141A0: - cmp r1, 0 - beq _08014218 - cmp r1, r0 - beq _08014218 - ldr r0, _08014208 @ =gUnknown_02024BE5 - strb r3, [r0] - mov r1, r8 - strb r3, [r1] - ldr r3, _0801420C @ =gCurrentMove - ldr r1, _08014210 @ =gChosenMove - mov r2, r8 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r5 - add r0, r9 - ldrh r0, [r0] - strh r0, [r1] - strh r0, [r3] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - movs r2, 0 - strh r6, [r0, 0x6] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - strb r2, [r0, 0xC] - ldrb r0, [r7] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r12 - ldrb r2, [r1, 0xE] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0xE] - ldrh r0, [r3] - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r7] - ldr r3, _08014214 @ =0x00016010 - adds r1, r3 -_08014200: - add r1, r10 - strb r0, [r1] - b _08014280 - .align 2, 0 -_08014208: .4byte gUnknown_02024BE5 -_0801420C: .4byte gCurrentMove -_08014210: .4byte gChosenMove -_08014214: .4byte 0x00016010 -_08014218: - mov r4, r8 - ldrb r0, [r4] - lsls r0, 1 - ldr r4, _0801425C @ =gBankAttacker - ldrb r2, [r4] - movs r1, 0x58 - muls r1, r2 - adds r0, r1 - ldr r1, _08014260 @ =gBattleMons - adds r1, 0xC - adds r0, r1 - ldr r1, _08014264 @ =gChosenMovesByBanks - lsls r2, 1 - adds r2, r1 - ldrh r3, [r0] - ldrh r2, [r2] - cmp r3, r2 - beq _08014278 - ldr r1, _08014268 @ =gCurrentMove - ldr r0, _0801426C @ =gChosenMove - strh r3, [r0] - strh r3, [r1] - ldrh r0, [r1] - movs r1, 0 - bl GetMoveTarget - ldr r2, _08014270 @ =gSharedMem - ldrb r1, [r4] - ldr r3, _08014274 @ =0x00016010 - adds r1, r3 - adds r1, r2 - strb r0, [r1] - b _08014280 - .align 2, 0 -_0801425C: .4byte gBankAttacker -_08014260: .4byte gBattleMons -_08014264: .4byte gChosenMovesByBanks -_08014268: .4byte gCurrentMove -_0801426C: .4byte gChosenMove -_08014270: .4byte gSharedMem -_08014274: .4byte 0x00016010 -_08014278: - ldr r1, _08014298 @ =gCurrentMove - ldr r0, _0801429C @ =gChosenMove - strh r3, [r0] - strh r3, [r1] -_08014280: - ldr r0, _080142A0 @ =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080142A8 - ldr r0, _080142A4 @ =gBattleResults - ldr r1, _08014298 @ =gCurrentMove - ldrh r1, [r1] - strh r1, [r0, 0x22] - b _080142B0 - .align 2, 0 -_08014298: .4byte gCurrentMove -_0801429C: .4byte gChosenMove -_080142A0: .4byte gBankAttacker -_080142A4: .4byte gBattleResults -_080142A8: - ldr r0, _08014314 @ =gBattleResults - ldr r1, _08014318 @ =gCurrentMove - ldrh r1, [r1] - strh r1, [r0, 0x24] -_080142B0: - ldr r4, _0801431C @ =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, _08014320 @ =gSideTimer - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 2 - adds r5, r0, r1 - ldrb r0, [r5, 0x8] - adds r3, r4, 0 - cmp r0, 0 - beq _08014330 - ldr r2, _08014324 @ =gBattleMoves - ldr r0, _08014318 @ =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _08014330 - ldrb r0, [r3] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5, 0x9] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _08014330 - ldr r1, _08014328 @ =gBattleMons - ldrb r2, [r5, 0x9] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08014330 - ldr r0, _0801432C @ =gBankTarget - strb r2, [r0] - b _080146AC - .align 2, 0 -_08014314: .4byte gBattleResults -_08014318: .4byte gCurrentMove -_0801431C: .4byte gBankAttacker -_08014320: .4byte gSideTimer -_08014324: .4byte gBattleMoves -_08014328: .4byte gBattleMons -_0801432C: .4byte gBankTarget -_08014330: - ldr r2, _08014454 @ =gBattleTypeFlags - ldrh r1, [r2] - movs r0, 0x1 - ands r0, r1 - ldr r3, _08014458 @ =gBankAttacker - mov r9, r2 - cmp r0, 0 - bne _08014342 - b _0801461C -_08014342: - ldr r1, _0801445C @ =gSideTimer - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrb r7, [r0, 0x8] - cmp r7, 0 - beq _08014354 - b _08014570 -_08014354: - ldr r2, _08014460 @ =gBattleMoves - ldr r0, _08014464 @ =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r4, r0, r2 - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _08014370 - ldrb r0, [r4, 0x6] - cmp r0, 0x10 - bne _08014370 - b _08014570 -_08014370: - ldr r3, _08014468 @ =gBattleMons - ldr r0, _0801446C @ =gSharedMem - mov r8, r0 - ldr r2, _08014458 @ =gBankAttacker - ldrb r5, [r2] - ldr r1, _08014470 @ =0x00016010 - adds r0, r5, r1 - add r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r3 - adds r0, 0x20 - ldrb r0, [r0] - adds r3, r2, 0 - cmp r0, 0x1F - bne _08014394 - b _08014570 -_08014394: - ldrb r0, [r4, 0x2] - cmp r0, 0xD - beq _0801439C - b _08014570 -_0801439C: - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, _08014474 @ =gActiveBank - strb r7, [r1] - ldr r0, _08014478 @ =gNoOfAllBanks - ldrb r0, [r0] - cmp r7, r0 - bcs _08014416 - adds r4, r1, 0 - mov r5, r8 -_080143B6: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - beq _08014404 - ldr r0, _08014458 @ =gBankAttacker - ldrb r0, [r0] - ldr r2, _08014470 @ =0x00016010 - adds r0, r2 - adds r0, r5 - ldrb r0, [r0] - ldrb r3, [r4] - cmp r0, r3 - beq _08014404 - ldr r1, _08014468 @ =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1F - bne _08014404 - adds r0, r2, 0 - bl BankGetTurnOrder - lsls r0, 24 - lsrs r0, 24 - ldr r1, [sp] - cmp r0, r1 - bcs _08014404 - ldrb r0, [r4] - bl BankGetTurnOrder - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] -_08014404: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08014478 @ =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _080143B6 -_08014416: - ldr r2, [sp] - cmp r2, 0x4 - beq _0801441E - b _08014522 -_0801441E: - ldr r2, _08014460 @ =gBattleMoves - ldr r0, _0801447C @ =gChosenMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - ldr r3, [sp] - ands r3, r0 - cmp r3, 0 - beq _080144A4 - ldr r0, _08014458 @ =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08014484 - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08014480 - movs r0, 0x1 - b _08014496 - .align 2, 0 -_08014454: .4byte gBattleTypeFlags -_08014458: .4byte gBankAttacker -_0801445C: .4byte gSideTimer -_08014460: .4byte gBattleMoves -_08014464: .4byte gCurrentMove -_08014468: .4byte gBattleMons -_0801446C: .4byte gSharedMem -_08014470: .4byte 0x00016010 -_08014474: .4byte gActiveBank -_08014478: .4byte gNoOfAllBanks -_0801447C: .4byte gChosenMove -_08014480: - movs r0, 0x3 - b _08014496 -_08014484: - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08014494 - movs r0, 0 - b _08014496 -_08014494: - movs r0, 0x2 -_08014496: - bl GetBankByPlayerAI - ldr r1, _080144A0 @ =gBankTarget - strb r0, [r1] - b _080144B6 - .align 2, 0 -_080144A0: .4byte gBankTarget -_080144A4: - ldr r2, _080144EC @ =gBankTarget - ldr r1, _080144F0 @ =gSharedMem - ldr r0, _080144F4 @ =gBankAttacker - ldrb r0, [r0] - ldr r4, _080144F8 @ =0x00016010 - adds r0, r4 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] -_080144B6: - ldr r7, _080144FC @ =gAbsentBankFlags - ldrb r0, [r7] - ldr r1, _08014500 @ =gBitTable - mov r8, r1 - ldr r5, _080144EC @ =gBankTarget - ldrb r1, [r5] - lsls r1, 2 - add r1, r8 - ldr r1, [r1] - ands r0, r1 - cmp r0, 0 - bne _080144D0 - b _080146AC -_080144D0: - ldr r6, _080144F4 @ =gBankAttacker - ldrb r0, [r6] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _08014504 - ldrb r0, [r5] - b _0801469A - .align 2, 0 -_080144EC: .4byte gBankTarget -_080144F0: .4byte gSharedMem -_080144F4: .4byte gBankAttacker -_080144F8: .4byte 0x00016010 -_080144FC: .4byte gAbsentBankFlags -_08014500: .4byte gBitTable -_08014504: - ldrb r0, [r6] - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r5] - ldrb r1, [r7] - ldrb r2, [r5] - lsls r0, r2, 2 - add r0, r8 - b _08014690 -_08014522: - ldr r4, _0801455C @ =gActiveBank - ldr r0, _08014560 @ =gTurnOrder - ldr r2, [sp] - adds r0, r2, r0 - ldrb r0, [r0] - strb r0, [r4] - ldrb r0, [r4] - ldr r2, _08014564 @ =gBattleMons - movs r1, 0x58 - muls r1, r0 - adds r1, r2 - adds r1, 0x20 - ldrb r1, [r1] - bl RecordAbilityBattle - ldr r2, _08014568 @ =gSpecialStatuses - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] - ldr r1, _0801456C @ =gBankTarget - ldrb r0, [r4] - strb r0, [r1] - b _080146AC - .align 2, 0 -_0801455C: .4byte gActiveBank -_08014560: .4byte gTurnOrder -_08014564: .4byte gBattleMons -_08014568: .4byte gSpecialStatuses -_0801456C: .4byte gBankTarget -_08014570: - mov r4, r9 - ldrh r1, [r4] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0801461C - ldr r2, _080145B4 @ =gBattleMoves - ldr r0, _080145B8 @ =gChosenMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x6] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0801461C - ldrb r0, [r3] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080145C0 - bl Random - adds r1, r4, 0 - ands r1, r0 - cmp r1, 0 - beq _080145BC - movs r0, 0x1 - b _080145D2 - .align 2, 0 -_080145B4: .4byte gBattleMoves -_080145B8: .4byte gChosenMove -_080145BC: - movs r0, 0x3 - b _080145D2 -_080145C0: - bl Random - adds r1, r4, 0 - ands r1, r0 - cmp r1, 0 - beq _080145D0 - movs r0, 0 - b _080145D2 -_080145D0: - movs r0, 0x2 -_080145D2: - bl GetBankByPlayerAI - ldr r1, _0801460C @ =gBankTarget - strb r0, [r1] - ldr r0, _08014610 @ =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, _08014614 @ =gBitTable - ldr r5, _0801460C @ =gBankTarget - ldrb r0, [r5] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _080146AC - ldr r0, _08014618 @ =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _080146AC - ldrb r0, [r5] - b _0801469A - .align 2, 0 -_0801460C: .4byte gBankTarget -_08014610: .4byte gAbsentBankFlags -_08014614: .4byte gBitTable -_08014618: .4byte gBankAttacker -_0801461C: - ldr r5, _08014660 @ =gBankTarget - ldr r1, _08014664 @ =gSharedMem - adds r2, r3, 0 - ldrb r0, [r2] - ldr r4, _08014668 @ =0x00016010 - adds r0, r4 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r5] - ldr r6, _0801466C @ =gAbsentBankFlags - ldrb r1, [r6] - ldr r7, _08014670 @ =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r7 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _080146AC - ldrb r0, [r2] - str r3, [sp, 0x4] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - ldr r3, [sp, 0x4] - cmp r4, r0 - beq _08014674 - ldrb r0, [r5] - b _0801469A - .align 2, 0 -_08014660: .4byte gBankTarget -_08014664: .4byte gSharedMem -_08014668: .4byte 0x00016010 -_0801466C: .4byte gAbsentBankFlags -_08014670: .4byte gBitTable -_08014674: - ldrb r0, [r3] - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r5] - ldrb r1, [r6] - ldrb r2, [r5] - lsls r0, r2, 2 - adds r0, r7 -_08014690: - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _080146AC - adds r0, r2, 0 -_0801469A: - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r5] -_080146AC: - ldr r4, _080146E0 @ =gBattlescriptCurrInstr - ldr r3, _080146E4 @ =gBattleScriptsForMoveEffects - ldr r2, _080146E8 @ =gBattleMoves - ldr r0, _080146EC @ =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - str r0, [r4] - ldr r1, _080146F0 @ =gFightStateTracker - movs r0, 0xA -_080146CC: - strb r0, [r1] - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080146E0: .4byte gBattlescriptCurrInstr -_080146E4: .4byte gBattleScriptsForMoveEffects -_080146E8: .4byte gBattleMoves -_080146EC: .4byte gCurrentMove -_080146F0: .4byte gFightStateTracker - thumb_func_end sub_8013FE8 - - thumb_func_start sub_80146F4 -sub_80146F4: @ 80146F4 - push {r4,lr} - ldr r3, _08014764 @ =gBankAttacker - ldr r1, _08014768 @ =gTurnOrder - ldr r0, _0801476C @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - ldr r0, _08014770 @ =gUnknown_030042A4 - movs r2, 0 - strh r2, [r0] - ldr r0, _08014774 @ =gUnknown_030042A0 - strh r2, [r0] - ldr r1, _08014778 @ =gActionSelectionCursor - ldrb r0, [r3] - adds r0, r1 - strb r2, [r0] - ldr r1, _0801477C @ =gMoveSelectionCursor - ldrb r0, [r3] - adds r0, r1 - strb r2, [r0] - ldr r2, _08014780 @ =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r2] - movs r0, 0x7 - strb r0, [r2, 0x1] - ldrb r4, [r3] - strb r4, [r2, 0x2] - ldr r1, _08014784 @ =gSharedMem - ldrb r0, [r3] - ldr r3, _08014788 @ =0x00016064 - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2, 0x3] - movs r0, 0xFF - strb r0, [r2, 0x4] - ldr r0, _0801478C @ =0x00016003 - adds r1, r0 - strb r4, [r1] - ldr r1, _08014790 @ =gBattlescriptCurrInstr - ldr r0, _08014794 @ =BattleScript_ActionSwitch - str r0, [r1] - ldr r1, _08014798 @ =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - ldr r1, _0801479C @ =gBattleResults - ldrb r0, [r1, 0x2] - cmp r0, 0xFE - bhi _0801475C - adds r0, 0x1 - strb r0, [r1, 0x2] -_0801475C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08014764: .4byte gBankAttacker -_08014768: .4byte gTurnOrder -_0801476C: .4byte gCurrentMoveTurn -_08014770: .4byte gUnknown_030042A4 -_08014774: .4byte gUnknown_030042A0 -_08014778: .4byte gActionSelectionCursor -_0801477C: .4byte gMoveSelectionCursor -_08014780: .4byte gBattleTextBuff1 -_08014784: .4byte gSharedMem -_08014788: .4byte 0x00016064 -_0801478C: .4byte 0x00016003 -_08014790: .4byte gBattlescriptCurrInstr -_08014794: .4byte BattleScript_ActionSwitch -_08014798: .4byte gFightStateTracker -_0801479C: .4byte gBattleResults - thumb_func_end sub_80146F4 - - thumb_func_start sub_80147A0 -sub_80147A0: @ 80147A0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08014804 @ =gBankAttacker - ldr r2, _08014808 @ =gBankTarget - ldr r1, _0801480C @ =gTurnOrder - ldr r0, _08014810 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - strb r0, [r4] - ldr r0, _08014814 @ =gUnknown_030042A4 - movs r2, 0 - strh r2, [r0] - ldr r0, _08014818 @ =gUnknown_030042A0 - strh r2, [r0] - ldr r3, _0801481C @ =gDisableStructs - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r3 - strb r2, [r0, 0x10] - ldr r5, _08014820 @ =gLastUsedItem - ldr r2, _08014824 @ =gBattleBufferB - ldrb r1, [r4] - lsls r1, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r3, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - strh r3, [r5] - cmp r3, 0xC - bhi _08014830 - ldr r2, _08014828 @ =gBattlescriptCurrInstr - ldr r1, _0801482C @ =gBattlescriptsForBallThrow - ldrh r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] - b _08014A8C - .align 2, 0 -_08014804: .4byte gBankAttacker -_08014808: .4byte gBankTarget -_0801480C: .4byte gTurnOrder -_08014810: .4byte gCurrentMoveTurn -_08014814: .4byte gUnknown_030042A4 -_08014818: .4byte gUnknown_030042A0 -_0801481C: .4byte gDisableStructs -_08014820: .4byte gLastUsedItem -_08014824: .4byte gBattleBufferB -_08014828: .4byte gBattlescriptCurrInstr -_0801482C: .4byte gBattlescriptsForBallThrow -_08014830: - adds r0, r3, 0 - subs r0, 0x50 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0801484C - ldr r0, _08014844 @ =gBattlescriptCurrInstr - ldr r1, _08014848 @ =gBattlescriptsForRunningByItem - b _0801485C - .align 2, 0 -_08014844: .4byte gBattlescriptCurrInstr -_08014848: .4byte gBattlescriptsForRunningByItem -_0801484C: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0801486C - ldr r0, _08014864 @ =gBattlescriptCurrInstr - ldr r1, _08014868 @ =gBattlescriptsForUsingItem -_0801485C: - ldr r1, [r1] - str r1, [r0] - b _08014A8C - .align 2, 0 -_08014864: .4byte gBattlescriptCurrInstr -_08014868: .4byte gBattlescriptsForUsingItem -_0801486C: - ldr r2, _080148A0 @ =gSharedMem - ldrb r0, [r4] - ldr r3, _080148A4 @ =0x00016003 - adds r1, r2, r3 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 25 - ldr r1, _080148A8 @ =0x000160d8 - adds r0, r1 - adds r0, r2 - ldrb r0, [r0] - subs r0, 0x1 - mov r8, r4 - ldr r3, _080148AC @ =gBattlescriptCurrInstr - mov r9, r3 - ldr r1, _080148B0 @ =gBattlescriptsForUsingItem - mov r10, r1 - adds r7, r2, 0 - cmp r0, 0x4 - bls _08014896 - b _08014A74 -_08014896: - lsls r0, 2 - ldr r1, _080148B4 @ =_080148B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080148A0: .4byte gSharedMem -_080148A4: .4byte 0x00016003 -_080148A8: .4byte 0x000160d8 -_080148AC: .4byte gBattlescriptCurrInstr -_080148B0: .4byte gBattlescriptsForUsingItem -_080148B4: .4byte _080148B8 - .align 2, 0 -_080148B8: - .4byte _08014A74 - .4byte _08014A74 - .4byte _080148CC - .4byte _08014958 - .4byte _08014A30 -_080148CC: - ldr r2, _08014904 @ =gBattleCommunication - movs r0, 0 - strb r0, [r2, 0x5] - ldr r1, _08014908 @ =gBankAttacker - ldrb r0, [r1] - lsrs r0, 1 - ldr r6, _0801490C @ =0x000160da - adds r0, r6 - adds r0, r7 - ldrb r3, [r0] - movs r0, 0x1 - ands r0, r3 - mov r8, r1 - cmp r0, 0 - beq _08014918 - movs r0, 0x3E - ands r0, r3 - ldr r3, _08014910 @ =gBattlescriptCurrInstr - mov r9, r3 - ldr r1, _08014914 @ =gBattlescriptsForUsingItem - mov r10, r1 - cmp r0, 0 - bne _080148FC - b _08014A74 -_080148FC: - movs r0, 0x5 - strb r0, [r2, 0x5] - b _08014A74 - .align 2, 0 -_08014904: .4byte gBattleCommunication -_08014908: .4byte gBankAttacker -_0801490C: .4byte 0x000160da -_08014910: .4byte gBattlescriptCurrInstr -_08014914: .4byte gBattlescriptsForUsingItem -_08014918: - ldr r3, _08014950 @ =gBattlescriptCurrInstr - mov r9, r3 - ldr r0, _08014954 @ =gBattlescriptsForUsingItem - mov r10, r0 - adds r5, r7, 0 - mov r4, r8 - adds r3, r6, 0 -_08014926: - ldrb r0, [r4] - lsrs r0, 1 - adds r0, r3 - adds r0, r5 - ldrb r1, [r0] - lsrs r1, 1 - strb r1, [r0] - ldrb r0, [r2, 0x5] - adds r0, 0x1 - strb r0, [r2, 0x5] - ldrb r0, [r4] - lsrs r0, 1 - adds r0, r3 - adds r0, r5 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08014926 - b _08014A74 - .align 2, 0 -_08014950: .4byte gBattlescriptCurrInstr -_08014954: .4byte gBattlescriptsForUsingItem -_08014958: - ldr r3, _0801498C @ =gBattleCommunication - movs r0, 0x4 - strb r0, [r3, 0x5] - ldr r2, _08014990 @ =gBankAttacker - ldrb r0, [r2] - lsrs r0, 1 - ldr r1, _08014994 @ =0x000160da - mov r12, r1 - add r0, r12 - adds r6, r0, r7 - ldrb r1, [r6] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - mov r8, r2 - cmp r5, 0 - beq _080149A0 - movs r0, 0x5 - strb r0, [r3, 0x5] - ldr r2, _08014998 @ =gBattlescriptCurrInstr - mov r9, r2 - ldr r3, _0801499C @ =gBattlescriptsForUsingItem - mov r10, r3 - b _08014A74 - .align 2, 0 -_0801498C: .4byte gBattleCommunication -_08014990: .4byte gBankAttacker -_08014994: .4byte 0x000160da -_08014998: .4byte gBattlescriptCurrInstr -_0801499C: .4byte gBattlescriptsForUsingItem -_080149A0: - ldr r3, _08014A18 @ =gBattleTextBuff1 - movs r4, 0xFD - strb r4, [r3] - movs r0, 0x5 - strb r0, [r3, 0x1] - movs r2, 0x1 - strb r2, [r3, 0x2] - movs r0, 0xFF - strb r0, [r3, 0x3] - ldr r1, _08014A1C @ =gBattleTextBuff2 - strb r4, [r1] - strb r5, [r1, 0x1] - movs r0, 0xD2 - strb r0, [r1, 0x2] - strb r5, [r1, 0x3] - subs r0, 0xD3 - strb r0, [r1, 0x4] - ldrb r0, [r6] - ands r2, r0 - ldr r0, _08014A20 @ =gBattlescriptCurrInstr - mov r9, r0 - ldr r1, _08014A24 @ =gBattlescriptsForUsingItem - mov r10, r1 - adds r6, r3, 0 - cmp r2, 0 - bne _08014A02 - adds r3, r7, 0 - mov r5, r8 - mov r4, r12 - adds r2, r6, 0 -_080149DC: - ldrb r0, [r5] - lsrs r0, 1 - adds r0, r4 - adds r0, r3 - ldrb r1, [r0] - lsrs r1, 1 - strb r1, [r0] - ldrb r0, [r2, 0x2] - adds r0, 0x1 - strb r0, [r2, 0x2] - ldrb r0, [r5] - lsrs r0, 1 - adds r0, r4 - adds r0, r3 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080149DC -_08014A02: - ldrb r0, [r6, 0x2] - adds r0, 0xE - ldr r2, _08014A28 @ =0x000160a4 - adds r1, r7, r2 - movs r2, 0 - strb r0, [r1] - ldr r3, _08014A2C @ =0x000160a5 - adds r0, r7, r3 - strb r2, [r0] - b _08014A74 - .align 2, 0 -_08014A18: .4byte gBattleTextBuff1 -_08014A1C: .4byte gBattleTextBuff2 -_08014A20: .4byte gBattlescriptCurrInstr -_08014A24: .4byte gBattlescriptsForUsingItem -_08014A28: .4byte 0x000160a4 -_08014A2C: .4byte 0x000160a5 -_08014A30: - ldr r0, _08014A50 @ =gBattleTypeFlags - ldrh r0, [r0] - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08014A64 - ldr r1, _08014A54 @ =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - ldr r0, _08014A58 @ =gBankAttacker - mov r8, r0 - ldr r1, _08014A5C @ =gBattlescriptCurrInstr - mov r9, r1 - ldr r2, _08014A60 @ =gBattlescriptsForUsingItem - mov r10, r2 - b _08014A74 - .align 2, 0 -_08014A50: .4byte gBattleTypeFlags -_08014A54: .4byte gBattleCommunication -_08014A58: .4byte gBankAttacker -_08014A5C: .4byte gBattlescriptCurrInstr -_08014A60: .4byte gBattlescriptsForUsingItem -_08014A64: - ldr r0, _08014AA0 @ =gBattleCommunication - strb r1, [r0, 0x5] - ldr r3, _08014AA4 @ =gBankAttacker - mov r8, r3 - ldr r0, _08014AA8 @ =gBattlescriptCurrInstr - mov r9, r0 - ldr r1, _08014AAC @ =gBattlescriptsForUsingItem - mov r10, r1 -_08014A74: - mov r2, r8 - ldrb r0, [r2] - lsrs r0, 1 - ldr r3, _08014AB0 @ =0x000160d8 - adds r0, r3 - adds r0, r7 - ldrb r0, [r0] - lsls r0, 2 - add r0, r10 - ldr r0, [r0] - mov r1, r9 - str r0, [r1] -_08014A8C: - movs r0, 0xA - ldr r2, _08014AB4 @ =gFightStateTracker - strb r0, [r2] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08014AA0: .4byte gBattleCommunication -_08014AA4: .4byte gBankAttacker -_08014AA8: .4byte gBattlescriptCurrInstr -_08014AAC: .4byte gBattlescriptsForUsingItem -_08014AB0: .4byte 0x000160d8 -_08014AB4: .4byte gFightStateTracker - thumb_func_end sub_80147A0 - - thumb_func_start sub_8014AB8 -sub_8014AB8: @ 8014AB8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r5, 0 - ldr r1, _08014ADC @ =gBattleMons - movs r0, 0x58 - muls r0, r4 - adds r1, r0, r1 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _08014AE4 - ldr r1, _08014AE0 @ =gEnigmaBerries - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x7] - b _08014AEE - .align 2, 0 -_08014ADC: .4byte gBattleMons -_08014AE0: .4byte gEnigmaBerries -_08014AE4: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r1, r0, 24 -_08014AEE: - ldr r0, _08014B18 @ =gStringBank - strb r4, [r0] - cmp r1, 0x25 - bne _08014B28 - ldr r2, _08014B1C @ =gLastUsedItem - ldr r1, _08014B20 @ =gBattleMons - movs r0, 0x58 - muls r0, r4 - adds r0, r1 - ldrh r0, [r0, 0x2E] - strh r0, [r2] - ldr r0, _08014B24 @ =gProtectStructs - lsls r2, r4, 4 - adds r2, r0 - ldrb r1, [r2, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - b _08014B50 - .align 2, 0 -_08014B18: .4byte gStringBank -_08014B1C: .4byte gLastUsedItem -_08014B20: .4byte gBattleMons -_08014B24: .4byte gProtectStructs -_08014B28: - ldr r6, _08014B5C @ =gBattleMons - movs r2, 0x58 - adds r0, r4, 0 - muls r0, r2 - adds r3, r0, r6 - adds r0, r3, 0 - adds r0, 0x20 - ldrb r1, [r0] - cmp r1, 0x32 - bne _08014B68 - ldr r0, _08014B60 @ =gLastUsedAbility - strb r1, [r0] - ldr r0, _08014B64 @ =gProtectStructs - lsls r2, r4, 4 - adds r2, r0 - ldrb r1, [r2, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r1 - movs r1, 0x10 -_08014B50: - orrs r0, r1 - strb r0, [r2, 0x1] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - b _08014BC2 - .align 2, 0 -_08014B5C: .4byte gBattleMons -_08014B60: .4byte gLastUsedAbility -_08014B64: .4byte gProtectStructs -_08014B68: - ldr r0, _08014BDC @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08014BB6 - movs r1, 0x1 - adds r0, r4, 0 - eors r0, r1 - muls r0, r2 - adds r2, r0, r6 - ldrh r0, [r3, 0x6] - ldrh r1, [r2, 0x6] - cmp r0, r1 - bcs _08014BB0 - lsls r0, 7 - ldrh r1, [r2, 0x6] - bl __divsi3 - adds r4, r0, 0 - ldr r0, _08014BE0 @ =gSharedMem - ldr r1, _08014BE4 @ =0x00016078 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 1 - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - bl Random - movs r1, 0xFF - ands r1, r0 - cmp r4, r1 - bls _08014BB6 -_08014BB0: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_08014BB6: - ldr r1, _08014BE0 @ =gSharedMem - ldr r0, _08014BE4 @ =0x00016078 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08014BC2: - cmp r5, 0 - beq _08014BD4 - ldr r1, _08014BE8 @ =gCurrentMoveTurn - ldr r0, _08014BEC @ =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r1] - ldr r1, _08014BF0 @ =gBattleOutcome - movs r0, 0x4 - strb r0, [r1] -_08014BD4: - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08014BDC: .4byte gBattleTypeFlags -_08014BE0: .4byte gSharedMem -_08014BE4: .4byte 0x00016078 -_08014BE8: .4byte gCurrentMoveTurn -_08014BEC: .4byte gNoOfAllBanks -_08014BF0: .4byte gBattleOutcome - thumb_func_end sub_8014AB8 - - thumb_func_start sub_8014BF4 -sub_8014BF4: @ 8014BF4 - push {r4-r6,lr} - ldr r4, _08014C44 @ =gBankAttacker - ldr r1, _08014C48 @ =gTurnOrder - ldr r5, _08014C4C @ =gCurrentMoveTurn - ldrb r0, [r5] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r4] - ldr r0, _08014C50 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08014C9C - ldr r0, _08014C54 @ =gNoOfAllBanks - ldrb r1, [r0] - strb r1, [r5] - ldr r2, _08014C58 @ =gActiveBank - movs r0, 0 - strb r0, [r2] - lsls r1, 24 - cmp r1, 0 - beq _08014C88 - adds r4, r2, 0 - ldr r6, _08014C5C @ =gActionForBanks - ldr r5, _08014C60 @ =gBattleOutcome -_08014C28: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08014C64 - ldrb r0, [r4] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x3 - bne _08014C76 - ldrb r0, [r5] - movs r1, 0x2 - b _08014C72 - .align 2, 0 -_08014C44: .4byte gBankAttacker -_08014C48: .4byte gTurnOrder -_08014C4C: .4byte gCurrentMoveTurn -_08014C50: .4byte gBattleTypeFlags -_08014C54: .4byte gNoOfAllBanks -_08014C58: .4byte gActiveBank -_08014C5C: .4byte gActionForBanks -_08014C60: .4byte gBattleOutcome -_08014C64: - ldrb r0, [r4] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x3 - bne _08014C76 - ldrb r0, [r5] - movs r1, 0x1 -_08014C72: - orrs r0, r1 - strb r0, [r5] -_08014C76: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08014C94 @ =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08014C28 -_08014C88: - ldr r0, _08014C98 @ =gBattleOutcome - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] - b _08014D40 - .align 2, 0 -_08014C94: .4byte gNoOfAllBanks -_08014C98: .4byte gBattleOutcome -_08014C9C: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08014CF4 - ldrb r0, [r4] - bl sub_8014AB8 - lsls r0, 24 - cmp r0, 0 - bne _08014D40 - ldr r1, _08014CDC @ =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r2, r0 - adds r1, 0x50 - adds r2, r1 - ldr r0, [r2] - ldr r1, _08014CE0 @ =0xfdffffff - ands r0, r1 - str r0, [r2] - ldr r1, _08014CE4 @ =gBattleCommunication - movs r0, 0x3 - strb r0, [r1, 0x5] - ldr r1, _08014CE8 @ =gBattlescriptCurrInstr - ldr r0, _08014CEC @ =BattleScript_PrintFailedToRunString - str r0, [r1] - ldr r1, _08014CF0 @ =gFightStateTracker - movs r0, 0xA - b _08014D3E - .align 2, 0 -_08014CDC: .4byte gBattleMons -_08014CE0: .4byte 0xfdffffff -_08014CE4: .4byte gBattleCommunication -_08014CE8: .4byte gBattlescriptCurrInstr -_08014CEC: .4byte BattleScript_PrintFailedToRunString -_08014CF0: .4byte gFightStateTracker -_08014CF4: - ldr r1, _08014D1C @ =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, _08014D20 @ =0x0400e000 - ands r0, r1 - cmp r0, 0 - beq _08014D34 - ldr r1, _08014D24 @ =gBattleCommunication - movs r0, 0x4 - strb r0, [r1, 0x5] - ldr r1, _08014D28 @ =gBattlescriptCurrInstr - ldr r0, _08014D2C @ =BattleScript_PrintFailedToRunString - str r0, [r1] - ldr r1, _08014D30 @ =gFightStateTracker - movs r0, 0xA - b _08014D3E - .align 2, 0 -_08014D1C: .4byte gBattleMons -_08014D20: .4byte 0x0400e000 -_08014D24: .4byte gBattleCommunication -_08014D28: .4byte gBattlescriptCurrInstr -_08014D2C: .4byte BattleScript_PrintFailedToRunString -_08014D30: .4byte gFightStateTracker -_08014D34: - ldr r0, _08014D48 @ =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r5] - ldr r1, _08014D4C @ =gBattleOutcome - movs r0, 0x6 -_08014D3E: - strb r0, [r1] -_08014D40: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08014D48: .4byte gNoOfAllBanks -_08014D4C: .4byte gBattleOutcome - thumb_func_end sub_8014BF4 - - thumb_func_start sub_8014D50 -sub_8014D50: @ 8014D50 - ldr r2, _08014D78 @ =gBankAttacker - ldr r1, _08014D7C @ =gTurnOrder - ldr r0, _08014D80 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, _08014D84 @ =gUnknown_030042A4 - movs r1, 0 - strh r1, [r0] - ldr r0, _08014D88 @ =gUnknown_030042A0 - strh r1, [r0] - ldr r1, _08014D8C @ =gBattlescriptCurrInstr - ldr r0, _08014D90 @ =gBattlescriptsForSafariActions - ldr r0, [r0] - str r0, [r1] - ldr r1, _08014D94 @ =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - bx lr - .align 2, 0 -_08014D78: .4byte gBankAttacker -_08014D7C: .4byte gTurnOrder -_08014D80: .4byte gCurrentMoveTurn -_08014D84: .4byte gUnknown_030042A4 -_08014D88: .4byte gUnknown_030042A0 -_08014D8C: .4byte gBattlescriptCurrInstr -_08014D90: .4byte gBattlescriptsForSafariActions -_08014D94: .4byte gFightStateTracker - thumb_func_end sub_8014D50 - - thumb_func_start sub_8014D98 -sub_8014D98: @ 8014D98 - ldr r2, _08014DD0 @ =gBankAttacker - ldr r1, _08014DD4 @ =gTurnOrder - ldr r0, _08014DD8 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, _08014DDC @ =gUnknown_030042A4 - movs r1, 0 - strh r1, [r0] - ldr r0, _08014DE0 @ =gUnknown_030042A0 - strh r1, [r0] - ldr r1, _08014DE4 @ =gNumSafariBalls - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - ldr r1, _08014DE8 @ =gLastUsedItem - movs r0, 0x5 - strh r0, [r1] - ldr r1, _08014DEC @ =gBattlescriptCurrInstr - ldr r0, _08014DF0 @ =gBattlescriptsForBallThrow - ldr r0, [r0, 0x14] - str r0, [r1] - ldr r1, _08014DF4 @ =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - bx lr - .align 2, 0 -_08014DD0: .4byte gBankAttacker -_08014DD4: .4byte gTurnOrder -_08014DD8: .4byte gCurrentMoveTurn -_08014DDC: .4byte gUnknown_030042A4 -_08014DE0: .4byte gUnknown_030042A0 -_08014DE4: .4byte gNumSafariBalls -_08014DE8: .4byte gLastUsedItem -_08014DEC: .4byte gBattlescriptCurrInstr -_08014DF0: .4byte gBattlescriptsForBallThrow -_08014DF4: .4byte gFightStateTracker - thumb_func_end sub_8014D98 - - thumb_func_start sub_8014DF8 -sub_8014DF8: @ 8014DF8 - push {r4-r6,lr} - ldr r3, _08014E68 @ =gBankAttacker - ldr r1, _08014E6C @ =gTurnOrder - ldr r0, _08014E70 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - ldr r0, _08014E74 @ =gUnknown_030042A4 - movs r1, 0 - strh r1, [r0] - ldr r0, _08014E78 @ =gUnknown_030042A0 - strh r1, [r0] - ldr r6, _08014E7C @ =gBattleCommunication - ldr r2, _08014E80 @ =gBattleBufferB - ldrb r0, [r3] - lsls r0, 9 - adds r1, r2, 0x1 - adds r0, r1 - ldrb r0, [r0] - subs r0, 0x1 - strb r0, [r6, 0x5] - ldr r1, _08014E84 @ =gLastUsedItem - ldrb r0, [r3] - lsls r0, 9 - adds r2, 0x2 - adds r0, r2 - ldrb r0, [r0] - strh r0, [r1] - ldr r2, _08014E88 @ =gSharedMem - ldr r0, _08014E8C @ =0x00016087 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0x2 - bhi _08014E42 - adds r0, 0x1 - strb r0, [r1] -_08014E42: - ldr r0, _08014E90 @ =0x00016088 - adds r4, r2, r0 - ldrb r5, [r4] - adds r3, r5, 0 - cmp r3, 0x1 - bls _08014E9C - ldr r2, _08014E94 @ =gUnknown_081FA70C - ldrb r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - ldrb r6, [r6, 0x5] - adds r0, r6 - adds r0, r2 - ldrb r0, [r0] - cmp r3, r0 - bcs _08014E98 - movs r0, 0x1 - b _08014E9A - .align 2, 0 -_08014E68: .4byte gBankAttacker -_08014E6C: .4byte gTurnOrder -_08014E70: .4byte gCurrentMoveTurn -_08014E74: .4byte gUnknown_030042A4 -_08014E78: .4byte gUnknown_030042A0 -_08014E7C: .4byte gBattleCommunication -_08014E80: .4byte gBattleBufferB -_08014E84: .4byte gLastUsedItem -_08014E88: .4byte gSharedMem -_08014E8C: .4byte 0x00016087 -_08014E90: .4byte 0x00016088 -_08014E94: .4byte gUnknown_081FA70C -_08014E98: - subs r0, r5, r0 -_08014E9A: - strb r0, [r4] -_08014E9C: - ldr r1, _08014EB0 @ =gBattlescriptCurrInstr - ldr r0, _08014EB4 @ =gBattlescriptsForSafariActions - ldr r0, [r0, 0x8] - str r0, [r1] - ldr r1, _08014EB8 @ =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08014EB0: .4byte gBattlescriptCurrInstr -_08014EB4: .4byte gBattlescriptsForSafariActions -_08014EB8: .4byte gFightStateTracker - thumb_func_end sub_8014DF8 - - thumb_func_start sub_8014EBC -sub_8014EBC: @ 8014EBC - push {r4,r5,lr} - ldr r2, _08014F28 @ =gBankAttacker - ldr r1, _08014F2C @ =gTurnOrder - ldr r0, _08014F30 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, _08014F34 @ =gUnknown_030042A4 - movs r5, 0 - strh r5, [r0] - ldr r0, _08014F38 @ =gUnknown_030042A0 - strh r5, [r0] - ldr r3, _08014F3C @ =gSharedMem - ldr r0, _08014F40 @ =0x00016089 - adds r2, r3, r0 - ldr r1, _08014F44 @ =gUnknown_081FA71B - subs r0, 0x3 - adds r4, r3, r0 - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - ldrb r1, [r2] - adds r0, r1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x14 - bls _08014EFA - movs r0, 0x14 - strb r0, [r2] -_08014EFA: - ldr r0, _08014F48 @ =0x00016088 - adds r2, r3, r0 - ldr r1, _08014F4C @ =gUnknown_081FA71F - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - ldrb r1, [r2] - adds r0, r1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x14 - bls _08014F18 - movs r0, 0x14 - strb r0, [r2] -_08014F18: - ldrb r0, [r4] - cmp r0, 0x2 - bhi _08014F54 - adds r0, 0x1 - strb r0, [r4] - ldr r0, _08014F50 @ =gBattleCommunication - strb r5, [r0, 0x5] - b _08014F5A - .align 2, 0 -_08014F28: .4byte gBankAttacker -_08014F2C: .4byte gTurnOrder -_08014F30: .4byte gCurrentMoveTurn -_08014F34: .4byte gUnknown_030042A4 -_08014F38: .4byte gUnknown_030042A0 -_08014F3C: .4byte gSharedMem -_08014F40: .4byte 0x00016089 -_08014F44: .4byte gUnknown_081FA71B -_08014F48: .4byte 0x00016088 -_08014F4C: .4byte gUnknown_081FA71F -_08014F50: .4byte gBattleCommunication -_08014F54: - ldr r1, _08014F70 @ =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] -_08014F5A: - ldr r1, _08014F74 @ =gBattlescriptCurrInstr - ldr r0, _08014F78 @ =gBattlescriptsForSafariActions - ldr r0, [r0, 0x4] - str r0, [r1] - ldr r1, _08014F7C @ =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08014F70: .4byte gBattleCommunication -_08014F74: .4byte gBattlescriptCurrInstr -_08014F78: .4byte gBattlescriptsForSafariActions -_08014F7C: .4byte gFightStateTracker - thumb_func_end sub_8014EBC - - thumb_func_start bs8_exit_by_flight -bs8_exit_by_flight: @ 8014F80 - push {r4,lr} - ldr r2, _08014FA8 @ =gBankAttacker - ldr r1, _08014FAC @ =gTurnOrder - ldr r4, _08014FB0 @ =gCurrentMoveTurn - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - movs r0, 0x11 - bl PlaySE - ldr r0, _08014FB4 @ =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r4] - ldr r1, _08014FB8 @ =gBattleOutcome - movs r0, 0x4 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08014FA8: .4byte gBankAttacker -_08014FAC: .4byte gTurnOrder -_08014FB0: .4byte gCurrentMoveTurn -_08014FB4: .4byte gNoOfAllBanks -_08014FB8: .4byte gBattleOutcome - thumb_func_end bs8_exit_by_flight - - thumb_func_start sub_8014FBC -sub_8014FBC: @ 8014FBC - ldr r3, _08015008 @ =gBankAttacker - ldr r1, _0801500C @ =gTurnOrder - ldr r0, _08015010 @ =gCurrentMoveTurn - ldrb r0, [r0] - adds r0, r1 - ldrb r2, [r0] - strb r2, [r3] - ldr r0, _08015014 @ =gUnknown_030042A4 - movs r1, 0 - strh r1, [r0] - ldr r0, _08015018 @ =gUnknown_030042A0 - strh r1, [r0] - ldr r1, _0801501C @ =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x7 - strb r0, [r1, 0x1] - strb r2, [r1, 0x2] - ldr r2, _08015020 @ =gBattlePartyID - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, _08015024 @ =gBattlescriptCurrInstr - ldr r0, _08015028 @ =gBattlescriptsForSafariActions - ldr r0, [r0, 0xC] - str r0, [r1] - ldr r1, _0801502C @ =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - ldr r1, _08015030 @ =gUnknown_02024A76 - movs r0, 0xC - strb r0, [r1, 0x1] - bx lr - .align 2, 0 -_08015008: .4byte gBankAttacker -_0801500C: .4byte gTurnOrder -_08015010: .4byte gCurrentMoveTurn -_08015014: .4byte gUnknown_030042A4 -_08015018: .4byte gUnknown_030042A0 -_0801501C: .4byte gBattleTextBuff1 -_08015020: .4byte gBattlePartyID -_08015024: .4byte gBattlescriptCurrInstr -_08015028: .4byte gBattlescriptsForSafariActions -_0801502C: .4byte gFightStateTracker -_08015030: .4byte gUnknown_02024A76 - thumb_func_end sub_8014FBC - - thumb_func_start bsB_exit_by_move -bsB_exit_by_move: @ 8015034 - push {lr} - bl sub_80173A4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08015050 - ldr r0, _08015054 @ =gSharedMem - ldr r2, _08015058 @ =0x00016059 - adds r0, r2 - strb r1, [r0] - ldr r1, _0801505C @ =gFightStateTracker - movs r0, 0xC - strb r0, [r1] -_08015050: - pop {r0} - bx r0 - .align 2, 0 -_08015054: .4byte gSharedMem -_08015058: .4byte 0x00016059 -_0801505C: .4byte gFightStateTracker - thumb_func_end bsB_exit_by_move - - thumb_func_start sub_8015060 -sub_8015060: @ 8015060 - ldr r1, _08015080 @ =gCurrentMoveTurn - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r3, _08015084 @ =gFightStateTracker - ldr r2, _08015088 @ =gUnknown_02024A76 - ldrb r0, [r1] - adds r0, r2 - ldrb r0, [r0] - strb r0, [r3] - ldr r2, _0801508C @ =gHitMarker - ldr r0, [r2] - ldr r1, _08015090 @ =0xf1e892af - ands r0, r1 - str r0, [r2] - bx lr - .align 2, 0 -_08015080: .4byte gCurrentMoveTurn -_08015084: .4byte gFightStateTracker -_08015088: .4byte gUnknown_02024A76 -_0801508C: .4byte gHitMarker -_08015090: .4byte 0xf1e892af - thumb_func_end sub_8015060 - - thumb_func_start bsC_8016D70 -bsC_8016D70: @ 8015094 - push {r4,r5,lr} - ldr r1, _0801510C @ =gCurrentMoveTurn - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r3, _08015110 @ =gFightStateTracker - ldr r2, _08015114 @ =gUnknown_02024A76 - ldrb r0, [r1] - adds r0, r2 - ldrb r0, [r0] - strb r0, [r3] - bl SpecialStatusesClear - ldr r2, _08015118 @ =gHitMarker - ldr r0, [r2] - ldr r1, _0801511C @ =0xf1e892af - ands r0, r1 - str r0, [r2] - ldr r0, _08015120 @ =gBattleMoveDamage - movs r4, 0 - str r4, [r0] - ldr r1, _08015124 @ =gSharedMem - ldr r2, _08015128 @ =0x00016002 - adds r0, r1, r2 - strb r4, [r0] - ldr r3, _0801512C @ =0x000160a1 - adds r0, r1, r3 - strb r4, [r0] - ldr r2, _08015130 @ =gMoveHitWith - ldr r5, _08015134 @ =gBankAttacker - ldrb r0, [r5] - lsls r0, 1 - adds r0, r2 - movs r2, 0 - strh r4, [r0] - ldr r3, _08015138 @ =gUnknown_02024C44 - ldrb r0, [r5] - lsls r0, 1 - adds r0, r3 - strh r4, [r0] - ldr r3, _0801513C @ =0x0001601c - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _08015140 @ =gDynamicBasePower - strh r4, [r0] - subs r3, 0x10 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _08015144 @ =gBattleCommunication - strb r2, [r0, 0x3] - strb r2, [r0, 0x4] - ldr r3, _08015148 @ =0x00016112 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _0801514C @ =0x00017130 - adds r1, r0 - strb r2, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801510C: .4byte gCurrentMoveTurn -_08015110: .4byte gFightStateTracker -_08015114: .4byte gUnknown_02024A76 -_08015118: .4byte gHitMarker -_0801511C: .4byte 0xf1e892af -_08015120: .4byte gBattleMoveDamage -_08015124: .4byte gSharedMem -_08015128: .4byte 0x00016002 -_0801512C: .4byte 0x000160a1 -_08015130: .4byte gMoveHitWith -_08015134: .4byte gBankAttacker -_08015138: .4byte gUnknown_02024C44 -_0801513C: .4byte 0x0001601c -_08015140: .4byte gDynamicBasePower -_08015144: .4byte gBattleCommunication -_08015148: .4byte 0x00016112 -_0801514C: .4byte 0x00017130 - thumb_func_end bsC_8016D70 - - thumb_func_start GetBattleBank -GetBattleBank: @ 8015150 - push {lr} - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - cmp r0, 0xA - bhi _080151C8 - lsls r0, 2 - ldr r1, _08015168 @ =_0801516C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08015168: .4byte _0801516C - .align 2, 0 -_0801516C: - .4byte _08015198 - .4byte _080151A0 - .4byte _080151A8 - .4byte _080151C4 - .4byte _080151C8 - .4byte _080151C4 - .4byte _080151C8 - .4byte _080151B0 - .4byte _080151C8 - .4byte _080151C8 - .4byte _080151B4 -_08015198: - ldr r0, _0801519C @ =gBankTarget - b _080151C6 - .align 2, 0 -_0801519C: .4byte gBankTarget -_080151A0: - ldr r0, _080151A4 @ =gBankAttacker - b _080151C6 - .align 2, 0 -_080151A4: .4byte gBankAttacker -_080151A8: - ldr r0, _080151AC @ =gEffectBank - b _080151C6 - .align 2, 0 -_080151AC: .4byte gEffectBank -_080151B0: - movs r2, 0 - b _080151C8 -_080151B4: - ldr r0, _080151BC @ =gSharedMem - ldr r1, _080151C0 @ =0x00016003 - adds r0, r1 - b _080151C6 - .align 2, 0 -_080151BC: .4byte gSharedMem -_080151C0: .4byte 0x00016003 -_080151C4: - ldr r0, _080151D0 @ =gBank1 -_080151C6: - ldrb r2, [r0] -_080151C8: - adds r0, r2, 0 - pop {r1} - bx r1 - .align 2, 0 -_080151D0: .4byte gBank1 - thumb_func_end GetBattleBank - - thumb_func_start PressurePPLose -PressurePPLose: @ 80151D4 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 16 - lsrs r2, 16 - ldr r1, _08015204 @ =gBattleMons - movs r4, 0x58 - muls r0, r4 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - mov r12, r1 - cmp r0, 0x2E - bne _08015286 - movs r3, 0 - adds r0, r5, 0 - muls r0, r4 - adds r1, 0xC - adds r1, r0, r1 - b _08015210 - .align 2, 0 -_08015204: .4byte gBattleMons -_08015208: - adds r1, 0x2 - adds r3, 0x1 - cmp r3, 0x3 - bgt _08015216 -_08015210: - ldrh r0, [r1] - cmp r0, r2 - bne _08015208 -_08015216: - cmp r3, 0x4 - beq _08015286 - movs r7, 0x58 - adds r2, r5, 0 - muls r2, r7 - adds r0, r3, r2 - mov r6, r12 - adds r6, 0x24 - adds r1, r0, r6 - ldrb r0, [r1] - cmp r0, 0 - beq _08015232 - subs r0, 0x1 - strb r0, [r1] -_08015232: - mov r0, r12 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _08015286 - ldr r1, _08015290 @ =gDisableStructs - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, _08015294 @ =gBitTable - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08015286 - ldr r4, _08015298 @ =gActiveBank - strb r5, [r4] - adds r1, r3, 0 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r4] - muls r0, r7 - adds r0, r6 - adds r0, r3 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_08015286: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08015290: .4byte gDisableStructs -_08015294: .4byte gBitTable -_08015298: .4byte gActiveBank - thumb_func_end PressurePPLose - - thumb_func_start sub_801529C -sub_801529C: @ 801529C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0x4 - mov r8, r0 - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r4, 0 - ldr r0, _080153BC @ =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - bge _08015344 - ldr r1, _080153C0 @ =gBattleMons - movs r0, 0x58 - adds r7, r5, 0 - muls r7, r0 - adds r1, 0xC - mov r10, r1 -_080152D2: - lsls r0, r4, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - adds r6, r4, 0x1 - cmp r9, r0 - beq _0801533A - ldr r0, _080153C0 @ =gBattleMons - movs r3, 0x58 - adds r1, r4, 0 - muls r1, r3 - adds r1, r0 - adds r1, 0x20 - ldrb r1, [r1] - adds r4, r0, 0 - cmp r1, 0x2E - bne _0801533A - movs r2, 0 - adds r0, r5, 0 - muls r0, r3 - adds r1, r4, 0 - adds r1, 0xC - adds r0, r1 - ldrh r0, [r0] - movs r1, 0x8F - lsls r1, 1 - cmp r0, r1 - beq _08015322 - adds r3, r1, 0 - mov r0, r10 - adds r1, r7, r0 -_08015314: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - bgt _08015322 - ldrh r0, [r1] - cmp r0, r3 - bne _08015314 -_08015322: - cmp r2, 0x4 - beq _0801533A - mov r8, r2 - adds r1, r2, r7 - adds r0, r4, 0 - adds r0, 0x24 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0801533A - subs r0, 0x1 - strb r0, [r1] -_0801533A: - adds r4, r6, 0 - ldr r0, _080153BC @ =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _080152D2 -_08015344: - mov r1, r8 - cmp r1, 0x4 - beq _080153AC - ldr r6, _080153C0 @ =gBattleMons - movs r3, 0x58 - adds r0, r5, 0 - muls r0, r3 - adds r1, r6, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _080153AC - ldr r1, _080153C4 @ =gDisableStructs - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, _080153C8 @ =gBitTable - mov r4, r8 - lsls r0, r4, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _080153AC - ldr r4, _080153CC @ =gActiveBank - strb r5, [r4] - mov r1, r8 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r4] - muls r0, r3 - adds r2, r6, 0 - adds r2, 0x24 - adds r0, r2 - add r0, r8 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_080153AC: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080153BC: .4byte gNoOfAllBanks -_080153C0: .4byte gBattleMons -_080153C4: .4byte gDisableStructs -_080153C8: .4byte gBitTable -_080153CC: .4byte gActiveBank - thumb_func_end sub_801529C - - thumb_func_start sub_80153D0 -sub_80153D0: @ 80153D0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r3, r0, 24 - movs r6, 0x4 - movs r1, 0 - ldr r0, _080154C8 @ =gNoOfAllBanks - mov r8, r0 - ldrb r0, [r0] - cmp r1, r0 - bge _08015452 - ldr r7, _080154CC @ =gBattleMons - movs r2, 0x58 - mov r12, r2 - mov r5, r12 - muls r5, r3 - adds r0, r7, 0 - adds r0, 0xC - adds r2, r5, r0 - mov r10, r2 - mov r9, r5 -_08015402: - mov r0, r12 - muls r0, r1 - adds r0, r7 - adds r0, 0x20 - ldrb r0, [r0] - adds r4, r1, 0x1 - cmp r0, 0x2E - bne _08015448 - cmp r1, r3 - beq _08015448 - movs r2, 0 - mov r1, r10 - ldrh r0, [r1] - cmp r0, 0xC3 - beq _08015432 - ldr r1, _080154D0 @ =gUnknown_02024A8C - add r1, r9 -_08015424: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - bgt _08015432 - ldrh r0, [r1] - cmp r0, 0xC3 - bne _08015424 -_08015432: - cmp r2, 0x4 - beq _08015448 - adds r6, r2, 0 - adds r0, r6, r5 - ldr r2, _080154D4 @ =gUnknown_02024AA4 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _08015448 - subs r0, 0x1 - strb r0, [r1] -_08015448: - adds r1, r4, 0 - mov r0, r8 - ldrb r0, [r0] - cmp r1, r0 - blt _08015402 -_08015452: - cmp r6, 0x4 - beq _080154B6 - ldr r7, _080154CC @ =gBattleMons - movs r5, 0x58 - adds r0, r3, 0 - muls r0, r5 - adds r1, r7, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _080154B6 - ldr r1, _080154D8 @ =gDisableStructs - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, _080154DC @ =gBitTable - lsls r0, r6, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _080154B6 - ldr r4, _080154E0 @ =gActiveBank - strb r3, [r4] - adds r1, r6, 0 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r4] - muls r0, r5 - adds r2, r7, 0 - adds r2, 0x24 - adds r0, r2 - adds r0, r6 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_080154B6: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080154C8: .4byte gNoOfAllBanks -_080154CC: .4byte gBattleMons -_080154D0: .4byte gUnknown_02024A8C -_080154D4: .4byte gUnknown_02024AA4 -_080154D8: .4byte gDisableStructs -_080154DC: .4byte gBitTable -_080154E0: .4byte gActiveBank - thumb_func_end sub_80153D0 - - thumb_func_start unref_sub_80154E4 -unref_sub_80154E4: @ 80154E4 - push {r4,r5,lr} - ldr r0, _08015514 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08015524 - movs r2, 0 - ldr r4, _08015518 @ =gNoOfAllBanks - ldrb r0, [r4] - cmp r2, r0 - bge _08015542 - ldr r3, _0801551C @ =gBattleExecBuffer - ldr r5, _08015520 @ =gBitTable -_08015500: - ldm r5!, {r1} - lsls r1, 28 - ldr r0, [r3] - orrs r0, r1 - str r0, [r3] - adds r2, 0x1 - ldrb r0, [r4] - cmp r2, r0 - blt _08015500 - b _08015542 - .align 2, 0 -_08015514: .4byte gBattleTypeFlags -_08015518: .4byte gNoOfAllBanks -_0801551C: .4byte gBattleExecBuffer -_08015520: .4byte gBitTable -_08015524: - movs r2, 0 - ldr r4, _08015548 @ =gNoOfAllBanks - ldrb r0, [r4] - cmp r2, r0 - bge _08015542 - ldr r3, _0801554C @ =gBattleExecBuffer - ldr r5, _08015550 @ =gBitTable -_08015532: - ldr r0, [r3] - ldm r5!, {r1} - orrs r0, r1 - str r0, [r3] - adds r2, 0x1 - ldrb r0, [r4] - cmp r2, r0 - blt _08015532 -_08015542: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08015548: .4byte gNoOfAllBanks -_0801554C: .4byte gBattleExecBuffer -_08015550: .4byte gBitTable - thumb_func_end unref_sub_80154E4 - - thumb_func_start MarkBufferBankForExecution -MarkBufferBankForExecution: @ 8015554 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _0801557C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08015588 - ldr r2, _08015580 @ =gBattleExecBuffer - ldr r1, _08015584 @ =gBitTable - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - b _08015598 - .align 2, 0 -_0801557C: .4byte gBattleTypeFlags -_08015580: .4byte gBattleExecBuffer -_08015584: .4byte gBitTable -_08015588: - ldr r2, _0801559C @ =gBattleExecBuffer - ldr r1, _080155A0 @ =gBitTable - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - orrs r1, r0 - str r1, [r2] -_08015598: - pop {r0} - bx r0 - .align 2, 0 -_0801559C: .4byte gBattleExecBuffer -_080155A0: .4byte gBitTable - thumb_func_end MarkBufferBankForExecution - - thumb_func_start sub_80155A4 -sub_80155A4: @ 80155A4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - movs r4, 0 - ldr r5, _080155B8 @ =gBattleExecBuffer - ldr r1, _080155BC @ =gBitTable - lsls r0, r7, 2 - adds r6, r0, r1 - b _080155CE - .align 2, 0 -_080155B8: .4byte gBattleExecBuffer -_080155BC: .4byte gBitTable -_080155C0: - lsls r0, r4, 2 - ldr r1, [r6] - lsls r1, r0 - ldr r0, [r5] - orrs r0, r1 - str r0, [r5] - adds r4, 0x1 -_080155CE: - bl GetLinkPlayerCount - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - blt _080155C0 - ldr r2, _080155F0 @ =gBattleExecBuffer - movs r1, 0x80 - lsls r1, 21 - lsls r1, r7 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080155F0: .4byte gBattleExecBuffer - thumb_func_end sub_80155A4 - - thumb_func_start CancelMultiTurnMoves -CancelMultiTurnMoves: @ 80155F4 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08015644 @ =gBattleMons - movs r2, 0x58 - adds r3, r0, 0 - muls r3, r2 - adds r1, 0x50 - adds r3, r1 - ldr r1, [r3] - ldr r2, _08015648 @ =0xffffefff - ands r1, r2 - ldr r2, _0801564C @ =0xfffff3ff - ands r1, r2 - movs r2, 0x71 - negs r2, r2 - ands r1, r2 - ldr r2, _08015650 @ =0xfffffcff - ands r1, r2 - str r1, [r3] - ldr r1, _08015654 @ =gStatuses3 - lsls r2, r0, 2 - adds r2, r1 - ldr r1, [r2] - ldr r3, _08015658 @ =0xfffbff3f - ands r1, r3 - str r1, [r2] - ldr r2, _0801565C @ =gDisableStructs - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1, 0x11] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x11] - movs r0, 0 - strb r0, [r1, 0x10] - bx lr - .align 2, 0 -_08015644: .4byte gBattleMons -_08015648: .4byte 0xffffefff -_0801564C: .4byte 0xfffff3ff -_08015650: .4byte 0xfffffcff -_08015654: .4byte gStatuses3 -_08015658: .4byte 0xfffbff3f -_0801565C: .4byte gDisableStructs - thumb_func_end CancelMultiTurnMoves - - thumb_func_start sub_8015660 -sub_8015660: @ 8015660 - push {lr} - lsls r0, 24 - ldr r1, _080156AC @ =gProtectStructs - lsrs r0, 20 - adds r1, r0, r1 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - bne _080156A6 - ldrb r2, [r1, 0x1] - lsls r0, r2, 30 - cmp r0, 0 - blt _080156A6 - lsls r0, r2, 26 - cmp r0, 0 - blt _080156A6 - lsls r0, r2, 25 - cmp r0, 0 - blt _080156A6 - lsrs r0, r2, 7 - cmp r0, 0 - bne _080156A6 - ldrb r1, [r1, 0x2] - lsls r0, r1, 31 - cmp r0, 0 - bne _080156A6 - lsls r0, r1, 30 - cmp r0, 0 - blt _080156A6 - lsls r0, r1, 29 - cmp r0, 0 - blt _080156A6 - lsls r0, r2, 31 - cmp r0, 0 - beq _080156B0 -_080156A6: - movs r0, 0x1 - b _080156B2 - .align 2, 0 -_080156AC: .4byte gProtectStructs -_080156B0: - movs r0, 0 -_080156B2: - pop {r1} - bx r1 - thumb_func_end sub_8015660 - - thumb_func_start PrepareStringBattle -PrepareStringBattle: @ 80156B8 - push {r4,lr} - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r4, _080156D8 @ =gActiveBank - strb r1, [r4] - movs r0, 0 - adds r1, r2, 0 - bl EmitPrintString - ldrb r0, [r4] - bl MarkBufferBankForExecution - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080156D8: .4byte gActiveBank - thumb_func_end PrepareStringBattle - - thumb_func_start sub_80156DC -sub_80156DC: @ 80156DC - push {r4-r6,lr} - movs r3, 0 - ldr r0, _08015730 @ =gSentPokesToOpponent - strb r3, [r0] - strb r3, [r0, 0x1] - movs r1, 0 - ldr r0, _08015734 @ =gNoOfAllBanks - ldrb r2, [r0] - adds r6, r0, 0 - cmp r1, r2 - bge _0801570A - ldr r5, _08015738 @ =gBitTable - adds r4, r2, 0 - ldr r2, _0801573C @ =gBattlePartyID -_080156F8: - ldrh r0, [r2] - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - orrs r3, r0 - adds r2, 0x4 - adds r1, 0x2 - cmp r1, r4 - blt _080156F8 -_0801570A: - movs r1, 0x1 - adds r2, r6, 0 - ldrb r0, [r2] - cmp r1, r0 - bge _0801572A - ldr r5, _08015730 @ =gSentPokesToOpponent - movs r4, 0x2 -_08015718: - adds r0, r1, 0 - ands r0, r4 - asrs r0, 1 - adds r0, r5 - strb r3, [r0] - adds r1, 0x2 - ldrb r0, [r2] - cmp r1, r0 - blt _08015718 -_0801572A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08015730: .4byte gSentPokesToOpponent -_08015734: .4byte gNoOfAllBanks -_08015738: .4byte gBitTable -_0801573C: .4byte gBattlePartyID - thumb_func_end sub_80156DC - - thumb_func_start sub_8015740 -sub_8015740: @ 8015740 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080157A4 - movs r0, 0x2 - ands r0, r5 - lsls r0, 24 - lsrs r0, 25 - mov r12, r0 - ldr r1, _080157B0 @ =gSentPokesToOpponent - adds r0, r1 - strb r4, [r0] - adds r5, r4, 0 - ldr r0, _080157B4 @ =gNoOfAllBanks - ldrb r2, [r0] - mov r8, r1 - cmp r4, r2 - bge _0801579E - ldr r0, _080157B8 @ =gAbsentBankFlags - ldrb r7, [r0] - ldr r1, _080157BC @ =gBitTable - adds r6, r2, 0 - ldr r3, _080157C0 @ =gBattlePartyID - adds r2, r1, 0 -_08015782: - ldr r0, [r2] - ands r0, r7 - cmp r0, 0 - bne _08015794 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r4, r0 -_08015794: - adds r3, 0x4 - adds r2, 0x8 - adds r5, 0x2 - cmp r5, r6 - blt _08015782 -_0801579E: - mov r0, r12 - add r0, r8 - strb r4, [r0] -_080157A4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080157B0: .4byte gSentPokesToOpponent -_080157B4: .4byte gNoOfAllBanks -_080157B8: .4byte gAbsentBankFlags -_080157BC: .4byte gBitTable -_080157C0: .4byte gBattlePartyID - thumb_func_end sub_8015740 - - thumb_func_start sub_80157C4 -sub_80157C4: @ 80157C4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080157E0 - adds r0, r4, 0 - bl sub_8015740 - b _08015816 -_080157E0: - movs r3, 0x1 - ldr r5, _0801581C @ =gNoOfAllBanks - ldrb r0, [r5] - cmp r3, r0 - bge _08015816 - ldr r0, _08015820 @ =gSentPokesToOpponent - mov r12, r0 - movs r7, 0x2 - ldr r6, _08015824 @ =gBitTable - ldr r1, _08015828 @ =gBattlePartyID - lsls r0, r4, 1 - adds r4, r0, r1 -_080157F8: - adds r2, r3, 0 - ands r2, r7 - asrs r2, 1 - add r2, r12 - ldrh r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - adds r3, 0x1 - ldrb r0, [r5] - cmp r3, r0 - blt _080157F8 -_08015816: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801581C: .4byte gNoOfAllBanks -_08015820: .4byte gSentPokesToOpponent -_08015824: .4byte gBitTable -_08015828: .4byte gBattlePartyID - thumb_func_end sub_80157C4 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_9.s b/asm/battle_9.s index dce32d076..b86914ca6 100644 --- a/asm/battle_9.s +++ b/asm/battle_9.s @@ -95,7 +95,7 @@ _0803609C: .4byte 0x000160c8 _080360A0: ldr r4, _080361D8 @ =gBattleMons movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 movs r1, 0x58 @@ -108,7 +108,7 @@ _080360A0: b _080361C8 _080360BC: movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r2, r0, 24 movs r6, 0 @@ -187,7 +187,7 @@ _08036110: movs r1, 0x2E bl GetMonData movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r2, r0, 24 movs r4, 0 @@ -312,7 +312,7 @@ _08036242: eors r0, r4 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _08036290 @ =gAbsentBankFlags ldrb r1, [r1] ldr r2, _08036294 @ =gBitTable @@ -339,7 +339,7 @@ _08036298: eors r0, r4 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r7, r0, 24 b _080362B2 @@ -656,7 +656,7 @@ ai_has_super_effective_move_on_field: @ 8036514 lsrs r0, 24 mov r8, r0 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r3, r0, 24 ldr r0, _080365AC @ =gAbsentBankFlags @@ -733,7 +733,7 @@ _080365C0: b _08036640 _080365C4: movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r3, r0, 24 ldr r0, _0803664C @ =gAbsentBankFlags @@ -909,7 +909,7 @@ _080366F6: eors r0, r4 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _08036748 @ =gAbsentBankFlags ldrb r1, [r1] ldr r2, _0803674C @ =gBitTable @@ -938,7 +938,7 @@ _08036750: eors r0, r4 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 mov r10, r0 @@ -1238,7 +1238,7 @@ _080369A0: eors r0, r5 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _080369F4 @ =gAbsentBankFlags ldrb r1, [r1] ldr r2, _080369F8 @ =gBitTable @@ -1265,7 +1265,7 @@ _080369FC: eors r0, r5 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r6, r0, 24 b _08036A18 @@ -1427,7 +1427,7 @@ _08036B28: cmp r0, 0 bne _08036B78 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 adds r6, r5, 0 @@ -1439,11 +1439,11 @@ _08036B70: .4byte gActiveBank _08036B74: .4byte 0x000160c8 _08036B78: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r6, r0, 24 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 _08036B8C: @@ -1636,7 +1636,7 @@ sub_8036CD4: @ 8036CD4 eors r0, r5 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _08036D24 @ =gAbsentBankFlags ldrb r1, [r1] ldr r2, _08036D28 @ =gBitTable @@ -1661,7 +1661,7 @@ _08036D2C: eors r0, r5 lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 str r0, [sp, 0x10] @@ -1692,7 +1692,7 @@ _08036D70: .4byte gAbsentBankFlags _08036D74: .4byte gBitTable _08036D78: movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 mov r10, r0 @@ -2598,7 +2598,7 @@ _08037468: ldrb r0, [r0, 0x16] cmp r0, 0 beq _080374A8 - ldr r0, _080374A4 @ =gSideTimer + ldr r0, _080374A4 @ =gSideTimers lsls r1, r3, 1 adds r1, r3 lsls r1, 2 @@ -2613,7 +2613,7 @@ _08037496: .align 2, 0 _0803749C: .4byte gActiveBank _080374A0: .4byte gDisableStructs -_080374A4: .4byte gSideTimer +_080374A4: .4byte gSideTimers _080374A8: mov r1, r8 cmp r1, 0 diff --git a/asm/battle_anim_813F0F4.s b/asm/battle_anim_813F0F4.s index 73f399caa..fb9c25a82 100644 --- a/asm/battle_anim_813F0F4.s +++ b/asm/battle_anim_813F0F4.s @@ -1366,7 +1366,7 @@ _0813FBE0: lsls r4, 24 lsrs r4, 24 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 bl sub_8079E90 @@ -1418,7 +1418,7 @@ _0813FBE0: ldr r0, _0813FCAC @ =SpriteCallbackDummy str r0, [r4] movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _0813FCB0 @ =gObjectBankIDs lsls r0, 24 lsrs r0, 24 @@ -1462,7 +1462,7 @@ sub_813FCBC: @ 813FCBC lsrs r5, r0, 24 ldr r6, _0813FD1C @ =gSprites movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _0813FD20 @ =gObjectBankIDs lsls r0, 24 lsrs r0, 24 @@ -1519,7 +1519,7 @@ sub_813FD34: @ 813FD34 lsrs r5, r0, 24 ldr r6, _0813FD88 @ =gSprites movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r4, _0813FD8C @ =gObjectBankIDs lsls r0, 24 lsrs r0, 24 @@ -1535,7 +1535,7 @@ sub_813FD34: @ 813FD34 cmp r0, 0 bge _0813FD80 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r0, r4 @@ -5483,7 +5483,7 @@ sub_8141C30: @ 8141C30 movs r0, 0x1E strh r0, [r4, 0x2E] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 movs r1, 0 @@ -5495,7 +5495,7 @@ sub_8141C30: @ 8141C30 adds r0, r1 strh r0, [r4, 0x32] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 movs r1, 0x1 @@ -5644,11 +5644,11 @@ sub_8141D7C: @ 8141D7C lsls r4, 24 lsrs r4, 24 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _08141DA4 @ =gAnimBankAttacker strb r0, [r1] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, _08141DA8 @ =gAnimBankTarget strb r0, [r1] adds r0, r4, 0 diff --git a/asm/battle_intro.s b/asm/battle_intro.s index 10b504a79..4bfcf42fb 100755 --- a/asm/battle_intro.s +++ b/asm/battle_intro.s @@ -1474,7 +1474,7 @@ sub_80E4EF8: @ 80E4EF8 lsls r5, 24 lsrs r5, 24 adds r0, r4, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 ldr r2, _080E4FCC @ =0x040000d4 diff --git a/asm/contest_link_80C2020.s b/asm/contest_link_80C2020.s index 6bd98cc8a..608daba87 100644 --- a/asm/contest_link_80C2020.s +++ b/asm/contest_link_80C2020.s @@ -82,9 +82,9 @@ sub_80C2020: @ 80C2020 adds r1, r3, 0 orrs r0, r1 strh r0, [r5] - ldr r0, _080C2114 @ =gUnknown_030042A4 + ldr r0, _080C2114 @ =gBattle_BG0_X strh r2, [r0] - ldr r0, _080C2118 @ =gUnknown_030042A0 + ldr r0, _080C2118 @ =gBattle_BG0_Y strh r2, [r0] ldr r0, _080C211C @ =gBattle_BG1_X strh r2, [r0] @@ -119,8 +119,8 @@ _080C2104: .4byte 0x00003a03 _080C2108: .4byte REG_MOSAIC _080C210C: .4byte 0x00003f3f _080C2110: .4byte REG_WIN0H -_080C2114: .4byte gUnknown_030042A4 -_080C2118: .4byte gUnknown_030042A0 +_080C2114: .4byte gBattle_BG0_X +_080C2118: .4byte gBattle_BG0_Y _080C211C: .4byte gBattle_BG1_X _080C2120: .4byte gBattle_BG1_Y _080C2124: .4byte gBattle_BG2_X @@ -482,11 +482,11 @@ sub_80C2430: @ 80C2430 sub_80C2448: @ 80C2448 push {lr} ldr r1, _080C24C0 @ =REG_BG0HOFS - ldr r0, _080C24C4 @ =gUnknown_030042A4 + ldr r0, _080C24C4 @ =gBattle_BG0_X ldrh r0, [r0] strh r0, [r1] adds r1, 0x2 - ldr r0, _080C24C8 @ =gUnknown_030042A0 + ldr r0, _080C24C8 @ =gBattle_BG0_Y ldrh r0, [r0] strh r0, [r1] adds r1, 0x2 @@ -537,8 +537,8 @@ sub_80C2448: @ 80C2448 bx r0 .align 2, 0 _080C24C0: .4byte REG_BG0HOFS -_080C24C4: .4byte gUnknown_030042A4 -_080C24C8: .4byte gUnknown_030042A0 +_080C24C4: .4byte gBattle_BG0_X +_080C24C8: .4byte gBattle_BG0_Y _080C24CC: .4byte gBattle_BG1_X _080C24D0: .4byte gBattle_BG1_Y _080C24D4: .4byte gBattle_BG2_X diff --git a/asm/dark.s b/asm/dark.s index 3fcc3f56c..f3274861c 100755 --- a/asm/dark.s +++ b/asm/dark.s @@ -1940,7 +1940,7 @@ _080E0E8A: beq _080E0EB6 _080E0E90: adds r0, r4, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 @@ -2701,7 +2701,7 @@ sub_80D8BA8: @ 80D8BA8 ldrh r0, [r4, 0x2] lsls r0, 20 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 adds r0, r5, 0 diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s index 822c4c566..a8b8fa401 100644 --- a/asm/pokemon_item_effect.s +++ b/asm/pokemon_item_effect.s @@ -529,7 +529,7 @@ _0803E59C: adds r6, r2, 0 cmp r0, 0 beq _0803E5E4 - ldr r5, _0803E758 @ =gSideTimer + ldr r5, _0803E758 @ =gSideTimers ldr r4, _0803E75C @ =gActiveBank ldrb r0, [r4] bl GetBankSide @@ -738,7 +738,7 @@ _0803E74E: str r5, [sp, 0x1C] bl _0803F14C .align 2, 0 -_0803E758: .4byte gSideTimer +_0803E758: .4byte gSideTimers _0803E75C: .4byte gActiveBank _0803E760: .4byte gExperienceTables _0803E764: .4byte gBaseStats diff --git a/asm/psychic.s b/asm/psychic.s index 7a6000335..20e558bf6 100755 --- a/asm/psychic.s +++ b/asm/psychic.s @@ -39,7 +39,7 @@ _080DB77E: cmp r0, 0 bne _080DB7DA movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r7, r4, 0 @@ -274,7 +274,7 @@ sub_80DB92C: @ 80DB92C cmp r0, 0 bne _080DB9BC movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r6, r4, 0 @@ -349,7 +349,7 @@ sub_80DB9E4: @ 80DB9E4 cmp r0, 0 bne _080DBA3C movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r4, r0, 0 diff --git a/asm/roulette.s b/asm/roulette.s deleted file mode 100644 index 04b3ac9b8..000000000 --- a/asm/roulette.s +++ /dev/null @@ -1,9658 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_81150FC -sub_81150FC: @ 81150FC - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - ldr r0, _08115120 @ =gSharedMem + 0x19000 - adds r1, r0, 0 - adds r1, 0xB8 - ldrb r0, [r1] - cmp r0, 0 - beq _0811511C - adds r0, r1, 0 - bl task_tutorial_controls_fadein -_0811511C: - pop {r0} - bx r0 - .align 2, 0 -_08115120: .4byte gSharedMem + 0x19000 - thumb_func_end sub_81150FC - - thumb_func_start sub_8115124 -sub_8115124: @ 8115124 - push {r4,lr} - sub sp, 0x4 - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_8117434 - ldr r2, _08115188 @ =REG_BG1HOFS - ldr r3, _0811518C @ =gSharedMem + 0x19000 - ldrh r1, [r3, 0x26] - movs r4, 0x80 - lsls r4, 2 - adds r0, r4, 0 - subs r0, r1 - strh r0, [r2] - ldrb r0, [r3, 0x1] - cmp r0, 0 - beq _08115154 - ldr r1, _08115190 @ =REG_BLDALPHA - ldrh r0, [r3, 0x34] - strh r0, [r1] -_08115154: - movs r1, 0x2A - ldrsh r0, [r3, r1] - cmp r0, 0 - beq _08115170 - ldr r1, _08115194 @ =0x040000d4 - ldr r0, _08115198 @ =gBGTilemapBuffers + 0x800 + 0x1C0 - str r0, [r1] - ldr r0, _0811519C @ =0x060021c0 - str r0, [r1, 0x4] - ldr r0, _081151A0 @ =0x800001a0 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r0, 0 - strh r0, [r3, 0x2A] -_08115170: - movs r2, 0x28 - ldrsh r0, [r3, r2] - cmp r0, 0x1 - beq _081151A4 - cmp r0, 0x1 - ble _0811521A - cmp r0, 0x2 - beq _081151D4 - cmp r0, 0xFF - beq _081151F8 - b _0811521A - .align 2, 0 -_08115188: .4byte REG_BG1HOFS -_0811518C: .4byte gSharedMem + 0x19000 -_08115190: .4byte REG_BLDALPHA -_08115194: .4byte 0x040000d4 -_08115198: .4byte gBGTilemapBuffers + 0x800 + 0x1C0 -_0811519C: .4byte 0x060021c0 -_081151A0: .4byte 0x800001a0 -_081151A4: - ldr r1, _081151C4 @ =REG_BG0CNT - movs r4, 0xF8 - lsls r4, 5 - adds r0, r4, 0 - strh r0, [r1] - adds r1, 0xCC - ldr r0, _081151C8 @ =gBGTilemapBuffers + 0x1000 + 0x1C0 - str r0, [r1] - ldr r0, _081151CC @ =0x0600f9c0 - str r0, [r1, 0x4] - ldr r0, _081151D0 @ =0x800001a0 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r0, 0x2 - b _08115218 - .align 2, 0 -_081151C4: .4byte REG_BG0CNT -_081151C8: .4byte gBGTilemapBuffers + 0x1000 + 0x1C0 -_081151CC: .4byte 0x0600f9c0 -_081151D0: .4byte 0x800001a0 -_081151D4: - ldr r1, _081151E8 @ =0x040000d4 - ldr r0, _081151EC @ =gBGTilemapBuffers + 0x1000 + 0x1C0 - str r0, [r1] - ldr r0, _081151F0 @ =0x0600f9c0 - str r0, [r1, 0x4] - ldr r0, _081151F4 @ =0x800001a0 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - b _0811521A - .align 2, 0 -_081151E8: .4byte 0x040000d4 -_081151EC: .4byte gBGTilemapBuffers + 0x1000 + 0x1C0 -_081151F0: .4byte 0x0600f9c0 -_081151F4: .4byte 0x800001a0 -_081151F8: - ldr r1, _08115224 @ =REG_BG0CNT - ldr r2, _08115228 @ =0x00001f08 - adds r0, r2, 0 - strh r0, [r1] - mov r1, sp - movs r0, 0 - strh r0, [r1] - ldr r1, _0811522C @ =0x040000d4 - mov r4, sp - str r4, [r1] - ldr r0, _08115230 @ =0x0600f9c0 - str r0, [r1, 0x4] - ldr r0, _08115234 @ =0x810001a0 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r0, 0 -_08115218: - strh r0, [r3, 0x28] -_0811521A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08115224: .4byte REG_BG0CNT -_08115228: .4byte 0x00001f08 -_0811522C: .4byte 0x040000d4 -_08115230: .4byte 0x0600f9c0 -_08115234: .4byte 0x810001a0 - thumb_func_end sub_8115124 - - thumb_func_start sub_8115238 -sub_8115238: @ 8115238 - push {r4-r6,lr} - sub sp, 0x8 - ldr r1, _081152C0 @ =gUnknown_083F8EC4 - mov r0, sp - movs r2, 0x6 - bl memcpy - ldr r5, _081152C4 @ =gSharedMem + 0x19000 - movs r2, 0xBE - lsls r2, 1 - adds r0, r5, 0 - movs r1, 0 - bl memset - ldr r0, _081152C8 @ =gSpecialVar_0x8004 - ldrh r2, [r0] - movs r0, 0x1 - ands r0, r2 - ldrb r1, [r5, 0x4] - movs r3, 0x4 - negs r3, r3 - ands r3, r1 - orrs r3, r0 - strb r3, [r5, 0x4] - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _08115276 - movs r0, 0x80 - orrs r3, r0 - strb r3, [r5, 0x4] -_08115276: - ldr r3, _081152CC @ =gUnknown_083F8DF4 - ldrb r2, [r5, 0x4] - lsls r1, r2, 30 - lsrs r0, r1, 25 - adds r0, r3 - ldrb r0, [r0, 0x3] - adds r4, r5, 0 - adds r4, 0x22 - strb r0, [r4] - lsrs r0, r1, 25 - adds r0, r3 - ldrb r0, [r0, 0x4] - adds r3, r5, 0 - adds r3, 0x23 - strb r0, [r3] - ldr r0, _081152D0 @ =gUnknown_083F8DF0 - lsrs r1, 30 - lsls r2, 24 - lsrs r2, 31 - lsls r2, 1 - adds r1, r2 - adds r1, r0 - ldrb r2, [r1] - strb r2, [r5, 0x19] - ldrb r1, [r5, 0x1A] - movs r0, 0xF - ands r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r5, 0x1A] - cmp r2, 0x1 - bne _081152DC - ldr r4, _081152D4 @ =gPlttBufferUnfaded - ldr r3, _081152D8 @ =gPlttBufferFaded - mov r0, sp - ldrh r2, [r0] - b _081152E4 - .align 2, 0 -_081152C0: .4byte gUnknown_083F8EC4 -_081152C4: .4byte gSharedMem + 0x19000 -_081152C8: .4byte gSpecialVar_0x8004 -_081152CC: .4byte gUnknown_083F8DF4 -_081152D0: .4byte gUnknown_083F8DF0 -_081152D4: .4byte gPlttBufferUnfaded -_081152D8: .4byte gPlttBufferFaded -_081152DC: - ldr r4, _08115348 @ =gPlttBufferUnfaded - ldr r3, _0811534C @ =gPlttBufferFaded - mov r0, sp - ldrh r2, [r0, 0x2] -_081152E4: - adds r0, r3, 0 - adds r0, 0xA2 - strh r2, [r0] - ldr r1, _08115350 @ =0x0000ffff - adds r0, r1, 0 - ands r0, r2 - strh r0, [r3] - ands r0, r1 - adds r2, r4, 0 - adds r2, 0xA2 - strh r0, [r2] - ands r0, r1 - strh r0, [r4] - ldr r0, _08115354 @ =gSharedMem + 0x190B8 - bl sub_8124918 - movs r4, 0 - ldr r5, _08115358 @ =gUnknown_083F8E34 -_08115308: - lsls r2, r4, 3 - adds r2, r5 - ldr r0, _08115354 @ =gSharedMem + 0x190B8 - adds r1, r4, 0 - bl sub_812492C - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xC - bls _08115308 - movs r4, 0 - ldr r5, _0811535C @ =gSharedMem + 0x19000 -_08115322: - movs r0, 0x64 - muls r0, r4 - ldr r1, _08115360 @ =gPlayerParty - adds r0, r1 - movs r1, 0x41 - bl GetMonData - adds r1, r0, 0 - movs r0, 0x98 - lsls r0, 1 - cmp r1, r0 - beq _08115364 - adds r0, 0x2 - cmp r1, r0 - bne _0811536C - ldrb r0, [r5, 0x2] - movs r1, 0x1 - b _08115368 - .align 2, 0 -_08115348: .4byte gPlttBufferUnfaded -_0811534C: .4byte gPlttBufferFaded -_08115350: .4byte 0x0000ffff -_08115354: .4byte gSharedMem + 0x190B8 -_08115358: .4byte gUnknown_083F8E34 -_0811535C: .4byte gSharedMem + 0x19000 -_08115360: .4byte gPlayerParty -_08115364: - ldrb r0, [r5, 0x2] - movs r1, 0x2 -_08115368: - orrs r0, r1 - strb r0, [r5, 0x2] -_0811536C: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _08115322 - bl RtcCalcLocalTime - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8115238 - - thumb_func_start sub_8115384 -sub_8115384: @ 8115384 - push {r4,lr} - sub sp, 0x4 - ldr r1, _081153A4 @ =gMain - ldr r2, _081153A8 @ =0x0000043c - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x7 - bls _08115398 - b _081155FE -_08115398: - lsls r0, 2 - ldr r1, _081153AC @ =_081153B0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_081153A4: .4byte gMain -_081153A8: .4byte 0x0000043c -_081153AC: .4byte _081153B0 - .align 2, 0 -_081153B0: - .4byte _081153D0 - .4byte _08115444 - .4byte _08115460 - .4byte _08115494 - .4byte _081154CC - .4byte _081154FC - .4byte _0811556C - .4byte _0811558C -_081153D0: - movs r0, 0 - bl SetVBlankCallback - bl remove_some_task - bl sub_80F9438 - bl sub_80F9368 - ldr r1, _08115420 @ =REG_BG2CNT - ldr r3, _08115424 @ =0x00004686 - adds r0, r3, 0 - strh r0, [r1] - subs r1, 0x2 - ldr r2, _08115428 @ =0x00004401 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x46 - movs r3, 0x90 - lsls r3, 6 - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _0811542C @ =0x0000060a - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08115430 @ =gUnknown_08E8096C - movs r1, 0xC0 - lsls r1, 19 - bl LZ77UnCompVram - ldr r0, _08115434 @ =gRouletteWheelTiles - ldr r1, _08115438 @ =0x06004000 - bl LZ77UnCompVram - ldr r1, _0811543C @ =gMain - ldr r3, _08115440 @ =0x0000043c - adds r1, r3 - b _0811557A - .align 2, 0 -_08115420: .4byte REG_BG2CNT -_08115424: .4byte 0x00004686 -_08115428: .4byte 0x00004401 -_0811542C: .4byte 0x0000060a -_08115430: .4byte gUnknown_08E8096C -_08115434: .4byte gRouletteWheelTiles -_08115438: .4byte 0x06004000 -_0811543C: .4byte gMain -_08115440: .4byte 0x0000043c -_08115444: - bl ResetPaletteFade - bl ResetSpriteData - bl ResetTasks - ldr r1, _08115458 @ =gMain - ldr r0, _0811545C @ =0x0000043c - adds r1, r0 - b _0811557A - .align 2, 0 -_08115458: .4byte gMain -_0811545C: .4byte 0x0000043c -_08115460: - ldr r0, _08115480 @ =gWindowConfig_81E6C3C - bl SetUpWindowConfig - ldr r0, _08115484 @ =gWindowConfig_81E6CE4 - bl InitMenuWindow - ldr r0, _08115488 @ =gUnknown_083F86BC - movs r2, 0xE0 - lsls r2, 1 - movs r1, 0 - bl LoadPalette - ldr r1, _0811548C @ =gMain - ldr r2, _08115490 @ =0x0000043c - adds r1, r2 - b _0811557A - .align 2, 0 -_08115480: .4byte gWindowConfig_81E6C3C -_08115484: .4byte gWindowConfig_81E6CE4 -_08115488: .4byte gUnknown_083F86BC -_0811548C: .4byte gMain -_08115490: .4byte 0x0000043c -_08115494: - bl sub_8115238 - bl sub_80F9020 - ldr r0, _081154B4 @ =gUnknown_083F88BC - ldr r1, _081154B8 @ =gSharedMem + 0x18800 - bl LZ77UnCompWram - ldr r0, _081154BC @ =gUnknown_083F8A60 - ldr r1, _081154C0 @ =0x06003000 - bl LZ77UnCompVram - ldr r1, _081154C4 @ =gMain - ldr r3, _081154C8 @ =0x0000043c - adds r1, r3 - b _0811557A - .align 2, 0 -_081154B4: .4byte gUnknown_083F88BC -_081154B8: .4byte gSharedMem + 0x18800 -_081154BC: .4byte gUnknown_083F8A60 -_081154C0: .4byte 0x06003000 -_081154C4: .4byte gMain -_081154C8: .4byte 0x0000043c -_081154CC: - movs r0, 0 - bl sub_8117838 - bl sub_811857C - bl sub_81184D8 - bl sub_8117F2C - bl sub_8117900 - bl sub_8117BBC - bl sub_8117DF4 - ldr r1, _081154F4 @ =gMain - ldr r0, _081154F8 @ =0x0000043c - adds r1, r0 - b _0811557A - .align 2, 0 -_081154F4: .4byte gMain -_081154F8: .4byte 0x0000043c -_081154FC: - bl AnimateSprites - bl BuildOamBuffer - ldr r0, _08115550 @ =gSaveBlock1 - ldr r1, _08115554 @ =0x00000494 - adds r0, r1 - ldrh r0, [r0] - bl sub_81180F4 - movs r0, 0x6 - bl sub_81182F8 - movs r0, 0 - bl sub_811829C - movs r0, 0 - bl sub_8117158 - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _08115558 @ =gUnknown_081C4157 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _0811555C @ =gSpriteCoordOffsetX - movs r2, 0x3C - negs r2, r2 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08115560 @ =gSpriteCoordOffsetY - movs r0, 0 - strh r0, [r1] - ldr r1, _08115564 @ =gMain - ldr r3, _08115568 @ =0x0000043c - adds r1, r3 - b _0811557A - .align 2, 0 -_08115550: .4byte gSaveBlock1 -_08115554: .4byte 0x00000494 -_08115558: .4byte gUnknown_081C4157 -_0811555C: .4byte gSpriteCoordOffsetX -_08115560: .4byte gSpriteCoordOffsetY -_08115564: .4byte gMain -_08115568: .4byte 0x0000043c -_0811556C: - movs r1, 0x80 - lsls r1, 19 - ldr r3, _08115584 @ =0x00001741 - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _08115588 @ =0x0000043c - adds r1, r2, r0 -_0811557A: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _081155FE - .align 2, 0 -_08115584: .4byte 0x00001741 -_08115588: .4byte 0x0000043c -_0811558C: - ldr r3, _08115608 @ =0x04000208 - ldrh r2, [r3] - movs r0, 0 - strh r0, [r3] - ldr r4, _0811560C @ =0x04000200 - ldrh r0, [r4] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r4] - strh r2, [r3] - ldr r2, _08115610 @ =REG_DISPSTAT - ldrh r0, [r2] - movs r1, 0x8 - orrs r0, r1 - strh r0, [r2] - ldr r0, _08115614 @ =sub_8115124 - bl SetVBlankCallback - movs r0, 0x1 - str r0, [sp] - movs r0, 0xFF - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginHardwarePaletteFade - ldr r0, _08115618 @ =sub_81156BC - movs r1, 0 - bl CreateTask - ldr r4, _0811561C @ =gSharedMem + 0x19000 - adds r1, r4, 0 - adds r1, 0xA4 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08115620 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0x6 - strh r0, [r1, 0x14] - ldr r0, _08115624 @ =gSaveBlock1 - ldr r2, _08115628 @ =0x00000494 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1, 0x22] - ldr r0, _0811562C @ =sub_8115634 - movs r1, 0x1 - bl CreateTask - adds r4, 0xA5 - strb r0, [r4] - ldr r0, _08115630 @ =sub_81150FC - bl SetMainCallback2 -_081155FE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08115608: .4byte 0x04000208 -_0811560C: .4byte 0x04000200 -_08115610: .4byte REG_DISPSTAT -_08115614: .4byte sub_8115124 -_08115618: .4byte sub_81156BC -_0811561C: .4byte gSharedMem + 0x19000 -_08115620: .4byte gTasks -_08115624: .4byte gSaveBlock1 -_08115628: .4byte 0x00000494 -_0811562C: .4byte sub_8115634 -_08115630: .4byte sub_81150FC - thumb_func_end sub_8115384 - - thumb_func_start sub_8115634 -sub_8115634: @ 8115634 - push {r4-r6,lr} - ldr r0, _081156B8 @ =gSharedMem + 0x19000 - adds r3, r0, 0 - adds r3, 0x21 - ldrb r1, [r3] - adds r2, r1, 0x1 - strb r2, [r3] - adds r2, r0, 0 - adds r2, 0x23 - lsls r1, 24 - lsrs r1, 24 - adds r6, r0, 0 - ldrb r2, [r2] - cmp r1, r2 - bne _08115674 - movs r0, 0 - strb r0, [r3] - adds r2, r6, 0 - adds r2, 0x22 - ldrb r1, [r2] - ldrh r0, [r6, 0x24] - subs r0, r1 - strh r0, [r6, 0x24] - lsls r0, 16 - cmp r0, 0 - bge _08115674 - ldrb r1, [r2] - movs r2, 0xB4 - lsls r2, 1 - adds r0, r2, 0 - subs r0, r1 - strh r0, [r6, 0x24] -_08115674: - adds r4, r6, 0 - ldrh r0, [r4, 0x24] - bl Sin2 - lsls r0, 16 - lsrs r5, r0, 16 - ldrh r0, [r4, 0x24] - bl Cos2 - lsls r0, 16 - lsrs r1, r0, 16 - lsls r0, r5, 16 - asrs r0, 16 - cmp r0, 0 - bge _08115694 - adds r0, 0xF -_08115694: - lsls r0, 12 - lsrs r5, r0, 16 - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, 0 - bge _081156A2 - adds r0, 0xF -_081156A2: - asrs r0, 4 - strh r0, [r6, 0x32] - strh r0, [r6, 0x2C] - strh r5, [r6, 0x2E] - lsls r0, r5, 16 - asrs r0, 16 - negs r0, r0 - strh r0, [r6, 0x30] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081156B8: .4byte gSharedMem + 0x19000 - thumb_func_end sub_8115634 - - thumb_func_start sub_81156BC -sub_81156BC: @ 81156BC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl UpdatePaletteFade - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - bne _08115716 - ldr r2, _0811571C @ =REG_BLDCNT - ldrh r0, [r2] - movs r5, 0x90 - lsls r5, 6 - adds r1, r5, 0 - orrs r0, r1 - strh r0, [r2] - ldr r1, _08115720 @ =REG_BLDALPHA - ldr r2, _08115724 @ =0x00000808 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08115728 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - strh r3, [r0, 0x14] - adds r0, r4, 0 - bl sub_8116CAC - bl sub_8116CF8 - bl sub_81185E8 - movs r0, 0 - bl sub_8117158 - movs r0, 0x6 - bl sub_81182F8 - ldr r1, _0811572C @ =sub_81159BC - ldr r2, _08115730 @ =0x0000ffff - adds r0, r4, 0 - movs r3, 0x3 - bl sub_8116C34 -_08115716: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811571C: .4byte REG_BLDCNT -_08115720: .4byte REG_BLDALPHA -_08115724: .4byte 0x00000808 -_08115728: .4byte gTasks -_0811572C: .4byte sub_81159BC -_08115730: .4byte 0x0000ffff - thumb_func_end sub_81156BC - - thumb_func_start sub_8115734 -sub_8115734: @ 8115734 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _08115770 @ =0x00002d9e - bl sub_814AAF8 - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _08115774 @ =gUnknown_081C41E3 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _08115778 @ =gUnknown_083F8EBC - adds r0, r4, 0 - bl DoYesNoFuncWithChoice - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08115770: .4byte 0x00002d9e -_08115774: .4byte gUnknown_081C41E3 -_08115778: .4byte gUnknown_083F8EBC - thumb_func_end sub_8115734 - - thumb_func_start sub_811577C -sub_811577C: @ 811577C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1A - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r1, _081157A4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081157A8 @ =sub_81159BC - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081157A4: .4byte gTasks -_081157A8: .4byte sub_81159BC - thumb_func_end sub_811577C - - thumb_func_start sub_81157AC -sub_81157AC: @ 81157AC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _081157CC @ =gSharedMem + 0x19000 - adds r0, 0xA5 - ldrb r0, [r0] - bl DestroyTask - adds r0, r4, 0 - bl sub_8116AB0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081157CC: .4byte gSharedMem + 0x19000 - thumb_func_end sub_81157AC - - thumb_func_start sub_81157D0 -sub_81157D0: @ 81157D0 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bhi _081158C8 - lsls r0, r4, 2 - ldr r1, _081157E8 @ =_081157EC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_081157E8: .4byte _081157EC - .align 2, 0 -_081157EC: - .4byte _0811582C - .4byte _08115848 - .4byte _08115848 - .4byte _08115848 - .4byte _08115848 - .4byte _08115884 - .4byte _081158C8 - .4byte _081158C8 - .4byte _081158C8 - .4byte _081158C8 - .4byte _08115884 - .4byte _081158C8 - .4byte _081158C8 - .4byte _081158C8 - .4byte _081158C8 - .4byte _08115884 -_0811582C: - ldr r0, _08115844 @ =gBGTilemapBuffers + 0x1000 - movs r1, 0x10 - str r1, [sp] - movs r1, 0xD - str r1, [sp, 0x4] - movs r1, 0 - movs r2, 0xE - movs r3, 0x7 - bl sub_8124DDC - b _08115918 - .align 2, 0 -_08115844: .4byte gBGTilemapBuffers + 0x1000 -_08115848: - lsls r0, r4, 1 - adds r0, r4 - adds r0, 0xE - lsls r0, 24 - lsrs r7, r0, 24 - ldr r5, _0811587C @ =gBGTilemapBuffers + 0x1000 - movs r0, 0x10 - str r0, [sp] - movs r4, 0xD - str r4, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0xE - movs r3, 0x7 - bl sub_8124DDC - ldr r1, _08115880 @ =gSharedMem + 0x18A32 - movs r0, 0x3 - str r0, [sp] - str r4, [sp, 0x4] - adds r0, r5, 0 - adds r2, r7, 0 - movs r3, 0x7 - bl sub_8124E2C - b _08115918 - .align 2, 0 -_0811587C: .4byte gBGTilemapBuffers + 0x1000 -_08115880: .4byte gSharedMem + 0x18A32 -_08115884: - subs r0, r4, 0x1 - movs r1, 0x5 - bl __divsi3 - lsls r1, r0, 1 - adds r1, r0 - adds r1, 0xA - lsls r1, 24 - lsrs r6, r1, 24 - ldr r5, _081158C0 @ =gBGTilemapBuffers + 0x1000 - movs r4, 0x10 - str r4, [sp] - movs r0, 0xD - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0xE - movs r3, 0x7 - bl sub_8124DDC - ldr r1, _081158C4 @ =gSharedMem + 0x18A80 - str r4, [sp] - movs r0, 0x3 - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r2, 0xE - adds r3, r6, 0 - bl sub_8124E2C - b _08115918 - .align 2, 0 -_081158C0: .4byte gBGTilemapBuffers + 0x1000 -_081158C4: .4byte gSharedMem + 0x18A80 -_081158C8: - adds r0, r4, 0 - movs r1, 0x5 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - adds r1, 0xE - lsls r1, 24 - lsrs r7, r1, 24 - subs r0, r4, 0x1 - movs r1, 0x5 - bl __divsi3 - lsls r1, r0, 1 - adds r1, r0 - adds r1, 0x7 - lsls r1, 24 - lsrs r6, r1, 24 - ldr r4, _08115920 @ =gBGTilemapBuffers + 0x1000 - movs r0, 0x10 - str r0, [sp] - movs r0, 0xD - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0xE - movs r3, 0x7 - bl sub_8124DDC - ldr r1, _08115924 @ =gSharedMem + 0x18A20 - movs r0, 0x3 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r4, 0 - adds r2, r7, 0 - adds r3, r6, 0 - bl sub_8124E2C -_08115918: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08115920: .4byte gBGTilemapBuffers + 0x1000 -_08115924: .4byte gSharedMem + 0x18A20 - thumb_func_end sub_81157D0 - - thumb_func_start sub_8115928 -sub_8115928: @ 8115928 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - cmp r1, 0 - bne _0811594C - ldr r1, _08115948 @ =gTasks - lsls r4, r5, 2 - adds r0, r4, r5 - lsls r0, 3 - adds r0, r1 - ldrb r0, [r0, 0x10] - bl sub_811829C - b _08115960 - .align 2, 0 -_08115948: .4byte gTasks -_0811594C: - ldr r0, _08115974 @ =gSharedMem + 0x19000 - ldrb r1, [r0, 0x1A] - lsls r1, 28 - lsrs r1, 28 - adds r0, 0x1B - adds r1, r0 - ldrb r0, [r1] - bl sub_811829C - lsls r4, r5, 2 -_08115960: - ldr r0, _08115978 @ =gTasks - adds r1, r4, r5 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0x10] - bl sub_81157D0 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08115974: .4byte gSharedMem + 0x19000 -_08115978: .4byte gTasks - thumb_func_end sub_8115928 - - thumb_func_start sub_811597C -sub_811597C: @ 811597C - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r5, _081159B0 @ =gSharedMem + 0x19000 - movs r6, 0 - movs r1, 0x1 - strh r1, [r5, 0x28] - ldr r1, _081159B4 @ =gTasks - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - adds r4, r1 - ldrb r0, [r4, 0x10] - bl sub_81157D0 - adds r1, r5, 0 - adds r1, 0x23 - movs r0, 0x2 - strb r0, [r1] - adds r5, 0x21 - strb r6, [r5] - ldr r0, _081159B8 @ =sub_8115E14 - str r0, [r4] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081159B0: .4byte gSharedMem + 0x19000 -_081159B4: .4byte gTasks -_081159B8: .4byte sub_8115E14 - thumb_func_end sub_811597C - - thumb_func_start sub_81159BC -sub_81159BC: @ 81159BC - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r3, _08115A10 @ =gSharedMem + 0x19000 - ldr r1, [r3, 0x8] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08115A1C - movs r2, 0xB - ldr r5, _08115A14 @ =gUnknown_083F8C00 - adds r0, r5, 0 - adds r0, 0xE4 - ldr r0, [r0] - ands r1, r0 - ldr r0, _08115A18 @ =gTasks - mov r12, r0 - lsls r7, r6, 2 - cmp r1, 0 - beq _08115A5A - adds r4, r3, 0 - adds r3, r5, 0 - adds r3, 0x8 -_081159EA: - lsls r0, r2, 16 - movs r1, 0x80 - lsls r1, 9 - adds r0, r1 - lsrs r2, r0, 16 - asrs r1, r0, 16 - cmp r1, 0xD - bgt _08115A5A - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldr r1, [r4, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _081159EA - b _08115A5A - .align 2, 0 -_08115A10: .4byte gSharedMem + 0x19000 -_08115A14: .4byte gUnknown_083F8C00 -_08115A18: .4byte gTasks -_08115A1C: - movs r2, 0x6 - ldr r5, _08115A88 @ =gUnknown_083F8C00 - adds r0, r5, 0 - adds r0, 0x80 - ldr r0, [r0] - ands r1, r0 - ldr r0, _08115A8C @ =gTasks - mov r12, r0 - lsls r7, r6, 2 - cmp r1, 0 - beq _08115A5A - adds r4, r3, 0 - adds r3, r5, 0 - adds r3, 0x8 -_08115A38: - lsls r0, r2, 16 - movs r1, 0x80 - lsls r1, 9 - adds r0, r1 - lsrs r2, r0, 16 - asrs r1, r0, 16 - cmp r1, 0x9 - bgt _08115A5A - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldr r1, [r4, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08115A38 -_08115A5A: - adds r4, r7, r6 - lsls r4, 3 - add r4, r12 - movs r5, 0 - strh r2, [r4, 0x10] - adds r0, r6, 0 - bl sub_8116CAC - ldrb r0, [r4, 0x10] - bl sub_8117158 - ldrb r0, [r4, 0x10] - bl sub_811829C - ldrb r0, [r4, 0x10] - bl sub_8116EF8 - strh r5, [r4, 0xA] - ldr r0, _08115A90 @ =sub_811597C - str r0, [r4] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08115A88: .4byte gUnknown_083F8C00 -_08115A8C: .4byte gTasks -_08115A90: .4byte sub_811597C - thumb_func_end sub_81159BC - - thumb_func_start sub_8115A94 -sub_8115A94: @ 8115A94 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - movs r6, 0 - movs r7, 0 - ldr r1, _08115ADC @ =gUnknown_083F8ECA - mov r0, sp - movs r2, 0x4 - bl memcpy - ldrb r0, [r4] - mov r8, r0 - cmp r5, 0 - blt _08115B08 - cmp r5, 0x1 - bgt _08115AE0 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x5 - bl __modsi3 - lsls r0, 24 - lsrs r6, r0, 24 - movs r2, 0xF0 - lsls r2, 20 - adds r1, r0, r2 - lsrs r7, r1, 24 - cmp r0, 0 - bne _08115B08 - movs r6, 0x5 - b _08115B08 - .align 2, 0 -_08115ADC: .4byte gUnknown_083F8ECA -_08115AE0: - cmp r5, 0x3 - bgt _08115B08 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x5 - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 24 - lsrs r6, r1, 24 - movs r2, 0x80 - lsls r2, 19 - adds r0, r1, r2 - lsrs r7, r0, 24 - cmp r1, 0 - bne _08115B08 - movs r6, 0x1 -_08115B08: - mov r1, sp - adds r0, r1, r5 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r2, [r4] - adds r0, r2 - strh r0, [r4] - lsls r1, r6, 24 - asrs r3, r1, 24 - lsls r0, 16 - asrs r0, 16 - lsls r2, r7, 24 - cmp r0, r3 - bge _08115B2A - asrs r0, r2, 24 - strh r0, [r4] -_08115B2A: - movs r0, 0 - ldrsh r1, [r4, r0] - asrs r0, r2, 24 - cmp r1, r0 - ble _08115B36 - strh r3, [r4] -_08115B36: - mov r1, r8 - lsls r0, r1, 24 - movs r2, 0 - ldrsh r1, [r4, r2] - asrs r0, 24 - cmp r1, r0 - bne _08115B48 - movs r0, 0 - b _08115B4A -_08115B48: - movs r0, 0x1 -_08115B4A: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8115A94 - - thumb_func_start sub_8115B58 -sub_8115B58: @ 8115B58 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r7, r0, 24 - movs r0, 0 - mov r8, r0 - movs r5, 0 - ldr r4, _08115D30 @ =gMain - ldrh r1, [r4, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08115B94 - movs r5, 0x1 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, _08115D34 @ =gTasks + 0x8 - adds r0, r1 - adds r0, 0x8 - movs r1, 0 - bl sub_8115A94 - lsls r0, 24 - cmp r0, 0 - bne _08115B94 - b _08115D20 -_08115B94: - ldrh r1, [r4, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08115BBA - movs r5, 0x1 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, _08115D34 @ =gTasks + 0x8 - adds r0, r1 - adds r0, 0x8 - movs r1, 0x1 - bl sub_8115A94 - lsls r0, 24 - cmp r0, 0 - bne _08115BBA - b _08115D20 -_08115BBA: - ldrh r1, [r4, 0x2E] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08115BE0 - movs r5, 0x1 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, _08115D34 @ =gTasks + 0x8 - adds r0, r1 - adds r0, 0x8 - movs r1, 0x2 - bl sub_8115A94 - lsls r0, 24 - cmp r0, 0 - bne _08115BE0 - b _08115D20 -_08115BE0: - ldrh r1, [r4, 0x2E] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08115C06 - movs r5, 0x1 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, _08115D34 @ =gTasks + 0x8 - adds r0, r1 - adds r0, 0x8 - movs r1, 0x3 - bl sub_8115A94 - lsls r0, 24 - cmp r0, 0 - bne _08115C06 - b _08115D20 -_08115C06: - cmp r5, 0 - bne _08115C0C - b _08115D20 -_08115C0C: - ldr r0, _08115D38 @ =gTasks - lsls r6, r7, 2 - adds r4, r6, r7 - lsls r4, 3 - adds r4, r0 - ldrb r0, [r4, 0x10] - bl sub_8117158 - adds r0, r7, 0 - movs r1, 0 - bl sub_8115928 - mov r1, r8 - strh r1, [r4, 0xA] - movs r0, 0x5 - bl PlaySE - ldr r5, _08115D3C @ =gSharedMem + 0x190B8 - ldr r1, _08115D40 @ =0x0000ffff - adds r0, r5, 0 - bl sub_8124D3C - adds r3, r5, 0 - adds r3, 0xB8 - ldrb r2, [r3] - movs r1, 0x7F - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - subs r3, 0xC - ldrb r2, [r3] - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - adds r2, r5, 0 - adds r2, 0xA0 - ldrb r0, [r2] - ands r1, r0 - strb r1, [r2] - ldrb r0, [r4, 0x10] - bl sub_8116EF8 - movs r4, 0 - mov r12, r6 - ldr r6, _08115D44 @ =gSprites - movs r2, 0x7C - negs r2, r2 - adds r2, r5 - mov r10, r2 - movs r0, 0x8 - adds r0, r6 - mov r8, r0 - ldr r1, _08115D48 @ =0xfffffc00 - mov r9, r1 - ldr r2, _08115D4C @ =0x000003ff - adds r5, r2, 0 -_08115C7C: - adds r0, r4, 0 - adds r0, 0x29 - add r0, r10 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r6 - adds r2, r3, 0 - adds r2, 0x40 - add r0, r8 - ldr r0, [r0] - ldr r0, [r0] - ldrh r1, [r0] - ldrh r2, [r2] - adds r1, r2 - ands r1, r5 - ldrh r2, [r3, 0x4] - mov r0, r9 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x4] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _08115C7C - ldr r0, _08115D38 @ =gTasks - mov r2, r12 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r3, [r1, 0x10] - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bhi _08115D20 - ldr r2, _08115D50 @ =gUnknown_083F8C00 - movs r0, 0x10 - ldrsh r1, [r1, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r2, _08115D54 @ =gSharedMem + 0x19000 - ldr r1, [r2, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08115D20 - subs r0, r3, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - adds r0, r2, 0 - add r0, r8 - adds r0, 0x65 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08115D44 @ =gSprites - adds r3, r0, r1 - adds r2, r3, 0 - adds r2, 0x40 - adds r1, 0x8 - adds r0, r1 - ldr r0, [r0] - ldr r0, [r0] - ldrh r1, [r0, 0x4] - ldrh r2, [r2] - adds r1, r2 - ldr r2, _08115D4C @ =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r3, 0x4] - ldr r0, _08115D48 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x4] -_08115D20: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08115D30: .4byte gMain -_08115D34: .4byte gTasks + 0x8 -_08115D38: .4byte gTasks -_08115D3C: .4byte gSharedMem + 0x190B8 -_08115D40: .4byte 0x0000ffff -_08115D44: .4byte gSprites -_08115D48: .4byte 0xfffffc00 -_08115D4C: .4byte 0x000003ff -_08115D50: .4byte gUnknown_083F8C00 -_08115D54: .4byte gSharedMem + 0x19000 - thumb_func_end sub_8115B58 - - thumb_func_start sub_8115D58 -sub_8115D58: @ 8115D58 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r1, _08115D70 @ =gSharedMem + 0x19000 - movs r0, 0xFF - strh r0, [r1, 0x28] - ldrb r0, [r1, 0x19] - cmp r0, 0x1 - bne _08115D74 - adds r2, r1, 0 - adds r2, 0x23 - b _08115D7A - .align 2, 0 -_08115D70: .4byte gSharedMem + 0x19000 -_08115D74: - adds r2, r1, 0 - adds r2, 0x23 - movs r0, 0 -_08115D7A: - strb r0, [r2] - adds r1, 0x21 - movs r0, 0 - strb r0, [r1] - ldr r1, _08115D98 @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x20 - strh r1, [r0, 0xA] - ldr r1, _08115D9C @ =sub_8115ECC - str r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_08115D98: .4byte gTasks -_08115D9C: .4byte sub_8115ECC - thumb_func_end sub_8115D58 - - thumb_func_start sub_8115DA0 -sub_8115DA0: @ 8115DA0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, _08115E08 @ =gSharedMem + 0x19000 - ldrb r2, [r4, 0x1A] - lsls r2, 28 - lsrs r2, 28 - adds r5, r4, 0 - adds r5, 0x1B - adds r2, r5 - ldr r3, _08115E0C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r6, r1, r3 - ldrh r0, [r6, 0x10] - strb r0, [r2] - ldrb r0, [r4, 0x1A] - lsls r0, 28 - lsrs r0, 28 - adds r0, r5 - ldrb r0, [r0] - bl sub_8117380 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6, 0xC] - ldrb r0, [r4, 0x1A] - lsls r0, 28 - lsrs r0, 28 - adds r0, r5 - ldrb r0, [r0] - bl sub_811829C - ldrb r1, [r4, 0x19] - ldrh r0, [r6, 0x22] - subs r0, r1 - strh r0, [r6, 0x22] - lsls r0, 16 - cmp r0, 0 - bge _08115DF6 - movs r0, 0 - strh r0, [r6, 0x22] -_08115DF6: - ldrh r0, [r6, 0x22] - bl sub_81180F4 - ldr r0, _08115E10 @ =sub_8115D58 - str r0, [r6] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08115E08: .4byte gSharedMem + 0x19000 -_08115E0C: .4byte gTasks -_08115E10: .4byte sub_8115D58 - thumb_func_end sub_8115DA0 - - thumb_func_start sub_8115E14 -sub_8115E14: @ 8115E14 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_8115B58 - ldr r1, _08115E3C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0xA - ldrsh r0, [r4, r1] - cmp r0, 0x1E - beq _08115E4A - cmp r0, 0x1E - bgt _08115E40 - cmp r0, 0 - beq _08115E46 - b _08115E5E - .align 2, 0 -_08115E3C: .4byte gTasks -_08115E40: - cmp r0, 0x3B - beq _08115E58 - b _08115E5E -_08115E46: - ldrb r0, [r4, 0x10] - b _08115E4C -_08115E4A: - movs r0, 0 -_08115E4C: - bl sub_81157D0 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - b _08115E6E -_08115E58: - movs r0, 0 - strh r0, [r4, 0xA] - b _08115E6E -_08115E5E: - ldr r0, _08115EA8 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0xA] - adds r0, 0x1 - strh r0, [r1, 0xA] -_08115E6E: - ldr r0, _08115EAC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08115EC2 - ldr r3, _08115EB0 @ =gSharedMem + 0x19000 - ldr r2, _08115EB4 @ =gUnknown_083F8C00 - ldr r1, _08115EA8 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r0, 0x10 - ldrsh r1, [r4, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r1, [r3, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08115EB8 - movs r0, 0x16 - bl PlaySE - b _08115EC2 - .align 2, 0 -_08115EA8: .4byte gTasks -_08115EAC: .4byte gMain -_08115EB0: .4byte gSharedMem + 0x19000 -_08115EB4: .4byte gUnknown_083F8C00 -_08115EB8: - movs r0, 0x5F - bl m4aSongNumStart - ldr r0, _08115EC8 @ =sub_8115DA0 - str r0, [r4] -_08115EC2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08115EC8: .4byte sub_8115DA0 - thumb_func_end sub_8115E14 - - thumb_func_start sub_8115ECC -sub_8115ECC: @ 8115ECC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08115F20 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0xA] - subs r1, r0, 0x1 - strh r1, [r4, 0xA] - lsls r0, 16 - cmp r0, 0 - ble _08115F34 - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _08115EF8 - ldr r1, _08115F24 @ =gSpriteCoordOffsetX - ldrh r0, [r1] - adds r0, 0x2 - strh r0, [r1] -_08115EF8: - ldr r1, _08115F28 @ =gSharedMem + 0x19000 - ldrh r0, [r1, 0x26] - adds r0, 0x4 - strh r0, [r1, 0x26] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x68 - bne _08115F4C - ldr r2, _08115F2C @ =gSprites - adds r0, r1, 0 - adds r0, 0x55 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, _08115F30 @ =SpriteCallbackDummy - str r1, [r0] - b _08115F4C - .align 2, 0 -_08115F20: .4byte gTasks -_08115F24: .4byte gSpriteCoordOffsetX -_08115F28: .4byte gSharedMem + 0x19000 -_08115F2C: .4byte gSprites -_08115F30: .4byte SpriteCallbackDummy -_08115F34: - movs r0, 0x1 - movs r1, 0xFF - bl sub_8117AA8 - movs r0, 0x1 - movs r1, 0xFF - bl sub_8117C60 - ldr r0, _08115F54 @ =sub_8116100 - str r0, [r4] - movs r0, 0 - strh r0, [r4, 0xA] -_08115F4C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08115F54: .4byte sub_8116100 - thumb_func_end sub_8115ECC - - thumb_func_start sub_8115F58 -sub_8115F58: @ 8115F58 - push {r4,lr} - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 16 - lsrs r1, 16 - ldr r0, _08115F74 @ =gSharedMem + 0x19000 - ldrb r2, [r0, 0x2] - adds r4, r0, 0 - cmp r2, 0x2 - bgt _08115F78 - cmp r2, 0x1 - bge _08115F7E - b _08116048 - .align 2, 0 -_08115F74: .4byte gSharedMem + 0x19000 -_08115F78: - cmp r2, 0x3 - beq _08115FE0 - b _08116048 -_08115F7E: - ldr r0, _08115FA8 @ =gLocalTime - ldrb r0, [r0, 0x2] - subs r0, 0x4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bhi _08115FB0 - cmp r3, 0xB - bls _08115F98 - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0811605E -_08115F98: - ldr r0, _08115FAC @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 1 - b _081160F4 - .align 2, 0 -_08115FA8: .4byte gLocalTime -_08115FAC: .4byte gUnknown_083F8DF4 -_08115FB0: - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08115FCC - ldr r0, _08115FC8 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 1 - b _081160F4 - .align 2, 0 -_08115FC8: .4byte gUnknown_083F8DF4 -_08115FCC: - ldr r0, _08115FDC @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - b _081160F4 - .align 2, 0 -_08115FDC: .4byte gUnknown_083F8DF4 -_08115FE0: - ldr r0, _0811600C @ =gLocalTime - ldrb r0, [r0, 0x2] - subs r0, 0x4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bhi _08116014 - cmp r3, 0x5 - bls _08115FFA - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0811605E -_08115FFA: - ldr r0, _08116010 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 1 - b _081160F4 - .align 2, 0 -_0811600C: .4byte gLocalTime -_08116010: .4byte gUnknown_083F8DF4 -_08116014: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08116034 - cmp r3, 0x6 - bls _08116034 - ldr r0, _08116030 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 2 - b _081160F4 - .align 2, 0 -_08116030: .4byte gUnknown_083F8DF4 -_08116034: - ldr r0, _08116044 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 1 - b _081160F4 - .align 2, 0 -_08116044: .4byte gUnknown_083F8DF4 -_08116048: - ldr r0, _08116064 @ =gLocalTime - ldrb r0, [r0, 0x2] - subs r0, 0x4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bhi _0811607C - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08116068 -_0811605E: - movs r0, 0x1 - b _081160F4 - .align 2, 0 -_08116064: .4byte gLocalTime -_08116068: - ldr r0, _08116078 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 1 - b _081160F4 - .align 2, 0 -_08116078: .4byte gUnknown_083F8DF4 -_0811607C: - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _081160B0 - cmp r3, 0xC - bls _0811609C - ldr r0, _08116098 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsrs r0, 1 - b _081160F4 - .align 2, 0 -_08116098: .4byte gUnknown_083F8DF4 -_0811609C: - ldr r0, _081160AC @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - b _081160F4 - .align 2, 0 -_081160AC: .4byte gUnknown_083F8DF4 -_081160B0: - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _081160E4 - cmp r3, 0xC - bls _081160D0 - ldr r0, _081160CC @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x2] - b _081160F4 - .align 2, 0 -_081160CC: .4byte gUnknown_083F8DF4 -_081160D0: - ldr r0, _081160E0 @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x1] - b _081160F4 - .align 2, 0 -_081160E0: .4byte gUnknown_083F8DF4 -_081160E4: - ldr r0, _081160FC @ =gUnknown_083F8DF4 - ldrb r1, [r4, 0x4] - lsls r1, 30 - lsrs r1, 25 - adds r1, r0 - ldrb r0, [r1, 0x1] - lsls r0, 25 - lsrs r0, 24 -_081160F4: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_081160FC: .4byte gUnknown_083F8DF4 - thumb_func_end sub_8115F58 - - thumb_func_start sub_8116100 -sub_8116100: @ 8116100 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r4, 0 - ldr r1, _08116188 @ =gUnknown_083F8ECE - mov r0, sp - movs r2, 0x8 - bl memcpy - bl Random - lsls r0, 16 - lsrs r7, r0, 16 - adds r0, r7, 0 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r3, _0811618C @ =gSharedMem + 0x19000 - ldr r1, _08116190 @ =gTasks - mov r2, r9 - lsls r0, r2, 2 - add r0, r9 - lsls r0, 3 - adds r0, r1 - ldrh r2, [r0, 0x14] - adds r1, r3, 0 - adds r1, 0x7C - strb r2, [r1] - adds r1, 0x3 - strb r4, [r1] - subs r1, 0x1 - strb r4, [r1] - subs r1, 0x1 - strb r4, [r1] - ldrh r0, [r0, 0x18] - adds r1, r7, 0 - bl sub_8115F58 - adds r4, r0, 0 - lsls r4, 24 - lsrs r1, r4, 24 - adds r0, r7, 0 - bl __modsi3 - lsrs r4, 25 - subs r0, r4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08116194 @ =gLocalTime - ldrb r0, [r0, 0x2] - lsls r0, 24 - asrs r0, 24 - movs r5, 0x1 - cmp r0, 0xC - bgt _08116180 - movs r5, 0 -_08116180: - cmp r6, 0x4F - bhi _08116198 - lsls r0, r5, 25 - b _081161A2 - .align 2, 0 -_08116188: .4byte gUnknown_083F8ECE -_0811618C: .4byte gSharedMem + 0x19000 -_08116190: .4byte gTasks -_08116194: .4byte gLocalTime -_08116198: - lsls r1, r5, 24 - asrs r1, 24 - movs r0, 0x1 - subs r0, r1 - lsls r0, 25 -_081161A2: - lsrs r5, r0, 24 - ldr r6, _081162D8 @ =gSharedMem + 0x19000 - ldrb r0, [r6, 0x4] - lsls r0, 30 - mov r10, r0 - lsrs r0, 25 - ldr r1, _081162DC @ =gUnknown_083F8DF4 - adds r0, r1 - lsls r4, 24 - asrs r4, 24 - ldrh r0, [r0, 0x1A] - adds r4, r0 - adds r0, r6, 0 - adds r0, 0x80 - strh r4, [r0] - lsls r4, 16 - asrs r4, 16 - adds r0, r4, 0 - bl __floatsisf - cmp r4, 0 - bge _081161D4 - ldr r1, _081162E0 @ =0x47800000 - bl __addsf3 -_081161D4: - ldr r1, _081162E4 @ =0x40a00000 - bl __divsf3 - bl __fixunssfsi - lsls r0, 16 - lsrs r4, r0, 16 - lsls r0, r4, 1 - adds r0, r4 - mov r8, r0 - adds r0, r6, 0 - adds r0, 0x82 - mov r2, r8 - strh r2, [r0] - adds r0, 0x2 - strh r4, [r0] - adds r0, 0x2 - strh r4, [r0] - movs r0, 0x1 - ands r0, r7 - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r1 - lsls r0, 1 - add r0, sp - movs r1, 0 - ldrsh r4, [r0, r1] - adds r0, r4, 0 - bl __floatsisf - cmp r4, 0 - bge _0811621A - ldr r1, _081162E0 @ =0x47800000 - bl __addsf3 -_0811621A: - ldr r2, _081162E8 @ =gSharedMem + 0x19088 - str r0, [r2] - adds r7, r6, 0 - adds r7, 0x8C - mov r1, r10 - lsrs r0, r1, 25 - ldr r2, _081162DC @ =gUnknown_083F8DF4 - adds r0, r2 - movs r1, 0x18 - ldrsh r4, [r0, r1] - adds r0, r4, 0 - bl __floatsisf - adds r5, r0, 0 - cmp r4, 0 - bge _08116242 - ldr r1, _081162E0 @ =0x47800000 - bl __addsf3 - adds r5, r0, 0 -_08116242: - str r5, [r7] - adds r7, r6, 0 - adds r7, 0x90 - ldr r1, _081162EC @ =0x3f000000 - adds r0, r5, 0 - bl __mulsf3 - adds r1, r5, 0 - bl __subsf3 - adds r5, r0, 0 - mov r2, r8 - lsls r0, r2, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl __floatsisf - adds r2, r0, 0 - cmp r4, 0 - bge _08116272 - ldr r1, _081162E0 @ =0x47800000 - bl __addsf3 - adds r2, r0, 0 -_08116272: - adds r0, r5, 0 - adds r1, r2, 0 - bl __divsf3 - str r0, [r7] - adds r1, r6, 0 - adds r1, 0x94 - ldr r0, _081162F0 @ =0x42880000 - str r0, [r1] - adds r1, 0x8 - ldr r0, _081162F4 @ =0x00000000 - str r0, [r1] - adds r5, r6, 0 - adds r5, 0x98 - adds r0, r4, 0 - bl __floatsisf - adds r2, r0, 0 - cmp r4, 0 - bge _081162A2 - ldr r1, _081162E0 @ =0x47800000 - bl __addsf3 - adds r2, r0, 0 -_081162A2: - ldr r0, _081162F8 @ =0x41000000 - adds r1, r2, 0 - bl __divsf3 - bl __negsf2 - str r0, [r5] - adds r1, r6, 0 - adds r1, 0xA0 - ldr r0, _081162FC @ =0x42100000 - str r0, [r1] - ldr r1, _08116300 @ =gTasks - mov r2, r9 - lsls r0, r2, 2 - add r0, r9 - lsls r0, 3 - adds r0, r1 - ldr r1, _08116304 @ =sub_8116308 - str r1, [r0] - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081162D8: .4byte gSharedMem + 0x19000 -_081162DC: .4byte gUnknown_083F8DF4 -_081162E0: .4byte 0x47800000 -_081162E4: .4byte 0x40a00000 -_081162E8: .4byte gSharedMem + 0x19088 -_081162EC: .4byte 0x3f000000 -_081162F0: .4byte 0x42880000 -_081162F4: .4byte 0x00000000 -_081162F8: .4byte 0x41000000 -_081162FC: .4byte 0x42100000 -_08116300: .4byte gTasks -_08116304: .4byte sub_8116308 - thumb_func_end sub_8116100 - - thumb_func_start sub_8116308 -sub_8116308: @ 8116308 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _08116368 @ =gSharedMem + 0x19000 - ldrb r1, [r3, 0x3] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r3, 0x3] - adds r2, r3, 0 - adds r2, 0x7C - adds r1, r3, 0 - adds r1, 0x3C - ldrb r2, [r2] - adds r1, r2 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - ldr r2, _0811636C @ =gSprites - adds r1, r2 - str r1, [r3, 0x38] - ldr r2, _08116370 @ =sub_81191F4 - str r2, [r1, 0x1C] - ldr r1, _08116374 @ =gTasks - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - adds r4, r1 - ldrh r1, [r4, 0x14] - adds r1, 0x1 - strh r1, [r4, 0x14] - ldrh r0, [r4, 0x18] - adds r0, 0x1 - strh r0, [r4, 0x18] - movs r0, 0x6 - subs r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl sub_81182F8 - movs r0, 0x5C - bl m4aSongNumStart - ldr r0, _08116378 @ =sub_811637C - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08116368: .4byte gSharedMem + 0x19000 -_0811636C: .4byte gSprites -_08116370: .4byte sub_81191F4 -_08116374: .4byte gTasks -_08116378: .4byte sub_811637C - thumb_func_end sub_8116308 - - thumb_func_start sub_811637C -sub_811637C: @ 811637C - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _081163B0 @ =gSharedMem + 0x19000 - adds r0, r4, 0 - adds r0, 0x7D - ldrb r0, [r0] - cmp r0, 0 - beq _08116464 - ldrb r1, [r4, 0x3] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _081163B4 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08116464 - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - movs r1, 0x21 - negs r1, r1 - ands r0, r1 - strb r0, [r4, 0x3] - b _08116464 - .align 2, 0 -_081163B0: .4byte gSharedMem + 0x19000 -_081163B4: - ldr r2, _08116428 @ =gTasks - lsls r1, r5, 2 - adds r0, r1, r5 - lsls r0, 3 - adds r6, r0, r2 - movs r2, 0xA - ldrsh r0, [r6, r2] - adds r7, r1, 0 - cmp r0, 0 - bne _08116400 - adds r0, r4, 0 - adds r0, 0x7E - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8116D54 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r4, 0x1A] - lsls r1, 28 - lsrs r1, 28 - adds r2, r4, 0 - adds r2, 0x1B - adds r1, r2 - ldrb r1, [r1] - bl sub_8116E5C - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6, 0x12] - cmp r0, 0x1 - bne _08116400 - adds r0, r4, 0 - adds r0, 0xB8 - movs r1, 0x80 - lsls r1, 5 - bl sub_8124CE8 -_08116400: - ldr r0, _08116428 @ =gTasks - adds r1, r7, r5 - lsls r1, 3 - adds r4, r1, r0 - movs r1, 0xA - ldrsh r0, [r4, r1] - cmp r0, 0x3C - bgt _08116430 - ldr r0, _0811642C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08116420 - movs r0, 0x3C - strh r0, [r4, 0xA] -_08116420: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - b _08116464 - .align 2, 0 -_08116428: .4byte gTasks -_0811642C: .4byte gMain -_08116430: - ldr r1, _0811646C @ =gSharedMem + 0x19000 - ldrb r0, [r1, 0x1A] - lsls r0, 28 - lsrs r0, 28 - adds r1, 0x1B - adds r0, r1 - ldrb r0, [r0] - bl sub_8117158 - ldrh r1, [r4, 0x20] - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - bl sub_8117AA8 - ldrb r1, [r4, 0x14] - subs r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - bl sub_8117C60 - movs r0, 0x20 - strh r0, [r4, 0xA] - ldr r0, _08116470 @ =sub_8116474 - str r0, [r4] -_08116464: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811646C: .4byte gSharedMem + 0x19000 -_08116470: .4byte sub_8116474 - thumb_func_end sub_811637C - - thumb_func_start sub_8116474 -sub_8116474: @ 8116474 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _081164C8 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - ldrh r0, [r4, 0xA] - subs r1, r0, 0x1 - strh r1, [r4, 0xA] - lsls r0, 16 - cmp r0, 0 - ble _081164DC - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _081164A0 - ldr r1, _081164CC @ =gSpriteCoordOffsetX - ldrh r0, [r1] - subs r0, 0x2 - strh r0, [r1] -_081164A0: - ldr r1, _081164D0 @ =gSharedMem + 0x19000 - ldrh r0, [r1, 0x26] - subs r0, 0x4 - strh r0, [r1, 0x26] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x68 - bne _08116504 - ldr r2, _081164D4 @ =gSprites - adds r0, r1, 0 - adds r0, 0x55 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, _081164D8 @ =sub_81184CC - str r1, [r0] - b _08116504 - .align 2, 0 -_081164C8: .4byte gTasks -_081164CC: .4byte gSpriteCoordOffsetX -_081164D0: .4byte gSharedMem + 0x19000 -_081164D4: .4byte gSprites -_081164D8: .4byte sub_81184CC -_081164DC: - ldrh r0, [r4, 0x20] - lsls r0, 24 - lsrs r0, 24 - bl sub_8117D68 - movs r1, 0x12 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _081164F2 - movs r0, 0x79 - b _081164F4 -_081164F2: - movs r0, 0x3D -_081164F4: - strh r0, [r4, 0xA] - ldr r0, _0811650C @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _08116510 @ =sub_8116514 - str r0, [r1] -_08116504: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811650C: .4byte gTasks -_08116510: .4byte sub_8116514 - thumb_func_end sub_8116474 - - thumb_func_start sub_8116514 -sub_8116514: @ 8116514 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, _08116564 @ =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r4, r0, r1 - ldrh r0, [r4, 0xA] - subs r1, r0, 0x1 - strh r1, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _08116584 - movs r0, 0xA - ldrsh r1, [r4, r0] - adds r0, r1, 0 - cmp r1, 0 - bge _0811653E - adds r0, 0xF -_0811653E: - asrs r0, 4 - lsls r0, 4 - subs r0, r1, r0 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _08116568 - cmp r0, 0x8 - bne _08116590 - movs r0, 0 - movs r1, 0xFF - bl sub_8117AA8 - movs r0, 0 - movs r1, 0xFF - bl sub_8117C60 - b _08116590 - .align 2, 0 -_08116564: .4byte gTasks -_08116568: - ldrh r1, [r4, 0x20] - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - bl sub_8117AA8 - ldrb r1, [r4, 0x14] - subs r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - bl sub_8117C60 - b _08116590 -_08116584: - ldr r1, _08116598 @ =sub_8116638 - adds r0, r2, 0 - movs r2, 0x1E - movs r3, 0 - bl sub_8116C34 -_08116590: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08116598: .4byte sub_8116638 - thumb_func_end sub_8116514 - - thumb_func_start sub_811659C -sub_811659C: @ 811659C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _081165F4 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0x12 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _08116600 - cmp r0, 0 - blt _08116600 - cmp r0, 0x2 - bgt _08116600 - bl IsFanfareTaskInactive - lsls r0, 24 - cmp r0, 0 - beq _08116624 - movs r0, 0x1D - bl GetGameStat - ldrh r1, [r4, 0x1E] - adds r1, 0x1 - strh r1, [r4, 0x1E] - lsls r1, 16 - asrs r1, 16 - cmp r0, r1 - bcs _081165E4 - movs r0, 0x1E - ldrsh r1, [r4, r0] - movs r0, 0x1D - bl SetGameStat -_081165E4: - ldr r1, _081165F8 @ =sub_811677C - ldr r2, _081165FC @ =0x0000ffff - adds r0, r5, 0 - movs r3, 0x3 - bl sub_8116C34 - b _08116624 - .align 2, 0 -_081165F4: .4byte gTasks -_081165F8: .4byte sub_811677C -_081165FC: .4byte 0x0000ffff -_08116600: - bl IsSEPlaying - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _08116624 - ldr r1, _0811662C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - strh r2, [r0, 0x1E] - ldr r1, _08116630 @ =sub_81167F4 - ldr r2, _08116634 @ =0x0000ffff - adds r0, r5, 0 - movs r3, 0x3 - bl sub_8116C34 -_08116624: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811662C: .4byte gTasks -_08116630: .4byte sub_81167F4 -_08116634: .4byte 0x0000ffff - thumb_func_end sub_811659C - - thumb_func_start sub_8116638 -sub_8116638: @ 8116638 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08116678 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r2, 0x12 - ldrsh r1, [r0, r2] - cmp r1, 0 - beq _081166A8 - cmp r1, 0 - blt _081166A8 - cmp r1, 0x2 - bgt _081166A8 - movs r1, 0xC - ldrsh r0, [r0, r1] - cmp r0, 0xC - bne _08116684 - ldr r0, _0811667C @ =0x00000185 - bl PlayFanfare - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _08116680 @ =gUnknown_081C41A5 - b _0811669A - .align 2, 0 -_08116678: .4byte gTasks -_0811667C: .4byte 0x00000185 -_08116680: .4byte gUnknown_081C41A5 -_08116684: - movs r0, 0xC3 - lsls r0, 1 - bl PlayFanfare - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _081166A4 @ =gUnknown_081C4199 -_0811669A: - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - b _081166C4 - .align 2, 0 -_081166A4: .4byte gUnknown_081C4199 -_081166A8: - movs r0, 0x20 - bl m4aSongNumStart - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _081166DC @ =gUnknown_081C41AE - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint -_081166C4: - ldr r1, _081166E0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xA] - ldr r1, _081166E4 @ =sub_811659C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081166DC: .4byte gUnknown_081C41AE -_081166E0: .4byte gTasks -_081166E4: .4byte sub_811659C - thumb_func_end sub_8116638 - - thumb_func_start sub_81166E8 -sub_81166E8: @ 81166E8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, _0811670C @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r4, r0, r1 - movs r0, 0x16 - ldrsh r5, [r4, r0] - cmp r5, 0 - beq _08116710 - cmp r5, 0x3 - beq _08116740 - ldrh r0, [r4, 0x16] - adds r0, 0x1 - b _08116748 - .align 2, 0 -_0811670C: .4byte gTasks -_08116710: - ldrh r0, [r4, 0x22] - adds r0, 0x1 - strh r0, [r4, 0x22] - movs r0, 0x15 - bl m4aSongNumStart - ldrh r0, [r4, 0x22] - bl sub_81180F4 - movs r2, 0x22 - ldrsh r1, [r4, r2] - ldr r0, _08116730 @ =0x0000270e - cmp r1, r0 - ble _08116734 - strh r5, [r4, 0xA] - b _0811674A - .align 2, 0 -_08116730: .4byte 0x0000270e -_08116734: - ldrh r0, [r4, 0xA] - subs r0, 0x1 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0x16] - adds r0, 0x1 - b _08116748 -_08116740: - movs r0, 0x15 - bl m4aSongNumStop - movs r0, 0 -_08116748: - strh r0, [r4, 0x16] -_0811674A: - ldr r0, _08116770 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - movs r2, 0xA - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08116768 - ldr r1, _08116774 @ =sub_81167F4 - ldr r2, _08116778 @ =0x0000ffff - adds r0, r6, 0 - movs r3, 0x3 - bl sub_8116C34 -_08116768: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08116770: .4byte gTasks -_08116774: .4byte sub_81167F4 -_08116778: .4byte 0x0000ffff - thumb_func_end sub_81166E8 - - thumb_func_start sub_811677C -sub_811677C: @ 811677C - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _081167DC @ =gStringVar1 - ldr r6, _081167E0 @ =gSharedMem + 0x19000 - ldrb r2, [r6, 0x19] - ldr r1, _081167E4 @ =gTasks - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - adds r4, r1 - movs r1, 0xC - ldrsh r0, [r4, r1] - adds r1, r2, 0 - muls r1, r0 - adds r0, r3, 0 - movs r2, 0 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r5, _081167E8 @ =gStringVar4 - ldr r1, _081167EC @ =gUnknown_081C41BD - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - adds r0, r5, 0 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldrb r1, [r6, 0x19] - movs r2, 0xC - ldrsh r0, [r4, r2] - muls r0, r1 - movs r1, 0 - strh r0, [r4, 0xA] - strh r1, [r4, 0x16] - ldr r0, _081167F0 @ =sub_81166E8 - str r0, [r4] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081167DC: .4byte gStringVar1 -_081167E0: .4byte gSharedMem + 0x19000 -_081167E4: .4byte gTasks -_081167E8: .4byte gStringVar4 -_081167EC: .4byte gUnknown_081C41BD -_081167F0: .4byte sub_81166E8 - thumb_func_end sub_811677C - - thumb_func_start sub_81167F4 -sub_81167F4: @ 81167F4 - push {r4-r6,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r4, _08116868 @ =gSharedMem + 0x190B8 - ldr r1, _0811686C @ =0x0000ffff - adds r0, r4, 0 - bl sub_8124D3C - adds r3, r4, 0 - adds r3, 0xB8 - ldrb r2, [r3] - movs r1, 0x7F - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - subs r3, 0xC - ldrb r2, [r3] - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - adds r2, r4, 0 - adds r2, 0xA0 - ldrb r0, [r2] - ands r1, r0 - strb r1, [r2] - ldr r6, _08116870 @ =gSprites - ldr r2, _08116874 @ =gUnknown_083F8C00 - ldr r0, _08116878 @ =gTasks - lsls r3, r5, 2 - adds r3, r5 - lsls r3, 3 - adds r3, r0 - movs r0, 0x20 - ldrsh r1, [r3, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - adds r4, r0 - subs r4, 0x75 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r0, _0811687C @ =sub_8116880 - str r0, [r3] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08116868: .4byte gSharedMem + 0x190B8 -_0811686C: .4byte 0x0000ffff -_08116870: .4byte gSprites -_08116874: .4byte gUnknown_083F8C00 -_08116878: .4byte gTasks -_0811687C: .4byte sub_8116880 - thumb_func_end sub_81167F4 - - thumb_func_start sub_8116880 -sub_8116880: @ 8116880 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - ldr r1, _08116954 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - strh r5, [r0, 0x10] - ldr r4, _08116958 @ =gSharedMem + 0x19000 - ldrb r0, [r4, 0x1A] - lsls r0, 28 - lsrs r0, 28 - adds r1, r4, 0 - adds r1, 0x1B - adds r0, r1 - strb r2, [r0] - movs r0, 0 - bl sub_8117158 - ldr r3, _0811695C @ =gSprites - adds r0, r4, 0 - adds r0, 0x6C - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - adds r7, r3, 0 - movs r0, 0x3C - adds r0, r4 - mov r10, r0 - movs r1, 0x8 - adds r1, r7 - mov r8, r1 - ldr r0, _08116960 @ =0xfffffc00 - mov r9, r0 - ldr r1, _08116964 @ =0x000003ff - mov r12, r1 -_081168E4: - adds r0, r5, 0 - adds r0, 0x29 - add r0, r10 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r7 - adds r2, r3, 0 - adds r2, 0x40 - add r0, r8 - ldr r0, [r0] - ldr r0, [r0] - ldrh r1, [r0] - ldrh r2, [r2] - adds r1, r2 - mov r0, r12 - ands r1, r0 - ldrh r2, [r3, 0x4] - mov r0, r9 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x4] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _081168E4 - ldr r0, _08116954 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r2, r1, r0 - movs r1, 0x22 - ldrsh r0, [r2, r1] - ldrb r4, [r4, 0x19] - cmp r0, r4 - blt _081169BC - movs r1, 0x14 - ldrsh r0, [r2, r1] - cmp r0, 0x6 - bne _08116970 - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _08116968 @ =gUnknown_081C41F1 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _0811696C @ =dp01t_12_3_battle_menu - b _08116992 - .align 2, 0 -_08116954: .4byte gTasks -_08116958: .4byte gSharedMem + 0x19000 -_0811695C: .4byte gSprites -_08116960: .4byte 0xfffffc00 -_08116964: .4byte 0x000003ff -_08116968: .4byte gUnknown_081C41F1 -_0811696C: .4byte dp01t_12_3_battle_menu -_08116970: - movs r0, 0x22 - ldrsh r1, [r2, r0] - ldr r0, _081169A0 @ =0x0000270f - cmp r1, r0 - bne _081169B0 - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _081169A4 @ =gUnknown_081C4231 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _081169A8 @ =sub_8115734 -_08116992: - ldr r2, _081169AC @ =0x0000ffff - adds r0, r6, 0 - movs r3, 0x3 - bl sub_8116C34 - b _081169DE - .align 2, 0 -_081169A0: .4byte 0x0000270f -_081169A4: .4byte gUnknown_081C4231 -_081169A8: .4byte sub_8115734 -_081169AC: .4byte 0x0000ffff -_081169B0: - ldr r0, _081169B8 @ =sub_8115734 - str r0, [r2] - b _081169DE - .align 2, 0 -_081169B8: .4byte sub_8115734 -_081169BC: - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _081169EC @ =gUnknown_081C41D2 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _081169F0 @ =sub_81157AC - adds r0, r6, 0 - movs r2, 0x3C - movs r3, 0x3 - bl sub_8116C34 -_081169DE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081169EC: .4byte gUnknown_081C41D2 -_081169F0: .4byte sub_81157AC - thumb_func_end sub_8116880 - - thumb_func_start dp01t_12_3_battle_menu -dp01t_12_3_battle_menu: @ 81169F4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r1, _08116A84 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - strh r4, [r0, 0x14] - adds r0, r5, 0 - bl sub_8116CAC - bl sub_8116CF8 - bl sub_81185E8 - movs r0, 0 - bl sub_8117158 - movs r0, 0x6 - bl sub_81182F8 - ldr r7, _08116A88 @ =gSprites - ldr r3, _08116A8C @ =gSharedMem + 0x1903C - movs r6, 0x5 - negs r6, r6 -_08116A2A: - adds r0, r4, 0x7 - adds r0, r3 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r7 - adds r1, 0x3E - ldrb r2, [r1] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xB - bls _08116A2A - ldr r1, _08116A84 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r2, r0, r1 - movs r0, 0x22 - ldrsh r1, [r2, r0] - ldr r0, _08116A90 @ =0x0000270f - cmp r1, r0 - bne _08116AA0 - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _08116A94 @ =gUnknown_081C4231 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _08116A98 @ =sub_8115734 - ldr r2, _08116A9C @ =0x0000ffff - adds r0, r5, 0 - movs r3, 0x3 - bl sub_8116C34 - b _08116AA4 - .align 2, 0 -_08116A84: .4byte gTasks -_08116A88: .4byte gSprites -_08116A8C: .4byte gSharedMem + 0x1903C -_08116A90: .4byte 0x0000270f -_08116A94: .4byte gUnknown_081C4231 -_08116A98: .4byte sub_8115734 -_08116A9C: .4byte 0x0000ffff -_08116AA0: - ldr r0, _08116AAC @ =sub_8115734 - str r0, [r2] -_08116AA4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08116AAC: .4byte sub_8115734 - thumb_func_end dp01t_12_3_battle_menu - - thumb_func_start sub_8116AB0 -sub_8116AB0: @ 8116AB0 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _08116AF0 @ =gSharedMem + 0x190B8 - ldr r1, _08116AF4 @ =0x0000ffff - adds r0, r4, 0 - bl sub_8124D3C - adds r0, r4, 0 - bl sub_8124918 - ldr r1, _08116AF8 @ =gSaveBlock1 - ldr r2, _08116AFC @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r2 - ldrh r0, [r0, 0x22] - ldr r2, _08116B00 @ =0x00000494 - adds r1, r2 - strh r0, [r1] - subs r4, 0xB8 - lsls r0, 16 - lsrs r0, 16 - ldrb r4, [r4, 0x19] - cmp r0, r4 - bcs _08116B08 - ldr r1, _08116B04 @ =gSpecialVar_0x8004 - movs r0, 0x1 - b _08116B0C - .align 2, 0 -_08116AF0: .4byte gSharedMem + 0x190B8 -_08116AF4: .4byte 0x0000ffff -_08116AF8: .4byte gSaveBlock1 -_08116AFC: .4byte gTasks -_08116B00: .4byte 0x00000494 -_08116B04: .4byte gSpecialVar_0x8004 -_08116B08: - ldr r1, _08116B34 @ =gSpecialVar_0x8004 - movs r0, 0 -_08116B0C: - strh r0, [r1] - movs r0, 0 - str r0, [sp] - movs r0, 0xFF - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginHardwarePaletteFade - ldr r1, _08116B38 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08116B3C @ =sub_8116B40 - str r1, [r0] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08116B34: .4byte gSpecialVar_0x8004 -_08116B38: .4byte gTasks -_08116B3C: .4byte sub_8116B40 - thumb_func_end sub_8116AB0 - - thumb_func_start sub_8116B40 -sub_8116B40: @ 8116B40 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl UpdatePaletteFade - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _08116B9E - movs r0, 0 - bl SetVBlankCallback - ldr r0, _08116BA4 @ =gSharedMem + 0x19000 - movs r2, 0xBE - lsls r2, 1 - movs r1, 0 - bl memset - ldr r1, _08116BA8 @ =gSpriteCoordOffsetX - ldr r0, _08116BAC @ =gSpriteCoordOffsetY - strh r4, [r0] - strh r4, [r1] - bl sub_80F9368 - bl FreeAllSpritePalettes - bl ResetPaletteFade - bl ResetSpriteData - bl sub_80F9020 - ldr r0, _08116BB0 @ =REG_BLDCNT - strh r4, [r0] - adds r0, 0x2 - strh r4, [r0] - adds r0, 0x2 - strh r4, [r0] - ldr r1, _08116BB4 @ =gFieldCallback - ldr r0, _08116BB8 @ =sub_8080990 - str r0, [r1] - ldr r0, _08116BBC @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - adds r0, r5, 0 - bl DestroyTask -_08116B9E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08116BA4: .4byte gSharedMem + 0x19000 -_08116BA8: .4byte gSpriteCoordOffsetX -_08116BAC: .4byte gSpriteCoordOffsetY -_08116BB0: .4byte REG_BLDCNT -_08116BB4: .4byte gFieldCallback -_08116BB8: .4byte sub_8080990 -_08116BBC: .4byte c2_exit_to_overworld_2_switch - thumb_func_end sub_8116B40 - - thumb_func_start sub_8116BC0 -sub_8116BC0: @ 8116BC0 - push {r4-r7,lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _08116C24 @ =gSharedMem + 0x19000 - adds r7, r0, 0 - adds r7, 0xA8 - ldrh r1, [r7] - adds r6, r0, 0 - cmp r1, 0 - beq _08116BE4 - ldr r0, _08116C28 @ =gMain - adds r2, r6, 0 - adds r2, 0xAA - ldrh r1, [r0, 0x2E] - ldrh r0, [r2] - ands r0, r1 - cmp r0, 0 - beq _08116C0E -_08116BE4: - ldr r1, _08116C2C @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - adds r5, r6, 0 - adds r5, 0xAC - ldr r1, [r5] - str r1, [r0] - adds r4, r6, 0 - adds r4, 0xAA - ldrh r0, [r4] - cmp r0, 0 - beq _08116C06 - movs r0, 0x5 - bl PlaySE -_08116C06: - movs r0, 0 - str r0, [r5] - strh r0, [r4] - strh r0, [r7] -_08116C0E: - adds r2, r6, 0 - adds r2, 0xA8 - ldrh r1, [r2] - ldr r0, _08116C30 @ =0x0000ffff - cmp r1, r0 - beq _08116C1E - subs r0, r1, 0x1 - strh r0, [r2] -_08116C1E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08116C24: .4byte gSharedMem + 0x19000 -_08116C28: .4byte gMain -_08116C2C: .4byte gTasks -_08116C30: .4byte 0x0000ffff - thumb_func_end sub_8116BC0 - - thumb_func_start sub_8116C34 -sub_8116C34: @ 8116C34 - push {r4-r7,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, 16 - lsrs r4, r2, 16 - lsls r3, 16 - lsrs r3, 16 - ldr r0, _08116C84 @ =gSharedMem + 0x19000 - mov r12, r0 - mov r2, r12 - adds r2, 0xB4 - ldr r1, _08116C88 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] - mov r2, r12 - adds r7, r1, 0 - cmp r5, 0 - bne _08116C64 - adds r5, r0, 0 -_08116C64: - adds r0, r2, 0 - adds r0, 0xAC - str r5, [r0] - subs r0, 0x4 - strh r4, [r0] - ldr r0, _08116C8C @ =0x0000ffff - cmp r4, r0 - bne _08116C90 - cmp r3, 0 - bne _08116C90 - adds r1, r2, 0 - adds r1, 0xAA - ldrh r0, [r1] - orrs r4, r0 - strh r4, [r1] - b _08116C96 - .align 2, 0 -_08116C84: .4byte gSharedMem + 0x19000 -_08116C88: .4byte gTasks -_08116C8C: .4byte 0x0000ffff -_08116C90: - adds r0, r2, 0 - adds r0, 0xAA - strh r3, [r0] -_08116C96: - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r7 - ldr r1, _08116CA8 @ =sub_8116BC0 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08116CA8: .4byte sub_8116BC0 - thumb_func_end sub_8116C34 - - thumb_func_start sub_8116CAC -sub_8116CAC: @ 8116CAC - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r2, 0 - ldr r0, _08116CF0 @ =gSharedMem + 0x19000 - strb r2, [r0] - movs r1, 0 - strb r1, [r0, 0x3] - adds r3, r0, 0 - ldr r6, _08116CF4 @ =gTasks - adds r4, r3, 0 - adds r4, 0x1B -_08116CC4: - adds r0, r2, r4 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x5 - bls _08116CC4 - ldrb r1, [r3, 0x1A] - movs r0, 0x10 - negs r0, r0 - ands r0, r1 - strb r0, [r3, 0x1A] - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r6 - movs r1, 0 - strh r1, [r0, 0xA] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08116CF0: .4byte gSharedMem + 0x19000 -_08116CF4: .4byte gTasks - thumb_func_end sub_8116CAC - - thumb_func_start sub_8116CF8 -sub_8116CF8: @ 8116CF8 - push {lr} - ldr r1, _08116D48 @ =gSharedMem + 0x19000 - movs r0, 0 - str r0, [r1, 0x8] - movs r2, 0 - adds r1, 0xC - movs r3, 0 -_08116D06: - adds r0, r2, r1 - strb r3, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x5 - bls _08116D06 - movs r2, 0 - ldr r3, _08116D4C @ =gSharedMem + 0x19012 - movs r1, 0 -_08116D1A: - adds r0, r2, r3 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _08116D1A - movs r2, 0 - ldr r3, _08116D50 @ =gSharedMem + 0x19016 - movs r1, 0 -_08116D2E: - adds r0, r2, r3 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _08116D2E - movs r0, 0x1 - movs r1, 0xFF - bl sub_8117C60 - pop {r0} - bx r0 - .align 2, 0 -_08116D48: .4byte gSharedMem + 0x19000 -_08116D4C: .4byte gSharedMem + 0x19012 -_08116D50: .4byte gSharedMem + 0x19016 - thumb_func_end sub_8116CF8 - - thumb_func_start sub_8116D54 -sub_8116D54: @ 8116D54 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x1C - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - mov r1, sp - ldr r0, _08116D88 @ =gUnknown_083F8ED8 - ldm r0!, {r2,r4,r6} - stm r1!, {r2,r4,r6} - ldr r0, [r0] - str r0, [r1] - add r2, sp, 0x10 - adds r1, r2, 0 - ldr r0, _08116D8C @ =gUnknown_083F8EE8 - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - mov r9, r2 - cmp r5, 0xB - bls _08116D90 - movs r0, 0 - b _08116E38 - .align 2, 0 -_08116D88: .4byte gUnknown_083F8ED8 -_08116D8C: .4byte gUnknown_083F8EE8 -_08116D90: - ldr r6, _08116E48 @ =gSharedMem + 0x19000 - ldr r1, _08116E4C @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r7, 0x14 - ldrsh r2, [r0, r7] - adds r2, r6, r2 - ldr r4, _08116E50 @ =gUnknown_083F8D90 - lsls r5, 3 - adds r3, r5, r4 - ldrb r1, [r3, 0x2] - strb r1, [r2, 0xB] - ldrb r1, [r3, 0x2] - strh r1, [r0, 0x20] - adds r0, r4, 0x4 - adds r0, r5, r0 - ldr r1, [r6, 0x8] - ldr r0, [r0] - orrs r1, r0 - str r1, [r6, 0x8] - movs r3, 0 - mov r8, r4 - mov r12, r5 - adds r5, r0, 0 - adds r4, r6, 0 - adds r4, 0x12 -_08116DC8: - lsls r0, r3, 2 - mov r1, sp - adds r2, r1, r0 - ldr r0, [r2] - ands r0, r5 - cmp r0, 0 - beq _08116DDE - adds r1, r3, r4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08116DDE: - adds r0, r3, r4 - ldrb r0, [r0] - cmp r0, 0x2 - bls _08116DEE - ldr r0, [r6, 0x8] - ldr r1, [r2] - orrs r0, r1 - str r0, [r6, 0x8] -_08116DEE: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3 - bls _08116DC8 - movs r2, 0 - ldr r0, _08116E54 @ =gUnknown_083F8D90 + 0x4 - add r0, r12 - ldr r7, [r0] - ldr r4, _08116E58 @ =gSharedMem + 0x19016 - mov r5, r9 -_08116E04: - lsls r0, r2, 2 - adds r3, r5, r0 - ldr r0, [r3] - ands r0, r7 - cmp r0, 0 - beq _08116E18 - adds r1, r2, r4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08116E18: - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0x3 - bls _08116E28 - ldr r0, [r6, 0x8] - ldr r1, [r3] - orrs r0, r1 - str r0, [r6, 0x8] -_08116E28: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _08116E04 - mov r0, r12 - add r0, r8 - ldrb r0, [r0, 0x2] -_08116E38: - add sp, 0x1C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08116E48: .4byte gSharedMem + 0x19000 -_08116E4C: .4byte gTasks -_08116E50: .4byte gUnknown_083F8D90 -_08116E54: .4byte gUnknown_083F8D90 + 0x4 -_08116E58: .4byte gSharedMem + 0x19016 - thumb_func_end sub_8116D54 - - thumb_func_start sub_8116E5C -sub_8116E5C: @ 8116E5C - push {lr} - lsls r0, 24 - lsls r1, 24 - lsrs r2, r1, 24 - lsrs r3, r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x12 - bhi _08116EF0 - cmp r2, 0xF - bhi _08116EEC - lsls r0, r2, 2 - ldr r1, _08116E80 @ =_08116E84 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08116E80: .4byte _08116E84 - .align 2, 0 -_08116E84: - .4byte _08116EC4 - .4byte _08116EC8 - .4byte _08116EC8 - .4byte _08116EC8 - .4byte _08116EC8 - .4byte _08116EDC - .4byte _08116EEC - .4byte _08116EEC - .4byte _08116EEC - .4byte _08116EEC - .4byte _08116EDC - .4byte _08116EEC - .4byte _08116EEC - .4byte _08116EEC - .4byte _08116EEC - .4byte _08116EDC -_08116EC4: - movs r0, 0x3 - b _08116EF2 -_08116EC8: - adds r0, r2, 0x5 - cmp r3, r0 - beq _08116EE8 - adds r0, 0x5 - cmp r3, r0 - beq _08116EE8 - adds r0, 0x5 - cmp r3, r0 - bne _08116EF0 - b _08116EE8 -_08116EDC: - adds r0, r2, 0x1 - cmp r3, r0 - blt _08116EF0 - adds r0, r2, 0x4 - cmp r3, r0 - bgt _08116EF0 -_08116EE8: - movs r0, 0x1 - b _08116EF2 -_08116EEC: - cmp r3, r2 - beq _08116EE8 -_08116EF0: - movs r0, 0 -_08116EF2: - pop {r1} - bx r1 - thumb_func_end sub_8116E5C - - thumb_func_start sub_8116EF8 -sub_8116EF8: @ 8116EF8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0 - str r0, [sp, 0x18] - cmp r6, 0xA - beq _08116F1E - cmp r6, 0xA - bgt _08116F1A - cmp r6, 0x5 - beq _08116F1E - b _08116F7C -_08116F1A: - cmp r6, 0xF - bne _08116F7C -_08116F1E: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r6, 0x5 - ldr r7, _08116F70 @ =gSharedMem + 0x190B8 - cmp r4, r0 - bge _08116F5E - adds r1, r7, 0 - subs r1, 0xB8 - ldr r3, _08116F74 @ =gUnknown_083F8C00 - ldr r5, [r1, 0x8] - adds r6, r3, 0 - adds r6, 0x8 - adds r2, r0, 0 -_08116F3A: - lsls r0, r4, 2 - adds r0, r4 - lsls r1, r0, 2 - adds r0, r1, r6 - ldr r0, [r0] - ands r0, r5 - cmp r0, 0 - bne _08116F54 - adds r0, r1, r3 - ldrh r0, [r0, 0x10] - ldr r1, [sp, 0x18] - orrs r1, r0 - str r1, [sp, 0x18] -_08116F54: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r2 - blt _08116F3A -_08116F5E: - ldr r0, _08116F78 @ =0x0000dfff - ldr r2, [sp, 0x18] - ands r2, r0 - str r2, [sp, 0x18] - adds r0, r7, 0 - adds r1, r2, 0 - bl sub_8124CE8 - b _0811713C - .align 2, 0 -_08116F70: .4byte gSharedMem + 0x190B8 -_08116F74: .4byte gUnknown_083F8C00 -_08116F78: .4byte 0x0000dfff -_08116F7C: - mov r0, sp - ldr r1, _08116FC8 @ =gUnknown_083F8E9C - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - subs r0, r6, 0x1 - lsls r0, 24 - lsrs r0, 24 - movs r3, 0x1 - mov r10, r3 - cmp r0, 0x3 - bhi _08116F9A - movs r4, 0x3 - mov r10, r4 -_08116F9A: - adds r0, r6, 0 - movs r1, 0x5 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 8 - ldr r1, _08116FCC @ =0xffff0000 - adds r0, r1 - lsrs r7, r0, 16 - adds r0, r6, 0 - movs r1, 0x5 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08116FF8 - cmp r0, 0x2 - bgt _08116FD4 - cmp r0, 0x1 - beq _08116FE4 - ldr r4, _08116FD0 @ =gSharedMem + 0x19000 - b _0811703A - .align 2, 0 -_08116FC8: .4byte gUnknown_083F8E9C -_08116FCC: .4byte 0xffff0000 -_08116FD0: .4byte gSharedMem + 0x19000 -_08116FD4: - cmp r0, 0x3 - beq _0811700C - cmp r0, 0x4 - beq _08117020 - ldr r4, _08116FE0 @ =gSharedMem + 0x19000 - b _0811703A - .align 2, 0 -_08116FE0: .4byte gSharedMem + 0x19000 -_08116FE4: - ldr r3, _08116FF0 @ =gSprites - ldr r2, _08116FF4 @ =gSharedMem + 0x19000 - adds r0, r2, 0 - adds r0, 0x43 - b _08117028 - .align 2, 0 -_08116FF0: .4byte gSprites -_08116FF4: .4byte gSharedMem + 0x19000 -_08116FF8: - ldr r3, _08117004 @ =gSprites - ldr r2, _08117008 @ =gSharedMem + 0x19000 - adds r0, r2, 0 - adds r0, 0x44 - b _08117028 - .align 2, 0 -_08117004: .4byte gSprites -_08117008: .4byte gSharedMem + 0x19000 -_0811700C: - ldr r3, _08117018 @ =gSprites - ldr r2, _0811701C @ =gSharedMem + 0x19000 - adds r0, r2, 0 - adds r0, 0x45 - b _08117028 - .align 2, 0 -_08117018: .4byte gSprites -_0811701C: .4byte gSharedMem + 0x19000 -_08117020: - ldr r3, _08117088 @ =gSprites - ldr r2, _0811708C @ =gSharedMem + 0x19000 - adds r0, r2, 0 - adds r0, 0x46 -_08117028: - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x5] - lsrs r0, 4 - lsls r7, r0, 4 - adds r4, r2, 0 -_0811703A: - mov r2, r10 - cmp r2, 0x1 - bne _08117094 - ldr r1, _08117090 @ =gUnknown_083F8C00 - lsls r2, r6, 2 - adds r0, r2, r6 - lsls r0, 2 - adds r1, 0x8 - adds r0, r1 - ldr r1, [r4, 0x8] - ldr r0, [r0] - ands r1, r0 - str r2, [sp, 0x1C] - cmp r1, 0 - bne _0811713C - adds r0, r6, 0 - movs r1, 0x5 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - subs r1, r0, 0x1 - lsls r1, 3 - mov r3, sp - adds r2, r3, r1 - ldrh r1, [r2, 0x2] - adds r1, r7, r1 - strh r1, [r2, 0x2] - adds r1, r4, 0 - adds r1, 0xB8 - lsls r0, 3 - subs r0, 0x8 - adds r2, r3, r0 - adds r0, r1, 0 - movs r1, 0xD - bl sub_812492C - b _08117122 - .align 2, 0 -_08117088: .4byte gSprites -_0811708C: .4byte gSharedMem + 0x19000 -_08117090: .4byte gUnknown_083F8C00 -_08117094: - movs r4, 0 - lsls r0, r6, 2 - str r0, [sp, 0x1C] - ldr r1, _0811714C @ =gSharedMem + 0x19000 - mov r8, r1 - ldr r2, _08117150 @ =gUnknown_083F8C00 - mov r9, r2 -_081170A2: - lsls r0, r4, 2 - adds r0, r4 - adds r0, r6, r0 - adds r0, 0x5 - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r5, r0, 2 - mov r0, r9 - adds r0, 0x8 - adds r0, r5, r0 - mov r3, r8 - ldr r1, [r3, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0811710E - adds r0, r2, 0 - movs r1, 0x5 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - subs r1, r0, 0x1 - lsls r1, 3 - mov r3, sp - adds r2, r3, r1 - ldrh r1, [r2, 0x2] - adds r1, r7, r1 - strh r1, [r2, 0x2] - adds r1, r4, 0 - adds r1, 0xD - lsls r1, 24 - lsrs r1, 24 - lsls r0, 3 - subs r0, 0x8 - adds r2, r3, r0 - mov r0, r8 - adds r0, 0xB8 - bl sub_812492C - mov r0, r10 - cmp r0, 0x3 - bne _08117104 - mov r1, r9 - adds r0, r5, r1 - ldrh r0, [r0, 0x10] - str r0, [sp, 0x18] -_08117104: - mov r0, r10 - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 -_0811710E: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _081170A2 - mov r2, r10 - cmp r2, 0x2 - beq _08117122 - movs r3, 0 - str r3, [sp, 0x18] -_08117122: - ldr r0, _08117154 @ =gSharedMem + 0x190B8 - ldr r2, _08117150 @ =gUnknown_083F8C00 - ldr r4, [sp, 0x1C] - adds r1, r4, r6 - lsls r1, 2 - adds r1, r2 - ldrh r1, [r1, 0x10] - ldr r2, [sp, 0x18] - orrs r2, r1 - str r2, [sp, 0x18] - adds r1, r2, 0 - bl sub_8124CE8 -_0811713C: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811714C: .4byte gSharedMem + 0x19000 -_08117150: .4byte gUnknown_083F8C00 -_08117154: .4byte gSharedMem + 0x190B8 - thumb_func_end sub_8116EF8 - - thumb_func_start sub_8117158 -sub_8117158: @ 8117158 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _0811719C @ =gSharedMem + 0x19000 - movs r0, 0x1 - strh r0, [r4, 0x2A] - movs r0, 0 - movs r1, 0 - bl sub_8117AA8 - ldr r0, _081171A0 @ =gBGTilemapBuffers + 0x800 - ldr r1, _081171A4 @ =0xfffff800 - adds r4, r1 - movs r1, 0x10 - str r1, [sp] - movs r1, 0xD - str r1, [sp, 0x4] - adds r1, r4, 0 - movs r2, 0xE - movs r3, 0x7 - bl sub_8124E2C - cmp r5, 0xF - bhi _08117250 - lsls r0, r5, 2 - ldr r1, _081171A8 @ =_081171AC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0811719C: .4byte gSharedMem + 0x19000 -_081171A0: .4byte gBGTilemapBuffers + 0x800 -_081171A4: .4byte 0xfffff800 -_081171A8: .4byte _081171AC - .align 2, 0 -_081171AC: - .4byte _08117360 - .4byte _081171EC - .4byte _081171EC - .4byte _081171EC - .4byte _081171EC - .4byte _08117220 - .4byte _08117250 - .4byte _08117250 - .4byte _08117250 - .4byte _08117250 - .4byte _08117220 - .4byte _08117250 - .4byte _08117250 - .4byte _08117250 - .4byte _08117250 - .4byte _08117220 -_081171EC: - movs r0, 0x4 - str r0, [sp, 0x18] - add r1, sp, 0x8 - movs r0, 0 - strb r0, [r1] - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0x3 - bhi _08117258 - add r4, sp, 0x10 - adds r3, r1, 0 -_08117202: - ldrb r2, [r3] - adds r2, r4 - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - adds r0, r5, r0 - strb r0, [r2] - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] - ldrb r0, [r3] - ldr r1, [sp, 0x18] - cmp r0, r1 - bcc _08117202 - b _08117258 -_08117220: - movs r0, 0x5 - str r0, [sp, 0x18] - add r1, sp, 0x8 - movs r0, 0 - strb r0, [r1] - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0x4 - bhi _08117258 - add r3, sp, 0x10 - adds r2, r1, 0 -_08117236: - ldrb r1, [r2] - adds r1, r3 - ldrb r0, [r2] - adds r0, r5, r0 - strb r0, [r1] - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - ldrb r0, [r2] - ldr r1, [sp, 0x18] - cmp r0, r1 - bcc _08117236 - b _08117258 -_08117250: - movs r0, 0x1 - str r0, [sp, 0x18] - add r0, sp, 0x10 - strb r5, [r0] -_08117258: - add r1, sp, 0x8 - movs r0, 0 - strb r0, [r1] - adds r0, r1, 0 - ldrb r0, [r0] - ldr r1, [sp, 0x18] - cmp r0, r1 - bcs _08117360 - mov r0, sp - adds r0, 0xE - str r0, [sp, 0x1C] - add r1, sp, 0x10 - mov r9, r1 - add r0, sp, 0x8 - mov r12, r0 - mov r1, sp - adds r1, 0xA - str r1, [sp, 0x20] -_0811727C: - mov r1, r12 - ldrb r0, [r1] - add r0, r9 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - ldr r1, _08117370 @ =gUnknown_083F8C00 - adds r0, r1 - ldrb r0, [r0, 0x6] - ldr r1, [sp, 0x1C] - strb r0, [r1] - mov r1, r12 - ldrb r0, [r1] - add r0, r9 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - ldr r1, _08117370 @ =gUnknown_083F8C00 - adds r0, r1 - ldrb r0, [r0, 0x3] - ldr r1, [sp, 0x20] - strh r0, [r1] - mov r4, sp - adds r4, 0x9 - movs r0, 0 - strb r0, [r4] - ldrb r0, [r4] - cmp r0, 0x2 - bhi _08117350 - add r5, sp, 0xC - ldr r7, [sp, 0x20] - ldr r0, _08117374 @ =gBGTilemapBuffers + 0x800 - mov r8, r0 - ldr r6, [sp, 0x1C] - ldr r1, _08117378 @ =gSharedMem + 0x189A0 - mov r10, r1 -_081172C8: - mov r1, r12 - ldrb r0, [r1] - add r0, r9 - ldrb r0, [r0] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - ldr r0, _08117370 @ =gUnknown_083F8C00 - adds r1, r0 - adds r3, r4, 0 - ldrb r0, [r4] - ldrb r1, [r1, 0x4] - adds r0, r1 - lsls r0, 5 - strh r0, [r5] - ldrh r0, [r7] - ldrh r2, [r5] - adds r2, r0 - lsls r2, 1 - add r2, r8 - ldrb r0, [r6] - ldrb r1, [r4] - adds r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 1 - add r0, r10 - ldrh r0, [r0] - strh r0, [r2] - ldrh r0, [r7] - ldrh r2, [r5] - adds r2, r0 - adds r2, 0x1 - lsls r2, 1 - add r2, r8 - ldrb r0, [r6] - ldrb r1, [r4] - adds r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 1 - mov r1, r10 - adds r1, 0x2 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - ldrh r0, [r7] - ldrh r2, [r5] - adds r2, r0 - adds r2, 0x2 - lsls r2, 1 - add r2, r8 - ldrb r0, [r6] - ldrb r1, [r4] - adds r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 1 - ldr r1, _0811737C @ =gSharedMem + 0x189A4 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldrb r0, [r3] - cmp r0, 0x2 - bls _081172C8 -_08117350: - mov r1, r12 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldrb r0, [r1] - ldr r1, [sp, 0x18] - cmp r0, r1 - bcc _0811727C -_08117360: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08117370: .4byte gUnknown_083F8C00 -_08117374: .4byte gBGTilemapBuffers + 0x800 -_08117378: .4byte gSharedMem + 0x189A0 -_0811737C: .4byte gSharedMem + 0x189A4 - thumb_func_end sub_8117158 - - thumb_func_start sub_8117380 -sub_8117380: @ 8117380 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _081173B8 @ =gUnknown_083F8EF4 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x13 - bls _08117398 - movs r4, 0 -_08117398: - ldr r3, _081173BC @ =gUnknown_083F8C00 - lsls r0, r4, 2 - adds r0, r4 - lsls r2, r0, 2 - adds r0, r2, r3 - ldrb r0, [r0, 0x1] - lsls r0, 28 - lsrs r0, 28 - cmp r0, 0x4 - beq _081173EC - cmp r0, 0x4 - bgt _081173C0 - cmp r0, 0x3 - beq _081173C6 - b _08117428 - .align 2, 0 -_081173B8: .4byte gUnknown_083F8EF4 -_081173BC: .4byte gUnknown_083F8C00 -_081173C0: - cmp r0, 0xC - beq _0811740C - b _08117428 -_081173C6: - adds r0, r4, 0 - movs r1, 0x5 - bl __udivsi3 - subs r0, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081173E8 @ =gSharedMem + 0x19000 - adds r0, 0x16 - adds r1, r4, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bhi _08117428 - ldrb r0, [r1] - adds r0, 0x1 - b _08117402 - .align 2, 0 -_081173E8: .4byte gSharedMem + 0x19000 -_081173EC: - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08117408 @ =gSharedMem + 0x19000 - adds r0, 0x12 - adds r1, r4, r0 - ldrb r0, [r1] - cmp r0, 0x2 - bhi _08117428 - ldrb r0, [r1] - adds r0, 0x2 -_08117402: - add r0, sp - ldrb r0, [r0] - b _0811742A - .align 2, 0 -_08117408: .4byte gSharedMem + 0x19000 -_0811740C: - ldr r1, _08117424 @ =gSharedMem + 0x19000 - adds r0, r3, 0 - adds r0, 0x8 - adds r0, r2, r0 - ldr r1, [r1, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08117428 - mov r0, sp - ldrb r0, [r0, 0x4] - b _0811742A - .align 2, 0 -_08117424: .4byte gSharedMem + 0x19000 -_08117428: - movs r0, 0 -_0811742A: - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8117380 - - thumb_func_start sub_8117434 -sub_8117434: @ 8117434 - push {r4-r6,lr} - ldr r1, _081174AC @ =REG_BG2PA - ldr r4, _081174B0 @ =gSharedMem + 0x19000 - ldrh r0, [r4, 0x2C] - strh r0, [r1] - adds r1, 0x2 - ldrh r0, [r4, 0x2E] - strh r0, [r1] - adds r1, 0x2 - ldrh r0, [r4, 0x30] - strh r0, [r1] - adds r1, 0x2 - ldrh r0, [r4, 0x32] - strh r0, [r1] - movs r0, 0x2E - ldrsh r2, [r4, r0] - ldr r0, _081174B4 @ =gSpriteCoordOffsetY - movs r3, 0 - ldrsh r1, [r0, r3] - adds r1, 0x50 - adds r0, r2, 0 - muls r0, r1 - movs r2, 0xE8 - lsls r2, 7 - subs r2, r0 - movs r6, 0x2C - ldrsh r5, [r4, r6] - ldr r0, _081174B8 @ =gSpriteCoordOffsetX - movs r6, 0 - ldrsh r3, [r0, r6] - adds r3, 0x74 - adds r0, r5, 0 - muls r0, r3 - subs r2, r0 - movs r5, 0x32 - ldrsh r0, [r4, r5] - muls r0, r1 - movs r1, 0xA8 - lsls r1, 7 - subs r1, r0 - movs r6, 0x30 - ldrsh r0, [r4, r6] - muls r0, r3 - subs r1, r0 - ldr r0, _081174BC @ =REG_BG2X_L - strh r2, [r0] - adds r0, 0x2 - ldr r3, _081174C0 @ =0x0fff0000 - ands r2, r3 - asrs r2, 16 - strh r2, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - ands r1, r3 - asrs r1, 16 - strh r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081174AC: .4byte REG_BG2PA -_081174B0: .4byte gSharedMem + 0x19000 -_081174B4: .4byte gSpriteCoordOffsetY -_081174B8: .4byte gSpriteCoordOffsetX -_081174BC: .4byte REG_BG2X_L -_081174C0: .4byte 0x0fff0000 - thumb_func_end sub_8117434 - - thumb_func_start sub_81174C4 -sub_81174C4: @ 81174C4 - push {lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - muls r0, r1 - adds r1, r0, 0 - cmp r0, 0 - bge _081174D8 - adds r1, 0xFF -_081174D8: - lsls r0, r1, 8 - asrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_81174C4 - - thumb_func_start sub_81174E0 -sub_81174E0: @ 81174E0 - push {lr} - adds r1, r0, 0 - movs r0, 0x80 - lsls r0, 9 - lsls r1, 16 - asrs r1, 16 - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_81174E0 - - thumb_func_start sub_81174F8 -sub_81174F8: @ 81174F8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _08117520 @ =0x00002d9e - bl sub_814AAF8 - ldr r1, _08117524 @ =gUnknown_083F8EB4 - adds r0, r4, 0 - bl DoYesNoFuncWithChoice - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08117520: .4byte 0x00002d9e -_08117524: .4byte gUnknown_083F8EB4 - thumb_func_end sub_81174F8 - - thumb_func_start sub_8117528 -sub_8117528: @ 8117528 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08117554 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0811754C - movs r0, 0 - bl SetVBlankCallback - ldr r0, _08117558 @ =sub_8115384 - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_0811754C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08117554: .4byte gPaletteFade -_08117558: .4byte sub_8115384 - thumb_func_end sub_8117528 - - thumb_func_start sub_811755C -sub_811755C: @ 811755C - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1A - movs r3, 0xD - bl MenuZeroFillWindowRect - bl MenuZeroFillScreen - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r2, _081175B4 @ =gPaletteFade - ldrb r1, [r2, 0x8] - lsls r1, 26 - lsrs r1, 26 - ldrb r3, [r2, 0x4] - movs r0, 0x40 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x4] - bl UpdatePaletteFade - ldr r1, _081175B8 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081175BC @ =sub_8117528 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081175B4: .4byte gPaletteFade -_081175B8: .4byte gTasks -_081175BC: .4byte sub_8117528 - thumb_func_end sub_811755C - - thumb_func_start sub_81175C0 -sub_81175C0: @ 81175C0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl MenuZeroFillScreen - bl ScriptContext2_Disable - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81175C0 - - thumb_func_start sub_81175DC -sub_81175DC: @ 81175DC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - ldr r1, _08117624 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x8] - adds r2, r1, 0x1 - strh r2, [r0, 0x8] - ldr r0, _08117628 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08117608 - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, 0x3C - ble _0811761C -_08117608: - ldr r1, _0811762C @ =gSpecialVar_0x8004 - movs r0, 0x1 - strh r0, [r1] - bl MenuZeroFillScreen - bl ScriptContext2_Disable - adds r0, r4, 0 - bl DestroyTask -_0811761C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08117624: .4byte gTasks -_08117628: .4byte gMain -_0811762C: .4byte gSpecialVar_0x8004 - thumb_func_end sub_81175DC - - thumb_func_start sub_8117630 -sub_8117630: @ 8117630 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r2, _0811768C @ =gUnknown_083F8DF0 - ldr r0, _08117690 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - lsrs r1, 7 - lsls r1, 1 - adds r0, r1 - adds r0, r2 - ldrb r1, [r0] - ldr r0, _08117694 @ =gStringVar1 - movs r2, 0x2 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - ldr r5, _08117698 @ =gStringVar4 - ldr r1, _0811769C @ =gUnknown_081C40DF - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - adds r0, r5, 0 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _081176A0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081176A4 @ =sub_81174F8 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811768C: .4byte gUnknown_083F8DF0 -_08117690: .4byte gSpecialVar_0x8004 -_08117694: .4byte gStringVar1 -_08117698: .4byte gStringVar4 -_0811769C: .4byte gUnknown_081C40DF -_081176A0: .4byte gTasks -_081176A4: .4byte sub_81174F8 - thumb_func_end sub_8117630 - - thumb_func_start Task_Roulette_0 -Task_Roulette_0: @ 81176A8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08117758 @ =gStringVar1 - mov r10, r0 - ldr r1, _0811775C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r6, r0, r1 - movs r0, 0x22 - ldrsh r1, [r6, r0] - mov r0, r10 - movs r2, 0x1 - movs r3, 0x4 - bl ConvertIntToDecimalStringN - ldr r5, _08117760 @ =gStringVar4 - ldr r1, _08117764 @ =gOtherText_Coins - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0 - movs r1, 0 - movs r2, 0x9 - movs r3, 0x3 - bl MenuDrawTextWindow - adds r0, r5, 0 - movs r1, 0x9 - movs r2, 0x1 - bl MenuPrint_RightAligned - ldr r2, _08117768 @ =gUnknown_083F8DF0 - ldr r1, _0811776C @ =gSpecialVar_0x8004 - mov r8, r1 - ldrh r1, [r1] - movs r0, 0x1 - mov r9, r0 - ands r0, r1 - lsrs r1, 7 - lsls r1, 1 - adds r0, r1 - adds r0, r2 - ldrb r4, [r0] - mov r0, r10 - adds r1, r4, 0 - movs r2, 0x2 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - movs r1, 0x22 - ldrsh r0, [r6, r1] - cmp r0, r4 - blt _081177BC - mov r0, r8 - ldrh r1, [r0] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0811777C - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _0811777C - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldr r0, _08117770 @ =gUnknown_081C4139 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _08117774 @ =sub_8117630 - ldr r2, _08117778 @ =0x0000ffff - adds r0, r7, 0 - movs r3, 0x3 - bl sub_8116C34 - b _081177E4 - .align 2, 0 -_08117758: .4byte gStringVar1 -_0811775C: .4byte gTasks -_08117760: .4byte gStringVar4 -_08117764: .4byte gOtherText_Coins -_08117768: .4byte gUnknown_083F8DF0 -_0811776C: .4byte gSpecialVar_0x8004 -_08117770: .4byte gUnknown_081C4139 -_08117774: .4byte sub_8117630 -_08117778: .4byte 0x0000ffff -_0811777C: - ldr r4, _081177AC @ =gStringVar4 - ldr r1, _081177B0 @ =gUnknown_081C40DF - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r1, _081177B4 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _081177B8 @ =sub_81174F8 - str r1, [r0] - b _081177E4 - .align 2, 0 -_081177AC: .4byte gStringVar4 -_081177B0: .4byte gUnknown_081C40DF -_081177B4: .4byte gTasks -_081177B8: .4byte sub_81174F8 -_081177BC: - ldr r1, _081177F4 @ =gUnknown_081C411C - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - adds r0, r5, 0 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - ldr r0, _081177F8 @ =sub_81175DC - str r0, [r6] - movs r0, 0 - strh r0, [r6, 0x22] - strh r0, [r6, 0x8] -_081177E4: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081177F4: .4byte gUnknown_081C411C -_081177F8: .4byte sub_81175DC - thumb_func_end Task_Roulette_0 - - thumb_func_start PlayRoulette -PlayRoulette: @ 81177FC - push {lr} - bl ScriptContext2_Enable - ldr r0, _08117828 @ =Task_Roulette_0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0811782C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _08117830 @ =gSaveBlock1 - ldr r2, _08117834 @ =0x00000494 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1, 0x22] - pop {r0} - bx r0 - .align 2, 0 -_08117828: .4byte Task_Roulette_0 -_0811782C: .4byte gTasks -_08117830: .4byte gSaveBlock1 -_08117834: .4byte 0x00000494 - thumb_func_end PlayRoulette - - thumb_func_start sub_8117838 -sub_8117838: @ 8117838 - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _08117884 - bl FreeAllSpritePalettes - ldr r0, _08117870 @ =gUnknown_083F9E30 - bl LoadSpritePalettes - ldr r0, _08117874 @ =gUnknown_083F92A8 - ldr r4, _08117878 @ =gSharedMem + 0x17000 - adds r1, r4, 0 - bl LZ77UnCompWram - ldr r0, _0811787C @ =gUnknown_083F90FC - movs r2, 0xE0 - lsls r2, 4 - adds r1, r4, r2 - bl LZ77UnCompWram - ldr r0, _08117880 @ =gUnknown_083F9D3C - movs r1, 0x80 - lsls r1, 5 - adds r4, r1 - adds r1, r4, 0 - bl LZ77UnCompWram - b _08117888 - .align 2, 0 -_08117870: .4byte gUnknown_083F9E30 -_08117874: .4byte gUnknown_083F92A8 -_08117878: .4byte gSharedMem + 0x17000 -_0811787C: .4byte gUnknown_083F90FC -_08117880: .4byte gUnknown_083F9D3C -_08117884: - bl FreeAllSpritePalettes -_08117888: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8117838 - - thumb_func_start sub_8117890 -sub_8117890: @ 8117890 - push {r4-r6,lr} - adds r4, r1, 0 - adds r6, r2, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, [r0, 0x4] - ldrb r3, [r1] - movs r1, 0x74 - movs r2, 0x50 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - ldr r0, _081178F4 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r6] - strh r0, [r1, 0x2E] - strh r4, [r1, 0x30] - adds r3, r1, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r3] - adds r1, 0x2C - ldrb r0, [r1] - movs r2, 0x40 - orrs r0, r2 - movs r2, 0x80 - orrs r0, r2 - strb r0, [r1] - ldrh r2, [r6] - adds r0, r2, 0 - adds r0, 0x1E - strh r0, [r6] - lsls r0, 16 - ldr r1, _081178F8 @ =0x01670000 - cmp r0, r1 - bls _081178EC - ldr r1, _081178FC @ =0xfffffeb6 - adds r0, r2, r1 - strh r0, [r6] -_081178EC: - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_081178F4: .4byte gSprites -_081178F8: .4byte 0x01670000 -_081178FC: .4byte 0xfffffeb6 - thumb_func_end sub_8117890 - - thumb_func_start sub_8117900 -sub_8117900: @ 8117900 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - ldr r4, _08117A50 @ =gUnknown_083F9F54 - ldr r0, [r4] - ldr r5, _08117A54 @ =gSharedMem - adds r1, r5, 0 - bl LZ77UnCompWram - str r5, [sp] - mov r6, sp - ldrh r1, [r4, 0x6] - lsls r1, 16 - ldrh r0, [r4, 0x4] - orrs r0, r1 - str r0, [sp, 0x4] - mov r0, sp - bl LoadSpriteSheet - ldr r4, _08117A58 @ =gUnknown_083F9F5C - ldr r0, [r4] - adds r1, r5, 0 - bl LZ77UnCompWram - str r5, [sp] - ldrh r0, [r4, 0x4] - strh r0, [r6, 0x4] - ldrh r0, [r4, 0x6] - strh r0, [r6, 0x6] - mov r0, sp - bl LoadSpriteSheet - movs r7, 0 - ldr r0, _08117A5C @ =0x0001903c - adds r0, r5 - mov r9, r0 - ldr r0, _08117A60 @ =gSprites - mov r8, r0 -_08117950: - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 27 - lsrs r4, r0, 24 - movs r6, 0 - lsls r5, r7, 2 -_0811795C: - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - ldr r0, _08117A64 @ =gSpriteTemplate_83FA07C - adds r0, r1, r0 - adds r1, 0x94 - adds r2, r4, 0 - adds r2, 0x5C - movs r3, 0x1E - bl CreateSprite - adds r1, r6, 0 - adds r1, 0x1D - adds r1, r5, r1 - add r1, r9 - strb r0, [r1] - lsls r0, 24 - lsrs r1, r0, 24 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r8 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - adds r0, r4, 0 - adds r0, 0x18 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x47 - bls _081179A0 - movs r4, 0 -_081179A0: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bls _0811795C - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x2 - bls _08117950 - movs r7, 0 - ldr r5, _08117A68 @ =gSharedMem + 0x1903C - ldr r4, _08117A60 @ =gSprites -_081179BA: - lsls r1, r7, 1 - adds r1, r7 - lsls r1, 3 - ldr r0, _08117A6C @ =gSpriteTemplate_83F9FD4 - adds r0, r1, r0 - adds r1, 0x94 - lsls r1, 16 - asrs r1, 16 - movs r2, 0x46 - movs r3, 0x1E - bl CreateSprite - adds r1, r7, 0 - adds r1, 0x29 - adds r1, r5 - strb r0, [r1] - lsls r0, 24 - lsrs r1, r0, 24 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x3 - bls _081179BA - movs r7, 0 - ldr r5, _08117A68 @ =gSharedMem + 0x1903C - ldr r4, _08117A60 @ =gSprites -_08117A00: - lsls r2, r7, 1 - adds r2, r7 - lsls r2, 3 - ldr r0, _08117A70 @ =gSpriteTemplate_83FA034 - adds r0, r2, r0 - adds r2, 0x5C - lsls r2, 16 - asrs r2, 16 - movs r1, 0x7E - movs r3, 0x1E - bl CreateSprite - adds r1, r7, 0 - adds r1, 0x2D - adds r1, r5 - strb r0, [r1] - lsls r0, 24 - lsrs r1, r0, 24 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x2 - bls _08117A00 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08117A50: .4byte gUnknown_083F9F54 -_08117A54: .4byte gSharedMem -_08117A58: .4byte gUnknown_083F9F5C -_08117A5C: .4byte 0x0001903c -_08117A60: .4byte gSprites -_08117A64: .4byte gSpriteTemplate_83FA07C -_08117A68: .4byte gSharedMem + 0x1903C -_08117A6C: .4byte gSpriteTemplate_83F9FD4 -_08117A70: .4byte gSpriteTemplate_83FA034 - thumb_func_end sub_8117900 - - thumb_func_start unref_sub_8117A74 -unref_sub_8117A74: @ 8117A74 - push {r4,r5,lr} - movs r4, 0 - ldr r5, _08117AA0 @ =gSharedMem + 0x1903C -_08117A7A: - adds r0, r4, 0 - adds r0, 0x1D - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08117AA4 @ =gSprites - adds r0, r1 - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xB - bls _08117A7A - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08117AA0: .4byte gSharedMem + 0x1903C -_08117AA4: .4byte gSprites - thumb_func_end unref_sub_8117A74 - - thumb_func_start sub_8117AA8 -sub_8117AA8: @ 8117AA8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - cmp r0, 0 - beq _08117AF8 - cmp r0, 0x1 - bne _08117BA8 - movs r3, 0 - ldr r5, _08117AF0 @ =gSprites - ldr r4, _08117AF4 @ =gSharedMem + 0x1903C - movs r2, 0x4 -_08117ACA: - adds r0, r3, 0 - adds r0, 0x1D - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r2 - strb r1, [r0] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x12 - bls _08117ACA - b _08117BA8 - .align 2, 0 -_08117AF0: .4byte gSprites -_08117AF4: .4byte gSharedMem + 0x1903C -_08117AF8: - movs r3, 0 - ldr r0, _08117B48 @ =gUnknown_083F8D90 - mov r12, r0 - ldr r7, _08117B4C @ =gSharedMem + 0x19000 - movs r1, 0x4 - add r1, r12 - mov r9, r1 - ldr r5, _08117B50 @ =gSprites - adds r4, r7, 0 - adds r4, 0x3C - movs r6, 0x5 - negs r6, r6 -_08117B10: - lsls r2, r3, 3 - mov r1, r9 - adds r0, r2, r1 - ldr r1, [r7, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08117B54 - mov r1, r12 - adds r0, r2, r1 - ldrb r0, [r0, 0x2] - cmp r0, r8 - beq _08117B54 - adds r0, r3, 0 - adds r0, 0x1D - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _08117B6E - .align 2, 0 -_08117B48: .4byte gUnknown_083F8D90 -_08117B4C: .4byte gSharedMem + 0x19000 -_08117B50: .4byte gSprites -_08117B54: - adds r0, r3, 0 - adds r0, 0x1D - adds r0, r4 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - adds r1, 0x3E - ldrb r2, [r1] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] -_08117B6E: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xB - bls _08117B10 - cmp r3, 0x12 - bhi _08117BA8 - ldr r6, _08117BB4 @ =gSprites - ldr r4, _08117BB8 @ =gSharedMem + 0x1903C - movs r5, 0x5 - negs r5, r5 -_08117B84: - adds r0, r3, 0 - adds r0, 0x1D - adds r0, r4 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - adds r1, 0x3E - ldrb r2, [r1] - adds r0, r5, 0 - ands r0, r2 - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x12 - bls _08117B84 -_08117BA8: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08117BB4: .4byte gSprites -_08117BB8: .4byte gSharedMem + 0x1903C - thumb_func_end sub_8117AA8 - - thumb_func_start sub_8117BBC -sub_8117BBC: @ 8117BBC - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r5, 0 - ldr r0, _08117C50 @ =gSharedMem + 0x1903C - mov r8, r0 - ldr r4, _08117C54 @ =gSprites - movs r6, 0x4 -_08117BCC: - ldr r0, _08117C58 @ =gSpriteTemplate_83FA40C - movs r1, 0x74 - movs r2, 0x14 - movs r3, 0xA - bl CreateSprite - adds r3, r5, 0 - adds r3, 0x31 - add r3, r8 - strb r0, [r3] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r6 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0, 0x2E] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, _08117C5C @ =sub_81184CC - str r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0, 0x5] - movs r7, 0xD - negs r7, r7 - adds r2, r7, 0 - ands r1, r2 - orrs r1, r6 - strb r1, [r0, 0x5] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x8 - bl StartSpriteAnim - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08117BCC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08117C50: .4byte gSharedMem + 0x1903C -_08117C54: .4byte gSprites -_08117C58: .4byte gSpriteTemplate_83FA40C -_08117C5C: .4byte sub_81184CC - thumb_func_end sub_8117BBC - - thumb_func_start sub_8117C60 -sub_8117C60: @ 8117C60 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - movs r5, 0 - cmp r0, 0 - beq _08117CAC - ldr r4, _08117CA4 @ =gSprites - ldr r3, _08117CA8 @ =gSharedMem + 0x1903C - movs r2, 0x4 -_08117C7E: - adds r0, r5, 0 - adds r0, 0x31 - adds r0, r3 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r2 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08117C7E - b _08117D58 - .align 2, 0 -_08117CA4: .4byte gSprites -_08117CA8: .4byte gSharedMem + 0x1903C -_08117CAC: - ldr r0, _08117CEC @ =gSharedMem + 0x19000 - mov r12, r0 - ldr r6, _08117CF0 @ =gSprites - movs r0, 0x3C - add r0, r12 - mov r8, r0 - ldr r7, _08117CF4 @ =gUnknown_083F8C00 - movs r0, 0x5 - negs r0, r0 - mov r10, r0 -_08117CC0: - mov r0, r12 - adds r0, 0xC - adds r4, r5, r0 - ldrb r0, [r4] - cmp r0, 0 - beq _08117CD0 - cmp r5, r9 - bne _08117CF8 -_08117CD0: - adds r0, r5, 0 - adds r0, 0x31 - add r0, r8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _08117D4E - .align 2, 0 -_08117CEC: .4byte gSharedMem + 0x19000 -_08117CF0: .4byte gSprites -_08117CF4: .4byte gUnknown_083F8C00 -_08117CF8: - adds r3, r5, 0 - adds r3, 0x31 - add r3, r8 - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - adds r1, 0x3E - ldrb r2, [r1] - mov r0, r10 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r3] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r0, [r0, 0x3] - adds r0, 0x1 - lsls r0, 3 - adds r0, 0x4 - strh r0, [r2, 0x20] - ldrb r0, [r3] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r0, [r0, 0x4] - adds r0, 0x1 - lsls r0, 3 - adds r0, 0x3 - strh r0, [r2, 0x22] -_08117D4E: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08117CC0 -_08117D58: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8117C60 - - thumb_func_start sub_8117D68 -sub_8117D68: @ 8117D68 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08117D98 - ldr r2, _08117D90 @ =gSprites - ldr r0, _08117D94 @ =gSharedMem + 0x19000 - adds r0, 0x6C - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _08117DE2 - .align 2, 0 -_08117D90: .4byte gSprites -_08117D94: .4byte gSharedMem + 0x19000 -_08117D98: - ldr r4, _08117DE8 @ =gSprites - ldr r3, _08117DEC @ =gSharedMem + 0x19000 - adds r3, 0x6C - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldr r0, _08117DF0 @ =gUnknown_083F8C00 - lsls r2, r5, 2 - adds r2, r5 - lsls r2, 2 - adds r2, r0 - ldrb r0, [r2, 0x3] - adds r0, 0x2 - lsls r0, 3 - strh r0, [r1, 0x20] - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r0, [r2, 0x4] - adds r0, 0x2 - lsls r0, 3 - strh r0, [r1, 0x22] -_08117DE2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08117DE8: .4byte gSprites -_08117DEC: .4byte gSharedMem + 0x19000 -_08117DF0: .4byte gUnknown_083F8C00 - thumb_func_end sub_8117D68 - - thumb_func_start sub_8117DF4 -sub_8117DF4: @ 8117DF4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r4, _08117E84 @ =gUnknown_083F9EE8 - ldr r0, [r4] - ldr r5, _08117E88 @ =gSharedMem - adds r1, r5, 0 - bl LZ77UnCompWram - str r5, [sp, 0x4] - add r0, sp, 0x4 - ldrh r2, [r4, 0x6] - lsls r2, 16 - ldrh r1, [r4, 0x4] - orrs r1, r2 - str r1, [r0, 0x4] - bl LoadSpriteSheet - movs r1, 0xF - mov r0, sp - strh r1, [r0] - movs r0, 0 - ldr r1, _08117E8C @ =0x0001903c - adds r1, r5 - mov r8, r1 - ldr r7, _08117E90 @ =gSprites -_08117E2A: - movs r4, 0 - adds r6, r0, 0x1 - lsls r5, r0, 2 -_08117E30: - adds r1, r5, r4 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - ldr r1, _08117E94 @ =gSpriteTemplate_83FA0DC - adds r0, r1 - movs r1, 0x28 - mov r2, sp - bl sub_8117890 - adds r1, r4, 0x7 - adds r1, r5, r1 - add r1, r8 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r7 - adds r1, 0x2C - ldrb r0, [r1] - movs r2, 0x40 - orrs r0, r2 - movs r2, 0x80 - orrs r0, r2 - strb r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _08117E30 - lsls r0, r6, 24 - lsrs r0, 24 - cmp r0, 0x2 - bls _08117E2A - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08117E84: .4byte gUnknown_083F9EE8 -_08117E88: .4byte gSharedMem -_08117E8C: .4byte 0x0001903c -_08117E90: .4byte gSprites -_08117E94: .4byte gSpriteTemplate_83FA0DC - thumb_func_end sub_8117DF4 - - thumb_func_start sub_8117E98 -sub_8117E98: @ 8117E98 - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, _08117F1C @ =gSharedMem + 0x19000 - ldrh r1, [r6, 0x2E] - ldrh r0, [r0, 0x24] - adds r1, r0 - lsls r1, 16 - lsrs r4, r1, 16 - asrs r1, 16 - ldr r0, _08117F20 @ =0x00000167 - cmp r1, r0 - ble _08117EB8 - ldr r2, _08117F24 @ =0xfffffe98 - adds r0, r1, r2 - lsls r0, 16 - lsrs r4, r0, 16 -_08117EB8: - adds r0, r4, 0 - bl Sin2 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - bl Cos2 - lsls r2, r5, 16 - asrs r2, 16 - movs r3, 0x30 - ldrsh r1, [r6, r3] - muls r1, r2 - asrs r1, 12 - strh r1, [r6, 0x24] - lsls r0, 16 - asrs r4, r0, 16 - negs r1, r4 - movs r3, 0x30 - ldrsh r0, [r6, r3] - muls r0, r1 - asrs r0, 12 - strh r0, [r6, 0x26] - ldrb r0, [r6, 0x3] - lsls r0, 26 - lsrs r3, r0, 27 - cmp r2, 0 - bge _08117EF2 - adds r2, 0xF -_08117EF2: - lsls r0, r2, 12 - lsrs r5, r0, 16 - ldr r1, _08117F28 @ =gOamMatrices - lsls r0, r3, 3 - adds r1, r0, r1 - adds r0, r4, 0 - cmp r0, 0 - bge _08117F04 - adds r0, 0xF -_08117F04: - asrs r0, 4 - strh r0, [r1, 0x6] - strh r0, [r1] - strh r5, [r1, 0x2] - lsls r0, r5, 16 - asrs r0, 16 - negs r0, r0 - strh r0, [r1, 0x4] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08117F1C: .4byte gSharedMem + 0x19000 -_08117F20: .4byte 0x00000167 -_08117F24: .4byte 0xfffffe98 -_08117F28: .4byte gOamMatrices - thumb_func_end sub_8117E98 - - thumb_func_start sub_8117F2C -sub_8117F2C: @ 8117F2C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - movs r5, 0 - ldr r7, _081180C8 @ =gSharedMem - mov r6, sp -_08117F3A: - ldr r0, _081180CC @ =gUnknown_083FA21C - lsls r4, r5, 3 - adds r4, r0 - ldr r0, [r4] - adds r1, r7, 0 - bl LZ77UnCompWram - str r7, [sp] - ldrh r2, [r4, 0x4] - ldr r0, _081180D0 @ =0xffff0000 - ldr r1, [r6, 0x4] - ands r1, r0 - orrs r1, r2 - str r1, [r6, 0x4] - ldrh r2, [r4, 0x6] - lsls r2, 16 - ldr r0, _081180D4 @ =0x0000ffff - ands r0, r1 - orrs r0, r2 - str r0, [r6, 0x4] - mov r0, sp - bl LoadSpriteSheet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bls _08117F3A - ldr r0, _081180D8 @ =gSpriteTemplate_83FA2B0 - movs r1, 0xD0 - movs r2, 0x10 - movs r3, 0x4 - bl CreateSprite - ldr r4, _081180DC @ =gSharedMem + 0x19000 - adds r1, r4, 0 - adds r1, 0x50 - strb r0, [r1] - ldr r3, _081180E0 @ =gSprites - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - movs r5, 0 - adds r4, 0x3C - adds r7, r3, 0 -_08117FA2: - lsls r1, r5, 19 - movs r0, 0xC4 - lsls r0, 16 - adds r1, r0 - asrs r1, 16 - ldr r0, _081180E4 @ =gSpriteTemplate_83FA2C8 - movs r2, 0x18 - movs r3, 0 - bl CreateSprite - adds r3, r5, 0 - adds r3, 0x15 - adds r3, r4 - strb r0, [r3] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - adds r0, 0x2C - ldrb r1, [r0] - movs r6, 0x40 - orrs r1, r6 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _08117FA2 - ldr r0, _081180E8 @ =gSpriteTemplate_83FA2E0 - movs r1, 0x78 - movs r2, 0x44 - movs r3, 0x4 - bl CreateSprite - ldr r3, _081180DC @ =gSharedMem + 0x19000 - adds r1, r3, 0 - adds r1, 0x55 - strb r0, [r1] - ldr r2, _081180E0 @ =gSprites - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x2C - ldrb r1, [r0] - orrs r1, r6 - strb r1, [r0] - movs r5, 0 - adds r3, 0x3C - mov r8, r3 - adds r4, r2, 0 -_08118020: - lsls r1, r5, 20 - movs r0, 0xC0 - lsls r0, 16 - adds r1, r0 - asrs r1, 16 - ldr r0, _081180EC @ =gSpriteTemplate_83FA2F8 - movs r2, 0x24 - movs r3, 0x4 - bl CreateSprite - adds r2, r5, 0 - adds r2, 0x1A - add r2, r8 - strb r0, [r2] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - movs r7, 0x4 - orrs r1, r7 - strb r1, [r0] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x2C - ldrb r1, [r0] - movs r6, 0x40 - orrs r1, r6 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _08118020 - ldr r0, _081180F0 @ =gSpriteTemplate_83FA310 - movs r1, 0x98 - movs r2, 0x60 - movs r3, 0x9 - bl CreateSprite - ldr r3, _081180DC @ =gSharedMem + 0x19000 - adds r3, 0x6C - strb r0, [r3] - ldr r4, _081180E0 @ =gSprites - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r7 - strb r0, [r1, 0x5] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x2C - ldrb r1, [r0] - orrs r1, r6 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r7 - strb r1, [r0] - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081180C8: .4byte gSharedMem -_081180CC: .4byte gUnknown_083FA21C -_081180D0: .4byte 0xffff0000 -_081180D4: .4byte 0x0000ffff -_081180D8: .4byte gSpriteTemplate_83FA2B0 -_081180DC: .4byte gSharedMem + 0x19000 -_081180E0: .4byte gSprites -_081180E4: .4byte gSpriteTemplate_83FA2C8 -_081180E8: .4byte gSpriteTemplate_83FA2E0 -_081180EC: .4byte gSpriteTemplate_83FA2F8 -_081180F0: .4byte gSpriteTemplate_83FA310 - thumb_func_end sub_8117F2C - - thumb_func_start sub_81180F4 -sub_81180F4: @ 81180F4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r7, r0, 16 - movs r0, 0xFA - lsls r0, 2 - mov r8, r0 - movs r4, 0 - movs r6, 0 - ldr r1, _081181D4 @ =gSharedMem + 0x19000 - mov r9, r1 - ldr r0, _081181D8 @ =gSprites - mov r10, r0 -_08118114: - adds r0, r7, 0 - mov r1, r8 - bl __udivsi3 - lsls r0, 24 - lsrs r5, r0, 24 - adds r3, r6, 0 - adds r3, 0x15 - mov r0, r9 - adds r0, 0x3C - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _081181D8 @ =gSprites - adds r0, r1 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - adds r0, r3, 0 - cmp r5, 0 - bne _0811814E - cmp r4, 0 - bne _0811814E - cmp r6, 0x3 - bne _081181A2 -_0811814E: - mov r3, r9 - adds r3, 0x3C - adds r3, r0, r3 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - adds r0, 0x3E - ldrb r1, [r0] - movs r4, 0x5 - negs r4, r4 - adds r2, r4, 0 - ands r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - mov r1, r10 - adds r3, r0, r1 - adds r4, r3, 0 - adds r4, 0x40 - ldr r1, _081181DC @ =gSprites + 0x8 - adds r0, r1 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r5, 2 - adds r0, r1 - ldrh r2, [r0] - ldrh r4, [r4] - adds r2, r4 - ldr r4, _081181E0 @ =0x000003ff - adds r0, r4, 0 - ands r2, r0 - ldrh r0, [r3, 0x4] - ldr r4, _081181E4 @ =0xfffffc00 - adds r1, r4, 0 - ands r0, r1 - orrs r0, r2 - strh r0, [r3, 0x4] - movs r4, 0x1 -_081181A2: - adds r0, r7, 0 - mov r1, r8 - bl __umodsi3 - lsls r0, 16 - lsrs r7, r0, 16 - mov r0, r8 - movs r1, 0xA - bl __udivsi3 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bls _08118114 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081181D4: .4byte gSharedMem + 0x19000 -_081181D8: .4byte gSprites -_081181DC: .4byte gSprites + 0x8 -_081181E0: .4byte 0x000003ff -_081181E4: .4byte 0xfffffc00 - thumb_func_end sub_81180F4 - - thumb_func_start sub_81181E8 -sub_81181E8: @ 81181E8 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08118220 @ =gUnknown_083FA608 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x13 - bls _08118200 - movs r4, 0 -_08118200: - ldr r3, _08118224 @ =gUnknown_083F8C00 - lsls r0, r4, 2 - adds r0, r4 - lsls r2, r0, 2 - adds r0, r2, r3 - ldrb r0, [r0, 0x1] - lsls r0, 28 - lsrs r0, 28 - cmp r0, 0x4 - beq _08118254 - cmp r0, 0x4 - bgt _08118228 - cmp r0, 0x3 - beq _0811822E - b _08118290 - .align 2, 0 -_08118220: .4byte gUnknown_083FA608 -_08118224: .4byte gUnknown_083F8C00 -_08118228: - cmp r0, 0xC - beq _08118274 - b _08118290 -_0811822E: - adds r0, r4, 0 - movs r1, 0x5 - bl __udivsi3 - subs r0, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08118250 @ =gSharedMem + 0x19000 - adds r0, 0x16 - adds r1, r4, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bhi _08118290 - ldrb r0, [r1] - adds r0, 0x1 - b _0811826A - .align 2, 0 -_08118250: .4byte gSharedMem + 0x19000 -_08118254: - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08118270 @ =gSharedMem + 0x19000 - adds r0, 0x12 - adds r1, r4, r0 - ldrb r0, [r1] - cmp r0, 0x2 - bhi _08118290 - ldrb r0, [r1] - adds r0, 0x2 -_0811826A: - add r0, sp - ldrb r0, [r0] - b _08118292 - .align 2, 0 -_08118270: .4byte gSharedMem + 0x19000 -_08118274: - ldr r1, _0811828C @ =gSharedMem + 0x19000 - adds r0, r3, 0 - adds r0, 0x8 - adds r0, r2, r0 - ldr r1, [r1, 0x8] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08118290 - mov r0, sp - ldrb r0, [r0, 0x4] - b _08118292 - .align 2, 0 -_0811828C: .4byte gSharedMem + 0x19000 -_08118290: - movs r0, 0 -_08118292: - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81181E8 - - thumb_func_start sub_811829C -sub_811829C: @ 811829C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _081182E8 @ =gSharedMem + 0x19000 - adds r1, 0x55 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - ldr r2, _081182EC @ =gSprites - adds r4, r1, r2 - bl sub_81181E8 - adds r3, r4, 0 - adds r3, 0x2B - strb r0, [r3] - adds r2, r4, 0 - adds r2, 0x40 - ldr r1, [r4, 0x8] - ldrb r0, [r3] - ldr r1, [r1] - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - ldrh r2, [r2] - adds r1, r2 - ldr r2, _081182F0 @ =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r4, 0x4] - ldr r0, _081182F4 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081182E8: .4byte gSharedMem + 0x19000 -_081182EC: .4byte gSprites -_081182F0: .4byte 0x000003ff -_081182F4: .4byte 0xfffffc00 - thumb_func_end sub_811829C - - thumb_func_start sub_81182F8 -sub_81182F8: @ 81182F8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r2, r0, 24 - movs r5, 0 - ldr r0, _08118320 @ =gSharedMem + 0x19000 - ldrb r1, [r0, 0x19] - adds r3, r0, 0 - cmp r1, 0x1 - bne _08118310 - movs r5, 0x2 -_08118310: - cmp r2, 0x6 - bls _08118316 - b _08118464 -_08118316: - lsls r0, r2, 2 - ldr r1, _08118324 @ =_08118328 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08118320: .4byte gSharedMem + 0x19000 -_08118324: .4byte _08118328 - .align 2, 0 -_08118328: - .4byte _08118464 - .4byte _08118420 - .4byte _081183F8 - .4byte _081183EC - .4byte _081183C4 - .4byte _081183B8 - .4byte _08118344 -_08118344: - movs r4, 0 - ldr r5, _081183A8 @ =gSprites - ldr r0, _081183AC @ =gSharedMem + 0x1903C - mov r8, r0 - movs r2, 0x5 - negs r2, r2 - mov r12, r2 - adds r6, r5, 0 - adds r6, 0x8 - ldr r7, _081183B0 @ =0xfffffc00 -_08118358: - adds r3, r4, 0 - adds r3, 0x1A - add r3, r8 - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - adds r1, 0x3E - ldrb r2, [r1] - mov r0, r12 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r5 - adds r2, r3, 0 - adds r2, 0x40 - adds r0, r6 - ldr r0, [r0] - ldr r0, [r0] - ldrh r1, [r0] - ldrh r2, [r2] - adds r1, r2 - ldr r2, _081183B4 @ =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r3, 0x4] - adds r0, r7, 0 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x4] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _08118358 - b _081184B2 - .align 2, 0 -_081183A8: .4byte gSprites -_081183AC: .4byte gSharedMem + 0x1903C -_081183B0: .4byte 0xfffffc00 -_081183B4: .4byte 0x000003ff -_081183B8: - ldr r2, _081183C0 @ =gSprites - adds r0, r3, 0 - adds r0, 0x58 - b _08118426 - .align 2, 0 -_081183C0: .4byte gSprites -_081183C4: - ldr r2, _081183E8 @ =gSprites - adds r0, r3, 0 - adds r0, 0x58 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r2 - adds r4, r3, 0 - adds r4, 0x40 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r5, 2 - adds r0, r1 - ldrh r1, [r0, 0x8] - b _08118442 - .align 2, 0 -_081183E8: .4byte gSprites -_081183EC: - ldr r2, _081183F4 @ =gSprites - adds r0, r3, 0 - adds r0, 0x57 - b _08118426 - .align 2, 0 -_081183F4: .4byte gSprites -_081183F8: - ldr r2, _0811841C @ =gSprites - adds r0, r3, 0 - adds r0, 0x57 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r2 - adds r4, r3, 0 - adds r4, 0x40 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r5, 2 - adds r0, r1 - ldrh r1, [r0, 0x8] - b _08118442 - .align 2, 0 -_0811841C: .4byte gSprites -_08118420: - ldr r2, _08118458 @ =gSprites - adds r0, r3, 0 - adds r0, 0x56 -_08118426: - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r2 - adds r4, r3, 0 - adds r4, 0x40 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r5, 2 - adds r0, r1 - ldrh r1, [r0, 0x4] -_08118442: - ldrh r4, [r4] - adds r1, r4 - ldr r2, _0811845C @ =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r3, 0x4] - ldr r0, _08118460 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x4] - b _081184B2 - .align 2, 0 -_08118458: .4byte gSprites -_0811845C: .4byte 0x000003ff -_08118460: .4byte 0xfffffc00 -_08118464: - movs r4, 0 - lsls r6, r5, 2 - ldr r5, _081184BC @ =gSprites - ldr r0, _081184C0 @ =gSharedMem + 0x1903C - mov r8, r0 - adds r7, r5, 0 - adds r7, 0x8 - ldr r2, _081184C4 @ =0xfffffc00 - mov r12, r2 -_08118476: - adds r0, r4, 0 - adds r0, 0x1A - add r0, r8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r5 - adds r2, r3, 0 - adds r2, 0x40 - adds r0, r7 - ldr r0, [r0] - ldr r0, [r0] - adds r0, r6, r0 - ldrh r1, [r0, 0x8] - ldrh r2, [r2] - adds r1, r2 - ldr r2, _081184C8 @ =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r3, 0x4] - mov r0, r12 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x4] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _08118476 -_081184B2: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081184BC: .4byte gSprites -_081184C0: .4byte gSharedMem + 0x1903C -_081184C4: .4byte 0xfffffc00 -_081184C8: .4byte 0x000003ff - thumb_func_end sub_81182F8 - - thumb_func_start sub_81184CC -sub_81184CC: @ 81184CC - ldr r1, _081184D4 @ =gSharedMem + 0x19000 - ldrh r1, [r1, 0x26] - strh r1, [r0, 0x24] - bx lr - .align 2, 0 -_081184D4: .4byte gSharedMem + 0x19000 - thumb_func_end sub_81184CC - - thumb_func_start sub_81184D8 -sub_81184D8: @ 81184D8 - push {r4,r5,lr} - sub sp, 0x8 - ldr r4, _08118544 @ =gUnknown_083FA42C - ldr r0, [r4] - ldr r5, _08118548 @ =gSharedMem - adds r1, r5, 0 - bl LZ77UnCompWram - str r5, [sp] - ldrh r1, [r4, 0x6] - lsls r1, 16 - ldrh r0, [r4, 0x4] - orrs r0, r1 - str r0, [sp, 0x4] - mov r0, sp - bl LoadSpriteSheet - ldr r0, _0811854C @ =gSpriteTemplate_83FA434 - movs r1, 0x74 - movs r2, 0x50 - movs r3, 0x51 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08118550 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - movs r0, 0xC8 - lsls r0, 9 - adds r5, r0 - ldrh r0, [r5, 0x24] - movs r2, 0 - strh r0, [r1, 0x2E] - strh r2, [r1, 0x30] - adds r3, r1, 0 - adds r3, 0x2C - ldrb r0, [r3] - movs r2, 0x40 - orrs r0, r2 - movs r2, 0x80 - orrs r0, r2 - strb r0, [r3] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08118544: .4byte gUnknown_083FA42C -_08118548: .4byte gSharedMem -_0811854C: .4byte gSpriteTemplate_83FA434 -_08118550: .4byte gSprites - thumb_func_end sub_81184D8 - - thumb_func_start sub_8118554 -sub_8118554: @ 8118554 - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - ldr r1, _08118574 @ =gOamMatrices - lsls r0, 3 - adds r0, r1 - ldr r2, _08118578 @ =gSharedMem + 0x19000 - ldrh r1, [r2, 0x2C] - strh r1, [r0, 0x6] - ldrh r1, [r2, 0x2C] - strh r1, [r0] - ldrh r1, [r2, 0x2E] - strh r1, [r0, 0x2] - ldrh r1, [r2, 0x30] - strh r1, [r0, 0x4] - bx lr - .align 2, 0 -_08118574: .4byte gOamMatrices -_08118578: .4byte gSharedMem + 0x19000 - thumb_func_end sub_8118554 - - thumb_func_start sub_811857C -sub_811857C: @ 811857C - push {r4-r6,lr} - movs r4, 0 - ldr r6, _081185DC @ =gSharedMem + 0x1903C - ldr r5, _081185E0 @ =gSprites -_08118584: - movs r3, 0x39 - subs r3, r4 - lsls r3, 24 - lsrs r3, 24 - ldr r0, _081185E4 @ =gSpriteTemplate_83FA40C - movs r1, 0x74 - movs r2, 0x50 - bl CreateSprite - adds r3, r4, r6 - strb r0, [r3] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _081185CA - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] -_081185CA: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _08118584 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081185DC: .4byte gSharedMem + 0x1903C -_081185E0: .4byte gSprites -_081185E4: .4byte gSpriteTemplate_83FA40C - thumb_func_end sub_811857C - - thumb_func_start sub_81185E8 -sub_81185E8: @ 81185E8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _08118660 @ =gSharedMem + 0x19000 - adds r0, 0x3C - ldrb r5, [r0] - movs r6, 0 - ldr r7, _08118664 @ =gSprites - movs r0, 0x1C - adds r0, r7 - mov r10, r0 - movs r1, 0x2E - adds r1, r7 - mov r9, r1 - mov r8, r6 -_0811860A: - lsls r4, r5, 4 - adds r4, r5 - lsls r4, 2 - adds r0, r4, r7 - adds r3, r0, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r3] - mov r1, r10 - adds r2, r4, r1 - ldr r1, _08118668 @ =SpriteCallbackDummy - str r1, [r2] - movs r1, 0 - bl StartSpriteAnim - movs r1, 0 - adds r2, r5, 0x1 - adds r3, r6, 0x1 -_08118632: - lsls r0, r1, 1 - adds r0, r4 - add r0, r9 - mov r5, r8 - strh r5, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x7 - bls _08118632 - lsls r0, r2, 24 - lsrs r5, r0, 24 - lsls r0, r3, 24 - lsrs r6, r0, 24 - cmp r6, 0x5 - bls _0811860A - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08118660: .4byte gSharedMem + 0x19000 -_08118664: .4byte gSprites -_08118668: .4byte SpriteCallbackDummy - thumb_func_end sub_81185E8 - - thumb_func_start sub_811866C -sub_811866C: @ 811866C - push {r4,r5,lr} - adds r3, r0, 0 - ldr r0, _0811869C @ =gSharedMem + 0x19000 - ldrh r4, [r0, 0x24] - movs r2, 0x24 - ldrsh r1, [r0, r2] - ldrh r2, [r3, 0x34] - movs r5, 0x34 - ldrsh r0, [r3, r5] - cmp r1, r0 - ble _081186A8 - movs r1, 0xB4 - lsls r1, 1 - adds r0, r2, r1 - subs r2, r0, r4 - strh r2, [r3, 0x3A] - lsls r1, r2, 16 - ldr r0, _081186A0 @ =0x01670000 - cmp r1, r0 - ble _081186AC - ldr r5, _081186A4 @ =0xfffffe98 - adds r0, r2, r5 - b _081186AA - .align 2, 0 -_0811869C: .4byte gSharedMem + 0x19000 -_081186A0: .4byte 0x01670000 -_081186A4: .4byte 0xfffffe98 -_081186A8: - subs r0, r2, r4 -_081186AA: - strh r0, [r3, 0x3A] -_081186AC: - movs r1, 0x3A - ldrsh r0, [r3, r1] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811866C - - thumb_func_start sub_81186B8 -sub_81186B8: @ 81186B8 - push {r4,lr} - bl sub_811866C - ldr r4, _081186E0 @ =gSharedMem + 0x19000 - lsls r0, 16 - asrs r0, 16 - bl __floatsisf - ldr r1, _081186E4 @ =0x41f00000 - bl __divsf3 - bl __fixunssfsi - adds r4, 0x7E - strb r0, [r4] - ldrb r0, [r4] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_081186E0: .4byte gSharedMem + 0x19000 -_081186E4: .4byte 0x41f00000 - thumb_func_end sub_81186B8 - - thumb_func_start sub_81186E8 -sub_81186E8: @ 81186E8 - push {r4,lr} - adds r4, r0, 0 - bl sub_811866C - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1E - bl __modsi3 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0xE - bne _08118708 - movs r0, 0 - strh r0, [r4, 0x32] - b _0811871E -_08118708: - cmp r1, 0xD - bgt _08118710 - movs r0, 0xE - b _08118712 -_08118710: - movs r0, 0x2B -_08118712: - subs r0, r1 - lsls r0, 16 - lsrs r0, 16 - strh r0, [r4, 0x32] - lsls r0, 16 - asrs r0, 16 -_0811871E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81186E8 - - thumb_func_start sub_8118724 -sub_8118724: @ 8118724 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - ldr r5, _08118770 @ =gSharedMem + 0x19000 - adds r4, r5, 0 - adds r4, 0x8C - adds r1, r5, 0 - adds r1, 0x90 - ldr r0, [r4] - ldr r1, [r1] - bl __addsf3 - adds r1, r0, 0 - str r1, [r4] - movs r0, 0x88 - adds r0, r5 - mov r8, r0 - ldr r0, [r0] - bl __addsf3 - adds r4, r0, 0 - mov r1, r8 - str r4, [r1] - ldr r7, _08118774 @ =0x43b40000 - adds r1, r7, 0 - bl __gesf2 - cmp r0, 0 - blt _08118778 - adds r0, r4, 0 - adds r1, r7, 0 - bl __subsf3 - mov r2, r8 - str r0, [r2] - b _08118790 - .align 2, 0 -_08118770: .4byte gSharedMem + 0x19000 -_08118774: .4byte 0x43b40000 -_08118778: - ldr r1, _08118824 @ =0x00000000 - adds r0, r4, 0 - bl __ltsf2 - cmp r0, 0 - bge _08118790 - adds r0, r4, 0 - adds r1, r7, 0 - bl __addsf3 - mov r1, r8 - str r0, [r1] -_08118790: - adds r0, r5, 0 - adds r0, 0x88 - ldr r0, [r0] - bl __fixsfsi - strh r0, [r6, 0x34] - adds r4, r5, 0 - adds r4, 0x98 - adds r1, r5, 0 - adds r1, 0x9C - ldr r0, [r4] - ldr r1, [r1] - bl __addsf3 - adds r1, r0, 0 - str r1, [r4] - subs r4, 0x4 - ldr r0, [r4] - bl __addsf3 - str r0, [r4] - bl __fixsfsi - strh r0, [r6, 0x36] - ldrh r0, [r6, 0x34] - bl Sin2 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldrh r0, [r6, 0x34] - bl Cos2 - lsls r4, 16 - asrs r4, 16 - movs r2, 0x36 - ldrsh r1, [r6, r2] - muls r1, r4 - asrs r1, 12 - strh r1, [r6, 0x24] - lsls r0, 16 - asrs r0, 16 - negs r0, r0 - movs r2, 0x36 - ldrsh r1, [r6, r2] - muls r0, r1 - asrs r0, 12 - strh r0, [r6, 0x26] - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08118818 - ldr r0, _08118828 @ =gMPlay_SE1 - ldr r4, _0811882C @ =0x0000ffff - ldrh r2, [r6, 0x24] - lsls r2, 24 - asrs r2, 24 - adds r1, r4, 0 - bl m4aMPlayPanpotControl - ldr r0, _08118830 @ =gMPlay_SE2 - ldrh r2, [r6, 0x24] - lsls r2, 24 - asrs r2, 24 - adds r1, r4, 0 - bl m4aMPlayPanpotControl -_08118818: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08118824: .4byte 0x00000000 -_08118828: .4byte gMPlay_SE1 -_0811882C: .4byte 0x0000ffff -_08118830: .4byte gMPlay_SE2 - thumb_func_end sub_8118724 - - thumb_func_start sub_8118834 -sub_8118834: @ 8118834 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r1, _0811888C @ =gSharedMem + 0x19000 - ldrh r0, [r5, 0x3A] - ldrh r1, [r1, 0x24] - adds r2, r0, r1 - strh r2, [r5, 0x34] - lsls r1, r2, 16 - ldr r0, _08118890 @ =0x01670000 - cmp r1, r0 - ble _08118850 - ldr r1, _08118894 @ =0xfffffe98 - adds r0, r2, r1 - strh r0, [r5, 0x34] -_08118850: - ldrh r0, [r5, 0x34] - bl Sin2 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldrh r0, [r5, 0x34] - bl Cos2 - lsls r4, 16 - asrs r4, 16 - movs r2, 0x36 - ldrsh r1, [r5, r2] - muls r1, r4 - asrs r1, 12 - strh r1, [r5, 0x24] - lsls r0, 16 - asrs r0, 16 - negs r0, r0 - movs r2, 0x36 - ldrsh r1, [r5, r2] - muls r0, r1 - ldr r1, _08118898 @ =gSpriteCoordOffsetY - asrs r0, 12 - ldrh r1, [r1] - adds r0, r1 - strh r0, [r5, 0x26] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811888C: .4byte gSharedMem + 0x19000 -_08118890: .4byte 0x01670000 -_08118894: .4byte 0xfffffe98 -_08118898: .4byte gSpriteCoordOffsetY - thumb_func_end sub_8118834 - - thumb_func_start sub_811889C -sub_811889C: @ 811889C - push {r4-r6,lr} - adds r5, r0, 0 - bl sub_8118724 - ldrh r0, [r5, 0x32] - adds r0, 0x1 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x36] - adds r0, 0x84 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xD4 - bls _081188C2 - adds r2, r5, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - b _081188CE -_081188C2: - adds r2, r5, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 -_081188CE: - strb r0, [r2] - movs r1, 0x32 - ldrsh r0, [r5, r1] - cmp r0, 0x1D - ble _0811898E - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _08118908 - ldr r6, _08118900 @ =gSharedMem + 0x19000 - adds r4, r6, 0 - adds r4, 0x94 - adds r0, r6, 0 - adds r0, 0xA0 - ldr r0, [r0] - ldr r1, _08118904 @ =0x40000000 - bl __subsf3 - adds r1, r0, 0 - ldr r0, [r4] - bl __lesf2 - cmp r0, 0 - bgt _0811898E - b _08118926 - .align 2, 0 -_08118900: .4byte gSharedMem + 0x19000 -_08118904: .4byte 0x40000000 -_08118908: - ldr r6, _08118994 @ =gSharedMem + 0x19000 - adds r4, r6, 0 - adds r4, 0x94 - adds r0, r6, 0 - adds r0, 0xA0 - ldr r0, [r0] - ldr r1, _08118998 @ =0x40000000 - bl __subsf3 - adds r1, r0, 0 - ldr r0, [r4] - bl __gesf2 - cmp r0, 0 - blt _0811898E -_08118926: - adds r1, r6, 0 - adds r1, 0x7D - movs r0, 0xFF - strb r0, [r1] - ldrb r1, [r6, 0x3] - movs r0, 0x7F - ands r0, r1 - strb r0, [r6, 0x3] - adds r0, r5, 0 - adds r0, 0x2B - ldrb r1, [r0] - adds r1, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnim - adds r0, r5, 0 - bl sub_81186B8 - movs r0, 0x1E - strh r0, [r5, 0x36] - adds r0, r5, 0 - bl sub_811866C - movs r1, 0x3A - ldrsh r0, [r5, r1] - movs r1, 0x1E - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - lsls r1, r0, 4 - subs r1, r0 - lsls r1, 1 - adds r1, 0xF - strh r1, [r5, 0x3A] - ldr r0, _0811899C @ =sub_8118834 - str r0, [r5, 0x1C] - movs r0, 0x47 - bl m4aSongNumStartOrChange - adds r2, r6, 0 - adds r2, 0x9C - adds r1, r6, 0 - adds r1, 0x98 - ldr r0, _081189A0 @ =0x00000000 - str r0, [r1] - str r0, [r2] - subs r1, 0xC - ldr r0, _081189A4 @ =0xbf800000 - str r0, [r1] -_0811898E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08118994: .4byte gSharedMem + 0x19000 -_08118998: .4byte 0x40000000 -_0811899C: .4byte sub_8118834 -_081189A0: .4byte 0x00000000 -_081189A4: .4byte 0xbf800000 - thumb_func_end sub_811889C - - thumb_func_start sub_81189A8 -sub_81189A8: @ 81189A8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - bl sub_8118724 - movs r1, 0x34 - ldrsh r0, [r7, r1] - cmp r0, 0 - beq _081189C6 - cmp r0, 0xB4 - beq _08118A2C - b _08118B0C -_081189C6: - movs r1, 0x2E - ldrsh r0, [r7, r1] - cmp r0, 0x1 - bne _081189D0 - b _08118B0C -_081189D0: - movs r1, 0x3C - ldrsh r0, [r7, r1] - bl __floatsisf - mov r8, r0 - ldr r0, _08118A24 @ =gUnknown_083F8DF4 - mov r9, r0 - ldr r1, _08118A28 @ =gSharedMem + 0x19000 - mov r10, r1 - ldrb r4, [r1, 0x4] - lsls r4, 30 - lsrs r0, r4, 25 - add r0, r9 - ldrb r0, [r0, 0x1] - bl __floatsisf - adds r1, r0, 0 - mov r0, r8 - bl __mulsf3 - adds r6, r0, 0 - lsrs r0, r4, 25 - add r0, r9 - ldrb r0, [r0, 0x2] - subs r0, 0x1 - bl __floatsisf - adds r1, r0, 0 - adds r0, r6, 0 - bl __addsf3 - adds r5, r0, 0 - lsrs r4, 25 - add r4, r9 - ldrh r0, [r4, 0xC] - bl __floatsisf - adds r1, r0, 0 - mov r0, r8 - bl __divsf3 - b _08118A8A - .align 2, 0 -_08118A24: .4byte gUnknown_083F8DF4 -_08118A28: .4byte gSharedMem + 0x19000 -_08118A2C: - movs r1, 0x2E - ldrsh r0, [r7, r1] - cmp r0, 0 - beq _08118B0C - movs r1, 0x3C - ldrsh r0, [r7, r1] - bl __floatsisf - mov r8, r0 - ldr r0, _08118B1C @ =gUnknown_083F8DF4 - mov r9, r0 - ldr r1, _08118B20 @ =gSharedMem + 0x19000 - mov r10, r1 - ldrb r4, [r1, 0x4] - lsls r4, 30 - lsrs r0, r4, 25 - add r0, r9 - ldrb r0, [r0, 0x1] - bl __floatsisf - adds r1, r0, 0 - mov r0, r8 - bl __mulsf3 - adds r6, r0, 0 - lsrs r0, r4, 25 - add r0, r9 - ldrb r0, [r0, 0x2] - subs r0, 0x1 - bl __floatsisf - adds r1, r0, 0 - adds r0, r6, 0 - bl __addsf3 - adds r5, r0, 0 - lsrs r4, 25 - add r4, r9 - ldrh r0, [r4, 0xC] - bl __floatsisf - adds r1, r0, 0 - mov r0, r8 - bl __divsf3 - bl __negsf2 -_08118A8A: - adds r2, r0, 0 - mov r6, r10 - adds r1, r6, 0 - adds r1, 0xA0 - adds r0, r6, 0 - adds r0, 0x94 - ldr r0, [r0] - str r0, [r1] - adds r0, r6, 0 - adds r0, 0x98 - str r2, [r0] - movs r0, 0x9C - adds r0, r6 - mov r8, r0 - adds r0, r2, 0 - adds r1, r2, 0 - bl __addsf3 - adds r1, r5, 0 - bl __divsf3 - adds r4, r0, 0 - adds r0, r5, 0 - adds r1, r5, 0 - bl __mulsf3 - adds r1, r0, 0 - ldr r0, _08118B24 @ =0x40000000 - bl __divsf3 - adds r1, r0, 0 - adds r0, r4, 0 - bl __addsf3 - bl __negsf2 - mov r1, r8 - str r0, [r1] - adds r1, r6, 0 - adds r1, 0x8C - ldr r0, _08118B28 @ =0x00000000 - str r0, [r1] - adds r2, r7, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - adds r0, r7, 0 - adds r0, 0x2A - movs r2, 0 - strb r2, [r0] - adds r3, r7, 0 - adds r3, 0x3F - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - strb r0, [r3] - ldr r0, _08118B2C @ =sub_811889C - str r0, [r7, 0x1C] - strh r2, [r7, 0x32] -_08118B0C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08118B1C: .4byte gUnknown_083F8DF4 -_08118B20: .4byte gSharedMem + 0x19000 -_08118B24: .4byte 0x40000000 -_08118B28: .4byte 0x00000000 -_08118B2C: .4byte sub_811889C - thumb_func_end sub_81189A8 - - thumb_func_start sub_8118B30 -sub_8118B30: @ 8118B30 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x32 - ldrsh r0, [r5, r1] - bl __floatsisf - adds r4, r0, 0 - ldr r1, _08118BCC @ =0x3d4ccccd - bl __mulsf3 - adds r1, r4, 0 - bl __mulsf3 - bl __fixsfsi - adds r1, r0, 0 - subs r1, 0x2D - strh r1, [r5, 0x26] - ldrh r0, [r5, 0x32] - adds r0, 0x1 - strh r0, [r5, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1D - ble _08118BC6 - lsls r0, r1, 16 - cmp r0, 0 - blt _08118BC6 - ldr r4, _08118BD0 @ =gSharedMem + 0x19000 - adds r1, r4, 0 - adds r1, 0x7D - movs r0, 0xFF - strb r0, [r1] - ldrb r1, [r4, 0x3] - movs r0, 0x7F - ands r0, r1 - strb r0, [r4, 0x3] - adds r0, r5, 0 - adds r0, 0x2B - ldrb r1, [r0] - adds r1, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnim - adds r0, r5, 0 - bl sub_81186B8 - movs r0, 0x1E - strh r0, [r5, 0x36] - adds r0, r5, 0 - bl sub_811866C - movs r1, 0x3A - ldrsh r0, [r5, r1] - movs r1, 0x1E - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - lsls r1, r0, 4 - subs r1, r0 - lsls r1, 1 - adds r1, 0xF - strh r1, [r5, 0x3A] - ldr r0, _08118BD4 @ =sub_8118834 - str r0, [r5, 0x1C] - movs r0, 0x47 - bl m4aSongNumStartOrChange - ldrb r0, [r4, 0x3] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r4, 0x3] -_08118BC6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08118BCC: .4byte 0x3d4ccccd -_08118BD0: .4byte gSharedMem + 0x19000 -_08118BD4: .4byte sub_8118834 - thumb_func_end sub_8118B30 - - thumb_func_start sub_8118BD8 -sub_8118BD8: @ 8118BD8 - push {r4,lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x32] - adds r1, r0, 0x1 - strh r1, [r3, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2C - bgt _08118C1C - ldrh r4, [r3, 0x26] - subs r0, r4, 0x1 - strh r0, [r3, 0x26] - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, 0x2D - bne _08118CA2 - ldr r2, _08118C14 @ =gSprites - ldr r0, _08118C18 @ =gSharedMem + 0x19000 - adds r0, 0x73 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0x1 - bne _08118CA2 - strh r4, [r3, 0x26] - b _08118CA2 - .align 2, 0 -_08118C14: .4byte gSprites -_08118C18: .4byte gSharedMem + 0x19000 -_08118C1C: - lsls r0, r1, 16 - asrs r0, 16 - movs r2, 0x3C - ldrsh r1, [r3, r2] - cmp r0, r1 - bge _08118C68 - ldr r2, _08118C58 @ =gSprites - ldr r0, _08118C5C @ =gSharedMem + 0x19000 - adds r0, 0x73 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x2C - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bne _08118CA2 - adds r0, r1, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0x1 - bne _08118C60 - ldrh r0, [r3, 0x26] - adds r0, 0x1 - strh r0, [r3, 0x26] - b _08118CA2 - .align 2, 0 -_08118C58: .4byte gSprites -_08118C5C: .4byte gSharedMem + 0x19000 -_08118C60: - ldrh r0, [r3, 0x26] - subs r0, 0x1 - strh r0, [r3, 0x26] - b _08118CA2 -_08118C68: - adds r2, r3, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - adds r1, r3, 0 - adds r1, 0x2A - movs r2, 0 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x3F - adds r0, r3 - mov r12, r0 - ldrb r0, [r0] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - mov r1, r12 - strb r0, [r1] - strh r2, [r3, 0x32] - ldr r0, _08118CA8 @ =sub_8118B30 - str r0, [r3, 0x1C] - movs r0, 0x3D - bl m4aSongNumStart -_08118CA2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08118CA8: .4byte sub_8118B30 - thumb_func_end sub_8118BD8 - - thumb_func_start sub_8118CAC -sub_8118CAC: @ 8118CAC - push {r4,lr} - adds r4, r0, 0 - bl sub_8118724 - movs r0, 0x34 - ldrsh r1, [r4, r0] - cmp r1, 0x5A - beq _08118CC6 - movs r0, 0x87 - lsls r0, 1 - cmp r1, r0 - beq _08118CD0 - b _08118CE0 -_08118CC6: - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _08118CE0 - b _08118CD8 -_08118CD0: - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _08118CE0 -_08118CD8: - ldr r0, _08118CE8 @ =sub_8118BD8 - str r0, [r4, 0x1C] - movs r0, 0 - strh r0, [r4, 0x32] -_08118CE0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08118CE8: .4byte sub_8118BD8 - thumb_func_end sub_8118CAC - - thumb_func_start sub_8118CEC -sub_8118CEC: @ 8118CEC - push {r4,lr} - adds r4, r0, 0 - bl sub_8118724 - ldr r0, _08118D10 @ =gSharedMem + 0x19000 - ldrb r0, [r0, 0x3] - lsls r0, 27 - lsrs r0, 27 - cmp r0, 0 - beq _08118D04 - cmp r0, 0x1 - beq _08118D18 -_08118D04: - adds r0, r4, 0 - bl sub_8119224 - ldr r0, _08118D14 @ =sub_81189A8 - b _08118D20 - .align 2, 0 -_08118D10: .4byte gSharedMem + 0x19000 -_08118D14: .4byte sub_81189A8 -_08118D18: - adds r0, r4, 0 - bl sub_81193D4 - ldr r0, _08118D28 @ =sub_8118CAC -_08118D20: - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08118D28: .4byte sub_8118CAC - thumb_func_end sub_8118CEC - - thumb_func_start sub_8118D2C -sub_8118D2C: @ 8118D2C - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_8118724 - ldrh r0, [r5, 0x32] - subs r0, 0x1 - strh r0, [r5, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xF - bne _08118D50 - ldr r4, _08118DB8 @ =gSharedMem + 0x19000 - adds r4, 0x98 - ldr r0, [r4] - ldr r1, _08118DBC @ =0xbf800000 - bl __mulsf3 - str r0, [r4] -_08118D50: - movs r1, 0x32 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _08118DDC - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _08118DC4 - ldr r1, _08118DB8 @ =gSharedMem + 0x19000 - adds r2, r1, 0 - adds r2, 0x7D - movs r0, 0xFF - strb r0, [r2] - ldrb r2, [r1, 0x3] - movs r0, 0x7F - ands r0, r2 - strb r0, [r1, 0x3] - adds r0, r5, 0 - adds r0, 0x2B - ldrb r1, [r0] - adds r1, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnim - adds r0, r5, 0 - bl sub_81186B8 - movs r0, 0x1E - strh r0, [r5, 0x36] - adds r0, r5, 0 - bl sub_811866C - movs r1, 0x3A - ldrsh r0, [r5, r1] - movs r1, 0x1E - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - lsls r1, r0, 4 - subs r1, r0 - lsls r1, 1 - adds r1, 0xF - strh r1, [r5, 0x3A] - ldr r0, _08118DC0 @ =sub_8118834 - str r0, [r5, 0x1C] - movs r0, 0x47 - bl m4aSongNumStartOrChange - b _08118DDC - .align 2, 0 -_08118DB8: .4byte gSharedMem + 0x19000 -_08118DBC: .4byte 0xbf800000 -_08118DC0: .4byte sub_8118834 -_08118DC4: - adds r0, r5, 0 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - movs r0, 0x38 - bl m4aSongNumStart - adds r0, r5, 0 - bl sub_811952C -_08118DDC: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8118D2C - - thumb_func_start sub_8118DE4 -sub_8118DE4: @ 8118DE4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - bl sub_8118724 - movs r0, 0 - strh r0, [r7, 0x32] - adds r0, r7, 0 - bl sub_81186B8 - ldr r1, _08118E70 @ =gUnknown_083F8D90 - ldr r6, _08118E74 @ =gSharedMem + 0x19000 - movs r0, 0x7E - adds r0, r6 - mov r8, r0 - ldrb r0, [r0] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - ldr r1, [r6, 0x8] - ands r0, r1 - cmp r0, 0 - bne _08118E7C - adds r1, r6, 0 - adds r1, 0x7D - movs r0, 0xFF - strb r0, [r1] - ldrb r1, [r6, 0x3] - movs r0, 0x7F - ands r0, r1 - strb r0, [r6, 0x3] - adds r0, r7, 0 - adds r0, 0x2B - ldrb r1, [r0] - adds r1, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r7, 0 - bl StartSpriteAnim - adds r0, r7, 0 - bl sub_81186B8 - movs r0, 0x1E - strh r0, [r7, 0x36] - adds r0, r7, 0 - bl sub_811866C - movs r1, 0x3A - ldrsh r0, [r7, r1] - movs r1, 0x1E - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - lsls r1, r0, 4 - subs r1, r0 - lsls r1, 1 - adds r1, 0xF - strh r1, [r7, 0x3A] - ldr r0, _08118E78 @ =sub_8118834 - str r0, [r7, 0x1C] - movs r0, 0x47 - bl m4aSongNumStartOrChange - b _08118F74 - .align 2, 0 -_08118E70: .4byte gUnknown_083F8D90 -_08118E74: .4byte gSharedMem + 0x19000 -_08118E78: .4byte sub_8118834 -_08118E7C: - movs r0, 0x38 - bl m4aSongNumStart - bl Random - movs r2, 0x1 - mov r9, r2 - mov r1, r9 - ands r1, r0 - mov r9, r1 - cmp r1, 0 - beq _08118EC0 - adds r1, r6, 0 - adds r1, 0x8C - ldr r0, _08118EB8 @ =0x00000000 - str r0, [r1] - mov r2, r8 - ldrb r0, [r2] - adds r0, 0x1 - movs r1, 0xC - bl __modsi3 - lsls r1, r0, 24 - lsrs r2, r1, 24 - adds r1, r6, 0 - adds r1, 0x7F - strb r0, [r1] - ldr r5, _08118EBC @ =gUnknown_083F8DF4 - b _08118EF4 - .align 2, 0 -_08118EB8: .4byte 0x00000000 -_08118EBC: .4byte gUnknown_083F8DF4 -_08118EC0: - adds r4, r6, 0 - adds r4, 0x8C - ldr r5, _08118F1C @ =gUnknown_083F8DF4 - ldrb r0, [r6, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, [r0] - adds r0, r1, 0 - bl __addsf3 - str r0, [r4] - mov r0, r8 - ldrb r4, [r0] - adds r0, r4, 0 - adds r0, 0xB - movs r1, 0xC - bl __modsi3 - lsls r0, 24 - lsrs r2, r0, 24 - adds r0, r6, 0 - adds r0, 0x7F - strb r4, [r0] -_08118EF4: - ldr r0, _08118F20 @ =gUnknown_083F8D90 - lsls r1, r2, 3 - adds r0, 0x4 - adds r1, r0 - ldr r2, _08118F24 @ =gSharedMem + 0x19000 - ldr r1, [r1] - ldr r0, [r2, 0x8] - ands r1, r0 - cmp r1, 0 - beq _08118F28 - movs r0, 0x1 - strh r0, [r7, 0x2E] - ldrb r0, [r2, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r5 - ldrb r0, [r0, 0x2] - strh r0, [r7, 0x32] - b _08118F64 - .align 2, 0 -_08118F1C: .4byte gUnknown_083F8DF4 -_08118F20: .4byte gUnknown_083F8D90 -_08118F24: .4byte gSharedMem + 0x19000 -_08118F28: - strh r1, [r7, 0x2E] - ldrb r1, [r2, 0x4] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08118F40 - lsls r0, r1, 30 - lsrs r0, 25 - adds r0, r5 - ldrb r0, [r0, 0x1] - strh r0, [r7, 0x32] - b _08118F64 -_08118F40: - lsls r0, r1, 30 - lsrs r0, 25 - adds r0, r5 - ldrb r0, [r0, 0x2] - strh r0, [r7, 0x32] - mov r1, r9 - cmp r1, 0 - beq _08118F5C - adds r1, r2, 0 - adds r1, 0x8C - ldr r0, _08118F58 @ =0x3f000000 - b _08118F62 - .align 2, 0 -_08118F58: .4byte 0x3f000000 -_08118F5C: - adds r1, r2, 0 - adds r1, 0x8C - ldr r0, _08118F80 @ =0xbfc00000 -_08118F62: - str r0, [r1] -_08118F64: - adds r1, r2, 0 - adds r1, 0x98 - ldr r0, _08118F84 @ =0x3dae147b - str r0, [r1] - ldr r0, _08118F88 @ =sub_8118D2C - str r0, [r7, 0x1C] - movs r0, 0x5 - strh r0, [r7, 0x30] -_08118F74: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08118F80: .4byte 0xbfc00000 -_08118F84: .4byte 0x3dae147b -_08118F88: .4byte sub_8118D2C - thumb_func_end sub_8118DE4 - - thumb_func_start sub_8118F8C -sub_8118F8C: @ 8118F8C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - bl sub_8118724 - ldr r5, _08119018 @ =gSharedMem + 0x19000 - movs r0, 0x8C - adds r0, r5 - mov r8, r0 - ldr r0, [r0] - ldr r1, _0811901C @ =0x3f000000 - bl __gtsf2 - cmp r0, 0 - bgt _0811906E - adds r0, r6, 0 - bl sub_81186B8 - adds r0, r6, 0 - bl sub_81186E8 - lsls r0, 16 - cmp r0, 0 - bne _08119030 - adds r1, r5, 0 - adds r1, 0x90 - ldr r0, _08119020 @ =0x00000000 - str r0, [r1] - ldr r1, _08119024 @ =gUnknown_083F8DF4 - mov r9, r1 - ldrb r0, [r5, 0x4] - lsls r7, r0, 30 - lsrs r0, r7, 25 - add r0, r9 - movs r4, 0x3 - ldrsb r4, [r0, r4] - adds r0, r4, 0 - bl __floatsisf - adds r5, r0, 0 - cmp r4, 0 - bge _08118FEC - ldr r1, _08119028 @ =0x43800000 - bl __addsf3 - adds r5, r0, 0 -_08118FEC: - lsrs r0, r7, 25 - add r0, r9 - ldrb r0, [r0, 0x4] - adds r0, 0x1 - bl __floatsisf - adds r1, r0, 0 - adds r0, r5, 0 - bl __divsf3 - adds r1, r0, 0 - mov r2, r8 - ldr r0, [r2] - bl __subsf3 - mov r1, r8 - str r0, [r1] - movs r0, 0x4 - strh r0, [r6, 0x30] - ldr r0, _0811902C @ =sub_8118DE4 - str r0, [r6, 0x1C] - b _0811906E - .align 2, 0 -_08119018: .4byte gSharedMem + 0x19000 -_0811901C: .4byte 0x3f000000 -_08119020: .4byte 0x00000000 -_08119024: .4byte gUnknown_083F8DF4 -_08119028: .4byte 0x43800000 -_0811902C: .4byte sub_8118DE4 -_08119030: - adds r6, r5, 0 - adds r6, 0x90 - ldr r0, [r6] - ldr r4, _0811907C @ =0x00000000 - adds r1, r4, 0 - bl __nesf2 - cmp r0, 0 - beq _0811906E - mov r2, r8 - ldr r0, [r2] - adds r1, r4, 0 - bl __ltsf2 - cmp r0, 0 - bge _0811906E - str r4, [r6] - mov r0, r8 - str r4, [r0] - adds r4, r5, 0 - adds r4, 0x98 - ldr r0, [r4] - bl __extendsfdf2 - ldr r2, _08119080 @ =0x3ff33333 - ldr r3, _08119084 @ =0x33333333 - bl __divdf3 - bl __truncdfsf2 - str r0, [r4] -_0811906E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811907C: .4byte 0x00000000 -_08119080: .4byte 0x3ff33333 -_08119084: .4byte 0x33333333 - thumb_func_end sub_8118F8C - - thumb_func_start sub_8119088 -sub_8119088: @ 8119088 - push {r4-r7,lr} - adds r6, r0, 0 - bl sub_8118724 - ldr r5, _08119120 @ =gSharedMem + 0x19000 - adds r0, r5, 0 - adds r0, 0x94 - ldr r0, [r0] - ldr r1, _08119124 @ =0x42200000 - bl __gtsf2 - cmp r0, 0 - bgt _0811911A - adds r7, r5, 0 - adds r7, 0x98 - adds r0, r5, 0 - adds r0, 0x86 - movs r1, 0 - ldrsh r4, [r0, r1] - adds r0, r4, 0 - bl __floatsisf - adds r2, r0, 0 - cmp r4, 0 - bge _081190C2 - ldr r1, _08119128 @ =0x47800000 - bl __addsf3 - adds r2, r0, 0 -_081190C2: - ldr r0, _0811912C @ =0x40800000 - adds r1, r2, 0 - bl __divsf3 - bl __negsf2 - str r0, [r7] - adds r7, r5, 0 - adds r7, 0x90 - adds r5, 0x8C - adds r0, r4, 0 - bl __floatsisf - adds r2, r0, 0 - cmp r4, 0 - bge _081190EA - ldr r1, _08119128 @ =0x47800000 - bl __addsf3 - adds r2, r0, 0 -_081190EA: - ldr r0, [r5] - adds r1, r2, 0 - bl __divsf3 - bl __negsf2 - str r0, [r7] - adds r1, r6, 0 - adds r1, 0x2A - movs r0, 0x2 - strb r0, [r1] - adds r2, r6, 0 - adds r2, 0x3F - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - strb r0, [r2] - movs r0, 0x3 - strh r0, [r6, 0x30] - ldr r0, _08119130 @ =sub_8118F8C - str r0, [r6, 0x1C] -_0811911A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08119120: .4byte gSharedMem + 0x19000 -_08119124: .4byte 0x42200000 -_08119128: .4byte 0x47800000 -_0811912C: .4byte 0x40800000 -_08119130: .4byte sub_8118F8C - thumb_func_end sub_8119088 - - thumb_func_start sub_8119134 -sub_8119134: @ 8119134 - push {r4-r7,lr} - adds r6, r0, 0 - bl sub_8118724 - ldr r4, _081191DC @ =gSharedMem + 0x19000 - adds r0, r4, 0 - adds r0, 0x94 - ldr r0, [r0] - ldr r1, _081191E0 @ =0x42700000 - bl __gtsf2 - cmp r0, 0 - bgt _081191D4 - movs r0, 0x5D - bl m4aSongNumStartOrChange - adds r7, r4, 0 - adds r7, 0x98 - adds r0, r4, 0 - adds r0, 0x84 - movs r1, 0 - ldrsh r5, [r0, r1] - adds r0, r5, 0 - bl __floatsisf - adds r2, r0, 0 - cmp r5, 0 - bge _08119174 - ldr r1, _081191E4 @ =0x47800000 - bl __addsf3 - adds r2, r0, 0 -_08119174: - ldr r0, _081191E8 @ =0x41a00000 - adds r1, r2, 0 - bl __divsf3 - bl __negsf2 - str r0, [r7] - adds r7, r4, 0 - adds r7, 0x90 - adds r0, r4, 0 - adds r0, 0x8C - ldr r1, [r0] - ldr r0, _081191EC @ =0x3f800000 - bl __subsf3 - adds r4, r0, 0 - adds r0, r5, 0 - bl __floatsisf - adds r2, r0, 0 - cmp r5, 0 - bge _081191A8 - ldr r1, _081191E4 @ =0x47800000 - bl __addsf3 - adds r2, r0, 0 -_081191A8: - adds r0, r4, 0 - adds r1, r2, 0 - bl __divsf3 - str r0, [r7] - adds r1, r6, 0 - adds r1, 0x2A - movs r0, 0x1 - strb r0, [r1] - adds r2, r6, 0 - adds r2, 0x3F - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - strb r0, [r2] - movs r0, 0x2 - strh r0, [r6, 0x30] - ldr r0, _081191F0 @ =sub_8119088 - str r0, [r6, 0x1C] -_081191D4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081191DC: .4byte gSharedMem + 0x19000 -_081191E0: .4byte 0x42700000 -_081191E4: .4byte 0x47800000 -_081191E8: .4byte 0x41a00000 -_081191EC: .4byte 0x3f800000 -_081191F0: .4byte sub_8119088 - thumb_func_end sub_8119134 - - thumb_func_start sub_81191F4 -sub_81191F4: @ 81191F4 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0 - movs r0, 0x1 - strh r0, [r4, 0x30] - strh r1, [r4, 0x32] - adds r0, r4, 0 - bl sub_8118724 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, _08119220 @ =sub_8119134 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08119220: .4byte sub_8119134 - thumb_func_end sub_81191F4 - - thumb_func_start sub_8119224 -sub_8119224: @ 8119224 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r7, r0, 0 - ldr r1, _081193B8 @ =gUnknown_083FA60E - mov r0, sp - movs r2, 0x8 - bl memcpy - ldrh r0, [r7, 0x3C] - subs r0, 0x2 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - ldr r5, _081193BC @ =gSharedMem + 0x19000 - ldr r0, _081193C0 @ =gSpriteTemplate_83FA50C - movs r2, 0xC - negs r2, r2 - movs r1, 0x24 - movs r3, 0x32 - bl CreateSprite - adds r1, r5, 0 - adds r1, 0x73 - strb r0, [r1] - ldr r4, _081193C4 @ =gSpriteTemplate_83FA5C0 - movs r0, 0x2E - ldrsh r2, [r7, r0] - lsls r2, 2 - mov r1, sp - adds r0, r1, r2 - movs r3, 0 - ldrsh r1, [r0, r3] - mov r0, sp - adds r0, 0x2 - adds r0, r2 - movs r3, 0 - ldrsh r2, [r0, r3] - adds r0, r4, 0 - movs r3, 0x3B - bl CreateSprite - adds r1, r5, 0 - adds r1, 0x74 - strb r0, [r1] - adds r4, 0x18 - adds r0, r4, 0 - movs r1, 0x24 - movs r2, 0x8C - movs r3, 0x33 - bl CreateSprite - adds r1, r5, 0 - adds r1, 0x75 - strb r0, [r1] - ldr r3, _081193C8 @ =gSprites - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r2, [r0, 0x1] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0, 0x1] - movs r6, 0 - adds r4, r3, 0 - mov r12, r5 - ldr r0, _081193CC @ =gUnknown_083F8DF4 - mov r8, r0 - mov r10, r12 -_081192BE: - mov r1, r12 - adds r3, r1, r6 - adds r3, 0x73 - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - adds r1, 0x3E - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r1, r12 - adds r1, 0x73 - ldrb r1, [r1] - strh r1, [r0, 0x36] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r5, r12 - adds r5, 0x74 - ldrb r1, [r5] - strh r1, [r0, 0x38] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r1, r12 - adds r1, 0x75 - ldrb r1, [r1] - strh r1, [r0, 0x3A] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r1, r9 - strh r1, [r0, 0x32] - ldrb r0, [r3] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r4 - movs r0, 0x3C - ldrsh r3, [r7, r0] - mov r0, r12 - ldrb r1, [r0, 0x4] - lsls r1, 30 - lsrs r0, r1, 25 - add r0, r8 - ldrb r0, [r0, 0x1] - muls r3, r0 - lsrs r1, 25 - add r1, r8 - ldrb r0, [r1, 0x2] - ldr r1, _081193D0 @ =0x0000ffff - adds r0, r1 - adds r3, r0 - strh r3, [r2, 0x34] - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r2, _081193C8 @ =gSprites - cmp r6, 0x2 - bls _081192BE - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] - mov r3, r10 - str r7, [r3, 0x38] - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081193B8: .4byte gUnknown_083FA60E -_081193BC: .4byte gSharedMem + 0x19000 -_081193C0: .4byte gSpriteTemplate_83FA50C -_081193C4: .4byte gSpriteTemplate_83FA5C0 -_081193C8: .4byte gSprites -_081193CC: .4byte gUnknown_083F8DF4 -_081193D0: .4byte 0x0000ffff - thumb_func_end sub_8119224 - - thumb_func_start sub_81193D4 -sub_81193D4: @ 81193D4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - adds r7, r0, 0 - movs r0, 0 - mov r8, r0 - ldr r1, _08119514 @ =gUnknown_083FA616 - mov r0, sp - movs r2, 0x8 - bl memcpy - ldrh r0, [r7, 0x3C] - subs r0, 0x2 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - ldr r0, _08119518 @ =gSpriteTemplate_83FA524 - movs r1, 0x2E - ldrsh r2, [r7, r1] - lsls r2, 2 - mov r3, sp - adds r1, r3, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - mov r4, sp - adds r4, 0x2 - adds r2, r4, r2 - movs r3, 0 - ldrsh r2, [r2, r3] - movs r3, 0x32 - bl CreateSprite - ldr r6, _0811951C @ =gSharedMem + 0x19000 - adds r1, r6, 0 - adds r1, 0x73 - strb r0, [r1] - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, _08119520 @ =gSprites - adds r0, r5 - ldrh r1, [r7, 0x2E] - lsls r1, 24 - lsrs r1, 24 - bl StartSpriteAnim - ldr r0, _08119524 @ =gSpriteTemplate_83FA5F0 - movs r1, 0x2E - ldrsh r2, [r7, r1] - lsls r2, 2 - mov r3, sp - adds r1, r3, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r4, r2 - movs r3, 0 - ldrsh r2, [r4, r3] - movs r3, 0x33 - bl CreateSprite - adds r4, r6, 0 - adds r4, 0x74 - strb r0, [r4] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - mov r0, r9 - lsls r2, r0, 16 - asrs r2, 16 - ldr r3, _08119528 @ =gUnknown_083F8DF4 - ldrb r1, [r6, 0x4] - lsls r1, 30 - lsrs r0, r1, 25 - adds r0, r3 - ldrb r0, [r0, 0x1] - muls r2, r0 - lsrs r1, 25 - adds r1, r3 - ldrh r0, [r1, 0x10] - adds r0, 0x2D - adds r2, r0 - strh r2, [r7, 0x3C] - adds r3, r6, 0 -_081194A2: - mov r1, r8 - adds r2, r6, r1 - adds r2, 0x73 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r1, r6, 0 - adds r1, 0x73 - ldrb r1, [r1] - strh r1, [r0, 0x36] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r4] - strh r1, [r0, 0x38] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r4] - strh r1, [r0, 0x3A] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r9 - strh r1, [r0, 0x32] - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r0, [r7, 0x3C] - subs r0, 0x2D - strh r0, [r1, 0x34] - mov r0, r8 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r0, 0x1 - bls _081194A2 - str r7, [r3, 0x38] - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08119514: .4byte gUnknown_083FA616 -_08119518: .4byte gSpriteTemplate_83FA524 -_0811951C: .4byte gSharedMem + 0x19000 -_08119520: .4byte gSprites -_08119524: .4byte gSpriteTemplate_83FA5F0 -_08119528: .4byte gUnknown_083F8DF4 - thumb_func_end sub_81193D4 - - thumb_func_start sub_811952C -sub_811952C: @ 811952C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - mov r8, r0 - movs r0, 0 - mov r10, r0 - movs r1, 0x5 - mov r9, r1 - movs r2, 0 - str r2, [sp, 0xC] - mov r0, sp - movs r1, 0 - movs r2, 0xA - bl memset - bl Random - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0x10] - ldr r7, _08119610 @ =gSharedMem + 0x19000 - adds r0, r7, 0 - adds r0, 0x7D - movs r6, 0x1 - strb r6, [r0] - ldrb r4, [r7, 0x3] - movs r0, 0x20 - orrs r4, r0 - movs r0, 0x41 - negs r0, r0 - ands r4, r0 - strb r4, [r7, 0x3] - adds r1, r7, 0 - adds r1, 0x7E - movs r0, 0xFF - strb r0, [r1] - adds r5, r7, 0 - adds r5, 0x88 - mov r3, r8 - movs r1, 0x34 - ldrsh r0, [r3, r1] - bl __floatsisf - str r0, [r5] - adds r1, r7, 0 - adds r1, 0x98 - ldr r0, _08119614 @ =0x00000000 - str r0, [r1] - adds r3, r7, 0 - adds r3, 0x8C - ldr r2, _08119618 @ =gUnknown_083F8DF4 - ldrb r0, [r7, 0x4] - lsls r0, 30 - lsrs r1, r0, 25 - adds r2, 0x1C - adds r1, r2 - ldr r1, [r1] - str r1, [r3] - lsrs r0, 30 - lsls r1, r0, 4 - subs r1, r0 - lsls r1, 1 - adds r1, 0x21 - lsls r4, 27 - lsrs r4, 27 - subs r6, r4 - lsls r0, r6, 4 - subs r0, r6 - adds r1, r0 - lsls r1, 16 - lsrs r1, 16 - mov r5, r10 - mov r3, r8 - movs r0, 0x34 - ldrsh r2, [r3, r0] -_081195C8: - cmp r1, r2 - bge _081195D4 - adds r0, r1, 0 - adds r0, 0x5A - cmp r2, r0 - ble _08119638 -_081195D4: - cmp r5, 0x3 - beq _0811961C - adds r0, r1, 0 - adds r0, 0x5A - lsls r0, 16 - lsrs r1, r0, 16 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _081195C8 -_081195EA: - ldr r0, _08119610 @ =gSharedMem + 0x19000 - ldrb r1, [r0, 0x3] - movs r0, 0x1F - ands r0, r1 - cmp r0, 0 - beq _08119664 - mov r1, r8 - movs r2, 0x2E - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _08119658 - movs r0, 0x98 - lsls r0, 1 - movs r1, 0x3F - negs r1, r1 - bl PlayCry1 - b _08119670 - .align 2, 0 -_08119610: .4byte gSharedMem + 0x19000 -_08119614: .4byte 0x00000000 -_08119618: .4byte gUnknown_083F8DF4 -_0811961C: - movs r0, 0x1 - mov r3, r8 - strh r0, [r3, 0x2E] - ldr r2, _08119634 @ =gSharedMem + 0x19000 - ldrb r1, [r2, 0x3] - subs r0, 0x21 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x3] - b _081195EA - .align 2, 0 -_08119634: .4byte gSharedMem + 0x19000 -_08119638: - lsrs r0, r5, 1 - mov r1, r8 - strh r0, [r1, 0x2E] - ldr r3, _08119654 @ =gSharedMem + 0x19000 - movs r1, 0x1 - ands r1, r5 - ldrb r2, [r3, 0x3] - movs r0, 0x20 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x3] - b _081195EA - .align 2, 0 -_08119654: .4byte gSharedMem + 0x19000 -_08119658: - movs r0, 0x98 - lsls r0, 1 - movs r1, 0x3F - bl PlayCry1 - b _08119670 -_08119664: - movs r0, 0x99 - lsls r0, 1 - movs r1, 0x3F - negs r1, r1 - bl PlayCry1 -_08119670: - movs r5, 0x2 - ldr r4, _081196A0 @ =gSharedMem + 0x19000 - adds r0, r4, 0 - adds r0, 0x7F - ldrb r0, [r0] - adds r0, 0x2 - movs r1, 0xC - bl __modsi3 - lsls r0, 24 - lsrs r3, r0, 24 - ldrb r1, [r4, 0x3] - movs r0, 0x1F - ands r0, r1 - cmp r0, 0x1 - bne _081196A4 - ldrb r1, [r4, 0x4] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _081196A4 - mov r0, r9 - adds r0, 0x6 - b _081196A8 - .align 2, 0 -_081196A0: .4byte gSharedMem + 0x19000 -_081196A4: - mov r2, r9 - adds r0, r2, r5 -_081196A8: - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - cmp r5, r9 - bcs _0811970E - ldr r6, _08119734 @ =gSharedMem + 0x19000 - ldr r7, _08119738 @ =gUnknown_083F8C00 + 0xC -_081196B6: - lsls r0, r3, 3 - ldr r1, _0811973C @ =gUnknown_083F8D90 + 0x4 - adds r0, r1 - ldr r1, [r6, 0x8] - ldr r2, [r0] - ands r1, r2 - cmp r1, 0 - bne _081196F8 - mov r0, r10 - adds r1, r0, 0x1 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - add r0, sp - strb r5, [r0] - ldr r0, [sp, 0xC] - cmp r0, 0 - bne _081196F8 - ldrb r0, [r6, 0x1A] - lsls r0, 28 - lsrs r0, 28 - ldr r1, _08119740 @ =gSharedMem + 0x1901B - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldr r0, [r0] - ands r2, r0 - cmp r2, 0 - beq _081196F8 - str r5, [sp, 0xC] -_081196F8: - adds r0, r3, 0x1 - movs r1, 0xC - bl __modsi3 - lsls r0, 24 - lsrs r3, r0, 24 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, r9 - bcc _081196B6 -_0811970E: - ldrb r0, [r4, 0x3] - lsls r0, 27 - lsrs r0, 27 - adds r0, 0x1 - ldrb r1, [r4, 0x2] - ands r0, r1 - cmp r0, 0 - beq _08119756 - ldr r2, [sp, 0xC] - cmp r2, 0 - beq _08119744 - movs r0, 0xFF - ldr r3, [sp, 0x10] - ands r0, r3 - cmp r0, 0xBF - bhi _08119744 - mov r0, r8 - strh r2, [r0, 0x3C] - b _08119766 - .align 2, 0 -_08119734: .4byte gSharedMem + 0x19000 -_08119738: .4byte gUnknown_083F8C00 + 0xC -_0811973C: .4byte gUnknown_083F8D90 + 0x4 -_08119740: .4byte gSharedMem + 0x1901B -_08119744: - ldr r0, [sp, 0x10] - mov r1, r10 - bl __modsi3 - add r0, sp - ldrb r0, [r0] - mov r1, r8 - strh r0, [r1, 0x3C] - b _08119766 -_08119756: - ldr r0, [sp, 0x10] - mov r1, r10 - bl __modsi3 - add r0, sp - ldrb r0, [r0] - mov r2, r8 - strh r0, [r2, 0x3C] -_08119766: - ldr r3, _0811977C @ =sub_8118CEC - mov r0, r8 - str r3, [r0, 0x1C] - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811977C: .4byte sub_8118CEC - thumb_func_end sub_811952C - - thumb_func_start sub_8119780 -sub_8119780: @ 8119780 - push {r4,lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x30] - adds r1, r0, 0x1 - strh r1, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x34 - ldrsh r1, [r2, r3] - cmp r0, r1 - blt _081197CA - ldrh r0, [r2, 0x20] - subs r0, 0x2 - strh r0, [r2, 0x20] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x10 - negs r1, r1 - cmp r0, r1 - bge _081197CA - ldr r4, _081197D0 @ =gSharedMem + 0x19000 - ldrb r1, [r4, 0x3] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _081197BA - movs r0, 0x40 - orrs r0, r1 - strb r0, [r4, 0x3] -_081197BA: - adds r0, r2, 0 - bl DestroySprite - movs r0, 0 - strb r0, [r4, 0x1] - ldr r0, _081197D4 @ =gUnknown_083FA61E - ldrh r0, [r0] - strh r0, [r4, 0x34] -_081197CA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081197D0: .4byte gSharedMem + 0x19000 -_081197D4: .4byte gUnknown_083FA61E - thumb_func_end sub_8119780 - - thumb_func_start sub_81197D8 -sub_81197D8: @ 81197D8 - push {r4,lr} - sub sp, 0x18 - adds r4, r0, 0 - ldr r1, _08119854 @ =gUnknown_083FA632 - mov r0, sp - movs r2, 0x18 - bl memcpy - ldrh r0, [r4, 0x30] - adds r2, r0, 0x1 - strh r2, [r4, 0x30] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x34 - ldrsh r1, [r4, r3] - cmp r0, r1 - bge _0811985C - movs r0, 0x1 - ands r2, r0 - cmp r2, 0 - beq _08119836 - ldr r3, _08119858 @ =gSpriteCoordOffsetY - movs r0, 0x3C - ldrsh r2, [r4, r0] - lsls r2, 1 - movs r1, 0x32 - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - lsls r0, 3 - adds r2, r0 - mov r1, sp - adds r0, r1, r2 - ldrh r0, [r0] - strh r0, [r3] - movs r3, 0x3C - ldrsh r2, [r4, r3] - adds r1, r2, 0x1 - adds r0, r1, 0 - cmp r1, 0 - bge _0811982E - adds r0, r2, 0x4 -_0811982E: - asrs r0, 2 - lsls r0, 2 - subs r0, r1, r0 - strh r0, [r4, 0x3C] -_08119836: - adds r3, r4, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - b _08119884 - .align 2, 0 -_08119854: .4byte gUnknown_083FA632 -_08119858: .4byte gSpriteCoordOffsetY -_0811985C: - ldr r1, _0811988C @ =gSpriteCoordOffsetY - movs r0, 0 - strh r0, [r1] - ldr r2, _08119890 @ =gSprites - ldr r0, _08119894 @ =gSharedMem + 0x19000 - adds r0, 0x73 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x2C - ldrb r2, [r0] - movs r1, 0x41 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - adds r0, r4, 0 - bl DestroySprite -_08119884: - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0811988C: .4byte gSpriteCoordOffsetY -_08119890: .4byte gSprites -_08119894: .4byte gSharedMem + 0x19000 - thumb_func_end sub_81197D8 - - thumb_func_start sub_8119898 -sub_8119898: @ 8119898 - push {r4,r5,lr} - adds r5, r0, 0 - ldrh r0, [r5, 0x30] - adds r0, 0x1 - strh r0, [r5, 0x30] - movs r1, 0x30 - ldrsh r0, [r5, r1] - bl __floatsisf - adds r4, r0, 0 - ldr r1, _08119948 @ =0x3d1fbe77 - bl __mulsf3 - adds r1, r4, 0 - bl __mulsf3 - bl __fixsfsi - strh r0, [r5, 0x26] - ldr r3, _0811994C @ =gSharedMem + 0x19000 - ldr r2, _08119950 @ =gUnknown_083FA61E - ldrb r0, [r3, 0x1] - subs r0, 0x1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r3, 0x34] - ldrb r0, [r3, 0x1] - cmp r0, 0x12 - bhi _081198DE - adds r0, 0x1 - strb r0, [r3, 0x1] -_081198DE: - movs r1, 0x30 - ldrsh r0, [r5, r1] - cmp r0, 0x3C - ble _08119940 - movs r0, 0 - strh r0, [r5, 0x30] - ldr r3, _08119954 @ =sub_8119780 - str r3, [r5, 0x1C] - ldr r2, _08119958 @ =gSprites - movs r0, 0x3A - ldrsh r1, [r5, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, r2, 0 - adds r4, 0x1C - adds r0, r4 - str r3, [r0] - movs r0, 0x3A - ldrsh r1, [r5, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _0811995C @ =0x0000fffe - strh r1, [r0, 0x30] - movs r0, 0x38 - ldrsh r1, [r5, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - movs r0, 0x38 - ldrsh r1, [r5, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, _08119960 @ =sub_81197D8 - str r1, [r0] - movs r0, 0xD6 - bl m4aSongNumStart -_08119940: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08119948: .4byte 0x3d1fbe77 -_0811994C: .4byte gSharedMem + 0x19000 -_08119950: .4byte gUnknown_083FA61E -_08119954: .4byte sub_8119780 -_08119958: .4byte gSprites -_0811995C: .4byte 0x0000fffe -_08119960: .4byte sub_81197D8 - thumb_func_end sub_8119898 - - thumb_func_start sub_8119964 -sub_8119964: @ 8119964 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x3C - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _081199E4 - ldr r3, _08119990 @ =gSharedMem + 0x19000 - ldr r1, [r3, 0x38] - movs r2, 0x2E - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08119998 - movs r0, 0x34 - ldrsh r2, [r1, r0] - ldr r1, _08119994 @ =gUnknown_083F8DF4 - ldrb r0, [r3, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r1 - ldrh r0, [r0, 0x8] - b _081199AA - .align 2, 0 -_08119990: .4byte gSharedMem + 0x19000 -_08119994: .4byte gUnknown_083F8DF4 -_08119998: - movs r0, 0x34 - ldrsh r2, [r1, r0] - ldr r1, _081199D8 @ =gUnknown_083F8DF4 - ldrb r0, [r3, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r1 - ldrh r0, [r0, 0x8] - adds r0, 0xB4 -_081199AA: - cmp r2, r0 - bne _08119A78 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldrh r0, [r4, 0x3C] - adds r0, 0x1 - strh r0, [r4, 0x3C] - movs r0, 0x2B - bl m4aSongNumStart - ldr r1, _081199DC @ =gSharedMem + 0x19000 - movs r0, 0x1 - strb r0, [r1, 0x1] - ldr r0, _081199E0 @ =gUnknown_083FA61E - ldrh r0, [r0] - strh r0, [r1, 0x34] - b _08119A78 - .align 2, 0 -_081199D8: .4byte gUnknown_083F8DF4 -_081199DC: .4byte gSharedMem + 0x19000 -_081199E0: .4byte gUnknown_083FA61E -_081199E4: - ldr r3, _08119A20 @ =gSharedMem + 0x19000 - ldr r2, _08119A24 @ =gUnknown_083FA61E - ldrb r0, [r3, 0x1] - subs r0, 0x1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r3, 0x34] - ldrb r0, [r3, 0x1] - cmp r0, 0x12 - bhi _08119A04 - adds r0, 0x1 - strb r0, [r3, 0x1] -_08119A04: - ldr r1, [r3, 0x38] - movs r2, 0x2E - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08119A2C - movs r0, 0x34 - ldrsh r2, [r1, r0] - ldr r1, _08119A28 @ =gUnknown_083F8DF4 - ldrb r0, [r3, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r1 - ldrh r0, [r0, 0xA] - b _08119A3E - .align 2, 0 -_08119A20: .4byte gSharedMem + 0x19000 -_08119A24: .4byte gUnknown_083FA61E -_08119A28: .4byte gUnknown_083F8DF4 -_08119A2C: - movs r0, 0x34 - ldrsh r2, [r1, r0] - ldr r1, _08119A80 @ =gUnknown_083F8DF4 - ldrb r0, [r3, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r1 - ldrh r0, [r0, 0xA] - adds r0, 0xB4 -_08119A3E: - cmp r2, r0 - bne _08119A78 - ldr r2, _08119A84 @ =gSprites - movs r0, 0x36 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r2, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, _08119A88 @ =sub_8119898 - str r1, [r0] - movs r0, 0x36 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldr r0, _08119A8C @ =SpriteCallbackDummy - str r0, [r4, 0x1C] - movs r0, 0 - strh r0, [r4, 0x3C] -_08119A78: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08119A80: .4byte gUnknown_083F8DF4 -_08119A84: .4byte gSprites -_08119A88: .4byte sub_8119898 -_08119A8C: .4byte SpriteCallbackDummy - thumb_func_end sub_8119964 - - thumb_func_start sub_8119A90 -sub_8119A90: @ 8119A90 - adds r0, 0x3E - ldrb r3, [r0] - lsls r1, r3, 29 - lsrs r1, 31 - movs r2, 0x1 - eors r2, r1 - lsls r2, 2 - movs r1, 0x5 - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0] - bx lr - thumb_func_end sub_8119A90 - - thumb_func_start sub_8119AAC -sub_8119AAC: @ 8119AAC - push {r4,r5,lr} - adds r4, r0, 0 - ldrh r2, [r4, 0x22] - movs r0, 0x22 - ldrsh r1, [r4, r0] - movs r0, 0x10 - negs r0, r0 - cmp r1, r0 - ble _08119AC4 - subs r0, r2, 0x1 - strh r0, [r4, 0x22] - b _08119B12 -_08119AC4: - ldr r0, _08119B18 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] - adds r2, r4, 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] - movs r0, 0x5E - bl m4aSongNumStop - adds r0, r4, 0 - bl DestroySprite - ldr r5, _08119B1C @ =gSprites - ldr r4, _08119B20 @ =gSharedMem + 0x19000 - adds r4, 0x74 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl DestroySprite -_08119B12: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08119B18: .4byte SpriteCallbackDummy -_08119B1C: .4byte gSprites -_08119B20: .4byte gSharedMem + 0x19000 - thumb_func_end sub_8119AAC - - thumb_func_start sub_8119B24 -sub_8119B24: @ 8119B24 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x30] - movs r2, 0x30 - ldrsh r0, [r4, r2] - cmp r0, 0 - blt _08119B4E - subs r1, 0x1 - strh r1, [r4, 0x30] - ldrh r0, [r4, 0x22] - subs r0, 0x1 - strh r0, [r4, 0x22] - lsls r1, 16 - cmp r1, 0 - bne _08119BB8 - adds r0, r4, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0x1 - bne _08119BB8 - b _08119B74 -_08119B4E: - ldrh r1, [r4, 0x34] - movs r2, 0x34 - ldrsh r0, [r4, r2] - cmp r0, 0 - blt _08119B84 - subs r0, r1, 0x1 - strh r0, [r4, 0x34] - adds r0, r4, 0 - adds r0, 0x2C - ldrb r1, [r0] - movs r0, 0x3F - ands r0, r1 - cmp r0, 0 - bne _08119BB8 - adds r0, r4, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0x1 - bne _08119B7C -_08119B74: - ldrh r0, [r4, 0x26] - adds r0, 0x1 - strh r0, [r4, 0x26] - b _08119BB8 -_08119B7C: - ldrh r0, [r4, 0x26] - subs r0, 0x1 - strh r0, [r4, 0x26] - b _08119BB8 -_08119B84: - movs r0, 0x2B - bl m4aSongNumStart - ldr r0, _08119BC0 @ =gSharedMem + 0x19000 - ldr r0, [r0, 0x38] - ldrh r1, [r0, 0x2E] - adds r1, 0x4 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - ldr r0, _08119BC4 @ =sub_8119AAC - str r0, [r4, 0x1C] - ldr r2, _08119BC8 @ =gSprites - movs r0, 0x3A - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x2C - ldrb r2, [r0] - movs r1, 0x7F - ands r1, r2 - strb r1, [r0] -_08119BB8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08119BC0: .4byte gSharedMem + 0x19000 -_08119BC4: .4byte sub_8119AAC -_08119BC8: .4byte gSprites - thumb_func_end sub_8119B24 - - thumb_func_start sub_8119BCC -sub_8119BCC: @ 8119BCC - push {r4,r5,lr} - sub sp, 0x14 - adds r4, r0, 0 - ldr r1, _08119C44 @ =gUnknown_083FA64A - mov r0, sp - movs r2, 0x2 - bl memcpy - add r5, sp, 0x4 - ldr r1, _08119C48 @ =gUnknown_083FA64C - adds r0, r5, 0 - movs r2, 0x10 - bl memcpy - ldrh r0, [r4, 0x30] - subs r1, r0, 0x1 - strh r1, [r4, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x7 - ble _08119C5C - ldr r0, _08119C4C @ =gSharedMem + 0x19000 - ldr r0, [r0, 0x38] - movs r1, 0x2E - ldrsh r0, [r0, r1] - add r0, sp - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 1 - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x20] - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08119CF6 - movs r1, 0x20 - ldrsh r0, [r4, r1] - movs r4, 0x74 - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r4, 1 - negs r4, r4 - ldr r0, _08119C50 @ =gMPlay_SE1 - ldr r5, _08119C54 @ =0x0000ffff - lsls r4, 24 - asrs r4, 24 - adds r1, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - ldr r0, _08119C58 @ =gMPlay_SE2 - adds r1, r5, 0 - adds r2, r4, 0 - bl m4aMPlayPanpotControl - b _08119CF6 - .align 2, 0 -_08119C44: .4byte gUnknown_083FA64A -_08119C48: .4byte gUnknown_083FA64C -_08119C4C: .4byte gSharedMem + 0x19000 -_08119C50: .4byte gMPlay_SE1 -_08119C54: .4byte 0x0000ffff -_08119C58: .4byte gMPlay_SE2 -_08119C5C: - lsls r0, r1, 16 - cmp r0, 0 - blt _08119CAC - ldr r0, _08119CA8 @ =gSharedMem + 0x19000 - ldr r0, [r0, 0x38] - movs r2, 0x2E - ldrsh r0, [r0, r2] - add r0, sp - movs r2, 0 - ldrsb r2, [r0, r2] - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r1, 0x7 - subs r0, r1, r0 - lsls r0, 1 - adds r0, r5, r0 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - muls r0, r2 - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x20] - movs r2, 0x30 - ldrsh r0, [r4, r2] - subs r1, r0 - lsls r1, 1 - mov r0, sp - adds r0, 0x5 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - b _08119CF6 - .align 2, 0 -_08119CA8: .4byte gSharedMem + 0x19000 -_08119CAC: - movs r0, 0x5E - bl m4aSongNumStartOrChange - ldr r0, _08119CCC @ =gSharedMem + 0x19000 - ldr r0, [r0, 0x38] - movs r2, 0x2E - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _08119CD0 - movs r0, 0x98 - lsls r0, 1 - movs r1, 0x3F - bl PlayCry1 - b _08119CDC - .align 2, 0 -_08119CCC: .4byte gSharedMem + 0x19000 -_08119CD0: - movs r0, 0x98 - lsls r0, 1 - movs r1, 0x3F - negs r1, r1 - bl PlayCry1 -_08119CDC: - ldr r0, _08119D00 @ =gSharedMem + 0x19000 - ldr r0, [r0, 0x38] - ldrh r1, [r0, 0x2E] - adds r1, 0x2 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - movs r0, 0x2D - strh r0, [r4, 0x30] - ldr r0, _08119D04 @ =sub_8119B24 - str r0, [r4, 0x1C] -_08119CF6: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08119D00: .4byte gSharedMem + 0x19000 -_08119D04: .4byte sub_8119B24 - thumb_func_end sub_8119BCC - - thumb_func_start sub_8119D08 -sub_8119D08: @ 8119D08 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r1, _08119D64 @ =gUnknown_083FA64A - mov r0, sp - movs r2, 0x2 - bl memcpy - ldrh r0, [r4, 0x30] - subs r1, r0, 0x1 - strh r1, [r4, 0x30] - lsls r0, 16 - cmp r0, 0 - blt _08119D70 - ldr r0, _08119D68 @ =gSharedMem + 0x19000 - ldr r0, [r0, 0x38] - movs r1, 0x2E - ldrsh r0, [r0, r1] - add r0, sp - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 1 - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x20] - ldr r1, _08119D6C @ =gSprites - movs r2, 0x3A - ldrsh r0, [r4, r2] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r1 - adds r2, 0x3E - ldrb r3, [r2] - lsls r0, r3, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - b _08119D74 - .align 2, 0 -_08119D64: .4byte gUnknown_083FA64A -_08119D68: .4byte gSharedMem + 0x19000 -_08119D6C: .4byte gSprites -_08119D70: - ldr r0, _08119D7C @ =sub_8119A90 - str r0, [r4, 0x1C] -_08119D74: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08119D7C: .4byte sub_8119A90 - thumb_func_end sub_8119D08 - - thumb_func_start sub_8119D80 -sub_8119D80: @ 8119D80 - push {r4,lr} - adds r4, r0, 0 - ldr r3, _08119DB8 @ =gSharedMem + 0x19000 - ldr r1, [r3, 0x38] - movs r2, 0x2E - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08119DC4 - movs r0, 0x34 - ldrsh r2, [r1, r0] - ldr r1, _08119DBC @ =gUnknown_083F8DF4 - ldrb r0, [r3, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r1 - ldrh r0, [r0, 0x12] - adds r0, 0x5A - cmp r2, r0 - bne _08119E26 - ldr r2, _08119DC0 @ =gSprites - movs r0, 0x3A - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r3, 0x34 - b _08119DEE - .align 2, 0 -_08119DB8: .4byte gSharedMem + 0x19000 -_08119DBC: .4byte gUnknown_083F8DF4 -_08119DC0: .4byte gSprites -_08119DC4: - movs r0, 0x34 - ldrsh r2, [r1, r0] - ldr r1, _08119E2C @ =gUnknown_083F8DF4 - ldrb r0, [r3, 0x4] - lsls r0, 30 - lsrs r0, 25 - adds r0, r1 - ldrh r0, [r0, 0x14] - movs r1, 0x87 - lsls r1, 1 - adds r0, r1 - cmp r2, r0 - bne _08119E26 - ldr r2, _08119E30 @ =gSprites - movs r0, 0x3A - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r3, 0x2E -_08119DEE: - strh r3, [r0, 0x30] - movs r0, 0x36 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strh r3, [r0, 0x30] - movs r0, 0x3A - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, _08119E34 @ =sub_8119D08 - str r1, [r0] - movs r0, 0x36 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _08119E38 @ =sub_8119BCC - str r1, [r0] - movs r0, 0x2B - bl m4aSongNumStart -_08119E26: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08119E2C: .4byte gUnknown_083F8DF4 -_08119E30: .4byte gSprites -_08119E34: .4byte sub_8119D08 -_08119E38: .4byte sub_8119BCC - thumb_func_end sub_8119D80 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/roulette_util.s b/asm/roulette_util.s deleted file mode 100644 index 5ddaa3a6e..000000000 --- a/asm/roulette_util.s +++ /dev/null @@ -1,779 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_8124918 -sub_8124918: @ 8124918 - push {lr} - movs r1, 0 - strb r1, [r0] - strh r1, [r0, 0x2] - adds r0, 0x4 - movs r2, 0xC0 - bl memset - pop {r0} - bx r0 - thumb_func_end sub_8124918 - - thumb_func_start sub_812492C -sub_812492C: @ 812492C - push {r4-r7,lr} - adds r3, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r6, 0xF - bhi _08124948 - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 2 - adds r5, r3, r0 - ldrb r7, [r5, 0x4] - lsrs r0, r7, 7 - cmp r0, 0 - beq _0812494C -_08124948: - movs r0, 0xFF - b _081249AA -_0812494C: - ldrh r0, [r2] - movs r4, 0 - strh r0, [r5, 0x8] - ldrh r0, [r2, 0x2] - strh r0, [r5, 0xA] - ldrb r0, [r2, 0x4] - strb r0, [r5, 0xC] - ldrb r0, [r2, 0x5] - strb r0, [r5, 0xD] - ldrb r0, [r2, 0x6] - strb r0, [r5, 0xE] - ldrb r3, [r2, 0x7] - lsls r0, r3, 27 - lsrs r0, 27 - ldrb r2, [r5, 0xF] - movs r1, 0x20 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - movs r0, 0x60 - ands r0, r3 - movs r2, 0x61 - negs r2, r2 - ands r1, r2 - orrs r1, r0 - lsls r3, 24 - asrs r3, 31 - lsls r3, 7 - movs r0, 0x7F - ands r1, r0 - orrs r1, r3 - strb r1, [r5, 0xF] - subs r0, 0xFF - ands r0, r7 - movs r2, 0x80 - orrs r0, r2 - strb r0, [r5, 0x4] - strb r4, [r5, 0x6] - strb r4, [r5, 0x5] - lsls r1, 24 - cmp r1, 0 - bge _081249A4 - movs r0, 0xFF - b _081249A6 -_081249A4: - movs r0, 0x1 -_081249A6: - strb r0, [r5, 0x7] - adds r0, r6, 0 -_081249AA: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_812492C - - thumb_func_start unref_sub_81249B0 -unref_sub_81249B0: @ 81249B0 - push {r4,lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r4, r1, 0 - cmp r4, 0xF - bhi _081249DC - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 2 - adds r1, r2, r0 - ldrb r0, [r1, 0x4] - lsrs r0, 7 - cmp r0, 0 - beq _081249DC - adds r0, r1, 0x4 - movs r1, 0 - movs r2, 0xC - bl memset - adds r0, r4, 0 - b _081249DE -_081249DC: - movs r0, 0xFF -_081249DE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end unref_sub_81249B0 - - thumb_func_start sub_81249E4 -sub_81249E4: @ 81249E4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - movs r0, 0 - mov r12, r0 - ldrb r1, [r5, 0x8] - cmp r12, r1 - bcc _081249FC - b _08124B94 -_081249FC: - movs r7, 0x1F - ldr r0, _08124A2C @ =0xfffffc1f - mov r10, r0 - movs r1, 0x7D - negs r1, r1 - mov r9, r1 - movs r0, 0x1F - mov r8, r0 -_08124A0C: - ldrh r0, [r5, 0x6] - add r0, r12 - lsls r0, 1 - ldr r1, _08124A30 @ =gPlttBufferFaded - adds r3, r0, r1 - ldr r1, _08124A34 @ =gPlttBufferUnfaded - adds r6, r0, r1 - ldrb r0, [r5] - lsls r0, 25 - lsrs r0, 25 - cmp r0, 0x1 - beq _08124A38 - cmp r0, 0x2 - beq _08124A96 - b _08124B82 - .align 2, 0 -_08124A2C: .4byte 0xfffffc1f -_08124A30: .4byte gPlttBufferFaded -_08124A34: .4byte gPlttBufferUnfaded -_08124A38: - ldr r0, [r3] - lsls r2, r0, 27 - lsrs r0, r2, 27 - movs r1, 0x3 - ldrsb r1, [r5, r1] - adds r0, r1 - cmp r0, 0x1F - bhi _08124A5A - lsrs r0, r2, 27 - adds r0, r1 - ands r0, r7 - ldrb r2, [r3] - movs r1, 0x20 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3] -_08124A5A: - ldr r0, [r3] - lsls r2, r0, 22 - lsrs r0, r2, 27 - movs r1, 0x3 - ldrsb r1, [r5, r1] - adds r0, r1 - cmp r0, 0x1F - bhi _08124A7E - lsrs r0, r2, 27 - adds r0, r1 - mov r1, r8 - ands r0, r1 - lsls r0, 5 - ldrh r2, [r3] - mov r1, r10 - ands r1, r2 - orrs r1, r0 - strh r1, [r3] -_08124A7E: - ldr r0, [r3] - lsls r2, r0, 17 - lsrs r0, r2, 27 - movs r1, 0x3 - ldrsb r1, [r5, r1] - adds r0, r1 - cmp r0, 0x1F - bls _08124A90 - b _08124B82 -_08124A90: - lsrs r0, r2, 27 - adds r0, r1 - b _08124B74 -_08124A96: - movs r0, 0x3 - ldrsb r0, [r5, r0] - cmp r0, 0 - bge _08124B08 - ldr r0, [r3] - lsls r4, r0, 27 - lsrs r1, r4, 27 - movs r2, 0x3 - ldrsb r2, [r5, r2] - adds r1, r2 - ldr r0, [r6] - lsls r0, 27 - lsrs r0, 27 - cmp r1, r0 - blt _08124AC6 - lsrs r0, r4, 27 - adds r0, r2 - ands r0, r7 - ldrb r2, [r3] - movs r1, 0x20 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3] -_08124AC6: - ldr r0, [r3] - lsls r4, r0, 22 - lsrs r1, r4, 27 - movs r2, 0x3 - ldrsb r2, [r5, r2] - adds r1, r2 - ldr r0, [r6] - lsls r0, 22 - lsrs r0, 27 - cmp r1, r0 - blt _08124AF0 - lsrs r0, r4, 27 - adds r0, r2 - mov r1, r8 - ands r0, r1 - lsls r0, 5 - ldrh r2, [r3] - mov r1, r10 - ands r1, r2 - orrs r1, r0 - strh r1, [r3] -_08124AF0: - ldr r0, [r3] - lsls r4, r0, 17 - lsrs r1, r4, 27 - movs r2, 0x3 - ldrsb r2, [r5, r2] - adds r1, r2 - ldr r0, [r6] - lsls r0, 17 - lsrs r0, 27 - cmp r1, r0 - blt _08124B82 - b _08124B70 -_08124B08: - ldr r0, [r3] - lsls r4, r0, 27 - lsrs r1, r4, 27 - movs r2, 0x3 - ldrsb r2, [r5, r2] - adds r1, r2 - ldr r0, [r6] - lsls r0, 27 - lsrs r0, 27 - cmp r1, r0 - bgt _08124B30 - lsrs r0, r4, 27 - adds r0, r2 - ands r0, r7 - ldrb r2, [r3] - movs r1, 0x20 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3] -_08124B30: - ldr r0, [r3] - lsls r4, r0, 22 - lsrs r1, r4, 27 - movs r2, 0x3 - ldrsb r2, [r5, r2] - adds r1, r2 - ldr r0, [r6] - lsls r0, 22 - lsrs r0, 27 - cmp r1, r0 - bgt _08124B5A - lsrs r0, r4, 27 - adds r0, r2 - mov r1, r8 - ands r0, r1 - lsls r0, 5 - ldrh r2, [r3] - mov r1, r10 - ands r1, r2 - orrs r1, r0 - strh r1, [r3] -_08124B5A: - ldr r0, [r3] - lsls r4, r0, 17 - lsrs r1, r4, 27 - movs r2, 0x3 - ldrsb r2, [r5, r2] - adds r1, r2 - ldr r0, [r6] - lsls r0, 17 - lsrs r0, 27 - cmp r1, r0 - bgt _08124B82 -_08124B70: - lsrs r0, r4, 27 - adds r0, r2 -_08124B74: - ands r0, r7 - lsls r0, 2 - ldrb r2, [r3, 0x1] - mov r1, r9 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x1] -_08124B82: - mov r0, r12 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r12, r0 - ldrb r0, [r5, 0x8] - cmp r12, r0 - bcs _08124B94 - b _08124A0C -_08124B94: - ldrb r1, [r5, 0x2] - adds r0, r1, 0x1 - strb r0, [r5, 0x2] - ldrb r0, [r5, 0xB] - lsls r0, 27 - lsls r1, 24 - asrs r0, 3 - cmp r1, r0 - beq _08124BAA - movs r0, 0 - b _08124BDE -_08124BAA: - movs r0, 0 - strb r0, [r5, 0x2] - movs r0, 0x3 - ldrsb r0, [r5, r0] - negs r0, r0 - strb r0, [r5, 0x3] - ldrb r2, [r5] - movs r1, 0x7F - movs r0, 0x7F - ands r0, r2 - cmp r0, 0x1 - bne _08124BCA - lsls r0, r2, 25 - lsrs r0, 25 - adds r0, 0x1 - b _08124BD0 -_08124BCA: - lsls r0, r2, 25 - lsrs r0, 25 - subs r0, 0x1 -_08124BD0: - ands r0, r1 - movs r1, 0x80 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r5] - movs r0, 0x1 -_08124BDE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81249E4 - - thumb_func_start sub_8124BEC -sub_8124BEC: @ 8124BEC - push {r4,r5,lr} - adds r3, r0, 0 - movs r2, 0 - ldrb r0, [r3] - lsls r0, 25 - lsrs r0, 25 - cmp r0, 0x1 - beq _08124C02 - cmp r0, 0x2 - beq _08124C30 - b _08124C6A -_08124C02: - ldrb r0, [r3, 0x8] - cmp r2, r0 - bcs _08124C22 - ldr r4, _08124C2C @ =gPlttBufferFaded -_08124C0A: - ldrh r0, [r3, 0x6] - adds r0, r2 - lsls r0, 1 - adds r0, r4 - ldrh r1, [r3, 0x4] - strh r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r3, 0x8] - cmp r2, r0 - bcc _08124C0A -_08124C22: - ldrb r2, [r3] - lsls r1, r2, 25 - lsrs r1, 25 - adds r1, 0x1 - b _08124C5C - .align 2, 0 -_08124C2C: .4byte gPlttBufferFaded -_08124C30: - ldrb r0, [r3, 0x8] - cmp r2, r0 - bcs _08124C54 - ldr r5, _08124C74 @ =gPlttBufferFaded - ldr r4, _08124C78 @ =gPlttBufferUnfaded -_08124C3A: - ldrh r0, [r3, 0x6] - adds r0, r2 - lsls r0, 1 - adds r1, r0, r5 - adds r0, r4 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r3, 0x8] - cmp r2, r0 - bcc _08124C3A -_08124C54: - ldrb r2, [r3] - lsls r1, r2, 25 - lsrs r1, 25 - subs r1, 0x1 -_08124C5C: - movs r0, 0x7F - ands r1, r0 - movs r0, 0x80 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_08124C6A: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08124C74: .4byte gPlttBufferFaded -_08124C78: .4byte gPlttBufferUnfaded - thumb_func_end sub_8124BEC - - thumb_func_start task_tutorial_controls_fadein -task_tutorial_controls_fadein: @ 8124C7C - push {r4-r6,lr} - adds r4, r0, 0 - movs r5, 0 - ldrb r0, [r4] - cmp r0, 0 - beq _08124CE0 -_08124C88: - ldrh r0, [r4, 0x2] - asrs r0, r5 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08124CD6 - lsls r1, r5, 1 - adds r0, r1, r5 - lsls r3, r0, 2 - adds r2, r4, r3 - ldrb r0, [r2, 0x5] - subs r0, 0x1 - strb r0, [r2, 0x5] - lsls r0, 24 - lsrs r0, 24 - adds r6, r1, 0 - cmp r0, 0xFF - bne _08124CD6 - ldrh r0, [r2, 0x8] - movs r2, 0x80 - lsls r2, 8 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08124CC4 - adds r0, r3, 0x4 - adds r0, r4, r0 - bl sub_81249E4 - b _08124CCC -_08124CC4: - adds r0, r3, 0x4 - adds r0, r4, r0 - bl sub_8124BEC -_08124CCC: - adds r0, r6, r5 - lsls r0, 2 - adds r0, r4, r0 - ldrb r1, [r0, 0xD] - strb r1, [r0, 0x5] -_08124CD6: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xF - bls _08124C88 -_08124CE0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end task_tutorial_controls_fadein - - thumb_func_start sub_8124CE8 -sub_8124CE8: @ 8124CE8 - push {r4-r7,lr} - adds r3, r0, 0 - lsls r1, 16 - lsrs r6, r1, 16 - movs r4, 0 - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] - movs r5, 0x1 - movs r7, 0x80 - negs r7, r7 -_08124CFE: - adds r0, r6, 0 - asrs r0, r4 - ands r0, r5 - cmp r0, 0 - beq _08124D2C - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 2 - adds r2, r3, r0 - ldrb r0, [r2, 0x4] - lsrs r0, 7 - cmp r0, 0 - beq _08124D2C - adds r0, r5, 0 - lsls r0, r4 - ldrh r1, [r3, 0x2] - orrs r0, r1 - strh r0, [r3, 0x2] - ldrb r1, [r2, 0x4] - adds r0, r7, 0 - ands r0, r1 - orrs r0, r5 - strb r0, [r2, 0x4] -_08124D2C: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _08124CFE - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8124CE8 - - thumb_func_start sub_8124D3C -sub_8124D3C: @ 8124D3C - push {r4-r7,lr} - sub sp, 0x4 - adds r6, r0, 0 - lsls r1, 16 - lsrs r7, r1, 16 - movs r5, 0 - movs r3, 0x1 -_08124D4A: - ldrh r0, [r6, 0x2] - asrs r0, r5 - ands r0, r3 - cmp r0, 0 - beq _08124DB2 - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 2 - adds r4, r6, r0 - ldrb r0, [r4, 0x4] - lsrs r0, 7 - cmp r0, 0 - beq _08124DB2 - adds r0, r7, 0 - asrs r0, r5 - ands r0, r3 - cmp r0, 0 - beq _08124DB2 - ldrh r1, [r4, 0xA] - lsls r1, 1 - ldr r0, _08124DA8 @ =gPlttBufferFaded - adds r0, r1, r0 - ldr r2, _08124DAC @ =gPlttBufferUnfaded - adds r1, r2 - ldrb r2, [r4, 0xC] - lsls r2, 1 - str r3, [sp] - bl memcpy - ldrb r0, [r4, 0x4] - movs r2, 0x80 - negs r2, r2 - adds r1, r2, 0 - ands r0, r1 - strb r0, [r4, 0x4] - movs r0, 0 - strb r0, [r4, 0x6] - strb r0, [r4, 0x5] - ldrb r0, [r4, 0xF] - lsls r0, 24 - ldr r3, [sp] - cmp r0, 0 - bge _08124DB0 - movs r0, 0xFF - strb r0, [r4, 0x7] - b _08124DB2 - .align 2, 0 -_08124DA8: .4byte gPlttBufferFaded -_08124DAC: .4byte gPlttBufferUnfaded -_08124DB0: - strb r3, [r4, 0x7] -_08124DB2: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xF - bls _08124D4A - ldr r0, _08124DC8 @ =0x0000ffff - cmp r7, r0 - bne _08124DCC - movs r0, 0 - strb r0, [r6] - b _08124DD0 - .align 2, 0 -_08124DC8: .4byte 0x0000ffff -_08124DCC: - ldrh r0, [r6, 0x2] - bics r0, r7 -_08124DD0: - strh r0, [r6, 0x2] - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8124D3C - - thumb_func_start sub_8124DDC -sub_8124DDC: @ 8124DDC - push {r4-r7,lr} - adds r6, r0, 0 - ldr r0, [sp, 0x14] - ldr r4, [sp, 0x18] - lsls r1, 16 - lsrs r7, r1, 16 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0 - lsrs r3, 19 - adds r3, r2 - lsls r3, 1 - adds r6, r3 - cmp r1, r4 - bcs _08124E26 -_08124E04: - lsls r0, r1, 6 - adds r2, r6, r0 - movs r0, 0 - adds r3, r1, 0x1 - cmp r0, r5 - bcs _08124E1E -_08124E10: - strh r7, [r2] - adds r2, 0x2 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r5 - bcc _08124E10 -_08124E1E: - lsls r0, r3, 24 - lsrs r1, r0, 24 - cmp r1, r4 - bcc _08124E04 -_08124E26: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8124DDC - - thumb_func_start sub_8124E2C -sub_8124E2C: @ 8124E2C - push {r4-r7,lr} - adds r7, r0, 0 - ldr r0, [sp, 0x14] - ldr r4, [sp, 0x18] - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r4, 24 - lsrs r6, r4, 24 - movs r4, 0 - lsrs r3, 19 - adds r3, r2 - lsls r3, 1 - adds r7, r3 - cmp r4, r6 - bcs _08124E76 -_08124E50: - lsls r0, r4, 6 - adds r2, r7, r0 - movs r3, 0 - adds r4, 0x1 - cmp r3, r5 - bcs _08124E6E -_08124E5C: - ldrh r0, [r1] - strh r0, [r2] - adds r1, 0x2 - adds r2, 0x2 - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, r5 - bcc _08124E5C -_08124E6E: - lsls r0, r4, 24 - lsrs r4, r0, 24 - cmp r4, r6 - bcc _08124E50 -_08124E76: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8124E2C - - .align 2, 0 @ Don't pad with nop. diff --git a/constants/trainer_constants.inc b/constants/trainer_constants.inc index 48ed3036e..920ac1e32 100644 --- a/constants/trainer_constants.inc +++ b/constants/trainer_constants.inc @@ -1,80 +1,80 @@ - .set TRAINER_CLASS_AQUA_LEADER, 0 - .set TRAINER_CLASS_TEAM_AQUA_M, 1 - .set TRAINER_CLASS_TEAM_AQUA_F, 2 - .set TRAINER_CLASS_AROMA_LADY, 3 - .set TRAINER_CLASS_RUIN_MANIAC, 4 - .set TRAINER_CLASS_INTERVIEWER, 5 - .set TRAINER_CLASS_TUBER_F, 6 - .set TRAINER_CLASS_TUBER_M, 7 - .set TRAINER_CLASS_COOL_TRAINER_M, 8 - .set TRAINER_CLASS_COOL_TRAINER_F, 9 - .set TRAINER_CLASS_HEX_MANIAC, 10 - .set TRAINER_CLASS_LADY, 11 - .set TRAINER_CLASS_BEAUTY, 12 - .set TRAINER_CLASS_RICH_BOY, 13 - .set TRAINER_CLASS_POKEMANIAC, 14 - .set TRAINER_CLASS_SWIMMER_M, 15 - .set TRAINER_CLASS_BLACK_BELT, 16 - .set TRAINER_CLASS_GUITARIST, 17 - .set TRAINER_CLASS_KINDLER, 18 - .set TRAINER_CLASS_CAMPER, 19 - .set TRAINER_CLASS_BUG_MANIAC, 20 - .set TRAINER_CLASS_PSYCHIC_M, 21 - .set TRAINER_CLASS_PSYCHIC_F, 22 - .set TRAINER_CLASS_GENTLEMAN, 23 - .set TRAINER_CLASS_ELITE_FOUR_M, 24 - .set TRAINER_CLASS_ELITE_FOUR_F, 25 - .set TRAINER_CLASS_LEADER_F, 26 - .set TRAINER_CLASS_LEADER_M, 27 - .set TRAINER_CLASS_LEADER_MF, 28 - .set TRAINER_CLASS_SCHOOL_KID_M, 29 - .set TRAINER_CLASS_SCHOOL_KID_F, 30 - .set TRAINER_CLASS_SR_AND_JR, 31 - .set TRAINER_CLASS_POKEFAN_M, 32 - .set TRAINER_CLASS_POKEFAN_F, 33 - .set TRAINER_CLASS_EXPERT_M, 34 - .set TRAINER_CLASS_EXPERT_F, 35 - .set TRAINER_CLASS_YOUNGSTER, 36 - .set TRAINER_CLASS_CHAMPION, 37 - .set TRAINER_CLASS_FISHERMAN, 38 - .set TRAINER_CLASS_CYCLING_TRIATHLETE_M, 39 - .set TRAINER_CLASS_CYCLING_TRIATHLETE_F, 40 - .set TRAINER_CLASS_RUNNING_TRIATHLETE_M, 41 - .set TRAINER_CLASS_RUNNING_TRIATHLETE_F, 42 - .set TRAINER_CLASS_SWIMMING_TRIATHLETE_M, 43 - .set TRAINER_CLASS_SWIMMING_TRIATHLETE_F, 44 - .set TRAINER_CLASS_DRAGON_TAMER, 45 - .set TRAINER_CLASS_BIRD_KEEPER, 46 - .set TRAINER_CLASS_NINJA_BOY, 47 - .set TRAINER_CLASS_BATTLE_GIRL, 48 - .set TRAINER_CLASS_PARASOL_LADY, 49 - .set TRAINER_CLASS_SWIMMER_F, 50 - .set TRAINER_CLASS_PICNICKER, 51 - .set TRAINER_CLASS_TWINS, 52 - .set TRAINER_CLASS_SAILOR, 53 - .set TRAINER_CLASS_BOARDER_1, 54 - .set TRAINER_CLASS_BOARDER_2, 55 - .set TRAINER_CLASS_COLLECTOR, 56 - .set TRAINER_CLASS_WALLY, 57 - .set TRAINER_CLASS_BRENDAN_1, 58 - .set TRAINER_CLASS_BRENDAN_2, 59 - .set TRAINER_CLASS_BRENDAN_3, 60 - .set TRAINER_CLASS_MAY_1, 61 - .set TRAINER_CLASS_MAY_2, 62 - .set TRAINER_CLASS_MAY_3, 63 - .set TRAINER_CLASS_POKEMON_BREEDER_M, 64 - .set TRAINER_CLASS_POKEMON_BREEDER_F, 65 - .set TRAINER_CLASS_POKEMON_RANGER_M, 66 - .set TRAINER_CLASS_POKEMON_RANGER_F, 67 - .set TRAINER_CLASS_MAGMA_LEADER, 68 - .set TRAINER_CLASS_TEAM_MAGMA_M, 69 - .set TRAINER_CLASS_TEAM_MAGMA_F, 70 - .set TRAINER_CLASS_LASS, 71 - .set TRAINER_CLASS_BUG_CATCHER, 72 - .set TRAINER_CLASS_HIKER, 73 - .set TRAINER_CLASS_YOUNG_COUPLE, 74 - .set TRAINER_CLASS_OLD_COUPLE, 75 - .set TRAINER_CLASS_SIS_AND_BRO, 76 + .set FACILITY_CLASS_AQUA_LEADER, 0 + .set FACILITY_CLASS_TEAM_AQUA_M, 1 + .set FACILITY_CLASS_TEAM_AQUA_F, 2 + .set FACILITY_CLASS_AROMA_LADY, 3 + .set FACILITY_CLASS_RUIN_MANIAC, 4 + .set FACILITY_CLASS_INTERVIEWER, 5 + .set FACILITY_CLASS_TUBER_F, 6 + .set FACILITY_CLASS_TUBER_M, 7 + .set FACILITY_CLASS_COOL_TRAINER_M, 8 + .set FACILITY_CLASS_COOL_TRAINER_F, 9 + .set FACILITY_CLASS_HEX_MANIAC, 10 + .set FACILITY_CLASS_LADY, 11 + .set FACILITY_CLASS_BEAUTY, 12 + .set FACILITY_CLASS_RICH_BOY, 13 + .set FACILITY_CLASS_POKEMANIAC, 14 + .set FACILITY_CLASS_SWIMMER_M, 15 + .set FACILITY_CLASS_BLACK_BELT, 16 + .set FACILITY_CLASS_GUITARIST, 17 + .set FACILITY_CLASS_KINDLER, 18 + .set FACILITY_CLASS_CAMPER, 19 + .set FACILITY_CLASS_BUG_MANIAC, 20 + .set FACILITY_CLASS_PSYCHIC_M, 21 + .set FACILITY_CLASS_PSYCHIC_F, 22 + .set FACILITY_CLASS_GENTLEMAN, 23 + .set FACILITY_CLASS_ELITE_FOUR_M, 24 + .set FACILITY_CLASS_ELITE_FOUR_F, 25 + .set FACILITY_CLASS_LEADER_F, 26 + .set FACILITY_CLASS_LEADER_M, 27 + .set FACILITY_CLASS_LEADER_MF, 28 + .set FACILITY_CLASS_SCHOOL_KID_M, 29 + .set FACILITY_CLASS_SCHOOL_KID_F, 30 + .set FACILITY_CLASS_SR_AND_JR, 31 + .set FACILITY_CLASS_POKEFAN_M, 32 + .set FACILITY_CLASS_POKEFAN_F, 33 + .set FACILITY_CLASS_EXPERT_M, 34 + .set FACILITY_CLASS_EXPERT_F, 35 + .set FACILITY_CLASS_YOUNGSTER, 36 + .set FACILITY_CLASS_CHAMPION, 37 + .set FACILITY_CLASS_FISHERMAN, 38 + .set FACILITY_CLASS_CYCLING_TRIATHLETE_M, 39 + .set FACILITY_CLASS_CYCLING_TRIATHLETE_F, 40 + .set FACILITY_CLASS_RUNNING_TRIATHLETE_M, 41 + .set FACILITY_CLASS_RUNNING_TRIATHLETE_F, 42 + .set FACILITY_CLASS_SWIMMING_TRIATHLETE_M, 43 + .set FACILITY_CLASS_SWIMMING_TRIATHLETE_F, 44 + .set FACILITY_CLASS_DRAGON_TAMER, 45 + .set FACILITY_CLASS_BIRD_KEEPER, 46 + .set FACILITY_CLASS_NINJA_BOY, 47 + .set FACILITY_CLASS_BATTLE_GIRL, 48 + .set FACILITY_CLASS_PARASOL_LADY, 49 + .set FACILITY_CLASS_SWIMMER_F, 50 + .set FACILITY_CLASS_PICNICKER, 51 + .set FACILITY_CLASS_TWINS, 52 + .set FACILITY_CLASS_SAILOR, 53 + .set FACILITY_CLASS_BOARDER_1, 54 + .set FACILITY_CLASS_BOARDER_2, 55 + .set FACILITY_CLASS_COLLECTOR, 56 + .set FACILITY_CLASS_WALLY, 57 + .set FACILITY_CLASS_BRENDAN_1, 58 + .set FACILITY_CLASS_BRENDAN_2, 59 + .set FACILITY_CLASS_BRENDAN_3, 60 + .set FACILITY_CLASS_MAY_1, 61 + .set FACILITY_CLASS_MAY_2, 62 + .set FACILITY_CLASS_MAY_3, 63 + .set FACILITY_CLASS_POKEMON_BREEDER_M, 64 + .set FACILITY_CLASS_POKEMON_BREEDER_F, 65 + .set FACILITY_CLASS_POKEMON_RANGER_M, 66 + .set FACILITY_CLASS_POKEMON_RANGER_F, 67 + .set FACILITY_CLASS_MAGMA_LEADER, 68 + .set FACILITY_CLASS_TEAM_MAGMA_M, 69 + .set FACILITY_CLASS_TEAM_MAGMA_F, 70 + .set FACILITY_CLASS_LASS, 71 + .set FACILITY_CLASS_BUG_CATCHER, 72 + .set FACILITY_CLASS_HIKER, 73 + .set FACILITY_CLASS_YOUNG_COUPLE, 74 + .set FACILITY_CLASS_OLD_COUPLE, 75 + .set FACILITY_CLASS_SIS_AND_BRO, 76 .set TRAINER_PIC_BRENDAN, 0 .set TRAINER_PIC_MAY, 1 @@ -160,64 +160,64 @@ .set TRAINER_PIC_GLACIA, 81 .set TRAINER_PIC_DRAKE, 82 - .set TRAINER_CLASS_NAME_POKEMON_TRAINER_1, 0 - .set TRAINER_CLASS_NAME_POKEMON_TRAINER_2, 1 - .set TRAINER_CLASS_NAME_AQUA_LEADER, 2 - .set TRAINER_CLASS_NAME_TEAM_AQUA, 3 - .set TRAINER_CLASS_NAME_AQUA_ADMIN, 4 - .set TRAINER_CLASS_NAME_AROMA_LADY, 5 - .set TRAINER_CLASS_NAME_RUIN_MANIAC, 6 - .set TRAINER_CLASS_NAME_INTERVIEWER, 7 - .set TRAINER_CLASS_NAME_TUBER_F, 8 - .set TRAINER_CLASS_NAME_TUBER_M, 9 - .set TRAINER_CLASS_NAME_COOL_TRAINER, 10 - .set TRAINER_CLASS_NAME_HEX_MANIAC, 11 - .set TRAINER_CLASS_NAME_LADY, 12 - .set TRAINER_CLASS_NAME_BEAUTY, 13 - .set TRAINER_CLASS_NAME_RICH_BOY, 14 - .set TRAINER_CLASS_NAME_POKEMANIAC, 15 - .set TRAINER_CLASS_NAME_SWIMMER_M, 16 - .set TRAINER_CLASS_NAME_BLACK_BELT, 17 - .set TRAINER_CLASS_NAME_GUITARIST, 18 - .set TRAINER_CLASS_NAME_KINDLER, 19 - .set TRAINER_CLASS_NAME_CAMPER, 20 - .set TRAINER_CLASS_NAME_BUG_MANIAC, 21 - .set TRAINER_CLASS_NAME_PSYCHIC, 22 - .set TRAINER_CLASS_NAME_GENTLEMAN, 23 - .set TRAINER_CLASS_NAME_ELITE_FOUR, 24 - .set TRAINER_CLASS_NAME_LEADER, 25 - .set TRAINER_CLASS_NAME_SCHOOL_KID, 26 - .set TRAINER_CLASS_NAME_SR_AND_JR, 27 - .set TRAINER_CLASS_NAME_WINSTRATE, 28 - .set TRAINER_CLASS_NAME_POKEFAN, 29 - .set TRAINER_CLASS_NAME_EXPERT, 30 - .set TRAINER_CLASS_NAME_YOUNGSTER, 31 - .set TRAINER_CLASS_NAME_CHAMPION, 32 - .set TRAINER_CLASS_NAME_FISHERMAN, 33 - .set TRAINER_CLASS_NAME_TRIATHLETE, 34 - .set TRAINER_CLASS_NAME_DRAGON_TAMER, 35 - .set TRAINER_CLASS_NAME_BIRD_KEEPER, 36 - .set TRAINER_CLASS_NAME_NINJA_BOY, 37 - .set TRAINER_CLASS_NAME_BATTLE_GIRL, 38 - .set TRAINER_CLASS_NAME_PARASOL_LADY, 39 - .set TRAINER_CLASS_NAME_SWIMMER_F, 40 - .set TRAINER_CLASS_NAME_PICNICKER, 41 - .set TRAINER_CLASS_NAME_TWINS, 42 - .set TRAINER_CLASS_NAME_SAILOR, 43 - .set TRAINER_CLASS_NAME_BOARDER, 44 - .set TRAINER_CLASS_NAME_COLLECTOR, 45 - .set TRAINER_CLASS_NAME_POKEMON_TRAINER_3, 46 - .set TRAINER_CLASS_NAME_POKEMON_BREEDER, 47 - .set TRAINER_CLASS_NAME_POKEMON_RANGER, 48 - .set TRAINER_CLASS_NAME_MAGMA_LEADER, 49 - .set TRAINER_CLASS_NAME_TEAM_MAGMA, 50 - .set TRAINER_CLASS_NAME_MAGMA_ADMIN, 51 - .set TRAINER_CLASS_NAME_LASS, 52 - .set TRAINER_CLASS_NAME_BUG_CATCHER, 53 - .set TRAINER_CLASS_NAME_HIKER, 54 - .set TRAINER_CLASS_NAME_YOUNG_COUPLE, 55 - .set TRAINER_CLASS_NAME_OLD_COUPLE, 56 - .set TRAINER_CLASS_NAME_SIS_AND_BRO, 57 + .set TRAINER_CLASS_POKEMON_TRAINER_1, 0 + .set TRAINER_CLASS_POKEMON_TRAINER_2, 1 + .set TRAINER_CLASS_AQUA_LEADER, 2 + .set TRAINER_CLASS_TEAM_AQUA, 3 + .set TRAINER_CLASS_AQUA_ADMIN, 4 + .set TRAINER_CLASS_AROMA_LADY, 5 + .set TRAINER_CLASS_RUIN_MANIAC, 6 + .set TRAINER_CLASS_INTERVIEWER, 7 + .set TRAINER_CLASS_TUBER_F, 8 + .set TRAINER_CLASS_TUBER_M, 9 + .set TRAINER_CLASS_COOL_TRAINER, 10 + .set TRAINER_CLASS_HEX_MANIAC, 11 + .set TRAINER_CLASS_LADY, 12 + .set TRAINER_CLASS_BEAUTY, 13 + .set TRAINER_CLASS_RICH_BOY, 14 + .set TRAINER_CLASS_POKEMANIAC, 15 + .set TRAINER_CLASS_SWIMMER_M, 16 + .set TRAINER_CLASS_BLACK_BELT, 17 + .set TRAINER_CLASS_GUITARIST, 18 + .set TRAINER_CLASS_KINDLER, 19 + .set TRAINER_CLASS_CAMPER, 20 + .set TRAINER_CLASS_BUG_MANIAC, 21 + .set TRAINER_CLASS_PSYCHIC, 22 + .set TRAINER_CLASS_GENTLEMAN, 23 + .set TRAINER_CLASS_ELITE_FOUR, 24 + .set TRAINER_CLASS_LEADER, 25 + .set TRAINER_CLASS_SCHOOL_KID, 26 + .set TRAINER_CLASS_SR_AND_JR, 27 + .set TRAINER_CLASS_WINSTRATE, 28 + .set TRAINER_CLASS_POKEFAN, 29 + .set TRAINER_CLASS_EXPERT, 30 + .set TRAINER_CLASS_YOUNGSTER, 31 + .set TRAINER_CLASS_CHAMPION, 32 + .set TRAINER_CLASS_FISHERMAN, 33 + .set TRAINER_CLASS_TRIATHLETE, 34 + .set TRAINER_CLASS_DRAGON_TAMER, 35 + .set TRAINER_CLASS_BIRD_KEEPER, 36 + .set TRAINER_CLASS_NINJA_BOY, 37 + .set TRAINER_CLASS_BATTLE_GIRL, 38 + .set TRAINER_CLASS_PARASOL_LADY, 39 + .set TRAINER_CLASS_SWIMMER_F, 40 + .set TRAINER_CLASS_PICNICKER, 41 + .set TRAINER_CLASS_TWINS, 42 + .set TRAINER_CLASS_SAILOR, 43 + .set TRAINER_CLASS_BOARDER, 44 + .set TRAINER_CLASS_COLLECTOR, 45 + .set TRAINER_CLASS_POKEMON_TRAINER_3, 46 + .set TRAINER_CLASS_POKEMON_BREEDER, 47 + .set TRAINER_CLASS_POKEMON_RANGER, 48 + .set TRAINER_CLASS_MAGMA_LEADER, 49 + .set TRAINER_CLASS_TEAM_MAGMA, 50 + .set TRAINER_CLASS_MAGMA_ADMIN, 51 + .set TRAINER_CLASS_LASS, 52 + .set TRAINER_CLASS_BUG_CATCHER, 53 + .set TRAINER_CLASS_HIKER, 54 + .set TRAINER_CLASS_YOUNG_COUPLE, 55 + .set TRAINER_CLASS_OLD_COUPLE, 56 + .set TRAINER_CLASS_SIS_AND_BRO, 57 .set TRAINER_ENCOUNTER_MUSIC_MALE, 0 @ standard male encounter music .set TRAINER_ENCOUNTER_MUSIC_FEMALE, 1 @ standard female encounter music diff --git a/data-de/trainers.inc b/data-de/trainers.inc index 47e4c2289..39bfd9bfe 100644 --- a/data-de/trainers.inc +++ b/data-de/trainers.inc @@ -2,7 +2,7 @@ gTrainers:: @ 81F04FC @ NONE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_1 + .byte TRAINER_CLASS_POKEMON_TRAINER_1 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "$", 12 @@ -14,7 +14,7 @@ gTrainers:: @ 81F04FC @ ARCHIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_LEADER + .byte TRAINER_CLASS_AQUA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_ARCHIE .string "ADRIAN$", 12 @@ -26,7 +26,7 @@ gTrainers:: @ 81F04FC @ GRUNT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -38,7 +38,7 @@ gTrainers:: @ 81F04FC @ GRUNT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -50,7 +50,7 @@ gTrainers:: @ 81F04FC @ GRUNT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -62,7 +62,7 @@ gTrainers:: @ 81F04FC @ GRUNT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -74,7 +74,7 @@ gTrainers:: @ 81F04FC @ GRUNT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -86,7 +86,7 @@ gTrainers:: @ 81F04FC @ GRUNT_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -98,7 +98,7 @@ gTrainers:: @ 81F04FC @ GRUNT_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -110,7 +110,7 @@ gTrainers:: @ 81F04FC @ GRUNT_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -122,7 +122,7 @@ gTrainers:: @ 81F04FC @ GRUNT_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -134,7 +134,7 @@ gTrainers:: @ 81F04FC @ GRUNT_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -146,7 +146,7 @@ gTrainers:: @ 81F04FC @ GRUNT_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -158,7 +158,7 @@ gTrainers:: @ 81F04FC @ GRUNT_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -170,7 +170,7 @@ gTrainers:: @ 81F04FC @ GRUNT_13 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -182,7 +182,7 @@ gTrainers:: @ 81F04FC @ GRUNT_14 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -194,7 +194,7 @@ gTrainers:: @ 81F04FC @ GRUNT_15 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -206,7 +206,7 @@ gTrainers:: @ 81F04FC @ GRUNT_16 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -218,7 +218,7 @@ gTrainers:: @ 81F04FC @ GRUNT_17 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -230,7 +230,7 @@ gTrainers:: @ 81F04FC @ GRUNT_18 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -242,7 +242,7 @@ gTrainers:: @ 81F04FC @ GRUNT_19 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -254,7 +254,7 @@ gTrainers:: @ 81F04FC @ GRUNT_20 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -266,7 +266,7 @@ gTrainers:: @ 81F04FC @ GRUNT_21 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -278,7 +278,7 @@ gTrainers:: @ 81F04FC @ GRUNT_22 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -290,7 +290,7 @@ gTrainers:: @ 81F04FC @ GRUNT_23 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -302,7 +302,7 @@ gTrainers:: @ 81F04FC @ GRUNT_24 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "RÜPEL$", 12 @@ -314,7 +314,7 @@ gTrainers:: @ 81F04FC @ GRUNT_25 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_F .string "RÜPEL$", 12 @@ -326,7 +326,7 @@ gTrainers:: @ 81F04FC @ GRUNT_26 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_F .string "RÜPEL$", 12 @@ -338,7 +338,7 @@ gTrainers:: @ 81F04FC @ GRUNT_27 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_F .string "RÜPEL$", 12 @@ -350,7 +350,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_M .string "$", 12 @@ -362,7 +362,7 @@ gTrainers:: @ 81F04FC @ MATT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_M .string "WOLFGANG$", 12 @@ -374,7 +374,7 @@ gTrainers:: @ 81F04FC @ MATT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_M .string "WOLFGANG$", 12 @@ -386,7 +386,7 @@ gTrainers:: @ 81F04FC @ SHELLY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_F .string "KORDULA$", 12 @@ -398,7 +398,7 @@ gTrainers:: @ 81F04FC @ SHELLY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_F .string "KORDULA$", 12 @@ -410,7 +410,7 @@ gTrainers:: @ 81F04FC @ ARCHIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_LEADER + .byte TRAINER_CLASS_AQUA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_ARCHIE .string "ADRIAN$", 12 @@ -422,7 +422,7 @@ gTrainers:: @ 81F04FC @ ARCHIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_LEADER + .byte TRAINER_CLASS_AQUA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_ARCHIE .string "ADRIAN$", 12 @@ -434,7 +434,7 @@ gTrainers:: @ 81F04FC @ DAISY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "MARGARETE$", 12 @@ -446,7 +446,7 @@ gTrainers:: @ 81F04FC @ ROSE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSEMARIE$", 12 @@ -458,7 +458,7 @@ gTrainers:: @ 81F04FC @ LILY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "LILLY$", 12 @@ -470,7 +470,7 @@ gTrainers:: @ 81F04FC @ VIOLET .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ERIKA$", 12 @@ -482,7 +482,7 @@ gTrainers:: @ 81F04FC @ ROSE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSEMARIE$", 12 @@ -494,7 +494,7 @@ gTrainers:: @ 81F04FC @ ROSE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSEMARIE$", 12 @@ -506,7 +506,7 @@ gTrainers:: @ 81F04FC @ ROSE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSEMARIE$", 12 @@ -518,7 +518,7 @@ gTrainers:: @ 81F04FC @ ROSE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSEMARIE$", 12 @@ -530,7 +530,7 @@ gTrainers:: @ 81F04FC @ DUSTY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RÜDIGER$", 12 @@ -542,7 +542,7 @@ gTrainers:: @ 81F04FC @ CHIP .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RUPRECHT$", 12 @@ -554,7 +554,7 @@ gTrainers:: @ 81F04FC @ FOSTER .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RUBEN$", 12 @@ -566,7 +566,7 @@ gTrainers:: @ 81F04FC @ DUSTY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RÜDIGER$", 12 @@ -578,7 +578,7 @@ gTrainers:: @ 81F04FC @ DUSTY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RÜDIGER$", 12 @@ -590,7 +590,7 @@ gTrainers:: @ 81F04FC @ DUSTY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RÜDIGER$", 12 @@ -602,7 +602,7 @@ gTrainers:: @ 81F04FC @ DUSTY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "RÜDIGER$", 12 @@ -614,7 +614,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "PIA & UDO$", 12 @@ -626,7 +626,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "PIA & UDO$", 12 @@ -638,7 +638,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "PIA & UDO$", 12 @@ -650,7 +650,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "PIA & UDO$", 12 @@ -662,7 +662,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "PIA & UDO$", 12 @@ -674,7 +674,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_6 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "PIA & UDO$", 12 @@ -686,7 +686,7 @@ gTrainers:: @ 81F04FC @ LOLA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -698,7 +698,7 @@ gTrainers:: @ 81F04FC @ CARMEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "CARMEN$", 12 @@ -710,7 +710,7 @@ gTrainers:: @ 81F04FC @ GWEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "HILDE $", 12 @@ -722,7 +722,7 @@ gTrainers:: @ 81F04FC @ LOLA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -734,7 +734,7 @@ gTrainers:: @ 81F04FC @ LOLA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -746,7 +746,7 @@ gTrainers:: @ 81F04FC @ LOLA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -758,7 +758,7 @@ gTrainers:: @ 81F04FC @ LOLA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -770,7 +770,7 @@ gTrainers:: @ 81F04FC @ RICKY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "GÜNTHER$", 12 @@ -782,7 +782,7 @@ gTrainers:: @ 81F04FC @ SIMON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "SIMON$", 12 @@ -794,7 +794,7 @@ gTrainers:: @ 81F04FC @ CHARLIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "HILMAR$", 12 @@ -806,7 +806,7 @@ gTrainers:: @ 81F04FC @ RICKY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "GÜNTHER$", 12 @@ -818,7 +818,7 @@ gTrainers:: @ 81F04FC @ RICKY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "GÜNTHER$", 12 @@ -830,7 +830,7 @@ gTrainers:: @ 81F04FC @ RICKY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "GÜNTHER$", 12 @@ -842,7 +842,7 @@ gTrainers:: @ 81F04FC @ RICKY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "GÜNTHER$", 12 @@ -854,7 +854,7 @@ gTrainers:: @ 81F04FC @ RANDALL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "HUBERT$", 12 @@ -866,7 +866,7 @@ gTrainers:: @ 81F04FC @ PARKER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PATRICK$", 12 @@ -878,7 +878,7 @@ gTrainers:: @ 81F04FC @ GEORGE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "NILS$", 12 @@ -890,7 +890,7 @@ gTrainers:: @ 81F04FC @ BERKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "CHRISTIAN$", 12 @@ -902,7 +902,7 @@ gTrainers:: @ 81F04FC @ CLYDE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "OSKAR$", 12 @@ -914,7 +914,7 @@ gTrainers:: @ 81F04FC @ VINCENT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "OTFRIED$", 12 @@ -926,7 +926,7 @@ gTrainers:: @ 81F04FC @ LEROY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "OTMAR$", 12 @@ -938,7 +938,7 @@ gTrainers:: @ 81F04FC @ WILTON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PASCAL$", 12 @@ -950,7 +950,7 @@ gTrainers:: @ 81F04FC @ EDGAR .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "EDGAR$", 12 @@ -962,7 +962,7 @@ gTrainers:: @ 81F04FC @ ALBERT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PABLO$", 12 @@ -974,7 +974,7 @@ gTrainers:: @ 81F04FC @ SAMUEL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "RICHARD$", 12 @@ -986,7 +986,7 @@ gTrainers:: @ 81F04FC @ VITO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PAUL$", 12 @@ -998,7 +998,7 @@ gTrainers:: @ 81F04FC @ OWEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "RAIMUND$", 12 @@ -1010,7 +1010,7 @@ gTrainers:: @ 81F04FC @ WILTON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PASCAL$", 12 @@ -1022,7 +1022,7 @@ gTrainers:: @ 81F04FC @ WILTON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PASCAL$", 12 @@ -1034,7 +1034,7 @@ gTrainers:: @ 81F04FC @ WILTON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PASCAL$", 12 @@ -1046,7 +1046,7 @@ gTrainers:: @ 81F04FC @ WILTON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PASCAL$", 12 @@ -1058,7 +1058,7 @@ gTrainers:: @ 81F04FC @ WARREN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "MARKUS$", 12 @@ -1070,7 +1070,7 @@ gTrainers:: @ 81F04FC @ MARY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "YVONNE$", 12 @@ -1082,7 +1082,7 @@ gTrainers:: @ 81F04FC @ LORI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "RAMONA$", 12 @@ -1094,7 +1094,7 @@ gTrainers:: @ 81F04FC @ JODY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "ROSWITA$", 12 @@ -1106,7 +1106,7 @@ gTrainers:: @ 81F04FC @ WENDY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "VIOLA$", 12 @@ -1118,7 +1118,7 @@ gTrainers:: @ 81F04FC @ ELAINE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "FRAUKE$", 12 @@ -1130,7 +1130,7 @@ gTrainers:: @ 81F04FC @ BROOKE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "VERONIKA$", 12 @@ -1142,7 +1142,7 @@ gTrainers:: @ 81F04FC @ JENNIFER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "MARIANNE$", 12 @@ -1154,7 +1154,7 @@ gTrainers:: @ 81F04FC @ HOPE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "TRUDLINDE$", 12 @@ -1166,7 +1166,7 @@ gTrainers:: @ 81F04FC @ SHANNON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "THERESA$", 12 @@ -1178,7 +1178,7 @@ gTrainers:: @ 81F04FC @ MICHELLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "MICHELLE$", 12 @@ -1190,7 +1190,7 @@ gTrainers:: @ 81F04FC @ CAROLINE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "KAROLINE$", 12 @@ -1202,7 +1202,7 @@ gTrainers:: @ 81F04FC @ JULIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "MICHAELA$", 12 @@ -1214,7 +1214,7 @@ gTrainers:: @ 81F04FC @ BROOKE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "VERONIKA$", 12 @@ -1226,7 +1226,7 @@ gTrainers:: @ 81F04FC @ BROOKE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "VERONIKA$", 12 @@ -1238,7 +1238,7 @@ gTrainers:: @ 81F04FC @ BROOKE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "VERONIKA$", 12 @@ -1250,7 +1250,7 @@ gTrainers:: @ 81F04FC @ BROOKE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "VERONIKA$", 12 @@ -1262,7 +1262,7 @@ gTrainers:: @ 81F04FC @ PATRICIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "WALBURGA$", 12 @@ -1274,7 +1274,7 @@ gTrainers:: @ 81F04FC @ KINDRA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "GUNDULA$", 12 @@ -1286,7 +1286,7 @@ gTrainers:: @ 81F04FC @ TAMMY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "BRUNHILDE$", 12 @@ -1298,7 +1298,7 @@ gTrainers:: @ 81F04FC @ VALERIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TABITHA$", 12 @@ -1310,7 +1310,7 @@ gTrainers:: @ 81F04FC @ TASHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "PANDORA$", 12 @@ -1322,7 +1322,7 @@ gTrainers:: @ 81F04FC @ VALERIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TABITHA$", 12 @@ -1334,7 +1334,7 @@ gTrainers:: @ 81F04FC @ VALERIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TABITHA$", 12 @@ -1346,7 +1346,7 @@ gTrainers:: @ 81F04FC @ VALERIE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TABITHA$", 12 @@ -1358,7 +1358,7 @@ gTrainers:: @ 81F04FC @ VALERIE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TABITHA$", 12 @@ -1370,7 +1370,7 @@ gTrainers:: @ 81F04FC @ CINDY_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "PATRIZIA$", 12 @@ -1382,7 +1382,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "$", 12 @@ -1394,7 +1394,7 @@ gTrainers:: @ 81F04FC @ BRIANNA_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "NATASCHA$", 12 @@ -1406,7 +1406,7 @@ gTrainers:: @ 81F04FC @ CINDY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "PATRIZIA$", 12 @@ -1418,7 +1418,7 @@ gTrainers:: @ 81F04FC @ BRIANNA_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "NATASCHA$", 12 @@ -1430,7 +1430,7 @@ gTrainers:: @ 81F04FC @ ANETTE .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "ANETTE$", 12 @@ -1442,7 +1442,7 @@ gTrainers:: @ 81F04FC @ CINDY_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "PATRIZIA$", 12 @@ -1454,7 +1454,7 @@ gTrainers:: @ 81F04FC @ CINDY_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "PATRIZIA$", 12 @@ -1466,7 +1466,7 @@ gTrainers:: @ 81F04FC @ CINDY_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "PATRIZIA$", 12 @@ -1478,7 +1478,7 @@ gTrainers:: @ 81F04FC @ CINDY_6 .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "PATRIZIA$", 12 @@ -1490,7 +1490,7 @@ gTrainers:: @ 81F04FC @ MELISSA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "MELISSA$", 12 @@ -1502,7 +1502,7 @@ gTrainers:: @ 81F04FC @ SHEILA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "SYLVIA$", 12 @@ -1514,7 +1514,7 @@ gTrainers:: @ 81F04FC @ SHIRLEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "MIRJAM$", 12 @@ -1526,7 +1526,7 @@ gTrainers:: @ 81F04FC @ JESSICA_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "GERMAINE$", 12 @@ -1538,7 +1538,7 @@ gTrainers:: @ 81F04FC @ CONNIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "FRANCESCA$", 12 @@ -1550,7 +1550,7 @@ gTrainers:: @ 81F04FC @ BRIDGET .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "SALMA$", 12 @@ -1562,7 +1562,7 @@ gTrainers:: @ 81F04FC @ OLIVIA .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "TIA$", 12 @@ -1574,7 +1574,7 @@ gTrainers:: @ 81F04FC @ TIFFANY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "DANIELA$", 12 @@ -1586,7 +1586,7 @@ gTrainers:: @ 81F04FC @ JESSICA_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "GERMAINE$", 12 @@ -1598,7 +1598,7 @@ gTrainers:: @ 81F04FC @ JESSICA_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "GERMAINE$", 12 @@ -1610,7 +1610,7 @@ gTrainers:: @ 81F04FC @ JESSICA_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "GERMAINE$", 12 @@ -1622,7 +1622,7 @@ gTrainers:: @ 81F04FC @ JESSICA_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "GERMAINE$", 12 @@ -1634,7 +1634,7 @@ gTrainers:: @ 81F04FC @ WINSTON_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "RENE$", 12 @@ -1646,7 +1646,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "$", 12 @@ -1658,7 +1658,7 @@ gTrainers:: @ 81F04FC @ GARRET .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "KAI$", 12 @@ -1670,7 +1670,7 @@ gTrainers:: @ 81F04FC @ WINSTON_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "RENE$", 12 @@ -1682,7 +1682,7 @@ gTrainers:: @ 81F04FC @ WINSTON_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "RENE$", 12 @@ -1694,7 +1694,7 @@ gTrainers:: @ 81F04FC @ WINSTON_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "RENE$", 12 @@ -1706,7 +1706,7 @@ gTrainers:: @ 81F04FC @ WINSTON_5 .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "RENE$", 12 @@ -1718,7 +1718,7 @@ gTrainers:: @ 81F04FC @ STEVE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "HIRO$", 12 @@ -1730,7 +1730,7 @@ gTrainers:: @ 81F04FC @ CHRIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "CHRIS$", 12 @@ -1742,7 +1742,7 @@ gTrainers:: @ 81F04FC @ MARK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "MARK$", 12 @@ -1754,7 +1754,7 @@ gTrainers:: @ 81F04FC @ KENN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "KLAUS$", 12 @@ -1766,7 +1766,7 @@ gTrainers:: @ 81F04FC @ STEVE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "HIRO$", 12 @@ -1778,7 +1778,7 @@ gTrainers:: @ 81F04FC @ STEVE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "HIRO$", 12 @@ -1790,7 +1790,7 @@ gTrainers:: @ 81F04FC @ STEVE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "HIRO$", 12 @@ -1802,7 +1802,7 @@ gTrainers:: @ 81F04FC @ STEVE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "HIRO$", 12 @@ -1814,7 +1814,7 @@ gTrainers:: @ 81F04FC @ LUIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KONSTANTIN$", 12 @@ -1826,7 +1826,7 @@ gTrainers:: @ 81F04FC @ AUSTIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "GUIDO$", 12 @@ -1838,7 +1838,7 @@ gTrainers:: @ 81F04FC @ DOUGLAS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "IGNAZ$", 12 @@ -1850,7 +1850,7 @@ gTrainers:: @ 81F04FC @ DARRIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "MANUEL$", 12 @@ -1862,7 +1862,7 @@ gTrainers:: @ 81F04FC @ TONY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KEVIN$", 12 @@ -1874,7 +1874,7 @@ gTrainers:: @ 81F04FC @ JEROME .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "OSWALD$", 12 @@ -1886,7 +1886,7 @@ gTrainers:: @ 81F04FC @ MATTHEW .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "UMBERTO$", 12 @@ -1898,7 +1898,7 @@ gTrainers:: @ 81F04FC @ DAVID .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "WINFRIED$", 12 @@ -1910,7 +1910,7 @@ gTrainers:: @ 81F04FC @ SPENCER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "LEOPOLD$", 12 @@ -1922,7 +1922,7 @@ gTrainers:: @ 81F04FC @ ROLAND .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "THOMAS$", 12 @@ -1934,7 +1934,7 @@ gTrainers:: @ 81F04FC @ CODY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "TIMO$", 12 @@ -1946,7 +1946,7 @@ gTrainers:: @ 81F04FC @ STAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "BALTHASAR$", 12 @@ -1958,7 +1958,7 @@ gTrainers:: @ 81F04FC @ BARRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "BASIL$", 12 @@ -1970,7 +1970,7 @@ gTrainers:: @ 81F04FC @ DEAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DAGOBERT$", 12 @@ -1982,7 +1982,7 @@ gTrainers:: @ 81F04FC @ RODNEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DIETER$", 12 @@ -1994,7 +1994,7 @@ gTrainers:: @ 81F04FC @ RICHARD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "ENNO$", 12 @@ -2006,7 +2006,7 @@ gTrainers:: @ 81F04FC @ HERMAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "BENNO$", 12 @@ -2018,7 +2018,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "$", 12 @@ -2030,7 +2030,7 @@ gTrainers:: @ 81F04FC @ GILBERT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "ERICH$", 12 @@ -2042,7 +2042,7 @@ gTrainers:: @ 81F04FC @ FRANKLIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KASPER$", 12 @@ -2054,7 +2054,7 @@ gTrainers:: @ 81F04FC @ DANNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "MARCEL$", 12 @@ -2066,7 +2066,7 @@ gTrainers:: @ 81F04FC @ JACK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "PEDRO$", 12 @@ -2078,7 +2078,7 @@ gTrainers:: @ 81F04FC @ DUDLEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "THEODOR$", 12 @@ -2090,7 +2090,7 @@ gTrainers:: @ 81F04FC @ CHAD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "JANNIK$", 12 @@ -2102,7 +2102,7 @@ gTrainers:: @ 81F04FC @ TONY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KEVIN$", 12 @@ -2114,7 +2114,7 @@ gTrainers:: @ 81F04FC @ TONY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KEVIN$", 12 @@ -2126,7 +2126,7 @@ gTrainers:: @ 81F04FC @ TONY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KEVIN$", 12 @@ -2138,7 +2138,7 @@ gTrainers:: @ 81F04FC @ TONY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "KEVIN$", 12 @@ -2150,7 +2150,7 @@ gTrainers:: @ 81F04FC @ HIDEKI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "SATORU$", 12 @@ -2162,7 +2162,7 @@ gTrainers:: @ 81F04FC @ HITOSHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "SHIGERU$", 12 @@ -2174,7 +2174,7 @@ gTrainers:: @ 81F04FC @ KIYO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "YU$", 12 @@ -2186,7 +2186,7 @@ gTrainers:: @ 81F04FC @ KOICHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "JUNICHI$", 12 @@ -2198,7 +2198,7 @@ gTrainers:: @ 81F04FC @ NOB_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "MINORU$", 12 @@ -2210,7 +2210,7 @@ gTrainers:: @ 81F04FC @ NOB_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "MINORU$", 12 @@ -2222,7 +2222,7 @@ gTrainers:: @ 81F04FC @ NOB_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "MINORU$", 12 @@ -2234,7 +2234,7 @@ gTrainers:: @ 81F04FC @ NOB_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "MINORU$", 12 @@ -2246,7 +2246,7 @@ gTrainers:: @ 81F04FC @ NOB_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "MINORU$", 12 @@ -2258,7 +2258,7 @@ gTrainers:: @ 81F04FC @ YUJI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "HIDEO$", 12 @@ -2270,7 +2270,7 @@ gTrainers:: @ 81F04FC @ DAISUKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "KENJI$", 12 @@ -2282,7 +2282,7 @@ gTrainers:: @ 81F04FC @ ATSUSHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "HIROSHI$", 12 @@ -2294,7 +2294,7 @@ gTrainers:: @ 81F04FC @ KIRK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "CHUCK$", 12 @@ -2306,7 +2306,7 @@ gTrainers:: @ 81F04FC @ SCOTT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "TREY$", 12 @@ -2318,7 +2318,7 @@ gTrainers:: @ 81F04FC @ HARVEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KERRY$", 12 @@ -2330,7 +2330,7 @@ gTrainers:: @ 81F04FC @ SHAWN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "REINHARD$", 12 @@ -2342,7 +2342,7 @@ gTrainers:: @ 81F04FC @ RANDY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "JEFF$", 12 @@ -2354,7 +2354,7 @@ gTrainers:: @ 81F04FC @ DALTON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KIRK$", 12 @@ -2366,7 +2366,7 @@ gTrainers:: @ 81F04FC @ DALTON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KIRK$", 12 @@ -2378,7 +2378,7 @@ gTrainers:: @ 81F04FC @ DALTON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KIRK$", 12 @@ -2390,7 +2390,7 @@ gTrainers:: @ 81F04FC @ DALTON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KIRK$", 12 @@ -2402,7 +2402,7 @@ gTrainers:: @ 81F04FC @ DALTON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KIRK$", 12 @@ -2414,7 +2414,7 @@ gTrainers:: @ 81F04FC @ COLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HENDRIK$", 12 @@ -2426,7 +2426,7 @@ gTrainers:: @ 81F04FC @ FLINT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HEINZ$", 12 @@ -2438,7 +2438,7 @@ gTrainers:: @ 81F04FC @ AXLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HAGEN$", 12 @@ -2450,7 +2450,7 @@ gTrainers:: @ 81F04FC @ JAKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HANNES$", 12 @@ -2462,7 +2462,7 @@ gTrainers:: @ 81F04FC @ ANDY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HARTMANN$", 12 @@ -2474,7 +2474,7 @@ gTrainers:: @ 81F04FC @ BERNIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HASSO$", 12 @@ -2486,7 +2486,7 @@ gTrainers:: @ 81F04FC @ BERNIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HASSO$", 12 @@ -2498,7 +2498,7 @@ gTrainers:: @ 81F04FC @ BERNIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HASSO$", 12 @@ -2510,7 +2510,7 @@ gTrainers:: @ 81F04FC @ BERNIE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HASSO$", 12 @@ -2522,7 +2522,7 @@ gTrainers:: @ 81F04FC @ BERNIE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "HASSO$", 12 @@ -2534,7 +2534,7 @@ gTrainers:: @ 81F04FC @ DREW .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "ISSIDOR$", 12 @@ -2546,7 +2546,7 @@ gTrainers:: @ 81F04FC @ CLIFF .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "IVAN$", 12 @@ -2558,7 +2558,7 @@ gTrainers:: @ 81F04FC @ LARRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "KAREL$", 12 @@ -2570,7 +2570,7 @@ gTrainers:: @ 81F04FC @ SHANE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "KUNO$", 12 @@ -2582,7 +2582,7 @@ gTrainers:: @ 81F04FC @ JUSTIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "LAURENZ$", 12 @@ -2594,7 +2594,7 @@ gTrainers:: @ 81F04FC @ ETHAN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "EWALD$", 12 @@ -2606,7 +2606,7 @@ gTrainers:: @ 81F04FC @ JEFF .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "RAPHAEL$", 12 @@ -2618,7 +2618,7 @@ gTrainers:: @ 81F04FC @ TRAVIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "RONALD$", 12 @@ -2630,7 +2630,7 @@ gTrainers:: @ 81F04FC @ ETHAN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "EWALD$", 12 @@ -2642,7 +2642,7 @@ gTrainers:: @ 81F04FC @ ETHAN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "EWALD$", 12 @@ -2654,7 +2654,7 @@ gTrainers:: @ 81F04FC @ ETHAN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "EWALD$", 12 @@ -2666,7 +2666,7 @@ gTrainers:: @ 81F04FC @ ETHAN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "EWALD$", 12 @@ -2678,7 +2678,7 @@ gTrainers:: @ 81F04FC @ BRENT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "ROMEO$", 12 @@ -2690,7 +2690,7 @@ gTrainers:: @ 81F04FC @ DONALD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "TILL$", 12 @@ -2702,7 +2702,7 @@ gTrainers:: @ 81F04FC @ TAYLOR .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "URIEL$", 12 @@ -2714,7 +2714,7 @@ gTrainers:: @ 81F04FC @ BRANDON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRUNO$", 12 @@ -2726,7 +2726,7 @@ gTrainers:: @ 81F04FC @ DEREK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BURKARD$", 12 @@ -2738,7 +2738,7 @@ gTrainers:: @ 81F04FC @ BRANDON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRUNO$", 12 @@ -2750,7 +2750,7 @@ gTrainers:: @ 81F04FC @ BRANDON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRUNO$", 12 @@ -2762,7 +2762,7 @@ gTrainers:: @ 81F04FC @ BRANDON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRUNO$", 12 @@ -2774,7 +2774,7 @@ gTrainers:: @ 81F04FC @ BRANDON_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRUNO$", 12 @@ -2786,7 +2786,7 @@ gTrainers:: @ 81F04FC @ EDWARD .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "WENDELIN$", 12 @@ -2798,7 +2798,7 @@ gTrainers:: @ 81F04FC @ PRESTON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "URBAN$", 12 @@ -2810,7 +2810,7 @@ gTrainers:: @ 81F04FC @ VIRGIL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "ZOLTAN$", 12 @@ -2822,7 +2822,7 @@ gTrainers:: @ 81F04FC @ FRITZ .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "XAVER$", 12 @@ -2834,7 +2834,7 @@ gTrainers:: @ 81F04FC @ WILLIAM .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "WULF$", 12 @@ -2846,7 +2846,7 @@ gTrainers:: @ 81F04FC @ JOSHUA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "JONAS$", 12 @@ -2858,7 +2858,7 @@ gTrainers:: @ 81F04FC @ CAMERON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "MAXIMILIAN$", 12 @@ -2870,7 +2870,7 @@ gTrainers:: @ 81F04FC @ CAMERON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "MAXIMILIAN$", 12 @@ -2882,7 +2882,7 @@ gTrainers:: @ 81F04FC @ CAMERON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "MAXIMILIAN$", 12 @@ -2894,7 +2894,7 @@ gTrainers:: @ 81F04FC @ CAMERON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "MAXIMILIAN$", 12 @@ -2906,7 +2906,7 @@ gTrainers:: @ 81F04FC @ CAMERON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "MAXIMILIAN$", 12 @@ -2918,7 +2918,7 @@ gTrainers:: @ 81F04FC @ JACLYN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "COSIMA$", 12 @@ -2930,7 +2930,7 @@ gTrainers:: @ 81F04FC @ HANNAH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "HANNAH$", 12 @@ -2942,7 +2942,7 @@ gTrainers:: @ 81F04FC @ SAMANTHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "SAMANTHA$", 12 @@ -2954,7 +2954,7 @@ gTrainers:: @ 81F04FC @ MAURA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "DOLORES$", 12 @@ -2966,7 +2966,7 @@ gTrainers:: @ 81F04FC @ KAYLA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "CAMILLA$", 12 @@ -2978,7 +2978,7 @@ gTrainers:: @ 81F04FC @ ALEXIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "ALEXIS$", 12 @@ -2990,7 +2990,7 @@ gTrainers:: @ 81F04FC @ JACKI_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "KORNELIA$", 12 @@ -3002,7 +3002,7 @@ gTrainers:: @ 81F04FC @ JACKI_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "KORNELIA$", 12 @@ -3014,7 +3014,7 @@ gTrainers:: @ 81F04FC @ JACKI_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "KORNELIA$", 12 @@ -3026,7 +3026,7 @@ gTrainers:: @ 81F04FC @ JACKI_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "KORNELIA$", 12 @@ -3038,7 +3038,7 @@ gTrainers:: @ 81F04FC @ JACKI_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "KORNELIA$", 12 @@ -3050,7 +3050,7 @@ gTrainers:: @ 81F04FC @ WALTER_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "ABRAHAM$", 12 @@ -3062,7 +3062,7 @@ gTrainers:: @ 81F04FC @ TUCKER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "CLAUDIO$", 12 @@ -3074,7 +3074,7 @@ gTrainers:: @ 81F04FC @ THOMAS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "NIKOLAI$", 12 @@ -3086,7 +3086,7 @@ gTrainers:: @ 81F04FC @ WALTER_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "ABRAHAM$", 12 @@ -3098,7 +3098,7 @@ gTrainers:: @ 81F04FC @ WALTER_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "ABRAHAM$", 12 @@ -3110,7 +3110,7 @@ gTrainers:: @ 81F04FC @ WALTER_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "ABRAHAM$", 12 @@ -3122,7 +3122,7 @@ gTrainers:: @ 81F04FC @ WALTER_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "ABRAHAM$", 12 @@ -3134,7 +3134,7 @@ gTrainers:: @ 81F04FC @ SIDNEY .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_SIDNEY .string "ULRICH$", 12 @@ -3146,7 +3146,7 @@ gTrainers:: @ 81F04FC @ PHOEBE .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_PHOEBE .string "ANTONIA$", 12 @@ -3158,7 +3158,7 @@ gTrainers:: @ 81F04FC @ GLACIA .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_GLACIA .string "FROSINA$", 12 @@ -3170,7 +3170,7 @@ gTrainers:: @ 81F04FC @ DRAKE .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_DRAKE .string "DRAGAN$", 12 @@ -3182,7 +3182,7 @@ gTrainers:: @ 81F04FC @ ROXANNE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_ROXANNE .string "FELIZIA$", 12 @@ -3194,7 +3194,7 @@ gTrainers:: @ 81F04FC @ BRAWLY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRAWLY .string "KAMILLO$", 12 @@ -3206,7 +3206,7 @@ gTrainers:: @ 81F04FC @ WATTSON .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WATTSON .string "WALTER$", 12 @@ -3218,7 +3218,7 @@ gTrainers:: @ 81F04FC @ FLANNERY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_FLANNERY .string "FLAVIA$", 12 @@ -3230,7 +3230,7 @@ gTrainers:: @ 81F04FC @ NORMAN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_NORMAN .string "NORMAN$", 12 @@ -3242,7 +3242,7 @@ gTrainers:: @ 81F04FC @ WINONA .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_WINONA .string "WIBKE$", 12 @@ -3254,7 +3254,7 @@ gTrainers:: @ 81F04FC @ TATE_AND_LIZA .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_TATE_AND_LIZA .string "BEN&SVENJA$", 12 @@ -3266,7 +3266,7 @@ gTrainers:: @ 81F04FC @ WALLACE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLACE .string "WASSILI$", 12 @@ -3278,7 +3278,7 @@ gTrainers:: @ 81F04FC @ JERRY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "ORLANDO$", 12 @@ -3290,7 +3290,7 @@ gTrainers:: @ 81F04FC @ TED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "RAMON$", 12 @@ -3302,7 +3302,7 @@ gTrainers:: @ 81F04FC @ PAUL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "JÜRGEN$", 12 @@ -3314,7 +3314,7 @@ gTrainers:: @ 81F04FC @ JERRY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "ORLANDO$", 12 @@ -3326,7 +3326,7 @@ gTrainers:: @ 81F04FC @ JERRY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "ORLANDO$", 12 @@ -3338,7 +3338,7 @@ gTrainers:: @ 81F04FC @ JERRY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "ORLANDO$", 12 @@ -3350,7 +3350,7 @@ gTrainers:: @ 81F04FC @ JERRY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "ORLANDO$", 12 @@ -3362,7 +3362,7 @@ gTrainers:: @ 81F04FC @ KAREN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KERSTIN$", 12 @@ -3374,7 +3374,7 @@ gTrainers:: @ 81F04FC @ GEORGIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "ARIANE$", 12 @@ -3386,7 +3386,7 @@ gTrainers:: @ 81F04FC @ KAREN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KERSTIN$", 12 @@ -3398,7 +3398,7 @@ gTrainers:: @ 81F04FC @ KAREN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KERSTIN$", 12 @@ -3410,7 +3410,7 @@ gTrainers:: @ 81F04FC @ KAREN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KERSTIN$", 12 @@ -3422,7 +3422,7 @@ gTrainers:: @ 81F04FC @ KAREN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KERSTIN$", 12 @@ -3434,7 +3434,7 @@ gTrainers:: @ 81F04FC @ KATE_AND_JOY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "EVA & UTE$", 12 @@ -3446,7 +3446,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "IRM & IDA$", 12 @@ -3458,7 +3458,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "IRM & IDA$", 12 @@ -3470,7 +3470,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "IRM & IDA$", 12 @@ -3482,7 +3482,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "IRM & IDA$", 12 @@ -3494,7 +3494,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "IRM & IDA$", 12 @@ -3506,7 +3506,7 @@ gTrainers:: @ 81F04FC @ VICTOR .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "VIKTOR$", 12 @@ -3518,7 +3518,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3530,7 +3530,7 @@ gTrainers:: @ 81F04FC @ COLTON .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "ATTILA$", 12 @@ -3542,7 +3542,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3554,7 +3554,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3566,7 +3566,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3578,7 +3578,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3590,7 +3590,7 @@ gTrainers:: @ 81F04FC @ VICTORIA .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "VIKTORIA$", 12 @@ -3602,7 +3602,7 @@ gTrainers:: @ 81F04FC @ VANESSA .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "VANESSA$", 12 @@ -3614,7 +3614,7 @@ gTrainers:: @ 81F04FC @ MARISSA .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "EVELYN$", 12 @@ -3626,7 +3626,7 @@ gTrainers:: @ 81F04FC @ ISABEL_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3638,7 +3638,7 @@ gTrainers:: @ 81F04FC @ ISABEL_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3650,7 +3650,7 @@ gTrainers:: @ 81F04FC @ ISABEL_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3662,7 +3662,7 @@ gTrainers:: @ 81F04FC @ ISABEL_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3674,7 +3674,7 @@ gTrainers:: @ 81F04FC @ ISABEL_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3686,7 +3686,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "THEOBALD$", 12 @@ -3698,7 +3698,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "THEOBALD$", 12 @@ -3710,7 +3710,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "THEOBALD$", 12 @@ -3722,7 +3722,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "THEOBALD$", 12 @@ -3734,7 +3734,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "THEOBALD$", 12 @@ -3746,7 +3746,7 @@ gTrainers:: @ 81F04FC @ VICKY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "VICKY$", 12 @@ -3758,7 +3758,7 @@ gTrainers:: @ 81F04FC @ SHELBY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "WALTRAUD$", 12 @@ -3770,7 +3770,7 @@ gTrainers:: @ 81F04FC @ SHELBY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "WALTRAUD$", 12 @@ -3782,7 +3782,7 @@ gTrainers:: @ 81F04FC @ SHELBY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "WALTRAUD$", 12 @@ -3794,7 +3794,7 @@ gTrainers:: @ 81F04FC @ SHELBY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "WALTRAUD$", 12 @@ -3806,7 +3806,7 @@ gTrainers:: @ 81F04FC @ SHELBY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "WALTRAUD$", 12 @@ -3818,7 +3818,7 @@ gTrainers:: @ 81F04FC @ CALVIN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ANSGAR$", 12 @@ -3830,7 +3830,7 @@ gTrainers:: @ 81F04FC @ BILLY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "FRIDOLIN$", 12 @@ -3842,7 +3842,7 @@ gTrainers:: @ 81F04FC @ JOSH .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "GASTON$", 12 @@ -3854,7 +3854,7 @@ gTrainers:: @ 81F04FC @ TOMMY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "DOMINIK$", 12 @@ -3866,7 +3866,7 @@ gTrainers:: @ 81F04FC @ JOEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "LUDGER$", 12 @@ -3878,7 +3878,7 @@ gTrainers:: @ 81F04FC @ BEN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "EGON$", 12 @@ -3890,7 +3890,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -3902,7 +3902,7 @@ gTrainers:: @ 81F04FC @ KEVIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "JULIUS$", 12 @@ -3914,7 +3914,7 @@ gTrainers:: @ 81F04FC @ NEAL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "MORITZ$", 12 @@ -3926,7 +3926,7 @@ gTrainers:: @ 81F04FC @ DILLON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "SÖNCKE$", 12 @@ -3938,7 +3938,7 @@ gTrainers:: @ 81F04FC @ CALVIN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ANSGAR$", 12 @@ -3950,7 +3950,7 @@ gTrainers:: @ 81F04FC @ CALVIN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ANSGAR$", 12 @@ -3962,7 +3962,7 @@ gTrainers:: @ 81F04FC @ CALVIN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ANSGAR$", 12 @@ -3974,7 +3974,7 @@ gTrainers:: @ 81F04FC @ CALVIN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ANSGAR$", 12 @@ -3986,7 +3986,7 @@ gTrainers:: @ 81F04FC @ EDDIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "HENRY$", 12 @@ -3998,7 +3998,7 @@ gTrainers:: @ 81F04FC @ ALLEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "HUGO$", 12 @@ -4010,7 +4010,7 @@ gTrainers:: @ 81F04FC @ TIMMY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "FRIEDER$", 12 @@ -4022,7 +4022,7 @@ gTrainers:: @ 81F04FC @ STEVEN .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_CHAMPION + .byte TRAINER_CLASS_CHAMPION .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_STEVEN .string "TROY$", 12 @@ -4034,7 +4034,7 @@ gTrainers:: @ 81F04FC @ ANDREW .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ANSGAR$", 12 @@ -4046,7 +4046,7 @@ gTrainers:: @ 81F04FC @ IVAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ANGELO$", 12 @@ -4058,7 +4058,7 @@ gTrainers:: @ 81F04FC @ CLAUDE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ANSELM$", 12 @@ -4070,7 +4070,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALOIS$", 12 @@ -4082,7 +4082,7 @@ gTrainers:: @ 81F04FC @ NED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ARTHUR$", 12 @@ -4094,7 +4094,7 @@ gTrainers:: @ 81F04FC @ DALE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALBIN$", 12 @@ -4106,7 +4106,7 @@ gTrainers:: @ 81F04FC @ NOLAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "AMADEUS$", 12 @@ -4118,7 +4118,7 @@ gTrainers:: @ 81F04FC @ BARNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALBRECHT$", 12 @@ -4130,7 +4130,7 @@ gTrainers:: @ 81F04FC @ WADE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALAIN$", 12 @@ -4142,7 +4142,7 @@ gTrainers:: @ 81F04FC @ CARTER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ARMIN$", 12 @@ -4154,7 +4154,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALOIS$", 12 @@ -4166,7 +4166,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALOIS$", 12 @@ -4178,7 +4178,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALOIS$", 12 @@ -4190,7 +4190,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALOIS$", 12 @@ -4202,7 +4202,7 @@ gTrainers:: @ 81F04FC @ RONALD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ACHMED$", 12 @@ -4214,7 +4214,7 @@ gTrainers:: @ 81F04FC @ JACOB .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "ROMAN$", 12 @@ -4226,7 +4226,7 @@ gTrainers:: @ 81F04FC @ ANTHONY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "EMIL$", 12 @@ -4238,7 +4238,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "EGIDIUS$", 12 @@ -4250,7 +4250,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "EGIDIUS$", 12 @@ -4262,7 +4262,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "EGIDIUS$", 12 @@ -4274,7 +4274,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "EGIDIUS$", 12 @@ -4286,7 +4286,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "EGIDIUS$", 12 @@ -4298,7 +4298,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "IRMGARD$", 12 @@ -4310,7 +4310,7 @@ gTrainers:: @ 81F04FC @ JASMINE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "MARTHA$", 12 @@ -4322,7 +4322,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "IRMGARD$", 12 @@ -4334,7 +4334,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "IRMGARD$", 12 @@ -4346,7 +4346,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "IRMGARD$", 12 @@ -4358,7 +4358,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "IRMGARD$", 12 @@ -4370,7 +4370,7 @@ gTrainers:: @ 81F04FC @ DYLAN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "IGOR$", 12 @@ -4382,7 +4382,7 @@ gTrainers:: @ 81F04FC @ DYLAN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "IGOR$", 12 @@ -4394,7 +4394,7 @@ gTrainers:: @ 81F04FC @ DYLAN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "IGOR$", 12 @@ -4406,7 +4406,7 @@ gTrainers:: @ 81F04FC @ DYLAN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "IGOR$", 12 @@ -4418,7 +4418,7 @@ gTrainers:: @ 81F04FC @ DYLAN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "IGOR$", 12 @@ -4430,7 +4430,7 @@ gTrainers:: @ 81F04FC @ MARIA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "JUTTA$", 12 @@ -4442,7 +4442,7 @@ gTrainers:: @ 81F04FC @ MARIA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "JUTTA$", 12 @@ -4454,7 +4454,7 @@ gTrainers:: @ 81F04FC @ MARIA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "JUTTA$", 12 @@ -4466,7 +4466,7 @@ gTrainers:: @ 81F04FC @ MARIA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "JUTTA$", 12 @@ -4478,7 +4478,7 @@ gTrainers:: @ 81F04FC @ MARIA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "JUTTA$", 12 @@ -4490,7 +4490,7 @@ gTrainers:: @ 81F04FC @ CALEB .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "OLEG$", 12 @@ -4502,7 +4502,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "$", 12 @@ -4514,7 +4514,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "KASPAR$", 12 @@ -4526,7 +4526,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "$", 12 @@ -4538,7 +4538,7 @@ gTrainers:: @ 81F04FC @ CHASE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "FERDINAND$", 12 @@ -4550,7 +4550,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "KASPAR$", 12 @@ -4562,7 +4562,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "KASPAR$", 12 @@ -4574,7 +4574,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "KASPAR$", 12 @@ -4586,7 +4586,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "KASPAR$", 12 @@ -4598,7 +4598,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "$", 12 @@ -4610,7 +4610,7 @@ gTrainers:: @ 81F04FC @ CONNOR .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "MIRA$", 12 @@ -4622,7 +4622,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "$", 12 @@ -4634,7 +4634,7 @@ gTrainers:: @ 81F04FC @ KATELYN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "MECHTHILD$", 12 @@ -4646,7 +4646,7 @@ gTrainers:: @ 81F04FC @ ALLISON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "LOTTE$", 12 @@ -4658,7 +4658,7 @@ gTrainers:: @ 81F04FC @ KATELYN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "MECHTHILD$", 12 @@ -4670,7 +4670,7 @@ gTrainers:: @ 81F04FC @ KATELYN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "MECHTHILD$", 12 @@ -4682,7 +4682,7 @@ gTrainers:: @ 81F04FC @ KATELYN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "MECHTHILD$", 12 @@ -4694,7 +4694,7 @@ gTrainers:: @ 81F04FC @ KATELYN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "MECHTHILD$", 12 @@ -4706,7 +4706,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "ALFONS$", 12 @@ -4718,7 +4718,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "ALFONS$", 12 @@ -4730,7 +4730,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "ALFONS$", 12 @@ -4742,7 +4742,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "ALFONS$", 12 @@ -4754,7 +4754,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "ALFONS$", 12 @@ -4766,7 +4766,7 @@ gTrainers:: @ 81F04FC @ AARON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "EDMUND$", 12 @@ -4778,7 +4778,7 @@ gTrainers:: @ 81F04FC @ PERRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "JOSCHKA$", 12 @@ -4790,7 +4790,7 @@ gTrainers:: @ 81F04FC @ HUGH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ENRICO$", 12 @@ -4802,7 +4802,7 @@ gTrainers:: @ 81F04FC @ PHIL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "HENRY$", 12 @@ -4814,7 +4814,7 @@ gTrainers:: @ 81F04FC @ JARED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "HIOB$", 12 @@ -4826,7 +4826,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "$", 12 @@ -4838,7 +4838,7 @@ gTrainers:: @ 81F04FC @ TANNER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ANATOL$", 12 @@ -4850,7 +4850,7 @@ gTrainers:: @ 81F04FC @ WILL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "BJÖRN$", 12 @@ -4862,7 +4862,7 @@ gTrainers:: @ 81F04FC @ COLIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "WIM$", 12 @@ -4874,7 +4874,7 @@ gTrainers:: @ 81F04FC @ ROBERT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "FRITJOF$", 12 @@ -4886,7 +4886,7 @@ gTrainers:: @ 81F04FC @ BENNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "GENADI$", 12 @@ -4898,7 +4898,7 @@ gTrainers:: @ 81F04FC @ CHESTER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "VITALI$", 12 @@ -4910,7 +4910,7 @@ gTrainers:: @ 81F04FC @ ROBERT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "FRITJOF$", 12 @@ -4922,7 +4922,7 @@ gTrainers:: @ 81F04FC @ ROBERT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "FRITJOF$", 12 @@ -4934,7 +4934,7 @@ gTrainers:: @ 81F04FC @ ROBERT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "FRITJOF$", 12 @@ -4946,7 +4946,7 @@ gTrainers:: @ 81F04FC @ ROBERT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "FRITJOF$", 12 @@ -4958,7 +4958,7 @@ gTrainers:: @ 81F04FC @ ALEX .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ARNE$", 12 @@ -4970,7 +4970,7 @@ gTrainers:: @ 81F04FC @ BECK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "VINCENT$", 12 @@ -4982,7 +4982,7 @@ gTrainers:: @ 81F04FC @ YASU .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "VALENTIN$", 12 @@ -4994,7 +4994,7 @@ gTrainers:: @ 81F04FC @ TAKASHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "EUGEN$", 12 @@ -5006,7 +5006,7 @@ gTrainers:: @ 81F04FC @ MAKOTO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "HERIBERT$", 12 @@ -5018,7 +5018,7 @@ gTrainers:: @ 81F04FC @ HIDEO_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "SAUL$", 12 @@ -5030,7 +5030,7 @@ gTrainers:: @ 81F04FC @ LAO_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "EDUARD$", 12 @@ -5042,7 +5042,7 @@ gTrainers:: @ 81F04FC @ LUNG .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "ARND$", 12 @@ -5054,7 +5054,7 @@ gTrainers:: @ 81F04FC @ LAO_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "EDUARD$", 12 @@ -5066,7 +5066,7 @@ gTrainers:: @ 81F04FC @ LAO_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "EDUARD$", 12 @@ -5078,7 +5078,7 @@ gTrainers:: @ 81F04FC @ LAO_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "EDUARD$", 12 @@ -5090,7 +5090,7 @@ gTrainers:: @ 81F04FC @ LAO_5 .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "EDUARD$", 12 @@ -5102,7 +5102,7 @@ gTrainers:: @ 81F04FC @ TESSA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "TAMARA$", 12 @@ -5114,7 +5114,7 @@ gTrainers:: @ 81F04FC @ LAURA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "LAURA$", 12 @@ -5126,7 +5126,7 @@ gTrainers:: @ 81F04FC @ CYNDY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "ELFI$", 12 @@ -5138,7 +5138,7 @@ gTrainers:: @ 81F04FC @ CORA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "THEA$", 12 @@ -5150,7 +5150,7 @@ gTrainers:: @ 81F04FC @ JILL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "AGNES$", 12 @@ -5162,7 +5162,7 @@ gTrainers:: @ 81F04FC @ CYNDY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "ELFI$", 12 @@ -5174,7 +5174,7 @@ gTrainers:: @ 81F04FC @ CYNDY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "ELFI$", 12 @@ -5186,7 +5186,7 @@ gTrainers:: @ 81F04FC @ CYNDY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "ELFI$", 12 @@ -5198,7 +5198,7 @@ gTrainers:: @ 81F04FC @ CYNDY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "ELFI$", 12 @@ -5210,7 +5210,7 @@ gTrainers:: @ 81F04FC @ MADELINE_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "SASKIA$", 12 @@ -5222,7 +5222,7 @@ gTrainers:: @ 81F04FC @ CLARISSA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "GERDA$", 12 @@ -5234,7 +5234,7 @@ gTrainers:: @ 81F04FC @ ANGELICA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "MARIKA$", 12 @@ -5246,7 +5246,7 @@ gTrainers:: @ 81F04FC @ MADELINE_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "SASKIA$", 12 @@ -5258,7 +5258,7 @@ gTrainers:: @ 81F04FC @ MADELINE_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "SASKIA$", 12 @@ -5270,7 +5270,7 @@ gTrainers:: @ 81F04FC @ MADELINE_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "SASKIA$", 12 @@ -5282,7 +5282,7 @@ gTrainers:: @ 81F04FC @ MADELINE_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "SASKIA$", 12 @@ -5294,7 +5294,7 @@ gTrainers:: @ 81F04FC @ BEVERLY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DAGMAR$", 12 @@ -5306,7 +5306,7 @@ gTrainers:: @ 81F04FC @ DAWN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "HEIDRUN$", 12 @@ -5318,7 +5318,7 @@ gTrainers:: @ 81F04FC @ NICOLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "NICOLE$", 12 @@ -5330,7 +5330,7 @@ gTrainers:: @ 81F04FC @ DENISE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DENISE$", 12 @@ -5342,7 +5342,7 @@ gTrainers:: @ 81F04FC @ BETH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ALMUT$", 12 @@ -5354,7 +5354,7 @@ gTrainers:: @ 81F04FC @ TARA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "SIEGLINDE$", 12 @@ -5366,7 +5366,7 @@ gTrainers:: @ 81F04FC @ MISSY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MARION$", 12 @@ -5378,7 +5378,7 @@ gTrainers:: @ 81F04FC @ ALICE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ALICE$", 12 @@ -5390,7 +5390,7 @@ gTrainers:: @ 81F04FC @ JENNY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MONIKA$", 12 @@ -5402,7 +5402,7 @@ gTrainers:: @ 81F04FC @ GRACE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ILONA$", 12 @@ -5414,7 +5414,7 @@ gTrainers:: @ 81F04FC @ TANYA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "EMILIE$", 12 @@ -5426,7 +5426,7 @@ gTrainers:: @ 81F04FC @ SHARON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "GUDRUN$", 12 @@ -5438,7 +5438,7 @@ gTrainers:: @ 81F04FC @ NIKKI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ASTRID$", 12 @@ -5450,7 +5450,7 @@ gTrainers:: @ 81F04FC @ BRENDA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "OTTILIE$", 12 @@ -5462,7 +5462,7 @@ gTrainers:: @ 81F04FC @ KATIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "SENTA$", 12 @@ -5474,7 +5474,7 @@ gTrainers:: @ 81F04FC @ SUSIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "JANKA$", 12 @@ -5486,7 +5486,7 @@ gTrainers:: @ 81F04FC @ KARA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "RENATE$", 12 @@ -5498,7 +5498,7 @@ gTrainers:: @ 81F04FC @ DANA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "VICKI$", 12 @@ -5510,7 +5510,7 @@ gTrainers:: @ 81F04FC @ ERIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "REBECCA$", 12 @@ -5522,7 +5522,7 @@ gTrainers:: @ 81F04FC @ DEBRA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ANJA$", 12 @@ -5534,7 +5534,7 @@ gTrainers:: @ 81F04FC @ LINDA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "GISELA$", 12 @@ -5546,7 +5546,7 @@ gTrainers:: @ 81F04FC @ KAYLEE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "PAOLA$", 12 @@ -5558,7 +5558,7 @@ gTrainers:: @ 81F04FC @ LAUREL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "BIRTE$", 12 @@ -5570,7 +5570,7 @@ gTrainers:: @ 81F04FC @ DARCY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DOROTHEA$", 12 @@ -5582,7 +5582,7 @@ gTrainers:: @ 81F04FC @ JENNY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MONIKA$", 12 @@ -5594,7 +5594,7 @@ gTrainers:: @ 81F04FC @ JENNY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MONIKA$", 12 @@ -5606,7 +5606,7 @@ gTrainers:: @ 81F04FC @ JENNY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MONIKA$", 12 @@ -5618,7 +5618,7 @@ gTrainers:: @ 81F04FC @ JENNY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MONIKA$", 12 @@ -5630,7 +5630,7 @@ gTrainers:: @ 81F04FC @ HEIDI .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "JANA$", 12 @@ -5642,7 +5642,7 @@ gTrainers:: @ 81F04FC @ BECKY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "HEIDI$", 12 @@ -5654,7 +5654,7 @@ gTrainers:: @ 81F04FC @ CAROL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "NATALIE$", 12 @@ -5666,7 +5666,7 @@ gTrainers:: @ 81F04FC @ NANCY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "NANCY$", 12 @@ -5678,7 +5678,7 @@ gTrainers:: @ 81F04FC @ MARTHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "MARTHA$", 12 @@ -5690,7 +5690,7 @@ gTrainers:: @ 81F04FC @ DIANA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "GWENDOLIN$", 12 @@ -5702,7 +5702,7 @@ gTrainers:: @ 81F04FC @ NINA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "NADJA$", 12 @@ -5714,7 +5714,7 @@ gTrainers:: @ 81F04FC @ IRENE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "IRENE$", 12 @@ -5726,7 +5726,7 @@ gTrainers:: @ 81F04FC @ DIANA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "GWENDOLIN$", 12 @@ -5738,7 +5738,7 @@ gTrainers:: @ 81F04FC @ DIANA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "GWENDOLIN$", 12 @@ -5750,7 +5750,7 @@ gTrainers:: @ 81F04FC @ DIANA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "GWENDOLIN$", 12 @@ -5762,7 +5762,7 @@ gTrainers:: @ 81F04FC @ DIANA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "GWENDOLIN$", 12 @@ -5774,7 +5774,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "NORA & JO$", 12 @@ -5786,7 +5786,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "NORA & JO$", 12 @@ -5798,7 +5798,7 @@ gTrainers:: @ 81F04FC @ GINA_AND_MIA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "GINA & MIA$", 12 @@ -5810,7 +5810,7 @@ gTrainers:: @ 81F04FC @ MIU_AND_YUKI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "LEA & GRIT$", 12 @@ -5822,7 +5822,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "NORA & JO$", 12 @@ -5834,7 +5834,7 @@ gTrainers:: @ 81F04FC @ GINA_AND_MIA_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "GINA & MIA$", 12 @@ -5846,7 +5846,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "NORA & JO$", 12 @@ -5858,7 +5858,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "NORA & JO$", 12 @@ -5870,7 +5870,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_6 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "NORA & JO$", 12 @@ -5882,7 +5882,7 @@ gTrainers:: @ 81F04FC @ HUEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "TASSILO$", 12 @@ -5894,7 +5894,7 @@ gTrainers:: @ 81F04FC @ EDMOND .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "MONTY$", 12 @@ -5906,7 +5906,7 @@ gTrainers:: @ 81F04FC @ ERNEST_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ELERT$", 12 @@ -5918,7 +5918,7 @@ gTrainers:: @ 81F04FC @ DWAYNE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "RETO$", 12 @@ -5930,7 +5930,7 @@ gTrainers:: @ 81F04FC @ PHILLIP .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "GUNNAR$", 12 @@ -5942,7 +5942,7 @@ gTrainers:: @ 81F04FC @ LEONARD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "LEONARD$", 12 @@ -5954,7 +5954,7 @@ gTrainers:: @ 81F04FC @ DUNCAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "PIERRE$", 12 @@ -5966,7 +5966,7 @@ gTrainers:: @ 81F04FC @ ERNEST_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ELERT$", 12 @@ -5978,7 +5978,7 @@ gTrainers:: @ 81F04FC @ ERNEST_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ELERT$", 12 @@ -5990,7 +5990,7 @@ gTrainers:: @ 81F04FC @ ERNEST_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ELERT$", 12 @@ -6002,7 +6002,7 @@ gTrainers:: @ 81F04FC @ ERNEST_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ELERT$", 12 @@ -6014,7 +6014,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -6026,7 +6026,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -6038,7 +6038,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_13 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -6050,7 +6050,7 @@ gTrainers:: @ 81F04FC @ SONNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "WENZEL$", 12 @@ -6062,7 +6062,7 @@ gTrainers:: @ 81F04FC @ DONOVAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "STANISLAUS$", 12 @@ -6074,7 +6074,7 @@ gTrainers:: @ 81F04FC @ GERALD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "GERALD$", 12 @@ -6086,7 +6086,7 @@ gTrainers:: @ 81F04FC @ KELVIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "AARON$", 12 @@ -6098,7 +6098,7 @@ gTrainers:: @ 81F04FC @ KODY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ALBERT$", 12 @@ -6110,7 +6110,7 @@ gTrainers:: @ 81F04FC @ TEVIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ANDRE$", 12 @@ -6122,7 +6122,7 @@ gTrainers:: @ 81F04FC @ DAMON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "AMON$", 12 @@ -6134,7 +6134,7 @@ gTrainers:: @ 81F04FC @ PABLO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "PABLO$", 12 @@ -6146,7 +6146,7 @@ gTrainers:: @ 81F04FC @ EDWIN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6158,7 +6158,7 @@ gTrainers:: @ 81F04FC @ HECTOR_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "HEKTOR$", 12 @@ -6170,7 +6170,7 @@ gTrainers:: @ 81F04FC @ HECTOR_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "HEKTOR$", 12 @@ -6182,7 +6182,7 @@ gTrainers:: @ 81F04FC @ EDWIN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6194,7 +6194,7 @@ gTrainers:: @ 81F04FC @ EDWIN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6206,7 +6206,7 @@ gTrainers:: @ 81F04FC @ EDWIN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6218,7 +6218,7 @@ gTrainers:: @ 81F04FC @ EDWIN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6230,7 +6230,7 @@ gTrainers:: @ 81F04FC @ WALLY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "HEIKO$", 12 @@ -6242,7 +6242,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6254,7 +6254,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6266,7 +6266,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6278,7 +6278,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6290,7 +6290,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6302,7 +6302,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6314,7 +6314,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6326,7 +6326,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6338,7 +6338,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -6350,7 +6350,7 @@ gTrainers:: @ 81F04FC @ MAY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6362,7 +6362,7 @@ gTrainers:: @ 81F04FC @ MAY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6374,7 +6374,7 @@ gTrainers:: @ 81F04FC @ MAY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6386,7 +6386,7 @@ gTrainers:: @ 81F04FC @ MAY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6398,7 +6398,7 @@ gTrainers:: @ 81F04FC @ MAY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6410,7 +6410,7 @@ gTrainers:: @ 81F04FC @ MAY_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6422,7 +6422,7 @@ gTrainers:: @ 81F04FC @ MAY_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6434,7 +6434,7 @@ gTrainers:: @ 81F04FC @ MAY_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6446,7 +6446,7 @@ gTrainers:: @ 81F04FC @ MAY_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -6458,7 +6458,7 @@ gTrainers:: @ 81F04FC @ ISAAC_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "BLASIUS$", 12 @@ -6470,7 +6470,7 @@ gTrainers:: @ 81F04FC @ RILEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "CLIFF$", 12 @@ -6482,7 +6482,7 @@ gTrainers:: @ 81F04FC @ AIDAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "DARIO$", 12 @@ -6494,7 +6494,7 @@ gTrainers:: @ 81F04FC @ ISAAC_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "BLASIUS$", 12 @@ -6506,7 +6506,7 @@ gTrainers:: @ 81F04FC @ ISAAC_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "BLASIUS$", 12 @@ -6518,7 +6518,7 @@ gTrainers:: @ 81F04FC @ ISAAC_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "BLASIUS$", 12 @@ -6530,7 +6530,7 @@ gTrainers:: @ 81F04FC @ ISAAC_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "BLASIUS$", 12 @@ -6542,7 +6542,7 @@ gTrainers:: @ 81F04FC @ LYDIA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6554,7 +6554,7 @@ gTrainers:: @ 81F04FC @ ALEXIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "DORIS$", 12 @@ -6566,7 +6566,7 @@ gTrainers:: @ 81F04FC @ DANIELLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "DUNJA$", 12 @@ -6578,7 +6578,7 @@ gTrainers:: @ 81F04FC @ LYDIA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6590,7 +6590,7 @@ gTrainers:: @ 81F04FC @ LYDIA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6602,7 +6602,7 @@ gTrainers:: @ 81F04FC @ LYDIA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6614,7 +6614,7 @@ gTrainers:: @ 81F04FC @ LYDIA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6626,7 +6626,7 @@ gTrainers:: @ 81F04FC @ JACKSON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "ECKBERT$", 12 @@ -6638,7 +6638,7 @@ gTrainers:: @ 81F04FC @ CARLOS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "EDWARD$", 12 @@ -6650,7 +6650,7 @@ gTrainers:: @ 81F04FC @ SEBASTIAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "EILMAR$", 12 @@ -6662,7 +6662,7 @@ gTrainers:: @ 81F04FC @ JACKSON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "ECKBERT$", 12 @@ -6674,7 +6674,7 @@ gTrainers:: @ 81F04FC @ JACKSON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "ECKBERT$", 12 @@ -6686,7 +6686,7 @@ gTrainers:: @ 81F04FC @ JACKSON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "ECKBERT$", 12 @@ -6698,7 +6698,7 @@ gTrainers:: @ 81F04FC @ JACKSON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "ECKBERT$", 12 @@ -6710,7 +6710,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "HANNELORE$", 12 @@ -6722,7 +6722,7 @@ gTrainers:: @ 81F04FC @ JENNA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "INGEBORG$", 12 @@ -6734,7 +6734,7 @@ gTrainers:: @ 81F04FC @ SOPHIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "SOPHIA$", 12 @@ -6746,7 +6746,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "HANNELORE$", 12 @@ -6758,7 +6758,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "HANNELORE$", 12 @@ -6770,7 +6770,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "HANNELORE$", 12 @@ -6782,7 +6782,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "HANNELORE$", 12 @@ -6794,7 +6794,7 @@ gTrainers:: @ 81F04FC @ MAXIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_LEADER + .byte TRAINER_CLASS_MAGMA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAXIE .string "MARC$", 12 @@ -6806,7 +6806,7 @@ gTrainers:: @ 81F04FC @ GRUNT_28 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6818,7 +6818,7 @@ gTrainers:: @ 81F04FC @ GRUNT_29 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6830,7 +6830,7 @@ gTrainers:: @ 81F04FC @ GRUNT_30 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6842,7 +6842,7 @@ gTrainers:: @ 81F04FC @ GRUNT_31 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6854,7 +6854,7 @@ gTrainers:: @ 81F04FC @ GRUNT_32 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6866,7 +6866,7 @@ gTrainers:: @ 81F04FC @ GRUNT_33 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6878,7 +6878,7 @@ gTrainers:: @ 81F04FC @ GRUNT_34 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6890,7 +6890,7 @@ gTrainers:: @ 81F04FC @ GRUNT_35 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6902,7 +6902,7 @@ gTrainers:: @ 81F04FC @ GRUNT_36 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6914,7 +6914,7 @@ gTrainers:: @ 81F04FC @ GRUNT_37 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6926,7 +6926,7 @@ gTrainers:: @ 81F04FC @ GRUNT_38 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6938,7 +6938,7 @@ gTrainers:: @ 81F04FC @ GRUNT_39 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6950,7 +6950,7 @@ gTrainers:: @ 81F04FC @ GRUNT_40 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6962,7 +6962,7 @@ gTrainers:: @ 81F04FC @ GRUNT_41 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6974,7 +6974,7 @@ gTrainers:: @ 81F04FC @ GRUNT_42 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6986,7 +6986,7 @@ gTrainers:: @ 81F04FC @ GRUNT_43 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -6998,7 +6998,7 @@ gTrainers:: @ 81F04FC @ GRUNT_44 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7010,7 +7010,7 @@ gTrainers:: @ 81F04FC @ GRUNT_45 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7022,7 +7022,7 @@ gTrainers:: @ 81F04FC @ GRUNT_46 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7034,7 +7034,7 @@ gTrainers:: @ 81F04FC @ GRUNT_47 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7046,7 +7046,7 @@ gTrainers:: @ 81F04FC @ GRUNT_48 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7058,7 +7058,7 @@ gTrainers:: @ 81F04FC @ GRUNT_49 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7070,7 +7070,7 @@ gTrainers:: @ 81F04FC @ GRUNT_50 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7082,7 +7082,7 @@ gTrainers:: @ 81F04FC @ GRUNT_51 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "RÜPEL$", 12 @@ -7094,7 +7094,7 @@ gTrainers:: @ 81F04FC @ GRUNT_52 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_F .string "RÜPEL$", 12 @@ -7106,7 +7106,7 @@ gTrainers:: @ 81F04FC @ GRUNT_53 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_F .string "RÜPEL$", 12 @@ -7118,7 +7118,7 @@ gTrainers:: @ 81F04FC @ GRUNT_54 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_F .string "RÜPEL$", 12 @@ -7130,7 +7130,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_14 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "$", 12 @@ -7142,7 +7142,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_15 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "$", 12 @@ -7154,7 +7154,7 @@ gTrainers:: @ 81F04FC @ TABITHA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "KALLE$", 12 @@ -7166,7 +7166,7 @@ gTrainers:: @ 81F04FC @ TABITHA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "KALLE$", 12 @@ -7178,7 +7178,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_16 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "$", 12 @@ -7190,7 +7190,7 @@ gTrainers:: @ 81F04FC @ COURTNEY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_F .string "JÖRDIS$", 12 @@ -7202,7 +7202,7 @@ gTrainers:: @ 81F04FC @ COURTNEY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_F .string "JÖRDIS$", 12 @@ -7214,7 +7214,7 @@ gTrainers:: @ 81F04FC @ MAXIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_LEADER + .byte TRAINER_CLASS_MAGMA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAXIE .string "MARC$", 12 @@ -7226,7 +7226,7 @@ gTrainers:: @ 81F04FC @ MAXIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_LEADER + .byte TRAINER_CLASS_MAGMA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAXIE .string "MARC$", 12 @@ -7238,7 +7238,7 @@ gTrainers:: @ 81F04FC @ TIANA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "KARIN$", 12 @@ -7250,7 +7250,7 @@ gTrainers:: @ 81F04FC @ HALEY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ELISA$", 12 @@ -7262,7 +7262,7 @@ gTrainers:: @ 81F04FC @ JANICE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "RICARDA$", 12 @@ -7274,7 +7274,7 @@ gTrainers:: @ 81F04FC @ VIVI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "SIEGLINDE$", 12 @@ -7286,7 +7286,7 @@ gTrainers:: @ 81F04FC @ HALEY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ELISA$", 12 @@ -7298,7 +7298,7 @@ gTrainers:: @ 81F04FC @ HALEY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ELISA$", 12 @@ -7310,7 +7310,7 @@ gTrainers:: @ 81F04FC @ HALEY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ELISA$", 12 @@ -7322,7 +7322,7 @@ gTrainers:: @ 81F04FC @ HALEY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ELISA$", 12 @@ -7334,7 +7334,7 @@ gTrainers:: @ 81F04FC @ SALLY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "FREDERIKE$", 12 @@ -7346,7 +7346,7 @@ gTrainers:: @ 81F04FC @ ROBIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ROBIN$", 12 @@ -7358,7 +7358,7 @@ gTrainers:: @ 81F04FC @ ANDREA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "FRIEDA$", 12 @@ -7370,7 +7370,7 @@ gTrainers:: @ 81F04FC @ CRISSY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ADELHEID$", 12 @@ -7382,7 +7382,7 @@ gTrainers:: @ 81F04FC @ RICK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "BALDUR$", 12 @@ -7394,7 +7394,7 @@ gTrainers:: @ 81F04FC @ LYLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "DETWIN$", 12 @@ -7406,7 +7406,7 @@ gTrainers:: @ 81F04FC @ JOSE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "EROS$", 12 @@ -7418,7 +7418,7 @@ gTrainers:: @ 81F04FC @ DOUG .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "EUSEBIUS$", 12 @@ -7430,7 +7430,7 @@ gTrainers:: @ 81F04FC @ GREG .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GANGOLF$", 12 @@ -7442,7 +7442,7 @@ gTrainers:: @ 81F04FC @ KENT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GERIT$", 12 @@ -7454,7 +7454,7 @@ gTrainers:: @ 81F04FC @ JAMES_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GERNOT$", 12 @@ -7466,7 +7466,7 @@ gTrainers:: @ 81F04FC @ JAMES_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GERNOT$", 12 @@ -7478,7 +7478,7 @@ gTrainers:: @ 81F04FC @ JAMES_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GERNOT$", 12 @@ -7490,7 +7490,7 @@ gTrainers:: @ 81F04FC @ JAMES_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GERNOT$", 12 @@ -7502,7 +7502,7 @@ gTrainers:: @ 81F04FC @ JAMES_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GERNOT$", 12 @@ -7514,7 +7514,7 @@ gTrainers:: @ 81F04FC @ BRICE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "GISBERT$", 12 @@ -7526,7 +7526,7 @@ gTrainers:: @ 81F04FC @ TRENT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "HEIMKE$", 12 @@ -7538,7 +7538,7 @@ gTrainers:: @ 81F04FC @ LENNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "JANNO$", 12 @@ -7550,7 +7550,7 @@ gTrainers:: @ 81F04FC @ LUCAS_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "KLODWIG$", 12 @@ -7562,7 +7562,7 @@ gTrainers:: @ 81F04FC @ ALAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "LANZELOT$", 12 @@ -7574,7 +7574,7 @@ gTrainers:: @ 81F04FC @ CLARK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "LUZIUS$", 12 @@ -7586,7 +7586,7 @@ gTrainers:: @ 81F04FC @ ERIC .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "MAURIZIO$", 12 @@ -7598,7 +7598,7 @@ gTrainers:: @ 81F04FC @ LUCAS_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "KLODWIG$", 12 @@ -7610,7 +7610,7 @@ gTrainers:: @ 81F04FC @ MIKE_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "MELVIN$", 12 @@ -7622,7 +7622,7 @@ gTrainers:: @ 81F04FC @ MIKE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "MELVIN$", 12 @@ -7634,7 +7634,7 @@ gTrainers:: @ 81F04FC @ TRENT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "HEIMKE$", 12 @@ -7646,7 +7646,7 @@ gTrainers:: @ 81F04FC @ TRENT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "HEIMKE$", 12 @@ -7658,7 +7658,7 @@ gTrainers:: @ 81F04FC @ TRENT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "HEIMKE$", 12 @@ -7670,7 +7670,7 @@ gTrainers:: @ 81F04FC @ TRENT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "HEIMKE$", 12 @@ -7682,7 +7682,7 @@ gTrainers:: @ 81F04FC @ DEZ_AND_LUKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "INA & LEIF$", 12 @@ -7694,7 +7694,7 @@ gTrainers:: @ 81F04FC @ LEA_AND_JED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LENA & UWE$", 12 @@ -7706,7 +7706,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "GESA & PIT$", 12 @@ -7718,7 +7718,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "GESA & PIT$", 12 @@ -7730,7 +7730,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "GESA & PIT$", 12 @@ -7742,7 +7742,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "GESA & PIT$", 12 @@ -7754,7 +7754,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "GESA & PIT$", 12 @@ -7766,7 +7766,7 @@ gTrainers:: @ 81F04FC @ JOHANNA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "CORDULA$", 12 @@ -7778,7 +7778,7 @@ gTrainers:: @ 81F04FC @ ZANE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "OTBERT$", 12 @@ -7790,7 +7790,7 @@ gTrainers:: @ 81F04FC @ VIVIAN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "BÄRBEL$", 12 @@ -7802,7 +7802,7 @@ gTrainers:: @ 81F04FC @ SADIE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CHANTAL$", 12 @@ -7814,7 +7814,7 @@ gTrainers:: @ 81F04FC @ HIDEO_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "SAUL$", 12 @@ -7826,7 +7826,7 @@ gTrainers:: @ 81F04FC @ KEIGO .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "NELSON$", 12 @@ -7838,7 +7838,7 @@ gTrainers:: @ 81F04FC @ TSUNAO .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "NIKODEMUS$", 12 @@ -7850,7 +7850,7 @@ gTrainers:: @ 81F04FC @ TERRELL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "NESTOR$", 12 @@ -7862,7 +7862,7 @@ gTrainers:: @ 81F04FC @ KYLEE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "MIREILLE$", 12 @@ -7874,7 +7874,7 @@ gTrainers:: @ 81F04FC @ WALLY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "HEIKO$", 12 @@ -7886,7 +7886,7 @@ gTrainers:: @ 81F04FC @ WALLY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "HEIKO$", 12 @@ -7898,7 +7898,7 @@ gTrainers:: @ 81F04FC @ WALLY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "HEIKO$", 12 @@ -7910,7 +7910,7 @@ gTrainers:: @ 81F04FC @ WALLY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "HEIKO$", 12 @@ -7922,7 +7922,7 @@ gTrainers:: @ 81F04FC @ WALLY_6 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "HEIKO$", 12 @@ -7934,7 +7934,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -7946,7 +7946,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -7958,7 +7958,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRIX$", 12 @@ -7970,7 +7970,7 @@ gTrainers:: @ 81F04FC @ MAY_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -7982,7 +7982,7 @@ gTrainers:: @ 81F04FC @ MAY_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -7994,7 +7994,7 @@ gTrainers:: @ 81F04FC @ MAY_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAIKE$", 12 @@ -8006,7 +8006,7 @@ gTrainers:: @ 81F04FC @ JONAH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "OLOF$", 12 @@ -8018,7 +8018,7 @@ gTrainers:: @ 81F04FC @ HENRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "PIUS$", 12 @@ -8030,7 +8030,7 @@ gTrainers:: @ 81F04FC @ ROGER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "AMATUS$", 12 @@ -8042,7 +8042,7 @@ gTrainers:: @ 81F04FC @ ALEXA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "ANNABEL$", 12 @@ -8054,7 +8054,7 @@ gTrainers:: @ 81F04FC @ RUBEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "TRUTZ$", 12 @@ -8066,7 +8066,7 @@ gTrainers:: @ 81F04FC @ KOJI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "REMIGIUS$", 12 @@ -8078,7 +8078,7 @@ gTrainers:: @ 81F04FC @ WAYNE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ALVARO$", 12 @@ -8090,7 +8090,7 @@ gTrainers:: @ 81F04FC @ BYRON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "AMALRICH$", 12 @@ -8102,7 +8102,7 @@ gTrainers:: @ 81F04FC @ REED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "ANDOLIN$", 12 @@ -8114,7 +8114,7 @@ gTrainers:: @ 81F04FC @ TISHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "IMKE$", 12 @@ -8126,7 +8126,7 @@ gTrainers:: @ 81F04FC @ TORI_AND_TIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "LI & FLO$", 12 @@ -8138,7 +8138,7 @@ gTrainers:: @ 81F04FC @ KIM_AND_IRIS .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "ZOE & IRIS$", 12 @@ -8150,7 +8150,7 @@ gTrainers:: @ 81F04FC @ TYRA_AND_IVY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "TYRA & IVY$", 12 @@ -8162,7 +8162,7 @@ gTrainers:: @ 81F04FC @ MEL_AND_PAUL .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "GELI & OLE$", 12 @@ -8174,7 +8174,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "URS & EVI$", 12 @@ -8186,7 +8186,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "URS & EVI$", 12 @@ -8198,7 +8198,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "URS & EVI$", 12 @@ -8210,7 +8210,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "URS & EVI$", 12 @@ -8222,7 +8222,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "URS & EVI$", 12 @@ -8234,7 +8234,7 @@ gTrainers:: @ 81F04FC @ RELI_AND_IAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "TOBI & UNA$", 12 @@ -8246,7 +8246,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "TOM & UTA$", 12 @@ -8258,7 +8258,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "TOM & UTA$", 12 @@ -8270,7 +8270,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "TOM & UTA$", 12 @@ -8282,7 +8282,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "TOM & UTA$", 12 @@ -8294,7 +8294,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "TOM & UTA$", 12 @@ -8306,7 +8306,7 @@ gTrainers:: @ 81F04FC @ LISA_AND_RAY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "ERKO & BEA$", 12 @@ -8318,7 +8318,7 @@ gTrainers:: @ 81F04FC @ EUGENE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ABELKE$", 12 diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 3c255b461..41edcb514 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -3065,7 +3065,7 @@ BattleScript_LocalBattleLost:: @ 81D8DD1 BattleScript_LocalBattleLostEnd: @ 81D8E01 end2 -gUnknown_081D8E02:: @ 81D8E02 +BattleScript_LinkBattleWonOrLost:: @ 81D8E02 printstring 5 waitmessage 64 atk57 @@ -3248,7 +3248,7 @@ BattleScript_DamagingWeatherContinues:: @ 81D8F7D setbyte gBattleCommunication, 0 BattleScript_DamagingWeatherLoop: @ 81D8F95 - copyarraywithindex gBankAttacker, gTurnOrder, gBattleCommunication, 1 + copyarraywithindex gBankAttacker, gBanksByTurnOrder, gBattleCommunication, 1 weatherdamage jumpifword EQUAL, gBattleMoveDamage, 0x0, BattleScript_DamagingWeatherLoopIncrement printfromtable gSandStormHailDmgStringIds diff --git a/data/data2a.s b/data/data2a.s index 103b723e8..bd455ce29 100644 --- a/data/data2a.s +++ b/data/data2a.s @@ -946,32 +946,32 @@ gSpriteAffineAnimTable_81F971C:: @ 81F971C .align 2 gUnknown_081FA640:: @ 81FA640 - .4byte sub_8013FE8 - .4byte sub_80147A0 - .4byte sub_80146F4 - .4byte sub_8014BF4 - .4byte sub_8014D50 - .4byte sub_8014D98 - .4byte sub_8014DF8 - .4byte sub_8014EBC - .4byte bs8_exit_by_flight - .4byte sub_8014FBC + .4byte HandleAction_UseMove + .4byte HandleAction_UseItem + .4byte HandleAction_Switch + .4byte HandleAction_Run + .4byte HandleAction_WatchesCarefully + .4byte HandleAction_SafariZoneBallThrow + .4byte HandleAction_ThrowPokeblock + .4byte HandleAction_GoNear + .4byte HandleAction_SafriZoneRun + .4byte HandleAction_Action9 .4byte sub_801B594 - .4byte bsB_exit_by_move - .4byte bsC_8016D70 - .4byte sub_8015060 + .4byte HandleAction_Action11 + .4byte HandleAction_ActionFinished + .4byte HandleAction_NothingIsFainted .align 2 gUnknown_081FA678:: @ 81FA678 .4byte bc_8013B1C - .4byte sub_8013998 - .4byte sub_8013B64 - .4byte sub_8013B64 - .4byte sub_8013BDC - .4byte sub_8013C9C - .4byte sub_8013C48 - .4byte sub_8013C9C - .4byte sub_8013C9C + .4byte HandleEndTurn_BattleWon + .4byte HandleEndTurn_BattleLost + .4byte HandleEndTurn_BattleLost + .4byte HandleEndTurn_RanFromBattle + .4byte HandleEndTurn_FinishBattle + .4byte HandleEndTurn_MonFled + .4byte HandleEndTurn_FinishBattle + .4byte HandleEndTurn_FinishBattle gStatusConditionString_PoisonJpn:: @ 81FA69C .string "どく$$$$$$" diff --git a/data/trainer_money.inc b/data/trainer_money.inc index 95da92fea..ceffb0a61 100644 --- a/data/trainer_money.inc +++ b/data/trainer_money.inc @@ -1,58 +1,58 @@ @ This is a factor in how much money you get for beating a trainer. .align 2 gTrainerMoney:: @ 81F98F0 - .byte TRAINER_CLASS_NAME_TEAM_AQUA, 5, 0, 0 - .byte TRAINER_CLASS_NAME_AQUA_ADMIN, 10, 0, 0 - .byte TRAINER_CLASS_NAME_AQUA_LEADER, 20, 0, 0 - .byte TRAINER_CLASS_NAME_AROMA_LADY, 10, 0, 0 - .byte TRAINER_CLASS_NAME_RUIN_MANIAC, 15, 0, 0 - .byte TRAINER_CLASS_NAME_INTERVIEWER, 12, 0, 0 - .byte TRAINER_CLASS_NAME_TUBER_F, 1, 0, 0 - .byte TRAINER_CLASS_NAME_TUBER_M, 1, 0, 0 - .byte TRAINER_CLASS_NAME_SIS_AND_BRO, 3, 0, 0 - .byte TRAINER_CLASS_NAME_COOL_TRAINER, 12, 0, 0 - .byte TRAINER_CLASS_NAME_HEX_MANIAC, 6, 0, 0 - .byte TRAINER_CLASS_NAME_LADY, 50, 0, 0 - .byte TRAINER_CLASS_NAME_BEAUTY, 20, 0, 0 - .byte TRAINER_CLASS_NAME_RICH_BOY, 50, 0, 0 - .byte TRAINER_CLASS_NAME_POKEMANIAC, 15, 0, 0 - .byte TRAINER_CLASS_NAME_SWIMMER_M, 2, 0, 0 - .byte TRAINER_CLASS_NAME_BLACK_BELT, 8, 0, 0 - .byte TRAINER_CLASS_NAME_GUITARIST, 8, 0, 0 - .byte TRAINER_CLASS_NAME_KINDLER, 8, 0, 0 - .byte TRAINER_CLASS_NAME_CAMPER, 4, 0, 0 - .byte TRAINER_CLASS_NAME_OLD_COUPLE, 10, 0, 0 - .byte TRAINER_CLASS_NAME_BUG_MANIAC, 15, 0, 0 - .byte TRAINER_CLASS_NAME_PSYCHIC, 6, 0, 0 - .byte TRAINER_CLASS_NAME_GENTLEMAN, 20, 0, 0 - .byte TRAINER_CLASS_NAME_ELITE_FOUR, 25, 0, 0 - .byte TRAINER_CLASS_NAME_LEADER, 25, 0, 0 - .byte TRAINER_CLASS_NAME_SCHOOL_KID, 5, 0, 0 - .byte TRAINER_CLASS_NAME_SR_AND_JR, 4, 0, 0 - .byte TRAINER_CLASS_NAME_POKEFAN, 20, 0, 0 - .byte TRAINER_CLASS_NAME_EXPERT, 10, 0, 0 - .byte TRAINER_CLASS_NAME_YOUNGSTER, 4, 0, 0 - .byte TRAINER_CLASS_NAME_CHAMPION, 50, 0, 0 - .byte TRAINER_CLASS_NAME_FISHERMAN, 10, 0, 0 - .byte TRAINER_CLASS_NAME_TRIATHLETE, 10, 0, 0 - .byte TRAINER_CLASS_NAME_DRAGON_TAMER, 12, 0, 0 - .byte TRAINER_CLASS_NAME_BIRD_KEEPER, 8, 0, 0 - .byte TRAINER_CLASS_NAME_NINJA_BOY, 3, 0, 0 - .byte TRAINER_CLASS_NAME_BATTLE_GIRL, 6, 0, 0 - .byte TRAINER_CLASS_NAME_PARASOL_LADY, 10, 0, 0 - .byte TRAINER_CLASS_NAME_SWIMMER_F, 2, 0, 0 - .byte TRAINER_CLASS_NAME_PICNICKER, 4, 0, 0 - .byte TRAINER_CLASS_NAME_TWINS, 3, 0, 0 - .byte TRAINER_CLASS_NAME_SAILOR, 8, 0, 0 - .byte TRAINER_CLASS_NAME_COLLECTOR, 15, 0, 0 - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3, 15, 0, 0 - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER, 10, 0, 0 - .byte TRAINER_CLASS_NAME_POKEMON_RANGER, 12, 0, 0 - .byte TRAINER_CLASS_NAME_TEAM_MAGMA, 5, 0, 0 - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN, 10, 0, 0 - .byte TRAINER_CLASS_NAME_MAGMA_LEADER, 20, 0, 0 - .byte TRAINER_CLASS_NAME_LASS, 4, 0, 0 - .byte TRAINER_CLASS_NAME_BUG_CATCHER, 4, 0, 0 - .byte TRAINER_CLASS_NAME_HIKER, 10, 0, 0 - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE, 8, 0, 0 + .byte TRAINER_CLASS_TEAM_AQUA, 5, 0, 0 + .byte TRAINER_CLASS_AQUA_ADMIN, 10, 0, 0 + .byte TRAINER_CLASS_AQUA_LEADER, 20, 0, 0 + .byte TRAINER_CLASS_AROMA_LADY, 10, 0, 0 + .byte TRAINER_CLASS_RUIN_MANIAC, 15, 0, 0 + .byte TRAINER_CLASS_INTERVIEWER, 12, 0, 0 + .byte TRAINER_CLASS_TUBER_F, 1, 0, 0 + .byte TRAINER_CLASS_TUBER_M, 1, 0, 0 + .byte TRAINER_CLASS_SIS_AND_BRO, 3, 0, 0 + .byte TRAINER_CLASS_COOL_TRAINER, 12, 0, 0 + .byte TRAINER_CLASS_HEX_MANIAC, 6, 0, 0 + .byte TRAINER_CLASS_LADY, 50, 0, 0 + .byte TRAINER_CLASS_BEAUTY, 20, 0, 0 + .byte TRAINER_CLASS_RICH_BOY, 50, 0, 0 + .byte TRAINER_CLASS_POKEMANIAC, 15, 0, 0 + .byte TRAINER_CLASS_SWIMMER_M, 2, 0, 0 + .byte TRAINER_CLASS_BLACK_BELT, 8, 0, 0 + .byte TRAINER_CLASS_GUITARIST, 8, 0, 0 + .byte TRAINER_CLASS_KINDLER, 8, 0, 0 + .byte TRAINER_CLASS_CAMPER, 4, 0, 0 + .byte TRAINER_CLASS_OLD_COUPLE, 10, 0, 0 + .byte TRAINER_CLASS_BUG_MANIAC, 15, 0, 0 + .byte TRAINER_CLASS_PSYCHIC, 6, 0, 0 + .byte TRAINER_CLASS_GENTLEMAN, 20, 0, 0 + .byte TRAINER_CLASS_ELITE_FOUR, 25, 0, 0 + .byte TRAINER_CLASS_LEADER, 25, 0, 0 + .byte TRAINER_CLASS_SCHOOL_KID, 5, 0, 0 + .byte TRAINER_CLASS_SR_AND_JR, 4, 0, 0 + .byte TRAINER_CLASS_POKEFAN, 20, 0, 0 + .byte TRAINER_CLASS_EXPERT, 10, 0, 0 + .byte TRAINER_CLASS_YOUNGSTER, 4, 0, 0 + .byte TRAINER_CLASS_CHAMPION, 50, 0, 0 + .byte TRAINER_CLASS_FISHERMAN, 10, 0, 0 + .byte TRAINER_CLASS_TRIATHLETE, 10, 0, 0 + .byte TRAINER_CLASS_DRAGON_TAMER, 12, 0, 0 + .byte TRAINER_CLASS_BIRD_KEEPER, 8, 0, 0 + .byte TRAINER_CLASS_NINJA_BOY, 3, 0, 0 + .byte TRAINER_CLASS_BATTLE_GIRL, 6, 0, 0 + .byte TRAINER_CLASS_PARASOL_LADY, 10, 0, 0 + .byte TRAINER_CLASS_SWIMMER_F, 2, 0, 0 + .byte TRAINER_CLASS_PICNICKER, 4, 0, 0 + .byte TRAINER_CLASS_TWINS, 3, 0, 0 + .byte TRAINER_CLASS_SAILOR, 8, 0, 0 + .byte TRAINER_CLASS_COLLECTOR, 15, 0, 0 + .byte TRAINER_CLASS_POKEMON_TRAINER_3, 15, 0, 0 + .byte TRAINER_CLASS_POKEMON_BREEDER, 10, 0, 0 + .byte TRAINER_CLASS_POKEMON_RANGER, 12, 0, 0 + .byte TRAINER_CLASS_TEAM_MAGMA, 5, 0, 0 + .byte TRAINER_CLASS_MAGMA_ADMIN, 10, 0, 0 + .byte TRAINER_CLASS_MAGMA_LEADER, 20, 0, 0 + .byte TRAINER_CLASS_LASS, 4, 0, 0 + .byte TRAINER_CLASS_BUG_CATCHER, 4, 0, 0 + .byte TRAINER_CLASS_HIKER, 10, 0, 0 + .byte TRAINER_CLASS_YOUNG_COUPLE, 8, 0, 0 .byte -1, 5, 0, 0 diff --git a/data/trainers.inc b/data/trainers.inc index 8e80cd77f..be9ce1a81 100644 --- a/data/trainers.inc +++ b/data/trainers.inc @@ -2,7 +2,7 @@ gTrainers:: @ 81F04FC @ NONE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_1 + .byte TRAINER_CLASS_POKEMON_TRAINER_1 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "$", 12 @@ -14,7 +14,7 @@ gTrainers:: @ 81F04FC @ ARCHIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_LEADER + .byte TRAINER_CLASS_AQUA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_ARCHIE .string "ARCHIE$", 12 @@ -26,7 +26,7 @@ gTrainers:: @ 81F04FC @ GRUNT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -38,7 +38,7 @@ gTrainers:: @ 81F04FC @ GRUNT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -50,7 +50,7 @@ gTrainers:: @ 81F04FC @ GRUNT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -62,7 +62,7 @@ gTrainers:: @ 81F04FC @ GRUNT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -74,7 +74,7 @@ gTrainers:: @ 81F04FC @ GRUNT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -86,7 +86,7 @@ gTrainers:: @ 81F04FC @ GRUNT_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -98,7 +98,7 @@ gTrainers:: @ 81F04FC @ GRUNT_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -110,7 +110,7 @@ gTrainers:: @ 81F04FC @ GRUNT_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -122,7 +122,7 @@ gTrainers:: @ 81F04FC @ GRUNT_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -134,7 +134,7 @@ gTrainers:: @ 81F04FC @ GRUNT_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -146,7 +146,7 @@ gTrainers:: @ 81F04FC @ GRUNT_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -158,7 +158,7 @@ gTrainers:: @ 81F04FC @ GRUNT_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -170,7 +170,7 @@ gTrainers:: @ 81F04FC @ GRUNT_13 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -182,7 +182,7 @@ gTrainers:: @ 81F04FC @ GRUNT_14 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -194,7 +194,7 @@ gTrainers:: @ 81F04FC @ GRUNT_15 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -206,7 +206,7 @@ gTrainers:: @ 81F04FC @ GRUNT_16 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -218,7 +218,7 @@ gTrainers:: @ 81F04FC @ GRUNT_17 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -230,7 +230,7 @@ gTrainers:: @ 81F04FC @ GRUNT_18 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -242,7 +242,7 @@ gTrainers:: @ 81F04FC @ GRUNT_19 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -254,7 +254,7 @@ gTrainers:: @ 81F04FC @ GRUNT_20 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -266,7 +266,7 @@ gTrainers:: @ 81F04FC @ GRUNT_21 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -278,7 +278,7 @@ gTrainers:: @ 81F04FC @ GRUNT_22 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -290,7 +290,7 @@ gTrainers:: @ 81F04FC @ GRUNT_23 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -302,7 +302,7 @@ gTrainers:: @ 81F04FC @ GRUNT_24 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_M .string "GRUNT$", 12 @@ -314,7 +314,7 @@ gTrainers:: @ 81F04FC @ GRUNT_25 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_F .string "GRUNT$", 12 @@ -326,7 +326,7 @@ gTrainers:: @ 81F04FC @ GRUNT_26 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_F .string "GRUNT$", 12 @@ -338,7 +338,7 @@ gTrainers:: @ 81F04FC @ GRUNT_27 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_AQUA + .byte TRAINER_CLASS_TEAM_AQUA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_GRUNT_F .string "GRUNT$", 12 @@ -350,7 +350,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_M .string "$", 12 @@ -362,7 +362,7 @@ gTrainers:: @ 81F04FC @ MATT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_M .string "MATT$", 12 @@ -374,7 +374,7 @@ gTrainers:: @ 81F04FC @ MATT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_M .string "MATT$", 12 @@ -386,7 +386,7 @@ gTrainers:: @ 81F04FC @ SHELLY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_F .string "SHELLY$", 12 @@ -398,7 +398,7 @@ gTrainers:: @ 81F04FC @ SHELLY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_ADMIN + .byte TRAINER_CLASS_AQUA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_AQUA_ADMIN_F .string "SHELLY$", 12 @@ -410,7 +410,7 @@ gTrainers:: @ 81F04FC @ ARCHIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_LEADER + .byte TRAINER_CLASS_AQUA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_ARCHIE .string "ARCHIE$", 12 @@ -422,7 +422,7 @@ gTrainers:: @ 81F04FC @ ARCHIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AQUA_LEADER + .byte TRAINER_CLASS_AQUA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_AQUA @ gender flag and encounter music .byte TRAINER_PIC_ARCHIE .string "ARCHIE$", 12 @@ -434,7 +434,7 @@ gTrainers:: @ 81F04FC @ DAISY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "DAISY$", 12 @@ -446,7 +446,7 @@ gTrainers:: @ 81F04FC @ ROSE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSE$", 12 @@ -458,7 +458,7 @@ gTrainers:: @ 81F04FC @ LILY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "LILY$", 12 @@ -470,7 +470,7 @@ gTrainers:: @ 81F04FC @ VIOLET .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "VIOLET$", 12 @@ -482,7 +482,7 @@ gTrainers:: @ 81F04FC @ ROSE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSE$", 12 @@ -494,7 +494,7 @@ gTrainers:: @ 81F04FC @ ROSE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSE$", 12 @@ -506,7 +506,7 @@ gTrainers:: @ 81F04FC @ ROSE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSE$", 12 @@ -518,7 +518,7 @@ gTrainers:: @ 81F04FC @ ROSE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_AROMA_LADY + .byte TRAINER_CLASS_AROMA_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_AROMA_LADY .string "ROSE$", 12 @@ -530,7 +530,7 @@ gTrainers:: @ 81F04FC @ DUSTY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "DUSTY$", 12 @@ -542,7 +542,7 @@ gTrainers:: @ 81F04FC @ CHIP .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "CHIP$", 12 @@ -554,7 +554,7 @@ gTrainers:: @ 81F04FC @ FOSTER .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "FOSTER$", 12 @@ -566,7 +566,7 @@ gTrainers:: @ 81F04FC @ DUSTY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "DUSTY$", 12 @@ -578,7 +578,7 @@ gTrainers:: @ 81F04FC @ DUSTY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "DUSTY$", 12 @@ -590,7 +590,7 @@ gTrainers:: @ 81F04FC @ DUSTY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "DUSTY$", 12 @@ -602,7 +602,7 @@ gTrainers:: @ 81F04FC @ DUSTY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RUIN_MANIAC + .byte TRAINER_CLASS_RUIN_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_RUIN_MANIAC .string "DUSTY$", 12 @@ -614,7 +614,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "GABBY & TY$", 12 @@ -626,7 +626,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "GABBY & TY$", 12 @@ -638,7 +638,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "GABBY & TY$", 12 @@ -650,7 +650,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "GABBY & TY$", 12 @@ -662,7 +662,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "GABBY & TY$", 12 @@ -674,7 +674,7 @@ gTrainers:: @ 81F04FC @ GABBY_AND_TY_6 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_INTERVIEWER + .byte TRAINER_CLASS_INTERVIEWER .byte TRAINER_ENCOUNTER_MUSIC_INTERVIEWER @ gender flag and encounter music .byte TRAINER_PIC_INTERVIEWER .string "GABBY & TY$", 12 @@ -686,7 +686,7 @@ gTrainers:: @ 81F04FC @ LOLA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -698,7 +698,7 @@ gTrainers:: @ 81F04FC @ CARMEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "CARMEN$", 12 @@ -710,7 +710,7 @@ gTrainers:: @ 81F04FC @ GWEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "GWEN $", 12 @@ -722,7 +722,7 @@ gTrainers:: @ 81F04FC @ LOLA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -734,7 +734,7 @@ gTrainers:: @ 81F04FC @ LOLA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -746,7 +746,7 @@ gTrainers:: @ 81F04FC @ LOLA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -758,7 +758,7 @@ gTrainers:: @ 81F04FC @ LOLA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_F + .byte TRAINER_CLASS_TUBER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_F .string "LOLA$", 12 @@ -770,7 +770,7 @@ gTrainers:: @ 81F04FC @ RICKY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "RICKY$", 12 @@ -782,7 +782,7 @@ gTrainers:: @ 81F04FC @ SIMON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "SIMON$", 12 @@ -794,7 +794,7 @@ gTrainers:: @ 81F04FC @ CHARLIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "CHARLIE$", 12 @@ -806,7 +806,7 @@ gTrainers:: @ 81F04FC @ RICKY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "RICKY$", 12 @@ -818,7 +818,7 @@ gTrainers:: @ 81F04FC @ RICKY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "RICKY$", 12 @@ -830,7 +830,7 @@ gTrainers:: @ 81F04FC @ RICKY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "RICKY$", 12 @@ -842,7 +842,7 @@ gTrainers:: @ 81F04FC @ RICKY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TUBER_M + .byte TRAINER_CLASS_TUBER_M .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_TUBER_M .string "RICKY$", 12 @@ -854,7 +854,7 @@ gTrainers:: @ 81F04FC @ RANDALL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "RANDALL$", 12 @@ -866,7 +866,7 @@ gTrainers:: @ 81F04FC @ PARKER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "PARKER$", 12 @@ -878,7 +878,7 @@ gTrainers:: @ 81F04FC @ GEORGE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "GEORGE$", 12 @@ -890,7 +890,7 @@ gTrainers:: @ 81F04FC @ BERKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "BERKE$", 12 @@ -902,7 +902,7 @@ gTrainers:: @ 81F04FC @ CLYDE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "CLYDE$", 12 @@ -914,7 +914,7 @@ gTrainers:: @ 81F04FC @ VINCENT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "VINCENT$", 12 @@ -926,7 +926,7 @@ gTrainers:: @ 81F04FC @ LEROY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "LEROY$", 12 @@ -938,7 +938,7 @@ gTrainers:: @ 81F04FC @ WILTON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "WILTON$", 12 @@ -950,7 +950,7 @@ gTrainers:: @ 81F04FC @ EDGAR .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "EDGAR$", 12 @@ -962,7 +962,7 @@ gTrainers:: @ 81F04FC @ ALBERT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "ALBERT$", 12 @@ -974,7 +974,7 @@ gTrainers:: @ 81F04FC @ SAMUEL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "SAMUEL$", 12 @@ -986,7 +986,7 @@ gTrainers:: @ 81F04FC @ VITO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "VITO$", 12 @@ -998,7 +998,7 @@ gTrainers:: @ 81F04FC @ OWEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "OWEN$", 12 @@ -1010,7 +1010,7 @@ gTrainers:: @ 81F04FC @ WILTON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "WILTON$", 12 @@ -1022,7 +1022,7 @@ gTrainers:: @ 81F04FC @ WILTON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "WILTON$", 12 @@ -1034,7 +1034,7 @@ gTrainers:: @ 81F04FC @ WILTON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "WILTON$", 12 @@ -1046,7 +1046,7 @@ gTrainers:: @ 81F04FC @ WILTON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "WILTON$", 12 @@ -1058,7 +1058,7 @@ gTrainers:: @ 81F04FC @ WARREN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "WARREN$", 12 @@ -1070,7 +1070,7 @@ gTrainers:: @ 81F04FC @ MARY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "MARY$", 12 @@ -1082,7 +1082,7 @@ gTrainers:: @ 81F04FC @ LORI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "LORI$", 12 @@ -1094,7 +1094,7 @@ gTrainers:: @ 81F04FC @ JODY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "JODY$", 12 @@ -1106,7 +1106,7 @@ gTrainers:: @ 81F04FC @ WENDY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "WENDY$", 12 @@ -1118,7 +1118,7 @@ gTrainers:: @ 81F04FC @ ELAINE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "ELAINE$", 12 @@ -1130,7 +1130,7 @@ gTrainers:: @ 81F04FC @ BROOKE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "BROOKE$", 12 @@ -1142,7 +1142,7 @@ gTrainers:: @ 81F04FC @ JENNIFER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "JENNIFER$", 12 @@ -1154,7 +1154,7 @@ gTrainers:: @ 81F04FC @ HOPE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "HOPE$", 12 @@ -1166,7 +1166,7 @@ gTrainers:: @ 81F04FC @ SHANNON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "SHANNON$", 12 @@ -1178,7 +1178,7 @@ gTrainers:: @ 81F04FC @ MICHELLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "MICHELLE$", 12 @@ -1190,7 +1190,7 @@ gTrainers:: @ 81F04FC @ CAROLINE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "CAROLINE$", 12 @@ -1202,7 +1202,7 @@ gTrainers:: @ 81F04FC @ JULIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "JULIE$", 12 @@ -1214,7 +1214,7 @@ gTrainers:: @ 81F04FC @ BROOKE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "BROOKE$", 12 @@ -1226,7 +1226,7 @@ gTrainers:: @ 81F04FC @ BROOKE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "BROOKE$", 12 @@ -1238,7 +1238,7 @@ gTrainers:: @ 81F04FC @ BROOKE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "BROOKE$", 12 @@ -1250,7 +1250,7 @@ gTrainers:: @ 81F04FC @ BROOKE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "BROOKE$", 12 @@ -1262,7 +1262,7 @@ gTrainers:: @ 81F04FC @ PATRICIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "PATRICIA$", 12 @@ -1274,7 +1274,7 @@ gTrainers:: @ 81F04FC @ KINDRA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "KINDRA$", 12 @@ -1286,7 +1286,7 @@ gTrainers:: @ 81F04FC @ TAMMY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TAMMY$", 12 @@ -1298,7 +1298,7 @@ gTrainers:: @ 81F04FC @ VALERIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "VALERIE$", 12 @@ -1310,7 +1310,7 @@ gTrainers:: @ 81F04FC @ TASHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "TASHA$", 12 @@ -1322,7 +1322,7 @@ gTrainers:: @ 81F04FC @ VALERIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "VALERIE$", 12 @@ -1334,7 +1334,7 @@ gTrainers:: @ 81F04FC @ VALERIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "VALERIE$", 12 @@ -1346,7 +1346,7 @@ gTrainers:: @ 81F04FC @ VALERIE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "VALERIE$", 12 @@ -1358,7 +1358,7 @@ gTrainers:: @ 81F04FC @ VALERIE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HEX_MANIAC + .byte TRAINER_CLASS_HEX_MANIAC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_HEX_MANIAC .string "VALERIE$", 12 @@ -1370,7 +1370,7 @@ gTrainers:: @ 81F04FC @ CINDY_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "CINDY$", 12 @@ -1382,7 +1382,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "$", 12 @@ -1394,7 +1394,7 @@ gTrainers:: @ 81F04FC @ BRIANNA_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "BRIANNA$", 12 @@ -1406,7 +1406,7 @@ gTrainers:: @ 81F04FC @ CINDY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "CINDY$", 12 @@ -1418,7 +1418,7 @@ gTrainers:: @ 81F04FC @ BRIANNA_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "BRIANNA$", 12 @@ -1430,7 +1430,7 @@ gTrainers:: @ 81F04FC @ ANETTE .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "ANETTE$", 12 @@ -1442,7 +1442,7 @@ gTrainers:: @ 81F04FC @ CINDY_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "CINDY$", 12 @@ -1454,7 +1454,7 @@ gTrainers:: @ 81F04FC @ CINDY_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "CINDY$", 12 @@ -1466,7 +1466,7 @@ gTrainers:: @ 81F04FC @ CINDY_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "CINDY$", 12 @@ -1478,7 +1478,7 @@ gTrainers:: @ 81F04FC @ CINDY_6 .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LADY + .byte TRAINER_CLASS_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LADY .string "CINDY$", 12 @@ -1490,7 +1490,7 @@ gTrainers:: @ 81F04FC @ MELISSA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "MELISSA$", 12 @@ -1502,7 +1502,7 @@ gTrainers:: @ 81F04FC @ SHEILA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "SHEILA$", 12 @@ -1514,7 +1514,7 @@ gTrainers:: @ 81F04FC @ SHIRLEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "SHIRLEY$", 12 @@ -1526,7 +1526,7 @@ gTrainers:: @ 81F04FC @ JESSICA_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "JESSICA$", 12 @@ -1538,7 +1538,7 @@ gTrainers:: @ 81F04FC @ CONNIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "CONNIE$", 12 @@ -1550,7 +1550,7 @@ gTrainers:: @ 81F04FC @ BRIDGET .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "BRIDGET$", 12 @@ -1562,7 +1562,7 @@ gTrainers:: @ 81F04FC @ OLIVIA .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "OLIVIA$", 12 @@ -1574,7 +1574,7 @@ gTrainers:: @ 81F04FC @ TIFFANY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "TIFFANY$", 12 @@ -1586,7 +1586,7 @@ gTrainers:: @ 81F04FC @ JESSICA_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "JESSICA$", 12 @@ -1598,7 +1598,7 @@ gTrainers:: @ 81F04FC @ JESSICA_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "JESSICA$", 12 @@ -1610,7 +1610,7 @@ gTrainers:: @ 81F04FC @ JESSICA_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "JESSICA$", 12 @@ -1622,7 +1622,7 @@ gTrainers:: @ 81F04FC @ JESSICA_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "JESSICA$", 12 @@ -1634,7 +1634,7 @@ gTrainers:: @ 81F04FC @ WINSTON_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "WINSTON$", 12 @@ -1646,7 +1646,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "$", 12 @@ -1658,7 +1658,7 @@ gTrainers:: @ 81F04FC @ GARRET .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "GARRET$", 12 @@ -1670,7 +1670,7 @@ gTrainers:: @ 81F04FC @ WINSTON_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "WINSTON$", 12 @@ -1682,7 +1682,7 @@ gTrainers:: @ 81F04FC @ WINSTON_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "WINSTON$", 12 @@ -1694,7 +1694,7 @@ gTrainers:: @ 81F04FC @ WINSTON_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "WINSTON$", 12 @@ -1706,7 +1706,7 @@ gTrainers:: @ 81F04FC @ WINSTON_5 .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_RICH_BOY + .byte TRAINER_CLASS_RICH_BOY .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_RICH_BOY .string "WINSTON$", 12 @@ -1718,7 +1718,7 @@ gTrainers:: @ 81F04FC @ STEVE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "STEVE$", 12 @@ -1730,7 +1730,7 @@ gTrainers:: @ 81F04FC @ CHRIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "CHRIS$", 12 @@ -1742,7 +1742,7 @@ gTrainers:: @ 81F04FC @ MARK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "MARK$", 12 @@ -1754,7 +1754,7 @@ gTrainers:: @ 81F04FC @ KENN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "KENN$", 12 @@ -1766,7 +1766,7 @@ gTrainers:: @ 81F04FC @ STEVE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "STEVE$", 12 @@ -1778,7 +1778,7 @@ gTrainers:: @ 81F04FC @ STEVE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "STEVE$", 12 @@ -1790,7 +1790,7 @@ gTrainers:: @ 81F04FC @ STEVE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "STEVE$", 12 @@ -1802,7 +1802,7 @@ gTrainers:: @ 81F04FC @ STEVE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMANIAC + .byte TRAINER_CLASS_POKEMANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_POKEMANIAC .string "STEVE$", 12 @@ -1814,7 +1814,7 @@ gTrainers:: @ 81F04FC @ LUIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "LUIS$", 12 @@ -1826,7 +1826,7 @@ gTrainers:: @ 81F04FC @ AUSTIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "AUSTIN$", 12 @@ -1838,7 +1838,7 @@ gTrainers:: @ 81F04FC @ DOUGLAS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DOUGLAS$", 12 @@ -1850,7 +1850,7 @@ gTrainers:: @ 81F04FC @ DARRIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DARRIN$", 12 @@ -1862,7 +1862,7 @@ gTrainers:: @ 81F04FC @ TONY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "TONY$", 12 @@ -1874,7 +1874,7 @@ gTrainers:: @ 81F04FC @ JEROME .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "JEROME$", 12 @@ -1886,7 +1886,7 @@ gTrainers:: @ 81F04FC @ MATTHEW .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "MATTHEW$", 12 @@ -1898,7 +1898,7 @@ gTrainers:: @ 81F04FC @ DAVID .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DAVID$", 12 @@ -1910,7 +1910,7 @@ gTrainers:: @ 81F04FC @ SPENCER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "SPENCER$", 12 @@ -1922,7 +1922,7 @@ gTrainers:: @ 81F04FC @ ROLAND .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "ROLAND$", 12 @@ -1934,7 +1934,7 @@ gTrainers:: @ 81F04FC @ CODY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "CODY$", 12 @@ -1946,7 +1946,7 @@ gTrainers:: @ 81F04FC @ STAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "STAN$", 12 @@ -1958,7 +1958,7 @@ gTrainers:: @ 81F04FC @ BARRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "BARRY$", 12 @@ -1970,7 +1970,7 @@ gTrainers:: @ 81F04FC @ DEAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DEAN$", 12 @@ -1982,7 +1982,7 @@ gTrainers:: @ 81F04FC @ RODNEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "RODNEY$", 12 @@ -1994,7 +1994,7 @@ gTrainers:: @ 81F04FC @ RICHARD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "RICHARD$", 12 @@ -2006,7 +2006,7 @@ gTrainers:: @ 81F04FC @ HERMAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "HERMAN$", 12 @@ -2018,7 +2018,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "$", 12 @@ -2030,7 +2030,7 @@ gTrainers:: @ 81F04FC @ GILBERT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "GILBERT$", 12 @@ -2042,7 +2042,7 @@ gTrainers:: @ 81F04FC @ FRANKLIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "FRANKLIN$", 12 @@ -2054,7 +2054,7 @@ gTrainers:: @ 81F04FC @ DANNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DANNY$", 12 @@ -2066,7 +2066,7 @@ gTrainers:: @ 81F04FC @ JACK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "JACK$", 12 @@ -2078,7 +2078,7 @@ gTrainers:: @ 81F04FC @ DUDLEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "DUDLEY$", 12 @@ -2090,7 +2090,7 @@ gTrainers:: @ 81F04FC @ CHAD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "CHAD$", 12 @@ -2102,7 +2102,7 @@ gTrainers:: @ 81F04FC @ TONY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "TONY$", 12 @@ -2114,7 +2114,7 @@ gTrainers:: @ 81F04FC @ TONY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "TONY$", 12 @@ -2126,7 +2126,7 @@ gTrainers:: @ 81F04FC @ TONY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "TONY$", 12 @@ -2138,7 +2138,7 @@ gTrainers:: @ 81F04FC @ TONY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "TONY$", 12 @@ -2150,7 +2150,7 @@ gTrainers:: @ 81F04FC @ HIDEKI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "HIDEKI$", 12 @@ -2162,7 +2162,7 @@ gTrainers:: @ 81F04FC @ HITOSHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "HITOSHI$", 12 @@ -2174,7 +2174,7 @@ gTrainers:: @ 81F04FC @ KIYO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "KIYO$", 12 @@ -2186,7 +2186,7 @@ gTrainers:: @ 81F04FC @ KOICHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "KOICHI$", 12 @@ -2198,7 +2198,7 @@ gTrainers:: @ 81F04FC @ NOB_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "NOB$", 12 @@ -2210,7 +2210,7 @@ gTrainers:: @ 81F04FC @ NOB_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "NOB$", 12 @@ -2222,7 +2222,7 @@ gTrainers:: @ 81F04FC @ NOB_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "NOB$", 12 @@ -2234,7 +2234,7 @@ gTrainers:: @ 81F04FC @ NOB_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "NOB$", 12 @@ -2246,7 +2246,7 @@ gTrainers:: @ 81F04FC @ NOB_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "NOB$", 12 @@ -2258,7 +2258,7 @@ gTrainers:: @ 81F04FC @ YUJI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "YUJI$", 12 @@ -2270,7 +2270,7 @@ gTrainers:: @ 81F04FC @ DAISUKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "DAISUKE$", 12 @@ -2282,7 +2282,7 @@ gTrainers:: @ 81F04FC @ ATSUSHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "ATSUSHI$", 12 @@ -2294,7 +2294,7 @@ gTrainers:: @ 81F04FC @ KIRK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "KIRK$", 12 @@ -2306,7 +2306,7 @@ gTrainers:: @ 81F04FC @ SCOTT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "SCOTT$", 12 @@ -2318,7 +2318,7 @@ gTrainers:: @ 81F04FC @ HARVEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "HARVEY$", 12 @@ -2330,7 +2330,7 @@ gTrainers:: @ 81F04FC @ SHAWN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "SHAWN$", 12 @@ -2342,7 +2342,7 @@ gTrainers:: @ 81F04FC @ RANDY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "RANDY$", 12 @@ -2354,7 +2354,7 @@ gTrainers:: @ 81F04FC @ DALTON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "DALTON$", 12 @@ -2366,7 +2366,7 @@ gTrainers:: @ 81F04FC @ DALTON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "DALTON$", 12 @@ -2378,7 +2378,7 @@ gTrainers:: @ 81F04FC @ DALTON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "DALTON$", 12 @@ -2390,7 +2390,7 @@ gTrainers:: @ 81F04FC @ DALTON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "DALTON$", 12 @@ -2402,7 +2402,7 @@ gTrainers:: @ 81F04FC @ DALTON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GUITARIST + .byte TRAINER_CLASS_GUITARIST .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_GUITARIST .string "DALTON$", 12 @@ -2414,7 +2414,7 @@ gTrainers:: @ 81F04FC @ COLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "COLE$", 12 @@ -2426,7 +2426,7 @@ gTrainers:: @ 81F04FC @ FLINT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "FLINT$", 12 @@ -2438,7 +2438,7 @@ gTrainers:: @ 81F04FC @ AXLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "AXLE$", 12 @@ -2450,7 +2450,7 @@ gTrainers:: @ 81F04FC @ JAKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "JAKE$", 12 @@ -2462,7 +2462,7 @@ gTrainers:: @ 81F04FC @ ANDY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "ANDY$", 12 @@ -2474,7 +2474,7 @@ gTrainers:: @ 81F04FC @ BERNIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "BERNIE$", 12 @@ -2486,7 +2486,7 @@ gTrainers:: @ 81F04FC @ BERNIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "BERNIE$", 12 @@ -2498,7 +2498,7 @@ gTrainers:: @ 81F04FC @ BERNIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "BERNIE$", 12 @@ -2510,7 +2510,7 @@ gTrainers:: @ 81F04FC @ BERNIE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "BERNIE$", 12 @@ -2522,7 +2522,7 @@ gTrainers:: @ 81F04FC @ BERNIE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_KINDLER + .byte TRAINER_CLASS_KINDLER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_KINDLER .string "BERNIE$", 12 @@ -2534,7 +2534,7 @@ gTrainers:: @ 81F04FC @ DREW .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "DREW$", 12 @@ -2546,7 +2546,7 @@ gTrainers:: @ 81F04FC @ CLIFF .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "CLIFF$", 12 @@ -2558,7 +2558,7 @@ gTrainers:: @ 81F04FC @ LARRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "LARRY$", 12 @@ -2570,7 +2570,7 @@ gTrainers:: @ 81F04FC @ SHANE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "SHANE$", 12 @@ -2582,7 +2582,7 @@ gTrainers:: @ 81F04FC @ JUSTIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "JUSTIN$", 12 @@ -2594,7 +2594,7 @@ gTrainers:: @ 81F04FC @ ETHAN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "ETHAN$", 12 @@ -2606,7 +2606,7 @@ gTrainers:: @ 81F04FC @ JEFF .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "JEFF$", 12 @@ -2618,7 +2618,7 @@ gTrainers:: @ 81F04FC @ TRAVIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "TRAVIS$", 12 @@ -2630,7 +2630,7 @@ gTrainers:: @ 81F04FC @ ETHAN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "ETHAN$", 12 @@ -2642,7 +2642,7 @@ gTrainers:: @ 81F04FC @ ETHAN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "ETHAN$", 12 @@ -2654,7 +2654,7 @@ gTrainers:: @ 81F04FC @ ETHAN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "ETHAN$", 12 @@ -2666,7 +2666,7 @@ gTrainers:: @ 81F04FC @ ETHAN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "ETHAN$", 12 @@ -2678,7 +2678,7 @@ gTrainers:: @ 81F04FC @ BRENT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRENT$", 12 @@ -2690,7 +2690,7 @@ gTrainers:: @ 81F04FC @ DONALD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "DONALD$", 12 @@ -2702,7 +2702,7 @@ gTrainers:: @ 81F04FC @ TAYLOR .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "TAYLOR$", 12 @@ -2714,7 +2714,7 @@ gTrainers:: @ 81F04FC @ BRANDON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRANDON$", 12 @@ -2726,7 +2726,7 @@ gTrainers:: @ 81F04FC @ DEREK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "DEREK$", 12 @@ -2738,7 +2738,7 @@ gTrainers:: @ 81F04FC @ BRANDON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRANDON$", 12 @@ -2750,7 +2750,7 @@ gTrainers:: @ 81F04FC @ BRANDON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRANDON$", 12 @@ -2762,7 +2762,7 @@ gTrainers:: @ 81F04FC @ BRANDON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRANDON$", 12 @@ -2774,7 +2774,7 @@ gTrainers:: @ 81F04FC @ BRANDON_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_BUG_MANIAC + .byte TRAINER_CLASS_BUG_MANIAC .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_BUG_MANIAC .string "BRANDON$", 12 @@ -2786,7 +2786,7 @@ gTrainers:: @ 81F04FC @ EDWARD .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "EDWARD$", 12 @@ -2798,7 +2798,7 @@ gTrainers:: @ 81F04FC @ PRESTON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "PRESTON$", 12 @@ -2810,7 +2810,7 @@ gTrainers:: @ 81F04FC @ VIRGIL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "VIRGIL$", 12 @@ -2822,7 +2822,7 @@ gTrainers:: @ 81F04FC @ FRITZ .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "FRITZ$", 12 @@ -2834,7 +2834,7 @@ gTrainers:: @ 81F04FC @ WILLIAM .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "WILLIAM$", 12 @@ -2846,7 +2846,7 @@ gTrainers:: @ 81F04FC @ JOSHUA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "JOSHUA$", 12 @@ -2858,7 +2858,7 @@ gTrainers:: @ 81F04FC @ CAMERON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "CAMERON$", 12 @@ -2870,7 +2870,7 @@ gTrainers:: @ 81F04FC @ CAMERON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "CAMERON$", 12 @@ -2882,7 +2882,7 @@ gTrainers:: @ 81F04FC @ CAMERON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "CAMERON$", 12 @@ -2894,7 +2894,7 @@ gTrainers:: @ 81F04FC @ CAMERON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "CAMERON$", 12 @@ -2906,7 +2906,7 @@ gTrainers:: @ 81F04FC @ CAMERON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_M .string "CAMERON$", 12 @@ -2918,7 +2918,7 @@ gTrainers:: @ 81F04FC @ JACLYN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "JACLYN$", 12 @@ -2930,7 +2930,7 @@ gTrainers:: @ 81F04FC @ HANNAH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "HANNAH$", 12 @@ -2942,7 +2942,7 @@ gTrainers:: @ 81F04FC @ SAMANTHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "SAMANTHA$", 12 @@ -2954,7 +2954,7 @@ gTrainers:: @ 81F04FC @ MAURA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "MAURA$", 12 @@ -2966,7 +2966,7 @@ gTrainers:: @ 81F04FC @ KAYLA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "KAYLA$", 12 @@ -2978,7 +2978,7 @@ gTrainers:: @ 81F04FC @ ALEXIS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "ALEXIS$", 12 @@ -2990,7 +2990,7 @@ gTrainers:: @ 81F04FC @ JACKI_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "JACKI$", 12 @@ -3002,7 +3002,7 @@ gTrainers:: @ 81F04FC @ JACKI_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "JACKI$", 12 @@ -3014,7 +3014,7 @@ gTrainers:: @ 81F04FC @ JACKI_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "JACKI$", 12 @@ -3026,7 +3026,7 @@ gTrainers:: @ 81F04FC @ JACKI_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "JACKI$", 12 @@ -3038,7 +3038,7 @@ gTrainers:: @ 81F04FC @ JACKI_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PSYCHIC + .byte TRAINER_CLASS_PSYCHIC .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_PSYCHIC_F .string "JACKI$", 12 @@ -3050,7 +3050,7 @@ gTrainers:: @ 81F04FC @ WALTER_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "WALTER$", 12 @@ -3062,7 +3062,7 @@ gTrainers:: @ 81F04FC @ TUCKER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "TUCKER$", 12 @@ -3074,7 +3074,7 @@ gTrainers:: @ 81F04FC @ THOMAS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "THOMAS$", 12 @@ -3086,7 +3086,7 @@ gTrainers:: @ 81F04FC @ WALTER_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "WALTER$", 12 @@ -3098,7 +3098,7 @@ gTrainers:: @ 81F04FC @ WALTER_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "WALTER$", 12 @@ -3110,7 +3110,7 @@ gTrainers:: @ 81F04FC @ WALTER_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "WALTER$", 12 @@ -3122,7 +3122,7 @@ gTrainers:: @ 81F04FC @ WALTER_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_GENTLEMAN + .byte TRAINER_CLASS_GENTLEMAN .byte TRAINER_ENCOUNTER_MUSIC_RICH @ gender flag and encounter music .byte TRAINER_PIC_GENTLEMAN .string "WALTER$", 12 @@ -3134,7 +3134,7 @@ gTrainers:: @ 81F04FC @ SIDNEY .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_SIDNEY .string "SIDNEY$", 12 @@ -3146,7 +3146,7 @@ gTrainers:: @ 81F04FC @ PHOEBE .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_PHOEBE .string "PHOEBE$", 12 @@ -3158,7 +3158,7 @@ gTrainers:: @ 81F04FC @ GLACIA .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_GLACIA .string "GLACIA$", 12 @@ -3170,7 +3170,7 @@ gTrainers:: @ 81F04FC @ DRAKE .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_ELITE_FOUR + .byte TRAINER_CLASS_ELITE_FOUR .byte TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR @ gender flag and encounter music .byte TRAINER_PIC_DRAKE .string "DRAKE$", 12 @@ -3182,7 +3182,7 @@ gTrainers:: @ 81F04FC @ ROXANNE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_ROXANNE .string "ROXANNE$", 12 @@ -3194,7 +3194,7 @@ gTrainers:: @ 81F04FC @ BRAWLY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRAWLY .string "BRAWLY$", 12 @@ -3206,7 +3206,7 @@ gTrainers:: @ 81F04FC @ WATTSON .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WATTSON .string "WATTSON$", 12 @@ -3218,7 +3218,7 @@ gTrainers:: @ 81F04FC @ FLANNERY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_FLANNERY .string "FLANNERY$", 12 @@ -3230,7 +3230,7 @@ gTrainers:: @ 81F04FC @ NORMAN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_NORMAN .string "NORMAN$", 12 @@ -3242,7 +3242,7 @@ gTrainers:: @ 81F04FC @ WINONA .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_WINONA .string "WINONA$", 12 @@ -3254,7 +3254,7 @@ gTrainers:: @ 81F04FC @ TATE_AND_LIZA .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_TATE_AND_LIZA .string "TATE&LIZA$", 12 @@ -3266,7 +3266,7 @@ gTrainers:: @ 81F04FC @ WALLACE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_LEADER + .byte TRAINER_CLASS_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLACE .string "WALLACE$", 12 @@ -3278,7 +3278,7 @@ gTrainers:: @ 81F04FC @ JERRY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "JERRY$", 12 @@ -3290,7 +3290,7 @@ gTrainers:: @ 81F04FC @ TED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "TED$", 12 @@ -3302,7 +3302,7 @@ gTrainers:: @ 81F04FC @ PAUL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "PAUL$", 12 @@ -3314,7 +3314,7 @@ gTrainers:: @ 81F04FC @ JERRY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "JERRY$", 12 @@ -3326,7 +3326,7 @@ gTrainers:: @ 81F04FC @ JERRY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "JERRY$", 12 @@ -3338,7 +3338,7 @@ gTrainers:: @ 81F04FC @ JERRY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "JERRY$", 12 @@ -3350,7 +3350,7 @@ gTrainers:: @ 81F04FC @ JERRY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_M .string "JERRY$", 12 @@ -3362,7 +3362,7 @@ gTrainers:: @ 81F04FC @ KAREN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KAREN$", 12 @@ -3374,7 +3374,7 @@ gTrainers:: @ 81F04FC @ GEORGIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "GEORGIA$", 12 @@ -3386,7 +3386,7 @@ gTrainers:: @ 81F04FC @ KAREN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KAREN$", 12 @@ -3398,7 +3398,7 @@ gTrainers:: @ 81F04FC @ KAREN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KAREN$", 12 @@ -3410,7 +3410,7 @@ gTrainers:: @ 81F04FC @ KAREN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KAREN$", 12 @@ -3422,7 +3422,7 @@ gTrainers:: @ 81F04FC @ KAREN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SCHOOL_KID + .byte TRAINER_CLASS_SCHOOL_KID .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_SCHOOL_KID_F .string "KAREN$", 12 @@ -3434,7 +3434,7 @@ gTrainers:: @ 81F04FC @ KATE_AND_JOY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "KATE & JOY$", 12 @@ -3446,7 +3446,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "ANNA & MEG$", 12 @@ -3458,7 +3458,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "ANNA & MEG$", 12 @@ -3470,7 +3470,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "ANNA & MEG$", 12 @@ -3482,7 +3482,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "ANNA & MEG$", 12 @@ -3494,7 +3494,7 @@ gTrainers:: @ 81F04FC @ ANNA_AND_MEG_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "ANNA & MEG$", 12 @@ -3506,7 +3506,7 @@ gTrainers:: @ 81F04FC @ VICTOR .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "VICTOR$", 12 @@ -3518,7 +3518,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3530,7 +3530,7 @@ gTrainers:: @ 81F04FC @ COLTON .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "COLTON$", 12 @@ -3542,7 +3542,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3554,7 +3554,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3566,7 +3566,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3578,7 +3578,7 @@ gTrainers:: @ 81F04FC @ MIGUEL_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_M .string "MIGUEL$", 12 @@ -3590,7 +3590,7 @@ gTrainers:: @ 81F04FC @ VICTORIA .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "VICTORIA$", 12 @@ -3602,7 +3602,7 @@ gTrainers:: @ 81F04FC @ VANESSA .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "VANESSA$", 12 @@ -3614,7 +3614,7 @@ gTrainers:: @ 81F04FC @ MARISSA .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "MARISSA$", 12 @@ -3626,7 +3626,7 @@ gTrainers:: @ 81F04FC @ ISABEL_1 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3638,7 +3638,7 @@ gTrainers:: @ 81F04FC @ ISABEL_2 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3650,7 +3650,7 @@ gTrainers:: @ 81F04FC @ ISABEL_3 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3662,7 +3662,7 @@ gTrainers:: @ 81F04FC @ ISABEL_4 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3674,7 +3674,7 @@ gTrainers:: @ 81F04FC @ ISABEL_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_POKEFAN + .byte TRAINER_CLASS_POKEFAN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_POKEFAN_F .string "ISABEL$", 12 @@ -3686,7 +3686,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "TIMOTHY$", 12 @@ -3698,7 +3698,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "TIMOTHY$", 12 @@ -3710,7 +3710,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "TIMOTHY$", 12 @@ -3722,7 +3722,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "TIMOTHY$", 12 @@ -3734,7 +3734,7 @@ gTrainers:: @ 81F04FC @ TIMOTHY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_M .string "TIMOTHY$", 12 @@ -3746,7 +3746,7 @@ gTrainers:: @ 81F04FC @ VICKY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "VICKY$", 12 @@ -3758,7 +3758,7 @@ gTrainers:: @ 81F04FC @ SHELBY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "SHELBY$", 12 @@ -3770,7 +3770,7 @@ gTrainers:: @ 81F04FC @ SHELBY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "SHELBY$", 12 @@ -3782,7 +3782,7 @@ gTrainers:: @ 81F04FC @ SHELBY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "SHELBY$", 12 @@ -3794,7 +3794,7 @@ gTrainers:: @ 81F04FC @ SHELBY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "SHELBY$", 12 @@ -3806,7 +3806,7 @@ gTrainers:: @ 81F04FC @ SHELBY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_EXPERT + .byte TRAINER_CLASS_EXPERT .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_EXPERT_F .string "SHELBY$", 12 @@ -3818,7 +3818,7 @@ gTrainers:: @ 81F04FC @ CALVIN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "CALVIN$", 12 @@ -3830,7 +3830,7 @@ gTrainers:: @ 81F04FC @ BILLY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "BILLY$", 12 @@ -3842,7 +3842,7 @@ gTrainers:: @ 81F04FC @ JOSH .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "JOSH$", 12 @@ -3854,7 +3854,7 @@ gTrainers:: @ 81F04FC @ TOMMY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "TOMMY$", 12 @@ -3866,7 +3866,7 @@ gTrainers:: @ 81F04FC @ JOEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "JOEY$", 12 @@ -3878,7 +3878,7 @@ gTrainers:: @ 81F04FC @ BEN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "BEN$", 12 @@ -3890,7 +3890,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -3902,7 +3902,7 @@ gTrainers:: @ 81F04FC @ KEVIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "KEVIN$", 12 @@ -3914,7 +3914,7 @@ gTrainers:: @ 81F04FC @ NEAL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "NEAL$", 12 @@ -3926,7 +3926,7 @@ gTrainers:: @ 81F04FC @ DILLON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "DILLON$", 12 @@ -3938,7 +3938,7 @@ gTrainers:: @ 81F04FC @ CALVIN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "CALVIN$", 12 @@ -3950,7 +3950,7 @@ gTrainers:: @ 81F04FC @ CALVIN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "CALVIN$", 12 @@ -3962,7 +3962,7 @@ gTrainers:: @ 81F04FC @ CALVIN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "CALVIN$", 12 @@ -3974,7 +3974,7 @@ gTrainers:: @ 81F04FC @ CALVIN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "CALVIN$", 12 @@ -3986,7 +3986,7 @@ gTrainers:: @ 81F04FC @ EDDIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "EDDIE$", 12 @@ -3998,7 +3998,7 @@ gTrainers:: @ 81F04FC @ ALLEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "ALLEN$", 12 @@ -4010,7 +4010,7 @@ gTrainers:: @ 81F04FC @ TIMMY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNGSTER + .byte TRAINER_CLASS_YOUNGSTER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "TIMMY$", 12 @@ -4022,7 +4022,7 @@ gTrainers:: @ 81F04FC @ STEVEN .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_CHAMPION + .byte TRAINER_CLASS_CHAMPION .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_STEVEN .string "STEVEN$", 12 @@ -4034,7 +4034,7 @@ gTrainers:: @ 81F04FC @ ANDREW .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ANDREW$", 12 @@ -4046,7 +4046,7 @@ gTrainers:: @ 81F04FC @ IVAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "IVAN$", 12 @@ -4058,7 +4058,7 @@ gTrainers:: @ 81F04FC @ CLAUDE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "CLAUDE$", 12 @@ -4070,7 +4070,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ELLIOT$", 12 @@ -4082,7 +4082,7 @@ gTrainers:: @ 81F04FC @ NED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "NED$", 12 @@ -4094,7 +4094,7 @@ gTrainers:: @ 81F04FC @ DALE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "DALE$", 12 @@ -4106,7 +4106,7 @@ gTrainers:: @ 81F04FC @ NOLAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "NOLAN$", 12 @@ -4118,7 +4118,7 @@ gTrainers:: @ 81F04FC @ BARNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "BARNY$", 12 @@ -4130,7 +4130,7 @@ gTrainers:: @ 81F04FC @ WADE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "WADE$", 12 @@ -4142,7 +4142,7 @@ gTrainers:: @ 81F04FC @ CARTER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "CARTER$", 12 @@ -4154,7 +4154,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ELLIOT$", 12 @@ -4166,7 +4166,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ELLIOT$", 12 @@ -4178,7 +4178,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ELLIOT$", 12 @@ -4190,7 +4190,7 @@ gTrainers:: @ 81F04FC @ ELLIOT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ELLIOT$", 12 @@ -4202,7 +4202,7 @@ gTrainers:: @ 81F04FC @ RONALD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "RONALD$", 12 @@ -4214,7 +4214,7 @@ gTrainers:: @ 81F04FC @ JACOB .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "JACOB$", 12 @@ -4226,7 +4226,7 @@ gTrainers:: @ 81F04FC @ ANTHONY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "ANTHONY$", 12 @@ -4238,7 +4238,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "BENJAMIN$", 12 @@ -4250,7 +4250,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "BENJAMIN$", 12 @@ -4262,7 +4262,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "BENJAMIN$", 12 @@ -4274,7 +4274,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "BENJAMIN$", 12 @@ -4286,7 +4286,7 @@ gTrainers:: @ 81F04FC @ BENJAMIN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_M .string "BENJAMIN$", 12 @@ -4298,7 +4298,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "ABIGAIL$", 12 @@ -4310,7 +4310,7 @@ gTrainers:: @ 81F04FC @ JASMINE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "JASMINE$", 12 @@ -4322,7 +4322,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "ABIGAIL$", 12 @@ -4334,7 +4334,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "ABIGAIL$", 12 @@ -4346,7 +4346,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "ABIGAIL$", 12 @@ -4358,7 +4358,7 @@ gTrainers:: @ 81F04FC @ ABIGAIL_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_CYCLING_TRIATHLETE_F .string "ABIGAIL$", 12 @@ -4370,7 +4370,7 @@ gTrainers:: @ 81F04FC @ DYLAN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "DYLAN$", 12 @@ -4382,7 +4382,7 @@ gTrainers:: @ 81F04FC @ DYLAN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "DYLAN$", 12 @@ -4394,7 +4394,7 @@ gTrainers:: @ 81F04FC @ DYLAN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "DYLAN$", 12 @@ -4406,7 +4406,7 @@ gTrainers:: @ 81F04FC @ DYLAN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "DYLAN$", 12 @@ -4418,7 +4418,7 @@ gTrainers:: @ 81F04FC @ DYLAN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_M .string "DYLAN$", 12 @@ -4430,7 +4430,7 @@ gTrainers:: @ 81F04FC @ MARIA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "MARIA$", 12 @@ -4442,7 +4442,7 @@ gTrainers:: @ 81F04FC @ MARIA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "MARIA$", 12 @@ -4454,7 +4454,7 @@ gTrainers:: @ 81F04FC @ MARIA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "MARIA$", 12 @@ -4466,7 +4466,7 @@ gTrainers:: @ 81F04FC @ MARIA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "MARIA$", 12 @@ -4478,7 +4478,7 @@ gTrainers:: @ 81F04FC @ MARIA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_RUNNING_TRIATHLETE_F .string "MARIA$", 12 @@ -4490,7 +4490,7 @@ gTrainers:: @ 81F04FC @ CALEB .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "CALEB$", 12 @@ -4502,7 +4502,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "$", 12 @@ -4514,7 +4514,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "ISAIAH$", 12 @@ -4526,7 +4526,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "$", 12 @@ -4538,7 +4538,7 @@ gTrainers:: @ 81F04FC @ CHASE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "CHASE$", 12 @@ -4550,7 +4550,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "ISAIAH$", 12 @@ -4562,7 +4562,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "ISAIAH$", 12 @@ -4574,7 +4574,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "ISAIAH$", 12 @@ -4586,7 +4586,7 @@ gTrainers:: @ 81F04FC @ ISAIAH_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_M .string "ISAIAH$", 12 @@ -4598,7 +4598,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "$", 12 @@ -4610,7 +4610,7 @@ gTrainers:: @ 81F04FC @ CONNOR .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "CONNOR$", 12 @@ -4622,7 +4622,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "$", 12 @@ -4634,7 +4634,7 @@ gTrainers:: @ 81F04FC @ KATELYN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "KATELYN$", 12 @@ -4646,7 +4646,7 @@ gTrainers:: @ 81F04FC @ ALLISON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "ALLISON$", 12 @@ -4658,7 +4658,7 @@ gTrainers:: @ 81F04FC @ KATELYN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "KATELYN$", 12 @@ -4670,7 +4670,7 @@ gTrainers:: @ 81F04FC @ KATELYN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "KATELYN$", 12 @@ -4682,7 +4682,7 @@ gTrainers:: @ 81F04FC @ KATELYN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "KATELYN$", 12 @@ -4694,7 +4694,7 @@ gTrainers:: @ 81F04FC @ KATELYN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TRIATHLETE + .byte TRAINER_CLASS_TRIATHLETE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMING_TRIATHLETE_F .string "KATELYN$", 12 @@ -4706,7 +4706,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "NICOLAS$", 12 @@ -4718,7 +4718,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "NICOLAS$", 12 @@ -4730,7 +4730,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "NICOLAS$", 12 @@ -4742,7 +4742,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "NICOLAS$", 12 @@ -4754,7 +4754,7 @@ gTrainers:: @ 81F04FC @ NICOLAS_5 .byte F_TRAINER_PARTY_HELD_ITEM @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "NICOLAS$", 12 @@ -4766,7 +4766,7 @@ gTrainers:: @ 81F04FC @ AARON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_DRAGON_TAMER + .byte TRAINER_CLASS_DRAGON_TAMER .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_DRAGON_TAMER .string "AARON$", 12 @@ -4778,7 +4778,7 @@ gTrainers:: @ 81F04FC @ PERRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "PERRY$", 12 @@ -4790,7 +4790,7 @@ gTrainers:: @ 81F04FC @ HUGH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "HUGH$", 12 @@ -4802,7 +4802,7 @@ gTrainers:: @ 81F04FC @ PHIL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "PHIL$", 12 @@ -4814,7 +4814,7 @@ gTrainers:: @ 81F04FC @ JARED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "JARED$", 12 @@ -4826,7 +4826,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "$", 12 @@ -4838,7 +4838,7 @@ gTrainers:: @ 81F04FC @ TANNER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "TANNER$", 12 @@ -4850,7 +4850,7 @@ gTrainers:: @ 81F04FC @ WILL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "WILL$", 12 @@ -4862,7 +4862,7 @@ gTrainers:: @ 81F04FC @ COLIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "COLIN$", 12 @@ -4874,7 +4874,7 @@ gTrainers:: @ 81F04FC @ ROBERT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ROBERT$", 12 @@ -4886,7 +4886,7 @@ gTrainers:: @ 81F04FC @ BENNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "BENNY$", 12 @@ -4898,7 +4898,7 @@ gTrainers:: @ 81F04FC @ CHESTER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "CHESTER$", 12 @@ -4910,7 +4910,7 @@ gTrainers:: @ 81F04FC @ ROBERT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ROBERT$", 12 @@ -4922,7 +4922,7 @@ gTrainers:: @ 81F04FC @ ROBERT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ROBERT$", 12 @@ -4934,7 +4934,7 @@ gTrainers:: @ 81F04FC @ ROBERT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ROBERT$", 12 @@ -4946,7 +4946,7 @@ gTrainers:: @ 81F04FC @ ROBERT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ROBERT$", 12 @@ -4958,7 +4958,7 @@ gTrainers:: @ 81F04FC @ ALEX .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "ALEX$", 12 @@ -4970,7 +4970,7 @@ gTrainers:: @ 81F04FC @ BECK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "BECK$", 12 @@ -4982,7 +4982,7 @@ gTrainers:: @ 81F04FC @ YASU .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "YASU$", 12 @@ -4994,7 +4994,7 @@ gTrainers:: @ 81F04FC @ TAKASHI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "TAKASHI$", 12 @@ -5006,7 +5006,7 @@ gTrainers:: @ 81F04FC @ MAKOTO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "MAKOTO$", 12 @@ -5018,7 +5018,7 @@ gTrainers:: @ 81F04FC @ HIDEO_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "HIDEO$", 12 @@ -5030,7 +5030,7 @@ gTrainers:: @ 81F04FC @ LAO_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "LAO$", 12 @@ -5042,7 +5042,7 @@ gTrainers:: @ 81F04FC @ LUNG .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "LUNG$", 12 @@ -5054,7 +5054,7 @@ gTrainers:: @ 81F04FC @ LAO_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "LAO$", 12 @@ -5066,7 +5066,7 @@ gTrainers:: @ 81F04FC @ LAO_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "LAO$", 12 @@ -5078,7 +5078,7 @@ gTrainers:: @ 81F04FC @ LAO_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "LAO$", 12 @@ -5090,7 +5090,7 @@ gTrainers:: @ 81F04FC @ LAO_5 .byte F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "LAO$", 12 @@ -5102,7 +5102,7 @@ gTrainers:: @ 81F04FC @ TESSA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "TESSA$", 12 @@ -5114,7 +5114,7 @@ gTrainers:: @ 81F04FC @ LAURA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "LAURA$", 12 @@ -5126,7 +5126,7 @@ gTrainers:: @ 81F04FC @ CYNDY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CYNDY$", 12 @@ -5138,7 +5138,7 @@ gTrainers:: @ 81F04FC @ CORA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CORA$", 12 @@ -5150,7 +5150,7 @@ gTrainers:: @ 81F04FC @ JILL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "JILL$", 12 @@ -5162,7 +5162,7 @@ gTrainers:: @ 81F04FC @ CYNDY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CYNDY$", 12 @@ -5174,7 +5174,7 @@ gTrainers:: @ 81F04FC @ CYNDY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CYNDY$", 12 @@ -5186,7 +5186,7 @@ gTrainers:: @ 81F04FC @ CYNDY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CYNDY$", 12 @@ -5198,7 +5198,7 @@ gTrainers:: @ 81F04FC @ CYNDY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "CYNDY$", 12 @@ -5210,7 +5210,7 @@ gTrainers:: @ 81F04FC @ MADELINE_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "MADELINE$", 12 @@ -5222,7 +5222,7 @@ gTrainers:: @ 81F04FC @ CLARISSA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "CLARISSA$", 12 @@ -5234,7 +5234,7 @@ gTrainers:: @ 81F04FC @ ANGELICA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "ANGELICA$", 12 @@ -5246,7 +5246,7 @@ gTrainers:: @ 81F04FC @ MADELINE_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "MADELINE$", 12 @@ -5258,7 +5258,7 @@ gTrainers:: @ 81F04FC @ MADELINE_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "MADELINE$", 12 @@ -5270,7 +5270,7 @@ gTrainers:: @ 81F04FC @ MADELINE_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "MADELINE$", 12 @@ -5282,7 +5282,7 @@ gTrainers:: @ 81F04FC @ MADELINE_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PARASOL_LADY + .byte TRAINER_CLASS_PARASOL_LADY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_PARASOL_LADY .string "MADELINE$", 12 @@ -5294,7 +5294,7 @@ gTrainers:: @ 81F04FC @ BEVERLY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "BEVERLY$", 12 @@ -5306,7 +5306,7 @@ gTrainers:: @ 81F04FC @ DAWN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DAWN$", 12 @@ -5318,7 +5318,7 @@ gTrainers:: @ 81F04FC @ NICOLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "NICOLE$", 12 @@ -5330,7 +5330,7 @@ gTrainers:: @ 81F04FC @ DENISE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DENISE$", 12 @@ -5342,7 +5342,7 @@ gTrainers:: @ 81F04FC @ BETH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "BETH$", 12 @@ -5354,7 +5354,7 @@ gTrainers:: @ 81F04FC @ TARA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "TARA$", 12 @@ -5366,7 +5366,7 @@ gTrainers:: @ 81F04FC @ MISSY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "MISSY$", 12 @@ -5378,7 +5378,7 @@ gTrainers:: @ 81F04FC @ ALICE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ALICE$", 12 @@ -5390,7 +5390,7 @@ gTrainers:: @ 81F04FC @ JENNY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "JENNY$", 12 @@ -5402,7 +5402,7 @@ gTrainers:: @ 81F04FC @ GRACE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "GRACE$", 12 @@ -5414,7 +5414,7 @@ gTrainers:: @ 81F04FC @ TANYA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "TANYA$", 12 @@ -5426,7 +5426,7 @@ gTrainers:: @ 81F04FC @ SHARON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "SHARON$", 12 @@ -5438,7 +5438,7 @@ gTrainers:: @ 81F04FC @ NIKKI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "NIKKI$", 12 @@ -5450,7 +5450,7 @@ gTrainers:: @ 81F04FC @ BRENDA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "BRENDA$", 12 @@ -5462,7 +5462,7 @@ gTrainers:: @ 81F04FC @ KATIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "KATIE$", 12 @@ -5474,7 +5474,7 @@ gTrainers:: @ 81F04FC @ SUSIE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "SUSIE$", 12 @@ -5486,7 +5486,7 @@ gTrainers:: @ 81F04FC @ KARA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "KARA$", 12 @@ -5498,7 +5498,7 @@ gTrainers:: @ 81F04FC @ DANA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DANA$", 12 @@ -5510,7 +5510,7 @@ gTrainers:: @ 81F04FC @ ERIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "ERIN$", 12 @@ -5522,7 +5522,7 @@ gTrainers:: @ 81F04FC @ DEBRA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DEBRA$", 12 @@ -5534,7 +5534,7 @@ gTrainers:: @ 81F04FC @ LINDA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "LINDA$", 12 @@ -5546,7 +5546,7 @@ gTrainers:: @ 81F04FC @ KAYLEE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "KAYLEE$", 12 @@ -5558,7 +5558,7 @@ gTrainers:: @ 81F04FC @ LAUREL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "LAUREL$", 12 @@ -5570,7 +5570,7 @@ gTrainers:: @ 81F04FC @ DARCY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "DARCY$", 12 @@ -5582,7 +5582,7 @@ gTrainers:: @ 81F04FC @ JENNY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "JENNY$", 12 @@ -5594,7 +5594,7 @@ gTrainers:: @ 81F04FC @ JENNY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "JENNY$", 12 @@ -5606,7 +5606,7 @@ gTrainers:: @ 81F04FC @ JENNY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "JENNY$", 12 @@ -5618,7 +5618,7 @@ gTrainers:: @ 81F04FC @ JENNY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "JENNY$", 12 @@ -5630,7 +5630,7 @@ gTrainers:: @ 81F04FC @ HEIDI .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "HEIDI$", 12 @@ -5642,7 +5642,7 @@ gTrainers:: @ 81F04FC @ BECKY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "BECKY$", 12 @@ -5654,7 +5654,7 @@ gTrainers:: @ 81F04FC @ CAROL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "CAROL$", 12 @@ -5666,7 +5666,7 @@ gTrainers:: @ 81F04FC @ NANCY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "NANCY$", 12 @@ -5678,7 +5678,7 @@ gTrainers:: @ 81F04FC @ MARTHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "MARTHA$", 12 @@ -5690,7 +5690,7 @@ gTrainers:: @ 81F04FC @ DIANA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "DIANA$", 12 @@ -5702,7 +5702,7 @@ gTrainers:: @ 81F04FC @ NINA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "NINA$", 12 @@ -5714,7 +5714,7 @@ gTrainers:: @ 81F04FC @ IRENE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "IRENE$", 12 @@ -5726,7 +5726,7 @@ gTrainers:: @ 81F04FC @ DIANA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "DIANA$", 12 @@ -5738,7 +5738,7 @@ gTrainers:: @ 81F04FC @ DIANA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "DIANA$", 12 @@ -5750,7 +5750,7 @@ gTrainers:: @ 81F04FC @ DIANA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "DIANA$", 12 @@ -5762,7 +5762,7 @@ gTrainers:: @ 81F04FC @ DIANA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "DIANA$", 12 @@ -5774,7 +5774,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "AMY & LIV$", 12 @@ -5786,7 +5786,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "AMY & LIV$", 12 @@ -5798,7 +5798,7 @@ gTrainers:: @ 81F04FC @ GINA_AND_MIA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "GINA & MIA$", 12 @@ -5810,7 +5810,7 @@ gTrainers:: @ 81F04FC @ MIU_AND_YUKI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "MIU & YUKI$", 12 @@ -5822,7 +5822,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "AMY & LIV$", 12 @@ -5834,7 +5834,7 @@ gTrainers:: @ 81F04FC @ GINA_AND_MIA_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "GINA & MIA$", 12 @@ -5846,7 +5846,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "AMY & LIV$", 12 @@ -5858,7 +5858,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "AMY & LIV$", 12 @@ -5870,7 +5870,7 @@ gTrainers:: @ 81F04FC @ AMY_AND_LIV_6 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "AMY & LIV$", 12 @@ -5882,7 +5882,7 @@ gTrainers:: @ 81F04FC @ HUEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "HUEY$", 12 @@ -5894,7 +5894,7 @@ gTrainers:: @ 81F04FC @ EDMOND .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "EDMOND$", 12 @@ -5906,7 +5906,7 @@ gTrainers:: @ 81F04FC @ ERNEST_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ERNEST$", 12 @@ -5918,7 +5918,7 @@ gTrainers:: @ 81F04FC @ DWAYNE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "DWAYNE$", 12 @@ -5930,7 +5930,7 @@ gTrainers:: @ 81F04FC @ PHILLIP .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "PHILLIP$", 12 @@ -5942,7 +5942,7 @@ gTrainers:: @ 81F04FC @ LEONARD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "LEONARD$", 12 @@ -5954,7 +5954,7 @@ gTrainers:: @ 81F04FC @ DUNCAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "DUNCAN$", 12 @@ -5966,7 +5966,7 @@ gTrainers:: @ 81F04FC @ ERNEST_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ERNEST$", 12 @@ -5978,7 +5978,7 @@ gTrainers:: @ 81F04FC @ ERNEST_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ERNEST$", 12 @@ -5990,7 +5990,7 @@ gTrainers:: @ 81F04FC @ ERNEST_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ERNEST$", 12 @@ -6002,7 +6002,7 @@ gTrainers:: @ 81F04FC @ ERNEST_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SAILOR + .byte TRAINER_CLASS_SAILOR .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_SAILOR .string "ERNEST$", 12 @@ -6014,7 +6014,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -6026,7 +6026,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -6038,7 +6038,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_13 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "$", 12 @@ -6050,7 +6050,7 @@ gTrainers:: @ 81F04FC @ SONNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "SONNY$", 12 @@ -6062,7 +6062,7 @@ gTrainers:: @ 81F04FC @ DONOVAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "DONOVAN$", 12 @@ -6074,7 +6074,7 @@ gTrainers:: @ 81F04FC @ GERALD .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "GERALD$", 12 @@ -6086,7 +6086,7 @@ gTrainers:: @ 81F04FC @ KELVIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "KELVIN$", 12 @@ -6098,7 +6098,7 @@ gTrainers:: @ 81F04FC @ KODY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "KODY$", 12 @@ -6110,7 +6110,7 @@ gTrainers:: @ 81F04FC @ TEVIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "TEVIN$", 12 @@ -6122,7 +6122,7 @@ gTrainers:: @ 81F04FC @ DAMON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "DAMON$", 12 @@ -6134,7 +6134,7 @@ gTrainers:: @ 81F04FC @ PABLO .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BOARDER + .byte TRAINER_CLASS_BOARDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_YOUNGSTER .string "PABLO$", 12 @@ -6146,7 +6146,7 @@ gTrainers:: @ 81F04FC @ EDWIN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6158,7 +6158,7 @@ gTrainers:: @ 81F04FC @ HECTOR_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "HECTOR$", 12 @@ -6170,7 +6170,7 @@ gTrainers:: @ 81F04FC @ HECTOR_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "HECTOR$", 12 @@ -6182,7 +6182,7 @@ gTrainers:: @ 81F04FC @ EDWIN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6194,7 +6194,7 @@ gTrainers:: @ 81F04FC @ EDWIN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6206,7 +6206,7 @@ gTrainers:: @ 81F04FC @ EDWIN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6218,7 +6218,7 @@ gTrainers:: @ 81F04FC @ EDWIN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COLLECTOR + .byte TRAINER_CLASS_COLLECTOR .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_COLLECTOR .string "EDWIN$", 12 @@ -6230,7 +6230,7 @@ gTrainers:: @ 81F04FC @ WALLY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "WALLY$", 12 @@ -6242,7 +6242,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6254,7 +6254,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6266,7 +6266,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6278,7 +6278,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6290,7 +6290,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6302,7 +6302,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6314,7 +6314,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6326,7 +6326,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6338,7 +6338,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -6350,7 +6350,7 @@ gTrainers:: @ 81F04FC @ MAY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6362,7 +6362,7 @@ gTrainers:: @ 81F04FC @ MAY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6374,7 +6374,7 @@ gTrainers:: @ 81F04FC @ MAY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6386,7 +6386,7 @@ gTrainers:: @ 81F04FC @ MAY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6398,7 +6398,7 @@ gTrainers:: @ 81F04FC @ MAY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6410,7 +6410,7 @@ gTrainers:: @ 81F04FC @ MAY_6 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6422,7 +6422,7 @@ gTrainers:: @ 81F04FC @ MAY_7 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6434,7 +6434,7 @@ gTrainers:: @ 81F04FC @ MAY_8 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6446,7 +6446,7 @@ gTrainers:: @ 81F04FC @ MAY_9 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -6458,7 +6458,7 @@ gTrainers:: @ 81F04FC @ ISAAC_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "ISAAC$", 12 @@ -6470,7 +6470,7 @@ gTrainers:: @ 81F04FC @ RILEY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "RILEY$", 12 @@ -6482,7 +6482,7 @@ gTrainers:: @ 81F04FC @ AIDAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "AIDAN$", 12 @@ -6494,7 +6494,7 @@ gTrainers:: @ 81F04FC @ ISAAC_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "ISAAC$", 12 @@ -6506,7 +6506,7 @@ gTrainers:: @ 81F04FC @ ISAAC_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "ISAAC$", 12 @@ -6518,7 +6518,7 @@ gTrainers:: @ 81F04FC @ ISAAC_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "ISAAC$", 12 @@ -6530,7 +6530,7 @@ gTrainers:: @ 81F04FC @ ISAAC_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_M .string "ISAAC$", 12 @@ -6542,7 +6542,7 @@ gTrainers:: @ 81F04FC @ LYDIA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6554,7 +6554,7 @@ gTrainers:: @ 81F04FC @ ALEXIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "ALEXIA$", 12 @@ -6566,7 +6566,7 @@ gTrainers:: @ 81F04FC @ DANIELLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "DANIELLE$", 12 @@ -6578,7 +6578,7 @@ gTrainers:: @ 81F04FC @ LYDIA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6590,7 +6590,7 @@ gTrainers:: @ 81F04FC @ LYDIA_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6602,7 +6602,7 @@ gTrainers:: @ 81F04FC @ LYDIA_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6614,7 +6614,7 @@ gTrainers:: @ 81F04FC @ LYDIA_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_BREEDER + .byte TRAINER_CLASS_POKEMON_BREEDER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_BREEDER_F .string "LYDIA$", 12 @@ -6626,7 +6626,7 @@ gTrainers:: @ 81F04FC @ JACKSON_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "JACKSON$", 12 @@ -6638,7 +6638,7 @@ gTrainers:: @ 81F04FC @ CARLOS .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "CARLOS$", 12 @@ -6650,7 +6650,7 @@ gTrainers:: @ 81F04FC @ SEBASTIAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "SEBASTIAN$", 12 @@ -6662,7 +6662,7 @@ gTrainers:: @ 81F04FC @ JACKSON_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "JACKSON$", 12 @@ -6674,7 +6674,7 @@ gTrainers:: @ 81F04FC @ JACKSON_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "JACKSON$", 12 @@ -6686,7 +6686,7 @@ gTrainers:: @ 81F04FC @ JACKSON_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "JACKSON$", 12 @@ -6698,7 +6698,7 @@ gTrainers:: @ 81F04FC @ JACKSON_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_M .string "JACKSON$", 12 @@ -6710,7 +6710,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "CATHERINE$", 12 @@ -6722,7 +6722,7 @@ gTrainers:: @ 81F04FC @ JENNA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "JENNA$", 12 @@ -6734,7 +6734,7 @@ gTrainers:: @ 81F04FC @ SOPHIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "SOPHIA$", 12 @@ -6746,7 +6746,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "CATHERINE$", 12 @@ -6758,7 +6758,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "CATHERINE$", 12 @@ -6770,7 +6770,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "CATHERINE$", 12 @@ -6782,7 +6782,7 @@ gTrainers:: @ 81F04FC @ CATHERINE_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_RANGER + .byte TRAINER_CLASS_POKEMON_RANGER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_POKEMON_RANGER_F .string "CATHERINE$", 12 @@ -6794,7 +6794,7 @@ gTrainers:: @ 81F04FC @ MAXIE_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_LEADER + .byte TRAINER_CLASS_MAGMA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAXIE .string "MAXIE$", 12 @@ -6806,7 +6806,7 @@ gTrainers:: @ 81F04FC @ GRUNT_28 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6818,7 +6818,7 @@ gTrainers:: @ 81F04FC @ GRUNT_29 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6830,7 +6830,7 @@ gTrainers:: @ 81F04FC @ GRUNT_30 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6842,7 +6842,7 @@ gTrainers:: @ 81F04FC @ GRUNT_31 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6854,7 +6854,7 @@ gTrainers:: @ 81F04FC @ GRUNT_32 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6866,7 +6866,7 @@ gTrainers:: @ 81F04FC @ GRUNT_33 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6878,7 +6878,7 @@ gTrainers:: @ 81F04FC @ GRUNT_34 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6890,7 +6890,7 @@ gTrainers:: @ 81F04FC @ GRUNT_35 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6902,7 +6902,7 @@ gTrainers:: @ 81F04FC @ GRUNT_36 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6914,7 +6914,7 @@ gTrainers:: @ 81F04FC @ GRUNT_37 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6926,7 +6926,7 @@ gTrainers:: @ 81F04FC @ GRUNT_38 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6938,7 +6938,7 @@ gTrainers:: @ 81F04FC @ GRUNT_39 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6950,7 +6950,7 @@ gTrainers:: @ 81F04FC @ GRUNT_40 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6962,7 +6962,7 @@ gTrainers:: @ 81F04FC @ GRUNT_41 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6974,7 +6974,7 @@ gTrainers:: @ 81F04FC @ GRUNT_42 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6986,7 +6986,7 @@ gTrainers:: @ 81F04FC @ GRUNT_43 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -6998,7 +6998,7 @@ gTrainers:: @ 81F04FC @ GRUNT_44 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7010,7 +7010,7 @@ gTrainers:: @ 81F04FC @ GRUNT_45 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7022,7 +7022,7 @@ gTrainers:: @ 81F04FC @ GRUNT_46 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7034,7 +7034,7 @@ gTrainers:: @ 81F04FC @ GRUNT_47 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7046,7 +7046,7 @@ gTrainers:: @ 81F04FC @ GRUNT_48 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7058,7 +7058,7 @@ gTrainers:: @ 81F04FC @ GRUNT_49 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7070,7 +7070,7 @@ gTrainers:: @ 81F04FC @ GRUNT_50 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7082,7 +7082,7 @@ gTrainers:: @ 81F04FC @ GRUNT_51 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_M .string "GRUNT$", 12 @@ -7094,7 +7094,7 @@ gTrainers:: @ 81F04FC @ GRUNT_52 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_F .string "GRUNT$", 12 @@ -7106,7 +7106,7 @@ gTrainers:: @ 81F04FC @ GRUNT_53 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_F .string "GRUNT$", 12 @@ -7118,7 +7118,7 @@ gTrainers:: @ 81F04FC @ GRUNT_54 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TEAM_MAGMA + .byte TRAINER_CLASS_TEAM_MAGMA .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_GRUNT_F .string "GRUNT$", 12 @@ -7130,7 +7130,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_14 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "$", 12 @@ -7142,7 +7142,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_15 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "$", 12 @@ -7154,7 +7154,7 @@ gTrainers:: @ 81F04FC @ TABITHA_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "TABITHA$", 12 @@ -7166,7 +7166,7 @@ gTrainers:: @ 81F04FC @ TABITHA_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "TABITHA$", 12 @@ -7178,7 +7178,7 @@ gTrainers:: @ 81F04FC @ ANONYMOUS_16 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_M .string "$", 12 @@ -7190,7 +7190,7 @@ gTrainers:: @ 81F04FC @ COURTNEY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_F .string "COURTNEY$", 12 @@ -7202,7 +7202,7 @@ gTrainers:: @ 81F04FC @ COURTNEY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_ADMIN + .byte TRAINER_CLASS_MAGMA_ADMIN .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAGMA_ADMIN_F .string "COURTNEY$", 12 @@ -7214,7 +7214,7 @@ gTrainers:: @ 81F04FC @ MAXIE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_LEADER + .byte TRAINER_CLASS_MAGMA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAXIE .string "MAXIE$", 12 @@ -7226,7 +7226,7 @@ gTrainers:: @ 81F04FC @ MAXIE_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_MAGMA_LEADER + .byte TRAINER_CLASS_MAGMA_LEADER .byte TRAINER_ENCOUNTER_MUSIC_MAGMA @ gender flag and encounter music .byte TRAINER_PIC_MAXIE .string "MAXIE$", 12 @@ -7238,7 +7238,7 @@ gTrainers:: @ 81F04FC @ TIANA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "TIANA$", 12 @@ -7250,7 +7250,7 @@ gTrainers:: @ 81F04FC @ HALEY_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "HALEY$", 12 @@ -7262,7 +7262,7 @@ gTrainers:: @ 81F04FC @ JANICE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "JANICE$", 12 @@ -7274,7 +7274,7 @@ gTrainers:: @ 81F04FC @ VIVI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_WINSTRATE + .byte TRAINER_CLASS_WINSTRATE .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "VIVI$", 12 @@ -7286,7 +7286,7 @@ gTrainers:: @ 81F04FC @ HALEY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "HALEY$", 12 @@ -7298,7 +7298,7 @@ gTrainers:: @ 81F04FC @ HALEY_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "HALEY$", 12 @@ -7310,7 +7310,7 @@ gTrainers:: @ 81F04FC @ HALEY_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "HALEY$", 12 @@ -7322,7 +7322,7 @@ gTrainers:: @ 81F04FC @ HALEY_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "HALEY$", 12 @@ -7334,7 +7334,7 @@ gTrainers:: @ 81F04FC @ SALLY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "SALLY$", 12 @@ -7346,7 +7346,7 @@ gTrainers:: @ 81F04FC @ ROBIN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ROBIN$", 12 @@ -7358,7 +7358,7 @@ gTrainers:: @ 81F04FC @ ANDREA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "ANDREA$", 12 @@ -7370,7 +7370,7 @@ gTrainers:: @ 81F04FC @ CRISSY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_LASS + .byte TRAINER_CLASS_LASS .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_LASS .string "CRISSY$", 12 @@ -7382,7 +7382,7 @@ gTrainers:: @ 81F04FC @ RICK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "RICK$", 12 @@ -7394,7 +7394,7 @@ gTrainers:: @ 81F04FC @ LYLE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "LYLE$", 12 @@ -7406,7 +7406,7 @@ gTrainers:: @ 81F04FC @ JOSE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "JOSE$", 12 @@ -7418,7 +7418,7 @@ gTrainers:: @ 81F04FC @ DOUG .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "DOUG$", 12 @@ -7430,7 +7430,7 @@ gTrainers:: @ 81F04FC @ GREG .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "GREG$", 12 @@ -7442,7 +7442,7 @@ gTrainers:: @ 81F04FC @ KENT .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "KENT$", 12 @@ -7454,7 +7454,7 @@ gTrainers:: @ 81F04FC @ JAMES_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "JAMES$", 12 @@ -7466,7 +7466,7 @@ gTrainers:: @ 81F04FC @ JAMES_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "JAMES$", 12 @@ -7478,7 +7478,7 @@ gTrainers:: @ 81F04FC @ JAMES_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "JAMES$", 12 @@ -7490,7 +7490,7 @@ gTrainers:: @ 81F04FC @ JAMES_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "JAMES$", 12 @@ -7502,7 +7502,7 @@ gTrainers:: @ 81F04FC @ JAMES_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BUG_CATCHER + .byte TRAINER_CLASS_BUG_CATCHER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BUG_CATCHER .string "JAMES$", 12 @@ -7514,7 +7514,7 @@ gTrainers:: @ 81F04FC @ BRICE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "BRICE$", 12 @@ -7526,7 +7526,7 @@ gTrainers:: @ 81F04FC @ TRENT_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "TRENT$", 12 @@ -7538,7 +7538,7 @@ gTrainers:: @ 81F04FC @ LENNY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "LENNY$", 12 @@ -7550,7 +7550,7 @@ gTrainers:: @ 81F04FC @ LUCAS_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "LUCAS$", 12 @@ -7562,7 +7562,7 @@ gTrainers:: @ 81F04FC @ ALAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "ALAN$", 12 @@ -7574,7 +7574,7 @@ gTrainers:: @ 81F04FC @ CLARK .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "CLARK$", 12 @@ -7586,7 +7586,7 @@ gTrainers:: @ 81F04FC @ ERIC .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "ERIC$", 12 @@ -7598,7 +7598,7 @@ gTrainers:: @ 81F04FC @ LUCAS_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "LUCAS$", 12 @@ -7610,7 +7610,7 @@ gTrainers:: @ 81F04FC @ MIKE_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "MIKE$", 12 @@ -7622,7 +7622,7 @@ gTrainers:: @ 81F04FC @ MIKE_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "MIKE$", 12 @@ -7634,7 +7634,7 @@ gTrainers:: @ 81F04FC @ TRENT_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "TRENT$", 12 @@ -7646,7 +7646,7 @@ gTrainers:: @ 81F04FC @ TRENT_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "TRENT$", 12 @@ -7658,7 +7658,7 @@ gTrainers:: @ 81F04FC @ TRENT_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "TRENT$", 12 @@ -7670,7 +7670,7 @@ gTrainers:: @ 81F04FC @ TRENT_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_HIKER + .byte TRAINER_CLASS_HIKER .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_HIKER .string "TRENT$", 12 @@ -7682,7 +7682,7 @@ gTrainers:: @ 81F04FC @ DEZ_AND_LUKE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "DEZ & LUKE$", 12 @@ -7694,7 +7694,7 @@ gTrainers:: @ 81F04FC @ LEA_AND_JED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LEA & JED$", 12 @@ -7706,7 +7706,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LOIS & HAL$", 12 @@ -7718,7 +7718,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LOIS & HAL$", 12 @@ -7730,7 +7730,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LOIS & HAL$", 12 @@ -7742,7 +7742,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LOIS & HAL$", 12 @@ -7754,7 +7754,7 @@ gTrainers:: @ 81F04FC @ LOIS_AND_HAL_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "LOIS & HAL$", 12 @@ -7766,7 +7766,7 @@ gTrainers:: @ 81F04FC @ JOHANNA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BEAUTY + .byte TRAINER_CLASS_BEAUTY .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_BEAUTY .string "JOHANNA$", 12 @@ -7778,7 +7778,7 @@ gTrainers:: @ 81F04FC @ ZANE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "ZANE$", 12 @@ -7790,7 +7790,7 @@ gTrainers:: @ 81F04FC @ VIVIAN .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "VIVIAN$", 12 @@ -7802,7 +7802,7 @@ gTrainers:: @ 81F04FC @ SADIE .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_BATTLE_GIRL + .byte TRAINER_CLASS_BATTLE_GIRL .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BATTLE_GIRL .string "SADIE$", 12 @@ -7814,7 +7814,7 @@ gTrainers:: @ 81F04FC @ HIDEO_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "HIDEO$", 12 @@ -7826,7 +7826,7 @@ gTrainers:: @ 81F04FC @ KEIGO .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "KEIGO$", 12 @@ -7838,7 +7838,7 @@ gTrainers:: @ 81F04FC @ TSUNAO .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_NINJA_BOY + .byte TRAINER_CLASS_NINJA_BOY .byte TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS @ gender flag and encounter music .byte TRAINER_PIC_NINJA_BOY .string "TSUNAO$", 12 @@ -7850,7 +7850,7 @@ gTrainers:: @ 81F04FC @ TERRELL .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_CAMPER + .byte TRAINER_CLASS_CAMPER .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_CAMPER .string "TERRELL$", 12 @@ -7862,7 +7862,7 @@ gTrainers:: @ 81F04FC @ KYLEE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_PICNICKER + .byte TRAINER_CLASS_PICNICKER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_PICNICKER .string "KYLEE$", 12 @@ -7874,7 +7874,7 @@ gTrainers:: @ 81F04FC @ WALLY_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "WALLY$", 12 @@ -7886,7 +7886,7 @@ gTrainers:: @ 81F04FC @ WALLY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "WALLY$", 12 @@ -7898,7 +7898,7 @@ gTrainers:: @ 81F04FC @ WALLY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "WALLY$", 12 @@ -7910,7 +7910,7 @@ gTrainers:: @ 81F04FC @ WALLY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "WALLY$", 12 @@ -7922,7 +7922,7 @@ gTrainers:: @ 81F04FC @ WALLY_6 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_WALLY .string "WALLY$", 12 @@ -7934,7 +7934,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -7946,7 +7946,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -7958,7 +7958,7 @@ gTrainers:: @ 81F04FC @ BRENDAN_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte TRAINER_ENCOUNTER_MUSIC_MALE @ gender flag and encounter music .byte TRAINER_PIC_BRENDAN .string "BRENDAN$", 12 @@ -7970,7 +7970,7 @@ gTrainers:: @ 81F04FC @ MAY_10 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -7982,7 +7982,7 @@ gTrainers:: @ 81F04FC @ MAY_11 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -7994,7 +7994,7 @@ gTrainers:: @ 81F04FC @ MAY_12 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_POKEMON_TRAINER_3 + .byte TRAINER_CLASS_POKEMON_TRAINER_3 .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE @ gender flag and encounter music .byte TRAINER_PIC_MAY .string "MAY$", 12 @@ -8006,7 +8006,7 @@ gTrainers:: @ 81F04FC @ JONAH .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "JONAH$", 12 @@ -8018,7 +8018,7 @@ gTrainers:: @ 81F04FC @ HENRY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "HENRY$", 12 @@ -8030,7 +8030,7 @@ gTrainers:: @ 81F04FC @ ROGER .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "ROGER$", 12 @@ -8042,7 +8042,7 @@ gTrainers:: @ 81F04FC @ ALEXA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_F .string "ALEXA$", 12 @@ -8054,7 +8054,7 @@ gTrainers:: @ 81F04FC @ RUBEN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_COOL_TRAINER + .byte TRAINER_CLASS_COOL_TRAINER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_COOL_TRAINER_M .string "RUBEN$", 12 @@ -8066,7 +8066,7 @@ gTrainers:: @ 81F04FC @ KOJI .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BLACK_BELT + .byte TRAINER_CLASS_BLACK_BELT .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_BLACK_BELT .string "KOJI$", 12 @@ -8078,7 +8078,7 @@ gTrainers:: @ 81F04FC @ WAYNE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "WAYNE$", 12 @@ -8090,7 +8090,7 @@ gTrainers:: @ 81F04FC @ BYRON .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_BIRD_KEEPER + .byte TRAINER_CLASS_BIRD_KEEPER .byte TRAINER_ENCOUNTER_MUSIC_COOL @ gender flag and encounter music .byte TRAINER_PIC_BIRD_KEEPER .string "BYRON$", 12 @@ -8102,7 +8102,7 @@ gTrainers:: @ 81F04FC @ REED .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_M + .byte TRAINER_CLASS_SWIMMER_M .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_M .string "REED$", 12 @@ -8114,7 +8114,7 @@ gTrainers:: @ 81F04FC @ TISHA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SWIMMER_F + .byte TRAINER_CLASS_SWIMMER_F .byte F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SWIMMER_F .string "TISHA$", 12 @@ -8126,7 +8126,7 @@ gTrainers:: @ 81F04FC @ TORI_AND_TIA .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_TWINS + .byte TRAINER_CLASS_TWINS .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_TWINS .string "TORI & TIA$", 12 @@ -8138,7 +8138,7 @@ gTrainers:: @ 81F04FC @ KIM_AND_IRIS .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "KIM & IRIS$", 12 @@ -8150,7 +8150,7 @@ gTrainers:: @ 81F04FC @ TYRA_AND_IVY .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_SR_AND_JR + .byte TRAINER_CLASS_SR_AND_JR .byte TRAINER_ENCOUNTER_MUSIC_TWINS @ gender flag and encounter music .byte TRAINER_PIC_SR_AND_JR .string "TYRA & IVY$", 12 @@ -8162,7 +8162,7 @@ gTrainers:: @ 81F04FC @ MEL_AND_PAUL .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_YOUNG_COUPLE + .byte TRAINER_CLASS_YOUNG_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_GIRL @ gender flag and encounter music .byte TRAINER_PIC_YOUNG_COUPLE .string "MEL & PAUL$", 12 @@ -8174,7 +8174,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_1 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "JOHN & JAY$", 12 @@ -8186,7 +8186,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_2 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "JOHN & JAY$", 12 @@ -8198,7 +8198,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_3 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "JOHN & JAY$", 12 @@ -8210,7 +8210,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_4 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "JOHN & JAY$", 12 @@ -8222,7 +8222,7 @@ gTrainers:: @ 81F04FC @ JOHN_AND_JAY_5 .byte F_TRAINER_PARTY_CUSTOM_MOVESET @ party type flags - .byte TRAINER_CLASS_NAME_OLD_COUPLE + .byte TRAINER_CLASS_OLD_COUPLE .byte TRAINER_ENCOUNTER_MUSIC_INTENSE @ gender flag and encounter music .byte TRAINER_PIC_OLD_COUPLE .string "JOHN & JAY$", 12 @@ -8234,7 +8234,7 @@ gTrainers:: @ 81F04FC @ RELI_AND_IAN .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "RELI & IAN$", 12 @@ -8246,7 +8246,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_1 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "RITA & SAM$", 12 @@ -8258,7 +8258,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_2 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "RITA & SAM$", 12 @@ -8270,7 +8270,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_3 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "RITA & SAM$", 12 @@ -8282,7 +8282,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_4 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "RITA & SAM$", 12 @@ -8294,7 +8294,7 @@ gTrainers:: @ 81F04FC @ RITA_AND_SAM_5 .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "RITA & SAM$", 12 @@ -8306,7 +8306,7 @@ gTrainers:: @ 81F04FC @ LISA_AND_RAY .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_SIS_AND_BRO + .byte TRAINER_CLASS_SIS_AND_BRO .byte TRAINER_ENCOUNTER_MUSIC_SWIMMER @ gender flag and encounter music .byte TRAINER_PIC_SIS_AND_BRO .string "LISA & RAY$", 12 @@ -8318,7 +8318,7 @@ gTrainers:: @ 81F04FC @ EUGENE .byte 0 @ party type flags - .byte TRAINER_CLASS_NAME_FISHERMAN + .byte TRAINER_CLASS_FISHERMAN .byte TRAINER_ENCOUNTER_MUSIC_HIKER @ gender flag and encounter music .byte TRAINER_PIC_FISHERMAN .string "EUGENE$", 12 diff --git a/include/battle.h b/include/battle.h index 0824fc46c..27ed57045 100644 --- a/include/battle.h +++ b/include/battle.h @@ -227,10 +227,8 @@ struct BattleStruct /* 0x2000000 */ /*0x160D5*/ u8 unk160D5; /*0x160D6*/ u8 unk160D6; /*0x160D7*/ u8 unk160D7; - /*0x160D8*/ u8 unk160D8; - /*0x160D9*/ u8 unk160D9; - /*0x160DA*/ u8 unk160DA; - /*0x160DB*/ u8 unk160DB; + /*0x160D8*/ u8 unk160D8[2]; + /*0x160DA*/ u8 unk160DA[2]; /*0x160DC*/ u8 unk160DC; /*0x160DD*/ u8 intimidateBank; /*0x160DE*/ u8 unk160DE; @@ -501,7 +499,7 @@ extern struct DisableStruct gDisableStructs[MAX_BANKS_BATTLE]; extern struct BattleResults gBattleResults; extern struct ProtectStruct gProtectStructs[MAX_BANKS_BATTLE]; extern struct SpecialStatus gSpecialStatuses[MAX_BANKS_BATTLE]; -extern struct sideTimer gSideTimer[2]; +extern struct sideTimer gSideTimers[2]; extern struct WishFutureKnock gWishFutureKnock; extern struct AI_ThinkingStruct gAIThinkingSpace; extern struct Struct20238C8 gUnknown_020238C8; @@ -551,7 +549,7 @@ extern u8 gBattleTextBuff1[]; //function declarations of buffer emits void EmitGetAttributes(u8 buffID, u8 request, u8 c); //0x0 void Emitcmd1(u8 a, u8 b, u8 c); //0x1 -void EmitSetAttributes(u8 a, u8 request, u8 c, u8 bytes, void *data); //0x2 +void EmitSetMonData(u8 a, u8 request, u8 c, u8 bytes, void *data); //0x2 void EmitSendOutPoke(u8 a, u8 b, u8 c); //0x5 void EmitReturnPokeToBall(u8 a, u8 b); //0x6 void EmitTrainerSlide(u8 a); //0x8 @@ -606,7 +604,7 @@ void InitBattle(void); void sub_800EC9C(void); void sub_800F104(void); void sub_800F298(void); -void sub_800F808(void); +void BattleMainCB2(void); void sub_800F838(struct Sprite *); u8 CreateNPCTrainerParty(struct Pokemon *, u16); void sub_800FCFC(void); @@ -638,32 +636,28 @@ void sub_8011970(void); void sub_80119B4(void); void BattleBeginFirstTurn(void); void BattleTurnPassed(void); +void RunBattleScriptCommands_PopCallbacksStack(void); +void RunBattleScriptCommands(void); +bool8 TryRunFromBattle(u8 bank); // asm/battle_2.o void sub_8012324(void); -void sub_8012FBC(u8, u8); +void SwapTurnOrder(u8, u8); u8 GetWhoStrikesFirst(u8, u8, u8); -void TurnValuesCleanUp(u8); -void SpecialStatusesClear(void); -void sub_80138F0(void); -void sub_80155A4(); -void CancelMultiTurnMoves(u8 bank); -void PrepareStringBattle(); -void sub_80156DC(); -void sub_80157C4(u8 index); // asm/battle_3.o u8 CheckMoveLimitations(u8 bank, u8 unusableMoves, u8 check); u8 UpdateTurnCounters(void); u8 TurnBasedEffects(void); -u8 sub_80170DC(); -u8 sub_80173A4(); +u8 HandleFaintedMonActions(); u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 move); u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn); +u8 GetMoveTarget(u16 move, u8 useMoveTarget); // asm/battle_4.o void AI_CalcDmg(u8, u8); u8 TypeCalc(u16 move, u8 bank_atk, u8 bank_def); +u8 BankGetTurnOrder(u8 bank); // asm/battle_5.o void nullsub_91(void); @@ -686,6 +680,7 @@ void sub_80324F8(struct Pokemon *, u8); void sub_8032638(); void sub_8032AA8(u8, u8); void SetBankFuncToOpponentBufferRunCommand(void); +void BattleMusicStop(void); // asm/battle_9.o void SetBankFuncToLinkOpponentBufferRunCommand(void); diff --git a/include/battle_ai.h b/include/battle_ai.h index 60ca5d000..c22ca8633 100644 --- a/include/battle_ai.h +++ b/include/battle_ai.h @@ -24,5 +24,6 @@ void sub_810745C(void); void AIStackPushVar(u8 *); u8 AIStackPop(void); void BattleAI_HandleItemUseBeforeAISetup(void); +void RecordAbilityBattle(u8 a, u8 b); #endif diff --git a/include/battle_message.h b/include/battle_message.h index 3e37a1ccd..9c27994ee 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -16,6 +16,143 @@ struct StringInfoBattle u8 textBuffs[3][0x10]; }; +// for B_TXT_BUFF1, B_TXT_BUFF2 and B_TXT_BUFF3 + +#define B_BUFF_STRING 0 +#define B_BUFF_NUMBER 1 +#define B_BUFF_MOVE 2 +#define B_BUFF_TYPE 3 +#define B_BUFF_MON_NICK_WITH_PREFIX 4 +#define B_BUFF_STAT 5 +#define B_BUFF_SPECIES 6 +#define B_BUFF_MON_NICK 7 +#define B_BUFF_NEGATIVE_FLAVOR 8 +#define B_BUFF_ABILITY 9 +#define B_BUFF_ITEM 10 + +#define B_BUFF_PLACEHOLDER_BEGIN 0xFD +#define B_BUFF_EOS 0xFF + +#define PREPARE_FLAVOR_BUFFER(textVar, flavorId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_NEGATIVE_FLAVOR; \ + textVar[2] = flavorId; \ + textVar[3] = B_BUFF_EOS; \ +} + +#define PREPARE_STAT_BUFFER(textVar, statId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_STAT; \ + textVar[2] = statId; \ + textVar[3] = B_BUFF_EOS; \ +} + +#define PREPARE_ABILITY_BUFFER(textVar, abilityId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_ABILITY; \ + textVar[2] = abilityId; \ + textVar[3] = B_BUFF_EOS; \ +} + +#define PREPARE_TYPE_BUFFER(textVar, typeId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_TYPE; \ + textVar[2] = typeId; \ + textVar[3] = B_BUFF_EOS; \ +} + +#define PREPARE_BYTE_NUMBER_BUFFER(textVar, maxDigits, number) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_NUMBER; \ + textVar[2] = 1; \ + textVar[3] = maxDigits; \ + textVar[4] = (number); \ + textVar[5] = B_BUFF_EOS; \ +} + +#define PREPARE_HWORD_NUMBER_BUFFER(textVar, maxDigits, number) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_NUMBER; \ + textVar[2] = 2; \ + textVar[3] = maxDigits; \ + textVar[4] = (number); \ + textVar[5] = (number & 0x0000FF00) >> 8; \ + textVar[6] = B_BUFF_EOS; \ +} + +#define PREPARE_WORD_NUMBER_BUFFER(textVar, maxDigits, number) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_NUMBER; \ + textVar[2] = 4; \ + textVar[3] = maxDigits; \ + textVar[4] = (number); \ + textVar[5] = (number & 0x0000FF00) >> 8; \ + textVar[6] = (number & 0x00FF0000) >> 16; \ + textVar[7] = (number & 0xFF000000) >> 24; \ + textVar[8] = B_BUFF_EOS; \ +} + +#define PREPARE_STRING_BUFFER(textVar, stringId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_STRING; \ + textVar[2] = stringId; \ + textVar[3] = (stringId & 0xFF00) >> 8; \ + textVar[4] = B_BUFF_EOS; \ +} + +#define PREPARE_MOVE_BUFFER(textVar, move) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_MOVE; \ + textVar[2] = move; \ + textVar[3] = (move & 0xFF00) >> 8; \ + textVar[4] = B_BUFF_EOS; \ +} + +#define PREPARE_ITEM_BUFFER(textVar, item) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_ITEM; \ + textVar[2] = item; \ + textVar[3] = (item & 0xFF00) >> 8; \ + textVar[4] = B_BUFF_EOS; \ +} + +#define PREPARE_SPECIES_BUFFER(textVar, species) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_SPECIES; \ + textVar[2] = species; \ + textVar[3] = (species & 0xFF00) >> 8; \ + textVar[4] = B_BUFF_EOS; \ +} + +#define PREPARE_MON_NICK_WITH_PREFIX_BUFFER(textVar, bank, partyId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_MON_NICK_WITH_PREFIX; \ + textVar[2] = bank; \ + textVar[3] = partyId; \ + textVar[4] = B_BUFF_EOS; \ +} + +#define PREPARE_MON_NICK_BUFFER(textVar, bank, partyId) \ +{ \ + textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \ + textVar[1] = B_BUFF_MON_NICK; \ + textVar[2] = bank; \ + textVar[3] = partyId; \ + textVar[4] = B_BUFF_EOS; \ +} + void BufferStringBattle(u16 stringID); u32 StrCpyDecodeToDisplayedStringBattle(const u8* src); u32 StrCpyDecodeBattle(const u8* src, u8* dst); diff --git a/include/battle_util.h b/include/battle_util.h new file mode 100644 index 000000000..f47b00b2c --- /dev/null +++ b/include/battle_util.h @@ -0,0 +1,29 @@ +#ifndef GUARD_BATTLE_UTIL_H +#define GUARD_BATTLE_UTIL_H + +#define BS_GET_TARGET 0 +#define BS_GET_ATTACKER 1 +#define BS_GET_EFFECT_BANK 2 +#define BS_GET_SCRIPTING_BANK 10 +#define BS_GET_PLAYER1 11 +#define BS_GET_OPPONENT1 12 +#define BS_GET_PLAYER2 13 +#define BS_GET_OPPONENT2 14 + +void TryClearRageStatuses(void); +void BattleScriptPush(u8* BS_ptr); +void PressurePPLoseOnUsingImprision(u8 bankAtk); +void PressurePPLoseOnUsingPerishSong(u8 bankAtk); +void sub_80155A4(u8); +void CancelMultiTurnMoves(u8 bank); +bool8 WasUnableToUseMove(u8 bank); +void PrepareStringBattle(u16 stringId, u8 bank); +void ResetSentPokesToOpponentValue(void); +void sub_8015740(u8 bank); +void sub_80157C4(u8 bank); +bool8 HandleWishPerishSongOnTurnEnd(void); +void BattleScriptExecute(u8* BS_ptr); +void BattleScriptPushCursorAndCallback(u8* BS_ptr); +u8 IsMonDisobedient(void); + +#endif // GUARD_BATTLE_UTIL_H diff --git a/include/constants/battle_constants.h b/include/constants/battle_constants.h index f7efb0dfd..49768f33e 100644 --- a/include/constants/battle_constants.h +++ b/include/constants/battle_constants.h @@ -1,6 +1,13 @@ #ifndef GUARD_CONSTANTS_BATTLE_CONSTANTS_H #define GUARD_CONSTANTS_BATTLE_CONSTANTS_H +// Bank sides +#define SIDE_PLAYER 0x0 +#define SIDE_OPPONENT 0x1 + +#define BIT_SIDE 0x1 +#define BIT_MON 0x2 + #define STATUS_SLEEP 0x7 #define STATUS_POISON 0x8 #define STATUS_BURN 0x10 @@ -65,6 +72,7 @@ #define HITMARKER_PURSUIT_TRAP 0x00001000 #define HITMARKER_IGNORE_SAFEGUARD 0x00002000 #define HITMARKER_SYNCHRONISE_EFFECT 0x00004000 +#define HITMARKER_RUN 0x00008000 #define HITMARKER_IGNORE_ON_AIR 0x00010000 #define HITMARKER_IGNORE_UNDERGROUND 0x00020000 #define HITMARKER_IGNORE_UNDERWATER 0x00040000 @@ -75,6 +83,7 @@ #define HITMARKER_x800000 0x00800000 #define HITMARKER_GRUDGE 0x01000000 #define HITMARKER_OBEYS 0x02000000 +#define HITMARKER_x4000000 0x04000000 #define HITMARKER_x8000000 0x08000000 #define HITMARKER_FAINTED(bank) ((gBitTable[bank] << 0x1C)) #define HITMARKER_UNK(bank) ((0x10000000 << bank)) @@ -88,6 +97,11 @@ #define MOVESTATUS_ENDURED (1 << 6) #define MOVESTATUS_HUNGON (1 << 7) +#define IDENTITY_PLAYER_MON1 0 +#define IDENTITY_OPPONENT_MON1 1 +#define IDENTITY_PLAYER_MON2 2 +#define IDENTITY_OPPONENT_MON2 3 + #define BATTLE_TYPE_DOUBLE 0x0001 #define BATTLE_TYPE_LINK 0x0002 #define BATTLE_TYPE_WILD 0x0004 @@ -117,6 +131,8 @@ #define BATTLE_OUT_OF_BALLS 0x8 #define BATTLE_OPPONENT_TELEPORTED 0xA +#define OUTCOME_LINK_BATTLE_RUN 0x80 + #define SIDE_STATUS_REFLECT (1 << 0) #define SIDE_STATUS_LIGHTSCREEN (1 << 1) #define SIDE_STATUS_X4 (1 << 2) @@ -126,6 +142,22 @@ #define SIDE_STATUS_MIST (1 << 8) #define SIDE_STATUS_SPIKES_DAMAGED (1 << 9) +#define ACTION_USE_MOVE 0 +#define ACTION_USE_ITEM 1 +#define ACTION_SWITCH 2 +#define ACTION_RUN 3 +#define ACTION_WATCHES_CAREFULLY 4 +#define ACTION_SAFARI_ZONE_BALL 5 +#define ACTION_POKEBLOCK_CASE 6 +#define ACTION_GO_NEAR 7 +#define ACTION_SAFARI_ZONE_RUN 8 +#define ACTION_9 9 +#define ACTION_RUN_BATTLESCRIPT 10 // when executing an action +#define ACTION_CANCEL_PARTNER 12 // when choosing an action +#define ACTION_FINISHED 12 // when executing an action +#define ACTION_NOTHING_FAINTED 13 // when choosing an action +#define ACTION_INIT_VALUE 0xFF + #define TARGET_SELECTED_POKEMON 0 #define TARGET_SPECIAL (1 << 0) #define TARGET_UNK2 (1 << 1) @@ -192,6 +224,40 @@ #define WEATHER_SUN_ANY ((WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT)) #define WEATHER_HAIL (1 << 7) +#define MOVE_TARGET_SELECTED 0x0 +#define MOVE_TARGET_DEPENDS 0x1 +#define MOVE_TARGET_USER 0x2 +#define MOVE_TARGET_RANDOM 0x4 +#define MOVE_TARGET_x10 0x10 +#define MOVE_TARGET_BOTH 0x8 +#define MOVE_TARGET_FOES_AND_ALLY 0x20 +#define MOVE_TARGET_OPPONENTS_FIELD 0x40 + +// array entries for battle communication +#define MULTIUSE_STATE 0x0 +#define CURSOR_POSITION 0x1 +#define TASK_ID 0x1 // task Id and cursor position share the same field +#define SPRITES_INIT_STATE1 0x1 // shares the Id as well +#define SPRITES_INIT_STATE2 0x2 +#define MOVE_EFFECT_BYTE 0x3 +#define ACTIONS_CONFIRMED_COUNT 0x4 +#define MULTISTRING_CHOOSER 0x5 +#define MSG_DISPLAY 0x7 +#define BATTLE_COMMUNICATION_ENTRIES_COUNT 0x8 + +#define BS_GET_TARGET 0 +#define BS_GET_ATTACKER 1 +#define BS_GET_EFFECT_BANK 2 +#define BS_GET_gBank1 3 +#define BS_GET_BANK_0 7 +#define BS_ATTACKER_WITH_PARTNER 4 // for atk98_status_icon_update +#define BS_GET_ATTACKER_SIDE 8 // for atk1E_jumpifability +#define BS_GET_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability +#define BS_GET_SCRIPTING_BANK 10 +#define BS_GET_OPPONENT1 12 +#define BS_GET_PLAYER2 13 +#define BS_GET_OPPONENT2 14 + // status animation table #define B_ANIM_STATUS_PSN 0x0 #define B_ANIM_STATUS_CONFUSION 0x1 @@ -238,4 +304,12 @@ #define B_ANIM_SUBSTITUTE_TO_MON 0x5 #define B_ANIM_MON_TO_SUBSTITUTE 0x6 +// AI switch items +#define AI_ITEM_FULL_RESTORE 1 +#define AI_ITEM_HEAL_HP 2 +#define AI_ITEM_CURE_CONDITION 3 +#define AI_ITEM_X_STAT 4 +#define AI_ITEM_GUARD_SPECS 5 +#define AI_ITEM_NOT_RECOGNIZABLE 6 + #endif // GUARD_CONSTANTS_BATTLE_CONSTANTS_H diff --git a/include/easy_chat.h b/include/easy_chat.h index a70d7ad0c..c68a3fa02 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -115,7 +115,6 @@ struct Shared1000 }; extern u8 gUnknown_020388AC; -extern u8 gUnknown_03000740; // const pointer to shared1000. easy_chat might be two separate files. extern struct Shared1000 *const gEasyChatStruct; diff --git a/include/ewram.h b/include/ewram.h index 07f9d1ad2..b07820090 100755 --- a/include/ewram.h +++ b/include/ewram.h @@ -108,6 +108,7 @@ extern u8 gSharedMem[]; #define ewram16010arr(bank) (gSharedMem[0x16010 + bank]) #define ewram1601B (gSharedMem[0x1601B]) #define eDynamicMoveType (gSharedMem[0x1601C]) +#define eFocusPunchBank (gSharedMem[0x1601D]) #define eDmgMultiplier (gSharedMem[0x1601F]) #define ewram16020 ((u8 *)(gSharedMem + 0x16020)) #define ewram16020arr(i) (gSharedMem[0x16020 + i]) @@ -133,6 +134,8 @@ extern u8 gSharedMem[]; #define ewram1608Carr(bank) (gSharedMem[0x1608C + bank]) #define EWRAM_1609D (gSharedMem[0x1609D]) #define ewram160A1 (gSharedMem[0x160A1]) +#define ewram160A4 (gSharedMem[0x160A4]) +#define ewram160A5 (gSharedMem[0x160A5]) #define ewram160A6 (gSharedMem[0x160A6]) #define ewram160A8 (gSharedMem[0x160A8]) #define ewram160A9 (gSharedMem[0x160A9]) @@ -155,9 +158,12 @@ extern u8 gSharedMem[]; #define USED_HELD_ITEM(bank) ((((u16*)(&gSharedMem[0x160CC + bank * 2])))) #define USED_HELD_ITEMS(bank) (*(u16 *)&gSharedMem[0x160CC + 2 * (bank)]) #define ewram160D4(bank) (gSharedMem[0x160D4 + (bank / 2) * 2]) +#define ewram160D8(bank) (gSharedMem[0x160D8 + (bank / 2)]) +#define ewram160DA(bank) (gSharedMem[0x160DA + (bank / 2)]) #define ewram160DD (gSharedMem[0x160DD]) #define ewram160E0(i) (gSharedMem[0x160E0 + i]) #define ewram160E6 (gSharedMem[0x160E6]) +#define ewram160E7 (gSharedMem[0x160E7]) #define CHOICED_MOVE(bank) (((u16*)(&gSharedMem[0x160E8 + bank * 2]))) #define ewram160E8 ((u8 *)(gSharedMem + 0x160E8)) #define ewram160E8arr(i) (gSharedMem[0x160E8 + i]) @@ -175,6 +181,7 @@ extern u8 gSharedMem[]; #define ewram16108arr(i) (gSharedMem[0x16108 + i]) #define ewram16110 (gSharedMem[0x16110]) #define ewram16111 (gSharedMem[0x16111]) +#define eMultihitMoveEffect (gSharedMem[0x16112]) #define ewram16113 (gSharedMem[0x16113]) #define ewram16400 (gSharedMem + 0x16400) #define AI_THINKING_STRUCT ((struct AI_ThinkingStruct *)(gSharedMem + 0x16800)) @@ -193,13 +200,14 @@ extern u8 gSharedMem[]; #define B_FUNCTION_STACK ((struct funcStack *) (gSharedMem + 0x17140)) #define ewram17160 (gSharedMem[0x17160]) #define ewram17800 ((struct Struct2017800 *) (gSharedMem + 0x17800)) +#define ewram17800_2 (&gSharedMem[0x17800]) #define EWRAM_17800 ((struct UnknownStruct1 *)(gSharedMem + 0x17800)) #define eTransformStatuses ((struct TransformStatus *)(gSharedMem + 0x17800)) -#define ewram17800_2 (&gSharedMem[0x17800]) #define ewram17810 ((struct Struct2017810 *) (gSharedMem + 0x17810)) #define EWRAM_17810 ((struct UnknownStruct3 *)(gSharedMem + 0x17810)) #define ewram17840 (*(struct Struct2017840 *) (gSharedMem + 0x17840)) #define ewram17850 ((struct UnknownStruct5 *)(gSharedMem + 0x17850)) +#define ewram17E00 ((u16 *)(gSharedMem + 0x17E00)) #define ewram_2018000 (*(struct PlayerRecords *)(gSharedMem + 0x18000)) #define EWRAM_18000 ((u16 *)(gSharedMem + 0x18000)) #define ewram18000 ((u16 *)(gSharedMem + 0x18000)) @@ -213,9 +221,14 @@ extern u8 gSharedMem[]; #define ewram18300 ((u16 *)(gSharedMem + 0x18300)) #define ewram18800 (&gSharedMem[0x18800]) #define ePokedexView2 (struct PokedexView *)(gSharedMem + 0x18800) +#define ewram189a0 ((u16 *)(gSharedMem + 0x189A0)) +#define ewram18a20 ((u16 *)(gSharedMem + 0x18A20)) +#define ewram18a32 ((u16 *)(gSharedMem + 0x18A32)) +#define ewram18a80 ((u16 *)(gSharedMem + 0x18a80)) #define ewram19000 (&gSharedMem[0x19000]) #define eCableCar2 ((struct CableCarEwramStruct2 *)(gSharedMem + 0x19000)) #define ePokedexView3 (struct PokedexView *)(gSharedMem + 0x19000) +#define eRoulette ((struct Roulette *)(gSharedMem + 0x19000)) #define EWRAM_19348 (*(u16 *)(gSharedMem + 0x19348)) #define ewram19800 (&gSharedMem[0x19800]) #define ePokedexView4 (struct PokedexView *)(gSharedMem + 0x19800) diff --git a/include/m4a.h b/include/m4a.h index 7d016c98b..57a749a58 100644 --- a/include/m4a.h +++ b/include/m4a.h @@ -8,6 +8,7 @@ void m4aSoundVSync(void); void m4aSoundInit(void); void m4aSoundMain(void); void m4aSongNumStart(u16); +void m4aSongNumStartOrChange(u16); void m4aSongNumStop(u16 n); void m4aMPlayAllStop(void); void m4aMPlayContinue(struct MusicPlayerInfo *mplayInfo); diff --git a/include/pokemon.h b/include/pokemon.h index a1c30f1f3..71b35e65c 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -363,6 +363,16 @@ enum STAT_STAGE_EVASION, // 7 }; +enum +{ + STAT_HP, // 0 + STAT_ATK, // 1 + STAT_DEF, // 2 + STAT_SPD, // 3 + STAT_SPATK, // 4 + STAT_SPDEF, // 5 +}; + struct BaseStats { /*0x00*/ u8 baseHP; @@ -405,7 +415,7 @@ struct BattleMove u8 pp; u8 secondaryEffectChance; u8 target; - u8 priority; + s8 priority; u8 flags; u8 pad[3]; }; @@ -613,6 +623,8 @@ bool8 IsPokeSpriteNotFlipped(u16); u8 GetLevelUpMovesBySpecies(u16, u16 *); u8 TryIncrementMonLevel(struct Pokemon *); bool8 IsShiny(struct Pokemon *mon); +void RandomlyGivePartyPokerus(struct Pokemon *party); +void PartySpreadPokerus(struct Pokemon *party); struct Sprite *sub_80F7920(u16, u16, const u16 *); diff --git a/include/roamer.h b/include/roamer.h index 9d5f3c4ed..86908bd00 100644 --- a/include/roamer.h +++ b/include/roamer.h @@ -7,5 +7,7 @@ void UpdateLocationHistoryForRoamer(void); void RoamerMoveToOtherLocationSet(void); void RoamerMove(); u8 TryStartRoamerEncounter(void); +void UpdateRoamerHPStatus(struct Pokemon *mon); +void SetRoamerInactive(void); #endif diff --git a/include/rom_8077ABC.h b/include/rom_8077ABC.h index dda90c48f..21ec88a90 100644 --- a/include/rom_8077ABC.h +++ b/include/rom_8077ABC.h @@ -25,9 +25,9 @@ u8 GetBankSide(u8 slot); u8 GetBankSide(u8); u8 GetBankIdentity(u8); u8 GetBankIdentity(u8 slot); -u8 GetBankByPlayerAI(u8); -u8 GetBankByPlayerAI(u8); -u8 GetBankByPlayerAI(u8 state); +u8 GetBankByIdentity(u8); +u8 GetBankByIdentity(u8); +u8 GetBankByIdentity(u8 state); bool8 IsBankSpritePresent(u8); bool8 IsDoubleBattle(); u8 IsDoubleBattle(void); diff --git a/include/roulette.h b/include/roulette.h new file mode 100644 index 000000000..7d114a073 --- /dev/null +++ b/include/roulette.h @@ -0,0 +1,38 @@ +#ifndef GUARD_ROULETTE_H +#define GUARD_ROULETTE_H + +struct UnkStruct1 +{ + u16 var00; + u16 var02; + u8 var04; + u8 var05; + u8 var06; + s8 var07_0:5; + s8 var07_5:2; + s8 var07_7:1; +}; + +struct UnkStruct3 +{ + u8 var00_0:7; + u8 var00_7:1; + u8 var01; + s8 var02; + s8 var03; + struct UnkStruct1 var04; +}; + +struct UnkStruct0 +{ + u8 var00; + u8 var01; + u16 var02; //flag for each UnkStruct3 + struct UnkStruct3 var04[0x10]; +}; + +s16 sub_81174C4(s16, s16); +s16 sub_81174E0(s16); +void PlayRoulette(void); + +#endif diff --git a/include/roulette_util.h b/include/roulette_util.h new file mode 100644 index 000000000..daeaeeeef --- /dev/null +++ b/include/roulette_util.h @@ -0,0 +1,14 @@ +#ifndef GUARD_ROULETTE_UTIL_H +#define GUARD_ROULETTE_UTIL_H + +#include "roulette.h" + +void sub_8124918(struct UnkStruct0 *); +u8 sub_812492C(struct UnkStruct0 *, u8, struct UnkStruct1 *); +void task_tutorial_controls_fadein(struct UnkStruct0 *); +void sub_8124CE8(struct UnkStruct0 *, u16); +void sub_8124D3C(struct UnkStruct0 *, u16); +void sub_8124DDC(u16 *, u16, u8, u8, u8, u8); +void sub_8124E2C(u16 *, u16 *, u8, u8, u8, u8); + +#endif diff --git a/include/trainer.h b/include/trainer.h index 2e0beb342..e8f2776d2 100644 --- a/include/trainer.h +++ b/include/trainer.h @@ -17,83 +17,83 @@ #define TRAINER_ENCOUNTER_MUSIC_RICH 13 // Rich Boys and Gentlemen enum { - TRAINER_CLASS_AQUA_LEADER, - TRAINER_CLASS_TEAM_AQUA_M, - TRAINER_CLASS_TEAM_AQUA_F, - TRAINER_CLASS_AROMA_LADY, - TRAINER_CLASS_RUIN_MANIAC, - TRAINER_CLASS_INTERVIEWER, - TRAINER_CLASS_TUBER_F, - TRAINER_CLASS_TUBER_M, - TRAINER_CLASS_COOL_TRAINER_M, - TRAINER_CLASS_COOL_TRAINER_F, - TRAINER_CLASS_HEX_MANIAC, - TRAINER_CLASS_LADY, - TRAINER_CLASS_BEAUTY, - TRAINER_CLASS_RICH_BOY, - TRAINER_CLASS_POKEMANIAC, - TRAINER_CLASS_SWIMMER_M, - TRAINER_CLASS_BLACK_BELT, - TRAINER_CLASS_GUITARIST, - TRAINER_CLASS_KINDLER, - TRAINER_CLASS_CAMPER, - TRAINER_CLASS_BUG_MANIAC, - TRAINER_CLASS_PSYCHIC_M, - TRAINER_CLASS_PSYCHIC_F, - TRAINER_CLASS_GENTLEMAN, - TRAINER_CLASS_ELITE_FOUR_M, - TRAINER_CLASS_ELITE_FOUR_F, - TRAINER_CLASS_LEADER_F, - TRAINER_CLASS_LEADER_M, - TRAINER_CLASS_LEADER_MF, - TRAINER_CLASS_SCHOOL_KID_M, - TRAINER_CLASS_SCHOOL_KID_F, - TRAINER_CLASS_SR_AND_JR, - TRAINER_CLASS_POKEFAN_M, - TRAINER_CLASS_POKEFAN_F, - TRAINER_CLASS_EXPERT_M, - TRAINER_CLASS_EXPERT_F, - TRAINER_CLASS_YOUNGSTER, - TRAINER_CLASS_CHAMPION, - TRAINER_CLASS_FISHERMAN, - TRAINER_CLASS_CYCLING_TRIATHLETE_M, - TRAINER_CLASS_CYCLING_TRIATHLETE_F, - TRAINER_CLASS_RUNNING_TRIATHLETE_M, - TRAINER_CLASS_RUNNING_TRIATHLETE_F, - TRAINER_CLASS_SWIMMING_TRIATHLETE_M, - TRAINER_CLASS_SWIMMING_TRIATHLETE_F, - TRAINER_CLASS_DRAGON_TAMER, - TRAINER_CLASS_BIRD_KEEPER, - TRAINER_CLASS_NINJA_BOY, - TRAINER_CLASS_BATTLE_GIRL, - TRAINER_CLASS_PARASOL_LADY, - TRAINER_CLASS_SWIMMER_F, - TRAINER_CLASS_PICNICKER, - TRAINER_CLASS_TWINS, - TRAINER_CLASS_SAILOR, - TRAINER_CLASS_BOARDER_1, - TRAINER_CLASS_BOARDER_2, - TRAINER_CLASS_COLLECTOR, - TRAINER_CLASS_WALLY, - TRAINER_CLASS_BRENDAN_1, - TRAINER_CLASS_BRENDAN_2, - TRAINER_CLASS_BRENDAN_3, - TRAINER_CLASS_MAY_1, - TRAINER_CLASS_MAY_2, - TRAINER_CLASS_MAY_3, - TRAINER_CLASS_POKEMON_BREEDER_M, - TRAINER_CLASS_POKEMON_BREEDER_F, - TRAINER_CLASS_POKEMON_RANGER_M, - TRAINER_CLASS_POKEMON_RANGER_F, - TRAINER_CLASS_MAGMA_LEADER, - TRAINER_CLASS_TEAM_MAGMA_M, - TRAINER_CLASS_TEAM_MAGMA_F, - TRAINER_CLASS_LASS, - TRAINER_CLASS_BUG_CATCHER, - TRAINER_CLASS_HIKER, - TRAINER_CLASS_YOUNG_COUPLE, - TRAINER_CLASS_OLD_COUPLE, - TRAINER_CLASS_SIS_AND_BRO + FACILITY_CLASS_AQUA_LEADER, + FACILITY_CLASS_TEAM_AQUA_M, + FACILITY_CLASS_TEAM_AQUA_F, + FACILITY_CLASS_AROMA_LADY, + FACILITY_CLASS_RUIN_MANIAC, + FACILITY_CLASS_INTERVIEWER, + FACILITY_CLASS_TUBER_F, + FACILITY_CLASS_TUBER_M, + FACILITY_CLASS_COOL_TRAINER_M, + FACILITY_CLASS_COOL_TRAINER_F, + FACILITY_CLASS_HEX_MANIAC, + FACILITY_CLASS_LADY, + FACILITY_CLASS_BEAUTY, + FACILITY_CLASS_RICH_BOY, + FACILITY_CLASS_POKEMANIAC, + FACILITY_CLASS_SWIMMER_M, + FACILITY_CLASS_BLACK_BELT, + FACILITY_CLASS_GUITARIST, + FACILITY_CLASS_KINDLER, + FACILITY_CLASS_CAMPER, + FACILITY_CLASS_BUG_MANIAC, + FACILITY_CLASS_PSYCHIC_M, + FACILITY_CLASS_PSYCHIC_F, + FACILITY_CLASS_GENTLEMAN, + FACILITY_CLASS_ELITE_FOUR_M, + FACILITY_CLASS_ELITE_FOUR_F, + FACILITY_CLASS_LEADER_F, + FACILITY_CLASS_LEADER_M, + FACILITY_CLASS_LEADER_MF, + FACILITY_CLASS_SCHOOL_KID_M, + FACILITY_CLASS_SCHOOL_KID_F, + FACILITY_CLASS_SR_AND_JR, + FACILITY_CLASS_POKEFAN_M, + FACILITY_CLASS_POKEFAN_F, + FACILITY_CLASS_EXPERT_M, + FACILITY_CLASS_EXPERT_F, + FACILITY_CLASS_YOUNGSTER, + FACILITY_CLASS_CHAMPION, + FACILITY_CLASS_FISHERMAN, + FACILITY_CLASS_CYCLING_TRIATHLETE_M, + FACILITY_CLASS_CYCLING_TRIATHLETE_F, + FACILITY_CLASS_RUNNING_TRIATHLETE_M, + FACILITY_CLASS_RUNNING_TRIATHLETE_F, + FACILITY_CLASS_SWIMMING_TRIATHLETE_M, + FACILITY_CLASS_SWIMMING_TRIATHLETE_F, + FACILITY_CLASS_DRAGON_TAMER, + FACILITY_CLASS_BIRD_KEEPER, + FACILITY_CLASS_NINJA_BOY, + FACILITY_CLASS_BATTLE_GIRL, + FACILITY_CLASS_PARASOL_LADY, + FACILITY_CLASS_SWIMMER_F, + FACILITY_CLASS_PICNICKER, + FACILITY_CLASS_TWINS, + FACILITY_CLASS_SAILOR, + FACILITY_CLASS_BOARDER_1, + FACILITY_CLASS_BOARDER_2, + FACILITY_CLASS_COLLECTOR, + FACILITY_CLASS_WALLY, + FACILITY_CLASS_BRENDAN_1, + FACILITY_CLASS_BRENDAN_2, + FACILITY_CLASS_BRENDAN_3, + FACILITY_CLASS_MAY_1, + FACILITY_CLASS_MAY_2, + FACILITY_CLASS_MAY_3, + FACILITY_CLASS_POKEMON_BREEDER_M, + FACILITY_CLASS_POKEMON_BREEDER_F, + FACILITY_CLASS_POKEMON_RANGER_M, + FACILITY_CLASS_POKEMON_RANGER_F, + FACILITY_CLASS_MAGMA_LEADER, + FACILITY_CLASS_TEAM_MAGMA_M, + FACILITY_CLASS_TEAM_MAGMA_F, + FACILITY_CLASS_LASS, + FACILITY_CLASS_BUG_CATCHER, + FACILITY_CLASS_HIKER, + FACILITY_CLASS_YOUNG_COUPLE, + FACILITY_CLASS_OLD_COUPLE, + FACILITY_CLASS_SIS_AND_BRO }; enum { @@ -183,64 +183,64 @@ enum { }; enum { - TRAINER_CLASS_NAME_POKEMON_TRAINER_1, - TRAINER_CLASS_NAME_POKEMON_TRAINER_2, - TRAINER_CLASS_NAME_AQUA_LEADER, - TRAINER_CLASS_NAME_TEAM_AQUA, - TRAINER_CLASS_NAME_AQUA_ADMIN, - TRAINER_CLASS_NAME_AROMA_LADY, - TRAINER_CLASS_NAME_RUIN_MANIAC, - TRAINER_CLASS_NAME_INTERVIEWER, - TRAINER_CLASS_NAME_TUBER_F, - TRAINER_CLASS_NAME_TUBER_M, - TRAINER_CLASS_NAME_COOL_TRAINER, - TRAINER_CLASS_NAME_HEX_MANIAC, - TRAINER_CLASS_NAME_LADY, - TRAINER_CLASS_NAME_BEAUTY, - TRAINER_CLASS_NAME_RICH_BOY, - TRAINER_CLASS_NAME_POKEMANIAC, - TRAINER_CLASS_NAME_SWIMMER_M, - TRAINER_CLASS_NAME_BLACK_BELT, - TRAINER_CLASS_NAME_GUITARIST, - TRAINER_CLASS_NAME_KINDLER, - TRAINER_CLASS_NAME_CAMPER, - TRAINER_CLASS_NAME_BUG_MANIAC, - TRAINER_CLASS_NAME_PSYCHIC, - TRAINER_CLASS_NAME_GENTLEMAN, - TRAINER_CLASS_NAME_ELITE_FOUR, - TRAINER_CLASS_NAME_LEADER, - TRAINER_CLASS_NAME_SCHOOL_KID, - TRAINER_CLASS_NAME_SR_AND_JR, - TRAINER_CLASS_NAME_WINSTRATE, - TRAINER_CLASS_NAME_POKEFAN, - TRAINER_CLASS_NAME_EXPERT, - TRAINER_CLASS_NAME_YOUNGSTER, - TRAINER_CLASS_NAME_CHAMPION, - TRAINER_CLASS_NAME_FISHERMAN, - TRAINER_CLASS_NAME_TRIATHLETE, - TRAINER_CLASS_NAME_DRAGON_TAMER, - TRAINER_CLASS_NAME_BIRD_KEEPER, - TRAINER_CLASS_NAME_NINJA_BOY, - TRAINER_CLASS_NAME_BATTLE_GIRL, - TRAINER_CLASS_NAME_PARASOL_LADY, - TRAINER_CLASS_NAME_SWIMMER_F, - TRAINER_CLASS_NAME_PICNICKER, - TRAINER_CLASS_NAME_TWINS, - TRAINER_CLASS_NAME_SAILOR, - TRAINER_CLASS_NAME_BOARDER, - TRAINER_CLASS_NAME_COLLECTOR, - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, - TRAINER_CLASS_NAME_POKEMON_BREEDER, - TRAINER_CLASS_NAME_POKEMON_RANGER, - TRAINER_CLASS_NAME_MAGMA_LEADER, - TRAINER_CLASS_NAME_TEAM_MAGMA, - TRAINER_CLASS_NAME_MAGMA_ADMIN, - TRAINER_CLASS_NAME_LASS, - TRAINER_CLASS_NAME_BUG_CATCHER, - TRAINER_CLASS_NAME_HIKER, - TRAINER_CLASS_NAME_YOUNG_COUPLE, - TRAINER_CLASS_NAME_OLD_COUPLE, - TRAINER_CLASS_NAME_SIS_AND_BRO + TRAINER_CLASS_POKEMON_TRAINER_1, + TRAINER_CLASS_POKEMON_TRAINER_2, + TRAINER_CLASS_AQUA_LEADER, + TRAINER_CLASS_TEAM_AQUA, + TRAINER_CLASS_AQUA_ADMIN, + TRAINER_CLASS_AROMA_LADY, + TRAINER_CLASS_RUIN_MANIAC, + TRAINER_CLASS_INTERVIEWER, + TRAINER_CLASS_TUBER_F, + TRAINER_CLASS_TUBER_M, + TRAINER_CLASS_COOL_TRAINER, + TRAINER_CLASS_HEX_MANIAC, + TRAINER_CLASS_LADY, + TRAINER_CLASS_BEAUTY, + TRAINER_CLASS_RICH_BOY, + TRAINER_CLASS_POKEMANIAC, + TRAINER_CLASS_SWIMMER_M, + TRAINER_CLASS_BLACK_BELT, + TRAINER_CLASS_GUITARIST, + TRAINER_CLASS_KINDLER, + TRAINER_CLASS_CAMPER, + TRAINER_CLASS_BUG_MANIAC, + TRAINER_CLASS_PSYCHIC, + TRAINER_CLASS_GENTLEMAN, + TRAINER_CLASS_ELITE_FOUR, + TRAINER_CLASS_LEADER, + TRAINER_CLASS_SCHOOL_KID, + TRAINER_CLASS_SR_AND_JR, + TRAINER_CLASS_WINSTRATE, + TRAINER_CLASS_POKEFAN, + TRAINER_CLASS_EXPERT, + TRAINER_CLASS_YOUNGSTER, + TRAINER_CLASS_CHAMPION, + TRAINER_CLASS_FISHERMAN, + TRAINER_CLASS_TRIATHLETE, + TRAINER_CLASS_DRAGON_TAMER, + TRAINER_CLASS_BIRD_KEEPER, + TRAINER_CLASS_NINJA_BOY, + TRAINER_CLASS_BATTLE_GIRL, + TRAINER_CLASS_PARASOL_LADY, + TRAINER_CLASS_SWIMMER_F, + TRAINER_CLASS_PICNICKER, + TRAINER_CLASS_TWINS, + TRAINER_CLASS_SAILOR, + TRAINER_CLASS_BOARDER, + TRAINER_CLASS_COLLECTOR, + TRAINER_CLASS_POKEMON_TRAINER_3, + TRAINER_CLASS_POKEMON_BREEDER, + TRAINER_CLASS_POKEMON_RANGER, + TRAINER_CLASS_MAGMA_LEADER, + TRAINER_CLASS_TEAM_MAGMA, + TRAINER_CLASS_MAGMA_ADMIN, + TRAINER_CLASS_LASS, + TRAINER_CLASS_BUG_CATCHER, + TRAINER_CLASS_HIKER, + TRAINER_CLASS_YOUNG_COUPLE, + TRAINER_CLASS_OLD_COUPLE, + TRAINER_CLASS_SIS_AND_BRO }; #endif // GUARD_TRAINER_H diff --git a/include/tv.h b/include/tv.h index 91b871f71..2edccb365 100644 --- a/include/tv.h +++ b/include/tv.h @@ -107,5 +107,6 @@ void UpdateTVShowsPerDay(u16); void sub_80C045C(); void sub_80BF088(u8, s32); void sub_80BFD20(void); +void PutPokemonTodayCaughtOnAir(void); #endif // GUARD_TV_H diff --git a/ld_script.txt b/ld_script.txt index 4f99cff99..894a70d4d 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -50,8 +50,7 @@ SECTIONS { src/rom_800D42C.o(.text); asm/battle_1.o(.text_800DC24); src/battle/battle_2.o(.text); - asm/battle_2.o(.text); - src/battle/battle_3.o(.text); + src/battle/battle_util.o(.text); src/battle/battle_4.o(.text); src/battle/battle_controller_player.o(.text); src/battle/battle_7.o(.text); @@ -336,7 +335,7 @@ SECTIONS { src/battle/battle_records.o(.text); asm/pokedex_area_screen.o(.text); src/scene/evolution_scene.o(.text); - asm/roulette.o(.text); + src/roulette.o(.text); asm/pokedex_cry_screen.o(.text); src/pokemon/pokedex_cry_screen.o(.text); asm/pokedex_cry_screen.o(.text_811A4F8); @@ -348,7 +347,7 @@ SECTIONS { src/battle/battle_message.o(.text); src/field/choose_party.o(.text); src/scene/cable_car.o(.text); - asm/roulette_util.o(.text); + src/roulette_util.o(.text); src/engine/cable_car_util.o(.text); src/unused/unused_8124F94.o(.text); src/engine/save.o(.text); @@ -454,7 +453,7 @@ SECTIONS { src/battle/battle_controller_opponent.o(.rodata); src/battle/battle_controller_linkopponent.o(.rodata); data/battle_moves.o(.rodata); - src/battle/battle_3.o(.rodata); + src/battle/battle_util.o(.rodata); src/pokemon/pokemon_data.o(.rodata); . = ALIGN(4); src/engine/trig.o(.rodata); diff --git a/src/battle/anim/fire_2.c b/src/battle/anim/fire_2.c index 6dc304232..4d577a765 100644 --- a/src/battle/anim/fire_2.c +++ b/src/battle/anim/fire_2.c @@ -23,8 +23,8 @@ void sub_80D57C4(u8 spriteId, u8 taskId, u8 a3); void sub_80D51A8(struct Sprite *sprite) { if (GetBankSide(gAnimBankAttacker) == GetBankSide(gAnimBankTarget) - && (gAnimBankAttacker == GetBankByPlayerAI(2) - || gAnimBankAttacker == GetBankByPlayerAI(3))) + && (gAnimBankAttacker == GetBankByIdentity(2) + || gAnimBankAttacker == GetBankByIdentity(3))) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->callback = sub_8079534; diff --git a/src/battle/battle_2.c b/src/battle/battle_2.c index b0654950b..ae84e5585 100644 --- a/src/battle/battle_2.c +++ b/src/battle/battle_2.c @@ -1,12 +1,18 @@ #include "global.h" #include "constants/abilities.h" #include "battle.h" +#include "battle_ai.h" #include "battle_interface.h" +#include "battle_message.h" #include "battle_setup.h" +#include "battle_util.h" #include "data2.h" +#include "event_data.h" +#include "evolution_scene.h" #include "item.h" #include "link.h" #include "main.h" +#include "m4a.h" #include "name_string_util.h" #include "palette.h" #include "party_menu.h" @@ -14,6 +20,7 @@ #include "pokedex.h" #include "pokemon.h" #include "random.h" +#include "roamer.h" #include "rom3.h" #include "rom_8077ABC.h" #include "rom_8094928.h" @@ -21,14 +28,18 @@ #include "sound.h" #include "constants/species.h" #include "sprite.h" +#include "string_util.h" #include "task.h" #include "text.h" +#include "trainer.h" #include "trig.h" +#include "tv.h" #include "unknown_task.h" #include "util.h" +#include "constants/battle_move_effects.h" #include "constants/items.h" #include "constants/hold_effects.h" -#include "constants/battle_move_effects.h" +#include "constants/moves.h" #include "ewram.h" struct UnknownStruct7 @@ -56,14 +67,16 @@ struct UnknownStruct12 extern const u16 gUnknown_08D004E0[]; extern const struct MonCoords gCastformFrontSpriteCoords[]; +extern u8 gStatStageRatios[][2]; +extern u8 gActionsByTurnOrder[4]; extern struct UnknownPokemonStruct2 gUnknown_02023A00[]; extern u8 gBattleBufferB[][0x200]; extern u8 gActiveBank; extern u32 gBattleExecBuffer; extern u8 gNoOfAllBanks; extern u16 gBattlePartyID[]; -extern u8 gFightStateTracker; -extern u8 gTurnOrder[]; +extern u8 gCurrentActionFuncId; +extern u8 gBanksByTurnOrder[]; extern struct UnknownStruct12 gUnknown_02024AD0[]; extern u8 gObjectBankIDs[]; extern u16 gCurrentMove; @@ -77,7 +90,7 @@ extern u16 gLastUsedMove[]; extern u16 gMoveHitWith[]; extern u16 gUnknown_02024C44[]; extern u16 gUnknown_02024C4C[]; -extern u16 gLockedMove[]; +extern u16 gLockedMoves[]; extern u8 gUnknown_02024C5C[]; extern u16 gChosenMovesByBanks[]; extern u32 gHitMarker; @@ -107,8 +120,8 @@ extern u16 gBattle_WIN0V; extern u16 gBattle_BG2_Y; extern u32 gUnknown_03004284; extern u16 gBattle_BG2_X; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u16 gBattle_BG1_X; extern u16 gBattle_WIN0H; extern MainCallback gPreBattleCallback1; @@ -129,8 +142,52 @@ extern u16 gBattleWeather; extern u32 gBattleMoveDamage; extern struct BattlePokemon gBattleMons[]; extern u8 gBattleMoveFlags; +extern u8 BattleScript_FocusPunchSetUp[]; +extern u16 gDynamicBasePower; +extern u8 gCurrentTurnActionNumber; +extern void (* const gUnknown_081FA640[])(void); +extern void (* const gUnknown_081FA678[])(void); +extern u8* gBattlescriptCurrInstr; +extern u8 BattleScript_LinkBattleWonOrLost[]; +extern u8 BattleScript_PayDayMoneyAndPickUpItems[]; +extern u8 gUnknown_081D8E0D[]; +extern u8 BattleScript_LocalTrainerBattleWon[]; +extern u8 BattleScript_LocalBattleLost[]; +extern u8 BattleScript_GotAwaySafely[]; +extern u8 BattleScript_SmokeBallEscape[]; +extern u8 BattleScript_RanAwayUsingMonAbility[]; +extern u8 BattleScript_WildMonFled[]; +extern u8 BattleScript_ActionSwitch[]; +extern u8 BattleScript_PrintFailedToRunString[]; +extern const BattleCmdFunc gBattleScriptingCommandsTable[]; +extern u8 gCritMultiplier; +extern u8 gCurrMovePos; +extern u8 gUnknown_02024BE5; +extern u16 gChosenMove; +extern u8* gBattleScriptsForMoveEffects[]; +extern u16 gLastUsedItem; +extern u8 * const gBattlescriptsForBallThrow[]; +extern u8 * const gBattlescriptsForRunningByItem[]; +extern u8 * const gBattlescriptsForUsingItem[]; +extern u8 * const gBattlescriptsForSafariActions[]; +extern u8 gBattleTextBuff2[]; +extern u8 gNumSafariBalls; +extern u8 gUnknown_081FA70C[][3]; +extern u8 gUnknown_081FA71B[]; +extern u8 gUnknown_081FA71F[]; + static void BattlePrepIntroSlide(void); +void CheckFocusPunch_ClearVarsBeforeTurnStarts(void); +void SetActionsAndBanksTurnOrder(void); +static void TurnValuesCleanUp(u8); +void SpecialStatusesClear(void); +static void RunTurnActionsFunctions(void); +void HandleEndTurn_FinishBattle(); +static void FreeResetData_ReturnToOvOrDoEvolutions(void); +void TryEvolvePokemon(void); +static void ReturnFromBattleToOverworld(void); +static void WaitForEvoSceneToFinish(void); void sub_800E7C4(void) { @@ -179,8 +236,8 @@ void InitBattle(void) sub_80895F8(gUnknown_081F9674); SetUpWindowConfig(&gWindowConfig_81E6C58); ResetPaletteFade(); - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -468,7 +525,7 @@ void sub_800EC9C(void) { gPreBattleCallback1 = gMain.callback1; gMain.callback1 = sub_8010824; - SetMainCallback2(sub_800F808); + SetMainCallback2(BattleMainCB2); if (gBattleTypeFlags & BATTLE_TYPE_LINK) { gTrainerBattleOpponent = 0x800; @@ -826,7 +883,7 @@ void sub_800F298(void) { gPreBattleCallback1 = gMain.callback1; gMain.callback1 = sub_8010824; - SetMainCallback2(sub_800F808); + SetMainCallback2(BattleMainCB2); if (gBattleTypeFlags & BATTLE_TYPE_LINK) { gTrainerBattleOpponent = 0x800; @@ -837,7 +894,7 @@ void sub_800F298(void) } } -void sub_800F808(void) +void BattleMainCB2(void) { AnimateSprites(); BuildOamBuffer(); @@ -1001,8 +1058,8 @@ void sub_800FCD4(void) void sub_800FCFC(void) { Random(); // unused return value - REG_BG0HOFS = gUnknown_030042A4; - REG_BG0VOFS = gUnknown_030042A0; + REG_BG0HOFS = gBattle_BG0_X; + REG_BG0VOFS = gBattle_BG0_Y; REG_BG1HOFS = gBattle_BG1_X; REG_BG1VOFS = gBattle_BG1_Y; REG_BG2HOFS = gBattle_BG2_X; @@ -1155,8 +1212,8 @@ void c2_8011A1C(void) } SetUpWindowConfig(&gWindowConfig_81E6C58); ResetPaletteFade(); - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -1526,7 +1583,7 @@ void sub_8010874(void) gUnknown_02024C44[i] = 0; gUnknown_02024C4C[i] = 0; gUnknown_02024C5C[i] = 0xFF; - gLockedMove[i] = 0; + gLockedMoves[i] = 0; gUnknown_02024C2C[i] = 0; eFlashFireArr.arr[i] = 0; } @@ -1534,7 +1591,7 @@ void sub_8010874(void) for (i = 0; i < 2; i++) { gSideAffecting[i] = 0; - MEMSET_ALT(&gSideTimer[i], 0, 12, j, r4); + MEMSET_ALT(&gSideTimers[i], 0, 12, j, r4); } gBankAttacker = 0; @@ -1787,7 +1844,7 @@ static void BattlePrepIntroSlide(void) { if (gBattleExecBuffer == 0) { - gActiveBank = GetBankByPlayerAI(0); + gActiveBank = GetBankByIdentity(0); EmitIntroSlide(0, gBattleTerrain); MarkBufferBankForExecution(gActiveBank); gBattleMainFunc = sub_8011384; @@ -1891,7 +1948,7 @@ void bc_801333C(void) hpStatus[i].status = GetMonData(&gEnemyParty[i], MON_DATA_STATUS); } } - gActiveBank = GetBankByPlayerAI(1); + gActiveBank = GetBankByIdentity(1); EmitDrawPartyStatusSummary(0, hpStatus, 0x80); MarkBufferBankForExecution(gActiveBank); @@ -1909,7 +1966,7 @@ void bc_801333C(void) hpStatus[i].status = GetMonData(&gPlayerParty[i], MON_DATA_STATUS); } } - gActiveBank = GetBankByPlayerAI(0); + gActiveBank = GetBankByIdentity(0); EmitDrawPartyStatusSummary(0, hpStatus, 0x80); MarkBufferBankForExecution(gActiveBank); @@ -1944,7 +2001,7 @@ void bc_battle_begin_message(void) { if (gBattleExecBuffer == 0) { - gActiveBank = GetBankByPlayerAI(1); + gActiveBank = GetBankByIdentity(1); PrepareStringBattle(0, gActiveBank); gBattleMainFunc = sub_8011800; } @@ -1963,7 +2020,7 @@ void sub_8011800(void) { if (gBattleExecBuffer == 0) { - PrepareStringBattle(1, GetBankByPlayerAI(1)); + PrepareStringBattle(1, GetBankByIdentity(1)); gBattleMainFunc = sub_8011834; } } @@ -2015,7 +2072,7 @@ void sub_8011970(void) if (gBattleExecBuffer == 0) { if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI)) - PrepareStringBattle(1, GetBankByPlayerAI(0)); + PrepareStringBattle(1, GetBankByIdentity(0)); gBattleMainFunc = sub_80119B4; } } @@ -2075,13 +2132,13 @@ void BattleBeginFirstTurn(void) if (ewram16058 == 0) { for (i = 0; i < gNoOfAllBanks; i++) - gTurnOrder[i] = i; + gBanksByTurnOrder[i] = i; for (i = 0; i < gNoOfAllBanks - 1; i++) { for (j = i + 1; j < gNoOfAllBanks; j++) { - if (GetWhoStrikesFirst(gTurnOrder[i], gTurnOrder[j], 1) != 0) - sub_8012FBC(i, j); + if (GetWhoStrikesFirst(gBanksByTurnOrder[i], gBanksByTurnOrder[j], 1) != 0) + SwapTurnOrder(i, j); } } } @@ -2092,7 +2149,7 @@ void BattleBeginFirstTurn(void) } while (ewram16058 < gNoOfAllBanks) { - if (AbilityBattleEffects(0, gTurnOrder[ewram16058], 0, 0, 0) != 0) + if (AbilityBattleEffects(0, gBanksByTurnOrder[ewram16058], 0, 0, 0) != 0) r9++; ewram16058++; if (r9 != 0) @@ -2104,7 +2161,7 @@ void BattleBeginFirstTurn(void) return; while (ewram160F9 < gNoOfAllBanks) { - if (ItemBattleEffects(0, gTurnOrder[ewram160F9], 0) != 0) + if (ItemBattleEffects(0, gBanksByTurnOrder[ewram160F9], 0) != 0) r9++; ewram160F9++; if (r9 != 0) @@ -2123,7 +2180,7 @@ void BattleBeginFirstTurn(void) SpecialStatusesClear(); ewram160A6 = gAbsentBankFlags; gBattleMainFunc = sub_8012324; - sub_80156DC(); + ResetSentPokesToOpponentValue(); for (i = 0; i < 8; i++) gBattleCommunication[i] = 0; for (i = 0; i < gNoOfAllBanks; i++) @@ -2176,10 +2233,10 @@ void BattleTurnPassed(void) if (TurnBasedEffects() != 0) return; } - if (sub_80173A4() != 0) + if (HandleFaintedMonActions() != 0) return; ewram16059 = 0; - if (sub_80170DC() != 0) + if (HandleWishPerishSongOnTurnEnd() != 0) return; TurnValuesCleanUp(0); gHitMarker &= ~HITMARKER_NO_ATTACKSTRING; @@ -2195,8 +2252,8 @@ void BattleTurnPassed(void) gBattleCommunication[i] = 0; if (gBattleOutcome != 0) { - gFightStateTracker = 12; - gBattleMainFunc = sub_80138F0; + gCurrentActionFuncId = 12; + gBattleMainFunc = RunTurnActionsFunctions; return; } if (gBattleResults.battleTurnCounter < 0xFF) @@ -2319,8 +2376,8 @@ void sub_8012324(void) ewram16068arr(gActiveBank) = 6; if (!(gBattleTypeFlags & 0x40) && (r5 & 2) - && !(ewram160A6 & gBitTable[GetBankByPlayerAI(r5 ^ 2)]) - && gBattleCommunication[GetBankByPlayerAI(r5)] != 4) + && !(ewram160A6 & gBitTable[GetBankByIdentity(r5 ^ 2)]) + && gBattleCommunication[GetBankByIdentity(r5)] != 4) break; //_080123F8 if (ewram160A6 & gBitTable[gActiveBank]) @@ -2352,3 +2409,2982 @@ void sub_8012324(void) } } */ +__attribute__((naked)) +void sub_8012324(void) +{ + asm(".syntax 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, 0x1C\n\ + ldr r0, _08012340 @ =gBattleCommunication\n\ + movs r1, 0\n\ + strb r1, [r0, 0x4]\n\ + ldr r0, _08012344 @ =gActiveBank\n\ + strb r1, [r0]\n\ + ldr r0, _08012348 @ =gNoOfAllBanks\n\ + bl _08012F74\n\ + .align 2, 0\n\ +_08012340: .4byte gBattleCommunication\n\ +_08012344: .4byte gActiveBank\n\ +_08012348: .4byte gNoOfAllBanks\n\ +_0801234C:\n\ + ldr r4, _08012374 @ =gActiveBank\n\ + ldrb r0, [r4]\n\ + bl GetBankIdentity\n\ + lsls r0, 24\n\ + lsrs r5, r0, 24\n\ + ldr r1, _08012378 @ =gBattleCommunication\n\ + ldrb r0, [r4]\n\ + adds r0, r1\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x6\n\ + bls _08012368\n\ + bl _08012F66\n\ +_08012368:\n\ + lsls r0, 2\n\ + ldr r1, _0801237C @ =_08012380\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + mov pc, r0\n\ + .align 2, 0\n\ +_08012374: .4byte gActiveBank\n\ +_08012378: .4byte gBattleCommunication\n\ +_0801237C: .4byte _08012380\n\ + .align 2, 0\n\ +_08012380:\n\ + .4byte _0801239C\n\ + .4byte _080124C8\n\ + .4byte _08012A28\n\ + .4byte _08012DA8\n\ + .4byte _08012E50\n\ + .4byte _08012E94\n\ + .4byte _08012F38\n\ +_0801239C:\n\ + ldr r4, _08012434 @ =gSharedMem\n\ + ldr r0, _08012438 @ =gActiveBank\n\ + ldrb r0, [r0]\n\ + ldr r1, _0801243C @ =0x00016068\n\ + adds r0, r1\n\ + adds r0, r4\n\ + movs r1, 0x6\n\ + strb r1, [r0]\n\ + ldr r0, _08012440 @ =gBattleTypeFlags\n\ + ldrh r1, [r0]\n\ + movs r0, 0x40\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _080123F8\n\ + movs r1, 0x2\n\ + movs r0, 0x2\n\ + ands r0, r5\n\ + cmp r0, 0\n\ + beq _080123F8\n\ + eors r5, r1\n\ + adds r0, r5, 0\n\ + bl GetBankByIdentity\n\ + ldr r2, _08012444 @ =0x000160a6\n\ + adds r1, r4, r2\n\ + ldrb r1, [r1]\n\ + ldr r2, _08012448 @ =gBitTable\n\ + lsls r0, 24\n\ + lsrs r0, 22\n\ + adds r0, r2\n\ + ldr r0, [r0]\n\ + ands r1, r0\n\ + cmp r1, 0\n\ + bne _080123F8\n\ + ldr r4, _0801244C @ =gBattleCommunication\n\ + adds r0, r5, 0\n\ + bl GetBankByIdentity\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + adds r0, r4\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x4\n\ + beq _080123F8\n\ + bl _08012F66\n\ +_080123F8:\n\ + ldr r0, _08012434 @ =gSharedMem\n\ + ldr r3, _08012444 @ =0x000160a6\n\ + adds r0, r3\n\ + ldrb r3, [r0]\n\ + ldr r1, _08012448 @ =gBitTable\n\ + ldr r4, _08012438 @ =gActiveBank\n\ + ldrb r2, [r4]\n\ + lsls r0, r2, 2\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + ands r3, r0\n\ + cmp r3, 0\n\ + beq _08012468\n\ + ldr r0, _08012450 @ =gActionForBanks\n\ + adds r0, r2, r0\n\ + movs r1, 0xD\n\ + strb r1, [r0]\n\ + ldr r0, _08012440 @ =gBattleTypeFlags\n\ + ldrh r1, [r0]\n\ + movs r0, 0x40\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _08012454\n\ + ldr r0, _0801244C @ =gBattleCommunication\n\ + ldrb r1, [r4]\n\ + adds r1, r0\n\ + movs r0, 0x4\n\ + strb r0, [r1]\n\ + bl _08012F66\n\ + .align 2, 0\n\ +_08012434: .4byte gSharedMem\n\ +_08012438: .4byte gActiveBank\n\ +_0801243C: .4byte 0x00016068\n\ +_08012440: .4byte gBattleTypeFlags\n\ +_08012444: .4byte 0x000160a6\n\ +_08012448: .4byte gBitTable\n\ +_0801244C: .4byte gBattleCommunication\n\ +_08012450: .4byte gActionForBanks\n\ +_08012454:\n\ + ldr r0, _08012464 @ =gBattleCommunication\n\ + ldrb r1, [r4]\n\ + adds r1, r0\n\ + movs r0, 0x3\n\ + strb r0, [r1]\n\ + bl _08012F66\n\ + .align 2, 0\n\ +_08012464: .4byte gBattleCommunication\n\ +_08012468:\n\ + ldr r1, _0801249C @ =gBattleMons\n\ + movs r0, 0x58\n\ + muls r0, r2\n\ + adds r1, 0x50\n\ + adds r0, r1\n\ + ldr r1, [r0]\n\ + movs r0, 0x80\n\ + lsls r0, 5\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _08012488\n\ + movs r0, 0x80\n\ + lsls r0, 15\n\ + ands r1, r0\n\ + cmp r1, 0\n\ + beq _080124A8\n\ +_08012488:\n\ + ldr r0, _080124A0 @ =gActionForBanks\n\ + adds r0, r2, r0\n\ + strb r3, [r0]\n\ + ldr r1, _080124A4 @ =gBattleCommunication\n\ + ldrb r0, [r4]\n\ + adds r0, r1\n\ + movs r1, 0x3\n\ + strb r1, [r0]\n\ + bl _08012F66\n\ + .align 2, 0\n\ +_0801249C: .4byte gBattleMons\n\ +_080124A0: .4byte gActionForBanks\n\ +_080124A4: .4byte gBattleCommunication\n\ +_080124A8:\n\ + ldr r0, _080124C0 @ =gActionForBanks\n\ + ldrb r1, [r0]\n\ + ldr r0, _080124C4 @ =gBattleBufferB\n\ + ldrb r2, [r0, 0x1]\n\ + ldrb r0, [r0, 0x2]\n\ + lsls r0, 8\n\ + orrs r2, r0\n\ + movs r0, 0\n\ + bl Emitcmd18\n\ + bl _08012E32\n\ + .align 2, 0\n\ +_080124C0: .4byte gActionForBanks\n\ +_080124C4: .4byte gBattleBufferB\n\ +_080124C8:\n\ + ldr r4, _08012520 @ =gBattleExecBuffer\n\ + ldr r1, _08012524 @ =gBitTable\n\ + ldr r3, _08012528 @ =gActiveBank\n\ + ldrb r5, [r3]\n\ + lsls r0, r5, 2\n\ + adds r0, r1\n\ + ldr r2, [r0]\n\ + lsls r0, r2, 4\n\ + movs r1, 0xF0\n\ + lsls r1, 24\n\ + orrs r0, r1\n\ + orrs r0, r2\n\ + lsls r1, r2, 8\n\ + orrs r0, r1\n\ + lsls r2, 12\n\ + orrs r0, r2\n\ + ldr r1, [r4]\n\ + ands r1, r0\n\ + mov r8, r3\n\ + cmp r1, 0\n\ + beq _080124F6\n\ + bl _08012F66\n\ +_080124F6:\n\ + ldr r2, _0801252C @ =gActionForBanks\n\ + adds r2, r5, r2\n\ + ldr r1, _08012530 @ =gBattleBufferB\n\ + lsls r0, r5, 9\n\ + adds r1, 0x1\n\ + adds r0, r1\n\ + ldrb r0, [r0]\n\ + strb r0, [r2]\n\ + ldrb r0, [r3]\n\ + lsls r0, 9\n\ + adds r0, r1\n\ + ldrb r0, [r0]\n\ + cmp r0, 0xC\n\ + bls _08012514\n\ + b _08012968\n\ +_08012514:\n\ + lsls r0, 2\n\ + ldr r1, _08012534 @ =_08012538\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + mov pc, r0\n\ + .align 2, 0\n\ +_08012520: .4byte gBattleExecBuffer\n\ +_08012524: .4byte gBitTable\n\ +_08012528: .4byte gActiveBank\n\ +_0801252C: .4byte gActionForBanks\n\ +_08012530: .4byte gBattleBufferB\n\ +_08012534: .4byte _08012538\n\ + .align 2, 0\n\ +_08012538:\n\ + .4byte _0801256C\n\ + .4byte _080126B4\n\ + .4byte _080126E0\n\ + .4byte _08012968\n\ + .4byte _08012968\n\ + .4byte _080128B0\n\ + .4byte _08012908\n\ + .4byte _08012968\n\ + .4byte _08012968\n\ + .4byte _08012968\n\ + .4byte _08012968\n\ + .4byte _08012968\n\ + .4byte _0801292C\n\ +_0801256C:\n\ + bl AreAllMovesUnusable\n\ + lsls r0, 24\n\ + cmp r0, 0\n\ + beq _080125D0\n\ + ldr r0, _080125B4 @ =gBattleCommunication\n\ + ldr r2, _080125B8 @ =gActiveBank\n\ + ldrb r1, [r2]\n\ + adds r1, r0\n\ + movs r4, 0\n\ + movs r0, 0x5\n\ + strb r0, [r1]\n\ + ldr r3, _080125BC @ =gSharedMem\n\ + ldrb r0, [r2]\n\ + ldr r1, _080125C0 @ =0x00016060\n\ + adds r0, r1\n\ + adds r0, r3\n\ + strb r4, [r0]\n\ + ldrb r0, [r2]\n\ + ldr r4, _080125C4 @ =0x00016094\n\ + adds r0, r4\n\ + adds r0, r3\n\ + movs r1, 0x3\n\ + strb r1, [r0]\n\ + ldrb r1, [r2]\n\ + ldr r0, _080125C8 @ =0x00016010\n\ + adds r2, r1, r0\n\ + adds r2, r3\n\ + ldr r0, _080125CC @ =gBattleBufferB\n\ + lsls r1, 9\n\ + adds r0, 0x3\n\ + adds r1, r0\n\ + ldrb r0, [r1]\n\ + strb r0, [r2]\n\ + bl _08012F90\n\ + .align 2, 0\n\ +_080125B4: .4byte gBattleCommunication\n\ +_080125B8: .4byte gActiveBank\n\ +_080125BC: .4byte gSharedMem\n\ +_080125C0: .4byte 0x00016060\n\ +_080125C4: .4byte 0x00016094\n\ +_080125C8: .4byte 0x00016010\n\ +_080125CC: .4byte gBattleBufferB\n\ +_080125D0:\n\ + ldr r1, _080125FC @ =gDisableStructs\n\ + ldr r5, _08012600 @ =gActiveBank\n\ + ldrb r4, [r5]\n\ + lsls r0, r4, 3\n\ + subs r0, r4\n\ + lsls r0, 2\n\ + adds r0, r1\n\ + ldrh r2, [r0, 0x6]\n\ + cmp r2, 0\n\ + beq _0801260C\n\ + ldr r1, _08012604 @ =gChosenMovesByBanks\n\ + lsls r0, r4, 1\n\ + adds r0, r1\n\ + strh r2, [r0]\n\ + ldr r1, _08012608 @ =gBattleCommunication\n\ + ldrb r0, [r5]\n\ + adds r0, r1\n\ + movs r1, 0x3\n\ + strb r1, [r0]\n\ + bl _08012F90\n\ + .align 2, 0\n\ +_080125FC: .4byte gDisableStructs\n\ +_08012600: .4byte gActiveBank\n\ +_08012604: .4byte gChosenMovesByBanks\n\ +_08012608: .4byte gBattleCommunication\n\ +_0801260C:\n\ + add r2, sp, 0x4\n\ + ldr r3, _080126AC @ =gBattleMons\n\ + movs r1, 0x58\n\ + adds r0, r4, 0\n\ + muls r0, r1\n\ + adds r0, r3\n\ + ldrh r0, [r0]\n\ + strh r0, [r2, 0x10]\n\ + ldrb r0, [r5]\n\ + muls r0, r1\n\ + adds r0, r3\n\ + adds r0, 0x21\n\ + ldrb r0, [r0]\n\ + strb r0, [r2, 0x12]\n\ + ldrb r0, [r5]\n\ + muls r0, r1\n\ + adds r0, r3\n\ + adds r0, 0x22\n\ + ldrb r0, [r0]\n\ + strb r0, [r2, 0x13]\n\ + movs r4, 0\n\ + mov r1, sp\n\ + adds r1, 0xC\n\ + str r1, [sp, 0x18]\n\ + add r2, sp, 0x10\n\ + mov r10, r2\n\ + mov r8, r3\n\ + adds r7, r5, 0\n\ + movs r6, 0x58\n\ + movs r3, 0xC\n\ + add r3, r8\n\ + mov r9, r3\n\ + add r5, sp, 0x4\n\ +_0801264E:\n\ + lsls r2, r4, 1\n\ + ldrb r0, [r7]\n\ + muls r0, r6\n\ + adds r0, r2, r0\n\ + add r0, r9\n\ + ldrh r0, [r0]\n\ + strh r0, [r5]\n\ + ldr r0, [sp, 0x18]\n\ + adds r3, r0, r4\n\ + ldrb r0, [r7]\n\ + muls r0, r6\n\ + adds r0, r4, r0\n\ + mov r1, r8\n\ + adds r1, 0x24\n\ + adds r0, r1\n\ + ldrb r0, [r0]\n\ + strb r0, [r3]\n\ + ldrb r0, [r7]\n\ + adds r1, r0, 0\n\ + muls r1, r6\n\ + adds r2, r1\n\ + add r2, r9\n\ + ldrh r0, [r2]\n\ + add r1, r8\n\ + adds r1, 0x3B\n\ + ldrb r1, [r1]\n\ + lsls r2, r4, 24\n\ + lsrs r2, 24\n\ + bl CalculatePPWithBonus\n\ + mov r2, r10\n\ + adds r1, r2, r4\n\ + strb r0, [r1]\n\ + adds r5, 0x2\n\ + adds r4, 0x1\n\ + cmp r4, 0x3\n\ + ble _0801264E\n\ + ldr r0, _080126B0 @ =gBattleTypeFlags\n\ + ldrb r0, [r0]\n\ + movs r1, 0x1\n\ + ands r1, r0\n\ + movs r0, 0\n\ + movs r2, 0\n\ + add r3, sp, 0x4\n\ + bl Emitcmd20\n\ + b _0801289E\n\ + .align 2, 0\n\ +_080126AC: .4byte gBattleMons\n\ +_080126B0: .4byte gBattleTypeFlags\n\ +_080126B4:\n\ + ldr r0, _080126D0 @ =gBattleTypeFlags\n\ + ldrh r1, [r0]\n\ + ldr r0, _080126D4 @ =0x00000902\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _080126C2\n\ + b _08012908\n\ +_080126C2:\n\ + ldr r1, _080126D8 @ =gUnknown_02024C1C\n\ + mov r3, r8\n\ + ldrb r0, [r3]\n\ + lsls r0, 2\n\ + adds r0, r1\n\ + ldr r1, _080126DC @ =BattleScript_ActionSelectionItemsCantBeUsed\n\ + b _080129CC\n\ + .align 2, 0\n\ +_080126D0: .4byte gBattleTypeFlags\n\ +_080126D4: .4byte 0x00000902\n\ +_080126D8: .4byte gUnknown_02024C1C\n\ +_080126DC: .4byte BattleScript_ActionSelectionItemsCantBeUsed\n\ +_080126E0:\n\ + ldr r3, _08012738 @ =gSharedMem\n\ + ldr r5, _0801273C @ =gActiveBank\n\ + ldrb r0, [r5]\n\ + ldr r4, _08012740 @ =0x00016064\n\ + adds r1, r0, r4\n\ + adds r1, r3\n\ + ldr r2, _08012744 @ =gBattlePartyID\n\ + lsls r0, 1\n\ + adds r0, r2\n\ + ldrh r0, [r0]\n\ + strb r0, [r1]\n\ + ldr r7, _08012748 @ =gBattleMons\n\ + ldrb r2, [r5]\n\ + movs r6, 0x58\n\ + adds r0, r2, 0\n\ + muls r0, r6\n\ + adds r1, r7, 0\n\ + adds r1, 0x50\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + ldr r1, _0801274C @ =0x0400e000\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _08012722\n\ + ldr r0, _08012750 @ =gStatuses3\n\ + lsls r1, r2, 2\n\ + adds r1, r0\n\ + ldr r1, [r1]\n\ + movs r0, 0x80\n\ + lsls r0, 3\n\ + ands r1, r0\n\ + cmp r1, 0\n\ + beq _08012758\n\ +_08012722:\n\ + lsls r0, r2, 1\n\ + adds r0, r2\n\ + ldr r2, _08012754 @ =0x0001606c\n\ + adds r1, r3, r2\n\ + adds r0, r1\n\ + str r0, [sp]\n\ + movs r0, 0\n\ + movs r1, 0x2\n\ + movs r2, 0x6\n\ + b _0801286C\n\ + .align 2, 0\n\ +_08012738: .4byte gSharedMem\n\ +_0801273C: .4byte gActiveBank\n\ +_08012740: .4byte 0x00016064\n\ +_08012744: .4byte gBattlePartyID\n\ +_08012748: .4byte gBattleMons\n\ +_0801274C: .4byte 0x0400e000\n\ +_08012750: .4byte gStatuses3\n\ +_08012754: .4byte 0x0001606c\n\ +_08012758:\n\ + str r1, [sp]\n\ + movs r0, 0xC\n\ + adds r1, r2, 0\n\ + movs r2, 0x17\n\ + movs r3, 0\n\ + bl AbilityBattleEffects\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0\n\ + bne _080127E0\n\ + ldrb r1, [r5]\n\ + str r4, [sp]\n\ + movs r0, 0xC\n\ + movs r2, 0x47\n\ + movs r3, 0\n\ + bl AbilityBattleEffects\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0\n\ + beq _080127A8\n\ + ldrb r0, [r5]\n\ + muls r0, r6\n\ + adds r1, r0, r7\n\ + adds r0, r1, 0\n\ + adds r0, 0x21\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x2\n\ + beq _080127A8\n\ + adds r0, r1, 0\n\ + adds r0, 0x22\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x2\n\ + beq _080127A8\n\ + adds r0, r1, 0\n\ + adds r0, 0x20\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x1A\n\ + bne _080127E0\n\ +_080127A8:\n\ + ldr r5, _08012808 @ =gActiveBank\n\ + ldrb r1, [r5]\n\ + movs r0, 0\n\ + str r0, [sp]\n\ + movs r0, 0xF\n\ + movs r2, 0x2A\n\ + movs r3, 0\n\ + bl AbilityBattleEffects\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0\n\ + beq _08012818\n\ + ldr r2, _0801280C @ =gBattleMons\n\ + ldrb r1, [r5]\n\ + movs r0, 0x58\n\ + muls r0, r1\n\ + adds r1, r0, r2\n\ + adds r0, r1, 0\n\ + adds r0, 0x21\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x8\n\ + beq _080127E0\n\ + adds r0, r1, 0\n\ + adds r0, 0x22\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x8\n\ + bne _08012818\n\ +_080127E0:\n\ + subs r1, r4, 0x1\n\ + lsls r1, 4\n\ + movs r0, 0x4\n\ + orrs r1, r0\n\ + lsls r1, 24\n\ + lsrs r1, 24\n\ + ldr r0, _08012810 @ =gLastUsedAbility\n\ + ldrb r3, [r0]\n\ + ldr r0, _08012808 @ =gActiveBank\n\ + ldrb r2, [r0]\n\ + lsls r0, r2, 1\n\ + adds r0, r2\n\ + ldr r2, _08012814 @ =gSharedMem + 0x1606C\n\ + adds r0, r2\n\ + str r0, [sp]\n\ + movs r0, 0\n\ + movs r2, 0x6\n\ + bl EmitChoosePokemon\n\ + b _0801289E\n\ + .align 2, 0\n\ +_08012808: .4byte gActiveBank\n\ +_0801280C: .4byte gBattleMons\n\ +_08012810: .4byte gLastUsedAbility\n\ +_08012814: .4byte gSharedMem + 0x1606C\n\ +_08012818:\n\ + ldr r0, _08012830 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + mov r8, r0\n\ + cmp r1, 0x2\n\ + bne _08012840\n\ + ldr r0, _08012834 @ =gActionForBanks\n\ + ldrb r0, [r0]\n\ + cmp r0, 0x2\n\ + bne _08012840\n\ + ldr r3, _08012838 @ =gSharedMem\n\ + ldr r4, _0801283C @ =0x00016068\n\ + b _08012854\n\ + .align 2, 0\n\ +_08012830: .4byte gActiveBank\n\ +_08012834: .4byte gActionForBanks\n\ +_08012838: .4byte gSharedMem\n\ +_0801283C: .4byte 0x00016068\n\ +_08012840:\n\ + mov r2, r8\n\ + ldrb r0, [r2]\n\ + cmp r0, 0x3\n\ + bne _08012884\n\ + ldr r0, _08012874 @ =gActionForBanks\n\ + ldrb r0, [r0, 0x1]\n\ + cmp r0, 0x2\n\ + bne _08012884\n\ + ldr r3, _08012878 @ =gSharedMem\n\ + ldr r4, _0801287C @ =0x00016069\n\ +_08012854:\n\ + adds r0, r3, r4\n\ + ldrb r2, [r0]\n\ + mov r0, r8\n\ + ldrb r1, [r0]\n\ + lsls r0, r1, 1\n\ + adds r0, r1\n\ + ldr r1, _08012880 @ =0x0001606c\n\ + adds r3, r1\n\ + adds r0, r3\n\ + str r0, [sp]\n\ + movs r0, 0\n\ + movs r1, 0\n\ +_0801286C:\n\ + movs r3, 0\n\ + bl EmitChoosePokemon\n\ + b _0801289E\n\ + .align 2, 0\n\ +_08012874: .4byte gActionForBanks\n\ +_08012878: .4byte gSharedMem\n\ +_0801287C: .4byte 0x00016069\n\ +_08012880: .4byte 0x0001606c\n\ +_08012884:\n\ + ldr r0, _080128A8 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + lsls r0, r1, 1\n\ + adds r0, r1\n\ + ldr r1, _080128AC @ =gSharedMem + 0x1606C\n\ + adds r0, r1\n\ + str r0, [sp]\n\ + movs r0, 0\n\ + movs r1, 0\n\ + movs r2, 0x6\n\ + movs r3, 0\n\ + bl EmitChoosePokemon\n\ +_0801289E:\n\ + ldr r0, _080128A8 @ =gActiveBank\n\ + ldrb r0, [r0]\n\ + bl MarkBufferBankForExecution\n\ + b _08012968\n\ + .align 2, 0\n\ +_080128A8: .4byte gActiveBank\n\ +_080128AC: .4byte gSharedMem + 0x1606C\n\ +_080128B0:\n\ + bl PlayerPartyAndPokemonStorageFull\n\ + lsls r0, 24\n\ + cmp r0, 0\n\ + beq _08012968\n\ + ldr r1, _080128EC @ =gUnknown_02024C1C\n\ + ldr r2, _080128F0 @ =gActiveBank\n\ + ldrb r0, [r2]\n\ + lsls r0, 2\n\ + adds r0, r1\n\ + ldr r1, _080128F4 @ =BattleScript_PrintFullBox\n\ + str r1, [r0]\n\ + ldr r0, _080128F8 @ =gBattleCommunication\n\ + ldrb r1, [r2]\n\ + adds r1, r0\n\ + movs r3, 0\n\ + movs r0, 0x5\n\ + strb r0, [r1]\n\ + ldr r1, _080128FC @ =gSharedMem\n\ + ldrb r0, [r2]\n\ + ldr r4, _08012900 @ =0x00016060\n\ + adds r0, r4\n\ + adds r0, r1\n\ + strb r3, [r0]\n\ + ldrb r0, [r2]\n\ + ldr r2, _08012904 @ =0x00016094\n\ + adds r0, r2\n\ + adds r0, r1\n\ + strb r3, [r0]\n\ + b _08012F90\n\ + .align 2, 0\n\ +_080128EC: .4byte gUnknown_02024C1C\n\ +_080128F0: .4byte gActiveBank\n\ +_080128F4: .4byte BattleScript_PrintFullBox\n\ +_080128F8: .4byte gBattleCommunication\n\ +_080128FC: .4byte gSharedMem\n\ +_08012900: .4byte 0x00016060\n\ +_08012904: .4byte 0x00016094\n\ +_08012908:\n\ + ldr r4, _08012924 @ =gActiveBank\n\ + ldrb r0, [r4]\n\ + lsls r1, r0, 1\n\ + adds r1, r0\n\ + ldr r0, _08012928 @ =gSharedMem + 0x1606C\n\ + adds r1, r0\n\ + movs r0, 0\n\ + bl EmitOpenBag\n\ + ldrb r0, [r4]\n\ + bl MarkBufferBankForExecution\n\ + b _08012968\n\ + .align 2, 0\n\ +_08012924: .4byte gActiveBank\n\ +_08012928: .4byte gSharedMem + 0x1606C\n\ +_0801292C:\n\ + ldr r4, _08012964 @ =gBattleCommunication\n\ + mov r3, r8\n\ + ldrb r1, [r3]\n\ + adds r1, r4\n\ + movs r5, 0\n\ + movs r0, 0x6\n\ + strb r0, [r1]\n\ + ldrb r0, [r3]\n\ + bl GetBankIdentity\n\ + movs r1, 0x2\n\ + eors r0, r1\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + bl GetBankByIdentity\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + adds r0, r4\n\ + strb r5, [r0]\n\ + movs r0, 0\n\ + bl Emitcmd50\n\ + mov r4, r8\n\ + ldrb r0, [r4]\n\ + bl MarkBufferBankForExecution\n\ + b _08012F90\n\ + .align 2, 0\n\ +_08012964: .4byte gBattleCommunication\n\ +_08012968:\n\ + ldr r0, _08012994 @ =gBattleTypeFlags\n\ + ldrh r1, [r0]\n\ + movs r0, 0xA\n\ + ands r0, r1\n\ + cmp r0, 0x8\n\ + bne _080129A8\n\ + ldr r0, _08012998 @ =gBattleBufferB\n\ + ldr r4, _0801299C @ =gActiveBank\n\ + ldrb r1, [r4]\n\ + lsls r1, 9\n\ + adds r0, 0x1\n\ + adds r1, r0\n\ + ldrb r0, [r1]\n\ + cmp r0, 0x3\n\ + bne _080129A8\n\ + ldr r0, _080129A0 @ =BattleScript_PrintCantRunFromTrainer\n\ + bl BattleScriptExecute\n\ + ldr r1, _080129A4 @ =gBattleCommunication\n\ + ldrb r0, [r4]\n\ + adds r0, r1\n\ + b _08012BFE\n\ + .align 2, 0\n\ +_08012994: .4byte gBattleTypeFlags\n\ +_08012998: .4byte gBattleBufferB\n\ +_0801299C: .4byte gActiveBank\n\ +_080129A0: .4byte BattleScript_PrintCantRunFromTrainer\n\ +_080129A4: .4byte gBattleCommunication\n\ +_080129A8:\n\ + bl CanRunFromBattle\n\ + lsls r0, 24\n\ + cmp r0, 0\n\ + beq _08012A14\n\ + ldr r0, _080129F4 @ =gBattleBufferB\n\ + ldr r3, _080129F8 @ =gActiveBank\n\ + ldrb r2, [r3]\n\ + lsls r1, r2, 9\n\ + adds r0, 0x1\n\ + adds r1, r0\n\ + ldrb r0, [r1]\n\ + cmp r0, 0x3\n\ + bne _08012A14\n\ + ldr r1, _080129FC @ =gUnknown_02024C1C\n\ + lsls r0, r2, 2\n\ + adds r0, r1\n\ + ldr r1, _08012A00 @ =BattleScript_PrintCantEscapeFromBattle\n\ +_080129CC:\n\ + str r1, [r0]\n\ + ldr r0, _08012A04 @ =gBattleCommunication\n\ + ldrb r1, [r3]\n\ + adds r1, r0\n\ + movs r2, 0\n\ + movs r0, 0x5\n\ + strb r0, [r1]\n\ + ldr r1, _08012A08 @ =gSharedMem\n\ + ldrb r0, [r3]\n\ + ldr r4, _08012A0C @ =0x00016060\n\ + adds r0, r4\n\ + adds r0, r1\n\ + strb r2, [r0]\n\ + ldrb r0, [r3]\n\ + ldr r3, _08012A10 @ =0x00016094\n\ + adds r0, r3\n\ + adds r0, r1\n\ + strb r2, [r0]\n\ + b _08012F90\n\ + .align 2, 0\n\ +_080129F4: .4byte gBattleBufferB\n\ +_080129F8: .4byte gActiveBank\n\ +_080129FC: .4byte gUnknown_02024C1C\n\ +_08012A00: .4byte BattleScript_PrintCantEscapeFromBattle\n\ +_08012A04: .4byte gBattleCommunication\n\ +_08012A08: .4byte gSharedMem\n\ +_08012A0C: .4byte 0x00016060\n\ +_08012A10: .4byte 0x00016094\n\ +_08012A14:\n\ + ldr r2, _08012A20 @ =gBattleCommunication\n\ + ldr r0, _08012A24 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012A20: .4byte gBattleCommunication\n\ +_08012A24: .4byte gActiveBank\n\ +_08012A28:\n\ + ldr r4, _08012A6C @ =gBattleExecBuffer\n\ + ldr r1, _08012A70 @ =gBitTable\n\ + ldr r3, _08012A74 @ =gActiveBank\n\ + ldrb r5, [r3]\n\ + lsls r0, r5, 2\n\ + adds r0, r1\n\ + ldr r2, [r0]\n\ + lsls r0, r2, 4\n\ + movs r1, 0xF0\n\ + lsls r1, 24\n\ + orrs r0, r1\n\ + orrs r0, r2\n\ + lsls r1, r2, 8\n\ + orrs r0, r1\n\ + lsls r2, 12\n\ + orrs r0, r2\n\ + ldr r1, [r4]\n\ + ands r1, r0\n\ + mov r8, r3\n\ + cmp r1, 0\n\ + beq _08012A54\n\ + b _08012F66\n\ +_08012A54:\n\ + ldr r1, _08012A78 @ =gActionForBanks\n\ + adds r0, r5, r1\n\ + ldrb r0, [r0]\n\ + adds r3, r1, 0\n\ + cmp r0, 0x9\n\ + bls _08012A62\n\ + b _08012F66\n\ +_08012A62:\n\ + lsls r0, 2\n\ + ldr r1, _08012A7C @ =_08012A80\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + mov pc, r0\n\ + .align 2, 0\n\ +_08012A6C: .4byte gBattleExecBuffer\n\ +_08012A70: .4byte gBitTable\n\ +_08012A74: .4byte gActiveBank\n\ +_08012A78: .4byte gActionForBanks\n\ +_08012A7C: .4byte _08012A80\n\ + .align 2, 0\n\ +_08012A80:\n\ + .4byte _08012AA8\n\ + .4byte _08012BB0\n\ + .4byte _08012BE8\n\ + .4byte _08012CE0\n\ + .4byte _08012D04\n\ + .4byte _08012D18\n\ + .4byte _08012D2C\n\ + .4byte _08012D5C\n\ + .4byte _08012D70\n\ + .4byte _08012D94\n\ +_08012AA8:\n\ + ldr r0, _08012AC8 @ =gBattleBufferB\n\ + mov r1, r8\n\ + ldrb r4, [r1]\n\ + lsls r1, r4, 9\n\ + adds r2, r0, 0x1\n\ + adds r1, r2\n\ + ldrb r1, [r1]\n\ + adds r6, r0, 0\n\ + cmp r1, 0x9\n\ + bgt _08012ACC\n\ + cmp r1, 0x3\n\ + blt _08012ACC\n\ + adds r0, r4, r3\n\ + strb r1, [r0]\n\ + b _08012F90\n\ + .align 2, 0\n\ +_08012AC8: .4byte gBattleBufferB\n\ +_08012ACC:\n\ + adds r3, r6, 0\n\ + mov r5, r8\n\ + ldrb r4, [r5]\n\ + lsls r1, r4, 9\n\ + adds r7, r3, 0x2\n\ + adds r0, r1, r7\n\ + ldrb r2, [r0]\n\ + adds r3, 0x3\n\ + mov r9, r3\n\ + add r1, r9\n\ + ldrb r0, [r1]\n\ + lsls r0, 8\n\ + orrs r2, r0\n\ + ldr r0, _08012AF4 @ =0x0000ffff\n\ + cmp r2, r0\n\ + bne _08012AFC\n\ + ldr r0, _08012AF8 @ =gBattleCommunication\n\ + adds r0, r4, r0\n\ + b _08012BFE\n\ + .align 2, 0\n\ +_08012AF4: .4byte 0x0000ffff\n\ +_08012AF8: .4byte gBattleCommunication\n\ +_08012AFC:\n\ + bl TrySetCantSelectMoveBattleScript\n\ + lsls r0, 24\n\ + cmp r0, 0\n\ + beq _08012B48\n\ + ldr r0, _08012B38 @ =gBattleCommunication\n\ + ldrb r1, [r5]\n\ + adds r1, r0\n\ + movs r2, 0\n\ + movs r0, 0x5\n\ + strb r0, [r1]\n\ + ldr r3, _08012B3C @ =gSharedMem\n\ + ldrb r0, [r5]\n\ + ldr r4, _08012B40 @ =0x00016060\n\ + adds r0, r4\n\ + adds r0, r3\n\ + strb r2, [r0]\n\ + ldrb r0, [r5]\n\ + lsls r0, 9\n\ + adds r1, r6, 0x1\n\ + adds r0, r1\n\ + strb r2, [r0]\n\ + ldrb r0, [r5]\n\ + ldr r1, _08012B44 @ =0x00016094\n\ + adds r0, r1\n\ + adds r0, r3\n\ + movs r1, 0x1\n\ + strb r1, [r0]\n\ + b _08012F90\n\ + .align 2, 0\n\ +_08012B38: .4byte gBattleCommunication\n\ +_08012B3C: .4byte gSharedMem\n\ +_08012B40: .4byte 0x00016060\n\ +_08012B44: .4byte 0x00016094\n\ +_08012B48:\n\ + ldr r6, _08012B98 @ =gSharedMem\n\ + mov r2, r8\n\ + ldrb r0, [r2]\n\ + ldr r2, _08012B9C @ =0x0001608c\n\ + adds r1, r0, r2\n\ + adds r1, r6\n\ + lsls r0, 9\n\ + adds r0, r7\n\ + ldrb r0, [r0]\n\ + strb r0, [r1]\n\ + ldr r0, _08012BA0 @ =gChosenMovesByBanks\n\ + mov r4, r8\n\ + ldrb r3, [r4]\n\ + lsls r5, r3, 1\n\ + adds r5, r0\n\ + ldr r4, _08012BA4 @ =gBattleMons\n\ + adds r2, r3, r2\n\ + adds r2, r6\n\ + ldrb r0, [r2]\n\ + lsls r0, 1\n\ + movs r1, 0x58\n\ + muls r1, r3\n\ + adds r0, r1\n\ + adds r4, 0xC\n\ + adds r0, r4\n\ + ldrh r0, [r0]\n\ + strh r0, [r5]\n\ + mov r1, r8\n\ + ldrb r0, [r1]\n\ + ldr r2, _08012BA8 @ =0x00016010\n\ + adds r1, r0, r2\n\ + adds r1, r6\n\ + lsls r0, 9\n\ + add r0, r9\n\ + ldrb r0, [r0]\n\ + strb r0, [r1]\n\ + ldr r0, _08012BAC @ =gBattleCommunication\n\ + mov r3, r8\n\ + ldrb r1, [r3]\n\ + b _08012E3C\n\ + .align 2, 0\n\ +_08012B98: .4byte gSharedMem\n\ +_08012B9C: .4byte 0x0001608c\n\ +_08012BA0: .4byte gChosenMovesByBanks\n\ +_08012BA4: .4byte gBattleMons\n\ +_08012BA8: .4byte 0x00016010\n\ +_08012BAC: .4byte gBattleCommunication\n\ +_08012BB0:\n\ + ldr r2, _08012BD8 @ =gBattleBufferB\n\ + ldr r5, _08012BDC @ =gActiveBank\n\ + ldrb r4, [r5]\n\ + lsls r1, r4, 9\n\ + adds r0, r2, 0x1\n\ + adds r0, r1, r0\n\ + ldrb r3, [r0]\n\ + adds r2, 0x2\n\ + adds r1, r2\n\ + ldrb r0, [r1]\n\ + lsls r0, 8\n\ + orrs r3, r0\n\ + cmp r3, 0\n\ + bne _08012BCE\n\ + b _08012F60\n\ +_08012BCE:\n\ + ldr r0, _08012BE0 @ =gLastUsedItem\n\ + strh r3, [r0]\n\ + ldr r0, _08012BE4 @ =gBattleCommunication\n\ + ldrb r1, [r5]\n\ + b _08012E3C\n\ + .align 2, 0\n\ +_08012BD8: .4byte gBattleBufferB\n\ +_08012BDC: .4byte gActiveBank\n\ +_08012BE0: .4byte gLastUsedItem\n\ +_08012BE4: .4byte gBattleCommunication\n\ +_08012BE8:\n\ + ldr r4, _08012C04 @ =gBattleBufferB\n\ + ldr r7, _08012C08 @ =gActiveBank\n\ + ldrb r2, [r7]\n\ + lsls r0, r2, 9\n\ + adds r1, r4, 0x1\n\ + adds r0, r1\n\ + ldrb r1, [r0]\n\ + cmp r1, 0x6\n\ + bne _08012C10\n\ + ldr r0, _08012C0C @ =gBattleCommunication\n\ + adds r0, r2, r0\n\ +_08012BFE:\n\ + movs r1, 0\n\ + strb r1, [r0]\n\ + b _08012F66\n\ + .align 2, 0\n\ +_08012C04: .4byte gBattleBufferB\n\ +_08012C08: .4byte gActiveBank\n\ +_08012C0C: .4byte gBattleCommunication\n\ +_08012C10:\n\ + ldr r0, _08012CC4 @ =gSharedMem\n\ + mov r12, r0\n\ + ldr r3, _08012CC8 @ =0x00016068\n\ + adds r0, r2, r3\n\ + add r0, r12\n\ + strb r1, [r0]\n\ + ldr r0, _08012CCC @ =gBattleTypeFlags\n\ + ldrh r1, [r0]\n\ + movs r0, 0x40\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + beq _08012CBE\n\ + ldrb r0, [r7]\n\ + lsls r1, r0, 1\n\ + adds r1, r0\n\ + ldr r5, _08012CD0 @ =0x0001606c\n\ + adds r1, r5\n\ + add r1, r12\n\ + ldrb r2, [r1]\n\ + movs r0, 0xF\n\ + ands r0, r2\n\ + strb r0, [r1]\n\ + ldrb r0, [r7]\n\ + lsls r2, r0, 1\n\ + adds r2, r0\n\ + adds r2, r5\n\ + add r2, r12\n\ + lsls r0, 9\n\ + adds r6, r4, 0x2\n\ + adds r0, r6\n\ + ldrb r1, [r0]\n\ + movs r3, 0xF0\n\ + adds r0, r3, 0\n\ + ands r0, r1\n\ + ldrb r1, [r2]\n\ + orrs r0, r1\n\ + strb r0, [r2]\n\ + ldrb r0, [r7]\n\ + lsls r1, r0, 1\n\ + adds r1, r0\n\ + ldr r2, _08012CD4 @ =0x0001606d\n\ + adds r1, r2\n\ + add r1, r12\n\ + lsls r0, 9\n\ + adds r4, 0x3\n\ + mov r8, r4\n\ + add r0, r8\n\ + ldrb r0, [r0]\n\ + strb r0, [r1]\n\ + ldrb r0, [r7]\n\ + movs r4, 0x2\n\ + eors r0, r4\n\ + lsls r1, r0, 1\n\ + adds r1, r0\n\ + adds r1, r5\n\ + add r1, r12\n\ + ldrb r2, [r1]\n\ + adds r0, r3, 0\n\ + ands r0, r2\n\ + strb r0, [r1]\n\ + ldrb r0, [r7]\n\ + eors r0, r4\n\ + lsls r1, r0, 1\n\ + adds r1, r0\n\ + adds r1, r5\n\ + add r1, r12\n\ + ldrb r0, [r7]\n\ + lsls r0, 9\n\ + adds r0, r6\n\ + ldrb r0, [r0]\n\ + ands r3, r0\n\ + lsrs r3, 4\n\ + ldrb r0, [r1]\n\ + orrs r3, r0\n\ + strb r3, [r1]\n\ + ldrb r0, [r7]\n\ + eors r4, r0\n\ + lsls r1, r4, 1\n\ + adds r1, r4\n\ + ldr r3, _08012CD8 @ =0x0001606e\n\ + adds r1, r3\n\ + add r1, r12\n\ + ldrb r0, [r7]\n\ + lsls r0, 9\n\ + add r0, r8\n\ + ldrb r0, [r0]\n\ + strb r0, [r1]\n\ +_08012CBE:\n\ + ldr r0, _08012CDC @ =gBattleCommunication\n\ + ldrb r1, [r7]\n\ + b _08012E3C\n\ + .align 2, 0\n\ +_08012CC4: .4byte gSharedMem\n\ +_08012CC8: .4byte 0x00016068\n\ +_08012CCC: .4byte gBattleTypeFlags\n\ +_08012CD0: .4byte 0x0001606c\n\ +_08012CD4: .4byte 0x0001606d\n\ +_08012CD8: .4byte 0x0001606e\n\ +_08012CDC: .4byte gBattleCommunication\n\ +_08012CE0:\n\ + ldr r2, _08012CF8 @ =gHitMarker\n\ + ldr r0, [r2]\n\ + movs r1, 0x80\n\ + lsls r1, 8\n\ + orrs r0, r1\n\ + str r0, [r2]\n\ + ldr r2, _08012CFC @ =gBattleCommunication\n\ + ldr r0, _08012D00 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012CF8: .4byte gHitMarker\n\ +_08012CFC: .4byte gBattleCommunication\n\ +_08012D00: .4byte gActiveBank\n\ +_08012D04:\n\ + ldr r2, _08012D10 @ =gBattleCommunication\n\ + ldr r0, _08012D14 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012D10: .4byte gBattleCommunication\n\ +_08012D14: .4byte gActiveBank\n\ +_08012D18:\n\ + ldr r2, _08012D24 @ =gBattleCommunication\n\ + ldr r0, _08012D28 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012D24: .4byte gBattleCommunication\n\ +_08012D28: .4byte gActiveBank\n\ +_08012D2C:\n\ + ldr r2, _08012D50 @ =gBattleBufferB\n\ + ldr r0, _08012D54 @ =gActiveBank\n\ + ldrb r4, [r0]\n\ + lsls r1, r4, 9\n\ + adds r0, r2, 0x1\n\ + adds r0, r1, r0\n\ + ldrb r3, [r0]\n\ + adds r2, 0x2\n\ + adds r1, r2\n\ + ldrb r0, [r1]\n\ + lsls r0, 8\n\ + orrs r3, r0\n\ + cmp r3, 0\n\ + bne _08012D4A\n\ + b _08012F60\n\ +_08012D4A:\n\ + ldr r1, _08012D58 @ =gBattleCommunication\n\ + adds r1, r4, r1\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012D50: .4byte gBattleBufferB\n\ +_08012D54: .4byte gActiveBank\n\ +_08012D58: .4byte gBattleCommunication\n\ +_08012D5C:\n\ + ldr r2, _08012D68 @ =gBattleCommunication\n\ + ldr r0, _08012D6C @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012D68: .4byte gBattleCommunication\n\ +_08012D6C: .4byte gActiveBank\n\ +_08012D70:\n\ + ldr r2, _08012D88 @ =gHitMarker\n\ + ldr r0, [r2]\n\ + movs r1, 0x80\n\ + lsls r1, 8\n\ + orrs r0, r1\n\ + str r0, [r2]\n\ + ldr r2, _08012D8C @ =gBattleCommunication\n\ + ldr r0, _08012D90 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012D88: .4byte gHitMarker\n\ +_08012D8C: .4byte gBattleCommunication\n\ +_08012D90: .4byte gActiveBank\n\ +_08012D94:\n\ + ldr r2, _08012DA0 @ =gBattleCommunication\n\ + ldr r0, _08012DA4 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, r2\n\ + b _08012E3E\n\ + .align 2, 0\n\ +_08012DA0: .4byte gBattleCommunication\n\ +_08012DA4: .4byte gActiveBank\n\ +_08012DA8:\n\ + ldr r3, _08012E10 @ =gBattleExecBuffer\n\ + ldr r4, _08012E14 @ =gBitTable\n\ + ldr r0, _08012E18 @ =gActiveBank\n\ + ldrb r0, [r0]\n\ + lsls r0, 2\n\ + adds r0, r4\n\ + ldr r2, [r0]\n\ + lsls r1, r2, 4\n\ + movs r0, 0xF0\n\ + lsls r0, 24\n\ + orrs r1, r0\n\ + orrs r1, r2\n\ + lsls r0, r2, 8\n\ + orrs r1, r0\n\ + lsls r2, 12\n\ + orrs r1, r2\n\ + ldr r0, [r3]\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + beq _08012DD2\n\ + b _08012F66\n\ +_08012DD2:\n\ + ldr r0, _08012E1C @ =gBattleTypeFlags\n\ + ldrh r1, [r0]\n\ + movs r0, 0x41\n\ + ands r0, r1\n\ + cmp r0, 0x1\n\ + bne _08012E06\n\ + movs r1, 0x2\n\ + movs r0, 0x2\n\ + ands r0, r5\n\ + cmp r0, 0\n\ + bne _08012E06\n\ + adds r0, r5, 0\n\ + eors r0, r1\n\ + bl GetBankByIdentity\n\ + ldr r1, _08012E20 @ =gSharedMem\n\ + ldr r2, _08012E24 @ =0x000160a6\n\ + adds r1, r2\n\ + ldrb r1, [r1]\n\ + lsls r0, 24\n\ + lsrs r0, 22\n\ + adds r0, r4\n\ + ldr r0, [r0]\n\ + ands r1, r0\n\ + cmp r1, 0\n\ + beq _08012E28\n\ +_08012E06:\n\ + movs r0, 0\n\ + movs r1, 0\n\ + bl EmitLinkStandbyMsg\n\ + b _08012E30\n\ + .align 2, 0\n\ +_08012E10: .4byte gBattleExecBuffer\n\ +_08012E14: .4byte gBitTable\n\ +_08012E18: .4byte gActiveBank\n\ +_08012E1C: .4byte gBattleTypeFlags\n\ +_08012E20: .4byte gSharedMem\n\ +_08012E24: .4byte 0x000160a6\n\ +_08012E28:\n\ + movs r0, 0\n\ + movs r1, 0x1\n\ + bl EmitLinkStandbyMsg\n\ +_08012E30:\n\ + ldr r4, _08012E48 @ =gActiveBank\n\ +_08012E32:\n\ + ldrb r0, [r4]\n\ + bl MarkBufferBankForExecution\n\ + ldr r0, _08012E4C @ =gBattleCommunication\n\ + ldrb r1, [r4]\n\ +_08012E3C:\n\ + adds r1, r0\n\ +_08012E3E:\n\ + ldrb r0, [r1]\n\ + adds r0, 0x1\n\ + strb r0, [r1]\n\ + b _08012F66\n\ + .align 2, 0\n\ +_08012E48: .4byte gActiveBank\n\ +_08012E4C: .4byte gBattleCommunication\n\ +_08012E50:\n\ + ldr r3, _08012E84 @ =gBattleExecBuffer\n\ + ldr r1, _08012E88 @ =gBitTable\n\ + ldr r0, _08012E8C @ =gActiveBank\n\ + ldrb r0, [r0]\n\ + lsls r0, 2\n\ + adds r0, r1\n\ + ldr r2, [r0]\n\ + lsls r1, r2, 4\n\ + movs r0, 0xF0\n\ + lsls r0, 24\n\ + orrs r1, r0\n\ + orrs r1, r2\n\ + lsls r0, r2, 8\n\ + orrs r1, r0\n\ + lsls r2, 12\n\ + orrs r1, r2\n\ + ldr r0, [r3]\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _08012F66\n\ + ldr r1, _08012E90 @ =gBattleCommunication\n\ + ldrb r0, [r1, 0x4]\n\ + adds r0, 0x1\n\ + strb r0, [r1, 0x4]\n\ + b _08012F66\n\ + .align 2, 0\n\ +_08012E84: .4byte gBattleExecBuffer\n\ +_08012E88: .4byte gBitTable\n\ +_08012E8C: .4byte gActiveBank\n\ +_08012E90: .4byte gBattleCommunication\n\ +_08012E94:\n\ + ldr r2, _08012EB8 @ =gSharedMem\n\ + ldr r5, _08012EBC @ =gActiveBank\n\ + ldrb r1, [r5]\n\ + ldr r3, _08012EC0 @ =0x00016060\n\ + adds r0, r1, r3\n\ + adds r0, r2\n\ + ldrb r0, [r0]\n\ + cmp r0, 0\n\ + beq _08012ECC\n\ + ldr r0, _08012EC4 @ =gBattleCommunication\n\ + adds r0, r1, r0\n\ + ldr r4, _08012EC8 @ =0x00016094\n\ + adds r1, r4\n\ + adds r1, r2\n\ + ldrb r1, [r1]\n\ + strb r1, [r0]\n\ + b _08012F66\n\ + .align 2, 0\n\ +_08012EB8: .4byte gSharedMem\n\ +_08012EBC: .4byte gActiveBank\n\ +_08012EC0: .4byte 0x00016060\n\ +_08012EC4: .4byte gBattleCommunication\n\ +_08012EC8: .4byte 0x00016094\n\ +_08012ECC:\n\ + ldr r0, _08012F20 @ =gBankAttacker\n\ + strb r1, [r0]\n\ + ldr r7, _08012F24 @ =gBattlescriptCurrInstr\n\ + ldr r6, _08012F28 @ =gUnknown_02024C1C\n\ + ldrb r0, [r5]\n\ + lsls r0, 2\n\ + adds r0, r6\n\ + ldr r4, [r0]\n\ + str r4, [r7]\n\ + ldr r3, _08012F2C @ =gBattleExecBuffer\n\ + ldr r1, _08012F30 @ =gBitTable\n\ + ldrb r0, [r5]\n\ + lsls r0, 2\n\ + adds r0, r1\n\ + ldr r2, [r0]\n\ + lsls r1, r2, 4\n\ + movs r0, 0xF0\n\ + lsls r0, 24\n\ + orrs r1, r0\n\ + orrs r1, r2\n\ + lsls r0, r2, 8\n\ + orrs r1, r0\n\ + lsls r2, 12\n\ + orrs r1, r2\n\ + ldr r0, [r3]\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + bne _08012F12\n\ + ldr r0, _08012F34 @ =gBattleScriptingCommandsTable\n\ + ldrb r1, [r4]\n\ + lsls r1, 2\n\ + adds r1, r0\n\ + ldr r0, [r1]\n\ + bl _call_via_r0\n\ +_08012F12:\n\ + ldrb r0, [r5]\n\ + lsls r0, 2\n\ + adds r0, r6\n\ + ldr r1, [r7]\n\ + str r1, [r0]\n\ + b _08012F66\n\ + .align 2, 0\n\ +_08012F20: .4byte gBankAttacker\n\ +_08012F24: .4byte gBattlescriptCurrInstr\n\ +_08012F28: .4byte gUnknown_02024C1C\n\ +_08012F2C: .4byte gBattleExecBuffer\n\ +_08012F30: .4byte gBitTable\n\ +_08012F34: .4byte gBattleScriptingCommandsTable\n\ +_08012F38:\n\ + ldr r3, _08012FA0 @ =gBattleExecBuffer\n\ + ldr r1, _08012FA4 @ =gBitTable\n\ + ldr r0, _08012FA8 @ =gActiveBank\n\ + ldrb r4, [r0]\n\ + lsls r0, r4, 2\n\ + adds r0, r1\n\ + ldr r2, [r0]\n\ + lsls r0, r2, 4\n\ + movs r1, 0xF0\n\ + lsls r1, 24\n\ + orrs r0, r1\n\ + orrs r0, r2\n\ + lsls r1, r2, 8\n\ + orrs r0, r1\n\ + lsls r2, 12\n\ + orrs r0, r2\n\ + ldr r3, [r3]\n\ + ands r3, r0\n\ + cmp r3, 0\n\ + bne _08012F66\n\ +_08012F60:\n\ + ldr r0, _08012FAC @ =gBattleCommunication\n\ + adds r0, r4, r0\n\ + strb r3, [r0]\n\ +_08012F66:\n\ + ldr r0, _08012FA8 @ =gActiveBank\n\ + ldrb r1, [r0]\n\ + adds r1, 0x1\n\ + strb r1, [r0]\n\ + ldr r0, _08012FB0 @ =gNoOfAllBanks\n\ + lsls r1, 24\n\ + lsrs r1, 24\n\ +_08012F74:\n\ + adds r2, r0, 0\n\ + ldrb r0, [r2]\n\ + cmp r1, r0\n\ + bcs _08012F80\n\ + bl _0801234C\n\ +_08012F80:\n\ + ldr r0, _08012FAC @ =gBattleCommunication\n\ + ldrb r0, [r0, 0x4]\n\ + ldrb r2, [r2]\n\ + cmp r0, r2\n\ + bne _08012F90\n\ + ldr r1, _08012FB4 @ =gBattleMainFunc\n\ + ldr r0, _08012FB8 @ =SetActionsAndBanksTurnOrder\n\ + str r0, [r1]\n\ +_08012F90:\n\ + add sp, 0x1C\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\ + .align 2, 0\n\ +_08012FA0: .4byte gBattleExecBuffer\n\ +_08012FA4: .4byte gBitTable\n\ +_08012FA8: .4byte gActiveBank\n\ +_08012FAC: .4byte gBattleCommunication\n\ +_08012FB0: .4byte gNoOfAllBanks\n\ +_08012FB4: .4byte gBattleMainFunc\n\ +_08012FB8: .4byte SetActionsAndBanksTurnOrder\n\ + .syntax divided\n"); +} + +void SwapTurnOrder(u8 a, u8 b) +{ + int temp; + + temp = gActionsByTurnOrder[a]; + gActionsByTurnOrder[a] = gActionsByTurnOrder[b]; + gActionsByTurnOrder[b] = temp; + + temp = gBanksByTurnOrder[a]; + gBanksByTurnOrder[a] = gBanksByTurnOrder[b]; + gBanksByTurnOrder[b] = temp; +} + +// Determines which of the two given mons will strike first in a battle. +// Returns: +// 0 = first mon moves first +// 1 = second mon moves first +// 2 = second mon moves first because it won a 50/50 roll +u8 GetWhoStrikesFirst(u8 bank1, u8 bank2, bool8 ignoreMovePriorities) +{ + int bank1SpeedMultiplier, bank2SpeedMultiplier; + u32 bank1AdjustedSpeed, bank2AdjustedSpeed; + u8 heldItemEffect; + u8 heldItemEffectParam; + u16 bank1Move; + u16 bank2Move; + u8 strikesFirst = 0; + + // Check for abilities that boost speed in weather. + if (WEATHER_HAS_EFFECT) + { + if ((gBattleMons[bank1].ability == ABILITY_SWIFT_SWIM && (gBattleWeather & WEATHER_RAIN_ANY)) + || (gBattleMons[bank1].ability == ABILITY_CHLOROPHYLL && (gBattleWeather & WEATHER_SUN_ANY))) + bank1SpeedMultiplier = 2; + else + bank1SpeedMultiplier = 1; + + if ((gBattleMons[bank2].ability == ABILITY_SWIFT_SWIM && (gBattleWeather & WEATHER_RAIN_ANY)) + || (gBattleMons[bank2].ability == ABILITY_CHLOROPHYLL && (gBattleWeather & WEATHER_SUN_ANY))) + bank2SpeedMultiplier = 2; + else + bank2SpeedMultiplier = 1; + } + else + { + bank1SpeedMultiplier = 1; + bank2SpeedMultiplier = 1; + } + + // Calculate adjusted speed for first mon. + bank1AdjustedSpeed = (gBattleMons[bank1].speed * bank1SpeedMultiplier) + * gStatStageRatios[gBattleMons[bank1].statStages[STAT_STAGE_SPEED]][0] / gStatStageRatios[gBattleMons[bank1].statStages[STAT_STAGE_SPEED]][1]; + + if (gBattleMons[bank1].item == ITEM_ENIGMA_BERRY) + { + heldItemEffect = gEnigmaBerries[bank1].holdEffect; + heldItemEffectParam = gEnigmaBerries[bank1].holdEffectParam; + } + else + { + heldItemEffect = ItemId_GetHoldEffect(gBattleMons[bank1].item); + heldItemEffectParam = ItemId_GetHoldEffectParam(gBattleMons[bank1].item); + } + + // Only give badge speed boost to the player's mon. + if (!(gBattleTypeFlags & BATTLE_TYPE_LINK) && FlagGet(FLAG_BADGE03_GET) && GetBankSide(bank1) == 0) + bank1AdjustedSpeed = (bank1AdjustedSpeed * 110) / 100; + + if (heldItemEffect == HOLD_EFFECT_MACHO_BRACE) + bank1AdjustedSpeed /= 2; + + if (gBattleMons[bank1].status1 & STATUS_PARALYSIS) + bank1AdjustedSpeed /= 4; + + if (heldItemEffect == HOLD_EFFECT_QUICK_CLAW && gRandomTurnNumber < (heldItemEffectParam * 0xFFFF) / 100) + bank1AdjustedSpeed = UINT_MAX; + + // Calculate adjusted speed for second mon. + bank2AdjustedSpeed = gBattleMons[bank2].speed * bank2SpeedMultiplier + * gStatStageRatios[gBattleMons[bank2].statStages[STAT_STAGE_SPEED]][0] / gStatStageRatios[gBattleMons[bank2].statStages[STAT_STAGE_SPEED]][1]; + + if (gBattleMons[bank2].item == ITEM_ENIGMA_BERRY) + { + heldItemEffect = gEnigmaBerries[bank2].holdEffect; + heldItemEffectParam = gEnigmaBerries[bank2].holdEffectParam; + } + else + { + heldItemEffect = ItemId_GetHoldEffect(gBattleMons[bank2].item); + heldItemEffectParam = ItemId_GetHoldEffectParam(gBattleMons[bank2].item); + } + + // Only give badge speed boost to the player's mon. + if (!(gBattleTypeFlags & BATTLE_TYPE_LINK) && FlagGet(FLAG_BADGE03_GET) && GetBankSide(bank2) == 0) + { + bank2AdjustedSpeed = (bank2AdjustedSpeed * 110) / 100; + } + + if (heldItemEffect == HOLD_EFFECT_MACHO_BRACE) + bank2AdjustedSpeed /= 2; + + if (gBattleMons[bank2].status1 & STATUS_PARALYSIS) + bank2AdjustedSpeed /= 4; + + if (heldItemEffect == HOLD_EFFECT_QUICK_CLAW && gRandomTurnNumber < (heldItemEffectParam * 0xFFFF) / 100) + bank2AdjustedSpeed = UINT_MAX; + + if (ignoreMovePriorities) + { + bank1Move = MOVE_NONE; + bank2Move = MOVE_NONE; + } + else + { + if (gActionForBanks[bank1] == 0) + { + if (gProtectStructs[bank1].onlyStruggle) + bank1Move = MOVE_STRUGGLE; + else + bank1Move = gBattleMons[bank1].moves[ewram1608Carr(bank1)]; + } + else + bank1Move = MOVE_NONE; + + if (gActionForBanks[bank2] == 0) + { + if (gProtectStructs[bank2].onlyStruggle) + bank2Move = MOVE_STRUGGLE; + else + bank2Move = gBattleMons[bank2].moves[ewram1608Carr(bank2)]; + } + else + bank2Move = MOVE_NONE; + } + + if (gBattleMoves[bank1Move].priority != 0 || gBattleMoves[bank2Move].priority != 0) + { + if (gBattleMoves[bank1Move].priority == gBattleMoves[bank2Move].priority) + { + if (bank1AdjustedSpeed == bank2AdjustedSpeed && (Random() & 1)) + strikesFirst = 2; + else if (bank1AdjustedSpeed < bank2AdjustedSpeed) + strikesFirst = 1; + } + else if (gBattleMoves[bank1Move].priority < gBattleMoves[bank2Move].priority) + strikesFirst = 1; + } + else + { + if (bank1AdjustedSpeed == bank2AdjustedSpeed && (Random() & 1)) + strikesFirst = 2; + else if (bank1AdjustedSpeed < bank2AdjustedSpeed) + strikesFirst = 1; + } + + return strikesFirst; +} + +void SetActionsAndBanksTurnOrder(void) +{ + s32 var = 0; + s32 i, j; + + if (gBattleTypeFlags & BATTLE_TYPE_SAFARI) + { + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + gActionsByTurnOrder[var] = gActionForBanks[gActiveBank]; + gBanksByTurnOrder[var] = gActiveBank; + var++; + } + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (gActionForBanks[gActiveBank] == ACTION_RUN) + { + var = 5; + break; + } + } + } + else + { + if (gActionForBanks[0] == ACTION_RUN) + { + gActiveBank = 0; + var = 5; + } + } + + if (var == 5) + { + gActionsByTurnOrder[0] = gActionForBanks[gActiveBank]; + gBanksByTurnOrder[0] = gActiveBank; + var = 1; + for (i = 0; i < gNoOfAllBanks; i++) + { + if (i != gActiveBank) + { + gActionsByTurnOrder[var] = gActionForBanks[i]; + gBanksByTurnOrder[var] = i; + var++; + } + } + gBattleMainFunc = CheckFocusPunch_ClearVarsBeforeTurnStarts; + eFocusPunchBank = 0; + return; + } + else + { + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (gActionForBanks[gActiveBank] == ACTION_USE_ITEM || gActionForBanks[gActiveBank] == ACTION_SWITCH) + { + gActionsByTurnOrder[var] = gActionForBanks[gActiveBank]; + gBanksByTurnOrder[var] = gActiveBank; + var++; + } + } + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (gActionForBanks[gActiveBank] != ACTION_USE_ITEM && gActionForBanks[gActiveBank] != ACTION_SWITCH) + { + gActionsByTurnOrder[var] = gActionForBanks[gActiveBank]; + gBanksByTurnOrder[var] = gActiveBank; + var++; + } + } + for (i = 0; i < gNoOfAllBanks - 1; i++) + { + for (j = i + 1; j < gNoOfAllBanks; j++) + { + u8 bank1 = gBanksByTurnOrder[i]; + u8 bank2 = gBanksByTurnOrder[j]; + if (gActionsByTurnOrder[i] != ACTION_USE_ITEM + && gActionsByTurnOrder[j] != ACTION_USE_ITEM + && gActionsByTurnOrder[i] != ACTION_SWITCH + && gActionsByTurnOrder[j] != ACTION_SWITCH) + { + if (GetWhoStrikesFirst(bank1, bank2, FALSE)) + SwapTurnOrder(i, j); + } + } + } + } + } + gBattleMainFunc = CheckFocusPunch_ClearVarsBeforeTurnStarts; + eFocusPunchBank = 0; +} + +static void TurnValuesCleanUp(bool8 var0) +{ + s32 i; + u8 *dataPtr; + + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (var0) + { + gProtectStructs[gActiveBank].protected = 0; + gProtectStructs[gActiveBank].endured = 0; + } + else + { + dataPtr = (u8*)(&gProtectStructs[gActiveBank]); + for (i = 0; i < sizeof(struct ProtectStruct); i++) + dataPtr[i] = 0; + + if (gDisableStructs[gActiveBank].isFirstTurn) + gDisableStructs[gActiveBank].isFirstTurn--; + + if (gDisableStructs[gActiveBank].rechargeCounter) + { + gDisableStructs[gActiveBank].rechargeCounter--; + if (gDisableStructs[gActiveBank].rechargeCounter == 0) + gBattleMons[gActiveBank].status2 &= ~(STATUS2_RECHARGE); + } + } + + if (gDisableStructs[gActiveBank].substituteHP == 0) + gBattleMons[gActiveBank].status2 &= ~(STATUS2_SUBSTITUTE); + } + + gSideTimers[0].followmeTimer = 0; + gSideTimers[1].followmeTimer = 0; +} + +void SpecialStatusesClear(void) +{ + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + s32 i; + u8 *dataPtr = (u8*)(&gSpecialStatuses[gActiveBank]); + + for (i = 0; i < sizeof(struct SpecialStatus); i++) + dataPtr[i] = 0; + } +} + +void CheckFocusPunch_ClearVarsBeforeTurnStarts(void) +{ + if (!(gHitMarker & HITMARKER_RUN)) + { + while (eFocusPunchBank < gNoOfAllBanks) + { + gActiveBank = gBankAttacker = eFocusPunchBank; + eFocusPunchBank++; + if (gChosenMovesByBanks[gActiveBank] == MOVE_FOCUS_PUNCH + && !(gBattleMons[gActiveBank].status1 & STATUS_SLEEP) + && !(gDisableStructs[gBankAttacker].truantCounter) + && !(gProtectStructs[gActiveBank].onlyStruggle)) + { + BattleScriptExecute(BattleScript_FocusPunchSetUp); + return; + } + } + } + + TryClearRageStatuses(); + gCurrentTurnActionNumber = 0; + { + // something stupid needed to match + u8 zero; + gCurrentActionFuncId = gActionsByTurnOrder[(zero = 0)]; + } + + gDynamicBasePower = 0; + BATTLE_STRUCT->dynamicMoveType = 0; + gBattleMainFunc = RunTurnActionsFunctions; + gBattleCommunication[3] = 0; + gBattleCommunication[4] = 0; + eMultihitMoveEffect = 0; + ewram17130 = 0; +} + +static void RunTurnActionsFunctions(void) +{ + if (gBattleOutcome != 0) + gCurrentActionFuncId = 12; + + BATTLE_STRUCT->unk16057 = gCurrentTurnActionNumber; + gUnknown_081FA640[gCurrentActionFuncId](); + + if (gCurrentTurnActionNumber >= gNoOfAllBanks) // everyone did their actions, turn finished + { + gHitMarker &= ~(HITMARKER_x100000); + gBattleMainFunc = gUnknown_081FA678[gBattleOutcome & 0x7F]; + } + else + { + if (BATTLE_STRUCT->unk16057 != gCurrentTurnActionNumber) // action turn has been done, clear hitmarker bits for another bank + { + gHitMarker &= ~(HITMARKER_NO_ATTACKSTRING); + gHitMarker &= ~(HITMARKER_UNABLE_TO_USE_MOVE); + } + } +} + +void HandleEndTurn_BattleWon(void) +{ + gCurrentActionFuncId = 0; + + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + gBattleTextBuff1[0] = gBattleOutcome; + gBankAttacker = GetBankByIdentity(IDENTITY_PLAYER_MON1); + gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; + gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); + } + else if (gBattleTypeFlags & (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_EREADER_TRAINER)) + { + gBattlescriptCurrInstr = gUnknown_081D8E0D; + } + else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && !(gBattleTypeFlags & BATTLE_TYPE_LINK)) + { + BattleMusicStop(); + gBattlescriptCurrInstr = BattleScript_LocalTrainerBattleWon; + + switch (gTrainers[gTrainerBattleOpponent].trainerClass) + { + case TRAINER_CLASS_ELITE_FOUR: + case TRAINER_CLASS_CHAMPION: + PlayBGM(BGM_KACHI5); + break; + case TRAINER_CLASS_TEAM_AQUA: + case TRAINER_CLASS_TEAM_MAGMA: + case TRAINER_CLASS_AQUA_ADMIN: + case TRAINER_CLASS_AQUA_LEADER: + case TRAINER_CLASS_MAGMA_ADMIN: + case TRAINER_CLASS_MAGMA_LEADER: + PlayBGM(BGM_KACHI4); + break; + case TRAINER_CLASS_LEADER: + PlayBGM(BGM_KACHI3); + break; + default: + PlayBGM(BGM_KACHI1); + break; + } + } + else + { + gBattlescriptCurrInstr = BattleScript_PayDayMoneyAndPickUpItems; + } + + gBattleMainFunc = HandleEndTurn_FinishBattle; +} + +void HandleEndTurn_BattleLost(void) +{ + gCurrentActionFuncId = 0; + + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + gBattleTextBuff1[0] = gBattleOutcome; + gBankAttacker = GetBankByIdentity(IDENTITY_PLAYER_MON1); + gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; + gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); + } + else + { + gBattlescriptCurrInstr = BattleScript_LocalBattleLost; + } + + gBattleMainFunc = HandleEndTurn_FinishBattle; +} + +void HandleEndTurn_RanFromBattle(void) +{ + gCurrentActionFuncId = 0; + + switch (gProtectStructs[gBankAttacker].fleeFlag) + { + default: + gBattlescriptCurrInstr = BattleScript_GotAwaySafely; + break; + case 1: + gBattlescriptCurrInstr = BattleScript_SmokeBallEscape; + break; + case 2: + gBattlescriptCurrInstr = BattleScript_RanAwayUsingMonAbility; + break; + } + + gBattleMainFunc = HandleEndTurn_FinishBattle; +} + +void HandleEndTurn_MonFled(void) +{ + gCurrentActionFuncId = 0; + + PREPARE_MON_NICK_BUFFER(gBattleTextBuff1, gBankAttacker, gBattlePartyID[gBankAttacker]); + gBattlescriptCurrInstr = BattleScript_WildMonFled; + + gBattleMainFunc = HandleEndTurn_FinishBattle; +} + +void HandleEndTurn_FinishBattle(void) +{ + if (gCurrentActionFuncId == 0xB || gCurrentActionFuncId == 0xC) + { + if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK + | BATTLE_TYPE_FIRST_BATTLE + | BATTLE_TYPE_SAFARI + | BATTLE_TYPE_EREADER_TRAINER + | BATTLE_TYPE_WALLY_TUTORIAL + | BATTLE_TYPE_BATTLE_TOWER))) + { + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (GetBankSide(gActiveBank) == SIDE_PLAYER) + { + if (gBattleResults.poke1Species == SPECIES_NONE) + { + gBattleResults.poke1Species = gBattleMons[gActiveBank].species; + StringCopy(gBattleResults.pokeString1, gBattleMons[gActiveBank].nickname); + } + else + { + gBattleResults.opponentSpecies = gBattleMons[gActiveBank].species; + StringCopy(gBattleResults.pokeString2, gBattleMons[gActiveBank].nickname); + } + } + } + PutPokemonTodayCaughtOnAir(); + } + + BeginFastPaletteFade(3); + FadeOutMapMusic(5); + gBattleMainFunc = FreeResetData_ReturnToOvOrDoEvolutions; + gCB2_AfterEvolution = BattleMainCB2; + } + else + { + if (gBattleExecBuffer == 0) + gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); + } +} + +static void FreeResetData_ReturnToOvOrDoEvolutions(void) +{ + if (!gPaletteFade.active) + { + ResetSpriteData(); + if (gLeveledUpInBattle == 0 || gBattleOutcome != BATTLE_WON) + { + gBattleMainFunc = ReturnFromBattleToOverworld; + return; + } + else + { + gBattleMainFunc = TryEvolvePokemon; + } + } +} + +void TryEvolvePokemon(void) +{ + s32 i; + + while (gLeveledUpInBattle != 0) + { + for (i = 0; i < 6; i++) + { + if (gLeveledUpInBattle & gBitTable[i]) + { + u16 species; + u8 levelUpBits = gLeveledUpInBattle; + + levelUpBits &= ~(gBitTable[i]); + gLeveledUpInBattle = levelUpBits; + + species = GetEvolutionTargetSpecies(&gPlayerParty[i], 0, levelUpBits); + if (species != SPECIES_NONE) + { + gBattleMainFunc = WaitForEvoSceneToFinish; + EvolutionScene(&gPlayerParty[i], species, 0x81, i); + return; + } + } + } + } + + gBattleMainFunc = ReturnFromBattleToOverworld; +} + +static void WaitForEvoSceneToFinish(void) +{ + if (gMain.callback2 == BattleMainCB2) + gBattleMainFunc = TryEvolvePokemon; +} + +static void ReturnFromBattleToOverworld(void) +{ + if (!(gBattleTypeFlags & BATTLE_TYPE_LINK)) + { + RandomlyGivePartyPokerus(gPlayerParty); + PartySpreadPokerus(gPlayerParty); + } + + if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers != 0) + return; + + gSpecialVar_Result = gBattleOutcome; + gMain.inBattle = 0; + gMain.callback1 = gPreBattleCallback1; + + if (gBattleTypeFlags & BATTLE_TYPE_ROAMER) + { + UpdateRoamerHPStatus(&gEnemyParty[0]); + if (gBattleOutcome == BATTLE_WON || gBattleOutcome == BATTLE_CAUGHT) + SetRoamerInactive(); + } + + m4aSongNumStop(0x5A); + SetMainCallback2(gMain.savedCallback); +} + +void RunBattleScriptCommands_PopCallbacksStack(void) +{ + if (gCurrentActionFuncId == 0xB || gCurrentActionFuncId == 0xC) + { + if (B_FUNCTION_STACK->size != 0) + B_FUNCTION_STACK->size--; + gBattleMainFunc = B_FUNCTION_STACK->ptr[B_FUNCTION_STACK->size]; + } + else + { + if (gBattleExecBuffer == 0) + gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); + } +} + +void RunBattleScriptCommands(void) +{ + if (gBattleExecBuffer == 0) + gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); +} + +void HandleAction_UseMove(void) +{ + u8 side; + u8 var = 4; + + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + + if (ewram160A6 & gBitTable[gBankAttacker]) + { + gCurrentActionFuncId = ACTION_FINISHED; + return; + } + + gCritMultiplier = 1; + eDmgMultiplier = 1; + ewram160E7 = 0; + gBattleMoveFlags = 0; + gMultiHitCounter = 0; + gBattleCommunication[6] = 0; + gCurrMovePos = gUnknown_02024BE5 = ewram1608Carr(gBankAttacker); + + // choose move + if (gProtectStructs[gBankAttacker].onlyStruggle) + { + gProtectStructs[gBankAttacker].onlyStruggle = 0; + gCurrentMove = gChosenMove = MOVE_STRUGGLE; + gHitMarker |= HITMARKER_NO_PPDEDUCT; + ewram16010arr(gBankAttacker) = GetMoveTarget(MOVE_STRUGGLE, 0); + } + else if (gBattleMons[gBankAttacker].status2 & STATUS2_MULTIPLETURNS || gBattleMons[gBankAttacker].status2 & STATUS2_RECHARGE) + { + gCurrentMove = gChosenMove = gLockedMoves[gBankAttacker]; + } + // encore forces you to use the same move + else if (gDisableStructs[gBankAttacker].encoredMove != MOVE_NONE + && gDisableStructs[gBankAttacker].encoredMove == gBattleMons[gBankAttacker].moves[gDisableStructs[gBankAttacker].encoredMovePos]) + { + gCurrentMove = gChosenMove = gDisableStructs[gBankAttacker].encoredMove; + gCurrMovePos = gUnknown_02024BE5 = gDisableStructs[gBankAttacker].encoredMovePos; + ewram16010arr(gBankAttacker) = GetMoveTarget(gCurrentMove, 0); + } + // check if the encored move wasn't overwritten + else if (gDisableStructs[gBankAttacker].encoredMove != MOVE_NONE + && gDisableStructs[gBankAttacker].encoredMove != gBattleMons[gBankAttacker].moves[gDisableStructs[gBankAttacker].encoredMovePos]) + { + gCurrMovePos = gUnknown_02024BE5 = gDisableStructs[gBankAttacker].encoredMovePos; + gCurrentMove = gChosenMove = gBattleMons[gBankAttacker].moves[gCurrMovePos]; + gDisableStructs[gBankAttacker].encoredMove = MOVE_NONE; + gDisableStructs[gBankAttacker].encoredMovePos = 0; + gDisableStructs[gBankAttacker].encoreTimer1 = 0; + ewram16010arr(gBankAttacker) = GetMoveTarget(gCurrentMove, 0); + } + else if (gBattleMons[gBankAttacker].moves[gCurrMovePos] != gChosenMovesByBanks[gBankAttacker]) + { + gCurrentMove = gChosenMove = gBattleMons[gBankAttacker].moves[gCurrMovePos]; + ewram16010arr(gBankAttacker) = GetMoveTarget(gCurrentMove, 0); + } + else + { + gCurrentMove = gChosenMove = gBattleMons[gBankAttacker].moves[gCurrMovePos]; + } + + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + gBattleResults.lastUsedMove = gCurrentMove; + else + gBattleResults.opponentMove = gCurrentMove; + + // choose target + side = GetBankSide(gBankAttacker) ^ BIT_SIDE; + if (gSideTimers[side].followmeTimer != 0 + && gBattleMoves[gCurrentMove].target == MOVE_TARGET_SELECTED + && GetBankSide(gBankAttacker) != GetBankSide(gSideTimers[side].followmeTarget) + && gBattleMons[gSideTimers[side].followmeTarget].hp != 0) + { + gBankTarget = gSideTimers[side].followmeTarget; + } + else if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + && gSideTimers[side].followmeTimer == 0 + && (gBattleMoves[gCurrentMove].power != 0 + || gBattleMoves[gCurrentMove].target != MOVE_TARGET_x10) + && gBattleMons[ewram16010arr(gBankAttacker)].ability != ABILITY_LIGHTNING_ROD + && gBattleMoves[gCurrentMove].type == TYPE_ELECTRIC) + { + side = GetBankSide(gBankAttacker); + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (side != GetBankSide(gActiveBank) + && ewram16010arr(gBankAttacker) != gActiveBank + && gBattleMons[gActiveBank].ability == ABILITY_LIGHTNING_ROD + && BankGetTurnOrder(gActiveBank) < var) + { + var = BankGetTurnOrder(gActiveBank); + } + } + if (var == 4) + { + if (gBattleMoves[gChosenMove].target & MOVE_TARGET_RANDOM) + { + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + { + if (Random() & 1) + gBankTarget = GetBankByIdentity(IDENTITY_OPPONENT_MON1); + else + gBankTarget = GetBankByIdentity(IDENTITY_OPPONENT_MON2); + } + else + { + if (Random() & 1) + gBankTarget = GetBankByIdentity(IDENTITY_PLAYER_MON1); + else + gBankTarget = GetBankByIdentity(IDENTITY_PLAYER_MON2); + } + } + else + { + gBankTarget = ewram16010arr(gBankAttacker); + } + + if (gAbsentBankFlags & gBitTable[gBankTarget]) + { + if (GetBankSide(gBankAttacker) != GetBankSide(gBankTarget)) + { + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankTarget) ^ BIT_MON); + } + else + { + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ BIT_SIDE); + if (gAbsentBankFlags & gBitTable[gBankTarget]) + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankTarget) ^ BIT_MON); + } + } + } + else + { + gActiveBank = gBanksByTurnOrder[var]; + RecordAbilityBattle(gActiveBank, gBattleMons[gActiveBank].ability); + gSpecialStatuses[gActiveBank].lightningRodRedirected = 1; + gBankTarget = gActiveBank; + } + } + else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE + && gBattleMoves[gChosenMove].target & MOVE_TARGET_RANDOM) + { + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + { + if (Random() & 1) + gBankTarget = GetBankByIdentity(IDENTITY_OPPONENT_MON1); + else + gBankTarget = GetBankByIdentity(IDENTITY_OPPONENT_MON2); + } + else + { + if (Random() & 1) + gBankTarget = GetBankByIdentity(IDENTITY_PLAYER_MON1); + else + gBankTarget = GetBankByIdentity(IDENTITY_PLAYER_MON2); + } + + if (gAbsentBankFlags & gBitTable[gBankTarget] + && GetBankSide(gBankAttacker) != GetBankSide(gBankTarget)) + { + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankTarget) ^ BIT_MON); + } + } + else + { + gBankTarget = ewram16010arr(gBankAttacker); + if (gAbsentBankFlags & gBitTable[gBankTarget]) + { + if (GetBankSide(gBankAttacker) != GetBankSide(gBankTarget)) + { + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankTarget) ^ BIT_MON); + } + else + { + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ BIT_SIDE); + if (gAbsentBankFlags & gBitTable[gBankTarget]) + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankTarget) ^ BIT_MON); + } + } + } + + gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; +} + +void HandleAction_Switch(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + gActionSelectionCursor[gBankAttacker] = 0; + gMoveSelectionCursor[gBankAttacker] = 0; + + PREPARE_MON_NICK_BUFFER(gBattleTextBuff1, gBankAttacker, ewram16064arr(gBankAttacker)) + + ewram16003 = gBankAttacker; + gBattlescriptCurrInstr = BattleScript_ActionSwitch; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; + + if (gBattleResults.unk2 < 255) + gBattleResults.unk2++; +} + +#ifdef NONMATCHING +void HandleAction_UseItem(void) +{ + gBankAttacker = gBankTarget = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + gDisableStructs[gBankAttacker].furyCutterCounter = 0; + gLastUsedItem = gBattleBufferB[gBankAttacker][1] | (gBattleBufferB[gBankAttacker][2] << 8); + + if (gLastUsedItem <= ITEM_PREMIER_BALL) // is ball + { + gBattlescriptCurrInstr = gBattlescriptsForBallThrow[gLastUsedItem]; + } + else if (gLastUsedItem == ITEM_POKE_DOLL || gLastUsedItem == ITEM_FLUFFY_TAIL) + { + gBattlescriptCurrInstr = gBattlescriptsForRunningByItem[0]; + } + else if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + { + gBattlescriptCurrInstr = gBattlescriptsForUsingItem[0]; + } + else + { + ewram16003 = gBankAttacker; + + switch (ewram160D8(gBankAttacker)) + { + case AI_ITEM_FULL_RESTORE: + case AI_ITEM_HEAL_HP: + break; + case AI_ITEM_CURE_CONDITION: + gBattleCommunication[MULTISTRING_CHOOSER] = 0; + if (ewram160DA(gBankAttacker) & 1) + { + if (ewram160DA(gBankAttacker) & 0x3E) + gBattleCommunication[MULTISTRING_CHOOSER] = 5; + } + else + { + while (!(ewram160DA(gBankAttacker) & 1)) + { + ewram160DA(gBankAttacker) /= 2; + gBattleCommunication[MULTISTRING_CHOOSER]++; + } + } + break; + case AI_ITEM_X_STAT: + gBattleCommunication[MULTISTRING_CHOOSER] = 4; + if (ewram160DA(gBankAttacker) & 0x80) + { + gBattleCommunication[MULTISTRING_CHOOSER] = 5; + } + else + { + PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_ATK) + PREPARE_STRING_BUFFER(gBattleTextBuff2, 0xD2) + + while (!(ewram160DA(gBankAttacker) & 1)) + { + ewram160DA(gBankAttacker) /= 2; + gBattleTextBuff1[2]++; + } + + ewram160A4 = gBattleTextBuff1[2] + 14; + ewram160A5 = 0; + } + break; + case AI_ITEM_GUARD_SPECS: + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + gBattleCommunication[MULTISTRING_CHOOSER] = 2; + else + gBattleCommunication[MULTISTRING_CHOOSER] = 0; + break; + } + + gBattlescriptCurrInstr = gBattlescriptsForUsingItem[ewram160D8(gBankAttacker)]; + } + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; +} +#else +__attribute__((naked)) +void HandleAction_UseItem(void) +{ + asm(".syntax unified\n\ + push {r4-r7,lr}\n\ + mov r7, r10\n\ + mov r6, r9\n\ + mov r5, r8\n\ + push {r5-r7}\n\ + ldr r4, _08014804 @ =gBankAttacker\n\ + ldr r2, _08014808 @ =gBankTarget\n\ + ldr r1, _0801480C @ =gBanksByTurnOrder\n\ + ldr r0, _08014810 @ =gCurrentTurnActionNumber\n\ + ldrb r0, [r0]\n\ + adds r0, r1\n\ + ldrb r0, [r0]\n\ + strb r0, [r2]\n\ + strb r0, [r4]\n\ + ldr r0, _08014814 @ =gBattle_BG0_X\n\ + movs r2, 0\n\ + strh r2, [r0]\n\ + ldr r0, _08014818 @ =gBattle_BG0_Y\n\ + strh r2, [r0]\n\ + ldr r3, _0801481C @ =gDisableStructs\n\ + ldrb r1, [r4]\n\ + lsls r0, r1, 3\n\ + subs r0, r1\n\ + lsls r0, 2\n\ + adds r0, r3\n\ + strb r2, [r0, 0x10]\n\ + ldr r5, _08014820 @ =gLastUsedItem\n\ + ldr r2, _08014824 @ =gBattleBufferB\n\ + ldrb r1, [r4]\n\ + lsls r1, 9\n\ + adds r0, r2, 0x1\n\ + adds r0, r1, r0\n\ + ldrb r3, [r0]\n\ + adds r2, 0x2\n\ + adds r1, r2\n\ + ldrb r0, [r1]\n\ + lsls r0, 8\n\ + orrs r3, r0\n\ + strh r3, [r5]\n\ + cmp r3, 0xC\n\ + bhi _08014830\n\ + ldr r2, _08014828 @ =gBattlescriptCurrInstr\n\ + ldr r1, _0801482C @ =gBattlescriptsForBallThrow\n\ + ldrh r0, [r5]\n\ + lsls r0, 2\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + str r0, [r2]\n\ + b _08014A8C\n\ + .align 2, 0\n\ +_08014804: .4byte gBankAttacker\n\ +_08014808: .4byte gBankTarget\n\ +_0801480C: .4byte gBanksByTurnOrder\n\ +_08014810: .4byte gCurrentTurnActionNumber\n\ +_08014814: .4byte gBattle_BG0_X\n\ +_08014818: .4byte gBattle_BG0_Y\n\ +_0801481C: .4byte gDisableStructs\n\ +_08014820: .4byte gLastUsedItem\n\ +_08014824: .4byte gBattleBufferB\n\ +_08014828: .4byte gBattlescriptCurrInstr\n\ +_0801482C: .4byte gBattlescriptsForBallThrow\n\ +_08014830:\n\ + adds r0, r3, 0\n\ + subs r0, 0x50\n\ + lsls r0, 16\n\ + lsrs r0, 16\n\ + cmp r0, 0x1\n\ + bhi _0801484C\n\ + ldr r0, _08014844 @ =gBattlescriptCurrInstr\n\ + ldr r1, _08014848 @ =gBattlescriptsForRunningByItem\n\ + b _0801485C\n\ + .align 2, 0\n\ +_08014844: .4byte gBattlescriptCurrInstr\n\ +_08014848: .4byte gBattlescriptsForRunningByItem\n\ +_0801484C:\n\ + ldrb r0, [r4]\n\ + bl GetBankSide\n\ + lsls r0, 24\n\ + cmp r0, 0\n\ + bne _0801486C\n\ + ldr r0, _08014864 @ =gBattlescriptCurrInstr\n\ + ldr r1, _08014868 @ =gBattlescriptsForUsingItem\n\ +_0801485C:\n\ + ldr r1, [r1]\n\ + str r1, [r0]\n\ + b _08014A8C\n\ + .align 2, 0\n\ +_08014864: .4byte gBattlescriptCurrInstr\n\ +_08014868: .4byte gBattlescriptsForUsingItem\n\ +_0801486C:\n\ + ldr r2, _080148A0 @ =gSharedMem\n\ + ldrb r0, [r4]\n\ + ldr r3, _080148A4 @ =0x00016003\n\ + adds r1, r2, r3\n\ + strb r0, [r1]\n\ + lsls r0, 24\n\ + lsrs r0, 25\n\ + ldr r1, _080148A8 @ =0x000160d8\n\ + adds r0, r1\n\ + adds r0, r2\n\ + ldrb r0, [r0]\n\ + subs r0, 0x1\n\ + mov r8, r4\n\ + ldr r3, _080148AC @ =gBattlescriptCurrInstr\n\ + mov r9, r3\n\ + ldr r1, _080148B0 @ =gBattlescriptsForUsingItem\n\ + mov r10, r1\n\ + adds r7, r2, 0\n\ + cmp r0, 0x4\n\ + bls _08014896\n\ + b _08014A74\n\ +_08014896:\n\ + lsls r0, 2\n\ + ldr r1, _080148B4 @ =_080148B8\n\ + adds r0, r1\n\ + ldr r0, [r0]\n\ + mov pc, r0\n\ + .align 2, 0\n\ +_080148A0: .4byte gSharedMem\n\ +_080148A4: .4byte 0x00016003\n\ +_080148A8: .4byte 0x000160d8\n\ +_080148AC: .4byte gBattlescriptCurrInstr\n\ +_080148B0: .4byte gBattlescriptsForUsingItem\n\ +_080148B4: .4byte _080148B8\n\ + .align 2, 0\n\ +_080148B8:\n\ + .4byte _08014A74\n\ + .4byte _08014A74\n\ + .4byte _080148CC\n\ + .4byte _08014958\n\ + .4byte _08014A30\n\ +_080148CC:\n\ + ldr r2, _08014904 @ =gBattleCommunication\n\ + movs r0, 0\n\ + strb r0, [r2, 0x5]\n\ + ldr r1, _08014908 @ =gBankAttacker\n\ + ldrb r0, [r1]\n\ + lsrs r0, 1\n\ + ldr r6, _0801490C @ =0x000160da\n\ + adds r0, r6\n\ + adds r0, r7\n\ + ldrb r3, [r0]\n\ + movs r0, 0x1\n\ + ands r0, r3\n\ + mov r8, r1\n\ + cmp r0, 0\n\ + beq _08014918\n\ + movs r0, 0x3E\n\ + ands r0, r3\n\ + ldr r3, _08014910 @ =gBattlescriptCurrInstr\n\ + mov r9, r3\n\ + ldr r1, _08014914 @ =gBattlescriptsForUsingItem\n\ + mov r10, r1\n\ + cmp r0, 0\n\ + bne _080148FC\n\ + b _08014A74\n\ +_080148FC:\n\ + movs r0, 0x5\n\ + strb r0, [r2, 0x5]\n\ + b _08014A74\n\ + .align 2, 0\n\ +_08014904: .4byte gBattleCommunication\n\ +_08014908: .4byte gBankAttacker\n\ +_0801490C: .4byte 0x000160da\n\ +_08014910: .4byte gBattlescriptCurrInstr\n\ +_08014914: .4byte gBattlescriptsForUsingItem\n\ +_08014918:\n\ + ldr r3, _08014950 @ =gBattlescriptCurrInstr\n\ + mov r9, r3\n\ + ldr r0, _08014954 @ =gBattlescriptsForUsingItem\n\ + mov r10, r0\n\ + adds r5, r7, 0\n\ + mov r4, r8\n\ + adds r3, r6, 0\n\ +_08014926:\n\ + ldrb r0, [r4]\n\ + lsrs r0, 1\n\ + adds r0, r3\n\ + adds r0, r5\n\ + ldrb r1, [r0]\n\ + lsrs r1, 1\n\ + strb r1, [r0]\n\ + ldrb r0, [r2, 0x5]\n\ + adds r0, 0x1\n\ + strb r0, [r2, 0x5]\n\ + ldrb r0, [r4]\n\ + lsrs r0, 1\n\ + adds r0, r3\n\ + adds r0, r5\n\ + ldrb r1, [r0]\n\ + movs r0, 0x1\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + beq _08014926\n\ + b _08014A74\n\ + .align 2, 0\n\ +_08014950: .4byte gBattlescriptCurrInstr\n\ +_08014954: .4byte gBattlescriptsForUsingItem\n\ +_08014958:\n\ + ldr r3, _0801498C @ =gBattleCommunication\n\ + movs r0, 0x4\n\ + strb r0, [r3, 0x5]\n\ + ldr r2, _08014990 @ =gBankAttacker\n\ + ldrb r0, [r2]\n\ + lsrs r0, 1\n\ + ldr r1, _08014994 @ =0x000160da\n\ + mov r12, r1\n\ + add r0, r12\n\ + adds r6, r0, r7\n\ + ldrb r1, [r6]\n\ + movs r0, 0x80\n\ + ands r0, r1\n\ + lsls r0, 24\n\ + lsrs r5, r0, 24\n\ + mov r8, r2\n\ + cmp r5, 0\n\ + beq _080149A0\n\ + movs r0, 0x5\n\ + strb r0, [r3, 0x5]\n\ + ldr r2, _08014998 @ =gBattlescriptCurrInstr\n\ + mov r9, r2\n\ + ldr r3, _0801499C @ =gBattlescriptsForUsingItem\n\ + mov r10, r3\n\ + b _08014A74\n\ + .align 2, 0\n\ +_0801498C: .4byte gBattleCommunication\n\ +_08014990: .4byte gBankAttacker\n\ +_08014994: .4byte 0x000160da\n\ +_08014998: .4byte gBattlescriptCurrInstr\n\ +_0801499C: .4byte gBattlescriptsForUsingItem\n\ +_080149A0:\n\ + ldr r3, _08014A18 @ =gBattleTextBuff1\n\ + movs r4, 0xFD\n\ + strb r4, [r3]\n\ + movs r0, 0x5\n\ + strb r0, [r3, 0x1]\n\ + movs r2, 0x1\n\ + strb r2, [r3, 0x2]\n\ + movs r0, 0xFF\n\ + strb r0, [r3, 0x3]\n\ + ldr r1, _08014A1C @ =gBattleTextBuff2\n\ + strb r4, [r1]\n\ + strb r5, [r1, 0x1]\n\ + movs r0, 0xD2\n\ + strb r0, [r1, 0x2]\n\ + strb r5, [r1, 0x3]\n\ + subs r0, 0xD3\n\ + strb r0, [r1, 0x4]\n\ + ldrb r0, [r6]\n\ + ands r2, r0\n\ + ldr r0, _08014A20 @ =gBattlescriptCurrInstr\n\ + mov r9, r0\n\ + ldr r1, _08014A24 @ =gBattlescriptsForUsingItem\n\ + mov r10, r1\n\ + adds r6, r3, 0\n\ + cmp r2, 0\n\ + bne _08014A02\n\ + adds r3, r7, 0\n\ + mov r5, r8\n\ + mov r4, r12\n\ + adds r2, r6, 0\n\ +_080149DC:\n\ + ldrb r0, [r5]\n\ + lsrs r0, 1\n\ + adds r0, r4\n\ + adds r0, r3\n\ + ldrb r1, [r0]\n\ + lsrs r1, 1\n\ + strb r1, [r0]\n\ + ldrb r0, [r2, 0x2]\n\ + adds r0, 0x1\n\ + strb r0, [r2, 0x2]\n\ + ldrb r0, [r5]\n\ + lsrs r0, 1\n\ + adds r0, r4\n\ + adds r0, r3\n\ + ldrb r1, [r0]\n\ + movs r0, 0x1\n\ + ands r0, r1\n\ + cmp r0, 0\n\ + beq _080149DC\n\ +_08014A02:\n\ + ldrb r0, [r6, 0x2]\n\ + adds r0, 0xE\n\ + ldr r2, _08014A28 @ =0x000160a4\n\ + adds r1, r7, r2\n\ + movs r2, 0\n\ + strb r0, [r1]\n\ + ldr r3, _08014A2C @ =0x000160a5\n\ + adds r0, r7, r3\n\ + strb r2, [r0]\n\ + b _08014A74\n\ + .align 2, 0\n\ +_08014A18: .4byte gBattleTextBuff1\n\ +_08014A1C: .4byte gBattleTextBuff2\n\ +_08014A20: .4byte gBattlescriptCurrInstr\n\ +_08014A24: .4byte gBattlescriptsForUsingItem\n\ +_08014A28: .4byte 0x000160a4\n\ +_08014A2C: .4byte 0x000160a5\n\ +_08014A30:\n\ + ldr r0, _08014A50 @ =gBattleTypeFlags\n\ + ldrh r0, [r0]\n\ + movs r1, 0x1\n\ + ands r1, r0\n\ + cmp r1, 0\n\ + beq _08014A64\n\ + ldr r1, _08014A54 @ =gBattleCommunication\n\ + movs r0, 0x2\n\ + strb r0, [r1, 0x5]\n\ + ldr r0, _08014A58 @ =gBankAttacker\n\ + mov r8, r0\n\ + ldr r1, _08014A5C @ =gBattlescriptCurrInstr\n\ + mov r9, r1\n\ + ldr r2, _08014A60 @ =gBattlescriptsForUsingItem\n\ + mov r10, r2\n\ + b _08014A74\n\ + .align 2, 0\n\ +_08014A50: .4byte gBattleTypeFlags\n\ +_08014A54: .4byte gBattleCommunication\n\ +_08014A58: .4byte gBankAttacker\n\ +_08014A5C: .4byte gBattlescriptCurrInstr\n\ +_08014A60: .4byte gBattlescriptsForUsingItem\n\ +_08014A64:\n\ + ldr r0, _08014AA0 @ =gBattleCommunication\n\ + strb r1, [r0, 0x5]\n\ + ldr r3, _08014AA4 @ =gBankAttacker\n\ + mov r8, r3\n\ + ldr r0, _08014AA8 @ =gBattlescriptCurrInstr\n\ + mov r9, r0\n\ + ldr r1, _08014AAC @ =gBattlescriptsForUsingItem\n\ + mov r10, r1\n\ +_08014A74:\n\ + mov r2, r8\n\ + ldrb r0, [r2]\n\ + lsrs r0, 1\n\ + ldr r3, _08014AB0 @ =0x000160d8\n\ + adds r0, r3\n\ + adds r0, r7\n\ + ldrb r0, [r0]\n\ + lsls r0, 2\n\ + add r0, r10\n\ + ldr r0, [r0]\n\ + mov r1, r9\n\ + str r0, [r1]\n\ +_08014A8C:\n\ + movs r0, 0xA\n\ + ldr r2, _08014AB4 @ =gCurrentActionFuncId\n\ + strb r0, [r2]\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\ + .align 2, 0\n\ +_08014AA0: .4byte gBattleCommunication\n\ +_08014AA4: .4byte gBankAttacker\n\ +_08014AA8: .4byte gBattlescriptCurrInstr\n\ +_08014AAC: .4byte gBattlescriptsForUsingItem\n\ +_08014AB0: .4byte 0x000160d8\n\ +_08014AB4: .4byte gCurrentActionFuncId\n\ + .syntax divided\n"); +} +#endif // NONMATCHING + +bool8 TryRunFromBattle(u8 bank) +{ + bool8 effect = FALSE; + u8 holdEffect; + u8 speedVar; + + if (gBattleMons[bank].item == ITEM_ENIGMA_BERRY) + holdEffect = gEnigmaBerries[bank].holdEffect; + else + holdEffect = ItemId_GetHoldEffect(gBattleMons[bank].item); + + gStringBank = bank; + + if (holdEffect == HOLD_EFFECT_CAN_ALWAYS_RUN) + { + gLastUsedItem = gBattleMons[bank].item ; + gProtectStructs[bank].fleeFlag = 1; + effect++; + } + else if (gBattleMons[bank].ability == ABILITY_RUN_AWAY) + { + gLastUsedAbility = ABILITY_RUN_AWAY; + gProtectStructs[bank].fleeFlag = 2; + effect++; + } + else + { + if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) + { + if (gBattleMons[bank].speed < gBattleMons[bank ^ BIT_SIDE].speed) + { + speedVar = (gBattleMons[bank].speed * 128) / (gBattleMons[bank ^ BIT_SIDE].speed) + (ewram16078 * 30); + if (speedVar > (Random() & 0xFF)) + effect++; + } + else // same speed or faster + { + effect++; + } + } + + ewram16078++; + } + + if (effect) + { + gCurrentTurnActionNumber = gNoOfAllBanks; + gBattleOutcome = BATTLE_RAN; + } + + return effect; +} + +void HandleAction_Run(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + gCurrentTurnActionNumber = gNoOfAllBanks; + + for (gActiveBank = 0; gActiveBank < gNoOfAllBanks; gActiveBank++) + { + if (GetBankSide(gActiveBank) == SIDE_PLAYER) + { + if (gActionForBanks[gActiveBank] == ACTION_RUN) + gBattleOutcome |= BATTLE_LOST; + } + else + { + if (gActionForBanks[gActiveBank] == ACTION_RUN) + gBattleOutcome |= BATTLE_WON; + } + } + + gBattleOutcome |= OUTCOME_LINK_BATTLE_RUN; + } + else + { + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + { + if (!TryRunFromBattle(gBankAttacker)) // failed to run away + { + gBattleMons[gBankAttacker].status2 &= ~STATUS2_DESTINY_BOND; + gBattleCommunication[MULTISTRING_CHOOSER] = 3; + gBattlescriptCurrInstr = BattleScript_PrintFailedToRunString; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; + } + } + else + { + if (gBattleMons[gBankAttacker].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION)) + { + gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattlescriptCurrInstr = BattleScript_PrintFailedToRunString; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; + } + else + { + gCurrentTurnActionNumber = gNoOfAllBanks; + gBattleOutcome = BATTLE_POKE_FLED; + } + } + } +} + +void HandleAction_WatchesCarefully(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + gBattlescriptCurrInstr = gBattlescriptsForSafariActions[0]; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; +} + +void HandleAction_SafariZoneBallThrow(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + gNumSafariBalls--; + gLastUsedItem = ITEM_SAFARI_BALL; + gBattlescriptCurrInstr = gBattlescriptsForBallThrow[ITEM_SAFARI_BALL]; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; +} + +void HandleAction_ThrowPokeblock(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = gBattleBufferB[gBankAttacker][1] - 1; + gLastUsedItem = gBattleBufferB[gBankAttacker][2]; + + if (ewram16087 < 3) + ewram16087++; + if (ewram16088 > 1) + { + if (ewram16088 < gUnknown_081FA70C[ewram16087][gBattleCommunication[MULTISTRING_CHOOSER]]) + ewram16088 = 1; + else + ewram16088 -= gUnknown_081FA70C[ewram16087][gBattleCommunication[MULTISTRING_CHOOSER]]; + } + + gBattlescriptCurrInstr = gBattlescriptsForSafariActions[2]; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; +} + +void HandleAction_GoNear(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + + ewram16089 += gUnknown_081FA71B[ewram16086]; + if (ewram16089 > 20) + ewram16089 = 20; + + ewram16088 += gUnknown_081FA71F[ewram16086]; + if (ewram16088 > 20) + ewram16088 = 20; + + if (ewram16086 < 3) + { + ewram16086++; + gBattleCommunication[MULTISTRING_CHOOSER] = 0; + } + else + { + gBattleCommunication[MULTISTRING_CHOOSER] = 1; + } + gBattlescriptCurrInstr = gBattlescriptsForSafariActions[1]; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; +} + +void HandleAction_SafriZoneRun(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + PlaySE(SE_NIGERU); + gCurrentTurnActionNumber = gNoOfAllBanks; + gBattleOutcome = BATTLE_RAN; +} + +void HandleAction_Action9(void) +{ + gBankAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; + + PREPARE_MON_NICK_BUFFER(gBattleTextBuff1, gBankAttacker, gBattlePartyID[gBankAttacker]) + + gBattlescriptCurrInstr = gBattlescriptsForSafariActions[3]; + gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; + gActionsByTurnOrder[1] = ACTION_FINISHED; +} + +void HandleAction_Action11(void) +{ + if (!HandleFaintedMonActions()) + { + ewram16059 = 0; + gCurrentActionFuncId = ACTION_FINISHED; + } +} + +void HandleAction_NothingIsFainted(void) +{ + gCurrentTurnActionNumber++; + gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber]; + gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED + | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR + | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_x100000 + | HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT + | HITMARKER_x8000000 | HITMARKER_x4000000); +} + +void HandleAction_ActionFinished(void) +{ + gCurrentTurnActionNumber++; + gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber]; + SpecialStatusesClear(); + gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED + | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR + | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_x100000 + | HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT + | HITMARKER_x8000000 | HITMARKER_x4000000); + + gBattleMoveDamage = 0; + ewram16002 = 0; + ewram160A1 = 0; + gMoveHitWith[gBankAttacker] = 0; + gUnknown_02024C44[gBankAttacker] = 0; + eDynamicMoveType = 0; + gDynamicBasePower = 0; + ewram1600C = 0; + gBattleCommunication[3] = 0; + gBattleCommunication[4] = 0; + eMultihitMoveEffect = 0; + ewram17130 = 0; +} diff --git a/src/battle/battle_4.c b/src/battle/battle_4.c index 0c147e471..5a20a8324 100644 --- a/src/battle/battle_4.c +++ b/src/battle/battle_4.c @@ -1,5 +1,6 @@ #include "global.h" #include "battle.h" +#include "battle_util.h" #include "constants/battle_move_effects.h" #include "constants/moves.h" #include "constants/abilities.h" @@ -35,8 +36,8 @@ extern u8 gActiveBank; extern u32 gBattleExecBuffer; extern u8 gNoOfAllBanks; extern u16 gBattlePartyID[4]; -extern u8 gTurnOrder[4]; -extern u8 gUnknown_02024A76[4]; +extern u8 gBanksByTurnOrder[4]; +extern u8 gActionsByTurnOrder[4]; extern u16 gCurrentMove; extern u8 gLastUsedAbility; extern u16 gBattleWeather; @@ -45,7 +46,7 @@ extern u8 gEffectBank; extern u8 gAbsentBankFlags; extern u8 gMultiHitCounter; extern u16 gLastUsedMove[4]; -extern u16 gLockedMove[4]; +extern u16 gLockedMoves[4]; extern u16 gChosenMovesByBanks[4]; extern u16 gSideAffecting[2]; extern u16 gPauseCounterBattle; @@ -58,7 +59,7 @@ extern u8 gBankAttacker; extern u8 gBankTarget; extern u8* gBattlescriptCurrInstr; extern u8 gCurrMovePos; -extern u8 gFightStateTracker; +extern u8 gCurrentActionFuncId; extern u32 gHitMarker; extern u8 gBattleMoveFlags; extern u8 gBattleCommunication[]; @@ -94,18 +95,17 @@ extern u8 gActionForBanks[4]; extern u16 gUnknown_02024C2C[4]; //last used moves 2, used by sketch extern u16 gUnknown_030041B0; extern u16 gUnknown_02024C4C[4]; //last used moves by banks, another one -extern u8 gCurrentMoveTurn; +extern u8 gCurrentTurnActionNumber; extern u16 gTrappingMoves[]; //extern functions u8 AtkCanceller_UnableToUseMove(void); void PressurePPLose(u8 bank_atk, u8 bank_def, u16 move); void CancelMultiTurnMoves(u8 bank); -void b_movescr_stack_push(u8* BS_ptr); -void b_movescr_stack_push_cursor(void); +void BattleScriptPush(u8* BS_ptr); +void BattleScriptPushCursor(void); void RecordAbilityBattle(u8 bank, u8 ability); void RecordItemBattle(u8 bank, u8 holdEffect); -int IsPokeDisobedient(void); static bool8 IsTwoTurnsMove(u16 move); static void DestinyBondFlagUpdate(void); static void b_wonderguard_and_levitate(void); @@ -122,16 +122,15 @@ extern u8 gBattleBufferB[4][0x200]; void sub_80324F8(struct Pokemon*, u8 bank); void AdjustFriendship(struct Pokemon*, u8 value); bool8 IsTradedMon(struct Pokemon*); -void b_movescr_stack_pop_cursor(void); +void BattleScriptPop(void); void SwitchInClearStructs(void); u8* ConvertIntToDecimalStringN(u8*, s32, u8, u8); u8 GetSetPokedexFlag(u16 nationalNum, u8 caseID); u16 SpeciesToNationalPokedexNum(u16 species); u8 sub_803FC34(u8 bank); u16 sub_803FBFC(u8 a); -u8 GetBankByPlayerAI(u8 ID); +u8 GetBankByIdentity(u8 ID); void sub_8012258(u8); -void sub_80157C4(u8 bank); //update sent pokes in battle //MonTryLearningNewMove teach poke a move u16 GiveMoveToBattleMon(struct BattlePokemon *mon, u16 move); void IncrementGameStat(u8 index); @@ -145,24 +144,19 @@ bool32 IsHMMove2(u16 move); void sub_802BBD4(u8 r0, u8 r1, u8 r2, u8 r3, u8 sp0); void nullsub_6(void); void ReshowBattleScreenAfterMenu(void); -void sub_800F808(void); +void BattleMainCB2(void); void AddMoney(u32* moneySaveblock, u32 to_give); -void sub_80156DC(void); //set sentpokes value -bool8 sub_8014AB8(u8 bank); //can run from battle u8 CountAliveMons(u8 caseID); void sub_803E1B0(struct Pokemon*, u16 item, u8 partyID, u8 r3, u8 sp); u8 CanRunFromBattle(void); u8 GetMoveTarget(u16 move, u8 targetbyte); //get target of move -void sub_80153D0(u8 atk); //pressure perish song pp decrement u8 CastformDataTypeChange(u8 bank); -void b_push_move_exec(u8* bs_ptr); u8 Overworld_GetMapTypeOfSaveblockLocation(void); u8 CalculatePlayerPartyCount(void); u16 Sqrt(u32 num); u8 sub_809070C(u16 nationalNum, u32 TiD, u32 PiD); //task prepare poke dex display void sub_814A880(u8 a1, u8 a2); u8 CheckMoveLimitations(u8 bank, u8 unusable_moves, u8 flags); -void sub_801529C(u8 bank); bool8 IsLinkDoubleBattle(void); void sub_8094B6C(u8 bank, u8 partyID, u8 r2); @@ -1028,7 +1022,7 @@ static void atk00_attackcanceler(void) int i; if (gBattleOutcome) { - gFightStateTracker = 0xC; + gCurrentActionFuncId = 0xC; return; } if (gBattleMons[gBankAttacker].hp == 0 && !(gHitMarker & HITMARKER_NO_ATTACKSTRING)) @@ -1051,7 +1045,7 @@ static void atk00_attackcanceler(void) gHitMarker &= ~(HITMARKER_x800000); if (!(gHitMarker & HITMARKER_OBEYS) && !(gBattleMons[gBankAttacker].status2 & STATUS2_MULTIPLETURNS)) { - u8 disobedient = IsPokeDisobedient(); + u8 disobedient = IsMonDisobedient(); asm("":::"r0"); //It's impossible to match asm("":::"r1"); if ((disobedient)) @@ -1068,18 +1062,18 @@ static void atk00_attackcanceler(void) { PressurePPLose(gBankAttacker, gBankTarget, MOVE_MAGIC_COAT); gProtectStructs[gBankTarget].bounceMove = 0; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MagicCoatBounce; return; } for (i = 0; i < gNoOfAllBanks; i++) { - if ((gProtectStructs[gTurnOrder[i]].stealMove) && gBattleMoves[gCurrentMove].flags & FLAG_SNATCH_AFFECTED) + if ((gProtectStructs[gBanksByTurnOrder[i]].stealMove) && gBattleMoves[gCurrentMove].flags & FLAG_SNATCH_AFFECTED) { - PressurePPLose(gBankAttacker, gTurnOrder[i], MOVE_SNATCH); - gProtectStructs[gTurnOrder[i]].stealMove = 0; - BATTLE_STRUCT->scriptingActive = gTurnOrder[i]; - b_movescr_stack_push_cursor(); + PressurePPLose(gBankAttacker, gBanksByTurnOrder[i], MOVE_SNATCH); + gProtectStructs[gBanksByTurnOrder[i]].stealMove = 0; + BATTLE_STRUCT->scriptingActive = gBanksByTurnOrder[i]; + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SnatchedMove; return; } @@ -1088,7 +1082,7 @@ static void atk00_attackcanceler(void) { gSpecialStatuses[gBankTarget].lightningRodRedirected = 0; gLastUsedAbility = ABILITY_LIGHTNING_ROD; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_TookAttack; RecordAbilityBattle(gBankTarget, gLastUsedAbility); } @@ -1326,7 +1320,7 @@ static void atk03_ppreduce(void) && !((gDisableStructs[gBankAttacker].unk18_b) & gBitTable[gCurrMovePos])) { gActiveBank = gBankAttacker; - EmitSetAttributes(0, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0, 1, &gBattleMons[gBankAttacker].pp[gCurrMovePos]); + EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0, 1, &gBattleMons[gBankAttacker].pp[gCurrMovePos]); MarkBufferBankForExecution(gBankAttacker); } } @@ -1845,7 +1839,7 @@ static void atk09_attackanimation(void) if ((gHitMarker & HITMARKER_NO_ANIMATIONS) && (gCurrentMove != MOVE_TRANSFORM && gCurrentMove != MOVE_SUBSTITUTE)) { - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_Pausex20; BATTLE_STRUCT->animTurn += 1; BATTLE_STRUCT->animTargetsHit += 1; @@ -1869,7 +1863,7 @@ static void atk09_attackanimation(void) } else { - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_Pausex20; } } @@ -1948,7 +1942,7 @@ static void atk0C_datahpupdate(void) if (gDisableStructs[gActiveBank].substituteHP == 0) { gBattlescriptCurrInstr += 2; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SubstituteFade; return; } @@ -2024,7 +2018,7 @@ static void atk0C_datahpupdate(void) } } gHitMarker &= ~(HITMARKER_x100000); - EmitSetAttributes(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBank].hp); + EmitSetMonData(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBank].hp); MarkBufferBankForExecution(gActiveBank); } } @@ -2133,7 +2127,7 @@ static void atk0F_resultmessage(void) gLastUsedItem = gBattleMons[gBankTarget].item; gStringBank = gBankTarget; gBattleMoveFlags &= ~(MOVESTATUS_ENDURED | MOVESTATUS_HUNGON); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_HangedOnMsg; return; default: @@ -2145,14 +2139,14 @@ static void atk0F_resultmessage(void) gBattleMoveFlags &= ~(MOVESTATUS_ONEHITKO); gBattleMoveFlags &= ~(MOVESTATUS_SUPEREFFECTIVE); gBattleMoveFlags &= ~(MOVESTATUS_NOTVERYEFFECTIVE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_OneHitKOMsg; return; } else if (gBattleMoveFlags & MOVESTATUS_ENDURED) { gBattleMoveFlags &= ~(MOVESTATUS_ENDURED | MOVESTATUS_HUNGON); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_EnduredMsg; return; } @@ -2161,7 +2155,7 @@ static void atk0F_resultmessage(void) gLastUsedItem = gBattleMons[gBankTarget].item; gStringBank = gBankTarget; gBattleMoveFlags &= ~(MOVESTATUS_ENDURED | MOVESTATUS_HUNGON); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_HangedOnMsg; return; } @@ -2253,7 +2247,7 @@ u8 BankGetTurnOrder(u8 bank) int i; for (i = 0; i < gNoOfAllBanks; i++) { - if (gTurnOrder[i] == bank) + if (gBanksByTurnOrder[i] == bank) break; } return i; @@ -2322,7 +2316,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { gLastUsedAbility = ABILITY_IMMUNITY; RecordAbilityBattle(gEffectBank, ABILITY_IMMUNITY); - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); //_0801E664: gBattlescriptCurrInstr = BattleScript_PSNPrevention; if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) @@ -2337,7 +2331,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) if ((gBattleMons[gEffectBank].type1 == TYPE_POISON || gBattleMons[gEffectBank].type2 == TYPE_POISON || gBattleMons[gEffectBank].type1 == TYPE_STEEL || gBattleMons[gEffectBank].type2 == TYPE_STEEL) && !(gHitMarker & HITMARKER_IGNORE_SAFEGUARD) && (primary == 1 || certain == 0x80)) { - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_PSNPrevention; gBattleCommunication[MULTISTRING_CHOOSER] = 2; return; @@ -2356,7 +2350,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { gLastUsedAbility = ABILITY_WATER_VEIL; RecordAbilityBattle(gEffectBank, ABILITY_WATER_VEIL); - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); //_0801E664: gBattlescriptCurrInstr = BattleScript_BRNPrevention; if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) @@ -2371,7 +2365,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) if ((gBattleMons[gEffectBank].type1 == TYPE_FIRE || gBattleMons[gEffectBank].type2 == TYPE_FIRE) && !(gHitMarker & HITMARKER_IGNORE_SAFEGUARD) && (primary == 1 || certain == 0x80)) { - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_BRNPrevention; gBattleCommunication[MULTISTRING_CHOOSER] = 2; return; @@ -2400,7 +2394,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { gLastUsedAbility = ABILITY_LIMBER; RecordAbilityBattle(gEffectBank, ABILITY_LIMBER); - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); //_0801E664: gBattlescriptCurrInstr = BattleScript_PRLZPrevention; if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) @@ -2422,7 +2416,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { gLastUsedAbility = ABILITY_IMMUNITY; RecordAbilityBattle(gEffectBank, ABILITY_IMMUNITY); - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); //_0801E664: gBattlescriptCurrInstr = BattleScript_PSNPrevention; if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) @@ -2437,7 +2431,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) if ((gBattleMons[gEffectBank].type1 == TYPE_POISON || gBattleMons[gEffectBank].type2 == TYPE_POISON || gBattleMons[gEffectBank].type1 == TYPE_STEEL || gBattleMons[gEffectBank].type2 == TYPE_STEEL) && !(gHitMarker & HITMARKER_IGNORE_SAFEGUARD) && (primary == 1 || certain == 0x80)) { - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_PSNPrevention; gBattleCommunication[MULTISTRING_CHOOSER] = 2; return; @@ -2459,14 +2453,14 @@ void SetMoveEffect(bool8 primary, u8 certainArg) } if (StatusChanged == 1) { - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); if (gStatusFlagsForMoveEffects[gBattleCommunication[MOVE_EFFECT_BYTE]] == STATUS_SLEEP) gBattleMons[gEffectBank].status1 |= ((Random() & 3) + 2); else gBattleMons[gEffectBank].status1 |= gStatusFlagsForMoveEffects[gBattleCommunication[MOVE_EFFECT_BYTE]]; gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; gActiveBank = gEffectBank; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gEffectBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gEffectBank].status1); MarkBufferBankForExecution(gActiveBank); if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { @@ -2500,7 +2494,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) if (gBattleMons[gEffectBank].status2 & STATUS2_CONFUSION) {gBattlescriptCurrInstr++; return;} gBattleMons[gEffectBank].status2 |= (((Random()) % 0x4)) + 2; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; break; case 8: //flinch @@ -2518,7 +2512,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) } else { - if (BankGetTurnOrder(gEffectBank) > gCurrentMoveTurn) + if (BankGetTurnOrder(gEffectBank) > gCurrentTurnActionNumber) gBattleMons[gEffectBank].status2 |= gStatusFlagsForMoveEffects[gBattleCommunication[MOVE_EFFECT_BYTE]]; gBattlescriptCurrInstr++; return; } @@ -2527,9 +2521,9 @@ void SetMoveEffect(bool8 primary, u8 certainArg) if (gBattleMons[gEffectBank].status2 & STATUS2_UPROAR) {gBattlescriptCurrInstr++; return;} gBattleMons[gEffectBank].status2 |= STATUS2_MULTIPLETURNS; - gLockedMove[gEffectBank] = gCurrentMove; + gLockedMoves[gEffectBank] = gCurrentMove; gBattleMons[gEffectBank].status2 |= ((Random() & 3) + 2) << 4; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; break; case 11: //pay day @@ -2540,7 +2534,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) if (PayDay > gPaydayMoney) gPaydayMoney = 0xFFFF; } - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; break; case 9: //tri attack @@ -2551,7 +2545,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) break; case 12: //charging move gBattleMons[gEffectBank].status2 |= STATUS2_MULTIPLETURNS; - gLockedMove[gEffectBank] = gCurrentMove; + gLockedMoves[gEffectBank] = gCurrentMove; gProtectStructs[gEffectBank].chargingTurn = 1; gBattlescriptCurrInstr++; break; @@ -2562,7 +2556,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) BATTLE_STRUCT->wrappedMove[gEffectBank*2] = (u8)gCurrentMove; (1 + BATTLE_STRUCT->wrappedMove)[gEffectBank*2] = gCurrentMove >> 8; //don't ask. BATTLE_STRUCT->wrappedBy[gEffectBank] = gBankAttacker; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; gBattleCommunication[MULTISTRING_CHOOSER] = 0; while (gBattleCommunication[MULTISTRING_CHOOSER] <= 4 @@ -2573,7 +2567,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) gBattleMoveDamage = (gHP_dealt) / 4; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; break; case 15 ... 21: //stat + 1 @@ -2582,7 +2576,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { BATTLE_STRUCT->animArg1 = gBattleCommunication[MOVE_EFFECT_BYTE] & 0x3F; //TODO: the arg ptr is wrong by one BATTLE_STRUCT->animArg2 = 0; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_StatUp; } break; @@ -2592,7 +2586,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { BATTLE_STRUCT->animArg1 = gBattleCommunication[MOVE_EFFECT_BYTE] & 0x3F; BATTLE_STRUCT->animArg2 = 0; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_StatDown; } break; @@ -2602,7 +2596,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { BATTLE_STRUCT->animArg1 = gBattleCommunication[MOVE_EFFECT_BYTE] & 0x3F; BATTLE_STRUCT->animArg2 = 0; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_StatUp; } break; @@ -2612,14 +2606,14 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { BATTLE_STRUCT->animArg1 = gBattleCommunication[MOVE_EFFECT_BYTE] & 0x3F; BATTLE_STRUCT->animArg2 = 0; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_StatDown; } break; case 29: //recharge gBattleMons[gEffectBank].status2 |= STATUS2_RECHARGE; gDisableStructs[gEffectBank].rechargeCounter = 2; - gLockedMove[gEffectBank] = gCurrentMove; + gLockedMoves[gEffectBank] = gCurrentMove; gBattlescriptCurrInstr++; break; case 30: //rage @@ -2635,7 +2629,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg) {gBattlescriptCurrInstr++; return;} if (gBattleMons[gBankTarget].item && gBattleMons[gBankTarget].ability == ABILITY_STICKY_HOLD) { - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_NoItemSteal; gLastUsedAbility = gBattleMons[gBankTarget].ability; RecordAbilityBattle(gBankTarget, gLastUsedAbility); @@ -2653,14 +2647,14 @@ void SetMoveEffect(bool8 primary, u8 certainArg) gBattleMons[gBankTarget].item = 0; gActiveBank = gBankAttacker; - EmitSetAttributes(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gLastUsedItem); + EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gLastUsedItem); MarkBufferBankForExecution(gBankAttacker); gActiveBank = gBankTarget; - EmitSetAttributes(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gBankTarget].item); + EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gBankTarget].item); MarkBufferBankForExecution(gBankTarget); - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_ItemSteal; CHOICED_MOVE(gBankTarget) = 0; @@ -2676,11 +2670,11 @@ void SetMoveEffect(bool8 primary, u8 certainArg) gBattlescriptCurrInstr++; break; case 34: //ancientpower - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_AllStatsUp; return; case 35: //break free rapidspin - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_RapidSpinAway; return; case 36: //paralysis removal @@ -2688,30 +2682,30 @@ void SetMoveEffect(bool8 primary, u8 certainArg) { gBattleMons[gBankTarget].status1 &= ~(STATUS_PARALYSIS); gActiveBank = gBankTarget; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gBankTarget].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gBankTarget].status1); MarkBufferBankForExecution(gActiveBank); - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_TargetPRLZHeal; } else {gBattlescriptCurrInstr++; return;} break; case 37: //superpower - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_AtkDefDown; return; case 38: //33% recoil gBattleMoveDamage = gHP_dealt / 3; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = gMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; break; case 53: //thrash if (!(gBattleMons[gEffectBank].status2 & STATUS2_LOCK_CONFUSE)) { gBattleMons[gEffectBank].status2 |= STATUS2_MULTIPLETURNS; - gLockedMove[gEffectBank] = gCurrentMove; + gLockedMoves[gEffectBank] = gCurrentMove; gBattleMons[gEffectBank].status2 |= (((Random() & 1) + 2) << 0xA); } else @@ -2735,14 +2729,14 @@ void SetMoveEffect(bool8 primary, u8 certainArg) gLastUsedItem = gBattleMons[gEffectBank].item; gBattleMons[gEffectBank].item = 0; gWishFutureKnock.knockedOffPokes[side] |= gBitTable[gBattlePartyID[gEffectBank]]; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_KnockedOff; CHOICED_MOVE(gEffectBank) = 0; } break; case 59: //overheat - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_SAtkDown2; return; } @@ -3066,7 +3060,7 @@ _0801E64A:\n\ ldr r4, _0801E67C @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801E680 @ =BattleScript_PSNPrevention\n\ _0801E664:\n\ str r0, [r4]\n\ @@ -3189,7 +3183,7 @@ _0801E72E:\n\ ldr r4, _0801E750 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801E754 @ =BattleScript_BRNPrevention\n\ b _0801E664\n\ .align 2, 0\n\ @@ -3229,7 +3223,7 @@ _0801E78E:\n\ ldr r4, _0801E7A0 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801E7A4 @ =BattleScript_BRNPrevention\n\ b _0801E998\n\ .align 2, 0\n\ @@ -3380,7 +3374,7 @@ _0801E8A6:\n\ ldr r4, _0801E8C8 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801E8CC @ =BattleScript_PRLZPrevention\n\ b _0801E664\n\ .align 2, 0\n\ @@ -3423,7 +3417,7 @@ _0801E8FE:\n\ ldr r4, _0801E93C @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801E940 @ =BattleScript_PSNPrevention\n\ str r0, [r4]\n\ ldr r2, _0801E944 @ =gHitMarker\n\ @@ -3484,7 +3478,7 @@ _0801E98C:\n\ ldr r4, _0801E9A8 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801E9AC @ =BattleScript_PSNPrevention\n\ _0801E998:\n\ str r0, [r4]\n\ @@ -3557,7 +3551,7 @@ _0801EA1C:\n\ ldr r0, _0801EA5C @ =gBattlescriptCurrInstr\n\ ldr r0, [r0]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801EA60 @ =gStatusFlagsForMoveEffects\n\ ldr r0, _0801EA64 @ =gBattleCommunication\n\ ldrb r0, [r0, 0x3]\n\ @@ -3622,7 +3616,7 @@ _0801EA84:\n\ movs r1, 0x28\n\ movs r2, 0\n\ movs r3, 0x4\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ ldrb r0, [r4]\n\ bl MarkBufferBankForExecution\n\ ldr r2, _0801EAF0 @ =gHitMarker\n\ @@ -3815,7 +3809,7 @@ _0801EC8E:\n\ ldr r4, _0801ECC8 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801ECCC @ =gMoveEffectBS_Ptrs\n\ ldr r0, _0801ECD0 @ =gBattleCommunication\n\ ldrb r0, [r0, 0x3]\n\ @@ -3861,7 +3855,7 @@ _0801ED14: .4byte BattleScript_FlinchPrevention\n\ _0801ED18:\n\ adds r0, r2, 0\n\ bl BankGetTurnOrder\n\ - ldr r1, _0801ED54 @ =gCurrentMoveTurn\n\ + ldr r1, _0801ED54 @ =gCurrentTurnActionNumber\n\ lsls r0, 24\n\ lsrs r0, 24\n\ ldrb r1, [r1]\n\ @@ -3887,7 +3881,7 @@ _0801ED2E:\n\ str r1, [r2]\n\ bl _0801F5DC\n\ .align 2, 0\n\ -_0801ED54: .4byte gCurrentMoveTurn\n\ +_0801ED54: .4byte gCurrentTurnActionNumber\n\ _0801ED58: .4byte gStatusFlagsForMoveEffects\n\ _0801ED5C: .4byte gBattleCommunication\n\ _0801ED60:\n\ @@ -3909,7 +3903,7 @@ _0801ED7C:\n\ lsls r0, 5\n\ orrs r1, r0\n\ str r1, [r2]\n\ - ldr r1, _0801EDC8 @ =gLockedMove\n\ + ldr r1, _0801EDC8 @ =gLockedMoves\n\ ldrb r0, [r3]\n\ lsls r0, 1\n\ adds r0, r1\n\ @@ -3932,7 +3926,7 @@ _0801ED7C:\n\ ldr r4, _0801EDD0 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801EDD4 @ =gMoveEffectBS_Ptrs\n\ ldr r0, _0801EDD8 @ =gBattleCommunication\n\ ldrb r0, [r0, 0x3]\n\ @@ -3941,7 +3935,7 @@ _0801ED7C:\n\ ldr r0, [r0]\n\ bl _0801F5F8\n\ .align 2, 0\n\ -_0801EDC8: .4byte gLockedMove\n\ +_0801EDC8: .4byte gLockedMoves\n\ _0801EDCC: .4byte gCurrentMove\n\ _0801EDD0: .4byte gBattlescriptCurrInstr\n\ _0801EDD4: .4byte gMoveEffectBS_Ptrs\n\ @@ -3978,7 +3972,7 @@ _0801EE14:\n\ ldr r4, _0801EE40 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801EE44 @ =gMoveEffectBS_Ptrs\n\ ldr r0, _0801EE48 @ =gBattleCommunication\n\ ldrb r0, [r0, 0x3]\n\ @@ -4035,7 +4029,7 @@ _0801EE84:\n\ lsls r1, 5\n\ orrs r0, r1\n\ str r0, [r2]\n\ - ldr r1, _0801EEC0 @ =gLockedMove\n\ + ldr r1, _0801EEC0 @ =gLockedMoves\n\ mov r2, r8\n\ ldrb r0, [r2]\n\ lsls r0, 1\n\ @@ -4053,7 +4047,7 @@ _0801EE84:\n\ strb r0, [r1, 0x1]\n\ b _0801F5DC\n\ .align 2, 0\n\ -_0801EEC0: .4byte gLockedMove\n\ +_0801EEC0: .4byte gLockedMoves\n\ _0801EEC4: .4byte gCurrentMove\n\ _0801EEC8: .4byte gProtectStructs\n\ _0801EECC:\n\ @@ -4113,7 +4107,7 @@ _0801EEE8:\n\ ldr r4, _0801EF98 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801EF9C @ =gMoveEffectBS_Ptrs\n\ ldr r2, _0801EFA0 @ =gBattleCommunication\n\ ldrb r0, [r2, 0x3]\n\ @@ -4178,7 +4172,7 @@ _0801EFC0:\n\ ldr r4, _0801EFE0 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801EFE4 @ =gMoveEffectBS_Ptrs\n\ ldr r0, _0801EFE8 @ =gBattleCommunication\n\ ldrb r0, [r0, 0x3]\n\ @@ -4220,7 +4214,7 @@ _0801F008:\n\ ldr r4, _0801F038 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F03C @ =BattleScript_StatUp\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4258,7 +4252,7 @@ _0801F05E:\n\ ldr r4, _0801F08C @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F090 @ =BattleScript_StatDown\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4295,7 +4289,7 @@ _0801F0B0:\n\ ldr r4, _0801F0E0 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F0E4 @ =BattleScript_StatUp\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4333,7 +4327,7 @@ _0801F106:\n\ ldr r4, _0801F134 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F138 @ =BattleScript_StatDown\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4365,7 +4359,7 @@ _0801F13C:\n\ adds r0, r2\n\ movs r1, 0x2\n\ strb r1, [r0, 0x19]\n\ - ldr r1, _0801F17C @ =gLockedMove\n\ + ldr r1, _0801F17C @ =gLockedMoves\n\ ldrb r0, [r3]\n\ lsls r0, 1\n\ adds r0, r1\n\ @@ -4375,7 +4369,7 @@ _0801F13C:\n\ b _0801F5DC\n\ .align 2, 0\n\ _0801F178: .4byte gDisableStructs\n\ -_0801F17C: .4byte gLockedMove\n\ +_0801F17C: .4byte gLockedMoves\n\ _0801F180: .4byte gCurrentMove\n\ _0801F184:\n\ ldr r0, _0801F1A0 @ =gBankAttacker\n\ @@ -4546,7 +4540,7 @@ _0801F2B6:\n\ movs r1, 0x2\n\ movs r2, 0\n\ movs r3, 0x2\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ mov r3, r10\n\ ldrb r0, [r3]\n\ bl MarkBufferBankForExecution\n\ @@ -4564,13 +4558,13 @@ _0801F2B6:\n\ movs r1, 0x2\n\ movs r2, 0\n\ movs r3, 0x2\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ ldrb r0, [r7]\n\ bl MarkBufferBankForExecution\n\ ldr r4, _0801F350 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F354 @ =BattleScript_ItemSteal\n\ str r0, [r4]\n\ ldr r0, _0801F358 @ =0xfffe9f10\n\ @@ -4645,7 +4639,7 @@ _0801F3BC:\n\ ldr r4, _0801F3CC @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F3D0 @ =BattleScript_AllStatsUp\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4655,7 +4649,7 @@ _0801F3D4:\n\ ldr r4, _0801F3E4 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F3E8 @ =BattleScript_RapidSpinAway\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4691,13 +4685,13 @@ _0801F406:\n\ movs r1, 0x28\n\ movs r2, 0\n\ movs r3, 0x4\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ ldrb r0, [r4]\n\ bl MarkBufferBankForExecution\n\ ldr r4, _0801F444 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F448 @ =BattleScript_TargetPRLZHeal\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4709,7 +4703,7 @@ _0801F44C:\n\ ldr r4, _0801F45C @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F460 @ =BattleScript_AtkDefDown\n\ b _0801F5F8\n\ .align 2, 0\n\ @@ -4730,7 +4724,7 @@ _0801F47A:\n\ ldr r4, _0801F49C @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _0801F4A0 @ =gMoveEffectBS_Ptrs\n\ ldr r0, _0801F4A4 @ =gBattleCommunication\n\ ldrb r0, [r0, 0x3]\n\ @@ -4764,7 +4758,7 @@ _0801F4C4:\n\ lsls r0, 5\n\ orrs r1, r0\n\ str r1, [r2]\n\ - ldr r1, _0801F4F8 @ =gLockedMove\n\ + ldr r1, _0801F4F8 @ =gLockedMoves\n\ ldrb r0, [r3]\n\ lsls r0, 1\n\ adds r0, r1\n\ @@ -4787,7 +4781,7 @@ _0801F4F2:\n\ str r0, [r2]\n\ b _0801F5FA\n\ .align 2, 0\n\ -_0801F4F8: .4byte gLockedMove\n\ +_0801F4F8: .4byte gLockedMoves\n\ _0801F4FC: .4byte gCurrentMove\n\ _0801F500:\n\ mov r5, r8\n\ @@ -4858,7 +4852,7 @@ _0801F540:\n\ ldr r4, _0801F5C8 @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F5CC @ =BattleScript_KnockedOff\n\ str r0, [r4]\n\ ldr r1, _0801F5D0 @ =gSharedMem\n\ @@ -4898,7 +4892,7 @@ _0801F5EC:\n\ ldr r4, _0801F60C @ =gBattlescriptCurrInstr\n\ ldr r0, [r4]\n\ adds r0, 0x1\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _0801F610 @ =BattleScript_SAtkDown2\n\ _0801F5F8:\n\ str r0, [r4]\n\ @@ -4978,7 +4972,7 @@ static void atk19_tryfaintmon(void) { r4 = T1_READ_PTR(gBattlescriptCurrInstr + 3); - b_movescr_stack_pop_cursor(); + BattleScriptPop(); gBattlescriptCurrInstr = r4; gSideAffecting[GetBankSide(gActiveBank)] &= ~SIDE_STATUS_SPIKES_DAMAGED; } @@ -5014,7 +5008,7 @@ static void atk19_tryfaintmon(void) ewram16100arr2(3, bank) = 0; gHitMarker |= HITMARKER_FAINTED(gActiveBank); - b_movescr_stack_push(gBattlescriptCurrInstr + 7); + BattleScriptPush(gBattlescriptCurrInstr + 7); gBattlescriptCurrInstr = r4; if (GetBankSide(gActiveBank) == 0) { @@ -5037,7 +5031,7 @@ static void atk19_tryfaintmon(void) } if ((gHitMarker & HITMARKER_DESTINYBOND) && gBattleMons[gBankAttacker].hp != 0) { - b_movescr_stack_push(gBattlescriptCurrInstr); + BattleScriptPush(gBattlescriptCurrInstr); gBattleMoveDamage = gBattleMons[bank].hp; gBattlescriptCurrInstr = BattleScript_DestinyBondTakesLife; } @@ -5050,10 +5044,10 @@ static void atk19_tryfaintmon(void) u8 moveIndex = ewram1608Carr(gBankAttacker); gBattleMons[gBankAttacker].pp[moveIndex] = 0; - b_movescr_stack_push(gBattlescriptCurrInstr); + BattleScriptPush(gBattlescriptCurrInstr); gBattlescriptCurrInstr = BattleScript_SelectingImprisionedMoveInPalace; gActiveBank = gBankAttacker; - EmitSetAttributes(0, moveIndex + 9, 0, 1, &gBattleMons[gActiveBank].pp[moveIndex]); + EmitSetMonData(0, moveIndex + 9, 0, 1, &gBattleMons[gActiveBank].pp[moveIndex]); MarkBufferBankForExecution(gActiveBank); gBattleTextBuff1[0] = 0xFD; @@ -5088,7 +5082,7 @@ static void atk1B_cleareffectsonfaint(void) { gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1)); gBattleMons[gActiveBank].status1 = 0; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 0x4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 0x4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); UndoEffectsAfterFainting(); gBattlescriptCurrInstr += 2; @@ -5477,7 +5471,7 @@ static void atk23_getexp(void) gBattleTextBuff2[4] = GetMonData(&gPlayerParty[BATTLE_STRUCT->expGetterID], MON_DATA_LEVEL); gBattleTextBuff2[5] = 0xFF; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gLeveledUpInBattle |= gBitTable[BATTLE_STRUCT->expGetterID]; gBattlescriptCurrInstr = BattleScript_LevelUp; gBattleMoveDamage = (gBattleBufferB[gActiveBank][2] | (gBattleBufferB[gActiveBank][3] << 8)); @@ -6354,7 +6348,7 @@ _080206A8:\n\ movs r0, 0x1\n\ negs r0, r0\n\ strb r0, [r4, 0x5]\n\ - bl b_movescr_stack_push_cursor\n\ + bl BattleScriptPushCursor\n\ ldr r2, _080208D8 @ =gLeveledUpInBattle\n\ ldr r1, _080208DC @ =gBitTable\n\ ldrb r0, [r6]\n\ @@ -7283,26 +7277,26 @@ static void atk3B_healthbar_update(void) static void atk3C_return(void) { - b_movescr_stack_pop_cursor(); + BattleScriptPop(); } static void atk3D_end(void) { gBattleMoveFlags = 0; gActiveBank = 0; - gFightStateTracker = 0xB; + gCurrentActionFuncId = 0xB; } static void atk3E_end2(void) { //not much difference between this and 3D. It's more apparent in Emerald gActiveBank = 0; - gFightStateTracker = 0xB; + gCurrentActionFuncId = 0xB; } static void atk3F_end3(void) //pops the main function stack { - b_movescr_stack_pop_cursor(); + BattleScriptPop(); if (B_FUNCTION_STACK->size) B_FUNCTION_STACK->size--; gBattleMainFunc = B_FUNCTION_STACK->ptr[B_FUNCTION_STACK->size]; @@ -7310,7 +7304,7 @@ static void atk3F_end3(void) //pops the main function stack static void atk41_call(void) { - b_movescr_stack_push(gBattlescriptCurrInstr + 5); + BattleScriptPush(gBattlescriptCurrInstr + 5); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } @@ -7354,7 +7348,7 @@ static void atk45_playanimation(void) } else if (gHitMarker & HITMARKER_NO_ANIMATIONS) { - b_movescr_stack_push(gBattlescriptCurrInstr + 7); + BattleScriptPush(gBattlescriptCurrInstr + 7); gBattlescriptCurrInstr = BattleScript_Pausex20; } else if (gBattlescriptCurrInstr[2] == B_ANIM_RAIN_CONTINUES @@ -7467,7 +7461,7 @@ static void atk48_playstatchangeanimation(void) if (!(T2_READ_8(gBattlescriptCurrInstr + 3))) { u8 ability; - if (gSideTimer[GetBankIdentity(gActiveBank) & 1].mistTimer) + if (gSideTimers[GetBankIdentity(gActiveBank) & 1].mistTimer) continue; ability = gBattleMons[gActiveBank].ability; if (ability == ABILITY_CLEAR_BODY || ability == ABILITY_WHITE_SMOKE || (ability == ABILITY_KEEN_EYE && curr_stat == 6) || (ability == ABILITY_HYPER_CUTTER && curr_stat == 1)) @@ -7602,7 +7596,7 @@ _0802167C:\n\ lsls r0, r1, 1\n\ adds r0, r1\n\ lsls r0, 2\n\ - ldr r1, _08021704 @ =gSideTimer\n\ + ldr r1, _08021704 @ =gSideTimers\n\ adds r0, r1\n\ ldrb r0, [r0, 0x2]\n\ ldr r3, [sp]\n\ @@ -7665,7 +7659,7 @@ _080216E4:\n\ b _08021770\n\ .align 2, 0\n\ _08021700: .4byte gActiveBank\n\ -_08021704: .4byte gSideTimer\n\ +_08021704: .4byte gSideTimers\n\ _08021708: .4byte gBattleMons\n\ _0802170C: .4byte gBattlescriptCurrInstr\n\ _08021710:\n\ @@ -7830,7 +7824,7 @@ static void atk49_moveend(void) && gBattleMoves[gCurrentMove].power && gBattleMons[gBankTarget].statStages[STAT_STAGE_ATK] <= 0xB) { gBattleMons[gBankTarget].statStages[STAT_STAGE_ATK]++; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_RageIsBuilding; effect = 1; } @@ -7844,9 +7838,9 @@ static void atk49_moveend(void) { gBattleMons[gBankTarget].status1 &= ~(STATUS_FREEZE); gActiveBank = gBankTarget; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gBankTarget].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gBankTarget].status1); MarkBufferBankForExecution(gActiveBank); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_DefrostedViaFireMove; effect = 1; } @@ -7904,10 +7898,9 @@ static void atk49_moveend(void) } BATTLE_STRUCT->cmd49StateTracker++; break; - //sub_8015660 CheckIfMoveFailed case 9: //semi-invlurneable attacker make visible if (!(gBattleMoveFlags & MOVESTATUS_NOEFFECT) || !(gStatuses3[gBankAttacker] & (STATUS3_ON_AIR | STATUS3_UNDERGROUND | STATUS3_UNDERWATER)) - || sub_8015660(gBankAttacker)) + || WasUnableToUseMove(gBankAttacker)) { gActiveBank = gBankAttacker; EmitSpriteInvisibility(0, 0); @@ -7919,7 +7912,7 @@ static void atk49_moveend(void) break; case 10: //semi-invlurneable target make visible if (!(gBattleMoveFlags & MOVESTATUS_NOEFFECT) || !(gStatuses3[gBankTarget] & (STATUS3_ON_AIR | STATUS3_UNDERGROUND | STATUS3_UNDERWATER)) - || sub_8015660(gBankTarget)) + || WasUnableToUseMove(gBankTarget)) { gActiveBank = gBankTarget; EmitSpriteInvisibility(0, 0); @@ -8019,7 +8012,7 @@ _08021874:\n\ lsls r0, 2\n\ adds r0, r2\n\ ldr r0, [r0]\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r1, _080218B8 @ =gBattlescriptCurrInstr\n\ ldr r0, _080218BC @ =gUnknown_081D9B2D\n\ bl _0802229C\n\ @@ -8164,7 +8157,7 @@ _080219C8:\n\ bgt _080219FE\n\ adds r0, r2, 0x1\n\ strb r0, [r1, 0x19]\n\ - bl b_movescr_stack_push_cursor\n\ + bl BattleScriptPushCursor\n\ ldr r1, _08021A24 @ =gBattlescriptCurrInstr\n\ ldr r0, _08021A28 @ =BattleScript_RageIsBuilding\n\ str r0, [r1]\n\ @@ -8259,10 +8252,10 @@ _08021A92:\n\ movs r1, 0x28\n\ movs r2, 0\n\ movs r3, 0x4\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ ldrb r0, [r4]\n\ bl MarkBufferBankForExecution\n\ - bl b_movescr_stack_push_cursor\n\ + bl BattleScriptPushCursor\n\ ldr r1, _08021AE8 @ =gBattlescriptCurrInstr\n\ ldr r0, _08021AEC @ =BattleScript_DefrostedViaFireMove\n\ str r0, [r1]\n\ @@ -8572,7 +8565,7 @@ _08021D18:\n\ cmp r0, 0\n\ beq _08021D44\n\ adds r0, r2, 0\n\ - bl sub_8015660\n\ + bl WasUnableToUseMove\n\ lsls r0, 24\n\ cmp r0, 0\n\ beq _08021D7E\n\ @@ -9154,7 +9147,7 @@ _080221C0:\n\ eors r0, r1\n\ lsls r0, 24\n\ lsrs r0, 24\n\ - bl GetBankByPlayerAI\n\ + bl GetBankByIdentity\n\ lsls r0, 24\n\ lsrs r2, r0, 24\n\ ldr r1, _080222CC @ =gBattleMons\n\ @@ -9457,18 +9450,18 @@ static void atk4F_jumpifcantswitch(void) { if (GetBankSide(gActiveBank) == 1) { - r7 = GetBankByPlayerAI(1); + r7 = GetBankByIdentity(1); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - to_cmp = GetBankByPlayerAI(3); + to_cmp = GetBankByIdentity(3); else to_cmp = r7; party = gEnemyParty; } else { - r7 = GetBankByPlayerAI(0); + r7 = GetBankByIdentity(0); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - to_cmp = GetBankByPlayerAI(2); + to_cmp = GetBankByIdentity(2); else to_cmp = r7; party = gPlayerParty; @@ -10528,7 +10521,7 @@ _080232C4:\n\ eors r0, r1\n\ lsls r0, 24\n\ lsrs r0, 24\n\ - bl GetBankByPlayerAI\n\ + bl GetBankByIdentity\n\ ldr r4, _08023310 @ =gActiveBank\n\ strb r0, [r4]\n\ ldr r0, _08023314 @ =gAbsentBankFlags\n\ @@ -10632,13 +10625,13 @@ static void atk52_switchineffects(void) gSideAffecting[GetBankSide(gActiveBank)] |= SIDE_STATUS_SPIKES_DAMAGED; - spikesDmg = (5 - gSideTimer[GetBankSide(gActiveBank)].spikesAmount) * 2; + spikesDmg = (5 - gSideTimers[GetBankSide(gActiveBank)].spikesAmount) * 2; gBattleMoveDamage = gBattleMons[gActiveBank].maxHP / (spikesDmg); if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; BATTLE_STRUCT->scriptingActive = gActiveBank; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); if (T2_READ_8(gBattlescriptCurrInstr + 1) == 0) gBattlescriptCurrInstr = BattleScript_SpikesOnTarget; @@ -10660,8 +10653,8 @@ static void atk52_switchineffects(void) for (i = 0; i < gNoOfAllBanks; i++) { - if (gTurnOrder[i] == gActiveBank) - gUnknown_02024A76[i] = 0xC; + if (gBanksByTurnOrder[i] == gActiveBank) + gActionsByTurnOrder[i] = 0xC; } for (i = 0; i < gNoOfAllBanks; i++) @@ -10690,9 +10683,9 @@ static void atk52_switchineffects(void) static void atk53_trainerslidein(void) { if (!T2_READ_8(gBattlescriptCurrInstr + 1)) - gActiveBank = GetBankByPlayerAI(0); + gActiveBank = GetBankByIdentity(0); else - gActiveBank = GetBankByPlayerAI(1); + gActiveBank = GetBankByIdentity(1); EmitTrainerSlide(0); MarkBufferBankForExecution(gActiveBank); @@ -10725,7 +10718,7 @@ static void atk56_playfaintcry(void) static void atk57(void) { - gActiveBank = GetBankByPlayerAI(0); + gActiveBank = GetBankByIdentity(0); Emitcmd55(0, gBattleOutcome); MarkBufferBankForExecution(gActiveBank); gBattlescriptCurrInstr += 1; @@ -10758,12 +10751,12 @@ void atk59_handlelearnnewmove(void) } else { - gActiveBank = GetBankByPlayerAI(0); + gActiveBank = GetBankByIdentity(0); if (gBattlePartyID[gActiveBank] == BATTLE_STRUCT->expGetterID && !(gBattleMons[gActiveBank].status2 & STATUS2_TRANSFORMED)) GiveMoveToBattleMon(&gBattleMons[gActiveBank], ret); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) //what is else if { - gActiveBank = GetBankByPlayerAI(2); + gActiveBank = GetBankByIdentity(2); if (gBattlePartyID[gActiveBank] == BATTLE_STRUCT->expGetterID && !(gBattleMons[gActiveBank].status2 & STATUS2_TRANSFORMED)) GiveMoveToBattleMon(&gBattleMons[gActiveBank], ret); } @@ -10838,7 +10831,7 @@ static void atk5A_yesnoboxlearnmove(void) } break; case 3: - if (!gPaletteFade.active && gMain.callback2 == sub_800F808) + if (!gPaletteFade.active && gMain.callback2 == BattleMainCB2) { u8 move_pos = sub_809FA30(); if (move_pos == 4) @@ -11404,7 +11397,7 @@ static void atk68_cancelallactions(void) int i; for (i = 0; i < gNoOfAllBanks; i++) { - gUnknown_02024A76[i] = 0xC; + gActionsByTurnOrder[i] = 0xC; } gBattlescriptCurrInstr++; } @@ -11458,7 +11451,7 @@ void atk6A_removeitem(void) USED_HELD_ITEMS(gActiveBank) = gBattleMons[gActiveBank].item; gBattleMons[gActiveBank].item = 0; - EmitSetAttributes(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBank].item); + EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBank].item); MarkBufferBankForExecution(gActiveBank); gBattlescriptCurrInstr += 2; } @@ -11901,13 +11894,13 @@ _08024C48: .4byte gBattlescriptCurrInstr\n\ static void atk6D_resetsentmonsvalue(void) { - sub_80156DC(); + ResetSentPokesToOpponentValue(); gBattlescriptCurrInstr++; } static void atk6E_setatktoplayer0(void) { - gBankAttacker = GetBankByPlayerAI(0); + gBankAttacker = GetBankByIdentity(0); gBattlescriptCurrInstr++; } @@ -11943,7 +11936,7 @@ static void atk71_buffermovetolearn(void) static void atk72_jumpifplayerran(void) { - if (sub_8014AB8(gBank1)) + if (TryRunFromBattle(gBank1)) gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); else gBattlescriptCurrInstr += 5; @@ -12020,8 +12013,8 @@ static void atk76_various(void) u8 side; gBankAttacker = gBankTarget; side = GetBankSide(gBankAttacker) ^ 1; - if (gSideTimer[side].followmeTimer && gBattleMons[gSideTimer[side].followmeTarget].hp) - gBankTarget = gSideTimer[side].followmeTarget; + if (gSideTimers[side].followmeTimer && gBattleMons[gSideTimers[side].followmeTarget].hp) + gBankTarget = gSideTimers[side].followmeTarget; else gBankTarget = gActiveBank; } @@ -12080,7 +12073,7 @@ static void atk77_setprotectlike(void) //protect and endure if (last_move != MOVE_PROTECT && last_move != MOVE_DETECT && last_move != MOVE_ENDURE) gDisableStructs[gBankAttacker].protectUses = 0; - if (gCurrentMoveTurn == (gNoOfAllBanks - 1)) + if (gCurrentTurnActionNumber == (gNoOfAllBanks - 1)) not_last_turn = 0; if (sProtectSuccessRates[gDisableStructs[gBankAttacker].protectUses] > Random() && not_last_turn) @@ -12149,7 +12142,7 @@ static void atk79_setatkhptozero(void) gActiveBank = gBankAttacker; gBattleMons[gActiveBank].hp = 0; - EmitSetAttributes(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBank].hp); + EmitSetMonData(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBank].hp); MarkBufferBankForExecution(gActiveBank); gBattlescriptCurrInstr++; @@ -12266,7 +12259,7 @@ static void atk7E_setreflect(void) else { gSideAffecting[GetBankIdentity(gBankAttacker) & 1] |= SIDE_STATUS_REFLECT; - gSideTimer[GetBankIdentity(gBankAttacker) & 1].reflectTimer = 5; + gSideTimers[GetBankIdentity(gBankAttacker) & 1].reflectTimer = 5; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && CountAliveMons(1) == 2) gBattleCommunication[MULTISTRING_CHOOSER] = 2; else @@ -12334,7 +12327,7 @@ static void atk81_trysetrest(void) gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattleMons[gBankTarget].status1 = 3; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); gBattlescriptCurrInstr += 5; } @@ -12502,7 +12495,7 @@ u8 ChangeStatBuffs(s8 statchanger, u8 stat, u8 flags, u8* bs_ptr) if ((statchanger << 0x18) < 0) //stat decrease { - if (gSideTimer[GetBankIdentity(gActiveBank) & 1].mistTimer && !r9 && gCurrentMove != MOVE_CURSE) + if (gSideTimers[GetBankIdentity(gActiveBank) & 1].mistTimer && !r9 && gCurrentMove != MOVE_CURSE) { if (flags == 1) { @@ -12510,7 +12503,7 @@ u8 ChangeStatBuffs(s8 statchanger, u8 stat, u8 flags, u8* bs_ptr) gBattlescriptCurrInstr = bs_ptr; else { - b_movescr_stack_push(bs_ptr); + BattleScriptPush(bs_ptr); BATTLE_STRUCT->scriptingActive = gActiveBank; gBattlescriptCurrInstr = BattleScript_MistProtected; gSpecialStatuses[gActiveBank].statloweringflag = 1; @@ -12531,7 +12524,7 @@ u8 ChangeStatBuffs(s8 statchanger, u8 stat, u8 flags, u8* bs_ptr) gBattlescriptCurrInstr = bs_ptr; else { - b_movescr_stack_push(bs_ptr); + BattleScriptPush(bs_ptr); BATTLE_STRUCT->scriptingActive = gActiveBank; gBattlescriptCurrInstr = BattleScript_AbilityNoStatLoss; gLastUsedAbility = gBattleMons[gActiveBank].ability; @@ -12545,7 +12538,7 @@ u8 ChangeStatBuffs(s8 statchanger, u8 stat, u8 flags, u8* bs_ptr) { if (flags == 1) { - b_movescr_stack_push(bs_ptr); + BattleScriptPush(bs_ptr); BATTLE_STRUCT->scriptingActive = gActiveBank; gBattlescriptCurrInstr = BattleScript_AbilityNoSpecificStatLoss; gLastUsedAbility = gBattleMons[gActiveBank].ability; @@ -12557,7 +12550,7 @@ u8 ChangeStatBuffs(s8 statchanger, u8 stat, u8 flags, u8* bs_ptr) { if (flags == 1) { - b_movescr_stack_push(bs_ptr); + BattleScriptPush(bs_ptr); BATTLE_STRUCT->scriptingActive = gActiveBank; gBattlescriptCurrInstr = BattleScript_AbilityNoSpecificStatLoss; gLastUsedAbility = gBattleMons[gActiveBank].ability; @@ -12728,7 +12721,7 @@ _08025E88:\n\ blt _08025EAC\n\ b _080261B0\n\ _08025EAC:\n\ - ldr r4, _08025F04 @ =gSideTimer\n\ + ldr r4, _08025F04 @ =gSideTimers\n\ ldr r1, _08025EF8 @ =gActiveBank\n\ ldrb r0, [r1]\n\ bl GetBankIdentity\n\ @@ -12769,13 +12762,13 @@ _08025EAC:\n\ _08025EF8: .4byte gActiveBank\n\ _08025EFC: .4byte gBankTarget\n\ _08025F00: .4byte gBattleTextBuff1\n\ -_08025F04: .4byte gSideTimer\n\ +_08025F04: .4byte gSideTimers\n\ _08025F08: .4byte gCurrentMove\n\ _08025F0C: .4byte gSpecialStatuses\n\ _08025F10: .4byte gBattlescriptCurrInstr\n\ _08025F14:\n\ mov r0, r8\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _08025F40 @ =gSharedMem\n\ ldr r6, _08025F44 @ =gActiveBank\n\ ldrb r1, [r6]\n\ @@ -12870,7 +12863,7 @@ _08025FD8: .4byte gSpecialStatuses\n\ _08025FDC: .4byte gBattlescriptCurrInstr\n\ _08025FE0:\n\ mov r0, r8\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _08026028 @ =gSharedMem\n\ ldr r2, _0802602C @ =gActiveBank\n\ ldrb r1, [r2]\n\ @@ -12927,7 +12920,7 @@ _08026040:\n\ cmp r5, 0x1\n\ bne _08025F74\n\ mov r0, r8\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _08026094 @ =gSharedMem\n\ ldr r3, _08026090 @ =gActiveBank\n\ ldrb r1, [r3]\n\ @@ -12975,7 +12968,7 @@ _080260A8:\n\ b _08025F74\n\ _080260CA:\n\ mov r0, r8\n\ - bl b_movescr_stack_push\n\ + bl BattleScriptPush\n\ ldr r0, _08026100 @ =gSharedMem\n\ ldr r3, _080260FC @ =gActiveBank\n\ ldrb r1, [r3]\n\ @@ -13251,7 +13244,7 @@ static void atk8A_normalisebuffs(void) //haze static void atk8B_setbide(void) { gBattleMons[gBankAttacker].status2 |= STATUS2_MULTIPLETURNS; - gLockedMove[gBankAttacker] = gCurrentMove; + gLockedMoves[gBankAttacker] = gCurrentMove; gTakenDmg[gBankAttacker] = 0; gBattleMons[gBankAttacker].status2 |= (STATUS2_BIDE - 0x100); //2 turns gBattlescriptCurrInstr++; @@ -13471,7 +13464,7 @@ static void atk91_givepaydaymoney(void) gBattleTextBuff1[4] = gPaydayMoney; gBattleTextBuff1[5] = uBYTE1_16(gPaydayMoney); gBattleTextBuff1[6] = 0xFF; - b_movescr_stack_push(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_PrintPayDayMoneyString; } else @@ -13488,7 +13481,7 @@ static void atk92_setlightscreen(void) else { gSideAffecting[GetBankIdentity(gBankAttacker) & 1] |= SIDE_STATUS_LIGHTSCREEN; - gSideTimer[GetBankIdentity(gBankAttacker) & 1].lightscreenTimer = 5; + gSideTimers[GetBankIdentity(gBankAttacker) & 1].lightscreenTimer = 5; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && CountAliveMons(1) == 2) gBattleCommunication[MULTISTRING_CHOOSER] = 4; else @@ -14034,7 +14027,7 @@ static void atk98_updatestatusicon(void) } if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { - gActiveBank = GetBankByPlayerAI(GetBankIdentity(gBankAttacker) ^ 2); + gActiveBank = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ 2); if (!(gAbsentBankFlags & gBitTable[gActiveBank])) { EmitStatusIconUpdate(0, gBattleMons[gActiveBank].status1, gBattleMons[gActiveBank].status2); @@ -14047,14 +14040,14 @@ static void atk98_updatestatusicon(void) static void atk99_setmist(void) { - if (gSideTimer[GetBankIdentity(gBankAttacker) & 1].mistTimer) + if (gSideTimers[GetBankIdentity(gBankAttacker) & 1].mistTimer) { gBattleMoveFlags |= MOVESTATUS_FAILED; gBattleCommunication[MULTISTRING_CHOOSER] = 1; } else { - gSideTimer[GetBankIdentity(gBankAttacker) & 1].mistTimer = 5; + gSideTimers[GetBankIdentity(gBankAttacker) & 1].mistTimer = 5; gSideAffecting[GetBankIdentity(gBankAttacker) & 1] |= SIDE_STATUS_MIST; gBattleCommunication[MULTISTRING_CHOOSER] = 0; } @@ -14315,8 +14308,8 @@ static void atkA1_counterdamagecalculator(void) if (gProtectStructs[gBankAttacker].physicalDmg && atk_side != def_side && gBattleMons[gProtectStructs[gBankAttacker].physicalBank].hp) { gBattleMoveDamage = gProtectStructs[gBankAttacker].physicalDmg * 2; - if (gSideTimer[def_side].followmeTimer && gBattleMons[gSideTimer[def_side].followmeTarget].hp) - gBankTarget = gSideTimer[def_side].followmeTarget; + if (gSideTimers[def_side].followmeTimer && gBattleMons[gSideTimers[def_side].followmeTarget].hp) + gBankTarget = gSideTimers[def_side].followmeTarget; else gBankTarget = gProtectStructs[gBankAttacker].physicalBank; gBattlescriptCurrInstr += 5; @@ -14335,8 +14328,8 @@ static void atkA2_mirrorcoatdamagecalculator(void) //a copy of atkA1 with the ph if (gProtectStructs[gBankAttacker].specialDmg && atk_side != def_side && gBattleMons[gProtectStructs[gBankAttacker].specialBank].hp) { gBattleMoveDamage = gProtectStructs[gBankAttacker].specialDmg * 2; - if (gSideTimer[def_side].followmeTimer && gBattleMons[gSideTimer[def_side].followmeTarget].hp) - gBankTarget = gSideTimer[def_side].followmeTarget; + if (gSideTimers[def_side].followmeTimer && gBattleMons[gSideTimers[def_side].followmeTarget].hp) + gBankTarget = gSideTimers[def_side].followmeTarget; else gBankTarget = gProtectStructs[gBankAttacker].specialBank; gBattlescriptCurrInstr += 5; @@ -14767,7 +14760,7 @@ static void atkA8_copymovepermanently(void) moves_data.pp[i] = gBattleMons[gBankAttacker].pp[i]; } moves_data.ppBonuses = gBattleMons[gBankAttacker].ppBonuses; - EmitSetAttributes(0, REQUEST_MOVES_PP_BATTLE, 0, sizeof(struct move_pp), &moves_data); + EmitSetMonData(0, REQUEST_MOVES_PP_BATTLE, 0, sizeof(struct move_pp), &moves_data); MarkBufferBankForExecution(gActiveBank); gBattleTextBuff1[0] = 0xFD; gBattleTextBuff1[1] = 2; @@ -14910,7 +14903,7 @@ static void atkAD_tryspiteppreduce(void) if (!(gDisableStructs[gActiveBank].unk18_b & gBitTable[i]) && !(gBattleMons[gActiveBank].status2 & STATUS2_TRANSFORMED)) { - EmitSetAttributes(0, REQUEST_PPMOVE1_BATTLE + i, 0, 1, &gBattleMons[gActiveBank].pp[i]); + EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + i, 0, 1, &gBattleMons[gActiveBank].pp[i]); MarkBufferBankForExecution(gActiveBank); } gBattlescriptCurrInstr += 5; @@ -14948,7 +14941,7 @@ static void atkAE_healpartystatus(void) gBattleCommunication[MULTISTRING_CHOOSER] |= 1; } - gActiveBank = BATTLE_STRUCT->scriptingActive = GetBankByPlayerAI(GetBankIdentity(gBankAttacker) ^ 2); + gActiveBank = BATTLE_STRUCT->scriptingActive = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ 2); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBankFlags & gBitTable[gActiveBank])) { if (gBattleMons[gActiveBank].ability != ABILITY_SOUNDPROOF) @@ -14986,14 +14979,14 @@ static void atkAE_healpartystatus(void) to_heal = 0x3F; gBattleMons[gBankAttacker].status1 = zero2; - gActiveBank = GetBankByPlayerAI(GetBankIdentity(gBankAttacker) ^ 2); + gActiveBank = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ 2); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBankFlags & gBitTable[gActiveBank])) gBattleMons[gActiveBank].status1 = 0; } //missing check? gActiveBank = gBankAttacker; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, to_heal, 4, &zero); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, to_heal, 4, &zero); MarkBufferBankForExecution(gActiveBank); gBattlescriptCurrInstr++; @@ -15018,7 +15011,7 @@ static void atkAF_cursetarget(void) static void atkB0_trysetspikes(void) { u8 side = GetBankSide(gBankAttacker) ^ 1; - if (gSideTimer[side].spikesAmount == 3) + if (gSideTimers[side].spikesAmount == 3) { gSpecialStatuses[gBankAttacker].flag20 = 1; gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); @@ -15026,7 +15019,7 @@ static void atkB0_trysetspikes(void) else { gSideAffecting[side] |= SIDE_STATUS_SPIKES; - gSideTimer[side].spikesAmount++; + gSideTimers[side].spikesAmount++; gBattlescriptCurrInstr += 5; } } @@ -15053,7 +15046,7 @@ static void atkB2_trysetperishsong(void) } } - sub_80153D0(gBankAttacker); + PressurePPLoseOnUsingPerishSong(gBankAttacker); if (not_affected_pokes == gNoOfAllBanks) gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); else @@ -15075,7 +15068,7 @@ static void atkB3_rolloutdamagecalculation(void) gDisableStructs[gBankAttacker].rolloutTimer1 = 5; gDisableStructs[gBankAttacker].rolloutTimer2 = 5; gBattleMons[gBankAttacker].status2 |= STATUS2_MULTIPLETURNS; - gLockedMove[gBankAttacker] = gCurrentMove; + gLockedMoves[gBankAttacker] = gCurrentMove; } if (--gDisableStructs[gBankAttacker].rolloutTimer1 == 0) gBattleMons[gBankAttacker].status2 &= ~(STATUS2_MULTIPLETURNS); @@ -15167,7 +15160,7 @@ static void atkB8_setsafeguard(void) else { gSideAffecting[GetBankIdentity(gBankAttacker) & 1] |= SIDE_STATUS_SAFEGUARD; - gSideTimer[GetBankIdentity(gBankAttacker) & 1].safeguardTimer = 5; + gSideTimers[GetBankIdentity(gBankAttacker) & 1].safeguardTimer = 5; gBattleCommunication[MULTISTRING_CHOOSER] = 5; } gBattlescriptCurrInstr++; @@ -15234,16 +15227,16 @@ static void atkBA_jumpifnopursuitswitchdmg(void) if (gMultiHitCounter == 1) { if (GetBankSide(gBankAttacker) == 0) - gBankTarget = GetBankByPlayerAI(1); + gBankTarget = GetBankByIdentity(1); else - gBankTarget = GetBankByPlayerAI(0); + gBankTarget = GetBankByIdentity(0); } else { if (GetBankSide(gBankAttacker) == 0) - gBankTarget = GetBankByPlayerAI(3); + gBankTarget = GetBankByIdentity(3); else - gBankTarget = GetBankByPlayerAI(2); + gBankTarget = GetBankByIdentity(2); } if (gActionForBanks[gBankTarget] == 0 && gBankAttacker == ewram16010arr(gBankTarget) && !(gBattleMons[gBankTarget].status1 & (STATUS_SLEEP | STATUS_FREEZE)) @@ -15252,8 +15245,8 @@ static void atkBA_jumpifnopursuitswitchdmg(void) int i; for (i = 0; i < gNoOfAllBanks; i++) { - if (gTurnOrder[i] == gBankTarget) - gUnknown_02024A76[i] = 11; + if (gBanksByTurnOrder[i] == gBankTarget) + gActionsByTurnOrder[i] = 11; } gCurrentMove = MOVE_PURSUIT; gBattlescriptCurrInstr += 5; @@ -15321,21 +15314,21 @@ static void atkBE_rapidspinfree(void) //rapid spin gBattleTextBuff1[2] = ewram16004arr(0, gBankAttacker); gBattleTextBuff1[3] = ewram16004arr(1, gBankAttacker); gBattleTextBuff1[4] = 0xFF; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_WrapFree; } else if (gStatuses3[gBankAttacker] & STATUS3_LEECHSEED) { gStatuses3[gBankAttacker] &= ~(STATUS3_LEECHSEED); gStatuses3[gBankAttacker] &= ~(STATUS3_LEECHSEED_BANK); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_LeechSeedFree; } else if (gSideAffecting[GetBankSide(gBankAttacker)] & SIDE_STATUS_SPIKES) { gSideAffecting[GetBankSide(gBankAttacker)] &= ~(SIDE_STATUS_SPIKES); - gSideTimer[GetBankSide(gBankAttacker)].spikesAmount = 0; - b_movescr_stack_push_cursor(); + gSideTimers[GetBankSide(gBankAttacker)].spikesAmount = 0; + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SpikesFree; } else @@ -15935,8 +15928,8 @@ static void atkC9_jumpifattackandspecialattackcannotfall(void) //memento static void atkCA_setforcedtarget(void) //follow me { - gSideTimer[GetBankSide(gBankAttacker)].followmeTimer = 1; - gSideTimer[GetBankSide(gBankAttacker)].followmeTarget = gBankAttacker; + gSideTimers[GetBankSide(gBankAttacker)].followmeTimer = 1; + gSideTimers[GetBankSide(gBankAttacker)].followmeTarget = gBankAttacker; gBattlescriptCurrInstr++; } @@ -15953,7 +15946,7 @@ static void atkCC_callterrainattack(void) //nature power gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); gCurrentMove = sNaturePowerMoves[gBattleTerrain]; gBankTarget = GetMoveTarget(gCurrentMove, 0); - b_movescr_stack_push(gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]); + BattleScriptPush(gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]); gBattlescriptCurrInstr++; } @@ -15964,7 +15957,7 @@ static void atkCD_cureifburnedparalysedorpoisoned(void) //refresh gBattleMons[gBankAttacker].status1 = 0; gBattlescriptCurrInstr += 5; gActiveBank = gBankAttacker; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); } else @@ -16004,7 +15997,7 @@ static void atkD0_settaunt(void) static void atkD1_trysethelpinghand(void) { - gBankTarget = GetBankByPlayerAI(GetBankIdentity(gBankAttacker) ^ 2); + gBankTarget = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ 2); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBankFlags & gBitTable[gBankTarget]) && !gProtectStructs[gBankAttacker].helpingHand && !gProtectStructs[gBankTarget].helpingHand) { @@ -16223,7 +16216,7 @@ _0802A36C:\n\ movs r1, 0x2\n\ movs r2, 0\n\ movs r3, 0x2\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ ldr r2, _0802A45C @ =gBankAttacker\n\ ldrb r0, [r2]\n\ bl MarkBufferBankForExecution\n\ @@ -16241,7 +16234,7 @@ _0802A36C:\n\ movs r1, 0x2\n\ movs r2, 0\n\ movs r3, 0x2\n\ - bl EmitSetAttributes\n\ + bl EmitSetMonData\n\ ldrb r0, [r7]\n\ bl MarkBufferBankForExecution\n\ ldr r0, _0802A464 @ =0xfffe9f10\n\ @@ -16472,7 +16465,7 @@ static void atkDB_tryimprision(void) else { u8 bank; - sub_801529C(gBankAttacker); + PressurePPLoseOnUsingImprision(gBankAttacker); for (bank = 0; bank < gNoOfAllBanks; bank++) { if (r8 != GetBankSide(bank)) @@ -16774,7 +16767,7 @@ static void atkDF_trysetmagiccoat(void) { gBankTarget = gBankAttacker; gSpecialStatuses[gBankAttacker].flag20 = 1; - if (gCurrentMoveTurn == gNoOfAllBanks - 1) //last turn + if (gCurrentTurnActionNumber == gNoOfAllBanks - 1) //last turn gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); else { @@ -16786,7 +16779,7 @@ static void atkDF_trysetmagiccoat(void) static void atkE0_trysetsnatch(void) { gSpecialStatuses[gBankAttacker].flag20 = 1; - if (gCurrentMoveTurn == gNoOfAllBanks - 1) //last turn + if (gCurrentTurnActionNumber == gNoOfAllBanks - 1) //last turn gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); else { @@ -16827,7 +16820,7 @@ static void atkE2_switchoutabilities(void) { case ABILITY_NATURAL_CURE: gBattleMons[gActiveBank].status1 = 0; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, gBitTable[ewram16064arr(gActiveBank)], 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, gBitTable[ewram16064arr(gActiveBank)], 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); break; } @@ -16923,7 +16916,7 @@ static void atkE7_trycastformdatachange(void) form = CastformDataTypeChange(BATTLE_STRUCT->scriptingActive); if (form) { - b_push_move_exec(BattleScript_CastformChange); + BattleScriptPushCursorAndCallback(BattleScript_CastformChange); BATTLE_STRUCT->castformToChangeInto = form - 1; } } @@ -16985,7 +16978,7 @@ static void atkEA_tryrecycleitem(void) gLastUsedItem = *used_item; *used_item = 0; gBattleMons[gActiveBank].item = gLastUsedItem; - EmitSetAttributes(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBank].item); + EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBank].item); MarkBufferBankForExecution(gActiveBank); gBattlescriptCurrInstr += 5; } @@ -17011,10 +17004,10 @@ static void atkEB_settypetoterrain(void) static void atkEC_pursuitrelated(void) { - gActiveBank = GetBankByPlayerAI(GetBankIdentity(gBankAttacker) ^ 2); + gActiveBank = GetBankByIdentity(GetBankIdentity(gBankAttacker) ^ 2); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBankFlags & gBitTable[gActiveBank]) && gActionForBanks[gActiveBank] == 0 && gChosenMovesByBanks[gActiveBank] == MOVE_PURSUIT) { - gUnknown_02024A76[gActiveBank] = 11; + gActionsByTurnOrder[gActiveBank] = 11; gCurrentMove = MOVE_PURSUIT; gBattlescriptCurrInstr += 5; BATTLE_STRUCT->animTurn = 1; @@ -17039,12 +17032,12 @@ static void atkED_snatchsetbanks(void) static void atkEE_removelightscreenreflect(void) //brick break { u8 side = GetBankSide(gBankAttacker) ^ 1; - if (gSideTimer[side].reflectTimer || gSideTimer[side].lightscreenTimer) + if (gSideTimers[side].reflectTimer || gSideTimers[side].lightscreenTimer) { gSideAffecting[side] &= ~(SIDE_STATUS_REFLECT); gSideAffecting[side] &= ~(SIDE_STATUS_LIGHTSCREEN); - gSideTimer[side].reflectTimer = 0; - gSideTimer[side].lightscreenTimer = 0; + gSideTimers[side].reflectTimer = 0; + gSideTimers[side].lightscreenTimer = 0; BATTLE_STRUCT->animTurn = 1; BATTLE_STRUCT->animTargetsHit = 1; } @@ -17230,7 +17223,7 @@ static void atkF2_displaydexinfo(void) } break; case 2: - if (!gPaletteFade.active && gMain.callback2 == sub_800F808 && !gTasks[gBattleCommunication[1]].isActive) + if (!gPaletteFade.active && gMain.callback2 == BattleMainCB2 && !gTasks[gBattleCommunication[1]].isActive) { LZDecompressVram(gBattleTerrainTiles_Building, (void*)(0x06008000)); LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(0x0600d000)); @@ -17394,12 +17387,12 @@ static void atkF3_trygivecaughtmonnick(void) if (!gPaletteFade.active) { GetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_NICKNAME, BATTLE_STRUCT->caughtNick); - DoNamingScreen(2, BATTLE_STRUCT->caughtNick, GetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_SPECIES), GetMonGender(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]]), GetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_PERSONALITY, 0), sub_800F808); + DoNamingScreen(2, BATTLE_STRUCT->caughtNick, GetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_SPECIES), GetMonGender(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]]), GetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_PERSONALITY, 0), BattleMainCB2); gBattleCommunication[0]++; } break; case 3: - if (gMain.callback2 == sub_800F808 && !gPaletteFade.active ) + if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active ) { SetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_NICKNAME, BATTLE_STRUCT->caughtNick); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); @@ -17428,11 +17421,11 @@ static void atkF5_removeattackerstatus1(void) static void atkF6_finishaction(void) { - gFightStateTracker = 0xC; + gCurrentActionFuncId = 0xC; } static void atkF7_finishturn(void) { - gFightStateTracker = 0xC; - gCurrentMoveTurn = gNoOfAllBanks; + gCurrentActionFuncId = 0xC; + gCurrentTurnActionNumber = gNoOfAllBanks; } diff --git a/src/battle/battle_7.c b/src/battle/battle_7.c index e11971606..1c79d7ebf 100644 --- a/src/battle/battle_7.c +++ b/src/battle/battle_7.c @@ -795,7 +795,7 @@ void sub_80324F8(struct Pokemon *pkmn, u8 b) void BattleMusicStop(void) { - u8 r4 = GetBankByPlayerAI(0); + u8 r4 = GetBankByIdentity(0); ewram17800[r4].unk0_1 = 0; if (IsDoubleBattle()) @@ -815,8 +815,8 @@ void sub_8032638(void) { if (gMain.inBattle) { - u8 r8 = GetBankByPlayerAI(0); - u8 r9 = GetBankByPlayerAI(2); + u8 r8 = GetBankByIdentity(0); + u8 r9 = GetBankByIdentity(2); u8 r4 = pokemon_order_func(gBattlePartyID[r8]); u8 r5 = pokemon_order_func(gBattlePartyID[r9]); @@ -857,12 +857,12 @@ void sub_80327CC(void) u8 r5; LoadCompressedObjectPic(&gUnknown_081FAF24); - r5 = GetBankByPlayerAI(1); + r5 = GetBankByIdentity(1); ewram17810[r5].unk7 = CreateSprite(&gSpriteTemplate_81FAF34, GetBankPosition(r5, 0), GetBankPosition(r5, 1) + 32, 0xC8); gSprites[ewram17810[r5].unk7].data[0] = r5; if (IsDoubleBattle()) { - r5 = GetBankByPlayerAI(3); + r5 = GetBankByIdentity(3); ewram17810[r5].unk7 = CreateSprite(&gSpriteTemplate_81FAF34, GetBankPosition(r5, 0), GetBankPosition(r5, 1) + 32, 0xC8); gSprites[ewram17810[r5].unk7].data[0] = r5; } diff --git a/src/battle/battle_ai.c b/src/battle/battle_ai.c index 1fa7a2ed2..977e91f5c 100644 --- a/src/battle/battle_ai.c +++ b/src/battle/battle_ai.c @@ -1275,7 +1275,7 @@ static void BattleAICmd_if_arg_not_equal(void) static void BattleAICmd_if_would_go_first(void) { - if (GetWhoStrikesFirst(gBankAttacker, gBankTarget, 1) == gAIScriptPtr[1]) + if (GetWhoStrikesFirst(gBankAttacker, gBankTarget, TRUE) == gAIScriptPtr[1]) gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2); else gAIScriptPtr += 6; @@ -1283,7 +1283,7 @@ static void BattleAICmd_if_would_go_first(void) static void BattleAICmd_if_would_not_go_first(void) { - if (GetWhoStrikesFirst(gBankAttacker, gBankTarget, 1) != gAIScriptPtr[1]) + if (GetWhoStrikesFirst(gBankAttacker, gBankTarget, TRUE) != gAIScriptPtr[1]) gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2); else gAIScriptPtr += 6; @@ -1321,7 +1321,7 @@ static void BattleAICmd_count_alive_pokemon(void) u32 status; var = gBattlePartyID[index]; status = GetBankIdentity(index) ^ 2; - var2 = gBattlePartyID[GetBankByPlayerAI(status)]; + var2 = gBattlePartyID[GetBankByIdentity(status)]; } else { diff --git a/src/battle/battle_anim_80A7E7C.c b/src/battle/battle_anim_80A7E7C.c index 3097f1a0e..c35434df0 100644 --- a/src/battle/battle_anim_80A7E7C.c +++ b/src/battle/battle_anim_80A7E7C.c @@ -108,17 +108,17 @@ void sub_80A7FA0(u8 taskId) switch (gBattleAnimArgs[0]) { case 4: - side = GetBankByPlayerAI(0); + side = GetBankByIdentity(0); break; case 5: - side = GetBankByPlayerAI(2); + side = GetBankByIdentity(2); break; case 6: - side = GetBankByPlayerAI(1); + side = GetBankByIdentity(1); break; case 7: default: - side = GetBankByPlayerAI(3); + side = GetBankByIdentity(3); break; } if (IsAnimBankSpriteVisible(side) == FALSE) diff --git a/src/battle/battle_controller_linkopponent.c b/src/battle/battle_controller_linkopponent.c index 35d8f33c8..54181bc21 100644 --- a/src/battle/battle_controller_linkopponent.c +++ b/src/battle/battle_controller_linkopponent.c @@ -48,8 +48,8 @@ extern u8 gUnknown_02024E68[]; extern struct SpriteTemplate gUnknown_02024E8C; extern u8 gAnimMoveTurn; extern struct Window gUnknown_03004210; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u8 gUnknown_0300434C[]; extern u32 gBattleExecBuffer; extern MainCallback gPreBattleCallback1; @@ -1410,8 +1410,8 @@ void sub_8039B64(void) void LinkOpponentHandlePrintString(void) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; BufferStringBattle(*(u16 *)&gBattleBufferA[gActiveBank][2]); sub_8002EB0(&gUnknown_03004210, gDisplayedStringBattle, 144, 2, 15); gBattleBankFunc[gActiveBank] = sub_8037C2C; diff --git a/src/battle/battle_controller_linkpartner.c b/src/battle/battle_controller_linkpartner.c index adc3c1c85..2c78d4a82 100644 --- a/src/battle/battle_controller_linkpartner.c +++ b/src/battle/battle_controller_linkpartner.c @@ -48,8 +48,8 @@ extern u8 gAnimFriendship; extern u16 gWeatherMoveAnim; extern u8 gAnimMoveTurn; extern struct Window gUnknown_03004210; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern MainCallback gPreBattleCallback1; extern void (*gBattleBankFunc[])(void); extern u8 gHealthboxIDs[]; @@ -1355,8 +1355,8 @@ void sub_811FF30(void) void LinkPartnerHandlePrintString(void) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; BufferStringBattle(*(u16 *)&gBattleBufferA[gActiveBank][2]); sub_8002EB0(&gUnknown_03004210, gDisplayedStringBattle, 144, 2, 15); gBattleBankFunc[gActiveBank] = sub_811DFA0; diff --git a/src/battle/battle_controller_opponent.c b/src/battle/battle_controller_opponent.c index 54bb9d7f9..ab7b6944b 100644 --- a/src/battle/battle_controller_opponent.c +++ b/src/battle/battle_controller_opponent.c @@ -50,8 +50,8 @@ extern u8 gAnimMoveTurn; extern u8 gAnimScriptActive; extern void (*gAnimScriptCallback)(void); extern struct Window gUnknown_03004210; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u8 gDisplayedStringBattle[]; extern u8 gBankTarget; extern u8 gAbsentBankFlags; @@ -98,7 +98,7 @@ extern void sub_80324BC(); extern void BufferStringBattle(); extern void sub_80331D0(void); extern void sub_8036B0C(void); -extern u8 GetBankByPlayerAI(u8); +extern u8 GetBankByIdentity(u8); extern u8 sub_8036CD4(void); extern void sub_80330C8(void); extern void sub_8043D84(); @@ -1404,8 +1404,8 @@ void sub_8035238(void) void OpponentHandlePrintString(void) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; BufferStringBattle(*(u16 *)&gBattleBufferA[gActiveBank][2]); sub_8002EB0(&gUnknown_03004210, gDisplayedStringBattle, 144, 2, 15); gBattleBankFunc[gActiveBank] = sub_80331D0; @@ -1451,9 +1451,9 @@ void OpponentHandlecmd20(void) gBankTarget = gActiveBank; if (gBattleMoves[r5->moves[r4]].target & 8) { - gBankTarget = GetBankByPlayerAI(0); + gBankTarget = GetBankByIdentity(0); if (gAbsentBankFlags & gBitTable[gBankTarget]) - gBankTarget = GetBankByPlayerAI(2); + gBankTarget = GetBankByIdentity(2); } r4 |= gBankTarget << 8; Emitcmd33(1, 10, r4); @@ -1479,13 +1479,13 @@ void OpponentHandlecmd20(void) } else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - u16 r2 = GetBankByPlayerAI(Random() & 2) << 8; + u16 r2 = GetBankByIdentity(Random() & 2) << 8; Emitcmd33(1, 10, r4 | r2); } else { - u16 r2 = GetBankByPlayerAI(0) << 8; + u16 r2 = GetBankByIdentity(0) << 8; Emitcmd33(1, 10, r4 | r2); } @@ -1561,7 +1561,7 @@ _08035494:\n\ cmp r0, 0\n\ beq _080354CE\n\ movs r0, 0\n\ - bl GetBankByPlayerAI\n\ + bl GetBankByIdentity\n\ ldr r5, _080354EC @ =gBankTarget\n\ strb r0, [r5]\n\ ldr r0, _080354F0 @ =gAbsentBankFlags\n\ @@ -1575,7 +1575,7 @@ _08035494:\n\ cmp r1, 0\n\ beq _080354CE\n\ movs r0, 0x2\n\ - bl GetBankByPlayerAI\n\ + bl GetBankByIdentity\n\ strb r0, [r5]\n\ _080354CE:\n\ ldr r0, _080354EC @ =gBankTarget\n\ @@ -1640,7 +1640,7 @@ _0803553C:\n\ lsls r1, 24\n\ lsrs r1, 24\n\ adds r0, r1, 0\n\ - bl GetBankByPlayerAI\n\ + bl GetBankByIdentity\n\ adds r2, r0, 0\n\ lsls r2, 24\n\ lsrs r2, 16\n\ @@ -1653,7 +1653,7 @@ _0803553C:\n\ _0803556C: .4byte gBattleTypeFlags\n\ _08035570:\n\ movs r0, 0\n\ - bl GetBankByPlayerAI\n\ + bl GetBankByIdentity\n\ adds r2, r0, 0\n\ lsls r2, 24\n\ lsrs r2, 16\n\ @@ -1692,13 +1692,13 @@ void OpponentHandlecmd22(void) { if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { - r5 = GetBankByPlayerAI(1); + r5 = GetBankByIdentity(1); r6 = r5; } else { - r6 = GetBankByPlayerAI(1); - r5 = GetBankByPlayerAI(3); + r6 = GetBankByIdentity(1); + r5 = GetBankByIdentity(3); } for (r4 = 0; r4 < 6; r4++) { diff --git a/src/battle/battle_controller_player.c b/src/battle/battle_controller_player.c index 70773473d..f992e3e51 100644 --- a/src/battle/battle_controller_player.c +++ b/src/battle/battle_controller_player.c @@ -35,8 +35,8 @@ struct MovePpInfo #define SUB_803037C_TILE_DATA_OFFSET 444 #endif -extern u16 gUnknown_030042A4; -extern u16 gUnknown_030042A0; +extern u16 gBattle_BG0_X; +extern u16 gBattle_BG0_Y; extern struct Window gUnknown_03004210; @@ -72,7 +72,7 @@ extern u16 gBattle_BG1_Y; extern u16 gUnknown_030041B8; extern u16 gBattle_BG2_Y; extern u16 gBattle_BG2_X; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_X; extern u16 gBattle_BG1_X; extern u8 gUnknown_03004344; extern u8 gUnknown_0300434C[]; @@ -118,7 +118,7 @@ extern void sub_8031F24(void); extern void sub_80324BC(); extern u8 sub_8031720(); extern void bx_wait_t1(void); -extern u8 GetBankByPlayerAI(u8); +extern u8 GetBankByIdentity(u8); extern void sub_802DE10(void); extern void sub_80105EC(struct Sprite *); extern void sub_802D274(void); @@ -148,8 +148,8 @@ extern u8 gAbsentBankFlags; extern u8 gUnknown_03004344; extern u8 gNoOfAllBanks; extern u16 gBattlePartyID[]; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern struct Window gUnknown_03004210; extern const u8 BattleText_SwitchWhich[]; extern u8 gUnknown_03004348; @@ -167,7 +167,7 @@ extern const u8 BattleText_LinkStandby[]; extern void dp11b_obj_instanciate(u8, u8, s8, s8); extern u8 GetBankIdentity(u8); -extern u8 GetBankByPlayerAI(u8); +extern u8 GetBankByIdentity(u8); extern void dp11b_obj_free(u8, u8); extern void sub_8010520(struct Sprite *); extern void sub_8010574(struct Sprite *); @@ -445,7 +445,7 @@ void sub_802C098(void) { if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && GetBankIdentity(gActiveBank) == 2 - && !(gAbsentBankFlags & gBitTable[GetBankByPlayerAI(0)]) + && !(gAbsentBankFlags & gBitTable[GetBankByIdentity(0)]) && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { if (gBattleBufferA[gActiveBank][1] == 1) @@ -529,7 +529,7 @@ void sub_802C2EC(void) i--; if (i < 0) i = 3; - gUnknown_03004344 = GetBankByPlayerAI(arr[i]); + gUnknown_03004344 = GetBankByIdentity(arr[i]); } while(gUnknown_03004344 == gNoOfAllBanks); i = 0; switch (GetBankIdentity(gUnknown_03004344)) @@ -576,7 +576,7 @@ void sub_802C2EC(void) i++; if (i > 3) i = 0; - gUnknown_03004344 = GetBankByPlayerAI(arr[i]); + gUnknown_03004344 = GetBankByIdentity(arr[i]); } while (gUnknown_03004344 == gNoOfAllBanks); i = 0; switch (GetBankIdentity(gUnknown_03004344)) @@ -636,7 +636,7 @@ void sub_802C68C(void) if (r4 & 0x10) gUnknown_03004344 = gActiveBank; else - gUnknown_03004344 = GetBankByPlayerAI((GetBankIdentity(gActiveBank) & 1) ^ 1); + gUnknown_03004344 = GetBankByIdentity((GetBankIdentity(gActiveBank) & 1) ^ 1); if (gBattleBufferA[gActiveBank][1] == 0) { @@ -668,10 +668,10 @@ void sub_802C68C(void) gBattleBankFunc[gActiveBank] = sub_802C2EC; if (r4 & 0x12) gUnknown_03004344 = gActiveBank; - else if (gAbsentBankFlags & gBitTable[GetBankByPlayerAI(1)]) - gUnknown_03004344 = GetBankByPlayerAI(3); + else if (gAbsentBankFlags & gBitTable[GetBankByIdentity(1)]) + gUnknown_03004344 = GetBankByIdentity(3); else - gUnknown_03004344 = GetBankByPlayerAI(1); + gUnknown_03004344 = GetBankByIdentity(1); gSprites[gObjectBankIDs[gUnknown_03004344]].callback = sub_8010520; } } @@ -679,8 +679,8 @@ void sub_802C68C(void) { DestroyMenuCursor(); PlaySE(SE_SELECT); - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 320; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 320; Emitcmd33(1, 10, 0xFFFF); PlayerBufferExecCompleted(); } @@ -1495,7 +1495,7 @@ void sub_802DF30(void) void sub_802DF88(void) { - if (gMain.callback2 == sub_800F808 && !gPaletteFade.active) + if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { if (gUnknown_0202E8F4 == 1) Emitcmd34(1, gUnknown_0202E8F5, gUnknown_02038470); @@ -1519,7 +1519,7 @@ void sub_802E004(void) void sub_802E03C(void) { - if (gMain.callback2 == sub_800F808 && !gPaletteFade.active) + if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { Emitcmd35(1, gSpecialVar_ItemId); PlayerBufferExecCompleted(); @@ -1695,8 +1695,8 @@ void b_link_standby_message(void) { if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; sub_8002EB0(&gUnknown_03004210, BattleText_LinkStandby, 0x90, 2, 15); } } @@ -2458,7 +2458,7 @@ void PlayerHandlecmd12(void) { ewram17840.unk8 = 4; gDoingBattleAnim = 1; - move_anim_start_t4(gActiveBank, gActiveBank, GetBankByPlayerAI(1), 3); + move_anim_start_t4(gActiveBank, gActiveBank, GetBankByIdentity(1), 3); gBattleBankFunc[gActiveBank] = bx_wait_t1; } @@ -2468,7 +2468,7 @@ void PlayerHandleBallThrow(void) ewram17840.unk8 = var; gDoingBattleAnim = 1; - move_anim_start_t4(gActiveBank, gActiveBank, GetBankByPlayerAI(1), 3); + move_anim_start_t4(gActiveBank, gActiveBank, GetBankByIdentity(1), 3); gBattleBankFunc[gActiveBank] = bx_wait_t1; } @@ -2559,8 +2559,8 @@ void sub_8030190(void) void PlayerHandlePrintString(void) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; BufferStringBattle(*(u16 *)&gBattleBufferA[gActiveBank][2]); sub_8002EB0(&gUnknown_03004210, gDisplayedStringBattle, 0x90, 2, 15); gBattleBankFunc[gActiveBank] = sub_802DF18; @@ -2578,8 +2578,8 @@ void PlayerHandlecmd18(void) { int r4; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 160; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 160; FillWindowRect(&gUnknown_03004210, 10, 2, 15, 27, 18); FillWindowRect(&gUnknown_03004210, 10, 2, 35, 16, 38); @@ -2612,8 +2612,8 @@ void PlayerHandlecmd20(void) void sub_80304A8(void) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 320; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 320; sub_802E1B0(); gUnknown_03004344 = 0xFF; sub_802E3B4(gMoveSelectionCursor[gActiveBank], 0); diff --git a/src/battle/battle_controller_safari.c b/src/battle/battle_controller_safari.c index 6f6286945..0a629ba4d 100644 --- a/src/battle/battle_controller_safari.c +++ b/src/battle/battle_controller_safari.c @@ -23,8 +23,8 @@ extern u8 gActiveBank; extern const u8 BattleText_MenuOptionsSafari[]; extern void *gBattleBankFunc[]; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u8 gBattleBufferA[][0x200]; extern bool8 gDoingBattleAnim; extern u8 gObjectBankIDs[]; @@ -40,7 +40,7 @@ extern u16 gUnknown_02024DE8; extern u8 gBattleOutcome; extern u8 GetBankSide(u8); -extern u8 GetBankByPlayerAI(u8); +extern u8 GetBankByIdentity(u8); extern u8 GetBankIdentity(u8); extern void LoadPlayerTrainerBankSprite(); extern u8 sub_8079E90(); @@ -313,7 +313,7 @@ void sub_812B724(void) void sub_812B758(void) { - if (gMain.callback2 == sub_800F808 && !gPaletteFade.active) + if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { Emitcmd35(1, gSpecialVar_ItemId); SafariBufferExecCompleted(); @@ -423,7 +423,7 @@ void SafariHandlecmd12(void) { ewram17840.unk8 = 4; gDoingBattleAnim = 1; - move_anim_start_t4(gActiveBank, gActiveBank, GetBankByPlayerAI(1), 4); + move_anim_start_t4(gActiveBank, gActiveBank, GetBankByIdentity(1), 4); gBattleBankFunc[gActiveBank] = bx_wait_t6; } @@ -433,7 +433,7 @@ void SafariHandleBallThrow(void) ewram17840.unk8 = var; gDoingBattleAnim = 1; - move_anim_start_t4(gActiveBank, gActiveBank, GetBankByPlayerAI(1), 4); + move_anim_start_t4(gActiveBank, gActiveBank, GetBankByIdentity(1), 4); gBattleBankFunc[gActiveBank] = bx_wait_t6; } @@ -450,8 +450,8 @@ void SafariHandleMoveAnimation(void) void SafariHandlePrintString(void) { - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; BufferStringBattle(*(u16 *)&gBattleBufferA[gActiveBank][2]); sub_8002EB0(&gUnknown_03004210, gDisplayedStringBattle, 144, 2, 15); gBattleBankFunc[gActiveBank] = sub_812B694; @@ -469,8 +469,8 @@ void SafariHandlecmd18(void) { int i; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 160; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 160; gUnknown_03004210.paletteNum = 0; FillWindowRect_DefaultPalette(&gUnknown_03004210, 10, 2, 15, 27, 18); FillWindowRect_DefaultPalette(&gUnknown_03004210, 10, 2, 35, 16, 36); diff --git a/src/battle/battle_controller_wally.c b/src/battle/battle_controller_wally.c index 8ace11fc1..bd2b4a45b 100644 --- a/src/battle/battle_controller_wally.c +++ b/src/battle/battle_controller_wally.c @@ -53,8 +53,8 @@ extern u8 gUnknown_02024E68[]; extern struct SpriteTemplate gUnknown_02024E8C; extern u8 gAnimMoveTurn; extern struct Window gUnknown_03004210; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u8 gUnknown_0300434C[]; extern const u8 BattleText_WallyMenu[]; extern const u8 BattleText_MenuOptions[]; @@ -75,7 +75,7 @@ extern void PlayerHandlecmd1(void); extern void LoadPlayerTrainerBankSprite(); extern u8 GetBankIdentity(u8); extern void sub_80313A0(struct Sprite *); -extern u8 GetBankByPlayerAI(u8); +extern u8 GetBankByIdentity(u8); extern u8 sub_8031720(); extern void DoMoveAnim(); extern void sub_80326EC(); @@ -363,7 +363,7 @@ void sub_81374C4(void) void sub_81374FC(void) { - if (gMain.callback2 == sub_800F808 + if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { Emitcmd35(1, gSpecialVar_ItemId); @@ -1149,7 +1149,7 @@ void WallyHandlecmd12(void) { ewram17840.unk8 = 4; gDoingBattleAnim = TRUE; - move_anim_start_t4(gActiveBank, gActiveBank, GetBankByPlayerAI(1), 4); + move_anim_start_t4(gActiveBank, gActiveBank, GetBankByIdentity(1), 4); gBattleBankFunc[gActiveBank] = bx_wait_t5; } @@ -1159,7 +1159,7 @@ void WallyHandleBallThrow(void) ewram17840.unk8 = val; gDoingBattleAnim = TRUE; - move_anim_start_t4(gActiveBank, gActiveBank, GetBankByPlayerAI(1), 4); + move_anim_start_t4(gActiveBank, gActiveBank, GetBankByIdentity(1), 4); gBattleBankFunc[gActiveBank] = bx_wait_t5; } @@ -1240,8 +1240,8 @@ void WallyHandlePrintString(void) { u16 *ptr; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; ptr = (u16 *)&gBattleBufferA[gActiveBank][2]; if (*ptr == 2) DestroyMenuCursor(); @@ -1262,8 +1262,8 @@ void WallyHandlecmd18(void) { s32 i; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 160; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 160; gUnknown_03004210.paletteNum = 0; FillWindowRect_DefaultPalette(&gUnknown_03004210, 10, 2, 15, 27, 18); FillWindowRect_DefaultPalette(&gUnknown_03004210, 10, 2, 35, 16, 36); diff --git a/src/battle/battle_message.c b/src/battle/battle_message.c index 4ac8c7a6f..d8efc09c5 100644 --- a/src/battle/battle_message.c +++ b/src/battle/battle_message.c @@ -199,7 +199,7 @@ s32 sub_803FC34(u16); void get_trainer_name(u8* dst); u8 get_trainer_class_name_index(void); u8 GetMultiplayerId(void); -u8 GetBankByPlayerAI(u8 ID); +u8 GetBankByIdentity(u8 ID); u8 GetBankSide(u8 bank); u8 GetBankIdentity(u8 bank); #ifdef GERMAN @@ -572,22 +572,22 @@ u32 StrCpyDecodeBattle(const u8* src, u8* dst) toCpy = gBattleTextBuff3; break; case 2: // first player poke name - GetMonData(&gPlayerParty[gBattlePartyID[GetBankByPlayerAI(0)]], MON_DATA_NICKNAME, text); + GetMonData(&gPlayerParty[gBattlePartyID[GetBankByIdentity(0)]], MON_DATA_NICKNAME, text); StringGetEnd10(text); toCpy = text; break; case 3: // first enemy poke name - GetMonData(&gEnemyParty[gBattlePartyID[GetBankByPlayerAI(1)]], MON_DATA_NICKNAME, text); + GetMonData(&gEnemyParty[gBattlePartyID[GetBankByIdentity(1)]], MON_DATA_NICKNAME, text); StringGetEnd10(text); toCpy = text; break; case 4: // second player poke name - GetMonData(&gPlayerParty[gBattlePartyID[GetBankByPlayerAI(2)]], MON_DATA_NICKNAME, text); + GetMonData(&gPlayerParty[gBattlePartyID[GetBankByIdentity(2)]], MON_DATA_NICKNAME, text); StringGetEnd10(text); toCpy = text; break; case 5: // second enemy poke name - GetMonData(&gEnemyParty[gBattlePartyID[GetBankByPlayerAI(3)]], MON_DATA_NICKNAME, text); + GetMonData(&gEnemyParty[gBattlePartyID[GetBankByIdentity(3)]], MON_DATA_NICKNAME, text); StringGetEnd10(text); toCpy = text; break; @@ -612,13 +612,13 @@ u32 StrCpyDecodeBattle(const u8* src, u8* dst) toCpy = text; break; case 10: // attacker name with prefix, only bank 0/1 - HANDLE_NICKNAME_STRING_CASE(gBankAttacker, gBattlePartyID[GetBankByPlayerAI(GetBankIdentity(gBankAttacker) & 1)]) + HANDLE_NICKNAME_STRING_CASE(gBankAttacker, gBattlePartyID[GetBankByIdentity(GetBankIdentity(gBankAttacker) & 1)]) break; case 11: // attacker partner name, only bank 0/1 if (GetBankSide(gBankAttacker) == 0) - GetMonData(&gPlayerParty[gBattlePartyID[GetBankByPlayerAI(GetBankIdentity(gBankAttacker) & 1) + 2]], MON_DATA_NICKNAME, text); + GetMonData(&gPlayerParty[gBattlePartyID[GetBankByIdentity(GetBankIdentity(gBankAttacker) & 1) + 2]], MON_DATA_NICKNAME, text); else - GetMonData(&gEnemyParty[gBattlePartyID[GetBankByPlayerAI(GetBankIdentity(gBankAttacker) & 1) + 2]], MON_DATA_NICKNAME, text); + GetMonData(&gEnemyParty[gBattlePartyID[GetBankByIdentity(GetBankIdentity(gBankAttacker) & 1) + 2]], MON_DATA_NICKNAME, text); StringGetEnd10(text); toCpy = text; diff --git a/src/battle/battle_party_menu.c b/src/battle/battle_party_menu.c index d4dcae0ca..7bce00d82 100644 --- a/src/battle/battle_party_menu.c +++ b/src/battle/battle_party_menu.c @@ -122,7 +122,7 @@ static void sub_8094998(u8 arg[3], u8 player_number) if (!IsDoubleBattle()) { pos = 1; - *temp = gBattlePartyID[GetBankByPlayerAI(0)]; + *temp = gBattlePartyID[GetBankByIdentity(0)]; for (i = 0; i <= 5; i++) if (i != *temp) temp[pos++] = i; @@ -130,8 +130,8 @@ static void sub_8094998(u8 arg[3], u8 player_number) else { pos = 2; - *temp = gBattlePartyID[GetBankByPlayerAI(0)]; - temp[1] = gBattlePartyID[GetBankByPlayerAI(2)]; + *temp = gBattlePartyID[GetBankByIdentity(0)]; + temp[1] = gBattlePartyID[GetBankByIdentity(2)]; for (i = 0; i <= 5; i++) if ((i != *temp) && (i != temp[1])) temp[pos++] = i; @@ -147,13 +147,13 @@ static void sub_8094A74(u8 arg[3], u8 player_number, u32 arg3) u8 temp[6]; if (!GetBankSide(arg3)) { - i = GetBankByPlayerAI(0); - j = GetBankByPlayerAI(2); + i = GetBankByIdentity(0); + j = GetBankByIdentity(2); } else { - i = GetBankByPlayerAI(1); - j = GetBankByPlayerAI(3); + i = GetBankByIdentity(1); + j = GetBankByIdentity(3); } if (IsLinkDoubleBattle() == TRUE) { diff --git a/src/battle/battle_3.c b/src/battle/battle_util.c index e5a730598..9dc030a1a 100644 --- a/src/battle/battle_3.c +++ b/src/battle/battle_util.c @@ -1,21 +1,25 @@ #include "global.h" -#include "constants/abilities.h" #include "battle.h" -#include "constants/moves.h" -#include "item.h" -#include "constants/items.h" +#include "battle_util.h" +#include "data2.h" #include "event_data.h" -#include "constants/hold_effects.h" -#include "constants/species.h" -#include "constants/weather.h" +#include "ewram.h" +#include "item.h" +#include "link.h" #include "pokemon.h" -#include "data2.h" #include "random.h" +#include "rom_8077ABC.h" +#include "string_util.h" #include "text.h" +#include "util.h" +#include "constants/abilities.h" #include "constants/battle_move_effects.h" -#include "string_util.h" #include "constants/flags.h" -#include "ewram.h" +#include "constants/hold_effects.h" +#include "constants/items.h" +#include "constants/moves.h" +#include "constants/species.h" +#include "constants/weather.h" extern u8* gBattlescriptCurrInstr; extern u8 gActiveBank; @@ -33,7 +37,7 @@ extern u8 gNoOfAllBanks; extern u32 gStatuses3[4]; extern u8 gBankAttacker; extern u8 gBankTarget; -extern u8 gTurnOrder[4]; +extern u8 gBanksByTurnOrder[4]; extern u16 gSideAffecting[2]; extern u16 gBattleWeather; extern void (*gBattleMainFunc)(void); @@ -50,7 +54,7 @@ extern u8 gTakenDmgBanks[4]; extern u8 gBattleMoveFlags; extern u8 gLastUsedAbility; extern u8 gBattleTextBuff2[]; -extern u8 gFightStateTracker; +extern u8 gCurrentActionFuncId; extern struct BattleEnigmaBerry gEnigmaBerries[4]; extern u8 gUnknown_02024BE5; extern u8 gCurrMovePos; @@ -58,6 +62,7 @@ extern u16 gRandomMove; extern s32 gBattleMoveDamage; extern u16 gDynamicBasePower; extern u32 gBattleExecBuffer; +extern u8 gSentPokesToOpponent[2]; extern const u16 gSoundMovesTable[]; extern const u8 gStatusConditionString_PoisonJpn[]; extern const u8 gStatusConditionString_SleepJpn[]; @@ -69,26 +74,20 @@ extern const u8 gStatusConditionString_LoveJpn[]; extern const BattleCmdFunc gBattleScriptingCommandsTable[]; u8 IsImprisoned(u8 bank, u16 move); -u8 GetBankByPlayerAI(u8 ID); +u8 GetBankByIdentity(u8 ID); u8 GetBankIdentity(u8 bank); u8 GetBankSide(u8 bank); -void b_call_bc_move_exec(u8* BS_ptr); -bool8 sub_8015660(u8 bank); //check if a move failed void SetMoveEffect(bool8 primary, u8 certainArg); bool8 UproarWakeUpCheck(u8 bank); bool8 sub_8018018(u8 bank, u8, u8); -void sub_8015740(u8 bank); s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *defender, u32 move, u16 a4, u16 powerOverride, u8 typeOverride, u8 bank_atk, u8 bank_def); u8 CountTrailingZeroBits(u32 a); u8 GetMoveTarget(u16 move, u8 useMoveTarget); u8 sub_803FC34(u8 bank); u16 sub_803FBFC(u8 a); u8 weather_get_current(void); -void b_push_move_exec(u8* BS_ptr); void RecordAbilityBattle(u8 bank, u8 ability); void RecordItemBattle(u8 bank, u8 holdEffect); -void sub_8013F54(void); -void sub_8013FBC(void); s8 GetPokeFlavourRelation(u32 pid, u8 flavor); extern u8 BattleScript_MoveSelectionDisabledMove[]; @@ -206,22 +205,271 @@ extern u8 gUnknown_081D99A0[]; //disobedient, hits itself #define MULTISTRING_CHOOSER 0x5 #define MSG_DISPLAY 0x7 -void b_movescr_stack_push(u8* BS_ptr) +u8 GetBattleBank(u8 caseId) +{ + u8 ret = 0; + switch (caseId) + { + case BS_GET_TARGET: + ret = gBankTarget; + break; + case BS_GET_ATTACKER: + ret = gBankAttacker; + break; + case BS_GET_EFFECT_BANK: + ret = gEffectBank; + break; + case BS_GET_BANK_0: + ret = 0; + break; + case BS_GET_SCRIPTING_BANK: + ret = ewram16003; + break; + case BS_GET_gBank1: + ret = gBank1; + break; + case 5: + ret = gBank1; + break; + } + return ret; +} + +void PressurePPLose(u8 bankDef, u8 bankAtk, u16 move) +{ + s32 i; + + if (gBattleMons[bankDef].ability != ABILITY_PRESSURE) + return; + + for (i = 0; i < 4; i++) + { + if (gBattleMons[bankAtk].moves[i] == move) + break; + } + + if (i == 4) // mons don't share any moves + return; + + if (gBattleMons[bankAtk].pp[i] != 0) + gBattleMons[bankAtk].pp[i]--; + + if (!(gBattleMons[bankAtk].status2 & STATUS2_TRANSFORMED) + && !(gDisableStructs[bankAtk].unk18_b & gBitTable[i])) + { + gActiveBank = bankAtk; + EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + i, 0, 1, &gBattleMons[gActiveBank].pp[i]); + MarkBufferBankForExecution(gActiveBank); + } +} + +void PressurePPLoseOnUsingImprision(u8 bankAtk) +{ + s32 i, j; + s32 imprisionPos = 4; + u8 atkSide = GetBankSide(bankAtk); + + for (i = 0; i < gNoOfAllBanks; i++) + { + if (atkSide != GetBankSide(i) && gBattleMons[i].ability == ABILITY_PRESSURE) + { + for (j = 0; j < 4; j++) + { + if (gBattleMons[bankAtk].moves[j] == MOVE_IMPRISON) + break; + } + if (j != 4) + { + imprisionPos = j; + if (gBattleMons[bankAtk].pp[j] != 0) + gBattleMons[bankAtk].pp[j]--; + } + } + } + + if (imprisionPos != 4 + && !(gBattleMons[bankAtk].status2 & STATUS2_TRANSFORMED) + && !(gDisableStructs[bankAtk].unk18_b & gBitTable[imprisionPos])) + { + gActiveBank = bankAtk; + EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + imprisionPos, 0, 1, &gBattleMons[gActiveBank].pp[imprisionPos]); + MarkBufferBankForExecution(gActiveBank); + } +} + +void PressurePPLoseOnUsingPerishSong(u8 bankAtk) +{ + s32 i, j; + s32 perishSongPos = 4; + + for (i = 0; i < gNoOfAllBanks; i++) + { + if (gBattleMons[i].ability == ABILITY_PRESSURE && i != bankAtk) + { + for (j = 0; j < 4; j++) + { + if (gBattleMons[bankAtk].moves[j] == MOVE_PERISH_SONG) + break; + } + if (j != 4) + { + perishSongPos = j; + if (gBattleMons[bankAtk].pp[j] != 0) + gBattleMons[bankAtk].pp[j]--; + } + } + } + + if (perishSongPos != 4 + && !(gBattleMons[bankAtk].status2 & STATUS2_TRANSFORMED) + && !(gDisableStructs[bankAtk].unk18_b & gBitTable[perishSongPos])) + { + gActiveBank = bankAtk; + EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + perishSongPos, 0, 1, &gBattleMons[gActiveBank].pp[perishSongPos]); + MarkBufferBankForExecution(gActiveBank); + } +} + + +void MarkAllBufferBanksForExecution(void) // unused +{ + s32 i; + + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + for (i = 0; i < gNoOfAllBanks; i++) + gBattleExecBuffer |= gBitTable[i] << 0x1C; + } + else + { + for (i = 0; i < gNoOfAllBanks; i++) + gBattleExecBuffer |= gBitTable[i]; + } +} + +void MarkBufferBankForExecution(u8 bank) +{ + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + gBattleExecBuffer |= gBitTable[bank] << 0x1C; + } + else + { + gBattleExecBuffer |= gBitTable[bank]; + } +} + +void sub_80155A4(u8 arg0) +{ + s32 i; + + for (i = 0; i < GetLinkPlayerCount(); i++) + gBattleExecBuffer |= gBitTable[arg0] << (i << 2); + + gBattleExecBuffer &= ~(0x10000000 << arg0); +} + +void CancelMultiTurnMoves(u8 bank) +{ + gBattleMons[bank].status2 &= ~(STATUS2_MULTIPLETURNS); + gBattleMons[bank].status2 &= ~(STATUS2_LOCK_CONFUSE); + gBattleMons[bank].status2 &= ~(STATUS2_UPROAR); + gBattleMons[bank].status2 &= ~(STATUS2_BIDE); + + gStatuses3[bank] &= ~(STATUS3_SEMI_INVULNERABLE); + + gDisableStructs[bank].rolloutTimer1 = 0; + gDisableStructs[bank].furyCutterCounter = 0; +} + +bool8 WasUnableToUseMove(u8 bank) +{ + if (gProtectStructs[bank].prlzImmobility + || gProtectStructs[bank].notEffective + || gProtectStructs[bank].usedImprisionedMove + || gProtectStructs[bank].loveImmobility + || gProtectStructs[bank].usedDisabledMove + || gProtectStructs[bank].usedTauntedMove + || gProtectStructs[bank].flag2Unknown + || gProtectStructs[bank].flinchImmobility + || gProtectStructs[bank].confusionSelfDmg) + return TRUE; + else + return FALSE; +} + +void PrepareStringBattle(u16 stringId, u8 bank) +{ + gActiveBank = bank; + EmitPrintString(0, stringId); + MarkBufferBankForExecution(gActiveBank); +} + +void ResetSentPokesToOpponentValue(void) +{ + s32 i; + u32 bits = 0; + + gSentPokesToOpponent[0] = 0; + gSentPokesToOpponent[1] = 0; + + for (i = 0; i < gNoOfAllBanks; i += 2) + bits |= gBitTable[gBattlePartyID[i]]; + + for (i = 1; i < gNoOfAllBanks; i += 2) + gSentPokesToOpponent[(i & BIT_MON) >> 1] = bits; +} + +void sub_8015740(u8 bank) +{ + s32 i = 0; + u32 bits = 0; + + if (GetBankSide(bank) == SIDE_OPPONENT) + { + u8 id = ((bank & BIT_MON) >> 1); + gSentPokesToOpponent[id] = 0; + + for (i = 0; i < gNoOfAllBanks; i += 2) + { + if (!(gAbsentBankFlags & gBitTable[i])) + bits |= gBitTable[gBattlePartyID[i]]; + } + + gSentPokesToOpponent[id] = bits; + } +} + +void sub_80157C4(u8 bank) +{ + if (GetBankSide(bank) == SIDE_OPPONENT) + { + sub_8015740(bank); + } + else + { + s32 i; + for (i = 1; i < gNoOfAllBanks; i++) + gSentPokesToOpponent[(i & BIT_MON) >> 1] |= gBitTable[gBattlePartyID[bank]]; + } +} + +void BattleScriptPush(u8* BS_ptr) { B_BATTLESCRIPTS_STACK->ptr[B_BATTLESCRIPTS_STACK->size++] = BS_ptr; } -void b_movescr_stack_push_cursor(void) +void BattleScriptPushCursor(void) { B_BATTLESCRIPTS_STACK->ptr[B_BATTLESCRIPTS_STACK->size++] = gBattlescriptCurrInstr; } -void b_movescr_stack_pop_cursor(void) +void BattleScriptPop(void) { gBattlescriptCurrInstr = B_BATTLESCRIPTS_STACK->ptr[--B_BATTLESCRIPTS_STACK->size]; } -u8 sub_8015894(void) //msg can't select a move +u8 TrySetCantSelectMoveBattleScript(void) //msg can't select a move { u8 limitations = 0; u16 move = gBattleMons[gActiveBank].moves[gBattleBufferB[gActiveBank][2]]; @@ -320,9 +568,9 @@ bool8 AreAllMovesUnusable(void) gProtectStructs[gActiveBank].onlyStruggle = 1; gUnknown_02024C1C[gActiveBank] = BattleScript_NoMovesLeft; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - gBattleBufferB[gActiveBank][3] = GetBankByPlayerAI((GetBankIdentity(gActiveBank) ^ 1) | (Random() & 2)); + gBattleBufferB[gActiveBank][3] = GetBankByIdentity((GetBankIdentity(gActiveBank) ^ 1) | (Random() & 2)); else - gBattleBufferB[gActiveBank][3] = GetBankByPlayerAI(GetBankIdentity(gActiveBank) ^ 1); + gBattleBufferB[gActiveBank][3] = GetBankByIdentity(GetBankIdentity(gActiveBank) ^ 1); } else gProtectStructs[gActiveBank].onlyStruggle = 0; @@ -372,15 +620,15 @@ u8 UpdateTurnCounters(void) case 0: for (i = 0; i < gNoOfAllBanks; i++) { - gTurnOrder[i] = i; + gBanksByTurnOrder[i] = i; } for (i = 0; i < gNoOfAllBanks - 1; i++) { s32 j; for (j = i + 1; j < gNoOfAllBanks; j++) { - if (GetWhoStrikesFirst(gTurnOrder[i], gTurnOrder[j], 0)) - sub_8012FBC(i, j); + if (GetWhoStrikesFirst(gBanksByTurnOrder[i], gBanksByTurnOrder[j], 0)) + SwapTurnOrder(i, j); } } BATTLE_STRUCT->turncountersTracker++; @@ -392,11 +640,11 @@ u8 UpdateTurnCounters(void) if (gSideAffecting[sideBank] & SIDE_STATUS_REFLECT) { - if (--gSideTimer[sideBank].reflectTimer == 0) + if (--gSideTimers[sideBank].reflectTimer == 0) { gSideAffecting[sideBank] &= ~SIDE_STATUS_REFLECT; - b_call_bc_move_exec(BattleScript_SideStatusWoreOff); + BattleScriptExecute(BattleScript_SideStatusWoreOff); gBattleTextBuff1[0] = 0xFD; gBattleTextBuff1[1] = 2; gBattleTextBuff1[2] = MOVE_REFLECT; @@ -421,10 +669,10 @@ u8 UpdateTurnCounters(void) gActiveBank = gBankAttacker = sideBank = BATTLE_STRUCT->turnSideTracker; if (gSideAffecting[sideBank] & SIDE_STATUS_LIGHTSCREEN) { - if (--gSideTimer[sideBank].lightscreenTimer == 0) + if (--gSideTimers[sideBank].lightscreenTimer == 0) { gSideAffecting[sideBank] &= ~SIDE_STATUS_LIGHTSCREEN; - b_call_bc_move_exec(BattleScript_SideStatusWoreOff); + BattleScriptExecute(BattleScript_SideStatusWoreOff); gBattleCommunication[MULTISTRING_CHOOSER] = sideBank; gBattleTextBuff1[0] = 0xFD; gBattleTextBuff1[1] = 2; @@ -448,10 +696,10 @@ u8 UpdateTurnCounters(void) while (BATTLE_STRUCT->turnSideTracker < 2) { gActiveBank = gBankAttacker = sideBank = BATTLE_STRUCT->turnSideTracker; - if (gSideTimer[sideBank].mistTimer && --gSideTimer[sideBank].mistTimer == 0) + if (gSideTimers[sideBank].mistTimer && --gSideTimers[sideBank].mistTimer == 0) { gSideAffecting[sideBank] &= ~SIDE_STATUS_MIST; - b_call_bc_move_exec(BattleScript_SideStatusWoreOff); + BattleScriptExecute(BattleScript_SideStatusWoreOff); gBattleCommunication[MULTISTRING_CHOOSER] = sideBank; gBattleTextBuff1[0] = 0xFD; gBattleTextBuff1[1] = 2; @@ -476,10 +724,10 @@ u8 UpdateTurnCounters(void) gActiveBank = gBankAttacker = sideBank = BATTLE_STRUCT->turnSideTracker; if (gSideAffecting[sideBank] & SIDE_STATUS_SAFEGUARD) { - if (--gSideTimer[sideBank].safeguardTimer == 0) + if (--gSideTimers[sideBank].safeguardTimer == 0) { gSideAffecting[sideBank] &= ~SIDE_STATUS_SAFEGUARD; - b_call_bc_move_exec(BattleScript_SafeguardEnds); + BattleScriptExecute(BattleScript_SafeguardEnds); effect++; } } @@ -496,11 +744,11 @@ u8 UpdateTurnCounters(void) case 5: while (BATTLE_STRUCT->turnSideTracker < gNoOfAllBanks) { - gActiveBank = gTurnOrder[BATTLE_STRUCT->turnSideTracker]; + gActiveBank = gBanksByTurnOrder[BATTLE_STRUCT->turnSideTracker]; if (gWishFutureKnock.wishCounter[gActiveBank] && --gWishFutureKnock.wishCounter[gActiveBank] == 0 && gBattleMons[gActiveBank].hp) { gBankTarget = gActiveBank; - b_call_bc_move_exec(BattleScript_WishComesTrue); + BattleScriptExecute(BattleScript_WishComesTrue); effect++; } BATTLE_STRUCT->turnSideTracker++; @@ -532,7 +780,7 @@ u8 UpdateTurnCounters(void) gBattleCommunication[MULTISTRING_CHOOSER] = 1; else gBattleCommunication[MULTISTRING_CHOOSER] = 0; - b_call_bc_move_exec(BattleScript_RainContinuesOrEnds); + BattleScriptExecute(BattleScript_RainContinuesOrEnds); effect++; } BATTLE_STRUCT->turncountersTracker++; @@ -550,7 +798,7 @@ u8 UpdateTurnCounters(void) BATTLE_STRUCT->animArg1 = B_ANIM_SANDSTORM_CONTINUES; gBattleCommunication[MULTISTRING_CHOOSER] = 0; - b_call_bc_move_exec(gBattlescriptCurrInstr); + BattleScriptExecute(gBattlescriptCurrInstr); effect++; } BATTLE_STRUCT->turncountersTracker++; @@ -566,7 +814,7 @@ u8 UpdateTurnCounters(void) else gBattlescriptCurrInstr = BattleScript_SunlightContinues; - b_call_bc_move_exec(gBattlescriptCurrInstr); + BattleScriptExecute(gBattlescriptCurrInstr); effect++; } BATTLE_STRUCT->turncountersTracker++; @@ -584,7 +832,7 @@ u8 UpdateTurnCounters(void) BATTLE_STRUCT->animArg1 = B_ANIM_HAIL_CONTINUES; gBattleCommunication[MULTISTRING_CHOOSER] = 1; - b_call_bc_move_exec(gBattlescriptCurrInstr); + BattleScriptExecute(gBattlescriptCurrInstr); effect++; } BATTLE_STRUCT->turncountersTracker++; @@ -606,7 +854,7 @@ u8 TurnBasedEffects(void) gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20); while (BATTLE_STRUCT->turnEffectsBank < gNoOfAllBanks && BATTLE_STRUCT->turnEffectsTracker <= TURNBASED_MAX_CASE) { - gActiveBank = gBankAttacker = gTurnOrder[BATTLE_STRUCT->turnEffectsBank]; + gActiveBank = gBankAttacker = gBanksByTurnOrder[BATTLE_STRUCT->turnEffectsBank]; if (gAbsentBankFlags & gBitTable[gActiveBank]) { BATTLE_STRUCT->turnEffectsBank++; @@ -624,7 +872,7 @@ u8 TurnBasedEffects(void) if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; gBattleMoveDamage *= -1; - b_call_bc_move_exec(BattleScript_IngrainTurnHeal); + BattleScriptExecute(BattleScript_IngrainTurnHeal); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -653,7 +901,7 @@ u8 TurnBasedEffects(void) gBattleMoveDamage = 1; BATTLE_STRUCT->animArg1 = gBankTarget; BATTLE_STRUCT->animArg2 = gBankAttacker; - b_call_bc_move_exec(BattleScript_LeechSeedTurnDrain); + BattleScriptExecute(BattleScript_LeechSeedTurnDrain); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -664,7 +912,7 @@ u8 TurnBasedEffects(void) gBattleMoveDamage = gBattleMons[gActiveBank].maxHP / 8; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_call_bc_move_exec(BattleScript_PoisonTurnDmg); + BattleScriptExecute(BattleScript_PoisonTurnDmg); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -678,7 +926,7 @@ u8 TurnBasedEffects(void) if ((gBattleMons[gActiveBank].status1 & 0xF00) != 0xF00) //not 16 turns gBattleMons[gActiveBank].status1 += 0x100; gBattleMoveDamage *= (gBattleMons[gActiveBank].status1 & 0xF00) >> 8; - b_call_bc_move_exec(BattleScript_PoisonTurnDmg); + BattleScriptExecute(BattleScript_PoisonTurnDmg); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -689,7 +937,7 @@ u8 TurnBasedEffects(void) gBattleMoveDamage = gBattleMons[gActiveBank].maxHP / 8; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_call_bc_move_exec(BattleScript_BurnTurnDmg); + BattleScriptExecute(BattleScript_BurnTurnDmg); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -701,7 +949,7 @@ u8 TurnBasedEffects(void) gBattleMoveDamage = gBattleMons[gActiveBank].maxHP / 4; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_call_bc_move_exec(BattleScript_NightmareTurnDmg); + BattleScriptExecute(BattleScript_NightmareTurnDmg); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -712,7 +960,7 @@ u8 TurnBasedEffects(void) gBattleMoveDamage = gBattleMons[gActiveBank].maxHP / 4; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_call_bc_move_exec(BattleScript_CurseTurnDmg); + BattleScriptExecute(BattleScript_CurseTurnDmg); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -744,7 +992,7 @@ u8 TurnBasedEffects(void) gBattleTextBuff1[4] = EOS; gBattlescriptCurrInstr = BattleScript_WrapEnds; } - b_call_bc_move_exec(gBattlescriptCurrInstr); + BattleScriptExecute(gBattlescriptCurrInstr); effect++; } BATTLE_STRUCT->turnEffectsTracker++; @@ -760,9 +1008,9 @@ u8 TurnBasedEffects(void) gBattleMons[gBankAttacker].status1 &= ~(STATUS_SLEEP); gBattleMons[gBankAttacker].status2 &= ~(STATUS2_NIGHTMARE); gBattleCommunication[MULTISTRING_CHOOSER] = 1; - b_call_bc_move_exec(BattleScript_MonWokeUpInUproar); + BattleScriptExecute(BattleScript_MonWokeUpInUproar); gActiveBank = gBankAttacker; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); break; } @@ -776,7 +1024,7 @@ u8 TurnBasedEffects(void) { gBankAttacker = gActiveBank; gBattleMons[gActiveBank].status2 -= 0x10; // uproar timer goes down - if (sub_8015660(gActiveBank)) + if (WasUnableToUseMove(gActiveBank)) { CancelMultiTurnMoves(gActiveBank); gBattleCommunication[MULTISTRING_CHOOSER] = 1; @@ -791,7 +1039,7 @@ u8 TurnBasedEffects(void) gBattleCommunication[MULTISTRING_CHOOSER] = 1; CancelMultiTurnMoves(gActiveBank); } - b_call_bc_move_exec(BattleScript_PrintUproarOverTurns); + BattleScriptExecute(BattleScript_PrintUproarOverTurns); effect = 1; } } @@ -802,7 +1050,7 @@ u8 TurnBasedEffects(void) if (gBattleMons[gActiveBank].status2 & STATUS2_LOCK_CONFUSE) { gBattleMons[gActiveBank].status2 -= 0x400; - if (sub_8015660(gActiveBank)) + if (WasUnableToUseMove(gActiveBank)) CancelMultiTurnMoves(gActiveBank); else if (!(gBattleMons[gActiveBank].status2 & STATUS2_LOCK_CONFUSE) && (gBattleMons[gActiveBank].status2 & STATUS2_MULTIPLETURNS)) @@ -813,7 +1061,7 @@ u8 TurnBasedEffects(void) gBattleCommunication[MOVE_EFFECT_BYTE] = 0x47; SetMoveEffect(1, 0); if (gBattleMons[gActiveBank].status2 & STATUS2_CONFUSION) - b_call_bc_move_exec(BattleScript_ThrashConfuses); + BattleScriptExecute(BattleScript_ThrashConfuses); effect++; } } @@ -837,7 +1085,7 @@ u8 TurnBasedEffects(void) else if (--gDisableStructs[gActiveBank].disableTimer1 == 0) // disable ends { gDisableStructs[gActiveBank].disabledMove = 0; - b_call_bc_move_exec(BattleScript_DisabledNoMore); + BattleScriptExecute(BattleScript_DisabledNoMore); effect++; } } @@ -856,7 +1104,7 @@ u8 TurnBasedEffects(void) { gDisableStructs[gActiveBank].encoredMove = 0; gDisableStructs[gActiveBank].encoreTimer1 = 0; - b_call_bc_move_exec(BattleScript_EncoredNoMore); + BattleScriptExecute(BattleScript_EncoredNoMore); effect++; } } @@ -887,10 +1135,10 @@ u8 TurnBasedEffects(void) { CancelMultiTurnMoves(gActiveBank); gBattleMons[gActiveBank].status1 |= (Random() & 3) + 2; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); gEffectBank = gActiveBank; - b_call_bc_move_exec(BattleScript_YawnMakesAsleep); + BattleScriptExecute(BattleScript_YawnMakesAsleep); effect++; } } @@ -909,7 +1157,7 @@ u8 TurnBasedEffects(void) return 0; } -bool8 sub_80170DC(void) // handle future sight and perish song +bool8 HandleWishPerishSongOnTurnEnd(void) { gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20); switch (BATTLE_STRUCT->sub80170DC_Tracker) @@ -938,7 +1186,7 @@ bool8 sub_80170DC(void) // handle future sight and perish song gBankAttacker = gWishFutureKnock.futureSightAttacker[gActiveBank]; gBattleMoveDamage = gWishFutureKnock.futureSightDmg[gActiveBank]; gSpecialStatuses[gBankTarget].moveturnLostHP = 0xFFFF; - b_call_bc_move_exec(BattleScript_MonTookFutureAttack); + BattleScriptExecute(BattleScript_MonTookFutureAttack); return 1; } } @@ -948,7 +1196,7 @@ bool8 sub_80170DC(void) // handle future sight and perish song case 1: // perish song while (BATTLE_STRUCT->sub80170DC_Bank < gNoOfAllBanks) { - gActiveBank = gBankAttacker = gTurnOrder[BATTLE_STRUCT->sub80170DC_Bank]; + gActiveBank = gBankAttacker = gBanksByTurnOrder[BATTLE_STRUCT->sub80170DC_Bank]; if (gAbsentBankFlags & gBitTable[gActiveBank]) BATTLE_STRUCT->sub80170DC_Bank++; else @@ -973,7 +1221,7 @@ bool8 sub_80170DC(void) // handle future sight and perish song gDisableStructs[gActiveBank].perishSong1--; gBattlescriptCurrInstr = BattleScript_PerishSongTimerGoesDown; } - b_call_bc_move_exec(gBattlescriptCurrInstr); + BattleScriptExecute(gBattlescriptCurrInstr); return 1; } } @@ -984,9 +1232,9 @@ bool8 sub_80170DC(void) // handle future sight and perish song return 0; } -#define sub_80173A4_MAX_CASE 7 +#define HandleFaintedMonActions_MAX_CASE 7 -bool8 sub_80173A4(void) +bool8 HandleFaintedMonActions(void) { if (gBattleTypeFlags & BATTLE_TYPE_SAFARI) return 0; @@ -1009,7 +1257,7 @@ bool8 sub_80173A4(void) gBank1 = gBankTarget = BATTLE_STRUCT->unk1605A; if (gBattleMons[BATTLE_STRUCT->unk1605A].hp == 0 && !(BATTLE_STRUCT->unk16113 & gBitTable[gBattlePartyID[BATTLE_STRUCT->unk1605A]]) && !(gAbsentBankFlags & gBitTable[BATTLE_STRUCT->unk1605A])) { - b_call_bc_move_exec(BattleScript_GiveExp); + BattleScriptExecute(BattleScript_GiveExp); BATTLE_STRUCT->sub80173A4_Tracker = 2; return 1; } @@ -1032,7 +1280,7 @@ bool8 sub_80173A4(void) gBank1 = gBankTarget = BATTLE_STRUCT->unk1605A; //or should banks be switched? if (gBattleMons[BATTLE_STRUCT->unk1605A].hp == 0 && !(gAbsentBankFlags & gBitTable[BATTLE_STRUCT->unk1605A])) { - b_call_bc_move_exec(BattleScript_HandleFaintedMon); + BattleScriptExecute(BattleScript_HandleFaintedMon); BATTLE_STRUCT->sub80173A4_Tracker = 5; return 1; } @@ -1053,11 +1301,11 @@ bool8 sub_80173A4(void) case 7: break; } - } while (BATTLE_STRUCT->sub80173A4_Tracker != sub_80173A4_MAX_CASE); + } while (BATTLE_STRUCT->sub80173A4_Tracker != HandleFaintedMonActions_MAX_CASE); return 0; } -void b_clear_atk_up_if_hit_flag_unless_enraged(void) +void TryClearRageStatuses(void) { int i; for (i = 0; i < gNoOfAllBanks; i++) @@ -1089,7 +1337,7 @@ u8 AtkCanceller_UnableToUseMove(void) { gBattleMons[gBankAttacker].status1 &= ~(STATUS_SLEEP); gBattleMons[gBankAttacker].status2 &= ~(STATUS2_NIGHTMARE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = 1; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; effect = 2; @@ -1117,7 +1365,7 @@ u8 AtkCanceller_UnableToUseMove(void) else { gBattleMons[gBankAttacker].status2 &= ~(STATUS2_NIGHTMARE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; effect = 2; @@ -1145,7 +1393,7 @@ u8 AtkCanceller_UnableToUseMove(void) else // unfreeze { gBattleMons[gBankAttacker].status1 &= ~(STATUS_FREEZE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; gBattleCommunication[MULTISTRING_CHOOSER] = 0; } @@ -1232,7 +1480,7 @@ u8 AtkCanceller_UnableToUseMove(void) if (Random() & 1) { gBattleCommunication[MULTISTRING_CHOOSER] = 0; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); } else // confusion dmg { @@ -1246,7 +1494,7 @@ u8 AtkCanceller_UnableToUseMove(void) } else // snapped out of confusion { - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedIsConfusedNoMore; } effect = 1; @@ -1269,10 +1517,10 @@ u8 AtkCanceller_UnableToUseMove(void) { BATTLE_STRUCT->scriptingActive = CountTrailingZeroBits((gBattleMons[gBankAttacker].status2 & STATUS2_INFATUATION) >> 0x10); if (Random() & 1) - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); else { - b_movescr_stack_push(BattleScript_MoveUsedIsParalyzedCantAttack); + BattleScriptPush(BattleScript_MoveUsedIsParalyzedCantAttack); gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; gProtectStructs[gBankAttacker].loveImmobility = 1; CancelMultiTurnMoves(gBankAttacker); @@ -1313,7 +1561,7 @@ u8 AtkCanceller_UnableToUseMove(void) if (gBattleMoves[gCurrentMove].effect == EFFECT_THAW_HIT) { gBattleMons[gBankAttacker].status1 &= ~(STATUS_FREEZE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; gBattleCommunication[MULTISTRING_CHOOSER] = 1; } @@ -1330,7 +1578,7 @@ u8 AtkCanceller_UnableToUseMove(void) if (effect == 2) { gActiveBank = gBankAttacker; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); } return effect; @@ -1363,14 +1611,14 @@ bool8 sub_8018018(u8 bank, u8 r1, u8 r2) { if (GetBankSide(bank) == 1) { - r7 = GetBankByPlayerAI(1); - r6 = GetBankByPlayerAI(3); + r7 = GetBankByIdentity(1); + r6 = GetBankByIdentity(3); party = gEnemyParty; } else { - r7 = GetBankByPlayerAI(0); - r6 = GetBankByPlayerAI(2); + r7 = GetBankByIdentity(0); + r6 = GetBankByIdentity(2); party = gPlayerParty; } if (r1 == 6) @@ -1534,7 +1782,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) if (effect) { gBattleCommunication[MULTISTRING_CHOOSER] = weather_get_current(); - b_push_move_exec(BattleScript_OverworldWeatherStarts); + BattleScriptPushCursorAndCallback(BattleScript_OverworldWeatherStarts); } break; case ABILITY_DRIZZLE: @@ -1542,7 +1790,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) if (!(gBattleWeather & WEATHER_RAIN_PERMANENT)) { gBattleWeather = (WEATHER_RAIN_PERMANENT | WEATHER_RAIN_TEMPORARY); - b_push_move_exec(BattleScript_DrizzleActivates); + BattleScriptPushCursorAndCallback(BattleScript_DrizzleActivates); BATTLE_STRUCT->scriptingActive = bank; effect++; } @@ -1552,7 +1800,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT)) { gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY); - b_push_move_exec(BattleScript_SandstreamActivates); + BattleScriptPushCursorAndCallback(BattleScript_SandstreamActivates); BATTLE_STRUCT->scriptingActive = bank; effect++; } @@ -1562,7 +1810,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) if (!(gBattleWeather & WEATHER_SUN_PERMANENT)) { gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY); - b_push_move_exec(BattleScript_DroughtActivates); + BattleScriptPushCursorAndCallback(BattleScript_DroughtActivates); BATTLE_STRUCT->scriptingActive = bank; effect++; } @@ -1580,7 +1828,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) effect = CastformDataTypeChange(bank); if (effect != 0) { - b_push_move_exec(BattleScript_CastformChange); + BattleScriptPushCursorAndCallback(BattleScript_CastformChange); BATTLE_STRUCT->scriptingActive = bank; BATTLE_STRUCT->castformToChangeInto = effect - 1; } @@ -1603,7 +1851,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) effect = CastformDataTypeChange(target1); if (effect != 0) { - b_push_move_exec(BattleScript_CastformChange); + BattleScriptPushCursorAndCallback(BattleScript_CastformChange); BATTLE_STRUCT->scriptingActive = target1; BATTLE_STRUCT->castformToChangeInto = effect - 1; break; @@ -1625,7 +1873,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) && gBattleMons[bank].maxHP > gBattleMons[bank].hp) { gLastUsedAbility = ABILITY_RAIN_DISH; // why - b_push_move_exec(BattleScript_RainDishActivates); + BattleScriptPushCursorAndCallback(BattleScript_RainDishActivates); gBattleMoveDamage = gBattleMons[bank].maxHP / 16; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; @@ -1650,8 +1898,8 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) // BUG: The nightmare status does not get cleared here. This was fixed in Emerald. //gBattleMons[bank].status2 &= ~(STATUS2_NIGHTMARE); BATTLE_STRUCT->scriptingActive = gActiveBank = bank; - b_push_move_exec(BattleScript_ShedSkinActivates); - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[bank].status1); + BattleScriptPushCursorAndCallback(BattleScript_ShedSkinActivates); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[bank].status1); MarkBufferBankForExecution(gActiveBank); effect++; } @@ -1662,7 +1910,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) gBattleMons[bank].statStages[STAT_STAGE_SPEED]++; BATTLE_STRUCT->animArg1 = 0x11; BATTLE_STRUCT->animArg2 = 0; - b_push_move_exec(BattleScript_SpeedBoostActivates); + BattleScriptPushCursorAndCallback(BattleScript_SpeedBoostActivates); BATTLE_STRUCT->scriptingActive = bank; effect++; } @@ -1781,7 +2029,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) gBattleTextBuff1[1] = 3; gBattleTextBuff1[2] = moveType; gBattleTextBuff1[3] = 0xFF; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_ColorChangeActivates; effect++; } @@ -1797,7 +2045,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) gBattleMoveDamage = gBattleMons[gBankAttacker].maxHP / 16; if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_RoughSkinActivates; effect++; } @@ -1818,7 +2066,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) if (gBattleCommunication[MOVE_EFFECT_BYTE] == 3) gBattleCommunication[MOVE_EFFECT_BYTE] += 2; gBattleCommunication[MOVE_EFFECT_BYTE] += 0x40; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect; gHitMarker |= HITMARKER_IGNORE_SAFEGUARD; effect++; @@ -1834,7 +2082,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) && (Random() % 3) == 0) { gBattleCommunication[MOVE_EFFECT_BYTE] = 0x42; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect; gHitMarker |= HITMARKER_IGNORE_SAFEGUARD; effect++; @@ -1850,7 +2098,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) && (Random() % 3) == 0) { gBattleCommunication[MOVE_EFFECT_BYTE] = 0x45; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect; gHitMarker |= HITMARKER_IGNORE_SAFEGUARD; effect++; @@ -1866,7 +2114,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) && (Random() % 3) == 0) { gBattleCommunication[MOVE_EFFECT_BYTE] = 0x43; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect; gHitMarker |= HITMARKER_IGNORE_SAFEGUARD; effect++; @@ -1888,7 +2136,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) && GetGenderFromSpeciesAndPersonality(speciesDef, pidDef) != 0xFF) { gBattleMons[gBankAttacker].status2 |= (gBitTable[gBankTarget] << 0x10); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_CuteCharmActivates; effect++; } @@ -1968,11 +2216,11 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) gBattleMons[bank].status2 &= ~(STATUS2_INFATUATION); break; } - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_AbilityCuredStatus; BATTLE_STRUCT->scriptingActive = bank; gActiveBank = bank; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); return effect; } @@ -1989,7 +2237,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) effect = CastformDataTypeChange(bank); if (effect) { - b_push_move_exec(BattleScript_CastformChange); + BattleScriptPushCursorAndCallback(BattleScript_CastformChange); BATTLE_STRUCT->scriptingActive = bank; BATTLE_STRUCT->castformToChangeInto = effect - 1; return effect; @@ -2008,7 +2256,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) BATTLE_STRUCT->synchroniseEffect = 2; gBattleCommunication[MOVE_EFFECT_BYTE] = BATTLE_STRUCT->synchroniseEffect + 0x40; BATTLE_STRUCT->scriptingActive = gBankTarget; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SynchronizeActivates; gHitMarker |= HITMARKER_IGNORE_SAFEGUARD; effect++; @@ -2024,7 +2272,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) BATTLE_STRUCT->synchroniseEffect = 2; gBattleCommunication[MOVE_EFFECT_BYTE] = BATTLE_STRUCT->synchroniseEffect; BATTLE_STRUCT->scriptingActive = gBankAttacker; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SynchronizeActivates; gHitMarker |= HITMARKER_IGNORE_SAFEGUARD; effect++; @@ -2038,7 +2286,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) { gLastUsedAbility = ABILITY_INTIMIDATE; gStatuses3[i] &= ~(STATUS3_INTIMIDATE_POKES); - b_push_move_exec(gUnknown_081D978C); + BattleScriptPushCursorAndCallback(gUnknown_081D978C); BATTLE_STRUCT->intimidateBank = i; effect++; break; @@ -2053,15 +2301,15 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) { u8 target2; side = (GetBankIdentity(i) ^ 1) & 1; - target1 = GetBankByPlayerAI(side); - target2 = GetBankByPlayerAI(side + 2); + target1 = GetBankByIdentity(side); + target2 = GetBankByIdentity(side + 2); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { if (gBattleMons[target1].ability != 0 && gBattleMons[target1].hp != 0 && gBattleMons[target2].ability != 0 && gBattleMons[target2].hp != 0) { //_080199AE - gActiveBank = GetBankByPlayerAI(((Random() & 1) * 2) | side); + gActiveBank = GetBankByIdentity(((Random() & 1) * 2) | side); gBattleMons[i].ability = gBattleMons[gActiveBank].ability; gLastUsedAbility = gBattleMons[gActiveBank].ability; effect++; @@ -2096,7 +2344,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) } if (effect) { - b_push_move_exec(BattleScript_TraceActivates); + BattleScriptPushCursorAndCallback(BattleScript_TraceActivates); gStatuses3[i] &= ~(STATUS3_TRACE); BATTLE_STRUCT->scriptingActive = i; @@ -2123,7 +2371,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) { gLastUsedAbility = ABILITY_INTIMIDATE; gStatuses3[i] &= ~(STATUS3_INTIMIDATE_POKES); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = gUnknown_081D9795; BATTLE_STRUCT->intimidateBank = i; effect++; @@ -2251,20 +2499,20 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg) return effect; } -void b_call_bc_move_exec(u8* BS_ptr) +void BattleScriptExecute(u8* BS_ptr) { gBattlescriptCurrInstr = BS_ptr; B_FUNCTION_STACK->ptr[B_FUNCTION_STACK->size++] = gBattleMainFunc; - gBattleMainFunc = sub_8013F54; - gFightStateTracker = 0; + gBattleMainFunc = RunBattleScriptCommands_PopCallbacksStack; + gCurrentActionFuncId = 0; } -void b_push_move_exec(u8* BS_ptr) +void BattleScriptPushCursorAndCallback(u8* BS_ptr) { - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BS_ptr; B_FUNCTION_STACK->ptr[B_FUNCTION_STACK->size++] = gBattleMainFunc; - gBattleMainFunc = sub_8013FBC; + gBattleMainFunc = RunBattleScriptCommands; } enum @@ -2354,7 +2602,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->scriptingActive = bank; gStringBank = bank; gActiveBank = gBankAttacker = bank; - b_call_bc_move_exec(BattleScript_WhiteHerbEnd2); + BattleScriptExecute(BattleScript_WhiteHerbEnd2); } break; } @@ -2371,7 +2619,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].hp + bankQuality > gBattleMons[bank].maxHP) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; - b_call_bc_move_exec(BattleScript_ItemHealHP_RemoveItem); + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); effect = 4; } break; @@ -2406,8 +2654,8 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleTextBuff1[2] = move; gBattleTextBuff1[3] = move >> 8; gBattleTextBuff1[4] = 0xFF; - b_call_bc_move_exec(BattleScript_BerryPPHealEnd2); - EmitSetAttributes(0, i + REQUEST_PPMOVE1_BATTLE, 0, 1, &changedPP); + BattleScriptExecute(BattleScript_BerryPPHealEnd2); + EmitSetMonData(0, i + REQUEST_PPMOVE1_BATTLE, 0, 1, &changedPP); MarkBufferBankForExecution(gActiveBank); effect = ITEM_PP_CHANGE; } @@ -2427,7 +2675,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->scriptingActive = bank; gStringBank = bank; gActiveBank = gBankAttacker = bank; - b_call_bc_move_exec(BattleScript_WhiteHerbEnd2); + BattleScriptExecute(BattleScript_WhiteHerbEnd2); } break; case HOLD_EFFECT_LEFTOVERS: @@ -2439,7 +2687,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].hp + gBattleMoveDamage > gBattleMons[bank].maxHP) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; - b_call_bc_move_exec(BattleScript_ItemHealHP_End2); + BattleScriptExecute(BattleScript_ItemHealHP_End2); effect = ITEM_HP_CHANGE; RecordItemBattle(bank, bankHoldEffect); } @@ -2459,9 +2707,9 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; if (GetPokeFlavourRelation(gBattleMons[bank].personality, FLAVOR_SPICY) < 0) - b_call_bc_move_exec(BattleScript_BerryConfuseHealEnd2); + BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); else - b_call_bc_move_exec(BattleScript_ItemHealHP_RemoveItem); + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); effect = ITEM_HP_CHANGE; } break; @@ -2479,9 +2727,9 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; if (GetPokeFlavourRelation(gBattleMons[bank].personality, FLAVOR_DRY) < 0) - b_call_bc_move_exec(BattleScript_BerryConfuseHealEnd2); + BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); else - b_call_bc_move_exec(BattleScript_ItemHealHP_RemoveItem); + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); effect = ITEM_HP_CHANGE; } break; @@ -2499,9 +2747,9 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; if (GetPokeFlavourRelation(gBattleMons[bank].personality, FLAVOR_SWEET) < 0) - b_call_bc_move_exec(BattleScript_BerryConfuseHealEnd2); + BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); else - b_call_bc_move_exec(BattleScript_ItemHealHP_RemoveItem); + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); effect = ITEM_HP_CHANGE; } break; @@ -2519,9 +2767,9 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; if (GetPokeFlavourRelation(gBattleMons[bank].personality, FLAVOR_BITTER) < 0) - b_call_bc_move_exec(BattleScript_BerryConfuseHealEnd2); + BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); else - b_call_bc_move_exec(BattleScript_ItemHealHP_RemoveItem); + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); effect = ITEM_HP_CHANGE; } break; @@ -2539,9 +2787,9 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleMoveDamage = gBattleMons[bank].maxHP - gBattleMons[bank].hp; gBattleMoveDamage *= -1; if (GetPokeFlavourRelation(gBattleMons[bank].personality, FLAVOR_SOUR) < 0) - b_call_bc_move_exec(BattleScript_BerryConfuseHealEnd2); + BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); else - b_call_bc_move_exec(BattleScript_ItemHealHP_RemoveItem); + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); effect = ITEM_HP_CHANGE; } break; @@ -2564,7 +2812,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->statChanger = 0x10 + STAT_STAGE_ATK; BATTLE_STRUCT->animArg1 = 0xE + STAT_STAGE_ATK; BATTLE_STRUCT->animArg2 = 0; - b_call_bc_move_exec(BattleScript_BerryStatRaiseEnd2); + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; } break; @@ -2580,7 +2828,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->statChanger = 0x10 + STAT_STAGE_DEF; BATTLE_STRUCT->animArg1 = 0xE + STAT_STAGE_DEF; BATTLE_STRUCT->animArg2 = 0; - b_call_bc_move_exec(BattleScript_BerryStatRaiseEnd2); + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; } break; @@ -2596,7 +2844,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->statChanger = 0x10 + STAT_STAGE_SPEED; BATTLE_STRUCT->animArg1 = 0xE + STAT_STAGE_SPEED; BATTLE_STRUCT->animArg2 = 0; - b_call_bc_move_exec(BattleScript_BerryStatRaiseEnd2); + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; } break; @@ -2612,7 +2860,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->statChanger = 0x10 + STAT_STAGE_SPATK; BATTLE_STRUCT->animArg1 = 0xE + STAT_STAGE_SPATK; BATTLE_STRUCT->animArg2 = 0; - b_call_bc_move_exec(BattleScript_BerryStatRaiseEnd2); + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; } break; @@ -2628,7 +2876,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->statChanger = 0x10 + STAT_STAGE_SPDEF; BATTLE_STRUCT->animArg1 = 0xE + STAT_STAGE_SPDEF; BATTLE_STRUCT->animArg2 = 0; - b_call_bc_move_exec(BattleScript_BerryStatRaiseEnd2); + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; } break; @@ -2636,7 +2884,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].hp <= gBattleMons[bank].maxHP / bankQuality && !moveTurn && !(gBattleMons[bank].status2 & STATUS2_FOCUS_ENERGY)) { gBattleMons[bank].status2 |= STATUS2_FOCUS_ENERGY; - b_call_bc_move_exec(BattleScript_BerryFocusEnergyEnd2); + BattleScriptExecute(BattleScript_BerryFocusEnergyEnd2); effect = ITEM_EFFECT_OTHER; } break; @@ -2673,7 +2921,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->statChanger = 0x21 + i; BATTLE_STRUCT->animArg1 = 0x21 + i + 6; BATTLE_STRUCT->animArg2 = 0; - b_call_bc_move_exec(BattleScript_BerryStatRaiseEnd2); + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; } } @@ -2682,7 +2930,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_PARALYSIS) { gBattleMons[bank].status1 &= ~(STATUS_PARALYSIS); - b_call_bc_move_exec(BattleScript_BerryCurePrlzEnd2); + BattleScriptExecute(BattleScript_BerryCurePrlzEnd2); effect = ITEM_STATUS_CHANGE; } break; @@ -2690,7 +2938,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_PSN_ANY) { gBattleMons[bank].status1 &= ~(STATUS_PSN_ANY | STATUS_TOXIC_COUNTER); - b_call_bc_move_exec(BattleScript_BerryCurePsnEnd2); + BattleScriptExecute(BattleScript_BerryCurePsnEnd2); effect = ITEM_STATUS_CHANGE; } break; @@ -2698,7 +2946,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_BURN) { gBattleMons[bank].status1 &= ~(STATUS_BURN); - b_call_bc_move_exec(BattleScript_BerryCureBrnEnd2); + BattleScriptExecute(BattleScript_BerryCureBrnEnd2); effect = ITEM_STATUS_CHANGE; } break; @@ -2706,7 +2954,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_FREEZE) { gBattleMons[bank].status1 &= ~(STATUS_FREEZE); - b_call_bc_move_exec(BattleScript_BerryCureFrzEnd2); + BattleScriptExecute(BattleScript_BerryCureFrzEnd2); effect = ITEM_STATUS_CHANGE; } break; @@ -2715,7 +2963,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) { gBattleMons[bank].status1 &= ~(STATUS_SLEEP); gBattleMons[bank].status2 &= ~(STATUS2_NIGHTMARE); - b_call_bc_move_exec(BattleScript_BerryCureSlpEnd2); + BattleScriptExecute(BattleScript_BerryCureSlpEnd2); effect = ITEM_STATUS_CHANGE; } break; @@ -2723,7 +2971,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status2 & STATUS2_CONFUSION) { gBattleMons[bank].status2 &= ~(STATUS2_CONFUSION); - b_call_bc_move_exec(BattleScript_BerryCureConfusionEnd2); + BattleScriptExecute(BattleScript_BerryCureConfusionEnd2); effect = ITEM_EFFECT_OTHER; } break; @@ -2768,7 +3016,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) gBattleCommunication[MULTISTRING_CHOOSER] = 1; gBattleMons[bank].status1 = 0; gBattleMons[bank].status2 &= ~(STATUS2_CONFUSION); - b_call_bc_move_exec(BattleScript_BerryCureChosenStatusEnd2); + BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2); effect = ITEM_STATUS_CHANGE; } break; @@ -2777,7 +3025,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) { gBattleMons[bank].status2 &= ~(STATUS2_INFATUATION); StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn); - b_call_bc_move_exec(BattleScript_BerryCureChosenStatusEnd2); + BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2); gBattleCommunication[MULTISTRING_CHOOSER] = 0; effect = ITEM_EFFECT_OTHER; } @@ -2791,7 +3039,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) switch (effect) { case ITEM_STATUS_CHANGE: - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[bank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[bank].status1); MarkBufferBankForExecution(gActiveBank); break; case ITEM_PP_CHANGE: @@ -2824,7 +3072,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_PARALYSIS) { gBattleMons[bank].status1 &= ~(STATUS_PARALYSIS); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureParRet; effect = ITEM_STATUS_CHANGE; } @@ -2833,7 +3081,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_PSN_ANY) { gBattleMons[bank].status1 &= ~(STATUS_PSN_ANY | STATUS_TOXIC_COUNTER); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCurePsnRet; effect = ITEM_STATUS_CHANGE; } @@ -2842,7 +3090,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_BURN) { gBattleMons[bank].status1 &= ~(STATUS_BURN); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureBrnRet; effect = ITEM_STATUS_CHANGE; } @@ -2851,7 +3099,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status1 & STATUS_FREEZE) { gBattleMons[bank].status1 &= ~(STATUS_FREEZE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureFrzRet; effect = ITEM_STATUS_CHANGE; } @@ -2861,7 +3109,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) { gBattleMons[bank].status1 &= ~(STATUS_SLEEP); gBattleMons[bank].status2 &= ~(STATUS2_NIGHTMARE); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureSlpRet; effect = ITEM_STATUS_CHANGE; } @@ -2870,7 +3118,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMons[bank].status2 & STATUS2_CONFUSION) { gBattleMons[bank].status2 &= ~(STATUS2_CONFUSION); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureConfusionRet; effect = ITEM_EFFECT_OTHER; } @@ -2880,7 +3128,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) { gBattleMons[bank].status2 &= ~(STATUS2_INFATUATION); StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; effect = ITEM_EFFECT_OTHER; @@ -2916,7 +3164,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) } gBattleMons[bank].status1 = 0; gBattleMons[bank].status2 &= ~(STATUS2_CONFUSION); - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; effect = ITEM_STATUS_CHANGE; @@ -2935,7 +3183,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) { BATTLE_STRUCT->scriptingActive = bank; gStringBank = bank; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_WhiteHerbRet; return effect; // unnecessary return } @@ -2946,7 +3194,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) BATTLE_STRUCT->scriptingActive = bank; gStringBank = bank; gActiveBank = bank; - EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); + EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); MarkBufferBankForExecution(gActiveBank); break; } @@ -2965,9 +3213,9 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) && gBattleMons[gBankTarget].hp) { gBattleCommunication[MOVE_EFFECT_BYTE] = 8; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); SetMoveEffect(0, 0); - b_movescr_stack_pop_cursor(); + BattleScriptPop(); } break; case HOLD_EFFECT_SHELL_BELL: @@ -2985,7 +3233,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) if (gBattleMoveDamage == 0) gBattleMoveDamage = -1; gSpecialStatuses[gBankTarget].moveturnLostHP = 0; - b_movescr_stack_push_cursor(); + BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_ItemHealHP_Ret; effect++; } @@ -3028,14 +3276,14 @@ void unref_sub_801B40C(void) { if (sCombinedMoves[i].move1 == gChosenMovesByBanks[bank] && sCombinedMoves[i].move2 == gChosenMovesByBanks[bank + 2]) { - gSideTimer[GetBankIdentity(bank) & 1].field3 = (bank) | ((bank + 2) << 4); - gSideTimer[GetBankIdentity(bank) & 1].field4 = sCombinedMoves[i].newMove; + gSideTimers[GetBankIdentity(bank) & 1].field3 = (bank) | ((bank + 2) << 4); + gSideTimers[GetBankIdentity(bank) & 1].field4 = sCombinedMoves[i].newMove; gSideAffecting[GetBankIdentity(bank) & 1] |= SIDE_STATUS_X4; } if (sCombinedMoves[i].move1 == gChosenMovesByBanks[bank + 2] && sCombinedMoves[i].move2 == gChosenMovesByBanks[bank]) { - gSideTimer[GetBankIdentity(bank) & 1].field3 = (bank + 2) | ((bank) << 4); - gSideTimer[GetBankIdentity(bank) & 1].field4 = sCombinedMoves[i].newMove; + gSideTimers[GetBankIdentity(bank) & 1].field3 = (bank + 2) | ((bank) << 4); + gSideTimers[GetBankIdentity(bank) & 1].field4 = sCombinedMoves[i].newMove; gSideAffecting[GetBankIdentity(bank) & 1] |= SIDE_STATUS_X4; } bank++; @@ -3067,8 +3315,8 @@ u8 GetMoveTarget(u16 move, u8 useMoveTarget) //get move target { case 0: side = GetBankSide(gBankAttacker) ^ 1; - if (gSideTimer[side].followmeTimer && gBattleMons[gSideTimer[side].followmeTarget].hp) - targetBank = gSideTimer[side].followmeTarget; + if (gSideTimers[side].followmeTimer && gBattleMons[gSideTimers[side].followmeTarget].hp) + targetBank = gSideTimers[side].followmeTarget; else { side = GetBankSide(gBankAttacker); @@ -3090,35 +3338,35 @@ u8 GetMoveTarget(u16 move, u8 useMoveTarget) //get move target case 8: case 32: case 64: - targetBank = GetBankByPlayerAI((GetBankIdentity(gBankAttacker) & 1) ^ 1); + targetBank = GetBankByIdentity((GetBankIdentity(gBankAttacker) & 1) ^ 1); if (gAbsentBankFlags & gBitTable[targetBank]) targetBank ^= 2; break; case 4: side = GetBankSide(gBankAttacker) ^ 1; - if (gSideTimer[side].followmeTimer && gBattleMons[gSideTimer[side].followmeTarget].hp) - targetBank = gSideTimer[side].followmeTarget; + if (gSideTimers[side].followmeTimer && gBattleMons[gSideTimers[side].followmeTarget].hp) + targetBank = gSideTimers[side].followmeTarget; else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && moveTarget & 4) { if (GetBankSide(gBankAttacker) == 0) { if (Random() & 1) - targetBank = GetBankByPlayerAI(1); + targetBank = GetBankByIdentity(1); else - targetBank = GetBankByPlayerAI(3); + targetBank = GetBankByIdentity(3); } else { if (Random() & 1) - targetBank = GetBankByPlayerAI(0); + targetBank = GetBankByIdentity(0); else - targetBank = GetBankByPlayerAI(2); + targetBank = GetBankByIdentity(2); } if (gAbsentBankFlags & gBitTable[targetBank]) targetBank ^= 2; } else - targetBank = GetBankByPlayerAI((GetBankIdentity(gBankAttacker) & 1) ^ 1); + targetBank = GetBankByIdentity((GetBankIdentity(gBankAttacker) & 1) ^ 1); break; case 2: case 16: @@ -3129,7 +3377,7 @@ u8 GetMoveTarget(u16 move, u8 useMoveTarget) //get move target return targetBank; } -u8 IsPokeDisobedient(void) +u8 IsMonDisobedient(void) { u8 obedienceLevel; s32 rnd; diff --git a/src/battle/pokeball.c b/src/battle/pokeball.c index bcaaebcda..6f27469ce 100644 --- a/src/battle/pokeball.c +++ b/src/battle/pokeball.c @@ -383,7 +383,7 @@ static void sub_8046464(u8 taskId) gSprites[spriteId].callback = sub_8047254; break; default: - gBankTarget = GetBankByPlayerAI(1); + gBankTarget = GetBankByIdentity(1); sp0 = TRUE; break; } @@ -722,7 +722,7 @@ static void sub_8046C78(struct Sprite *sprite) r8 = -25; } species = GetMonData(pkmn, MON_DATA_SPECIES); - if ((r5 == GetBankByPlayerAI(0) || r5 == GetBankByPlayerAI(1)) + if ((r5 == GetBankByIdentity(0) || r5 == GetBankByIdentity(1)) && IsDoubleBattle() && ewram17840.unk9_0) { if (gBattleTypeFlags & BATTLE_TYPE_MULTI) @@ -737,7 +737,7 @@ static void sub_8046C78(struct Sprite *sprite) } if (!IsDoubleBattle() || !ewram17840.unk9_0) r4_2 = 0; - else if (r5 == GetBankByPlayerAI(0) || r5 == GetBankByPlayerAI(1)) + else if (r5 == GetBankByIdentity(0) || r5 == GetBankByIdentity(1)) r4_2 = 1; else r4_2 = 2; @@ -885,7 +885,7 @@ static void sub_80470C4(struct Sprite *sprite) sprite->data[6] = sprite->oam.affineParam & 0xFF; sprite->data[0] = 0; if (IsDoubleBattle() && ewram17840.unk9_0 - && sprite->data[6] == GetBankByPlayerAI(2)) + && sprite->data[6] == GetBankByIdentity(2)) sprite->callback = sub_8047230; else sprite->callback = sub_8046C78; @@ -910,7 +910,7 @@ static void sub_8047254(struct Sprite *sprite) { sprite->data[0] = 0; if (IsDoubleBattle() && ewram17840.unk9_0 - && sprite->data[6] == GetBankByPlayerAI(3)) + && sprite->data[6] == GetBankByIdentity(3)) sprite->callback = sub_8047230; else sprite->callback = sub_8046C78; diff --git a/src/battle/reshow_battle_screen.c b/src/battle/reshow_battle_screen.c index 49b0854cc..6a6d7a137 100644 --- a/src/battle/reshow_battle_screen.c +++ b/src/battle/reshow_battle_screen.c @@ -13,12 +13,12 @@ extern struct SpriteTemplate gUnknown_02024E8C; extern struct Window gUnknown_03004210; extern u16 gBattle_BG2_Y; extern u16 gBattle_BG2_X; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_X; extern u16 gBattle_BG1_X; extern u16 gUnknown_030041B0; extern u16 gBattle_BG1_Y; extern u16 gUnknown_030041B8; -extern u16 gUnknown_030042A0; +extern u16 gBattle_BG0_Y; extern u8 gReservedSpritePaletteCount; extern u8 gActionSelectionCursor[4]; extern u8 gBankInMenu; @@ -81,8 +81,8 @@ static void CB2_ReshowBattleScreenAfterMenu(void) SetUpWindowConfig(&gWindowConfig_81E6C58); ResetPaletteFade(); InitWindowFromConfig(&gUnknown_03004210, &gWindowConfig_81E6C58); - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -171,13 +171,13 @@ static void CB2_ReshowBattleScreenAfterMenu(void) sub_80327CC(); - opponentBank = GetBankByPlayerAI(1); + opponentBank = GetBankByIdentity(1); species = GetMonData(&gEnemyParty[gBattlePartyID[opponentBank]], MON_DATA_SPECIES); sub_8032984(opponentBank, species); if (IsDoubleBattle()) { - opponentBank = GetBankByPlayerAI(3); + opponentBank = GetBankByIdentity(3); species = GetMonData(&gEnemyParty[gBattlePartyID[opponentBank]], MON_DATA_SPECIES); sub_8032984(opponentBank, species); } @@ -190,7 +190,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) sub_807B06C(); BeginHardwarePaletteFade(0xFF, 0, 0x10, 0, 1); gPaletteFade.bufferTransferDisabled = 0; - SetMainCallback2(sub_800F808); + SetMainCallback2(BattleMainCB2); break; } gReshowState++; diff --git a/src/contest.c b/src/contest.c index 365f92538..c32719648 100644 --- a/src/contest.c +++ b/src/contest.c @@ -60,8 +60,8 @@ extern u16 gBattle_WIN0V; extern u16 gBattle_WIN1V; extern u16 gBattle_BG2_Y; extern u16 gBattle_BG2_X; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u16 gBattle_BG1_X; extern u16 gBattle_WIN0H; extern u32 gUnknown_03005D28; // saved RNG value @@ -324,8 +324,8 @@ void ResetContestGpuRegs(void) REG_WINOUT = 0x3F3F; REG_DISPCNT |= 0x7F00; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -620,8 +620,8 @@ void ContestMainCallback2(void) void ContestVBlankCallback(void) { - REG_BG0HOFS = gUnknown_030042A4; - REG_BG0VOFS = gUnknown_030042A0; + REG_BG0HOFS = gBattle_BG0_X; + REG_BG0VOFS = gBattle_BG0_Y; REG_BG1HOFS = gBattle_BG1_X; REG_BG1VOFS = gBattle_BG1_Y; REG_BG2HOFS = gBattle_BG2_X; @@ -640,7 +640,7 @@ void ContestVBlankCallback(void) void sub_80ABB70(u8 taskId) { - gUnknown_030042A0 = 0; + gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; sub_80B0D7C(); DmaCopy32Defvars(3, gPlttBufferUnfaded, shared18000.unk18204, 0x400); @@ -684,7 +684,7 @@ void sub_80ABCDC(u8 taskId) u8 i; u8 sp8[32]; - gUnknown_030042A0 = 0xA0; + gBattle_BG0_Y = 0xA0; gBattle_BG2_Y = 0xA0; FillWindowRect_DefaultPalette( &gUnknown_03004210, @@ -772,7 +772,7 @@ void sub_80ABEA0(u8 taskId) sub_80AF138(); StringExpandPlaceholders(gStringVar4, gDisplayedStringBattle); sub_8003460(&gMenuWindow, gStringVar4, 776, 1, 15); - gUnknown_030042A0 = 0; + gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; gTasks[taskId].func = sub_80ABC70; break; @@ -846,7 +846,7 @@ void sub_80AC15C(u8 taskId) void sub_80AC188(u8 taskId) { sub_80AF138(); - gUnknown_030042A0 = 0; + gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; sub_80AFFE0(FALSE); DmaCopy32Defvars(3, gPlttBufferFaded, shared18000.unk18604, 0x400); @@ -1804,7 +1804,7 @@ void sub_80ADDA4(u8 taskId) { s32 i; - gUnknown_030042A0 = 0; + gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; for (i = 0; i < 4; i++) gUnknown_02038680[i] = sContestantStatus[i].unk4; @@ -2950,7 +2950,7 @@ bool8 sub_80AF828(s32 a, s32 b, struct UnknownContestStruct6 *c) void sub_80AF860(void) { - gUnknown_030042A0 = 0; + gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; sub_80AF138(); sub_8003460(&gMenuWindow, gUnknownText_LinkStandbyAndWinner, 776, 1, 15); diff --git a/src/data/battle_tower/trainers.h b/src/data/battle_tower/trainers.h index b5eb3da7a..ae204f8ea 100644 --- a/src/data/battle_tower/trainers.h +++ b/src/data/battle_tower/trainers.h @@ -1,7 +1,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = { { - .trainerClass = TRAINER_CLASS_YOUNGSTER, + .trainerClass = FACILITY_CLASS_YOUNGSTER, .name = _("ALVIN"), .teamFlags = 0x01, .greeting = { @@ -16,7 +16,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BIRD_KEEPER, + .trainerClass = FACILITY_CLASS_BIRD_KEEPER, .name = _("DIRK"), .teamFlags = 0x01, .greeting = { @@ -31,7 +31,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LADY, + .trainerClass = FACILITY_CLASS_LADY, .name = _("CYBIL"), .teamFlags = 0x02, .greeting = { @@ -46,7 +46,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BLACK_BELT, + .trainerClass = FACILITY_CLASS_BLACK_BELT, .name = _("CHEN"), .teamFlags = 0x05, .greeting = { @@ -61,7 +61,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_NINJA_BOY, + .trainerClass = FACILITY_CLASS_NINJA_BOY, .name = _("YOSHI"), .teamFlags = 0x05, .greeting = { @@ -76,7 +76,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SCHOOL_KID_F, + .trainerClass = FACILITY_CLASS_SCHOOL_KID_F, .name = _("TINA"), .teamFlags = 0x0A, .greeting = { @@ -91,7 +91,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_MANIAC, + .trainerClass = FACILITY_CLASS_BUG_MANIAC, .name = _("COREY"), .teamFlags = 0x41, .greeting = { @@ -106,7 +106,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_FISHERMAN, + .trainerClass = FACILITY_CLASS_FISHERMAN, .name = _("GORDON"), .teamFlags = 0x01, .greeting = { @@ -121,7 +121,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_TUBER_F, + .trainerClass = FACILITY_CLASS_TUBER_F, .name = _("ANN"), .teamFlags = 0x02, .greeting = { @@ -136,7 +136,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_F, + .trainerClass = FACILITY_CLASS_POKEFAN_F, .name = _("JULIA"), .teamFlags = 0x42, .greeting = { @@ -151,7 +151,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GENTLEMAN, + .trainerClass = FACILITY_CLASS_GENTLEMAN, .name = _("GREGORY"), .teamFlags = 0x01, .greeting = { @@ -166,7 +166,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CAMPER, + .trainerClass = FACILITY_CLASS_CAMPER, .name = _("KEITH"), .teamFlags = 0x01, .greeting = { @@ -181,7 +181,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_F, .name = _("KENDRA"), .teamFlags = 0x0A, .greeting = { @@ -196,7 +196,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HIKER, + .trainerClass = FACILITY_CLASS_HIKER, .name = _("DEV"), .teamFlags = 0x01, .greeting = { @@ -211,7 +211,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BATTLE_GIRL, + .trainerClass = FACILITY_CLASS_BATTLE_GIRL, .name = _("CASSIE"), .teamFlags = 0x0A, .greeting = { @@ -226,7 +226,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_M, + .trainerClass = FACILITY_CLASS_PSYCHIC_M, .name = _("JULIAN"), .teamFlags = 0x05, .greeting = { @@ -241,7 +241,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LASS, + .trainerClass = FACILITY_CLASS_LASS, .name = _("JOYCE"), .teamFlags = 0x02, .greeting = { @@ -256,7 +256,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GUITARIST, + .trainerClass = FACILITY_CLASS_GUITARIST, .name = _("LES"), .teamFlags = 0x01, .greeting = { @@ -271,7 +271,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RICH_BOY, + .trainerClass = FACILITY_CLASS_RICH_BOY, .name = _("CLINTON"), .teamFlags = 0x01, .greeting = { @@ -286,7 +286,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_CATCHER, + .trainerClass = FACILITY_CLASS_BUG_CATCHER, .name = _("LEWIS"), .teamFlags = 0x01, .greeting = { @@ -301,7 +301,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PICNICKER, + .trainerClass = FACILITY_CLASS_PICNICKER, .name = _("RACHAEL"), .teamFlags = 0x02, .greeting = { @@ -316,7 +316,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COLLECTOR, + .trainerClass = FACILITY_CLASS_COLLECTOR, .name = _("HAROLD"), .teamFlags = 0x09, .greeting = { @@ -331,7 +331,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_TUBER_M, + .trainerClass = FACILITY_CLASS_TUBER_M, .name = _("KIPP"), .teamFlags = 0x01, .greeting = { @@ -346,7 +346,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_KINDLER, + .trainerClass = FACILITY_CLASS_KINDLER, .name = _("IRWIN"), .teamFlags = 0x05, .greeting = { @@ -361,7 +361,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_F, + .trainerClass = FACILITY_CLASS_PSYCHIC_F, .name = _("EILEEN"), .teamFlags = 0x0A, .greeting = { @@ -376,7 +376,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_F, + .trainerClass = FACILITY_CLASS_SWIMMER_F, .name = _("ANNE"), .teamFlags = 0x02, .greeting = { @@ -391,7 +391,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_F, .name = _("RUTH"), .teamFlags = 0x06, .greeting = { @@ -406,7 +406,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMANIAC, + .trainerClass = FACILITY_CLASS_POKEMANIAC, .name = _("JEREMY"), .teamFlags = 0x40, .greeting = { @@ -421,7 +421,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SAILOR, + .trainerClass = FACILITY_CLASS_SAILOR, .name = _("TREVOR"), .teamFlags = 0x09, .greeting = { @@ -436,7 +436,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_F, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_F, .name = _("COLETTE"), .teamFlags = 0x06, .greeting = { @@ -451,7 +451,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HEX_MANIAC, + .trainerClass = FACILITY_CLASS_HEX_MANIAC, .name = _("PAULA"), .teamFlags = 0x42, .greeting = { @@ -466,7 +466,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUIN_MANIAC, + .trainerClass = FACILITY_CLASS_RUIN_MANIAC, .name = _("STANLY"), .teamFlags = 0x41, .greeting = { @@ -481,7 +481,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_M, .name = _("TROY"), .teamFlags = 0x09, .greeting = { @@ -496,7 +496,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SCHOOL_KID_M, + .trainerClass = FACILITY_CLASS_SCHOOL_KID_M, .name = _("ED"), .teamFlags = 0x08, .greeting = { @@ -511,7 +511,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_F, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_F, .name = _("ELLEN"), .teamFlags = 0x04, .greeting = { @@ -526,7 +526,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_M, + .trainerClass = FACILITY_CLASS_SWIMMER_M, .name = _("ARNIE"), .teamFlags = 0x09, .greeting = { @@ -541,7 +541,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_M, .name = _("HAL"), .teamFlags = 0x09, .greeting = { @@ -556,7 +556,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BEAUTY, + .trainerClass = FACILITY_CLASS_BEAUTY, .name = _("LAUREN"), .teamFlags = 0x06, .greeting = { @@ -571,7 +571,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_AROMA_LADY, + .trainerClass = FACILITY_CLASS_AROMA_LADY, .name = _("STACY"), .teamFlags = 0x06, .greeting = { @@ -586,7 +586,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COLLECTOR, + .trainerClass = FACILITY_CLASS_COLLECTOR, .name = _("DARYL"), .teamFlags = 0x81, .greeting = { @@ -601,7 +601,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_F, .name = _("KATHY"), .teamFlags = 0x04, .greeting = { @@ -616,7 +616,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_M, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_M, .name = _("HARRIS"), .teamFlags = 0x0C, .greeting = { @@ -631,7 +631,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_M, + .trainerClass = FACILITY_CLASS_POKEFAN_M, .name = _("GLENN"), .teamFlags = 0x80, .greeting = { @@ -646,7 +646,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_M, .name = _("NICO"), .teamFlags = 0x04, .greeting = { @@ -661,7 +661,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_M, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_M, .name = _("BAILEY"), .teamFlags = 0x41, .greeting = { @@ -676,7 +676,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PARASOL_LADY, + .trainerClass = FACILITY_CLASS_PARASOL_LADY, .name = _("ABBIE"), .teamFlags = 0x08, .greeting = { @@ -691,7 +691,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CAMPER, + .trainerClass = FACILITY_CLASS_CAMPER, .name = _("AL"), .teamFlags = 0x0C, .greeting = { @@ -706,7 +706,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SCHOOL_KID_F, + .trainerClass = FACILITY_CLASS_SCHOOL_KID_F, .name = _("PEGGY"), .teamFlags = 0x42, .greeting = { @@ -721,7 +721,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BEAUTY, + .trainerClass = FACILITY_CLASS_BEAUTY, .name = _("NAOMI"), .teamFlags = 0x04, .greeting = { @@ -736,7 +736,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_NINJA_BOY, + .trainerClass = FACILITY_CLASS_NINJA_BOY, .name = _("KENJI"), .teamFlags = 0x0C, .greeting = { @@ -751,7 +751,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_M, .name = _("ROSS"), .teamFlags = 0x01, .greeting = { @@ -766,7 +766,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_F, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_F, .name = _("EDNA"), .teamFlags = 0x02, .greeting = { @@ -781,7 +781,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUIN_MANIAC, + .trainerClass = FACILITY_CLASS_RUIN_MANIAC, .name = _("ANTON"), .teamFlags = 0x41, .greeting = { @@ -796,7 +796,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_M, + .trainerClass = FACILITY_CLASS_SWIMMER_M, .name = _("MITCH"), .teamFlags = 0x81, .greeting = { @@ -811,7 +811,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HEX_MANIAC, + .trainerClass = FACILITY_CLASS_HEX_MANIAC, .name = _("ROD"), .teamFlags = 0x42, .greeting = { @@ -826,7 +826,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_M, .name = _("RICH"), .teamFlags = 0x01, .greeting = { @@ -841,7 +841,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_M, + .trainerClass = FACILITY_CLASS_POKEFAN_M, .name = _("DANIEL"), .teamFlags = 0x80, .greeting = { @@ -856,7 +856,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_F, + .trainerClass = FACILITY_CLASS_PSYCHIC_F, .name = _("GLORIA"), .teamFlags = 0x82, .greeting = { @@ -871,7 +871,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GUITARIST, + .trainerClass = FACILITY_CLASS_GUITARIST, .name = _("NELSON"), .teamFlags = 0x01, .greeting = { @@ -886,7 +886,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_KINDLER, + .trainerClass = FACILITY_CLASS_KINDLER, .name = _("FERRIS"), .teamFlags = 0x41, .greeting = { @@ -901,7 +901,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_AROMA_LADY, + .trainerClass = FACILITY_CLASS_AROMA_LADY, .name = _("AMANDA"), .teamFlags = 0x82, .greeting = { @@ -916,7 +916,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_M, .name = _("MASON"), .teamFlags = 0x10, .greeting = { @@ -931,7 +931,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_DRAGON_TAMER, + .trainerClass = FACILITY_CLASS_DRAGON_TAMER, .name = _("NATE"), .teamFlags = 0x10, .greeting = { @@ -946,7 +946,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LASS, + .trainerClass = FACILITY_CLASS_LASS, .name = _("MIRIAM"), .teamFlags = 0x82, .greeting = { @@ -961,7 +961,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMANIAC, + .trainerClass = FACILITY_CLASS_POKEMANIAC, .name = _("THEO"), .teamFlags = 0x40, .greeting = { @@ -976,7 +976,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_F, .name = _("PAMELA"), .teamFlags = 0x10, .greeting = { @@ -991,7 +991,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_F, + .trainerClass = FACILITY_CLASS_POKEFAN_F, .name = _("ALISSA"), .teamFlags = 0x20, .greeting = { @@ -1006,7 +1006,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GENTLEMAN, + .trainerClass = FACILITY_CLASS_GENTLEMAN, .name = _("ARTHUR"), .teamFlags = 0x20, .greeting = { @@ -1021,7 +1021,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_F, + .trainerClass = FACILITY_CLASS_SWIMMER_F, .name = _("MARCY"), .teamFlags = 0x82, .greeting = { @@ -1036,7 +1036,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_M, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_M, .name = _("MILLER"), .teamFlags = 0x10, .greeting = { @@ -1051,7 +1051,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BIRD_KEEPER, + .trainerClass = FACILITY_CLASS_BIRD_KEEPER, .name = _("OLIVER"), .teamFlags = 0x11, .greeting = { @@ -1066,7 +1066,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_F, .name = _("MOLLY"), .teamFlags = 0x12, .greeting = { @@ -1081,7 +1081,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_MANIAC, + .trainerClass = FACILITY_CLASS_BUG_MANIAC, .name = _("JASON"), .teamFlags = 0x40, .greeting = { @@ -1096,7 +1096,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BATTLE_GIRL, + .trainerClass = FACILITY_CLASS_BATTLE_GIRL, .name = _("AVA"), .teamFlags = 0x20, .greeting = { @@ -1111,7 +1111,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_FISHERMAN, + .trainerClass = FACILITY_CLASS_FISHERMAN, .name = _("HANK"), .teamFlags = 0x10, .greeting = { @@ -1126,7 +1126,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SAILOR, + .trainerClass = FACILITY_CLASS_SAILOR, .name = _("PETER"), .teamFlags = 0x20, .greeting = { @@ -1141,7 +1141,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_F, + .trainerClass = FACILITY_CLASS_EXPERT_F, .name = _("MINDY"), .teamFlags = 0x20, .greeting = { @@ -1156,7 +1156,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_MANIAC, + .trainerClass = FACILITY_CLASS_BUG_MANIAC, .name = _("DWIGHT"), .teamFlags = 0x11, .greeting = { @@ -1171,7 +1171,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_F, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_F, .name = _("REENA"), .teamFlags = 0x12, .greeting = { @@ -1186,7 +1186,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PARASOL_LADY, + .trainerClass = FACILITY_CLASS_PARASOL_LADY, .name = _("MEGAN"), .teamFlags = 0x10, .greeting = { @@ -1201,7 +1201,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_F, .name = _("SIERRA"), .teamFlags = 0x04, .greeting = { @@ -1216,7 +1216,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_M, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_M, .name = _("ARNOLD"), .teamFlags = 0x08, .greeting = { @@ -1231,7 +1231,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BLACK_BELT, + .trainerClass = FACILITY_CLASS_BLACK_BELT, .name = _("XIN"), .teamFlags = 0x04, .greeting = { @@ -1246,7 +1246,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_F, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_F, .name = _("KELLY"), .teamFlags = 0x02, .greeting = { @@ -1261,7 +1261,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COLLECTOR, + .trainerClass = FACILITY_CLASS_COLLECTOR, .name = _("VANCE"), .teamFlags = 0x80, .greeting = { @@ -1276,7 +1276,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_M, .name = _("TOBY"), .teamFlags = 0x01, .greeting = { @@ -1291,7 +1291,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GENTLEMAN, + .trainerClass = FACILITY_CLASS_GENTLEMAN, .name = _("NORTON"), .teamFlags = 0x20, .greeting = { @@ -1306,7 +1306,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BATTLE_GIRL, + .trainerClass = FACILITY_CLASS_BATTLE_GIRL, .name = _("ZOE"), .teamFlags = 0x02, .greeting = { @@ -1321,7 +1321,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BEAUTY, + .trainerClass = FACILITY_CLASS_BEAUTY, .name = _("EMMA"), .teamFlags = 0x20, .greeting = { @@ -1336,7 +1336,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HIKER, + .trainerClass = FACILITY_CLASS_HIKER, .name = _("VINCE"), .teamFlags = 0x04, .greeting = { @@ -1351,7 +1351,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_M, + .trainerClass = FACILITY_CLASS_EXPERT_M, .name = _("MARV"), .teamFlags = 0x10, .greeting = { @@ -1366,7 +1366,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_M, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_M, .name = _("TODD"), .teamFlags = 0x40, .greeting = { @@ -1381,7 +1381,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GUITARIST, + .trainerClass = FACILITY_CLASS_GUITARIST, .name = _("GAVIN"), .teamFlags = 0x01, .greeting = { @@ -1396,7 +1396,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_M, + .trainerClass = FACILITY_CLASS_PSYCHIC_M, .name = _("QUINN"), .teamFlags = 0x08, .greeting = { @@ -1411,7 +1411,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_F, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_F, .name = _("JENN"), .teamFlags = 0x02, .greeting = { @@ -1426,7 +1426,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_M, + .trainerClass = FACILITY_CLASS_EXPERT_M, .name = _("JOEL"), .teamFlags = 0x10, .greeting = { @@ -1441,7 +1441,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_DRAGON_TAMER, + .trainerClass = FACILITY_CLASS_DRAGON_TAMER, .name = _("KYLE"), .teamFlags = 0x0C, .greeting = { @@ -1456,7 +1456,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_M, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_M, .name = _("BRET"), .teamFlags = 0x01, .greeting = { @@ -1471,7 +1471,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_F, + .trainerClass = FACILITY_CLASS_EXPERT_F, .name = _("CARRIE"), .teamFlags = 0x10, .greeting = { @@ -1486,7 +1486,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LADY, + .trainerClass = FACILITY_CLASS_LADY, .name = _("GILLIAN"), .teamFlags = 0x02, .greeting = { diff --git a/src/data/battle_tower/trainers_de.h b/src/data/battle_tower/trainers_de.h index 86182da9d..db226c6a6 100644 --- a/src/data/battle_tower/trainers_de.h +++ b/src/data/battle_tower/trainers_de.h @@ -1,7 +1,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = { { - .trainerClass = TRAINER_CLASS_YOUNGSTER, + .trainerClass = FACILITY_CLASS_YOUNGSTER, .name = _("ALWIN"), .teamFlags = 0x01, .greeting = { @@ -16,7 +16,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BIRD_KEEPER, + .trainerClass = FACILITY_CLASS_BIRD_KEEPER, .name = _("DIRK"), .teamFlags = 0x01, .greeting = { @@ -31,7 +31,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LADY, + .trainerClass = FACILITY_CLASS_LADY, .name = _("SIBILLE"), .teamFlags = 0x02, .greeting = { @@ -46,7 +46,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BLACK_BELT, + .trainerClass = FACILITY_CLASS_BLACK_BELT, .name = _("OLAF"), .teamFlags = 0x05, .greeting = { @@ -61,7 +61,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_NINJA_BOY, + .trainerClass = FACILITY_CLASS_NINJA_BOY, .name = _("JOST"), .teamFlags = 0x05, .greeting = { @@ -76,7 +76,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SCHOOL_KID_F, + .trainerClass = FACILITY_CLASS_SCHOOL_KID_F, .name = _("TINA"), .teamFlags = 0x0A, .greeting = { @@ -91,7 +91,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_MANIAC, + .trainerClass = FACILITY_CLASS_BUG_MANIAC, .name = _("HAJO"), .teamFlags = 0x41, .greeting = { @@ -106,7 +106,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_FISHERMAN, + .trainerClass = FACILITY_CLASS_FISHERMAN, .name = _("GEORG"), .teamFlags = 0x01, .greeting = { @@ -121,7 +121,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_TUBER_F, + .trainerClass = FACILITY_CLASS_TUBER_F, .name = _("ANNE"), .teamFlags = 0x02, .greeting = { @@ -136,7 +136,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_F, + .trainerClass = FACILITY_CLASS_POKEFAN_F, .name = _("JULIA"), .teamFlags = 0x42, .greeting = { @@ -151,7 +151,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GENTLEMAN, + .trainerClass = FACILITY_CLASS_GENTLEMAN, .name = _("JOHANN"), .teamFlags = 0x01, .greeting = { @@ -166,7 +166,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CAMPER, + .trainerClass = FACILITY_CLASS_CAMPER, .name = _("KARL"), .teamFlags = 0x01, .greeting = { @@ -181,7 +181,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_F, .name = _("KENDRA"), .teamFlags = 0x0A, .greeting = { @@ -196,7 +196,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HIKER, + .trainerClass = FACILITY_CLASS_HIKER, .name = _("DAVID"), .teamFlags = 0x01, .greeting = { @@ -211,7 +211,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BATTLE_GIRL, + .trainerClass = FACILITY_CLASS_BATTLE_GIRL, .name = _("KEA"), .teamFlags = 0x0A, .greeting = { @@ -226,7 +226,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_M, + .trainerClass = FACILITY_CLASS_PSYCHIC_M, .name = _("JULIAN"), .teamFlags = 0x05, .greeting = { @@ -241,7 +241,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LASS, + .trainerClass = FACILITY_CLASS_LASS, .name = _("JOSI"), .teamFlags = 0x02, .greeting = { @@ -256,7 +256,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GUITARIST, + .trainerClass = FACILITY_CLASS_GUITARIST, .name = _("LEIF"), .teamFlags = 0x01, .greeting = { @@ -271,7 +271,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RICH_BOY, + .trainerClass = FACILITY_CLASS_RICH_BOY, .name = _("INGO"), .teamFlags = 0x01, .greeting = { @@ -286,7 +286,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_CATCHER, + .trainerClass = FACILITY_CLASS_BUG_CATCHER, .name = _("LUDWIG"), .teamFlags = 0x01, .greeting = { @@ -301,7 +301,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PICNICKER, + .trainerClass = FACILITY_CLASS_PICNICKER, .name = _("RAJA"), .teamFlags = 0x02, .greeting = { @@ -316,7 +316,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COLLECTOR, + .trainerClass = FACILITY_CLASS_COLLECTOR, .name = _("HARALD"), .teamFlags = 0x09, .greeting = { @@ -331,7 +331,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_TUBER_M, + .trainerClass = FACILITY_CLASS_TUBER_M, .name = _("KIM"), .teamFlags = 0x01, .greeting = { @@ -346,7 +346,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_KINDLER, + .trainerClass = FACILITY_CLASS_KINDLER, .name = _("ERWIN"), .teamFlags = 0x05, .greeting = { @@ -361,7 +361,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_F, + .trainerClass = FACILITY_CLASS_PSYCHIC_F, .name = _("EIKA"), .teamFlags = 0x0A, .greeting = { @@ -376,7 +376,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_F, + .trainerClass = FACILITY_CLASS_SWIMMER_F, .name = _("ANNINA"), .teamFlags = 0x02, .greeting = { @@ -391,7 +391,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_F, .name = _("RUTH"), .teamFlags = 0x06, .greeting = { @@ -406,7 +406,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMANIAC, + .trainerClass = FACILITY_CLASS_POKEMANIAC, .name = _("JENS"), .teamFlags = 0x40, .greeting = { @@ -421,7 +421,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SAILOR, + .trainerClass = FACILITY_CLASS_SAILOR, .name = _("TITUS"), .teamFlags = 0x09, .greeting = { @@ -436,7 +436,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_F, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_F, .name = _("NICOLA"), .teamFlags = 0x06, .greeting = { @@ -451,7 +451,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HEX_MANIAC, + .trainerClass = FACILITY_CLASS_HEX_MANIAC, .name = _("PAULA"), .teamFlags = 0x42, .greeting = { @@ -466,7 +466,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUIN_MANIAC, + .trainerClass = FACILITY_CLASS_RUIN_MANIAC, .name = _("SÖREN"), .teamFlags = 0x41, .greeting = { @@ -481,7 +481,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_M, .name = _("RAINER"), .teamFlags = 0x09, .greeting = { @@ -496,7 +496,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SCHOOL_KID_M, + .trainerClass = FACILITY_CLASS_SCHOOL_KID_M, .name = _("FABIAN"), .teamFlags = 0x08, .greeting = { @@ -511,7 +511,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_F, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_F, .name = _("ELLEN"), .teamFlags = 0x04, .greeting = { @@ -526,7 +526,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_M, + .trainerClass = FACILITY_CLASS_SWIMMER_M, .name = _("ARNIE"), .teamFlags = 0x09, .greeting = { @@ -541,7 +541,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_M, .name = _("HARDI"), .teamFlags = 0x09, .greeting = { @@ -556,7 +556,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BEAUTY, + .trainerClass = FACILITY_CLASS_BEAUTY, .name = _("LINA"), .teamFlags = 0x06, .greeting = { @@ -571,7 +571,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_AROMA_LADY, + .trainerClass = FACILITY_CLASS_AROMA_LADY, .name = _("SELINA"), .teamFlags = 0x06, .greeting = { @@ -586,7 +586,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COLLECTOR, + .trainerClass = FACILITY_CLASS_COLLECTOR, .name = _("DANTE"), .teamFlags = 0x81, .greeting = { @@ -601,7 +601,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_F, .name = _("KATJA"), .teamFlags = 0x04, .greeting = { @@ -616,7 +616,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_M, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_M, .name = _("HORST"), .teamFlags = 0x0C, .greeting = { @@ -631,7 +631,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_M, + .trainerClass = FACILITY_CLASS_POKEFAN_M, .name = _("GERRIT"), .teamFlags = 0x80, .greeting = { @@ -646,7 +646,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_M, .name = _("NIKO"), .teamFlags = 0x04, .greeting = { @@ -661,7 +661,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_M, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_M, .name = _("BALDO"), .teamFlags = 0x41, .greeting = { @@ -676,7 +676,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PARASOL_LADY, + .trainerClass = FACILITY_CLASS_PARASOL_LADY, .name = _("ALMA"), .teamFlags = 0x08, .greeting = { @@ -691,7 +691,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CAMPER, + .trainerClass = FACILITY_CLASS_CAMPER, .name = _("ADAM"), .teamFlags = 0x0C, .greeting = { @@ -706,7 +706,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SCHOOL_KID_F, + .trainerClass = FACILITY_CLASS_SCHOOL_KID_F, .name = _("GRETE"), .teamFlags = 0x42, .greeting = { @@ -721,7 +721,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BEAUTY, + .trainerClass = FACILITY_CLASS_BEAUTY, .name = _("NAOMI"), .teamFlags = 0x04, .greeting = { @@ -736,7 +736,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_NINJA_BOY, + .trainerClass = FACILITY_CLASS_NINJA_BOY, .name = _("KENO"), .teamFlags = 0x0C, .greeting = { @@ -751,7 +751,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_M, .name = _("REMUS"), .teamFlags = 0x01, .greeting = { @@ -766,7 +766,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_F, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_F, .name = _("EDITH"), .teamFlags = 0x02, .greeting = { @@ -781,7 +781,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUIN_MANIAC, + .trainerClass = FACILITY_CLASS_RUIN_MANIAC, .name = _("ANTON"), .teamFlags = 0x41, .greeting = { @@ -796,7 +796,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_M, + .trainerClass = FACILITY_CLASS_SWIMMER_M, .name = _("MALTE"), .teamFlags = 0x81, .greeting = { @@ -811,7 +811,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HEX_MANIAC, + .trainerClass = FACILITY_CLASS_HEX_MANIAC, .name = _("RAOUL"), .teamFlags = 0x42, .greeting = { @@ -826,7 +826,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_M, .name = _("RICK"), .teamFlags = 0x01, .greeting = { @@ -841,7 +841,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_M, + .trainerClass = FACILITY_CLASS_POKEFAN_M, .name = _("DENNIS"), .teamFlags = 0x80, .greeting = { @@ -856,7 +856,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_F, + .trainerClass = FACILITY_CLASS_PSYCHIC_F, .name = _("GLORIA"), .teamFlags = 0x82, .greeting = { @@ -871,7 +871,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GUITARIST, + .trainerClass = FACILITY_CLASS_GUITARIST, .name = _("NINO"), .teamFlags = 0x01, .greeting = { @@ -886,7 +886,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_KINDLER, + .trainerClass = FACILITY_CLASS_KINDLER, .name = _("FIETE"), .teamFlags = 0x41, .greeting = { @@ -901,7 +901,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_AROMA_LADY, + .trainerClass = FACILITY_CLASS_AROMA_LADY, .name = _("AMANDA"), .teamFlags = 0x82, .greeting = { @@ -916,7 +916,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_M, .name = _("MAREK"), .teamFlags = 0x10, .greeting = { @@ -931,7 +931,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_DRAGON_TAMER, + .trainerClass = FACILITY_CLASS_DRAGON_TAMER, .name = _("NATHAN"), .teamFlags = 0x10, .greeting = { @@ -946,7 +946,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LASS, + .trainerClass = FACILITY_CLASS_LASS, .name = _("MIRIAM"), .teamFlags = 0x82, .greeting = { @@ -961,7 +961,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMANIAC, + .trainerClass = FACILITY_CLASS_POKEMANIAC, .name = _("THEO"), .teamFlags = 0x40, .greeting = { @@ -976,7 +976,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_F, .name = _("PIA"), .teamFlags = 0x10, .greeting = { @@ -991,7 +991,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEFAN_F, + .trainerClass = FACILITY_CLASS_POKEFAN_F, .name = _("ALISSA"), .teamFlags = 0x20, .greeting = { @@ -1006,7 +1006,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GENTLEMAN, + .trainerClass = FACILITY_CLASS_GENTLEMAN, .name = _("ARTUR"), .teamFlags = 0x20, .greeting = { @@ -1021,7 +1021,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMER_F, + .trainerClass = FACILITY_CLASS_SWIMMER_F, .name = _("MAJA"), .teamFlags = 0x82, .greeting = { @@ -1036,7 +1036,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_M, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_M, .name = _("MARIUS"), .teamFlags = 0x10, .greeting = { @@ -1051,7 +1051,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BIRD_KEEPER, + .trainerClass = FACILITY_CLASS_BIRD_KEEPER, .name = _("OLIVER"), .teamFlags = 0x11, .greeting = { @@ -1066,7 +1066,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_CYCLING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_CYCLING_TRIATHLETE_F, .name = _("MOLLY"), .teamFlags = 0x12, .greeting = { @@ -1081,7 +1081,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_MANIAC, + .trainerClass = FACILITY_CLASS_BUG_MANIAC, .name = _("JÖRG"), .teamFlags = 0x40, .greeting = { @@ -1096,7 +1096,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BATTLE_GIRL, + .trainerClass = FACILITY_CLASS_BATTLE_GIRL, .name = _("ANKE"), .teamFlags = 0x20, .greeting = { @@ -1111,7 +1111,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_FISHERMAN, + .trainerClass = FACILITY_CLASS_FISHERMAN, .name = _("HANS"), .teamFlags = 0x10, .greeting = { @@ -1126,7 +1126,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SAILOR, + .trainerClass = FACILITY_CLASS_SAILOR, .name = _("PETER"), .teamFlags = 0x20, .greeting = { @@ -1141,7 +1141,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_F, + .trainerClass = FACILITY_CLASS_EXPERT_F, .name = _("MARA"), .teamFlags = 0x20, .greeting = { @@ -1156,7 +1156,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BUG_MANIAC, + .trainerClass = FACILITY_CLASS_BUG_MANIAC, .name = _("DARIUS"), .teamFlags = 0x11, .greeting = { @@ -1171,7 +1171,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_F, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_F, .name = _("REGINA"), .teamFlags = 0x12, .greeting = { @@ -1186,7 +1186,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PARASOL_LADY, + .trainerClass = FACILITY_CLASS_PARASOL_LADY, .name = _("MAIKE"), .teamFlags = 0x10, .greeting = { @@ -1201,7 +1201,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_RUNNING_TRIATHLETE_F, + .trainerClass = FACILITY_CLASS_RUNNING_TRIATHLETE_F, .name = _("SANDRA"), .teamFlags = 0x04, .greeting = { @@ -1216,7 +1216,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_RANGER_M, + .trainerClass = FACILITY_CLASS_POKEMON_RANGER_M, .name = _("ARNOLD"), .teamFlags = 0x08, .greeting = { @@ -1231,7 +1231,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BLACK_BELT, + .trainerClass = FACILITY_CLASS_BLACK_BELT, .name = _("XENO"), .teamFlags = 0x04, .greeting = { @@ -1246,7 +1246,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_F, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_F, .name = _("KARLA"), .teamFlags = 0x02, .greeting = { @@ -1261,7 +1261,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COLLECTOR, + .trainerClass = FACILITY_CLASS_COLLECTOR, .name = _("VOLKER"), .teamFlags = 0x80, .greeting = { @@ -1276,7 +1276,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_SWIMMING_TRIATHLETE_M, + .trainerClass = FACILITY_CLASS_SWIMMING_TRIATHLETE_M, .name = _("TOBIAS"), .teamFlags = 0x01, .greeting = { @@ -1291,7 +1291,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GENTLEMAN, + .trainerClass = FACILITY_CLASS_GENTLEMAN, .name = _("NORBERT"), .teamFlags = 0x20, .greeting = { @@ -1306,7 +1306,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BATTLE_GIRL, + .trainerClass = FACILITY_CLASS_BATTLE_GIRL, .name = _("ZITA"), .teamFlags = 0x02, .greeting = { @@ -1321,7 +1321,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_BEAUTY, + .trainerClass = FACILITY_CLASS_BEAUTY, .name = _("ELKE"), .teamFlags = 0x20, .greeting = { @@ -1336,7 +1336,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_HIKER, + .trainerClass = FACILITY_CLASS_HIKER, .name = _("VITUS"), .teamFlags = 0x04, .greeting = { @@ -1351,7 +1351,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_M, + .trainerClass = FACILITY_CLASS_EXPERT_M, .name = _("MALTE"), .teamFlags = 0x10, .greeting = { @@ -1366,7 +1366,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_POKEMON_BREEDER_M, + .trainerClass = FACILITY_CLASS_POKEMON_BREEDER_M, .name = _("TIM"), .teamFlags = 0x40, .greeting = { @@ -1381,7 +1381,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_GUITARIST, + .trainerClass = FACILITY_CLASS_GUITARIST, .name = _("GAVIN"), .teamFlags = 0x01, .greeting = { @@ -1396,7 +1396,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_PSYCHIC_M, + .trainerClass = FACILITY_CLASS_PSYCHIC_M, .name = _("RALF"), .teamFlags = 0x08, .greeting = { @@ -1411,7 +1411,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_F, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_F, .name = _("JENNY"), .teamFlags = 0x02, .greeting = { @@ -1426,7 +1426,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_M, + .trainerClass = FACILITY_CLASS_EXPERT_M, .name = _("JOEL"), .teamFlags = 0x10, .greeting = { @@ -1441,7 +1441,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_DRAGON_TAMER, + .trainerClass = FACILITY_CLASS_DRAGON_TAMER, .name = _("KOLJA"), .teamFlags = 0x0C, .greeting = { @@ -1456,7 +1456,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_COOL_TRAINER_M, + .trainerClass = FACILITY_CLASS_COOL_TRAINER_M, .name = _("BILL"), .teamFlags = 0x01, .greeting = { @@ -1471,7 +1471,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_EXPERT_F, + .trainerClass = FACILITY_CLASS_EXPERT_F, .name = _("CALLA"), .teamFlags = 0x10, .greeting = { @@ -1486,7 +1486,7 @@ const struct BattleTowerTrainer gBattleTowerTrainers[] = }, }, { - .trainerClass = TRAINER_CLASS_LADY, + .trainerClass = FACILITY_CLASS_LADY, .name = _("GESA"), .teamFlags = 0x02, .greeting = { diff --git a/src/data/pokemon/trainer_class_lookups.h b/src/data/pokemon/trainer_class_lookups.h index c86e795c4..9cffca632 100644 --- a/src/data/pokemon/trainer_class_lookups.h +++ b/src/data/pokemon/trainer_class_lookups.h @@ -1,7 +1,3 @@ -// - -// - #ifndef POKERUBY_TRAINER_CLASS_LOOKUPS_H #define POKERUBY_TRAINER_CLASS_LOOKUPS_H @@ -86,83 +82,83 @@ const u8 gTrainerClassToPicIndex[] = { }; const u8 gTrainerClassToNameIndex[] = { - TRAINER_CLASS_NAME_AQUA_LEADER, // AQUA_LEADER - TRAINER_CLASS_NAME_TEAM_AQUA, // TEAM_AQUA_M - TRAINER_CLASS_NAME_TEAM_AQUA, // TEAM_AQUA_F - TRAINER_CLASS_NAME_AROMA_LADY, // AROMA_LADY - TRAINER_CLASS_NAME_RUIN_MANIAC, // RUIN_MANIAC - TRAINER_CLASS_NAME_INTERVIEWER, // INTERVIEWER - TRAINER_CLASS_NAME_TUBER_F, // TUBER_F - TRAINER_CLASS_NAME_TUBER_M, // TUBER_M - TRAINER_CLASS_NAME_COOL_TRAINER, // COOL_TRAINER_M - TRAINER_CLASS_NAME_COOL_TRAINER, // COOL_TRAINER_F - TRAINER_CLASS_NAME_HEX_MANIAC, // HEX_MANIAC - TRAINER_CLASS_NAME_LADY, // LADY - TRAINER_CLASS_NAME_BEAUTY, // BEAUTY - TRAINER_CLASS_NAME_RICH_BOY, // RICH_BOY - TRAINER_CLASS_NAME_POKEMANIAC, // POKEMANIAC - TRAINER_CLASS_NAME_SWIMMER_M, // SWIMMER_M - TRAINER_CLASS_NAME_BLACK_BELT, // BLACK_BELT - TRAINER_CLASS_NAME_GUITARIST, // GUITARIST - TRAINER_CLASS_NAME_KINDLER, // KINDLER - TRAINER_CLASS_NAME_CAMPER, // CAMPER - TRAINER_CLASS_NAME_BUG_MANIAC, // BUG_MANIAC - TRAINER_CLASS_NAME_PSYCHIC, // PSYCHIC_M - TRAINER_CLASS_NAME_PSYCHIC, // PSYCHIC_F - TRAINER_CLASS_NAME_GENTLEMAN, // GENTLEMAN - TRAINER_CLASS_NAME_ELITE_FOUR, // ELITE_FOUR_M - TRAINER_CLASS_NAME_ELITE_FOUR, // ELITE_FOUR_F - TRAINER_CLASS_NAME_LEADER, // LEADER_F - TRAINER_CLASS_NAME_LEADER, // LEADER_M - TRAINER_CLASS_NAME_LEADER, // LEADER_MF - TRAINER_CLASS_NAME_SCHOOL_KID, // SCHOOL_KID_M - TRAINER_CLASS_NAME_SCHOOL_KID, // SCHOOL_KID_F - TRAINER_CLASS_NAME_SR_AND_JR, // SR_AND_JR - TRAINER_CLASS_NAME_POKEFAN, // POKEFAN_M - TRAINER_CLASS_NAME_POKEFAN, // POKEFAN_F - TRAINER_CLASS_NAME_EXPERT, // EXPERT_M - TRAINER_CLASS_NAME_EXPERT, // EXPERT_F - TRAINER_CLASS_NAME_YOUNGSTER, // YOUNGSTER - TRAINER_CLASS_NAME_CHAMPION, // CHAMPION - TRAINER_CLASS_NAME_FISHERMAN, // FISHERMAN - TRAINER_CLASS_NAME_TRIATHLETE, // CYCLING_TRIATHLETE_M - TRAINER_CLASS_NAME_TRIATHLETE, // CYCLING_TRIATHLETE_F - TRAINER_CLASS_NAME_TRIATHLETE, // RUNNING_TRIATHLETE_M - TRAINER_CLASS_NAME_TRIATHLETE, // RUNNING_TRIATHLETE_F - TRAINER_CLASS_NAME_TRIATHLETE, // SWIMMING_TRIATHLETE_M - TRAINER_CLASS_NAME_TRIATHLETE, // SWIMMING_TRIATHLETE_F - TRAINER_CLASS_NAME_DRAGON_TAMER, // DRAGON_TAMER - TRAINER_CLASS_NAME_BIRD_KEEPER, // BIRD_KEEPER - TRAINER_CLASS_NAME_NINJA_BOY, // NINJA_BOY - TRAINER_CLASS_NAME_BATTLE_GIRL, // BATTLE_GIRL - TRAINER_CLASS_NAME_PARASOL_LADY, // PARASOL_LADY - TRAINER_CLASS_NAME_SWIMMER_F, // SWIMMER_F - TRAINER_CLASS_NAME_PICNICKER, // PICNICKER - TRAINER_CLASS_NAME_TWINS, // TWINS - TRAINER_CLASS_NAME_SAILOR, // SAILOR - TRAINER_CLASS_NAME_BOARDER, // BOARDER_1 - TRAINER_CLASS_NAME_BOARDER, // BOARDER_2 - TRAINER_CLASS_NAME_COLLECTOR, // COLLECTOR - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // WALLY - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // BRENDAN_1 - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // BRENDAN_2 - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // BRENDAN_3 - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // MAY_1 - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // MAY_2 - TRAINER_CLASS_NAME_POKEMON_TRAINER_3, // MAY_3 - TRAINER_CLASS_NAME_POKEMON_BREEDER, // POKEMON_BREEDER_M - TRAINER_CLASS_NAME_POKEMON_BREEDER, // POKEMON_BREEDER_F - TRAINER_CLASS_NAME_POKEMON_RANGER, // POKEMON_RANGER_M - TRAINER_CLASS_NAME_POKEMON_RANGER, // POKEMON_RANGER_F - TRAINER_CLASS_NAME_MAGMA_LEADER, // MAGMA_LEADER - TRAINER_CLASS_NAME_TEAM_MAGMA, // TEAM_MAGMA_M - TRAINER_CLASS_NAME_TEAM_MAGMA, // TEAM_MAGMA_F - TRAINER_CLASS_NAME_LASS, // LASS - TRAINER_CLASS_NAME_BUG_CATCHER, // BUG_CATCHER - TRAINER_CLASS_NAME_HIKER, // HIKER - TRAINER_CLASS_NAME_YOUNG_COUPLE, // YOUNG_COUPLE - TRAINER_CLASS_NAME_OLD_COUPLE, // OLD_COUPLE - TRAINER_CLASS_NAME_SIS_AND_BRO // SIS_AND_BRO + TRAINER_CLASS_AQUA_LEADER, // AQUA_LEADER + TRAINER_CLASS_TEAM_AQUA, // TEAM_AQUA_M + TRAINER_CLASS_TEAM_AQUA, // TEAM_AQUA_F + TRAINER_CLASS_AROMA_LADY, // AROMA_LADY + TRAINER_CLASS_RUIN_MANIAC, // RUIN_MANIAC + TRAINER_CLASS_INTERVIEWER, // INTERVIEWER + TRAINER_CLASS_TUBER_F, // TUBER_F + TRAINER_CLASS_TUBER_M, // TUBER_M + TRAINER_CLASS_COOL_TRAINER, // COOL_TRAINER_M + TRAINER_CLASS_COOL_TRAINER, // COOL_TRAINER_F + TRAINER_CLASS_HEX_MANIAC, // HEX_MANIAC + TRAINER_CLASS_LADY, // LADY + TRAINER_CLASS_BEAUTY, // BEAUTY + TRAINER_CLASS_RICH_BOY, // RICH_BOY + TRAINER_CLASS_POKEMANIAC, // POKEMANIAC + TRAINER_CLASS_SWIMMER_M, // SWIMMER_M + TRAINER_CLASS_BLACK_BELT, // BLACK_BELT + TRAINER_CLASS_GUITARIST, // GUITARIST + TRAINER_CLASS_KINDLER, // KINDLER + TRAINER_CLASS_CAMPER, // CAMPER + TRAINER_CLASS_BUG_MANIAC, // BUG_MANIAC + TRAINER_CLASS_PSYCHIC, // PSYCHIC_M + TRAINER_CLASS_PSYCHIC, // PSYCHIC_F + TRAINER_CLASS_GENTLEMAN, // GENTLEMAN + TRAINER_CLASS_ELITE_FOUR, // ELITE_FOUR_M + TRAINER_CLASS_ELITE_FOUR, // ELITE_FOUR_F + TRAINER_CLASS_LEADER, // LEADER_F + TRAINER_CLASS_LEADER, // LEADER_M + TRAINER_CLASS_LEADER, // LEADER_MF + TRAINER_CLASS_SCHOOL_KID, // SCHOOL_KID_M + TRAINER_CLASS_SCHOOL_KID, // SCHOOL_KID_F + TRAINER_CLASS_SR_AND_JR, // SR_AND_JR + TRAINER_CLASS_POKEFAN, // POKEFAN_M + TRAINER_CLASS_POKEFAN, // POKEFAN_F + TRAINER_CLASS_EXPERT, // EXPERT_M + TRAINER_CLASS_EXPERT, // EXPERT_F + TRAINER_CLASS_YOUNGSTER, // YOUNGSTER + TRAINER_CLASS_CHAMPION, // CHAMPION + TRAINER_CLASS_FISHERMAN, // FISHERMAN + TRAINER_CLASS_TRIATHLETE, // CYCLING_TRIATHLETE_M + TRAINER_CLASS_TRIATHLETE, // CYCLING_TRIATHLETE_F + TRAINER_CLASS_TRIATHLETE, // RUNNING_TRIATHLETE_M + TRAINER_CLASS_TRIATHLETE, // RUNNING_TRIATHLETE_F + TRAINER_CLASS_TRIATHLETE, // SWIMMING_TRIATHLETE_M + TRAINER_CLASS_TRIATHLETE, // SWIMMING_TRIATHLETE_F + TRAINER_CLASS_DRAGON_TAMER, // DRAGON_TAMER + TRAINER_CLASS_BIRD_KEEPER, // BIRD_KEEPER + TRAINER_CLASS_NINJA_BOY, // NINJA_BOY + TRAINER_CLASS_BATTLE_GIRL, // BATTLE_GIRL + TRAINER_CLASS_PARASOL_LADY, // PARASOL_LADY + TRAINER_CLASS_SWIMMER_F, // SWIMMER_F + TRAINER_CLASS_PICNICKER, // PICNICKER + TRAINER_CLASS_TWINS, // TWINS + TRAINER_CLASS_SAILOR, // SAILOR + TRAINER_CLASS_BOARDER, // BOARDER_1 + TRAINER_CLASS_BOARDER, // BOARDER_2 + TRAINER_CLASS_COLLECTOR, // COLLECTOR + TRAINER_CLASS_POKEMON_TRAINER_3, // WALLY + TRAINER_CLASS_POKEMON_TRAINER_3, // BRENDAN_1 + TRAINER_CLASS_POKEMON_TRAINER_3, // BRENDAN_2 + TRAINER_CLASS_POKEMON_TRAINER_3, // BRENDAN_3 + TRAINER_CLASS_POKEMON_TRAINER_3, // MAY_1 + TRAINER_CLASS_POKEMON_TRAINER_3, // MAY_2 + TRAINER_CLASS_POKEMON_TRAINER_3, // MAY_3 + TRAINER_CLASS_POKEMON_BREEDER, // POKEMON_BREEDER_M + TRAINER_CLASS_POKEMON_BREEDER, // POKEMON_BREEDER_F + TRAINER_CLASS_POKEMON_RANGER, // POKEMON_RANGER_M + TRAINER_CLASS_POKEMON_RANGER, // POKEMON_RANGER_F + TRAINER_CLASS_MAGMA_LEADER, // MAGMA_LEADER + TRAINER_CLASS_TEAM_MAGMA, // TEAM_MAGMA_M + TRAINER_CLASS_TEAM_MAGMA, // TEAM_MAGMA_F + TRAINER_CLASS_LASS, // LASS + TRAINER_CLASS_BUG_CATCHER, // BUG_CATCHER + TRAINER_CLASS_HIKER, // HIKER + TRAINER_CLASS_YOUNG_COUPLE, // YOUNG_COUPLE + TRAINER_CLASS_OLD_COUPLE, // OLD_COUPLE + TRAINER_CLASS_SIS_AND_BRO // SIS_AND_BRO }; #endif //POKERUBY_TRAINER_CLASS_LOOKUPS_H diff --git a/src/de_rom_8040FE0.c b/src/de_rom_8040FE0.c index ad1cbf473..c93ef74cd 100644 --- a/src/de_rom_8040FE0.c +++ b/src/de_rom_8040FE0.c @@ -13,7 +13,7 @@ u8 *de_sub_8040FE0(u8 gender) { if (gender) gender++; - gender = TRAINER_CLASS_NAME_SCHOOL_KID; + gender = TRAINER_CLASS_SCHOOL_KID; return gTrainerClassNames[gender]; } @@ -21,7 +21,7 @@ u8 *de_sub_8040FF4(u8 gender) { if (gender) gender++; - gender = TRAINER_CLASS_NAME_POKEMON_TRAINER_3; + gender = TRAINER_CLASS_POKEMON_TRAINER_3; return gTrainerClassNames[gender]; } @@ -29,7 +29,7 @@ u8 *de_sub_804100C(u8 gender) { if (gender) gender++; - gender = TRAINER_CLASS_NAME_LEADER; + gender = TRAINER_CLASS_LEADER; return gTrainerClassNames[gender]; } @@ -50,34 +50,34 @@ u8 *de_sub_8041024(s32 arg0, u32 arg1) case 0x400: nameIndex = GetSecretBaseTrainerNameIndex(); gender = eSecretBaseRecord.gender; - if (nameIndex == TRAINER_CLASS_NAME_SCHOOL_KID) + if (nameIndex == TRAINER_CLASS_SCHOOL_KID) return de_sub_8040FE0(gender); return gTrainerClassNames[nameIndex]; case 0x100: trainerClass = de_sub_81364AC(); nameIndex = get_trainer_class_name_index(); - if (trainerClass == TRAINER_CLASS_SCHOOL_KID_F) + if (trainerClass == FACILITY_CLASS_SCHOOL_KID_F) return de_sub_8040FE0(FEMALE); - if (trainerClass == TRAINER_CLASS_MAY_1 || trainerClass == TRAINER_CLASS_MAY_2 || trainerClass == TRAINER_CLASS_MAY_3) + if (trainerClass == FACILITY_CLASS_MAY_1 || trainerClass == FACILITY_CLASS_MAY_2 || trainerClass == FACILITY_CLASS_MAY_3) return de_sub_8040FF4(FEMALE); return gTrainerClassNames[nameIndex]; case 0x800: trainerClass = de_sub_81364F8(); nameIndex = GetEReaderTrainerClassNameIndex(); - if (trainerClass == TRAINER_CLASS_SCHOOL_KID_F) + if (trainerClass == FACILITY_CLASS_SCHOOL_KID_F) return de_sub_8040FE0(FEMALE); - if (trainerClass == TRAINER_CLASS_MAY_1 || trainerClass == TRAINER_CLASS_MAY_2 || trainerClass == TRAINER_CLASS_MAY_3) + if (trainerClass == FACILITY_CLASS_MAY_1 || trainerClass == FACILITY_CLASS_MAY_2 || trainerClass == FACILITY_CLASS_MAY_3) return de_sub_8040FF4(FEMALE); return gTrainerClassNames[nameIndex]; default: trainer = &gTrainers[arg1]; trainerClass = trainer->trainerClass; local2 = sub_803FC58(arg1); - if (trainerClass == TRAINER_CLASS_LEADER_F) + if (trainerClass == FACILITY_CLASS_LEADER_F) return de_sub_8040FE0(local2); - if (trainerClass == TRAINER_CLASS_BIRD_KEEPER && local2 == FEMALE) + if (trainerClass == FACILITY_CLASS_BIRD_KEEPER && local2 == FEMALE) return de_sub_8040FF4(FEMALE); - if (trainerClass == TRAINER_CLASS_ELITE_FOUR_F) + if (trainerClass == FACILITY_CLASS_ELITE_FOUR_F) { if (gTrainers[arg1].doubleBattle == TRUE) return de_sub_804100C(FEMALE); diff --git a/src/debug/matsuda_debug_menu.c b/src/debug/matsuda_debug_menu.c index bb80de6fe..49fe6864b 100644 --- a/src/debug/matsuda_debug_menu.c +++ b/src/debug/matsuda_debug_menu.c @@ -29,8 +29,8 @@ extern u8 gContestPlayerMonIndex; extern u16 gSpecialVar_ContestCategory; extern u16 gSpecialVar_ContestRank; -extern u16 gUnknown_030042A4; -extern u16 gUnknown_030042A0; +extern u16 gBattle_BG0_X; +extern u16 gBattle_BG0_Y; extern u16 gBattle_BG1_X; extern u16 gBattle_BG1_Y; extern u16 gBattle_BG2_X; @@ -457,8 +457,8 @@ static void sub_80A9F50(void) REG_BLDY = 0; REG_BG0HOFS = 0; REG_BG0VOFS = 0; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -505,8 +505,8 @@ static void sub_80AA064(void) static void sub_80AA090(void) { - REG_BG0HOFS = gUnknown_030042A4; - REG_BG0VOFS = gUnknown_030042A0; + REG_BG0HOFS = gBattle_BG0_X; + REG_BG0VOFS = gBattle_BG0_Y; REG_BG1HOFS = gBattle_BG1_X; REG_BG1VOFS = gBattle_BG1_Y; REG_BG2HOFS = gBattle_BG2_X; diff --git a/src/easy_chat_2.c b/src/easy_chat_2.c index 8a3bb9ab9..fe3aa7cc9 100644 --- a/src/easy_chat_2.c +++ b/src/easy_chat_2.c @@ -70,8 +70,7 @@ static u16 sub_80EB960(void); u8 sub_80EB9C8(void); static u16 sub_80EB9D8(void); -// put this in .bss, damnit! -__attribute__((section(".bss"))) u8 gUnknown_03000740 = 0; +static u8 gUnknown_03000740; const u16 InterviewPalette_0[] = INCBIN_U16("graphics/misc/interview_pal0.gbapal"); const u16 InterviewPalette_1[] = INCBIN_U16("graphics/misc/interview_pal1.gbapal"); @@ -328,19 +327,6 @@ const union AnimCmd *const gSpriteAnimTable_83DBC9C[] = gSpriteAnim_83DBC74, }; -/* -const struct SpriteTemplate gSpriteTemplate_83DBCAC = -{ - .tileTag = 1, - .paletteTag = 1, - .oam = &gOamData_83DBC14, - .anims = gSpriteAnimTable_83DBC7C, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_80E85F8, -}; -*/ - void sub_80E8420(void) { struct SpriteTemplate spriteTemplate_83DBCAC = diff --git a/src/field/battle_tower.c b/src/field/battle_tower.c index caebc6a7b..11c05e478 100644 --- a/src/field/battle_tower.c +++ b/src/field/battle_tower.c @@ -103,59 +103,59 @@ static const u16 sBattleTowerHeldItems[] = { #include "../data/battle_tower/level_100_mons.h" static const u8 sMaleTrainerClasses[] = { - TRAINER_CLASS_RUIN_MANIAC, - TRAINER_CLASS_TUBER_M, - TRAINER_CLASS_COOL_TRAINER_M, - TRAINER_CLASS_RICH_BOY, - TRAINER_CLASS_POKEMANIAC, - TRAINER_CLASS_SWIMMER_M, - TRAINER_CLASS_BLACK_BELT, - TRAINER_CLASS_GUITARIST, - TRAINER_CLASS_KINDLER, - TRAINER_CLASS_CAMPER, - TRAINER_CLASS_BUG_MANIAC, - TRAINER_CLASS_PSYCHIC_M, - TRAINER_CLASS_GENTLEMAN, - TRAINER_CLASS_SCHOOL_KID_M, - TRAINER_CLASS_POKEFAN_M, - TRAINER_CLASS_EXPERT_M, - TRAINER_CLASS_YOUNGSTER, - TRAINER_CLASS_FISHERMAN, - TRAINER_CLASS_CYCLING_TRIATHLETE_M, - TRAINER_CLASS_RUNNING_TRIATHLETE_M, - TRAINER_CLASS_SWIMMING_TRIATHLETE_M, - TRAINER_CLASS_DRAGON_TAMER, - TRAINER_CLASS_BIRD_KEEPER, - TRAINER_CLASS_NINJA_BOY, - TRAINER_CLASS_SAILOR, - TRAINER_CLASS_COLLECTOR, - TRAINER_CLASS_POKEMON_BREEDER_M, - TRAINER_CLASS_POKEMON_RANGER_M, - TRAINER_CLASS_BUG_CATCHER, - TRAINER_CLASS_HIKER, + FACILITY_CLASS_RUIN_MANIAC, + FACILITY_CLASS_TUBER_M, + FACILITY_CLASS_COOL_TRAINER_M, + FACILITY_CLASS_RICH_BOY, + FACILITY_CLASS_POKEMANIAC, + FACILITY_CLASS_SWIMMER_M, + FACILITY_CLASS_BLACK_BELT, + FACILITY_CLASS_GUITARIST, + FACILITY_CLASS_KINDLER, + FACILITY_CLASS_CAMPER, + FACILITY_CLASS_BUG_MANIAC, + FACILITY_CLASS_PSYCHIC_M, + FACILITY_CLASS_GENTLEMAN, + FACILITY_CLASS_SCHOOL_KID_M, + FACILITY_CLASS_POKEFAN_M, + FACILITY_CLASS_EXPERT_M, + FACILITY_CLASS_YOUNGSTER, + FACILITY_CLASS_FISHERMAN, + FACILITY_CLASS_CYCLING_TRIATHLETE_M, + FACILITY_CLASS_RUNNING_TRIATHLETE_M, + FACILITY_CLASS_SWIMMING_TRIATHLETE_M, + FACILITY_CLASS_DRAGON_TAMER, + FACILITY_CLASS_BIRD_KEEPER, + FACILITY_CLASS_NINJA_BOY, + FACILITY_CLASS_SAILOR, + FACILITY_CLASS_COLLECTOR, + FACILITY_CLASS_POKEMON_BREEDER_M, + FACILITY_CLASS_POKEMON_RANGER_M, + FACILITY_CLASS_BUG_CATCHER, + FACILITY_CLASS_HIKER, }; static const u8 sFemaleTrainerClasses[] = { - TRAINER_CLASS_AROMA_LADY, - TRAINER_CLASS_TUBER_F, - TRAINER_CLASS_COOL_TRAINER_F, - TRAINER_CLASS_HEX_MANIAC, - TRAINER_CLASS_LADY, - TRAINER_CLASS_BEAUTY, - TRAINER_CLASS_PSYCHIC_F, - TRAINER_CLASS_SCHOOL_KID_F, - TRAINER_CLASS_POKEFAN_F, - TRAINER_CLASS_EXPERT_F, - TRAINER_CLASS_CYCLING_TRIATHLETE_F, - TRAINER_CLASS_RUNNING_TRIATHLETE_F, - TRAINER_CLASS_SWIMMING_TRIATHLETE_F, - TRAINER_CLASS_BATTLE_GIRL, - TRAINER_CLASS_PARASOL_LADY, - TRAINER_CLASS_SWIMMER_F, - TRAINER_CLASS_PICNICKER, - TRAINER_CLASS_POKEMON_BREEDER_F, - TRAINER_CLASS_POKEMON_RANGER_F, - TRAINER_CLASS_LASS, + FACILITY_CLASS_AROMA_LADY, + FACILITY_CLASS_TUBER_F, + FACILITY_CLASS_COOL_TRAINER_F, + FACILITY_CLASS_HEX_MANIAC, + FACILITY_CLASS_LADY, + FACILITY_CLASS_BEAUTY, + FACILITY_CLASS_PSYCHIC_F, + FACILITY_CLASS_SCHOOL_KID_F, + FACILITY_CLASS_POKEFAN_F, + FACILITY_CLASS_EXPERT_F, + FACILITY_CLASS_CYCLING_TRIATHLETE_F, + FACILITY_CLASS_RUNNING_TRIATHLETE_F, + FACILITY_CLASS_SWIMMING_TRIATHLETE_F, + FACILITY_CLASS_BATTLE_GIRL, + FACILITY_CLASS_PARASOL_LADY, + FACILITY_CLASS_SWIMMER_F, + FACILITY_CLASS_PICNICKER, + FACILITY_CLASS_POKEMON_BREEDER_F, + FACILITY_CLASS_POKEMON_RANGER_F, + FACILITY_CLASS_LASS, }; static const u8 sMaleTrainerGfxIds[] = { @@ -255,7 +255,7 @@ static void ResetBattleTowerStreak(u8 levelType); static void ValidateBattleTowerRecordChecksums(void); static void PrintEReaderTrainerFarewellMessage(void); extern void SetBattleTowerTrainerGfxId(u8); -extern void sub_8135A3C(void); +static void SaveCurrentWinStreak(void); static void sub_8135CFC(void); static void CheckMonBattleTowerBanlist(u16, u16, u16, u8, u8, u16 *, u16 *, u8 *); static void ClearEReaderTrainer(struct BattleTowerEReaderTrainer *); @@ -1538,7 +1538,7 @@ void CheckPartyBattleTowerBanlist(void) StringAppend(gStringVar1, BattleText_Format8); return; } - + if (1 & counter) StringAppend(gStringVar1, BattleText_Format6); else @@ -1699,7 +1699,7 @@ void SetBattleTowerProperty(void) } gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]++; - sub_8135A3C(); + SaveCurrentWinStreak(); gSpecialVar_Result = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]; gStringVar1[0] = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType] + 0xA1; @@ -1711,7 +1711,7 @@ void SetBattleTowerProperty(void) gSaveBlock2.battleTower.curStreakChallengesNum[battleTowerLevelType]++; } - sub_8135A3C(); + SaveCurrentWinStreak(); gSpecialVar_Result = gSaveBlock2.battleTower.curStreakChallengesNum[battleTowerLevelType]; break; case 8: @@ -1801,118 +1801,35 @@ void SetBattleTowerParty(void) ReducePlayerPartyToThree(); } -#ifdef NONMATCHING -void sub_8135A3C(void) +static void SaveCurrentWinStreak(void) { - u8 battleTowerLevelType = gSaveBlock2.battleTower.battleTowerLevelType; - u16 winStreak = GetCurrentBattleTowerWinStreak(battleTowerLevelType); + u8 levelType = gSaveBlock2.battleTower.battleTowerLevelType; + u16 streak = GetCurrentBattleTowerWinStreak(levelType); - if (gSaveBlock2.battleTower.recordWinStreaks[battleTowerLevelType] < winStreak) - { - gSaveBlock2.battleTower.recordWinStreaks[battleTowerLevelType] = winStreak; - } + if (gSaveBlock2.battleTower.recordWinStreaks[levelType] < streak) + gSaveBlock2.battleTower.recordWinStreaks[levelType] = streak; if (gSaveBlock2.battleTower.recordWinStreaks[0] > gSaveBlock2.battleTower.recordWinStreaks[1]) { - u16 streak = gSaveBlock2.battleTower.recordWinStreaks[0]; + streak = gSaveBlock2.battleTower.recordWinStreaks[0]; SetGameStat(GAME_STAT_BATTLE_TOWER_BEST_STREAK, streak); + if (streak > 9999) - { gSaveBlock2.battleTower.bestBattleTowerWinStreak = 9999; - } else - { gSaveBlock2.battleTower.bestBattleTowerWinStreak = streak; - } } else { - u16 streak = gSaveBlock2.battleTower.recordWinStreaks[1]; + streak = gSaveBlock2.battleTower.recordWinStreaks[1]; SetGameStat(GAME_STAT_BATTLE_TOWER_BEST_STREAK, streak); + if (streak > 9999) - { gSaveBlock2.battleTower.bestBattleTowerWinStreak = 9999; - } else - { gSaveBlock2.battleTower.bestBattleTowerWinStreak = streak; - } } } -#else -__attribute__((naked)) -void sub_8135A3C(void) -{ - asm(".syntax unified\n\ - push {r4-r6,lr}\n\ - ldr r6, _08135A84 @ =gSaveBlock2\n\ - ldr r1, _08135A88 @ =0x00000554\n\ - adds r0, r6, r1\n\ - ldrb r4, [r0]\n\ - lsls r4, 31\n\ - lsrs r4, 31\n\ - adds r0, r4, 0\n\ - bl GetCurrentBattleTowerWinStreak\n\ - lsls r0, 16\n\ - lsrs r5, r0, 16\n\ - lsls r4, 1\n\ - movs r3, 0xAC\n\ - lsls r3, 3\n\ - adds r2, r6, r3\n\ - adds r4, r2\n\ - ldrh r0, [r4]\n\ - cmp r0, r5\n\ - bcs _08135A66\n\ - strh r5, [r4]\n\ -_08135A66:\n\ - ldr r0, _08135A8C @ =0x00000562\n\ - adds r1, r6, r0\n\ - ldrh r0, [r2]\n\ - ldrh r3, [r1]\n\ - cmp r0, r3\n\ - bls _08135A94\n\ - adds r5, r0, 0\n\ - movs r0, 0x20\n\ - adds r1, r5, 0\n\ - bl SetGameStat\n\ - ldr r1, _08135A90 @ =0x0000270f\n\ - cmp r5, r1\n\ - bhi _08135AA4\n\ - b _08135AB4\n\ - .align 2, 0\n\ -_08135A84: .4byte gSaveBlock2\n\ -_08135A88: .4byte 0x00000554\n\ -_08135A8C: .4byte 0x00000562\n\ -_08135A90: .4byte 0x0000270f\n\ -_08135A94:\n\ - ldrh r5, [r1]\n\ - movs r0, 0x20\n\ - adds r1, r5, 0\n\ - bl SetGameStat\n\ - ldr r1, _08135AAC @ =0x0000270f\n\ - cmp r5, r1\n\ - bls _08135AB4\n\ -_08135AA4:\n\ - ldr r2, _08135AB0 @ =0x00000572\n\ - adds r0, r6, r2\n\ - strh r1, [r0]\n\ - b _08135ABA\n\ - .align 2, 0\n\ -_08135AAC: .4byte 0x0000270f\n\ -_08135AB0: .4byte 0x00000572\n\ -_08135AB4:\n\ - ldr r3, _08135AC0 @ =0x00000572\n\ - adds r0, r6, r3\n\ - strh r5, [r0]\n\ -_08135ABA:\n\ - pop {r4-r6}\n\ - pop {r0}\n\ - bx r0\n\ - .align 2, 0\n\ -_08135AC0: .4byte 0x00000572\n\ - .syntax divided\n"); -} -#endif // NONMATCHING void sub_8135AC4(void) { @@ -1951,7 +1868,7 @@ void sub_8135AC4(void) } SetBattleTowerRecordChecksum(&gSaveBlock2.battleTower.playerRecord); - sub_8135A3C(); + SaveCurrentWinStreak(); } void SaveBattleTowerProgress(void) @@ -2068,79 +1985,15 @@ u16 GetCurrentBattleTowerWinStreak(u8 battleTowerLevelType) return winStreak; } -#ifdef NONMATCHING void DetermineBattleTowerPrize(void) { - u16 prizeItem; - struct SaveBlock2 *saveBlock = &gSaveBlock2; - u8 battleTowerLevelType = saveBlock->battleTower.battleTowerLevelType; + u8 levelType = gSaveBlock2.battleTower.battleTowerLevelType; - if (saveBlock->battleTower.curStreakChallengesNum[battleTowerLevelType] - 1 > 5) - { - prizeItem = sLongStreakPrizes[Random() % ARRAY_COUNT(sLongStreakPrizes)]; - } + if (gSaveBlock2.battleTower.curStreakChallengesNum[levelType] - 1 > 5) + gSaveBlock2.battleTower.prizeItem = sLongStreakPrizes[Random() % ARRAY_COUNT(sLongStreakPrizes)]; else - { - prizeItem = sShortStreakPrizes[Random() % ARRAY_COUNT(sShortStreakPrizes)]; - } - - saveBlock->battleTower.prizeItem = prizeItem; -} -#else -__attribute__((naked)) -void DetermineBattleTowerPrize(void) -{ - asm(".syntax unified\n\ - push {r4,r5,lr}\n\ - ldr r5, _08135DB0 @ =gSaveBlock2\n\ - ldr r1, _08135DB4 @ =0x00000554\n\ - adds r0, r5, r1\n\ - ldrb r0, [r0]\n\ - lsls r0, 31\n\ - lsrs r0, 31\n\ - lsls r0, 1\n\ - ldr r2, _08135DB8 @ =0x0000055c\n\ - adds r1, r5, r2\n\ - adds r0, r1\n\ - ldrh r0, [r0]\n\ - subs r0, 0x1\n\ - cmp r0, 0x5\n\ - ble _08135DC0\n\ - bl Random\n\ - ldr r4, _08135DBC @ =sLongStreakPrizes\n\ - lsls r0, 16\n\ - lsrs r0, 16\n\ - movs r1, 0x9\n\ - b _08135DCC\n\ - .align 2, 0\n\ -_08135DB0: .4byte gSaveBlock2\n\ -_08135DB4: .4byte 0x00000554\n\ -_08135DB8: .4byte 0x0000055c\n\ -_08135DBC: .4byte sLongStreakPrizes\n\ -_08135DC0:\n\ - bl Random\n\ - ldr r4, _08135DE8 @ =sShortStreakPrizes\n\ - lsls r0, 16\n\ - lsrs r0, 16\n\ - movs r1, 0x6\n\ -_08135DCC:\n\ - bl __umodsi3\n\ - lsls r0, 16\n\ - lsrs r0, 15\n\ - adds r0, r4\n\ - ldrh r1, [r0]\n\ - movs r2, 0xAD\n\ - lsls r2, 3\n\ - adds r0, r5, r2\n\ - strh r1, [r0]\n\ - pop {r4,r5}\n\ - pop {r0}\n\ - bx r0\n\ - .align 2, 0\n\ -_08135DE8: .4byte sShortStreakPrizes\n\ - .syntax divided\n"); + gSaveBlock2.battleTower.prizeItem = sShortStreakPrizes[Random() % ARRAY_COUNT(sShortStreakPrizes)]; } -#endif // NONMATCHING void GiveBattleTowerPrize(void) { diff --git a/src/field/party_menu.c b/src/field/party_menu.c index 9c1150515..790aede60 100644 --- a/src/field/party_menu.c +++ b/src/field/party_menu.c @@ -490,9 +490,6 @@ extern const u8 gStatusPal_Icons[]; #define WINDOW_RIGHT (29) #endif - -#ifdef NONMATCHING -// Main handler for the party menu. void CB2_PartyMenuMain(void) { const struct PartyMonTextSettingsStruct *textSettings; @@ -506,62 +503,17 @@ void CB2_PartyMenuMain(void) { // Draw mon name, level, and hp sprites DrawPartyMenuMonText( - textSettings[i].xOffset * 8, - textSettings[i].yOffset * 8, - textSettings[i].oamSettings, + textSettings->xOffset * 8, + textSettings->yOffset * 8, + textSettings->oamSettings, 0, (i << 5) | 0x200); + textSettings++; } RunTasks(); UpdatePaletteFade(); } -#else -__attribute__((naked)) -void CB2_PartyMenuMain(void) -{ - asm(".syntax unified\n\ - push {r4-r6,lr}\n\ - sub sp, 0x4\n\ - bl AnimateSprites\n\ - bl BuildOamBuffer\n\ - ldr r0, _0806AF2C @ =gPartyMenuType\n\ - ldrb r1, [r0]\n\ - lsls r0, r1, 1\n\ - adds r0, r1\n\ - lsls r0, 4\n\ - ldr r1, _0806AF30 @ =PartyMonTextSettings\n\ - adds r5, r0, r1\n\ - movs r6, 0\n\ -_0806AEF8:\n\ - ldrb r0, [r5]\n\ - lsls r0, 3\n\ - ldrb r1, [r5, 0x1]\n\ - lsls r1, 3\n\ - ldr r2, [r5, 0x4]\n\ - lsls r3, r6, 5\n\ - movs r4, 0x80\n\ - lsls r4, 2\n\ - orrs r3, r4\n\ - str r3, [sp]\n\ - movs r3, 0\n\ - bl DrawPartyMenuMonText\n\ - adds r5, 0x8\n\ - adds r6, 0x1\n\ - cmp r6, 0x5\n\ - ble _0806AEF8\n\ - bl RunTasks\n\ - bl UpdatePaletteFade\n\ - add sp, 0x4\n\ - pop {r4-r6}\n\ - pop {r0}\n\ - bx r0\n\ - .align 2, 0\n\ -_0806AF2C: .4byte gPartyMenuType\n\ -_0806AF30: .4byte PartyMonTextSettings\n\ - .syntax divided\n"); -} -#endif // NONMATCHING void VBlankCB_PartyMenu(void) { @@ -1226,8 +1178,6 @@ void sub_806BBEC(u8 a) } } -#ifdef NONMATCHING -// The original THUMB is preserving r8 for seemingly no reason. Unsure how to match. void sub_806BC3C(u8 monIndex, u8 b) { u16 *vramPtr = gUnknown_08376918[IsDoubleBattle()][monIndex]; @@ -1240,74 +1190,10 @@ void sub_806BC3C(u8 monIndex, u8 b) vramPtr[i] = gUnknown_08E9A300[offset] + 0x10C; vramPtr[i + 0x20] = gUnknown_08E9A300[offset + 0x20] + 0x10C; } + + // Some dead code was likely optimized out, but the compiler still think r8 was used. + asm("":::"r8"); } -#else -__attribute__((naked)) -void sub_806BC3C(u8 monIndex, u8 b) -{ - asm(".syntax unified\n\ - push {r4-r7,lr}\n\ - mov r7, r8\n\ - push {r7}\n\ - adds r4, r0, 0\n\ - adds r5, r1, 0\n\ - lsls r4, 24\n\ - lsrs r4, 24\n\ - lsls r5, 24\n\ - lsrs r5, 24\n\ - ldr r6, _0806BCB0 @ =gUnknown_08376918\n\ - bl IsDoubleBattle\n\ - lsls r4, 2\n\ - lsls r0, 24\n\ - lsrs r0, 24\n\ - lsls r1, r0, 1\n\ - adds r1, r0\n\ - lsls r1, 3\n\ - adds r4, r1\n\ - adds r4, r6\n\ - ldr r7, [r4]\n\ - movs r6, 0\n\ - adds r0, r5, 0\n\ - movs r1, 0x7\n\ - bl __udivsi3\n\ - lsls r0, 24\n\ - lsrs r4, r0, 19\n\ - ldr r5, _0806BCB4 @ =gUnknown_08E9A300\n\ - movs r0, 0x86\n\ - lsls r0, 1\n\ - adds r3, r0, 0\n\ -_0806BC7C:\n\ - adds r1, r6, r4\n\ - lsls r2, r6, 1\n\ - adds r2, r7\n\ - lsls r0, r1, 1\n\ - adds r0, r5\n\ - ldrh r0, [r0]\n\ - adds r0, r3, r0\n\ - strh r0, [r2]\n\ - adds r2, 0x40\n\ - adds r1, 0x20\n\ - lsls r1, 1\n\ - adds r1, r5\n\ - ldrh r1, [r1]\n\ - adds r0, r3, r1\n\ - strh r0, [r2]\n\ - adds r0, r6, 0x1\n\ - lsls r0, 24\n\ - lsrs r6, r0, 24\n\ - cmp r6, 0x6\n\ - bls _0806BC7C\n\ - pop {r3}\n\ - mov r8, r3\n\ - pop {r4-r7}\n\ - pop {r0}\n\ - bx r0\n\ - .align 2, 0\n\ -_0806BCB0: .4byte gUnknown_08376918\n\ -_0806BCB4: .4byte gUnknown_08E9A300\n\ - .syntax divided\n"); -} -#endif // NONMATCHING void unref_sub_806BCB8(u8 a) { diff --git a/src/field/player_pc.c b/src/field/player_pc.c index 4fef09386..928cb9689 100644 --- a/src/field/player_pc.c +++ b/src/field/player_pc.c @@ -866,58 +866,48 @@ static void ItemStorage_DrawItemList(u8 taskId) u16 i; u16 yCoord = 0; - // r5 is i and is unsigned 16-bit. - - for(i = ITEMS_ABOVE_TOP; i < ITEMS_ABOVE_TOP + NUM_PAGE_ITEMS; i++) + for (i = ITEMS_ABOVE_TOP; i < ITEMS_ABOVE_TOP + NUM_PAGE_ITEMS; i++) { yCoord = (i - ITEMS_ABOVE_TOP) * 2; - if(i != NUM_ITEMS) + if (i == NUM_ITEMS) + { + sub_8072A18(gOtherText_CancelNoTerminator, 0x80, (yCoord + 2) * 8, 0x68, 1); + break; + } + else { tempArg = 0; - if(SWITCH_MODE_ACTIVE != FALSE && i == SWAP_ITEM_INDEX) + if (SWITCH_MODE_ACTIVE != FALSE && i == SWAP_ITEM_INDEX) tempArg = 1; - switch(GetPocketByItemId(gSaveBlock1.pcItems[i].itemId) - 1) + switch (GetPocketByItemId(gSaveBlock1.pcItems[i].itemId) - 1) { - case 0: - case 1: - case 3: - ItemStorage_DrawNormalItemEntry((struct ItemSlot *)&gSaveBlock1.pcItems[i], yCoord + 2, tempArg); - break; - case 4: - ItemStorage_DrawKeyItemEntry((struct ItemSlot *)&gSaveBlock1.pcItems[i], yCoord + 2, tempArg); - break; - case 2: - ItemStorage_DrawTMHMEntry((struct ItemSlot *)&gSaveBlock1.pcItems[i], yCoord + 2, tempArg); - break; + case 0: + case 1: + case 3: + ItemStorage_DrawNormalItemEntry((struct ItemSlot *)&gSaveBlock1.pcItems[i], yCoord + 2, tempArg); + break; + case 4: + ItemStorage_DrawKeyItemEntry((struct ItemSlot *)&gSaveBlock1.pcItems[i], yCoord + 2, tempArg); + break; + case 2: + ItemStorage_DrawTMHMEntry((struct ItemSlot *)&gSaveBlock1.pcItems[i], yCoord + 2, tempArg); + break; } } - else - { - goto weirdCase; // what??? - } } -beforeLabel: - if(i - ITEMS_ABOVE_TOP < 8) + if (i - ITEMS_ABOVE_TOP < 8) MenuFillWindowRectWithBlankTile(16, yCoord + 4, 0x1C, 0x12); - switch(ITEMS_ABOVE_TOP) - { - default: + if (ITEMS_ABOVE_TOP != 0) CreateVerticalScrollIndicators(0, 0xB8, 8); - break; -weirdCase: - sub_8072A18(gOtherText_CancelNoTerminator, 0x80, (yCoord + 2) * 8, 0x68, 1); - goto beforeLabel; - case 0: + else DestroyVerticalScrollIndicator(0); - break; - } - if(ITEMS_ABOVE_TOP + NUM_PAGE_ITEMS <= NUM_ITEMS) + if (ITEMS_ABOVE_TOP + NUM_PAGE_ITEMS <= NUM_ITEMS) CreateVerticalScrollIndicators(1, 0xB8, 0x98); else DestroyVerticalScrollIndicator(1); @@ -1039,55 +1029,37 @@ static void Mailbox_UpdateMailList(void) } } -// WWHHHHHYYYYYYYY SOMEBODY PLEASE FIX THIS static void Mailbox_DrawMailList(u8 taskId) // taskId is unused { u16 yCoord = 0; - u16 i = eMailboxInfo.itemsAbove; - register struct MailboxStruct *tempMailbox asm("r1") = &eMailboxInfo; - register struct MailboxStruct *mailbox asm("r6"); + u16 i; - if(i < i + tempMailbox->pageItems) - { - mailbox = tempMailbox; - goto forJump; - for(; i < mailbox->itemsAbove + mailbox->pageItems; i++) + for (i = eMailboxInfo.itemsAbove; i < eMailboxInfo.itemsAbove + eMailboxInfo.pageItems; i++) { - forJump: - yCoord = (i - mailbox->itemsAbove) * 2; + yCoord = (i - eMailboxInfo.itemsAbove) * 2; MenuFillWindowRectWithBlankTile(0x15, yCoord + 2, 0x1C, yCoord + 3); - - if(i != mailbox->count) + if (i == eMailboxInfo.count) { - StringCopy(gStringVar1, gSaveBlock1.mail[i + 6].playerName); - SanitizeNameString(gStringVar1); - MenuPrint(gStringVar1, 0x15, yCoord + 2); + MenuPrint(gOtherText_CancelNoTerminator, 0x15, yCoord + 2); + break; } else { - goto weirdCase; // again, what??? + StringCopy(gStringVar1, gSaveBlock1.mail[i + 6].playerName); + SanitizeNameString(gStringVar1); + MenuPrint(gStringVar1, 0x15, yCoord + 2); } } - } -beforeLabel: - if(i - eMailboxInfo.itemsAbove != 8) + if (i - eMailboxInfo.itemsAbove != 8) MenuFillWindowRectWithBlankTile(0x15, yCoord + 4, 0x1C, 0x12); - switch(eMailboxInfo.itemsAbove) - { - default: + if (eMailboxInfo.itemsAbove != 0) CreateVerticalScrollIndicators(0, 0xC8, 8); - break; -weirdCase: - MenuPrint(gOtherText_CancelNoTerminator, 0x15, yCoord + 2); - goto beforeLabel; - case 0: + else DestroyVerticalScrollIndicator(0); - break; - } - if(eMailboxInfo.itemsAbove + eMailboxInfo.pageItems <= eMailboxInfo.count) + if (eMailboxInfo.itemsAbove + eMailboxInfo.pageItems <= eMailboxInfo.count) CreateVerticalScrollIndicators(1, 0xC8, 0x98); else DestroyVerticalScrollIndicator(1); diff --git a/src/field/tv.c b/src/field/tv.c index d7a75a709..e88e3c72b 100644 --- a/src/field/tv.c +++ b/src/field/tv.c @@ -811,7 +811,7 @@ u8 sub_80BDEAC(u8 *a0) return lang; } -void sub_80BDEC8(void) +void PutPokemonTodayCaughtOnAir(void) { u8 i; u16 total; diff --git a/src/pokemon/pokemon_2.c b/src/pokemon/pokemon_2.c index 37bc2e0ad..eb56974cd 100644 --- a/src/pokemon/pokemon_2.c +++ b/src/pokemon/pokemon_2.c @@ -1,5 +1,6 @@ #include "global.h" #include "battle.h" +#include "battle_util.h" #include "data2.h" #include "event_data.h" #include "main.h" @@ -84,7 +85,7 @@ u8 sub_803C434(u8 a1) status ^= 1; if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) - return GetBankByPlayerAI(status); + return GetBankByIdentity(status); if (CountAliveMons(0) > 1) { u8 val; @@ -93,14 +94,14 @@ u8 sub_803C434(u8 a1) val = status ^ 2; else val = status; - return GetBankByPlayerAI(val); + return GetBankByIdentity(val); } else { if ((gAbsentBankFlags & gBitTable[status])) - return GetBankByPlayerAI(status ^ 2); + return GetBankByIdentity(status ^ 2); else - return GetBankByPlayerAI(status); + return GetBankByIdentity(status); } } diff --git a/src/pokemon/pokemon_data.c b/src/pokemon/pokemon_data.c index 82e452158..031f2ea24 100644 --- a/src/pokemon/pokemon_data.c +++ b/src/pokemon/pokemon_data.c @@ -84,9 +84,9 @@ const struct SpriteTemplate gSpriteTemplate_8208288[] = { const u8 gSecretBaseTrainerClasses[][5] = { // male - {TRAINER_CLASS_YOUNGSTER, TRAINER_CLASS_BUG_CATCHER, TRAINER_CLASS_RICH_BOY, TRAINER_CLASS_CAMPER, TRAINER_CLASS_COOL_TRAINER_M}, + {FACILITY_CLASS_YOUNGSTER, FACILITY_CLASS_BUG_CATCHER, FACILITY_CLASS_RICH_BOY, FACILITY_CLASS_CAMPER, FACILITY_CLASS_COOL_TRAINER_M}, // female - {TRAINER_CLASS_LASS, TRAINER_CLASS_SCHOOL_KID_F, TRAINER_CLASS_LADY, TRAINER_CLASS_PICNICKER, TRAINER_CLASS_COOL_TRAINER_F} + {FACILITY_CLASS_LASS, FACILITY_CLASS_SCHOOL_KID_F, FACILITY_CLASS_LADY, FACILITY_CLASS_PICNICKER, FACILITY_CLASS_COOL_TRAINER_F} }; const u8 gUnknown_082082F2[] = { diff --git a/src/rom3.c b/src/rom3.c index cdc66989c..11239a681 100644 --- a/src/rom3.c +++ b/src/rom3.c @@ -5,6 +5,7 @@ #include "battle_anim.h" #include "battle_anim_81258BC.h" #include "battle_anim_8137220.h" +#include "battle_util.h" #include "cable_club.h" #include "constants/items.h" #include "link.h" @@ -582,7 +583,7 @@ void Emitcmd1(u8 a, u8 b, u8 c) PrepareBufferDataTransfer(a, gBattleBuffersTransferData, 4); } -void EmitSetAttributes(u8 a, u8 b, u8 c, u8 d, void *e) +void EmitSetMonData(u8 a, u8 b, u8 c, u8 d, void *e) { int i; diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c index 001cd85f6..2691da859 100644 --- a/src/rom_8077ABC.c +++ b/src/rom_8077ABC.c @@ -823,7 +823,7 @@ u8 GetBankIdentity(u8 slot) return gBanksBySide[slot]; } -u8 GetBankByPlayerAI(u8 slot) +u8 GetBankByIdentity(u8 slot) { u8 i; @@ -1329,35 +1329,27 @@ u32 sub_80792C0(u8 a1, u8 a2, u8 a3, u8 a4) var |= 1 << 18; return var; } - } - else - { - if (a1) - { - if (IsAnimBankSpriteVisible(GetBankByPlayerAI(0))) - var |= 1 << (GetBankByPlayerAI(0) + 16); + } else { + if (a1) { + if (IsAnimBankSpriteVisible(GetBankByIdentity(0))) { + var |= 1 << (GetBankByIdentity(0) + 16); + } } - if (a2) - { - if (IsAnimBankSpriteVisible(GetBankByPlayerAI(2))) - { - shift = GetBankByPlayerAI(2) + 16; + if (a2) { + if (IsAnimBankSpriteVisible(GetBankByIdentity(2))) { + shift = GetBankByIdentity(2) + 16; var |= 1 << shift; } } - if (a3) - { - if (IsAnimBankSpriteVisible(GetBankByPlayerAI(1))) - { - shift = GetBankByPlayerAI(1) + 16; + if (a3) { + if (IsAnimBankSpriteVisible(GetBankByIdentity(1))) { + shift = GetBankByIdentity(1) + 16; var |= 1 << shift; } } - if (a4) - { - if (IsAnimBankSpriteVisible(GetBankByPlayerAI(3))) - { - shift = GetBankByPlayerAI(3) + 16; + if (a4) { + if (IsAnimBankSpriteVisible(GetBankByIdentity(3))) { + shift = GetBankByIdentity(3) + 16; var |= 1 << shift; } } @@ -1372,7 +1364,7 @@ u8 sub_80793A8(u8 a1) u8 unref_sub_80793B0(u8 a1) { - return GetBankByPlayerAI(a1); + return GetBankByIdentity(a1); } void sub_80793C4(struct Sprite *sprite) diff --git a/src/roulette.c b/src/roulette.c new file mode 100644 index 000000000..1d612d071 --- /dev/null +++ b/src/roulette.c @@ -0,0 +1,4637 @@ +#include "global.h" +#include "ewram.h" +#include "field_fadetransition.h" +#include "constants/game_stat.h" +#include "m4a.h" +#include "main.h" +#include "menu.h" +#include "menu_cursor.h" +#include "menu_helpers.h" +#include "overworld.h" +#include "palette.h" +#include "pokemon.h" +#include "roulette.h" +#include "roulette_util.h" +#include "rtc.h" +#include "constants/songs.h" +#include "sound.h" +#include "script.h" +#include "constants/species.h" +#include "sprite.h" +#include "strings2.h" +#include "string_util.h" +#include "task.h" +#include "text.h" +#include "trig.h" +#include "unknown_task.h" + +asm(".include \"constants/gba_constants.inc\""); + +struct Roulette /* ewram + 0x19000 */ +{ + u8 var00; + u8 var01; + u8 var02; + u8 var03_0:5; + u8 var03_5:1; + u8 var03_6:1; + u8 var03_7:1; + u8 var04_0:2; + u8 var04_2:5; + u8 var04_7:1; + u32 var08; + u8 var0C[0x6]; + u8 var12[0x4]; + u8 var16[0x3]; + u8 var19; + u8 var1A_0:4; + u8 var1A_4:4; + u8 var1B[0x6]; + u8 var21; + u8 var22; + u8 var23; + s16 var24; + s16 var26; + s16 var28; + s16 var2A; + struct OamMatrix var2C; + u16 var34; + struct Sprite *var38; + u8 var3C[0x40]; // Sprite IDs + u8 var7C; + u8 var7D; + u8 var7E; + u8 var7F; + s16 var80; + s16 var82; + s16 var84; + s16 var86; + float var88; + float var8C; + float var90; + float var94; + float var98; + float var9C; + float varA0; + u8 varA4; + u8 varA5; + u8 v51[0x2]; + u16 varA8; + u16 varAA; + TaskFunc varAC; + u8 v46[0x4]; + TaskFunc varB4; + struct UnkStruct0 varB8; +}; + +struct StructgUnknown_083F8DF4 +{ + u8 var00; + u8 var01; + u8 var02; + u8 var03; + u8 var04; + u8 v[0x3]; + u16 var08; + u16 var0A; + u16 var0C; + u16 v13[0x1]; + u16 var10; + u16 var12; + u16 var14; + u8 v1[0x2]; + u16 var18; + u16 var1A; + float var1C; +}; + +struct StructgUnknown_083F8C00 +{ + u8 var00; + u8 var01_0:4; + u8 var01_4:4; + u8 var02; + u8 var03; + u8 var04; + u8 var05; + u8 var06; + u8 var07; + u32 var08; + u32 var0C; + u16 var10; + u16 var12; +}; + +struct StructgUnknown_083F8D90 +{ + u8 var00; + u8 var01; + u8 var02; + u8 var03; + u32 var04; +}; + +static void sub_81150FC(void); +static void sub_8115124(void); +static void sub_8115238(void); +static void sub_8115384(void); +static void sub_8115634(u8); +static void sub_81156BC(u8); +static void sub_8115734(u8); +void sub_811577C(u8); +void sub_81157AC(u8); +static void sub_81157D0(u8); +static void sub_8115928(u8, u8); +static void sub_811597C(u8); +static void sub_81159BC(u8); +static u8 sub_8115A94(s16 *, u8); +void sub_8115B58(u8); +static void sub_8115DA0(u8); +static void sub_8115E14(u8); +static void sub_8115ECC(u8); +u8 sub_8115F58(u16, u16); +static void sub_8116100(u8); +void sub_8116308(u8); +static void sub_811637C(u8); +static void sub_8116474(u8); +static void sub_8116514(u8); +static void sub_811659C(u8); +static void sub_8116638(u8); +static void sub_81166E8(u8); +static void sub_811677C(u8); +static void sub_81167F4(u8); +static void sub_8116880(u8); +static void dp01t_12_3_battle_menu(u8); +static void sub_8116AB0(u8); +static void sub_8116B40(u8); +static void sub_8116BC0(u8); +static void sub_8116C34(u8, TaskFunc, u16, u16); +static void sub_8116CAC(u8); +static void sub_8116CF8(void); +static u8 sub_8116D54(u8, u8); +static u8 sub_8116E5C(u8, u8); +static void sub_8116EF8(u8); +static void sub_8117158(u8); +static u8 sub_8117380(u8); +static void sub_8117434(void); +static void sub_81174F8(u8); +static void sub_8117528(u8); +void sub_811755C(u8); +void sub_81175C0(u8); +static void sub_81175DC(u8); +static void sub_8117630(u8); +static void Task_Roulette_0(u8); +static void sub_8117838(u8); +static u8 sub_8117890(const struct SpriteTemplate *, u8, u16 *); +static void sub_8117900(void); +void unref_sub_8117A74(void); +static void sub_8117AA8(u8, u8); +static void sub_8117BBC(void); +static void sub_8117C60(u8, u8); +static void sub_8117D68(u8); +static void sub_8117DF4(void); +void sub_8117E98(struct Sprite *); +static void sub_8117F2C(void); +static void sub_81180F4(u16); +static u8 sub_81181E8(u8); +static void sub_811829C(u8); +static void sub_81182F8(u8); +void sub_81184CC(struct Sprite *); +static void sub_81184D8(void); +void sub_8118554(struct Sprite *); +static void sub_811857C(void); +static void sub_81185E8(void); +static s16 sub_811866C(struct Sprite *); +static u8 sub_81186B8(struct Sprite *); +static s16 sub_81186E8(struct Sprite *); +static void sub_8118724(struct Sprite *); +static void sub_8118834(struct Sprite *); +static void sub_811889C(struct Sprite *); +static void sub_81189A8(struct Sprite *); +static void sub_8118B30(struct Sprite *); +static void sub_8118BD8(struct Sprite *); +static void sub_8118CAC(struct Sprite *); +void sub_8118CEC(struct Sprite *); +void sub_8118D2C(struct Sprite *); +static void sub_8118DE4(struct Sprite *); +static void sub_8118F8C(struct Sprite *); +static void sub_8119088(struct Sprite *); +static void sub_8119134(struct Sprite *); +static void sub_81191F4(struct Sprite *); +static void sub_8119224(struct Sprite *); +static void sub_81193D4(struct Sprite *); +static void sub_811952C(struct Sprite *); +static void sub_8119780(struct Sprite *); +static void sub_81197D8(struct Sprite *); +static void sub_8119898(struct Sprite *); +void sub_8119964(struct Sprite *); +static void sub_8119A90(struct Sprite *); +static void sub_8119AAC(struct Sprite *); +static void sub_8119B24(struct Sprite *); +static void sub_8119BCC(struct Sprite *); +static void sub_8119D08(struct Sprite *); +void sub_8119D80(struct Sprite *); + +extern u8 gUnknown_02019000[]; +extern u16 gSpecialVar_0x8004; +extern struct StructgUnknown_083F8DF4 gUnknown_083F8DF4[]; +extern u8 gUnknown_083F8EC4; +extern u8 gUnknown_083F8DF0[]; +extern u8 gUnknown_083F8E34[]; +extern const u8 gUnknown_08E8096C[]; +extern const u8 gRouletteWheelTiles[]; +extern const u8 gRouletteCenter_Gfx[]; +extern const u8 gRouletteHeadersTiles[]; +extern const u8 gRouletteCreditTiles[]; +extern const u8 gRouletteNumbersTiles[]; +extern const u8 gRouletteMultiplierTiles[]; +extern const u16 gUnknown_083F86BC[]; +extern const u8 gUnknown_083F88BC[]; +extern const u8 gUnknown_083F8A60[]; +extern u16 gPlttBufferFaded[]; +extern u16 gPlttBufferUnfaded[]; +extern const u8 gUnknown_081C4157[]; +extern const struct YesNoFuncTable gUnknown_083F8EBC; +extern const u8 gUnknown_081C41E3; +extern const u16 gUnknown_083F8ECE; +extern const struct StructgUnknown_083F8C00 gUnknown_083F8C00[]; +const extern u8 gUnknown_083F8ECA[]; +const extern u8 gUnknown_081C41A5; +const extern u8 gUnknown_081C4199; +const extern u8 gUnknown_081C41AE; +const extern u8 gUnknown_081C41BD; +const extern u8 gUnknown_081C41F1; +const extern u8 gUnknown_081C4231; +const extern u8 gUnknown_081C41D2; +extern const struct StructgUnknown_083F8D90 gUnknown_083F8D90[]; +extern const u32 gUnknown_083F8ED8[]; +extern const u32 gUnknown_083F8EE8[]; +extern const struct UnkStruct1 gUnknown_083F8E9C[]; +extern const u8 gUnknown_083F8EF4[]; +extern const struct YesNoFuncTable gUnknown_083F8EB4; +extern const u8 gUnknown_081C40DF; +extern const u8 gUnknown_081C4139; +extern const u8 gUnknown_081C411C; +extern const u8 gUnknown_083F92A8[]; +extern const u8 gUnknown_083F90FC[]; +extern const u8 gUnknown_083F9D3C[]; +extern const struct SpritePalette gUnknown_083F9E30; +extern const struct SpriteSheet gUnknown_083F9F54; +extern const struct SpriteSheet gUnknown_083F9F5C; +extern const struct SpriteTemplate gSpriteTemplate_83FA07C[]; +extern const struct SpriteTemplate gSpriteTemplate_83F9FD4[]; +extern const struct SpriteTemplate gSpriteTemplate_83FA034[]; +extern const struct SpriteTemplate gSpriteTemplate_83FA40C; +extern const struct SpriteSheet gUnknown_083F9EE8; +extern const struct SpriteTemplate gSpriteTemplate_83FA0DC[]; +extern struct OamMatrix gOamMatrices[]; +extern const struct SpriteSheet gUnknown_083FA21C[]; +extern const struct SpriteTemplate gSpriteTemplate_83FA2B0; +extern const struct SpriteTemplate gSpriteTemplate_83FA2C8; +extern const struct SpriteTemplate gSpriteTemplate_83FA2E0; +extern const struct SpriteTemplate gSpriteTemplate_83FA2F8; +extern const struct SpriteTemplate gSpriteTemplate_83FA310; +extern const u8 gUnknown_083FA608[0x5]; +extern const struct SpriteSheet gUnknown_083FA42C; +extern const struct SpriteTemplate gSpriteTemplate_83FA434; +extern void (*gFieldCallback)(void); +extern struct MusicPlayerInfo gMPlay_SE1; +extern struct MusicPlayerInfo gMPlay_SE2; +extern const u16 gUnknown_083FA60E[0x2][0x2]; +extern const struct SpriteTemplate gSpriteTemplate_83FA50C; +extern const struct SpriteTemplate gSpriteTemplate_83FA5C0[]; +extern const u16 gUnknown_083FA616[0x2][0x2]; +extern const struct SpriteTemplate gSpriteTemplate_83FA524; +extern const struct SpriteTemplate gSpriteTemplate_83FA5F0; +extern const u16 gUnknown_083FA61E[0xA]; +extern const u16 gUnknown_083FA632[]; +extern const s8 gUnknown_083FA64A[0x2]; +extern const s8 gUnknown_083FA64C[0x8][0x2]; + + + + +void sub_81150FC(void) +{ + RunTasks(); + AnimateSprites(); + BuildOamBuffer(); + if (eRoulette->varB8.var00) + task_tutorial_controls_fadein(&eRoulette->varB8); +} + +void sub_8115124(void) +{ + LoadOam(); + ProcessSpriteCopyRequests(); + TransferPlttBuffer(); + sub_8117434(); + REG_BG1HOFS = 0x200 - eRoulette->var26; + if (eRoulette->var01) + REG_BLDALPHA = eRoulette->var34; + if (eRoulette->var2A != 0) + { + DmaCopy16(3, &gBGTilemapBuffers[1][0xE0], (void *)(VRAM + 0x21C0), 0x340); + eRoulette->var2A = 0x0; + } + switch (eRoulette->var28) + { + case 0x1: + REG_BG0CNT = (0x20 * 0xF8); + DmaCopy16(3, &gBGTilemapBuffers[2][0xE0], (void *)(VRAM + 0xF9C0), 0x340); + eRoulette->var28 = 0x2; + break; + case 0x2: + DmaCopy16(3, &gBGTilemapBuffers[2][0xE0], (void *)(VRAM + 0xF9C0), 0x340); + break; + case 0xFF: + REG_BG0CNT = 0x1F08; + DmaFill16(3, 0x0, (void *)(VRAM + 0xF9C0), 0x340); + eRoulette->var28 = 0x0; + break; + case 0x0: + } +} +#ifdef NONMATCHING + +void sub_8115238(void) +{ + u8 i; + u32 temp; + struct PlttData t; + struct PlttData *unfaded; + struct PlttData *faded; + struct StructgUnknown_083F8DF4 *s0; + struct PlttData arr[0x3]; // the third is never used ? + memcpy(&arr, &gUnknown_083F8EC4, 0x6); + memset(eRoulette, 0x0, 0x17C); + eRoulette->var04_0 = (gSpecialVar_0x8004 & 0x1); + if (gSpecialVar_0x8004 & 0x80) + eRoulette->var04_7 = 0x1; + s0 = &gUnknown_083F8DF4[0]; + eRoulette->var22 = s0[eRoulette->var04_0].var03; + eRoulette->var23 = s0[eRoulette->var04_0].var04; + temp = gUnknown_083F8DF0[eRoulette->var04_0 + eRoulette->var04_7 * 2]; + eRoulette->var19 = temp; + eRoulette->var1A_4 = 0x1; + if (temp == 0x1) + { + unfaded = (struct PlttData *)&gPlttBufferUnfaded[0]; + faded = (struct PlttData *)&gPlttBufferFaded[0]; + t = arr[0]; + } + else + { + unfaded = (struct PlttData *)&gPlttBufferUnfaded[0]; + faded = (struct PlttData *)&gPlttBufferFaded[0]; + t = arr[1]; + } + faded[0x51] = t; + faded[0x0] = faded[0x51]; + unfaded[0x51] = t; + unfaded[0x0] = t; + sub_8124918((&eRoulette->varB8)); + for (i = 0; i < 0xD; i++) + sub_812492C((&eRoulette->varB8), i, (struct UnkStruct1 *)&gUnknown_083F8E34[i * 8]); + for (i = 0; i < 0x6; i++) + { + switch (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2)) + { + case SPECIES_TAILLOW: + eRoulette->var02 |= 0x2; + break; + case SPECIES_SHROOMISH: + eRoulette->var02 |= 0x1; + break; + } + } + RtcCalcLocalTime(); +} +#else +__attribute__((naked)) +void sub_8115238(void) +{ + asm(".syntax unified\n\ + push {r4-r6,lr}\n\ + sub sp, 0x8\n\ + ldr r1, _081152C0 @ =gUnknown_083F8EC4\n\ + mov r0, sp\n\ + movs r2, 0x6\n\ + bl memcpy\n\ + ldr r5, _081152C4 @ =0x02019000\n\ + movs r2, 0xBE\n\ + lsls r2, 1\n\ + adds r0, r5, 0\n\ + movs r1, 0\n\ + bl memset\n\ + ldr r0, _081152C8 @ =gSpecialVar_0x8004\n\ + ldrh r2, [r0]\n\ + movs r0, 0x1\n\ + ands r0, r2\n\ + ldrb r1, [r5, 0x4]\n\ + movs r3, 0x4\n\ + negs r3, r3\n\ + ands r3, r1\n\ + orrs r3, r0\n\ + strb r3, [r5, 0x4]\n\ + movs r0, 0x80\n\ + ands r0, r2\n\ + cmp r0, 0\n\ + beq _08115276\n\ + movs r0, 0x80\n\ + orrs r3, r0\n\ + strb r3, [r5, 0x4]\n\ + _08115276:\n\ + ldr r3, _081152CC @ =gUnknown_083F8DF4\n\ + ldrb r2, [r5, 0x4]\n\ + lsls r1, r2, 30\n\ + lsrs r0, r1, 25\n\ + adds r0, r3\n\ + ldrb r0, [r0, 0x3]\n\ + adds r4, r5, 0\n\ + adds r4, 0x22\n\ + strb r0, [r4]\n\ + lsrs r0, r1, 25\n\ + adds r0, r3\n\ + ldrb r0, [r0, 0x4]\n\ + adds r3, r5, 0\n\ + adds r3, 0x23\n\ + strb r0, [r3]\n\ + ldr r0, _081152D0 @ =gUnknown_083F8DF0\n\ + lsrs r1, 30\n\ + lsls r2, 24\n\ + lsrs r2, 31\n\ + lsls r2, 1\n\ + adds r1, r2\n\ + adds r1, r0\n\ + ldrb r2, [r1]\n\ + strb r2, [r5, 0x19]\n\ + ldrb r1, [r5, 0x1A]\n\ + movs r0, 0xF\n\ + ands r0, r1\n\ + movs r1, 0x10\n\ + orrs r0, r1\n\ + strb r0, [r5, 0x1A]\n\ + cmp r2, 0x1\n\ + bne _081152DC\n\ + ldr r4, _081152D4 @ =gPlttBufferUnfaded\n\ + ldr r3, _081152D8 @ =gPlttBufferFaded\n\ + mov r0, sp\n\ + ldrh r2, [r0]\n\ + b _081152E4\n\ + .align 2, 0\n\ + _081152C0: .4byte gUnknown_083F8EC4\n\ + _081152C4: .4byte 0x02019000\n\ + _081152C8: .4byte gSpecialVar_0x8004\n\ + _081152CC: .4byte gUnknown_083F8DF4\n\ + _081152D0: .4byte gUnknown_083F8DF0\n\ + _081152D4: .4byte gPlttBufferUnfaded\n\ + _081152D8: .4byte gPlttBufferFaded\n\ + _081152DC:\n\ + ldr r4, _08115348 @ =gPlttBufferUnfaded\n\ + ldr r3, _0811534C @ =gPlttBufferFaded\n\ + mov r0, sp\n\ + ldrh r2, [r0, 0x2]\n\ + _081152E4:\n\ + adds r0, r3, 0\n\ + adds r0, 0xA2\n\ + strh r2, [r0]\n\ + ldr r1, _08115350 @ =0x0000ffff\n\ + adds r0, r1, 0\n\ + ands r0, r2\n\ + strh r0, [r3]\n\ + ands r0, r1\n\ + adds r2, r4, 0\n\ + adds r2, 0xA2\n\ + strh r0, [r2]\n\ + ands r0, r1\n\ + strh r0, [r4]\n\ + ldr r0, _08115354 @ =0x020190b8\n\ + bl sub_8124918\n\ + movs r4, 0\n\ + ldr r5, _08115358 @ =gUnknown_083F8E34\n\ + _08115308:\n\ + lsls r2, r4, 3\n\ + adds r2, r5\n\ + ldr r0, _08115354 @ =0x020190b8\n\ + adds r1, r4, 0\n\ + bl sub_812492C\n\ + adds r0, r4, 0x1\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0xC\n\ + bls _08115308\n\ + movs r4, 0\n\ + ldr r5, _0811535C @ =0x02019000\n\ + _08115322:\n\ + movs r0, 0x64\n\ + muls r0, r4\n\ + ldr r1, _08115360 @ =gPlayerParty\n\ + adds r0, r1\n\ + movs r1, 0x41\n\ + bl GetMonData\n\ + adds r1, r0, 0\n\ + movs r0, 0x98\n\ + lsls r0, 1\n\ + cmp r1, r0\n\ + beq _08115364\n\ + adds r0, 0x2\n\ + cmp r1, r0\n\ + bne _0811536C\n\ + ldrb r0, [r5, 0x2]\n\ + movs r1, 0x1\n\ + b _08115368\n\ + .align 2, 0\n\ + _08115348: .4byte gPlttBufferUnfaded\n\ + _0811534C: .4byte gPlttBufferFaded\n\ + _08115350: .4byte 0x0000ffff\n\ + _08115354: .4byte 0x020190b8\n\ + _08115358: .4byte gUnknown_083F8E34\n\ + _0811535C: .4byte 0x02019000\n\ + _08115360: .4byte gPlayerParty\n\ + _08115364:\n\ + ldrb r0, [r5, 0x2]\n\ + movs r1, 0x2\n\ + _08115368:\n\ + orrs r0, r1\n\ + strb r0, [r5, 0x2]\n\ + _0811536C:\n\ + adds r0, r4, 0x1\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0x5\n\ + bls _08115322\n\ + bl RtcCalcLocalTime\n\ + add sp, 0x8\n\ + pop {r4-r6}\n\ + pop {r0}\n\ + bx r0\n\ + .syntax divided\n"); +} +#endif + +void sub_8115384(void) +{ + u32 temp_IME; + u8 taskid; + switch (gMain.state) + { + case 0x0: + SetVBlankCallback(NULL); + remove_some_task(); + sub_80F9438(); + sub_80F9368(); + REG_BG2CNT = 0x4686; + REG_BG1CNT = 0x4401; + REG_BLDCNT = 0x2400; + REG_BLDALPHA = 0x060A; + LZ77UnCompVram(&gUnknown_08E8096C, (void *)VRAM); + LZ77UnCompVram(&gRouletteWheelTiles, (void *)(VRAM + 0x4000)); + gMain.state++; + break; + case 0x1: + ResetPaletteFade(); + ResetSpriteData(); + ResetTasks(); + gMain.state++; + break; + case 0x2: + SetUpWindowConfig(&gWindowConfig_81E6C3C); + InitMenuWindow(&gWindowConfig_81E6CE4); + LoadPalette(&gUnknown_083F86BC, 0x0, 0x1C0); + gMain.state++; + break; + case 0x3: + sub_8115238(); + sub_80F9020(); + LZ77UnCompWram(&gUnknown_083F88BC, (void *)(ewram18800)); + LZ77UnCompVram(&gUnknown_083F8A60, (void *)(VRAM + 0x3000)); + gMain.state++; + break; + case 0x4: + sub_8117838(0x0); + sub_811857C(); + sub_81184D8(); + sub_8117F2C(); + sub_8117900(); + sub_8117BBC(); + sub_8117DF4(); + gMain.state++; + break; + case 0x5: + AnimateSprites(); + BuildOamBuffer(); + sub_81180F4(gSaveBlock1.coins); + sub_81182F8(0x6); + sub_811829C(0x0); + sub_8117158(0x0); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C4157[0], 0x1, 0xF); + gSpriteCoordOffsetX = -0x3C; + gSpriteCoordOffsetY = 0x0; + gMain.state++; + break; + case 0x6: + REG_DISPCNT = 0x1741; + gMain.state++; + break; + case 0x7: + temp_IME = REG_IME; + REG_IME = 0x0; //disable interrupts + REG_IE |= 0x1; //enable VBlank interrupt + REG_IME = temp_IME; //reenable interrupts + REG_DISPSTAT |= 0x8; + SetVBlankCallback(&sub_8115124); + BeginHardwarePaletteFade(0xFF, 0x0, 0x10, 0x0 , 0x1); + taskid = eRoulette->varA4 = CreateTask(&sub_81156BC, 0x0); + gTasks[taskid].data[0x6] = 0x6; + gTasks[taskid].data[0xD] = gSaveBlock1.coins; + eRoulette->varA5 = CreateTask(&sub_8115634, 0x1); + SetMainCallback2(&sub_81150FC); + break; + } +} + +void sub_8115634(u8 unused) +{ + s16 sin; + s16 cos; + s32 cos32; + if (eRoulette->var21++ == eRoulette->var23) + { + eRoulette->var21 = 0x0; + if ((eRoulette->var24 -= eRoulette->var22) < 0) + eRoulette->var24 = 0x168 - eRoulette->var22; + } + sin = Sin2(eRoulette->var24); + cos = Cos2(eRoulette->var24); + sin = sin / 16; + cos32 = cos / 16; + eRoulette->var2C.d = cos32; + eRoulette->var2C.a = cos32; + eRoulette->var2C.b = sin; + eRoulette->var2C.c = -sin; +} + +void sub_81156BC(u8 taskid) +{ + if (UpdatePaletteFade() == 0) + { + REG_BLDCNT |= 0x2400; + REG_BLDALPHA = 0x0808; + gTasks[taskid].data[0x6] = 0; + sub_8116CAC(taskid); + sub_8116CF8(); + sub_81185E8(); + sub_8117158(0); + sub_81182F8(0x6); + sub_8116C34(taskid, &sub_81159BC, 0xFFFF, 0x3); + } +} + +void sub_8115734(u8 taskid) +{ + DisplayYesNoMenu(0x14, 0x8, 0x1); + sub_814AAF8(0x2D9E); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C41E3, 0x1, 0xF); + DoYesNoFuncWithChoice(taskid, &gUnknown_083F8EBC); +} + +void sub_811577C(u8 taskid) +{ + MenuZeroFillWindowRect(0x14, 0x8, 0x1A, 0xD); + gTasks[taskid].func = &sub_81159BC; +} + +void sub_81157AC(u8 taskid) +{ + DestroyTask(eRoulette->varA5); + sub_8116AB0(taskid); +} + +void sub_81157D0(u8 r0) +{ + u8 temp0, temp1; + switch (r0) + { + case 0x0: + sub_8124DDC(&gBGTilemapBuffers[2][0], 0x0, 0xE, 0x7, 0x10, 0xD); + break; + case 0x1: + case 0x2: + case 0x3: + case 0x4: + temp0 = (r0 * 3 + 0xE); + sub_8124DDC(&gBGTilemapBuffers[2][0], 0x0, 0xE, 0x7, 0x10, 0xD); + sub_8124E2C(&gBGTilemapBuffers[2][0], ewram18a32, temp0, 0x7, 0x3, 0xD); + break; + case 0x5: + case 0xA: + case 0xF: + temp1 = ((r0 - 1) / 5 * 3 + 0xA); + sub_8124DDC(&gBGTilemapBuffers[2][0], 0x0, 0xE, 0x7, 0x10, 0xD); + sub_8124E2C(&gBGTilemapBuffers[2][0], ewram18a80, 0xE, temp1, 0x10, 0x3); + break; + default: + temp0 = ((r0 % 5) * 3 + 0xE); + temp1 = ((r0 - 1) / 5 * 3 + 0x7); + sub_8124DDC(&gBGTilemapBuffers[2][0], 0x0, 0xE, 0x7, 0x10, 0xD); + sub_8124E2C(&gBGTilemapBuffers[2][0], ewram18a20, temp0, temp1, 0x3, 0x3); + } +} + +void sub_8115928(u8 taskid, u8 r1) +{ + if (!r1) + sub_811829C(gTasks[taskid].data[0x4]); + else + sub_811829C(eRoulette->var1B[eRoulette->var1A_0]); + sub_81157D0(gTasks[taskid].data[0x4]); +} + +void sub_811597C(u8 taskid) +{ + eRoulette->var28 = 0x1; + sub_81157D0(gTasks[taskid].data[0x4]); + eRoulette->var23 = 0x2; + eRoulette->var21 = 0x0; + gTasks[taskid].func = &sub_8115E14; +} + +void sub_81159BC(u8 taskid) +{ + s16 i; + if(eRoulette->var08 & 0x20) + { + for (i = 0xB; (i < 0xE); i++) + if ((eRoulette->var08 & gUnknown_083F8C00[i].var08) == 0) + break; + } + else + { + for (i = 0x6; (i < 0xA); i++) + if ((eRoulette->var08 & gUnknown_083F8C00[i].var08) == 0) + break; + } + gTasks[taskid].data[0x4] = i; + sub_8116CAC(taskid); + sub_8117158(gTasks[taskid].data[0x4]); + sub_811829C(gTasks[taskid].data[0x4]); + sub_8116EF8(gTasks[taskid].data[0x4]); + gTasks[taskid].data[0x1] = 0x0; + gTasks[taskid].func = &sub_811597C; +} + +u8 sub_8115A94(s16 *r0, u8 r1) +{ + s8 temp1 = 0; + s8 temp = 0; + s8 arr[0x4]; + s8 t; + memcpy(&arr, gUnknown_083F8ECA, 0x4); + t = (u8)*r0; + switch (r1) + { + case 0x0: + case 0x1: + temp1 = (*r0 % 5); + temp = temp1 + 0xF; + if (temp1 == 0) + temp1 = 0x5; + break; + case 0x2: + case 0x3: + temp1 = (s16)(*r0 / 5) * 5; + temp = temp1 + 0x4; + if (temp1 == 0) + temp1 = 0x1; + break; + } + *r0 += arr[r1]; + if (*r0 < temp1) + *r0 = temp; + if (*r0 > temp) + *r0 = temp1; + if (*r0 != t) + return TRUE; + return FALSE; +} + +void sub_8115B58(u8 r0) +{ + u8 z = 0x0; + bool8 var0 = FALSE; + if (!(gMain.newKeys & DPAD_UP) || ((var0 = TRUE), sub_8115A94(&gTasks[r0].data[0x4], 0x0))) + if (!(gMain.newKeys & DPAD_DOWN) || ((var0 = TRUE), sub_8115A94(&gTasks[r0].data[0x4], 0x1))) + if (!(gMain.newKeys & DPAD_LEFT) || ((var0 = TRUE), sub_8115A94(&gTasks[r0].data[0x4], 0x2))) + if (!(gMain.newKeys & DPAD_RIGHT) || ((var0 = TRUE), sub_8115A94(&gTasks[r0].data[0x4], 0x3))) + if (var0) + { + u8 i; + sub_8117158(gTasks[r0].data[0x4]); + sub_8115928(r0, FALSE); + gTasks[r0].data[0x1] = z; + PlaySE(SE_SELECT); + sub_8124D3C((&eRoulette->varB8), 0xFFFF); + (&eRoulette->varB8)->var04[0xF].var00_7 = 0x0; + (&eRoulette->varB8)->var04[0xE].var00_7 = 0x0; + (&eRoulette->varB8)->var04[0xD].var00_7 = 0x0; + sub_8116EF8(gTasks[r0].data[0x4]); + for (i = 0; i < 0x4; i++) + { + gSprites[eRoulette->var3C[i + 0x29]].oam.tileNum = + gSprites[eRoulette->var3C[i + 0x29]].sheetTileStart + + (*gSprites[eRoulette->var3C[i + 0x29]].anims)->type; + } + if ((u16)(gTasks[r0].data[0x4] - 1) < 0x4 && !(eRoulette->var08 & gUnknown_083F8C00[gTasks[r0].data[0x4]].var08) ) + { + z = gTasks[r0].data[0x4] - 1; + gSprites[eRoulette->var3C[z + 0x29]].oam.tileNum = + gSprites[eRoulette->var3C[z + 0x29]].sheetTileStart + + (*gSprites[eRoulette->var3C[z + 0x29]].anims + 1)->type; + } + } +} + +void sub_8115D58(u8 r0) +{ + eRoulette->var28 = 0xFF; + if (eRoulette->var19 == 1) + eRoulette->var23 = 1; + else + eRoulette->var23 = 0; + eRoulette->var21 = 0; + gTasks[r0].data[0x1] = 0x20; + gTasks[r0].func = &sub_8115ECC; +} + +void sub_8115DA0(u8 taskid) +{ + eRoulette->var1B[eRoulette->var1A_0] = gTasks[taskid].data[0x4]; + gTasks[taskid].data[0x2] = sub_8117380(eRoulette->var1B[eRoulette->var1A_0]); + sub_811829C(eRoulette->var1B[eRoulette->var1A_0]); + if ((gTasks[taskid].data[0xD] -= eRoulette->var19) < 0) + gTasks[taskid].data[0xD] = 0; + sub_81180F4(gTasks[taskid].data[0xD]); + gTasks[taskid].func = &sub_8115D58; +} + +void sub_8115E14(u8 taskid) +{ + sub_8115B58(taskid); + switch (gTasks[taskid].data[0x1]) + { + case 0x0: + sub_81157D0(gTasks[taskid].data[0x4]); + gTasks[taskid].data[0x1]+= 1; + break; + case 0x1E: + sub_81157D0(0); + gTasks[taskid].data[0x1]+= 1; + break; + case 0x3B: + gTasks[taskid].data[0x1] = 0; + break; + default: + gTasks[taskid].data[0x1]++; + } + if (gMain.newKeys & A_BUTTON) + { + if ((eRoulette->var08 & gUnknown_083F8C00[gTasks[taskid].data[0x4]].var08)) + PlaySE(SE_BOO); + else + { + m4aSongNumStart(SE_REGI); + gTasks[taskid].func = &sub_8115DA0; + } + } +} + +void sub_8115ECC(u8 taskid) +{ + if (gTasks[taskid].data[0x1]-- > 0) + { + if (gTasks[taskid].data[0x1] > 0x2) + gSpriteCoordOffsetX += 0x2; + if ((eRoulette->var26 += 0x4) == 0x68) + gSprites[eRoulette->var3C[0x19]].callback = &SpriteCallbackDummy; + } + else + { + sub_8117AA8(0x1, 0xFF); + sub_8117C60(0x1, 0xFF); + gTasks[taskid].func = &sub_8116100; + gTasks[taskid].data[0x1] = 0; + } +} + +u8 sub_8115F58(u16 r0, u16 r1) +{ + u8 timeh; + switch (eRoulette->var02) + { + case 0x1: // SHROOMISH + case 0x2: // TAILLOW + // one of the two is in party + timeh = gLocalTime.hours - 0x4; + if (!(timeh > 0x5)) + { + if (!(r0 < 0xC || (r1 & 0x1))) + return 0x1; + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 2; + } + } + else if (!(r1 & 0x3)) + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 2; + } + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02; + } + break; + case 0x3: + // both are in party + timeh = gLocalTime.hours - 0x4; + if (!(timeh > 0x6)) + { + if (r0 < 0x6 || (r1 & 0x1)) + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 2; + } + else + { + return 0x1; + } + } + else if ((r1 & 0x1) && !(r0 < 0x7)) + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 4; + } + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 2; + } + break; + case 0: + default: + // neither is in party + timeh = gLocalTime.hours - 0x4; + if (!(timeh > 5)) + { + if (!(r1 & 0x3)) + { + return 0x1; + } + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 2; + } + } + else if (!(r1 & 0x3)) + { + if (!(r0 < 0xD)) + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02 / 2; + } + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02; + } + } + else if (r1 & (0x80 << 8)) + { + if (!(r0 < 0xD)) + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var02; + } + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var01; + } + } + else + { + struct StructgUnknown_083F8DF4 *p = &gUnknown_083F8DF4[0]; + return p[eRoulette->var04_0].var01 * 2; + } + } +} + +#ifdef NONMATCHING +void sub_8116100(u8 taskid) +{ + u8 randf; + s8 randfinal; + s8 r5; + u16 g; + u16 rand; + u16 randmod; + u16 angles[0x4]; // angles in 90 degree steps + u8 zero = 0x0; + memcpy(angles, &gUnknown_083F8ECE, 0x8); + rand = Random(); + randmod = rand % 0x64; + eRoulette->var7C = gTasks[taskid].data[0x6]; + eRoulette->var7F = zero; + eRoulette->var7E = zero; + eRoulette->var7D = zero; + randf = sub_8115F58(gTasks[taskid].data[0x8], rand); + randfinal = (rand % randf) - (randf / 2); + if (gLocalTime.hours < 0xD) + r5 = 0x0; + else + r5 = 0x1; + if (randmod < 0x50) + r5 *= 2; + else + r5 = (1 - r5) * 2; + g = (&gUnknown_083F8DF4[eRoulette->var04_0])->var1A; + eRoulette->var80 = (g + randfinal); + // + g = ((float)(u16)(g + randfinal)) / 5.0f; + eRoulette->var82 = g * 3; + eRoulette->var84 = g; + eRoulette->var86 = g; + // + eRoulette->var88 = (float)(angles[(rand & 0x1) + r5]); + eRoulette->var8C = (float)((&gUnknown_083F8DF4[eRoulette->var04_0])->var18); + eRoulette->var90 = ((eRoulette->var8C * 0.5f) - eRoulette->var8C) / (float)(u16)(g * 3); + eRoulette->var94 = 68.0f; + eRoulette->var9C = 0.0f; + eRoulette->var98 = -(8.0f / (float)(u16)(g * 3)); + eRoulette->varA0 = 36.0f; + gTasks[taskid].func = &sub_8116308; +} +#else +__attribute__((naked)) +void sub_8116100(u8 taskid) +{ +asm(".syntax 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, 0x8\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +mov r9, r0\n\ +movs r4, 0\n\ +ldr r1, _08116188 @ =gUnknown_083F8ECE\n\ +mov r0, sp\n\ +movs r2, 0x8\n\ +bl memcpy\n\ +bl Random\n\ +lsls r0, 16\n\ +lsrs r7, r0, 16\n\ +adds r0, r7, 0\n\ +movs r1, 0x64\n\ +bl __umodsi3\n\ +lsls r0, 16\n\ +lsrs r6, r0, 16\n\ +ldr r3, _0811618C @ =0x02019000\n\ +ldr r1, _08116190 @ =gTasks\n\ +mov r2, r9\n\ +lsls r0, r2, 2\n\ +add r0, r9\n\ +lsls r0, 3\n\ +adds r0, r1\n\ +ldrh r2, [r0, 0x14]\n\ +adds r1, r3, 0\n\ +adds r1, 0x7C\n\ +strb r2, [r1]\n\ +adds r1, 0x3\n\ +strb r4, [r1]\n\ +subs r1, 0x1\n\ +strb r4, [r1]\n\ +subs r1, 0x1\n\ +strb r4, [r1]\n\ +ldrh r0, [r0, 0x18]\n\ +adds r1, r7, 0\n\ +bl sub_8115F58\n\ +adds r4, r0, 0\n\ +lsls r4, 24\n\ +lsrs r1, r4, 24\n\ +adds r0, r7, 0\n\ +bl __modsi3\n\ +lsrs r4, 25\n\ +subs r0, r4\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r0, _08116194 @ =gLocalTime\n\ +ldrb r0, [r0, 0x2]\n\ +lsls r0, 24\n\ +asrs r0, 24\n\ +movs r5, 0x1\n\ +cmp r0, 0xC\n\ +bgt _08116180\n\ +movs r5, 0\n\ +_08116180:\n\ +cmp r6, 0x4F\n\ +bhi _08116198\n\ +lsls r0, r5, 25\n\ +b _081161A2\n\ +.align 2, 0\n\ +_08116188: .4byte gUnknown_083F8ECE\n\ +_0811618C: .4byte 0x02019000\n\ +_08116190: .4byte gTasks\n\ +_08116194: .4byte gLocalTime\n\ +_08116198:\n\ +lsls r1, r5, 24\n\ +asrs r1, 24\n\ +movs r0, 0x1\n\ +subs r0, r1\n\ +lsls r0, 25\n\ +_081161A2:\n\ +lsrs r5, r0, 24\n\ +ldr r6, _081162D8 @ =0x02019000\n\ +ldrb r0, [r6, 0x4]\n\ +lsls r0, 30\n\ +mov r10, r0\n\ +lsrs r0, 25\n\ +ldr r1, _081162DC @ =gUnknown_083F8DF4\n\ +adds r0, r1\n\ +lsls r4, 24\n\ +asrs r4, 24\n\ +ldrh r0, [r0, 0x1A]\n\ +adds r4, r0\n\ +adds r0, r6, 0\n\ +adds r0, 0x80\n\ +strh r4, [r0]\n\ +lsls r4, 16\n\ +asrs r4, 16\n\ +adds r0, r4, 0\n\ +bl __floatsisf\n\ +cmp r4, 0\n\ +bge _081161D4\n\ +ldr r1, _081162E0 @ =0x47800000\n\ +bl __addsf3\n\ +_081161D4:\n\ +ldr r1, _081162E4 @ =0x40a00000\n\ +bl __divsf3\n\ +bl __fixunssfsi\n\ +lsls r0, 16\n\ +lsrs r4, r0, 16\n\ +lsls r0, r4, 1\n\ +adds r0, r4\n\ +mov r8, r0\n\ +adds r0, r6, 0\n\ +adds r0, 0x82\n\ +mov r2, r8\n\ +strh r2, [r0]\n\ +adds r0, 0x2\n\ +strh r4, [r0]\n\ +adds r0, 0x2\n\ +strh r4, [r0]\n\ +movs r0, 0x1\n\ +ands r0, r7\n\ +lsls r1, r5, 24\n\ +asrs r1, 24\n\ +adds r0, r1\n\ +lsls r0, 1\n\ +add r0, sp\n\ +movs r1, 0\n\ +ldrsh r4, [r0, r1]\n\ +adds r0, r4, 0\n\ +bl __floatsisf\n\ +cmp r4, 0\n\ +bge _0811621A\n\ +ldr r1, _081162E0 @ =0x47800000\n\ +bl __addsf3\n\ +_0811621A:\n\ +ldr r2, _081162E8 @ =0x02019088\n\ +str r0, [r2]\n\ +adds r7, r6, 0\n\ +adds r7, 0x8C\n\ +mov r1, r10\n\ +lsrs r0, r1, 25\n\ +ldr r2, _081162DC @ =gUnknown_083F8DF4\n\ +adds r0, r2\n\ +movs r1, 0x18\n\ +ldrsh r4, [r0, r1]\n\ +adds r0, r4, 0\n\ +bl __floatsisf\n\ +adds r5, r0, 0\n\ +cmp r4, 0\n\ +bge _08116242\n\ +ldr r1, _081162E0 @ =0x47800000\n\ +bl __addsf3\n\ +adds r5, r0, 0\n\ +_08116242:\n\ +str r5, [r7]\n\ +adds r7, r6, 0\n\ +adds r7, 0x90\n\ +ldr r1, _081162EC @ =0x3f000000\n\ +adds r0, r5, 0\n\ +bl __mulsf3\n\ +adds r1, r5, 0\n\ +bl __subsf3\n\ +adds r5, r0, 0\n\ +mov r2, r8\n\ +lsls r0, r2, 16\n\ +asrs r4, r0, 16\n\ +adds r0, r4, 0\n\ +bl __floatsisf\n\ +adds r2, r0, 0\n\ +cmp r4, 0\n\ +bge _08116272\n\ +ldr r1, _081162E0 @ =0x47800000\n\ +bl __addsf3\n\ +adds r2, r0, 0\n\ +_08116272:\n\ +adds r0, r5, 0\n\ +adds r1, r2, 0\n\ +bl __divsf3\n\ +str r0, [r7]\n\ +adds r1, r6, 0\n\ +adds r1, 0x94\n\ +ldr r0, _081162F0 @ =0x42880000\n\ +str r0, [r1]\n\ +adds r1, 0x8\n\ +ldr r0, _081162F4 @ =0x00000000\n\ +str r0, [r1]\n\ +adds r5, r6, 0\n\ +adds r5, 0x98\n\ +adds r0, r4, 0\n\ +bl __floatsisf\n\ +adds r2, r0, 0\n\ +cmp r4, 0\n\ +bge _081162A2\n\ +ldr r1, _081162E0 @ =0x47800000\n\ +bl __addsf3\n\ +adds r2, r0, 0\n\ +_081162A2:\n\ +ldr r0, _081162F8 @ =0x41000000\n\ +adds r1, r2, 0\n\ +bl __divsf3\n\ +bl __negsf2\n\ +str r0, [r5]\n\ +adds r1, r6, 0\n\ +adds r1, 0xA0\n\ +ldr r0, _081162FC @ =0x42100000\n\ +str r0, [r1]\n\ +ldr r1, _08116300 @ =gTasks\n\ +mov r2, r9\n\ +lsls r0, r2, 2\n\ +add r0, r9\n\ +lsls r0, 3\n\ +adds r0, r1\n\ +ldr r1, _08116304 @ =sub_8116308\n\ +str r1, [r0]\n\ +add sp, 0x8\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\ +.align 2, 0\n\ +_081162D8: .4byte 0x02019000\n\ +_081162DC: .4byte gUnknown_083F8DF4\n\ +_081162E0: .4byte 0x47800000\n\ +_081162E4: .4byte 0x40a00000\n\ +_081162E8: .4byte 0x02019088\n\ +_081162EC: .4byte 0x3f000000\n\ +_081162F0: .4byte 0x42880000\n\ +_081162F4: .4byte 0x00000000\n\ +_081162F8: .4byte 0x41000000\n\ +_081162FC: .4byte 0x42100000\n\ +_08116300: .4byte gTasks\n\ +_08116304: .4byte sub_8116308\n\ +.syntax divided\n"); +} +#endif + +void sub_8116308(u8 taskid) +{ + u8 index; + eRoulette->var03_7 = 1; + index = eRoulette->var3C[eRoulette->var7C]; + eRoulette->var38 = &gSprites[index]; + (&gSprites[index])->callback = &sub_81191F4; + gTasks[taskid].data[0x6]++; + gTasks[taskid].data[0x8]++; + sub_81182F8(0x6 - gTasks[taskid].data[0x6]); + m4aSongNumStart(SE_TAMAKORO); + gTasks[taskid].func = &sub_811637C; +} + +void sub_811637C(u8 taskid) +{ + if (eRoulette->var7D) + { + if (eRoulette->var03_5) + { + if (eRoulette->var03_6) + { + eRoulette->var03_6 = FALSE; + eRoulette->var03_5 = FALSE; + } + } + else + { + if (!gTasks[taskid].data[0x1]) + { + u8 temp = sub_8116E5C(sub_8116D54(taskid, eRoulette->var7E), eRoulette->var1B[eRoulette->var1A_0]); + gTasks[taskid].data[0x5] = temp; + if (temp == 1) + sub_8124CE8((&eRoulette->varB8), 0x1000); + } + if (gTasks[taskid].data[0x1] < 0x3D) + { + if (gMain.newKeys & A_BUTTON) + gTasks[taskid].data[0x1] = 0x3C; + gTasks[taskid].data[0x1]++; + } + else + { + sub_8117158(eRoulette->var1B[eRoulette->var1A_0]); + sub_8117AA8(0x0, (u8)gTasks[taskid].data[0xC]); + sub_8117C60(0x0, (u8)gTasks[taskid].data[0x6] - 0x1); + gTasks[taskid].data[0x1] = 0x20; + gTasks[taskid].func = &sub_8116474; + } + } + } +} + +void sub_8116474(u8 taskid) +{ + if (gTasks[taskid].data[0x1]-- > 0x0) + { + if(gTasks[taskid].data[0x1] > 0x2) + gSpriteCoordOffsetX -= 0x2; + if((eRoulette->var26 -= 0x4) == 0x68) + gSprites[eRoulette->var3C[0x19]].callback = &sub_81184CC; + } + else + { + sub_8117D68(gTasks[taskid].data[0xC]); + if (gTasks[taskid].data[0x5] == 1) + gTasks[taskid].data[0x1] = 0x79; + else + gTasks[taskid].data[0x1] = 0x3D; + gTasks[taskid].func = &sub_8116514; + } +} + +void sub_8116514(u8 taskid) +{ + if (gTasks[taskid].data[0x1]-- > 0x1) + { + switch(gTasks[taskid].data[0x1] % 0x10) + { + case 0x8: + sub_8117AA8(0x0, 0xFF); + sub_8117C60(0x0, 0xFF); + break; + case 0x0: + sub_8117AA8(0x0, (u8)gTasks[taskid].data[0xC]); + sub_8117C60(0x0, (u8)gTasks[taskid].data[0x6] - 0x1); + break; + } + } + else + { + sub_8116C34(taskid, &sub_8116638, 0x1E, 0x0); + } +} + +void sub_811659C(u8 taskid) +{ + switch(gTasks[taskid].data[0x5]) + { + case 0x1: + case 0x2: + if (IsFanfareTaskInactive()) + { + u32 wins = GetGameStat(GAME_STAT_CONSECUTIVE_ROULETTE_WINS); + if(wins < ++gTasks[taskid].data[0xB]) + SetGameStat(GAME_STAT_CONSECUTIVE_ROULETTE_WINS, gTasks[taskid].data[0xB]); + sub_8116C34(taskid, &sub_811677C, 0xFFFF, 0x3); + } + break; + case 0: + default: + if (!IsSEPlaying()) + { + gTasks[taskid].data[0xB] = FALSE; + sub_8116C34(taskid, &sub_81167F4, 0xFFFF, 0x3); + } + } +} + +void sub_8116638(u8 taskid) +{ + switch(gTasks[taskid].data[0x5]) + { + case 0x1: + case 0x2: + if (gTasks[taskid].data[0x2] == 0xC) + { + PlayFanfare(BGM_ME_B_BIG); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C41A5, 0x1, 0xF); + } + else + { + PlayFanfare(BGM_ME_B_SMALL); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C4199, 0x1, 0xF); + } + break; + case 0: + default: + m4aSongNumStart(SE_HAZURE); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C41AE, 0x1, 0xF); + } + gTasks[taskid].data[0x1] = 0x0; + gTasks[taskid].func = &sub_811659C; +} + +void sub_81166E8(u8 taskid) +{ + s32 r0 = gTasks[taskid].data[0x7]; + switch(r0) + { + case 0x0: + gTasks[taskid].data[0xD]++; + m4aSongNumStart(SE_PIN); + sub_81180F4(gTasks[taskid].data[0xD]); + if (gTasks[taskid].data[0xD] > 0x270E) + { + gTasks[taskid].data[0x1] = r0; + } + else + { + gTasks[taskid].data[0x1]--; + gTasks[taskid].data[0x7]++; + } + break; + case 0x3: + m4aSongNumStop(SE_PIN); + gTasks[taskid].data[0x7] = 0x0; + break; + default: + gTasks[taskid].data[0x7]++; + } + if (gTasks[taskid].data[0x1] == 0x0) + sub_8116C34(taskid, &sub_81167F4, 0xFFFF, 0x3); +} + +void sub_811677C(u8 taskid) +{ + ConvertIntToDecimalStringN((u8 *)&gStringVar1, (eRoulette->var19 * gTasks[taskid].data[0x2]), STR_CONV_MODE_LEFT_ALIGN, 0x2); + StringExpandPlaceholders((u8 *)&gStringVar4, &gUnknown_081C41BD); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint((u8 *)&gStringVar4, 0x1, 0xF); + gTasks[taskid].data[0x1] = (eRoulette->var19 * gTasks[taskid].data[0x2]); + gTasks[taskid].data[0x7] = 0x0; + gTasks[taskid].func = &sub_81166E8; +} + +void sub_81167F4(u8 taskid) +{ + sub_8124D3C((&eRoulette->varB8), 0xFFFF); + (&eRoulette->varB8)->var04[0xF].var00_7 = 0x0; + (&eRoulette->varB8)->var04[0xE].var00_7 = 0x0; + (&eRoulette->varB8)->var04[0xD].var00_7 = 0x0; + gSprites[eRoulette->var3C[0x7 + gUnknown_083F8C00[gTasks[taskid].data[0xC]].var00]].invisible = TRUE; + gTasks[taskid].func = &sub_8116880; +} + +void sub_8116880(u8 taskid) +{ + u8 i = 0; + gTasks[taskid].data[0x4] = i; + eRoulette->var1B[eRoulette->var1A_0] = 0x0; + sub_8117158(0x0); + gSprites[eRoulette->var3C[0x30]].invisible = TRUE; + for (i = 0; i < 0x4; i++) + { + gSprites[eRoulette->var3C[i + 0x29]].oam.tileNum = + gSprites[eRoulette->var3C[i + 0x29]].sheetTileStart + + (*gSprites[eRoulette->var3C[i + 0x29]].anims)->type; + } + if (!(gTasks[taskid].data[0xD] < eRoulette->var19)) + { + if (gTasks[taskid].data[0x6] == 0x6) + { + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C41F1, 0x1, 0xF); + sub_8116C34(taskid, &dp01t_12_3_battle_menu, 0xFFFF, 0x3); + } + else if (gTasks[taskid].data[0xD] == 0x270F) + { + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C4231, 0x1, 0xF); + sub_8116C34(taskid, &sub_8115734, 0xFFFF, 0x3); + } + else + { + gTasks[taskid].func = &sub_8115734; + } + } + else + { + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C41D2, 0x1, 0xF); + sub_8116C34(taskid, &sub_81157AC, 0x3C, 0x3); + } +} + +void dp01t_12_3_battle_menu(u8 taskid) +{ + u8 i = 0x0; + gTasks[taskid].data[0x6] = 0x0; + sub_8116CAC(taskid); + sub_8116CF8(); + sub_81185E8(); + sub_8117158(0x0); + sub_81182F8(0x6); + for (i = 0; i < 0xC; i++) + gSprites[eRoulette->var3C[i + 0x7]].invisible = FALSE; + if (gTasks[taskid].data[0xD] == 0x270F) + { + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C4231, 0x1, 0xF); + sub_8116C34(taskid, &sub_8115734, 0xFFFF, 0x3); + } + else + { + gTasks[taskid].func = &sub_8115734; + } +} + +void sub_8116AB0(u8 taskid) +{ + sub_8124D3C((&eRoulette->varB8), 0xFFFF); + sub_8124918((&eRoulette->varB8)); + gSaveBlock1.coins = gTasks[taskid].data[0xD]; + if (gSaveBlock1.coins < eRoulette->var19) + gSpecialVar_0x8004 = TRUE; + else + gSpecialVar_0x8004 = FALSE; + BeginHardwarePaletteFade(0xFF, 0x0, 0x0, 0x10, 0x0); + gTasks[taskid].func = &sub_8116B40; +} + +void sub_8116B40(u8 taskid) // end oulette ? +{ + if (UpdatePaletteFade() == 0) + { + SetVBlankCallback(0x0); + memset(eRoulette, 0x0, 0x17C); + gSpriteCoordOffsetX = gSpriteCoordOffsetY = 0x0; + sub_80F9368(); + FreeAllSpritePalettes(); + ResetPaletteFade(); + ResetSpriteData(); + sub_80F9020(); + REG_BLDCNT = 0x0; + REG_BLDALPHA = 0x0; + REG_BLDY = 0x0; + gFieldCallback = &sub_8080990; + SetMainCallback2(&c2_exit_to_overworld_2_switch); + DestroyTask(taskid); + } +} + +void sub_8116BC0(u8 taskid) +{ + if(eRoulette->varA8 == 0 || gMain.newKeys & eRoulette->varAA) + { + gTasks[taskid].func = eRoulette->varAC; + if (eRoulette->varAA > 0) + PlaySE(SE_SELECT); + eRoulette->varAC = NULL; + eRoulette->varAA = 0x0; + eRoulette->varA8 = 0x0; + } + if (eRoulette->varA8 != 0xFFFF) + eRoulette->varA8--; +} + +void sub_8116C34(u8 taskid, TaskFunc r1, u16 r2, u16 r3) +{ + eRoulette->varB4 = gTasks[taskid].func; + if(r1 == NULL) + r1 = eRoulette->varB4; + eRoulette->varAC = r1; + eRoulette->varA8 = r2; + if (r2 == 0xFFFF && r3 == 0) + eRoulette->varAA = 0xFFFF; + else + eRoulette->varAA = r3; + gTasks[taskid].func = &sub_8116BC0; +} + +void sub_8116CAC(u8 taskid) +{ + u8 i = 0; + eRoulette->var00 = i; + eRoulette->var03_0 = 0x0; + eRoulette->var03_5 = 0x0; + eRoulette->var03_6 = 0x0; + eRoulette->var03_7 = 0x0; + for (i = 0; i < 0x6; i++) + eRoulette->var1B[i] = 0x0; + eRoulette->var1A_0 = 0x0; + gTasks[taskid].data[0x1] = 0x0; +} + +void sub_8116CF8(void) +{ + u8 i; + eRoulette->var08 = 0x0; + for (i = 0; i < 0x6; i++) + eRoulette->var0C[i] = 0x0; + for (i = 0; i < 0x4; i++) + eRoulette->var12[i] = 0x0; + for (i = 0; i < 0x3; i++) + eRoulette->var16[i] = 0x0; + sub_8117C60(0x1, 0xFF); +} + +u8 sub_8116D54(u8 taskid, u8 r1) +{ + u32 t0[0x4]; + u32 t1[0x3]; + memcpy(t0, gUnknown_083F8ED8, 0x10); + memcpy(t1, gUnknown_083F8EE8, 0xC); + if (r1 > 0xB) + { + return 0x0; + } + else + { + u8 i; + u8 z; + eRoulette->var0C[gTasks[taskid].data[0x6] - 1] = gUnknown_083F8D90[r1].var02; + gTasks[taskid].data[0xC] = gUnknown_083F8D90[r1].var02; + eRoulette->var08 |= gUnknown_083F8D90[r1].var04; + for (i = 0; i < 0x4; i++) + { + if (gUnknown_083F8D90[r1].var04 & t0[i]) + eRoulette->var12[i]++; + if (eRoulette->var12[i] > 0x2) + eRoulette->var08 |= t0[i]; + } + for (z = 0; z < 0x3; z++) + { + if (gUnknown_083F8D90[r1].var04 & t1[z]) + eRoulette->var16[z]++; + if (eRoulette->var16[z] > 0x3) + eRoulette->var08 |= t1[z]; + } + return gUnknown_083F8D90[r1].var02; + } +} + +u8 sub_8116E5C(u8 r0, u8 r1) +{ + u8 t = r0; + if (--r0 < 0x13) + { + switch(r1) + { + case 0x0: + return 0x3; + break; + case 0x1 ... 0x4: + if (t == r1 + 5 || t == r1 + 10 || t == r1 + 15) + return 0x1; + break; + case 0x5: + case 0xA: + case 0xF: + if (!(t < r1 + 1) && !(t > r1 + 4)) + return 0x1; + break; + default: + if (t == r1) + return 0x1; + } + } + return 0x0; +} + +#ifdef NONMATCHING // stack variable switched with a register variable +void sub_8116EF8(u8 r0) +{ + + u32 var0 = 0x0; + struct UnkStruct1 var1[0x3]; + u32 var2; + u16 var3; + u32 var4; + u8 i; + switch(r0) + { + case 0x5: + case 0xA: + case 0xF: + for (i = (r0 + 0x1); i < (r0 + 0x5); i++) + if (!(eRoulette->var08 & gUnknown_083F8C00[i].var08)) + var0 |= gUnknown_083F8C00[i].var10; + var0 &= 0xDFFF; + sub_8124CE8(&eRoulette->varB8, var0); + break; + default: + memcpy(var1, gUnknown_083F8E9C, 0x18); + if ((u8)(r0 - 0x1) < 0x4) + var2 = 0x3; + else + var2 = 0x1; + var3 = ((r0 / 0x5) - 0x1); + switch((u8)r0 % 0x5) + { + case 0x1: + var3 = gSprites[eRoulette->var3C[0x7 + 0x0]].oam.paletteNum * 0x10; + break; + case 0x2: + var3 = gSprites[eRoulette->var3C[0x7 + 0x1]].oam.paletteNum * 0x10; + break; + case 0x3: + var3 = gSprites[eRoulette->var3C[0x7 + 0x2]].oam.paletteNum * 0x10; + break; + case 0x4: + var3 = gSprites[eRoulette->var3C[0x7 + 0x3]].oam.paletteNum * 0x10; + break; + } + if (var2 == 0x1) + { + if (!(eRoulette->var08 & gUnknown_083F8C00[r0].var08)) + { + var4 = (r0 / 0x5); + var1[var4 - 0x1].var02 += var3; + sub_812492C(&eRoulette->varB8, 0xD, &var1[var4 - 0x2]); + sub_8124CE8(&eRoulette->varB8, var0 |= gUnknown_083F8C00[r0].var10); + } + } + else + { + for (i = 0; i < 0x3; i++) + { + u8 var4 = i * 0x5 + r0 + 0x5; + if (!(eRoulette->var08 & gUnknown_083F8C00[var4].var08)) + { + u8 var5 = (var4 / 0x5); + var1[var5 - 0x1].var02 += var3; + sub_812492C(&eRoulette->varB8, (u8)(0xD + i), &var1[var5 - 0x2]); + if (var2 == 0x3) + var0 = gUnknown_083F8C00[var4].var10; + var2--; + } + } + if (var2 != 0x2) + var0 = 0x0; + sub_8124CE8(&eRoulette->varB8, var0 |= gUnknown_083F8C00[r0].var10); + } + } +} + +#else +__attribute__((naked)) +void sub_8116EF8(u8 r0) +{ +asm(".syntax 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, 0x20\n\ +lsls r0, 24\n\ +lsrs r6, r0, 24\n\ +movs r0, 0\n\ +str r0, [sp, 0x18]\n\ +cmp r6, 0xA\n\ +beq _08116F1E\n\ +cmp r6, 0xA\n\ +bgt _08116F1A\n\ +cmp r6, 0x5\n\ +beq _08116F1E\n\ +b _08116F7C\n\ +_08116F1A:\n\ +cmp r6, 0xF\n\ +bne _08116F7C\n\ +_08116F1E:\n\ +adds r0, r6, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +adds r0, r6, 0x5\n\ +ldr r7, _08116F70 @ =0x020190b8\n\ +cmp r4, r0\n\ +bge _08116F5E\n\ +adds r1, r7, 0\n\ +subs r1, 0xB8\n\ +ldr r3, _08116F74 @ =gUnknown_083F8C00\n\ +ldr r5, [r1, 0x8]\n\ +adds r6, r3, 0\n\ +adds r6, 0x8\n\ +adds r2, r0, 0\n\ +_08116F3A:\n\ +lsls r0, r4, 2\n\ +adds r0, r4\n\ +lsls r1, r0, 2\n\ +adds r0, r1, r6\n\ +ldr r0, [r0]\n\ +ands r0, r5\n\ +cmp r0, 0\n\ +bne _08116F54\n\ +adds r0, r1, r3\n\ +ldrh r0, [r0, 0x10]\n\ +ldr r1, [sp, 0x18]\n\ +orrs r1, r0\n\ +str r1, [sp, 0x18]\n\ +_08116F54:\n\ +adds r0, r4, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +cmp r4, r2\n\ +blt _08116F3A\n\ +_08116F5E:\n\ +ldr r0, _08116F78 @ =0x0000dfff\n\ +ldr r2, [sp, 0x18]\n\ +ands r2, r0\n\ +str r2, [sp, 0x18]\n\ +adds r0, r7, 0\n\ +adds r1, r2, 0\n\ +bl sub_8124CE8\n\ +b _0811713C\n\ +.align 2, 0\n\ +_08116F70: .4byte 0x020190b8\n\ +_08116F74: .4byte gUnknown_083F8C00\n\ +_08116F78: .4byte 0x0000dfff\n\ +_08116F7C:\n\ +mov r0, sp\n\ +ldr r1, _08116FC8 @ =gUnknown_083F8E9C\n\ +ldm r1!, {r2-r4}\n\ +stm r0!, {r2-r4}\n\ +ldm r1!, {r2-r4}\n\ +stm r0!, {r2-r4}\n\ +subs r0, r6, 0x1\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +movs r3, 0x1\n\ +mov r10, r3\n\ +cmp r0, 0x3\n\ +bhi _08116F9A\n\ +movs r4, 0x3\n\ +mov r10, r4\n\ +_08116F9A:\n\ +adds r0, r6, 0\n\ +movs r1, 0x5\n\ +bl __udivsi3\n\ +lsls r0, 24\n\ +lsrs r0, 8\n\ +ldr r1, _08116FCC @ =0xffff0000\n\ +adds r0, r1\n\ +lsrs r7, r0, 16\n\ +adds r0, r6, 0\n\ +movs r1, 0x5\n\ +bl __umodsi3\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +cmp r0, 0x2\n\ +beq _08116FF8\n\ +cmp r0, 0x2\n\ +bgt _08116FD4\n\ +cmp r0, 0x1\n\ +beq _08116FE4\n\ +ldr r4, _08116FD0 @ =0x02019000\n\ +b _0811703A\n\ +.align 2, 0\n\ +_08116FC8: .4byte gUnknown_083F8E9C\n\ +_08116FCC: .4byte 0xffff0000\n\ +_08116FD0: .4byte 0x02019000\n\ +_08116FD4:\n\ +cmp r0, 0x3\n\ +beq _0811700C\n\ +cmp r0, 0x4\n\ +beq _08117020\n\ +ldr r4, _08116FE0 @ =0x02019000\n\ +b _0811703A\n\ +.align 2, 0\n\ +_08116FE0: .4byte 0x02019000\n\ +_08116FE4:\n\ +ldr r3, _08116FF0 @ =gSprites\n\ +ldr r2, _08116FF4 @ =0x02019000\n\ +adds r0, r2, 0\n\ +adds r0, 0x43\n\ +b _08117028\n\ +.align 2, 0\n\ +_08116FF0: .4byte gSprites\n\ +_08116FF4: .4byte 0x02019000\n\ +_08116FF8:\n\ +ldr r3, _08117004 @ =gSprites\n\ +ldr r2, _08117008 @ =0x02019000\n\ +adds r0, r2, 0\n\ +adds r0, 0x44\n\ +b _08117028\n\ +.align 2, 0\n\ +_08117004: .4byte gSprites\n\ +_08117008: .4byte 0x02019000\n\ +_0811700C:\n\ +ldr r3, _08117018 @ =gSprites\n\ +ldr r2, _0811701C @ =0x02019000\n\ +adds r0, r2, 0\n\ +adds r0, 0x45\n\ +b _08117028\n\ +.align 2, 0\n\ +_08117018: .4byte gSprites\n\ +_0811701C: .4byte 0x02019000\n\ +_08117020:\n\ +ldr r3, _08117088 @ =gSprites\n\ +ldr r2, _0811708C @ =0x02019000\n\ +adds r0, r2, 0\n\ +adds r0, 0x46\n\ +_08117028:\n\ +ldrb r1, [r0]\n\ +lsls r0, r1, 4\n\ +adds r0, r1\n\ +lsls r0, 2\n\ +adds r0, r3\n\ +ldrb r0, [r0, 0x5]\n\ +lsrs r0, 4\n\ +lsls r7, r0, 4\n\ +adds r4, r2, 0\n\ +_0811703A:\n\ +mov r2, r10\n\ +cmp r2, 0x1\n\ +bne _08117094\n\ +ldr r1, _08117090 @ =gUnknown_083F8C00\n\ +lsls r2, r6, 2\n\ +adds r0, r2, r6\n\ +lsls r0, 2\n\ +adds r1, 0x8\n\ +adds r0, r1\n\ +ldr r1, [r4, 0x8]\n\ +ldr r0, [r0]\n\ +ands r1, r0\n\ +str r2, [sp, 0x1C]\n\ +cmp r1, 0\n\ +bne _0811713C\n\ +adds r0, r6, 0\n\ +movs r1, 0x5\n\ +bl __udivsi3\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +subs r1, r0, 0x1\n\ +lsls r1, 3\n\ +mov r3, sp\n\ +adds r2, r3, r1\n\ +ldrh r1, [r2, 0x2]\n\ +adds r1, r7, r1\n\ +strh r1, [r2, 0x2]\n\ +adds r1, r4, 0\n\ +adds r1, 0xB8\n\ +lsls r0, 3\n\ +subs r0, 0x8\n\ +adds r2, r3, r0\n\ +adds r0, r1, 0\n\ +movs r1, 0xD\n\ +bl sub_812492C\n\ +b _08117122\n\ +.align 2, 0\n\ +_08117088: .4byte gSprites\n\ +_0811708C: .4byte 0x02019000\n\ +_08117090: .4byte gUnknown_083F8C00\n\ +_08117094:\n\ +movs r4, 0\n\ +lsls r0, r6, 2\n\ +str r0, [sp, 0x1C]\n\ +ldr r1, _0811714C @ =0x02019000\n\ +mov r8, r1\n\ +ldr r2, _08117150 @ =gUnknown_083F8C00\n\ +mov r9, r2\n\ +_081170A2:\n\ +lsls r0, r4, 2\n\ +adds r0, r4\n\ +adds r0, r6, r0\n\ +adds r0, 0x5\n\ +lsls r0, 24\n\ +lsrs r2, r0, 24\n\ +lsls r0, r2, 2\n\ +adds r0, r2\n\ +lsls r5, r0, 2\n\ +mov r0, r9\n\ +adds r0, 0x8\n\ +adds r0, r5, r0\n\ +mov r3, r8\n\ +ldr r1, [r3, 0x8]\n\ +ldr r0, [r0]\n\ +ands r1, r0\n\ +cmp r1, 0\n\ +bne _0811710E\n\ +adds r0, r2, 0\n\ +movs r1, 0x5\n\ +bl __udivsi3\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +subs r1, r0, 0x1\n\ +lsls r1, 3\n\ +mov r3, sp\n\ +adds r2, r3, r1\n\ +ldrh r1, [r2, 0x2]\n\ +adds r1, r7, r1\n\ +strh r1, [r2, 0x2]\n\ +adds r1, r4, 0\n\ +adds r1, 0xD\n\ +lsls r1, 24\n\ +lsrs r1, 24\n\ +lsls r0, 3\n\ +subs r0, 0x8\n\ +adds r2, r3, r0\n\ +mov r0, r8\n\ +adds r0, 0xB8\n\ +bl sub_812492C\n\ +mov r0, r10\n\ +cmp r0, 0x3\n\ +bne _08117104\n\ +mov r1, r9\n\ +adds r0, r5, r1\n\ +ldrh r0, [r0, 0x10]\n\ +str r0, [sp, 0x18]\n\ +_08117104:\n\ +mov r0, r10\n\ +subs r0, 0x1\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +mov r10, r0\n\ +_0811710E:\n\ +adds r0, r4, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +cmp r4, 0x2\n\ +bls _081170A2\n\ +mov r2, r10\n\ +cmp r2, 0x2\n\ +beq _08117122\n\ +movs r3, 0\n\ +str r3, [sp, 0x18]\n\ +_08117122:\n\ +ldr r0, _08117154 @ =0x020190b8\n\ +ldr r2, _08117150 @ =gUnknown_083F8C00\n\ +ldr r4, [sp, 0x1C]\n\ +adds r1, r4, r6\n\ +lsls r1, 2\n\ +adds r1, r2\n\ +ldrh r1, [r1, 0x10]\n\ +ldr r2, [sp, 0x18]\n\ +orrs r2, r1\n\ +str r2, [sp, 0x18]\n\ +adds r1, r2, 0\n\ +bl sub_8124CE8\n\ +_0811713C:\n\ +add sp, 0x20\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\ +.align 2, 0\n\ +_0811714C: .4byte 0x02019000\n\ +_08117150: .4byte gUnknown_083F8C00\n\ +_08117154: .4byte 0x020190b8\n\ +.syntax divided\n"); +} +#endif + +#ifdef NONMATCHING //not enough stack usage +void sub_8117158(u8 r0) +{ + u8 i; + u8 l; + u8 v[0x5]; + u8 z; + u8 var0; + u8 var1; + u16 var2; + eRoulette->var2A = 0x1; + sub_8117AA8(0x0, 0x0); + sub_8124E2C(&gBGTilemapBuffers[2][0], ewram18800, 0xE, 0x7, 0x10, 0xD); + switch(r0) + { + case 0x0: + return; + case 0x1 ... 0x4: + l = 0x4; + for (i = 0x0; i < l; i++) + v[i] = i * 0x5 + r0; + break; + case 0x5: + case 0xA: + case 0xF: + l = 0x5; + for (i = 0x0; i < l; i++) + v[i] = i + r0; + break; + default: + l = 0x1; + v[0] = r0; + } + for (i = 0x0; i < l; i++) + { + //_0811727C + var0 = gUnknown_083F8C00[v[i]].var06; + var1 = gUnknown_083F8C00[v[i]].var03; + for (z = 0; z < 0x3; z++) + { + var2 = (gUnknown_083F8C00[v[i]].var04 + z) * 0x20; + gBGTilemapBuffers[2][var2 + var1 + 0x0] = ewram189a0[(var0 + z) * 0x3 + 0x0]; + gBGTilemapBuffers[2][var2 + var1 + 0x1] = ewram189a0[(var0 + z) * 0x3 + 0x1]; + gBGTilemapBuffers[2][var2 + var1 + 0x2] = ewram189a0[(var0 + z) * 0x3 + 0x2]; + } + //_08117350 + } +} +#else +__attribute__((naked)) +void sub_8117158(u8 r0) +{ +asm(".syntax 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, 0x24\n\ +lsls r0, 24\n\ +lsrs r5, r0, 24\n\ +ldr r4, _0811719C @ =0x02019000\n\ +movs r0, 0x1\n\ +strh r0, [r4, 0x2A]\n\ +movs r0, 0\n\ +movs r1, 0\n\ +bl sub_8117AA8\n\ +ldr r0, _081171A0 @ =gBGTilemapBuffers + 0x800\n\ +ldr r1, _081171A4 @ =0xfffff800\n\ +adds r4, r1\n\ +movs r1, 0x10\n\ +str r1, [sp]\n\ +movs r1, 0xD\n\ +str r1, [sp, 0x4]\n\ +adds r1, r4, 0\n\ +movs r2, 0xE\n\ +movs r3, 0x7\n\ +bl sub_8124E2C\n\ +cmp r5, 0xF\n\ +bhi _08117250\n\ +lsls r0, r5, 2\n\ +ldr r1, _081171A8 @ =_081171AC\n\ +adds r0, r1\n\ +ldr r0, [r0]\n\ +mov pc, r0\n\ +.align 2, 0\n\ +_0811719C: .4byte 0x02019000\n\ +_081171A0: .4byte gBGTilemapBuffers + 0x800\n\ +_081171A4: .4byte 0xfffff800\n\ +_081171A8: .4byte _081171AC\n\ +.align 2, 0\n\ +_081171AC:\n\ +.4byte _08117360\n\ +.4byte _081171EC\n\ +.4byte _081171EC\n\ +.4byte _081171EC\n\ +.4byte _081171EC\n\ +.4byte _08117220\n\ +.4byte _08117250\n\ +.4byte _08117250\n\ +.4byte _08117250\n\ +.4byte _08117250\n\ +.4byte _08117220\n\ +.4byte _08117250\n\ +.4byte _08117250\n\ +.4byte _08117250\n\ +.4byte _08117250\n\ +.4byte _08117220\n\ +_081171EC:\n\ +movs r0, 0x4\n\ +str r0, [sp, 0x18]\n\ +add r1, sp, 0x8\n\ +movs r0, 0\n\ +strb r0, [r1]\n\ +adds r0, r1, 0\n\ +ldrb r0, [r0]\n\ +cmp r0, 0x3\n\ +bhi _08117258\n\ +add r4, sp, 0x10\n\ +adds r3, r1, 0\n\ +_08117202:\n\ +ldrb r2, [r3]\n\ +adds r2, r4\n\ +ldrb r1, [r3]\n\ +lsls r0, r1, 2\n\ +adds r0, r1\n\ +adds r0, r5, r0\n\ +strb r0, [r2]\n\ +ldrb r0, [r3]\n\ +adds r0, 0x1\n\ +strb r0, [r3]\n\ +ldrb r0, [r3]\n\ +ldr r1, [sp, 0x18]\n\ +cmp r0, r1\n\ +bcc _08117202\n\ +b _08117258\n\ +_08117220:\n\ +movs r0, 0x5\n\ +str r0, [sp, 0x18]\n\ +add r1, sp, 0x8\n\ +movs r0, 0\n\ +strb r0, [r1]\n\ +adds r0, r1, 0\n\ +ldrb r0, [r0]\n\ +cmp r0, 0x4\n\ +bhi _08117258\n\ +add r3, sp, 0x10\n\ +adds r2, r1, 0\n\ +_08117236:\n\ +ldrb r1, [r2]\n\ +adds r1, r3\n\ +ldrb r0, [r2]\n\ +adds r0, r5, r0\n\ +strb r0, [r1]\n\ +ldrb r0, [r2]\n\ +adds r0, 0x1\n\ +strb r0, [r2]\n\ +ldrb r0, [r2]\n\ +ldr r1, [sp, 0x18]\n\ +cmp r0, r1\n\ +bcc _08117236\n\ +b _08117258\n\ +_08117250:\n\ +movs r0, 0x1\n\ +str r0, [sp, 0x18]\n\ +add r0, sp, 0x10\n\ +strb r5, [r0]\n\ +_08117258:\n\ +add r1, sp, 0x8\n\ +movs r0, 0\n\ +strb r0, [r1]\n\ +adds r0, r1, 0\n\ +ldrb r0, [r0]\n\ +ldr r1, [sp, 0x18]\n\ +cmp r0, r1\n\ +bcs _08117360\n\ +mov r0, sp\n\ +adds r0, 0xE\n\ +str r0, [sp, 0x1C]\n\ +add r1, sp, 0x10\n\ +mov r9, r1\n\ +add r0, sp, 0x8\n\ +mov r12, r0\n\ +mov r1, sp\n\ +adds r1, 0xA\n\ +str r1, [sp, 0x20]\n\ +_0811727C:\n\ +mov r1, r12\n\ +ldrb r0, [r1]\n\ +add r0, r9\n\ +ldrb r1, [r0]\n\ +lsls r0, r1, 2\n\ +adds r0, r1\n\ +lsls r0, 2\n\ +ldr r1, _08117370 @ =gUnknown_083F8C00\n\ +adds r0, r1\n\ +ldrb r0, [r0, 0x6]\n\ +ldr r1, [sp, 0x1C]\n\ +strb r0, [r1]\n\ +mov r1, r12\n\ +ldrb r0, [r1]\n\ +add r0, r9\n\ +ldrb r1, [r0]\n\ +lsls r0, r1, 2\n\ +adds r0, r1\n\ +lsls r0, 2\n\ +ldr r1, _08117370 @ =gUnknown_083F8C00\n\ +adds r0, r1\n\ +ldrb r0, [r0, 0x3]\n\ +ldr r1, [sp, 0x20]\n\ +strh r0, [r1]\n\ +mov r4, sp\n\ +adds r4, 0x9\n\ +movs r0, 0\n\ +strb r0, [r4]\n\ +ldrb r0, [r4]\n\ +cmp r0, 0x2\n\ +bhi _08117350\n\ +add r5, sp, 0xC\n\ +ldr r7, [sp, 0x20]\n\ +ldr r0, _08117374 @ =gBGTilemapBuffers + 0x800\n\ +mov r8, r0\n\ +ldr r6, [sp, 0x1C]\n\ +ldr r1, _08117378 @ =0x020189a0\n\ +mov r10, r1\n\ +_081172C8:\n\ +mov r1, r12\n\ +ldrb r0, [r1]\n\ +add r0, r9\n\ +ldrb r0, [r0]\n\ +lsls r1, r0, 2\n\ +adds r1, r0\n\ +lsls r1, 2\n\ +ldr r0, _08117370 @ =gUnknown_083F8C00\n\ +adds r1, r0\n\ +adds r3, r4, 0\n\ +ldrb r0, [r4]\n\ +ldrb r1, [r1, 0x4]\n\ +adds r0, r1\n\ +lsls r0, 5\n\ +strh r0, [r5]\n\ +ldrh r0, [r7]\n\ +ldrh r2, [r5]\n\ +adds r2, r0\n\ +lsls r2, 1\n\ +add r2, r8\n\ +ldrb r0, [r6]\n\ +ldrb r1, [r4]\n\ +adds r1, r0\n\ +lsls r0, r1, 1\n\ +adds r0, r1\n\ +lsls r0, 1\n\ +add r0, r10\n\ +ldrh r0, [r0]\n\ +strh r0, [r2]\n\ +ldrh r0, [r7]\n\ +ldrh r2, [r5]\n\ +adds r2, r0\n\ +adds r2, 0x1\n\ +lsls r2, 1\n\ +add r2, r8\n\ +ldrb r0, [r6]\n\ +ldrb r1, [r4]\n\ +adds r1, r0\n\ +lsls r0, r1, 1\n\ +adds r0, r1\n\ +lsls r0, 1\n\ +mov r1, r10\n\ +adds r1, 0x2\n\ +adds r0, r1\n\ +ldrh r0, [r0]\n\ +strh r0, [r2]\n\ +ldrh r0, [r7]\n\ +ldrh r2, [r5]\n\ +adds r2, r0\n\ +adds r2, 0x2\n\ +lsls r2, 1\n\ +add r2, r8\n\ +ldrb r0, [r6]\n\ +ldrb r1, [r4]\n\ +adds r1, r0\n\ +lsls r0, r1, 1\n\ +adds r0, r1\n\ +lsls r0, 1\n\ +ldr r1, _0811737C @ =0x020189a4\n\ +adds r0, r1\n\ +ldrh r0, [r0]\n\ +strh r0, [r2]\n\ +ldrb r0, [r4]\n\ +adds r0, 0x1\n\ +strb r0, [r4]\n\ +ldrb r0, [r3]\n\ +cmp r0, 0x2\n\ +bls _081172C8\n\ +_08117350:\n\ +mov r1, r12\n\ +ldrb r0, [r1]\n\ +adds r0, 0x1\n\ +strb r0, [r1]\n\ +ldrb r0, [r1]\n\ +ldr r1, [sp, 0x18]\n\ +cmp r0, r1\n\ +bcc _0811727C\n\ +_08117360:\n\ +add sp, 0x24\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\ +.align 2, 0\n\ +_08117370: .4byte gUnknown_083F8C00\n\ +_08117374: .4byte gBGTilemapBuffers + 0x800\n\ +_08117378: .4byte 0x020189a0\n\ +_0811737C: .4byte 0x020189a4\n\ +.syntax divided\n"); +} +#endif + +#ifdef NONMATCHING +u8 sub_8117380(u8 r0) +{ + u8 var0[0x5]; + u8 t; + u8 z; + memcpy(var0, gUnknown_083F8EF4, 0x5); + if (r0 > 0x13) + r0 = 0x0; + switch (gUnknown_083F8C00[r0].var01_0) + { + case 0x3: + z = r0 / 0x5 - 0x1; + if (eRoulette->var16[z] > 0x3) + return 0x0; + return var0[eRoulette->var16[z] + 0x1]; + case 0x4: + t = r0 - 0x1; + if (eRoulette->var12[t] > 0x2) + return 0x0; + return var0[eRoulette->var12[t] + 0x2]; + case 0xC: + if (eRoulette->var08 & gUnknown_083F8C00[r0].var08) + return 0x0; + return var0[0x4]; + default: + } + return 0x0; +} +#else +__attribute__((naked)) +u8 sub_8117380(u8 r0) +{ +asm(".syntax unified\n\ +push {r4,lr}\n\ +sub sp, 0x8\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r1, _081173B8 @ =gUnknown_083F8EF4\n\ +mov r0, sp\n\ +movs r2, 0x5\n\ +bl memcpy\n\ +cmp r4, 0x13\n\ +bls _08117398\n\ +movs r4, 0\n\ +_08117398:\n\ +ldr r3, _081173BC @ =gUnknown_083F8C00\n\ +lsls r0, r4, 2\n\ +adds r0, r4\n\ +lsls r2, r0, 2\n\ +adds r0, r2, r3\n\ +ldrb r0, [r0, 0x1]\n\ +lsls r0, 28\n\ +lsrs r0, 28\n\ +cmp r0, 0x4\n\ +beq _081173EC\n\ +cmp r0, 0x4\n\ +bgt _081173C0\n\ +cmp r0, 0x3\n\ +beq _081173C6\n\ +b _08117428\n\ +.align 2, 0\n\ +_081173B8: .4byte gUnknown_083F8EF4\n\ +_081173BC: .4byte gUnknown_083F8C00\n\ +_081173C0:\n\ +cmp r0, 0xC\n\ +beq _0811740C\n\ +b _08117428\n\ +_081173C6:\n\ +adds r0, r4, 0\n\ +movs r1, 0x5\n\ +bl __udivsi3\n\ +subs r0, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r0, _081173E8 @ =0x02019000\n\ +adds r0, 0x16\n\ +adds r1, r4, r0\n\ +ldrb r0, [r1]\n\ +cmp r0, 0x3\n\ +bhi _08117428\n\ +ldrb r0, [r1]\n\ +adds r0, 0x1\n\ +b _08117402\n\ +.align 2, 0\n\ +_081173E8: .4byte 0x02019000\n\ +_081173EC:\n\ +subs r0, r4, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r0, _08117408 @ =0x02019000\n\ +adds r0, 0x12\n\ +adds r1, r4, r0\n\ +ldrb r0, [r1]\n\ +cmp r0, 0x2\n\ +bhi _08117428\n\ +ldrb r0, [r1]\n\ +adds r0, 0x2\n\ +_08117402:\n\ +add r0, sp\n\ +ldrb r0, [r0]\n\ +b _0811742A\n\ +.align 2, 0\n\ +_08117408: .4byte 0x02019000\n\ +_0811740C:\n\ +ldr r1, _08117424 @ =0x02019000\n\ +adds r0, r3, 0\n\ +adds r0, 0x8\n\ +adds r0, r2, r0\n\ +ldr r1, [r1, 0x8]\n\ +ldr r0, [r0]\n\ +ands r1, r0\n\ +cmp r1, 0\n\ +bne _08117428\n\ +mov r0, sp\n\ +ldrb r0, [r0, 0x4]\n\ +b _0811742A\n\ +.align 2, 0\n\ +_08117424: .4byte 0x02019000\n\ +_08117428:\n\ +movs r0, 0\n\ +_0811742A:\n\ +add sp, 0x8\n\ +pop {r4}\n\ +pop {r1}\n\ +bx r1\n\ +.syntax divided\n"); +} +#endif + +void sub_8117434(void) +{ + s32 x1; + s32 x2; + REG_BG2PA = eRoulette->var2C.a; + REG_BG2PB = eRoulette->var2C.b; + REG_BG2PC = eRoulette->var2C.c; + REG_BG2PD = eRoulette->var2C.d; + x1 = 0x7400 - eRoulette->var2C.a * (gSpriteCoordOffsetX + 0x74) + - eRoulette->var2C.b * (gSpriteCoordOffsetY + 0x50); + x2 = 0x5400 - eRoulette->var2C.c * (gSpriteCoordOffsetX + 0x74) + - eRoulette->var2C.d * (gSpriteCoordOffsetY + 0x50); + REG_BG2X_L = x1; + REG_BG2X_H = (x1 & 0x0fff0000) >> 16; + REG_BG2Y_L = x2; + REG_BG2Y_H = (x2 & 0x0fff0000) >> 16; +} + +s16 sub_81174C4(s16 r0, s16 r1) +{ + s32 t = r0 * r1; + t /= 0x100; + return t; +} + +s16 sub_81174E0(s16 r0) +{ + s32 t = 0x10000; + return t / r0; +} + +void sub_81174F8(u8 r0) +{ + DisplayYesNoMenu(0x14, 0x8, 0x1); + sub_814AAF8(0x2D9E); + DoYesNoFuncWithChoice(r0, &gUnknown_083F8EB4); +} + +void sub_8117528(u8 taskid) +{ + if (!gPaletteFade.active) + { + SetVBlankCallback(NULL); + SetMainCallback2(&sub_8115384); + DestroyTask(taskid); + } +} + +void sub_811755C(u8 taskid) +{ + MenuZeroFillWindowRect(0x14, 0x8, 0x1A, 0xD); + MenuZeroFillScreen(); + BeginNormalPaletteFade(-0x1, 0x0, 0x0, 0x10, 0x0); + gPaletteFade.delayCounter = gPaletteFade.multipurpose2; + UpdatePaletteFade(); + gTasks[taskid].func = &sub_8117528; +} + +void sub_81175C0(u8 taskid) +{ + MenuZeroFillScreen(); + ScriptContext2_Disable(); + DestroyTask(taskid); +} + +void sub_81175DC(u8 taskid) +{ + gTasks[taskid].data[0]++; + if (!(gMain.newKeys & (A_BUTTON | B_BUTTON)) && gTasks[taskid].data[0] < 0x3D) + return; + gSpecialVar_0x8004 = 0x1; + MenuZeroFillScreen(); + ScriptContext2_Disable(); + DestroyTask(taskid); +} + +void sub_8117630(u8 taskid) +{ + u32 temp = gUnknown_083F8DF0[(gSpecialVar_0x8004 & 0x1) + (gSpecialVar_0x8004 >> 0x7 << 0x1)]; + ConvertIntToDecimalStringN(gStringVar1, temp, 0x2, 0x1); + StringExpandPlaceholders(gStringVar4, &gUnknown_081C40DF); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(gStringVar4, 0x1, 0xF); + gTasks[taskid].func = &sub_81174F8; +} + +void Task_Roulette_0(u8 taskid) +{ + s32 temp; + ConvertIntToDecimalStringN(gStringVar1, gTasks[taskid].data[0xD], 0x1, 0x4); + StringExpandPlaceholders(gStringVar4, gOtherText_Coins); + MenuDrawTextWindow(0x0, 0x0, 0x9, 0x3); + MenuPrint_RightAligned(gStringVar4, 0x9, 0x1); + temp = gUnknown_083F8DF0[(gSpecialVar_0x8004 & 0x1) + (gSpecialVar_0x8004 >> 0x7 << 0x1)]; + ConvertIntToDecimalStringN(gStringVar1, temp, 0x2, 0x1); + if (gTasks[taskid].data[0xD] >= temp) + { + if ((gSpecialVar_0x8004 & 0x80) && (gSpecialVar_0x8004 & 0x1)) + { + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(&gUnknown_081C4139, 0x1, 0xF); + sub_8116C34(taskid , &sub_8117630, 0xFFFF, 0x3); + } + else + { + StringExpandPlaceholders(gStringVar4, &gUnknown_081C40DF); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(gStringVar4, 0x1, 0xF); + gTasks[taskid].func = &sub_81174F8; + } + } + else + { + StringExpandPlaceholders(gStringVar4, &gUnknown_081C411C); + MenuDrawTextWindow(0x0, 0xE, 0x1D, 0x13); + MenuPrint(gStringVar4, 0x1, 0xF); + gTasks[taskid].func = &sub_81175DC; + gTasks[taskid].data[0xD] = 0x0; + gTasks[taskid].data[0x0] = 0x0; + } +} + +void PlayRoulette(void) +{ + u8 taskid; + ScriptContext2_Enable(); + taskid = CreateTask(&Task_Roulette_0, 0x0); + gTasks[taskid].data[0xD] = gSaveBlock1.coins; +} + +void sub_8117838(u8 r0) +{ + if (!r0) + { + FreeAllSpritePalettes(); + LoadSpritePalettes(&gUnknown_083F9E30); + LZ77UnCompWram(gUnknown_083F92A8, ewram17000); + LZ77UnCompWram(gUnknown_083F90FC, ewram17E00); + LZ77UnCompWram(gUnknown_083F9D3C, ewram18000); + } + else + { + FreeAllSpritePalettes(); + } +} + +u8 sub_8117890(const struct SpriteTemplate *r0, u8 r1, u16 *r2) +{ + u16 temp; + u8 spriteid = CreateSprite(r0, 0x74, 0x50, r0->oam->y); + gSprites[spriteid].data[0] = *r2; + gSprites[spriteid].data[1] = r1; + gSprites[spriteid].coordOffsetEnabled = TRUE; + gSprites[spriteid].animPaused = TRUE; + gSprites[spriteid].affineAnimPaused = TRUE; + temp = *r2; + *r2 += 0x1E; + if (*r2 > 0x167) + *r2 = temp - 0x14A; + return spriteid; +} + +void sub_8117900(void) +{ + u8 i, j; + u8 spriteid; + struct SpriteSheet s; + LZ77UnCompWram(gUnknown_083F9F54.data, gSharedMem); + s.data = gSharedMem; + s.size = gUnknown_083F9F54.size; + s.tag = gUnknown_083F9F54.tag; + LoadSpriteSheet(&s); + LZ77UnCompWram(gUnknown_083F9F5C.data, gSharedMem); + s.data = gSharedMem; + s.size = gUnknown_083F9F5C.size; + s.tag = gUnknown_083F9F5C.tag; + LoadSpriteSheet(&s); + for (i = 0; i < 0x3; i++) + { + u8 o = i * 0x18; + for (j = 0; j < 0x4; j++) + { + spriteid = eRoulette->var3C[0x1D + i * 0x4 + j] = + CreateSprite(&gSpriteTemplate_83FA07C[j], j * 0x18 + 0x94, o + 0x5C, 0x1E); + gSprites[spriteid].animPaused = TRUE; + o += 0x18; + if (o > 0x47) + o = 0x0; + } + } + for (i = 0x0; i < 0x4; i++) + { + spriteid = eRoulette->var3C[0x29 + i] = + CreateSprite(&gSpriteTemplate_83F9FD4[i], (s16)(i * 0x18 + 0x94), 0x46, 0x1E); + gSprites[spriteid].animPaused = TRUE; + } + for (i = 0x0; i < 0x3; i++) + { + spriteid = eRoulette->var3C[0x2D + i] = + CreateSprite(&gSpriteTemplate_83FA034[i], 0x7E, (s16)(i * 0x18 + 0x5C), 0x1E); + gSprites[spriteid].animPaused = TRUE; + } +} + +void unref_sub_8117A74(void) //destroy all sprites at 0x1D +{ + u8 i; + for (i = 0x0; i < 0xC; i++) + DestroySprite(&gSprites[eRoulette->var3C[0x1D + i]]); +} + +void sub_8117AA8(u8 r0, u8 r1) +{ + u8 i; + switch(r0) + { + case 0x1: + for (i = 0x0; i < 0x13; i++) + gSprites[eRoulette->var3C[0x1D + i]].invisible = TRUE; + break; + case 0x0: + for (i = 0x0; i < 0xC; i++) + { + if (!(eRoulette->var08 & gUnknown_083F8D90[i].var04)) + gSprites[eRoulette->var3C[0x1D + i]].invisible = FALSE; + else if(!(gUnknown_083F8D90[i].var02 == r1)) + gSprites[eRoulette->var3C[0x1D + i]].invisible = TRUE; + else + gSprites[eRoulette->var3C[0x1D + i]].invisible = FALSE; + } + for ( ; i < 0x13; i++) + gSprites[eRoulette->var3C[0x1D + i]].invisible = FALSE; + break; + } +} + +void sub_8117BBC(void) +{ + u8 i; + for (i = 0x0; i < 0x6; i++) + { + eRoulette->var3C[0x31 + i] = CreateSprite(&gSpriteTemplate_83FA40C, 0x74, 0x14, 0xA); + gSprites[eRoulette->var3C[0x31 + i]].invisible = TRUE; + gSprites[eRoulette->var3C[0x31 + i]].data[0] = 0x1; + gSprites[eRoulette->var3C[0x31 + i]].callback = &sub_81184CC; + gSprites[eRoulette->var3C[0x31 + i]].oam.priority = 0x1; + StartSpriteAnim(&gSprites[eRoulette->var3C[0x31 + i]], 0x8); + } +} + +void sub_8117C60(u8 r0, u8 r1) +{ + u8 i = 0x0; + if (r0) + { + for ( ; i < 0x6; i++) + gSprites[eRoulette->var3C[0x31 + i]].invisible = TRUE; + } + else + { + for ( ; i < 0x6; i++) + { + if (!(eRoulette->var0C[i]) || (i == r1)) + { + gSprites[eRoulette->var3C[0x31 + i]].invisible = TRUE; + } + else + { + gSprites[eRoulette->var3C[0x31 + i]].invisible = FALSE; + gSprites[eRoulette->var3C[0x31 + i]].pos1.x = (gUnknown_083F8C00[eRoulette->var0C[i]].var03 + 0x1) * 0x8 + 0x4; + gSprites[eRoulette->var3C[0x31 + i]].pos1.y = (gUnknown_083F8C00[eRoulette->var0C[i]].var04 + 0x1) * 0x8 + 0x3; + } + } + } +} + +void sub_8117D68(u8 r0) +{ + if (!r0) + { + gSprites[eRoulette->var3C[0x30]].invisible = TRUE; + } + else + { + gSprites[eRoulette->var3C[0x30]].invisible = FALSE; + gSprites[eRoulette->var3C[0x30]].pos1.x = (gUnknown_083F8C00[r0].var03 + 0x2) * 0x8; + gSprites[eRoulette->var3C[0x30]].pos1.y = (gUnknown_083F8C00[r0].var04 + 0x2) * 0x8; + } +} + +void sub_8117DF4(void) +{ + u8 i, j; + u16 k; + struct SpriteSheet s; + LZ77UnCompWram(gUnknown_083F9EE8.data, gSharedMem); + s.data = gSharedMem; + s.size = gUnknown_083F9EE8.size; + s.tag = gUnknown_083F9EE8.tag; + LoadSpriteSheet(&s); + k = 0xF; + for (i = 0x0; i < 0x3; i++) + { + for (j = 0x0; j < 0x4; j++) + { + u8 spriteid; + spriteid = + eRoulette->var3C[0x7 + i * 0x4 + j] = sub_8117890(&gSpriteTemplate_83FA0DC[i * 0x4 + j], 0x28, &k); + gSprites[spriteid].animPaused = TRUE; + gSprites[spriteid].affineAnimPaused = TRUE; + } + } +} + +#ifdef NONMATCHING +void sub_8117E98(struct Sprite *sprite) +{ + struct OamMatrix *m; + u8 p; + u16 angle; + s16 cos, sin, z; + u32 cos32; + angle = eRoulette->var24 + sprite->data[0x0]; + z = angle; + if (z > 359) + angle = z - 360; + sin = Sin2(angle); + cos = Cos2(angle); + sprite->pos2.x = sin * sprite->data[0x1] >> 0xC; + sprite->pos2.y = -cos * sprite->data[0x1] >> 0xC; + p = sprite->oam.matrixNum; + sin = sin / 0x10; + m = &gOamMatrices[p]; + cos32 = cos / 0x10; + + m->d = cos32; + m->a = cos32; + m->b = sin; + m->c = -sin; +} +#else +__attribute__((naked)) +void sub_8117E98(struct Sprite *r0) +{ +asm(".syntax unified\n\ +push {r4-r6,lr}\n\ +adds r6, r0, 0\n\ +ldr r0, _08117F1C @ =0x02019000\n\ +ldrh r1, [r6, 0x2E]\n\ +ldrh r0, [r0, 0x24]\n\ +adds r1, r0\n\ +lsls r1, 16\n\ +lsrs r4, r1, 16\n\ +asrs r1, 16\n\ +ldr r0, _08117F20 @ =0x00000167\n\ +cmp r1, r0\n\ +ble _08117EB8\n\ +ldr r2, _08117F24 @ =0xfffffe98\n\ +adds r0, r1, r2\n\ +lsls r0, 16\n\ +lsrs r4, r0, 16\n\ +_08117EB8:\n\ +adds r0, r4, 0\n\ +bl Sin2\n\ +lsls r0, 16\n\ +lsrs r5, r0, 16\n\ +adds r0, r4, 0\n\ +bl Cos2\n\ +lsls r2, r5, 16\n\ +asrs r2, 16\n\ +movs r3, 0x30\n\ +ldrsh r1, [r6, r3]\n\ +muls r1, r2\n\ +asrs r1, 12\n\ +strh r1, [r6, 0x24]\n\ +lsls r0, 16\n\ +asrs r4, r0, 16\n\ +negs r1, r4\n\ +movs r3, 0x30\n\ +ldrsh r0, [r6, r3]\n\ +muls r0, r1\n\ +asrs r0, 12\n\ +strh r0, [r6, 0x26]\n\ +ldrb r0, [r6, 0x3]\n\ +lsls r0, 26\n\ +lsrs r3, r0, 27\n\ +cmp r2, 0\n\ +bge _08117EF2\n\ +adds r2, 0xF\n\ +_08117EF2:\n\ +lsls r0, r2, 12\n\ +lsrs r5, r0, 16\n\ +ldr r1, _08117F28 @ =gOamMatrices\n\ +lsls r0, r3, 3\n\ +adds r1, r0, r1\n\ +adds r0, r4, 0\n\ +cmp r0, 0\n\ +bge _08117F04\n\ +adds r0, 0xF\n\ +_08117F04:\n\ +asrs r0, 4\n\ +strh r0, [r1, 0x6]\n\ +strh r0, [r1]\n\ +strh r5, [r1, 0x2]\n\ +lsls r0, r5, 16\n\ +asrs r0, 16\n\ +negs r0, r0\n\ +strh r0, [r1, 0x4]\n\ +pop {r4-r6}\n\ +pop {r0}\n\ +bx r0\n\ +.align 2, 0\n\ +_08117F1C: .4byte 0x02019000\n\ +_08117F20: .4byte 0x00000167\n\ +_08117F24: .4byte 0xfffffe98\n\ +_08117F28: .4byte gOamMatrices\n\ +.syntax divided\n"); +} +#endif + +void sub_8117F2C(void) +{ + u8 i; + for (i = 0x0; i < 0x5; i++) + { + struct SpriteSheet s; + LZ77UnCompWram(gUnknown_083FA21C[i].data, gSharedMem); + s.data = gSharedMem; + s.size = gUnknown_083FA21C[i].size; + s.tag = gUnknown_083FA21C[i].tag; + LoadSpriteSheet(&s); + } + eRoulette->var3C[0x14] = CreateSprite(&gSpriteTemplate_83FA2B0, 0xD0, 0x10, 0x4); + gSprites[eRoulette->var3C[0x14]].animPaused = TRUE; + for (i = 0x0; i < 0x4; i++) + { + eRoulette->var3C[0x15 + i] = CreateSprite(&gSpriteTemplate_83FA2C8, (s16)(i * 0x8 + 0xC4), 0x18, 0x0); + gSprites[eRoulette->var3C[0x15 + i]].invisible = TRUE; + gSprites[eRoulette->var3C[0x15 + i]].animPaused = TRUE; + } + eRoulette->var3C[0x19] = CreateSprite(&gSpriteTemplate_83FA2E0, 0x78, 0x44, 0x4); + gSprites[eRoulette->var3C[0x19]].animPaused = TRUE; + for (i = 0x0; i < 0x3; i++) + { + eRoulette->var3C[0x1A + i] = CreateSprite(&gSpriteTemplate_83FA2F8, (s16)(i * 0x10 + 0xC0), 0x24, 0x4); + gSprites[eRoulette->var3C[0x1A + i]].invisible = TRUE; + gSprites[eRoulette->var3C[0x1A + i]].animPaused = TRUE; + } + eRoulette->var3C[0x30] = CreateSprite(&gSpriteTemplate_83FA310, 0x98, 0x60, 0x9); + gSprites[eRoulette->var3C[0x30]].oam.priority = 0x1; + gSprites[eRoulette->var3C[0x30]].animPaused = TRUE; + gSprites[eRoulette->var3C[0x30]].invisible = TRUE; +} + +void sub_81180F4(u16 r0) +{ + u8 i; + u16 d = 1000; + bool8 v = FALSE; + for (i = 0x0; i < 0x4; i++) + { + u8 t = r0 / d; + gSprites[eRoulette->var3C[0x15 + i]].invisible = TRUE; + if (t > 0x0 || v || i == 0x3) + { + gSprites[eRoulette->var3C[0x15 + i]].invisible = FALSE; + gSprites[eRoulette->var3C[0x15 + i]].oam.tileNum = + gSprites[eRoulette->var3C[0x15 + i]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x15 + i]].anims + t)->type; + v = TRUE; + } + r0 = r0 % d; + d = d / 10; + } +} + +#ifdef NONMATCHING +u8 sub_81181E8(u8 r0) +{ + u8 t[0x5]; + memcpy(&t, &gUnknown_083FA608, 0x5); + if (r0 > 0x13) + r0 = 0x0; + switch(gUnknown_083F8C00[r0].var01_0) + { + case 0x3: + r0 = r0 / 0x5 - 0x1; + if ((u32)eRoulette->var16[r0] < 0x4) + return t[0x1 + eRoulette->var16[r0]]; // couldn't recreate redundant loads + break; + case 0x4: + r0 = r0 - 0x1; + if (eRoulette->var12[r0] < 0x3) + return t[0x2 + eRoulette->var12[r0]]; + break; + case 0xC: + if (!(eRoulette->var08 & gUnknown_083F8C00[r0].var08)) + return t[0x4]; + break; + } + return 0x0; +} +#else +__attribute__((naked)) +u8 sub_81181E8(u8 r0) +{ +asm(".syntax unified\n\ +push {r4,lr}\n\ +sub sp, 0x8\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r1, _08118220 @ =gUnknown_083FA608\n\ +mov r0, sp\n\ +movs r2, 0x5\n\ +bl memcpy\n\ +cmp r4, 0x13\n\ +bls _08118200\n\ +movs r4, 0\n\ +_08118200:\n\ +ldr r3, _08118224 @ =gUnknown_083F8C00\n\ +lsls r0, r4, 2\n\ +adds r0, r4\n\ +lsls r2, r0, 2\n\ +adds r0, r2, r3\n\ +ldrb r0, [r0, 0x1]\n\ +lsls r0, 28\n\ +lsrs r0, 28\n\ +cmp r0, 0x4\n\ +beq _08118254\n\ +cmp r0, 0x4\n\ +bgt _08118228\n\ +cmp r0, 0x3\n\ +beq _0811822E\n\ +b _08118290\n\ +.align 2, 0\n\ +_08118220: .4byte gUnknown_083FA608\n\ +_08118224: .4byte gUnknown_083F8C00\n\ +_08118228:\n\ +cmp r0, 0xC\n\ +beq _08118274\n\ +b _08118290\n\ +_0811822E:\n\ +adds r0, r4, 0\n\ +movs r1, 0x5\n\ +bl __udivsi3\n\ +subs r0, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r0, _08118250 @ =0x02019000\n\ +adds r0, 0x16\n\ +adds r1, r4, r0\n\ +ldrb r0, [r1]\n\ +cmp r0, 0x3\n\ +bhi _08118290\n\ +ldrb r0, [r1]\n\ +adds r0, 0x1\n\ +b _0811826A\n\ +.align 2, 0\n\ +_08118250: .4byte 0x02019000\n\ +_08118254:\n\ +subs r0, r4, 0x1\n\ +lsls r0, 24\n\ +lsrs r4, r0, 24\n\ +ldr r0, _08118270 @ =0x02019000\n\ +adds r0, 0x12\n\ +adds r1, r4, r0\n\ +ldrb r0, [r1]\n\ +cmp r0, 0x2\n\ +bhi _08118290\n\ +ldrb r0, [r1]\n\ +adds r0, 0x2\n\ +_0811826A:\n\ +add r0, sp\n\ +ldrb r0, [r0]\n\ +b _08118292\n\ +.align 2, 0\n\ +_08118270: .4byte 0x02019000\n\ +_08118274:\n\ +ldr r1, _0811828C @ =0x02019000\n\ +adds r0, r3, 0\n\ +adds r0, 0x8\n\ +adds r0, r2, r0\n\ +ldr r1, [r1, 0x8]\n\ +ldr r0, [r0]\n\ +ands r1, r0\n\ +cmp r1, 0\n\ +bne _08118290\n\ +mov r0, sp\n\ +ldrb r0, [r0, 0x4]\n\ +b _08118292\n\ +.align 2, 0\n\ +_0811828C: .4byte 0x02019000\n\ +_08118290:\n\ +movs r0, 0\n\ +_08118292:\n\ +add sp, 0x8\n\ +pop {r4}\n\ +pop {r1}\n\ +bx r1\n\ +.syntax divided\n"); +} +#endif + +void sub_811829C(u8 r0) +{ + struct Sprite *s = &gSprites[eRoulette->var3C[0x19]]; + s->animCmdIndex = sub_81181E8(r0); + s->oam.tileNum = + s->sheetTileStart + + (*s->anims + s->animCmdIndex)->type; +} + +void sub_81182F8(u8 r0) +{ + u8 i; + u8 t = 0x0; + if (eRoulette->var19 == 0x1) + t = 0x2; + switch(r0) + { + case 0x6: + for (i = 0x0; i < 0x3; i++) + { + gSprites[eRoulette->var3C[0x1A + i]].invisible = FALSE; + gSprites[eRoulette->var3C[0x1A + i]].oam.tileNum = + gSprites[eRoulette->var3C[0x1A + i]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1A + i]].anims)->type; + } + break; + case 0x5: + gSprites[eRoulette->var3C[0x1C]].oam.tileNum = + gSprites[eRoulette->var3C[0x1C]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1C]].anims + t + 0x1)->type; + break; + case 0x4: + gSprites[eRoulette->var3C[0x1C]].oam.tileNum = + gSprites[eRoulette->var3C[0x1C]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1C]].anims + t + 0x2)->type; + break; + case 0x3: + gSprites[eRoulette->var3C[0x1B]].oam.tileNum = + gSprites[eRoulette->var3C[0x1B]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1B]].anims + t + 0x1)->type; + break; + case 0x2: + gSprites[eRoulette->var3C[0x1B]].oam.tileNum = + gSprites[eRoulette->var3C[0x1B]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1B]].anims + t + 0x2)->type; + break; + case 0x1: + gSprites[eRoulette->var3C[0x1A]].oam.tileNum = + gSprites[eRoulette->var3C[0x1A]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1A]].anims + t + 0x1)->type; + break; + case 0x0: + default: + for (i = 0x0; i < 0x3; i++) + { + gSprites[eRoulette->var3C[0x1A + i]].oam.tileNum = + gSprites[eRoulette->var3C[0x1A + i]].sheetTileStart + + (*gSprites[eRoulette->var3C[0x1A + i]].anims + t + 2)->type; + } + } +} + +void sub_81184CC(struct Sprite *sprite) +{ + sprite->pos2.x = eRoulette->var26; +} + +void sub_81184D8(void) +{ + u8 spriteid; + struct SpriteSheet s; + LZ77UnCompWram(gUnknown_083FA42C.data, gSharedMem); + s.data = gSharedMem; + s.size = gUnknown_083FA42C.size; + s.tag = gUnknown_083FA42C.tag; + LoadSpriteSheet(&s); + spriteid = CreateSprite(&gSpriteTemplate_83FA434, 0x74, 0x50, 0x51); + gSprites[spriteid].data[0] = eRoulette->var24; + gSprites[spriteid].data[1] = 0x0; + gSprites[spriteid].animPaused = TRUE; + gSprites[spriteid].affineAnimPaused = TRUE; + gSprites[spriteid].coordOffsetEnabled = TRUE; +} + +void sub_8118554(struct Sprite *sprite) +{ + u32 t = sprite->oam.matrixNum; + struct OamMatrix *m = &gOamMatrices[0]; + m[t].d = eRoulette->var2C.a; + m[t].a = eRoulette->var2C.a; + m[t].b = eRoulette->var2C.b; + m[t].c = eRoulette->var2C.c; +} + +void sub_811857C(void) +{ + u8 i; + for (i = 0x0; i < 0x6; i++) + { + u8 spriteid = + eRoulette->var3C[i] = CreateSprite(&gSpriteTemplate_83FA40C, 0x74, 0x50, 0x39 - i); + if (spriteid != 0x40) + { + gSprites[eRoulette->var3C[i]].invisible = TRUE; + gSprites[eRoulette->var3C[i]].coordOffsetEnabled = TRUE; + } + } +} + +void sub_81185E8(void) +{ + u8 t = eRoulette->var3C[0x0]; + u8 i; + for (i = 0x0; i < 0x6; i++) + { + u8 j; + gSprites[t].invisible = TRUE; + gSprites[t].callback = &SpriteCallbackDummy; + StartSpriteAnim(&gSprites[t], 0x0); + for (j = 0x0; j < 0x8; j++) + gSprites[t].data[j] = 0x0; + t++; + } +} + +s16 sub_811866C(struct Sprite *sprite) +{ + if (eRoulette->var24 > sprite->data[0x3]) + { + sprite->data[0x6] = 360 - eRoulette->var24 + sprite->data[0x3]; + if (sprite->data[0x6] > 359) + sprite->data[0x6] -=360; + } + else + sprite->data[0x6] = sprite->data[0x3] - eRoulette->var24; + return sprite->data[0x6]; +} + +u8 sub_81186B8(struct Sprite *sprite) +{ + eRoulette->var7E = (u8)(((float)(s16)sub_811866C(sprite)) / 30.0f); + return eRoulette->var7E; +} + +s16 sub_81186E8(struct Sprite *sprite) +{ + s16 t = sub_811866C(sprite) % 30; + u16 z; + if (t == 0xE) + { + z = 0x0; + return sprite->data[0x2] = z; + } + else if (t > 0xD) + { + z = (u16)(0x2B - t); + return sprite->data[0x2] = z; + } + else + { + z = (u16)(0xE - t); + return sprite->data[0x2] = z; + } +} + +void sub_8118724(struct Sprite *sprite) +{ + s16 sin, cos; + eRoulette->var8C += eRoulette->var90; + eRoulette->var88 += eRoulette->var8C; + if (eRoulette->var88 >= 360) + eRoulette->var88 -= 360.0f; + else + if (eRoulette->var88 < 0.0f) + eRoulette->var88 += 360.0f; + sprite->data[0x3] = eRoulette->var88; + eRoulette->var98 += eRoulette->var9C; + eRoulette->var94 += eRoulette->var98; + sprite->data[0x4] = eRoulette->var94; + sin = Sin2(sprite->data[0x3]); + cos = Cos2(sprite->data[0x3]); + sprite->pos2.x = sin * sprite->data[0x4] >> 0xC; + sprite->pos2.y = -cos * sprite->data[0x4] >> 0xC; + if (IsSEPlaying()) + { + m4aMPlayPanpotControl(&gMPlay_SE1, 0xFFFF, sprite->pos2.x); + m4aMPlayPanpotControl(&gMPlay_SE2, 0xFFFF, sprite->pos2.x); + } +} + +void sub_8118834(struct Sprite *sprite) +{ + s16 sin, cos; + sprite->data[0x3] = eRoulette->var24 + sprite->data[0x6]; + if (sprite->data[0x3] > 359) + sprite->data[0x3] -= 360; + sin = Sin2(sprite->data[0x3]); + cos = Cos2(sprite->data[0x3]); + sprite->pos2.x = sin * sprite->data[0x4] >> 0xC; + sprite->pos2.y = -cos * sprite->data[0x4] >> 0xC; + sprite->pos2.y += gSpriteCoordOffsetY; +} + +void sub_811889C(struct Sprite *sprite) +{ + sub_8118724(sprite); + sprite->data[0x2]++; + if ((u16)(sprite->data[0x4] + 0x84) > 0xD4) + sprite->invisible = TRUE; + else + sprite->invisible = FALSE; + if (!(sprite->data[0x2] < 30)) + { + if (!sprite->data[0x0]) + { + if (eRoulette->var94 <= eRoulette->varA0 - 2.0f) + { + eRoulette->var7D = 0xFF; + eRoulette->var03_7 = 0x0; + StartSpriteAnim(sprite, sprite->animCmdIndex + 0x3); + sub_81186B8(sprite); + sprite->data[0x4] = 30; + sub_811866C(sprite); + sprite->data[0x6] = (sprite->data[0x6] / 30) * 30 + 0xF; + sprite->callback = &sub_8118834; + m4aSongNumStartOrChange(0x47); + eRoulette->var9C = eRoulette->var98 = 0.0f; + eRoulette->var8C = -1.0f; + } + } + else + { + if (eRoulette->var94 >= eRoulette->varA0 - 2.0f) + { + eRoulette->var7D = 0xFF; + eRoulette->var03_7 = 0x0; + StartSpriteAnim(sprite, sprite->animCmdIndex + 0x3); + sub_81186B8(sprite); + sprite->data[0x4] = 30; + sub_811866C(sprite); + sprite->data[0x6] = (sprite->data[0x6] / 30) * 30 + 0xF; + sprite->callback = &sub_8118834; + m4aSongNumStartOrChange(0x47); + eRoulette->var9C = eRoulette->var98 = 0.0f; + eRoulette->var8C = -1.0f; + } + } + } +} + +void sub_81189A8(struct Sprite *sprite) +{ + float f0, f1, f2; + struct StructgUnknown_083F8DF4 *p; + sub_8118724(sprite); + switch(sprite->data[0x3]) + { + case 0: + if (sprite->data[0x0] != 0x1) + { + f0 = ((float)sprite->data[0x7]); + p = &gUnknown_083F8DF4[0]; + f1 = (f0 * ((float)(s32)p[eRoulette->var04_0].var01) + (float)((s32)p[eRoulette->var04_0].var02 - 0x1)); + f2 = (f0 / ((float)(s32)p[eRoulette->var04_0].var0C)); + } + else + { + return; + } + break; + case 180: + if (sprite->data[0x0] != 0x0) + { + f0 = ((float)sprite->data[0x7]); + p = &gUnknown_083F8DF4[0]; + f1 = (f0 * ((float)(s32)p[eRoulette->var04_0].var01) + (float)((s32)p[eRoulette->var04_0].var02 - 0x1)); + f2 = -(f0 / ((float)(s32)p[eRoulette->var04_0].var0C)); + } + else + { + return; + } + break; + default: return; + } + eRoulette->varA0 = eRoulette->var94; + eRoulette->var98 = f2; + eRoulette->var9C = -((f2 + f2) / f1 + (2.0f / (f1 * f1))); + eRoulette->var8C = 0.0f; + sprite->animPaused = FALSE; + sprite->animNum = 0x0; + sprite->animBeginning = TRUE; + sprite->animEnded = FALSE; + sprite->callback = &sub_811889C; + sprite->data[0x2] = 0x0; +} + +void sub_8118B30(struct Sprite *sprite) +{ + sprite->pos2.y = (s32)(((float)sprite->data[0x2]) * 0.05f * ((float)sprite->data[0x2])) - 45; + sprite->data[0x2]++; + if (sprite->data[0x2] > 29 && sprite->pos2.y >= 0) + { + eRoulette->var7D = 0xFF; + eRoulette->var03_7 = FALSE; + StartSpriteAnim(sprite, sprite->animCmdIndex + 0x3); + sub_81186B8(sprite); + sprite->data[0x4] = 30; + sub_811866C(sprite); + sprite->data[0x6] = (sprite->data[0x6] / 30) * 30 + 0xF; + sprite->callback = &sub_8118834; + m4aSongNumStartOrChange(0x47); + eRoulette->var03_6 = TRUE; + } +} + +void sub_8118BD8(struct Sprite *sprite) +{ + if (sprite->data[0x2]++ < 45) + { + sprite->pos2.y--; + if(sprite->data[0x2] == 45) + { + if (gSprites[eRoulette->var3C[0x37]].animCmdIndex == 0x1) + sprite->pos2.y++; + } + } + else + { + if (sprite->data[0x2] < sprite->data[0x7]) + { + if (gSprites[eRoulette->var3C[0x37]].animDelayCounter == 0x0) + { + if (gSprites[eRoulette->var3C[0x37]].animCmdIndex == 0x1) + sprite->pos2.y++; + else + sprite->pos2.y--; + } + } + else + { + sprite->animPaused = FALSE; + sprite->animNum = 0x1; + sprite->animBeginning = TRUE; + sprite->animEnded = FALSE; + sprite->data[0x2] = 0x0; + sprite->callback = &sub_8118B30; + m4aSongNumStart(0x3D); + } + } +} + +void sub_8118CAC(struct Sprite *sprite) +{ + sub_8118724(sprite); + switch(sprite->data[0x3]) + { + case 90: + if (sprite->data[0x0] != 0x1) + { + sprite->callback = &sub_8118BD8; + sprite->data[0x2] = 0x0; + } + break; + case 270: + if (sprite->data[0x0] != 0x0) + { + sprite->callback = &sub_8118BD8; + sprite->data[0x2] = 0x0; + } + break; + } +} + +void sub_8118CEC(struct Sprite *sprite) +{ + sub_8118724(sprite); + switch(eRoulette->var03_0) + { + default: + case 0x0: + sub_8119224(sprite); + sprite->callback = &sub_81189A8; + break; + case 0x1: + sub_81193D4(sprite); + sprite->callback = &sub_8118CAC; + break; + } +} + +void sub_8118D2C(struct Sprite *sprite) +{ + sub_8118724(sprite); + if (sprite->data[0x2]-- == 0x10) + eRoulette->var98 *= -1.0f; + if (sprite->data[0x2] == 0x0) + { + if (!sprite->data[0x0]) + { + eRoulette->var7D = 0xFF; + eRoulette->var03_7 = 0x0; + StartSpriteAnim(sprite, sprite->animCmdIndex + 0x3); + sub_81186B8(sprite); + sprite->data[0x4] = 30; + sub_811866C(sprite); + sprite->data[0x6] = (sprite->data[0x6] / 30) * 30 + 15; + sprite->callback = &sub_8118834; + m4aSongNumStartOrChange(0x47); + } + else + { + sprite->animPaused = TRUE; + m4aSongNumStart(0x38); + sub_811952C(sprite); + } + } +} + +#ifdef NONMATCHING +void sub_8118DE4(struct Sprite *sprite) +{ + sub_8118724(sprite); + sprite->data[0x2] = 0x0; + sub_81186B8(sprite); + if (!(gUnknown_083F8D90[eRoulette->var7E].var04 & eRoulette->var08)) + { + eRoulette->var7D = 0xFF; + eRoulette->var03_7 = 0x0; + StartSpriteAnim(sprite, sprite->animCmdIndex + 0x3); + sub_81186B8(sprite); + sprite->data[0x4] = 30; + sub_811866C(sprite); + sprite->data[0x6] = (sprite->data[0x6] / 30) * 30 + 15; + sprite->callback = &sub_8118834; + m4aSongNumStartOrChange(0x47); + } + else + { + u8 t; + u32 z; + m4aSongNumStart(0x38); + if ((z = (Random() & 0x1))) + { + u32 o; + eRoulette->var8C = 0.0f; + o = (eRoulette->var7E + 0x1) % 0xC; + t = o; + eRoulette->var7F = o; + } + else + { + eRoulette->var8C = gUnknown_083F8DF4[eRoulette->var04_0].var1C * 2; // couldn't replicate loads + t = (eRoulette->var7E + 0xB) % 0xC; + eRoulette->var7F = eRoulette->var7E; + } + if (gUnknown_083F8D90[t].var04 & eRoulette->var08) + { + sprite->data[0x0] = 0x1; + sprite->data[0x2] = (&gUnknown_083F8DF4[eRoulette->var04_0])->var02; + } + else + { + sprite->data[0x0] = gUnknown_083F8D90[t].var04 & eRoulette->var08; + if (eRoulette->var04_0) + { + sprite->data[0x2] = (&gUnknown_083F8DF4[eRoulette->var04_0])->var01; + } + else + { + sprite->data[0x2] = (&gUnknown_083F8DF4[eRoulette->var04_0])->var02; + if (z) + { + eRoulette->var8C = 1.5f; + } + else + { + eRoulette->var8C = -1.5f; + } + } + } + eRoulette->var98 = 0.085f; + sprite->callback = &sub_8118D2C; + sprite->data[0x1] = 0x5; + } +} +#else +__attribute__((naked)) +void sub_8118DE4(struct Sprite *sprite) +{ +asm(".syntax unified\n\ +push {r4-r7,lr}\n\ +mov r7, r9\n\ +mov r6, r8\n\ +push {r6,r7}\n\ +adds r7, r0, 0\n\ +bl sub_8118724\n\ +movs r0, 0\n\ +strh r0, [r7, 0x32]\n\ +adds r0, r7, 0\n\ +bl sub_81186B8\n\ +ldr r1, _08118E70 @ =gUnknown_083F8D90\n\ +ldr r6, _08118E74 @ =gSharedMem + 0x19000\n\ +movs r0, 0x7E\n\ +adds r0, r6\n\ +mov r8, r0\n\ +ldrb r0, [r0]\n\ +lsls r0, 3\n\ +adds r1, 0x4\n\ +adds r0, r1\n\ +ldr r0, [r0]\n\ +ldr r1, [r6, 0x8]\n\ +ands r0, r1\n\ +cmp r0, 0\n\ +bne _08118E7C\n\ +adds r1, r6, 0\n\ +adds r1, 0x7D\n\ +movs r0, 0xFF\n\ +strb r0, [r1]\n\ +ldrb r1, [r6, 0x3]\n\ +movs r0, 0x7F\n\ +ands r0, r1\n\ +strb r0, [r6, 0x3]\n\ +adds r0, r7, 0\n\ +adds r0, 0x2B\n\ +ldrb r1, [r0]\n\ +adds r1, 0x3\n\ +lsls r1, 24\n\ +lsrs r1, 24\n\ +adds r0, r7, 0\n\ +bl StartSpriteAnim\n\ +adds r0, r7, 0\n\ +bl sub_81186B8\n\ +movs r0, 0x1E\n\ +strh r0, [r7, 0x36]\n\ +adds r0, r7, 0\n\ +bl sub_811866C\n\ +movs r1, 0x3A\n\ +ldrsh r0, [r7, r1]\n\ +movs r1, 0x1E\n\ +bl __divsi3\n\ +lsls r0, 16\n\ +asrs r0, 16\n\ +lsls r1, r0, 4\n\ +subs r1, r0\n\ +lsls r1, 1\n\ +adds r1, 0xF\n\ +strh r1, [r7, 0x3A]\n\ +ldr r0, _08118E78 @ =sub_8118834\n\ +str r0, [r7, 0x1C]\n\ +movs r0, 0x47\n\ +bl m4aSongNumStartOrChange\n\ +b _08118F74\n\ +.align 2, 0\n\ +_08118E70: .4byte gUnknown_083F8D90\n\ +_08118E74: .4byte gSharedMem + 0x19000\n\ +_08118E78: .4byte sub_8118834\n\ +_08118E7C:\n\ +movs r0, 0x38\n\ +bl m4aSongNumStart\n\ +bl Random\n\ +movs r2, 0x1\n\ +mov r9, r2\n\ +mov r1, r9\n\ +ands r1, r0\n\ +mov r9, r1\n\ +cmp r1, 0\n\ +beq _08118EC0\n\ +adds r1, r6, 0\n\ +adds r1, 0x8C\n\ +ldr r0, _08118EB8 @ =0x00000000\n\ +str r0, [r1]\n\ +mov r2, r8\n\ +ldrb r0, [r2]\n\ +adds r0, 0x1\n\ +movs r1, 0xC\n\ +bl __modsi3\n\ +lsls r1, r0, 24\n\ +lsrs r2, r1, 24\n\ +adds r1, r6, 0\n\ +adds r1, 0x7F\n\ +strb r0, [r1]\n\ +ldr r5, _08118EBC @ =gUnknown_083F8DF4\n\ +b _08118EF4\n\ +.align 2, 0\n\ +_08118EB8: .4byte 0x00000000\n\ +_08118EBC: .4byte gUnknown_083F8DF4\n\ +_08118EC0:\n\ +adds r4, r6, 0\n\ +adds r4, 0x8C\n\ +ldr r5, _08118F1C @ =gUnknown_083F8DF4\n\ +ldrb r0, [r6, 0x4]\n\ +lsls r0, 30\n\ +lsrs r0, 25\n\ +adds r1, r5, 0\n\ +adds r1, 0x1C\n\ +adds r0, r1\n\ +ldr r1, [r0]\n\ +adds r0, r1, 0\n\ +bl __addsf3\n\ +str r0, [r4]\n\ +mov r0, r8\n\ +ldrb r4, [r0]\n\ +adds r0, r4, 0\n\ +adds r0, 0xB\n\ +movs r1, 0xC\n\ +bl __modsi3\n\ +lsls r0, 24\n\ +lsrs r2, r0, 24\n\ +adds r0, r6, 0\n\ +adds r0, 0x7F\n\ +strb r4, [r0]\n\ +_08118EF4:\n\ +ldr r0, _08118F20 @ =gUnknown_083F8D90\n\ +lsls r1, r2, 3\n\ +adds r0, 0x4\n\ +adds r1, r0\n\ +ldr r2, _08118F24 @ =gSharedMem + 0x19000\n\ +ldr r1, [r1]\n\ +ldr r0, [r2, 0x8]\n\ +ands r1, r0\n\ +cmp r1, 0\n\ +beq _08118F28\n\ +movs r0, 0x1\n\ +strh r0, [r7, 0x2E]\n\ +ldrb r0, [r2, 0x4]\n\ +lsls r0, 30\n\ +lsrs r0, 25\n\ +adds r0, r5\n\ +ldrb r0, [r0, 0x2]\n\ +strh r0, [r7, 0x32]\n\ +b _08118F64\n\ +.align 2, 0\n\ +_08118F1C: .4byte gUnknown_083F8DF4\n\ +_08118F20: .4byte gUnknown_083F8D90\n\ +_08118F24: .4byte gSharedMem + 0x19000\n\ +_08118F28:\n\ +strh r1, [r7, 0x2E]\n\ +ldrb r1, [r2, 0x4]\n\ +movs r0, 0x3\n\ +ands r0, r1\n\ +cmp r0, 0\n\ +beq _08118F40\n\ +lsls r0, r1, 30\n\ +lsrs r0, 25\n\ +adds r0, r5\n\ +ldrb r0, [r0, 0x1]\n\ +strh r0, [r7, 0x32]\n\ +b _08118F64\n\ +_08118F40:\n\ +lsls r0, r1, 30\n\ +lsrs r0, 25\n\ +adds r0, r5\n\ +ldrb r0, [r0, 0x2]\n\ +strh r0, [r7, 0x32]\n\ +mov r1, r9\n\ +cmp r1, 0\n\ +beq _08118F5C\n\ +adds r1, r2, 0\n\ +adds r1, 0x8C\n\ +ldr r0, _08118F58 @ =0x3f000000\n\ +b _08118F62\n\ +.align 2, 0\n\ +_08118F58: .4byte 0x3f000000\n\ +_08118F5C:\n\ +adds r1, r2, 0\n\ +adds r1, 0x8C\n\ +ldr r0, _08118F80 @ =0xbfc00000\n\ +_08118F62:\n\ +str r0, [r1]\n\ +_08118F64:\n\ +adds r1, r2, 0\n\ +adds r1, 0x98\n\ +ldr r0, _08118F84 @ =0x3dae147b\n\ +str r0, [r1]\n\ +ldr r0, _08118F88 @ =sub_8118D2C\n\ +str r0, [r7, 0x1C]\n\ +movs r0, 0x5\n\ +strh r0, [r7, 0x30]\n\ +_08118F74:\n\ +pop {r3,r4}\n\ +mov r8, r3\n\ +mov r9, r4\n\ +pop {r4-r7}\n\ +pop {r0}\n\ +bx r0\n\ +.align 2, 0\n\ +_08118F80: .4byte 0xbfc00000\n\ +_08118F84: .4byte 0x3dae147b\n\ +_08118F88: .4byte sub_8118D2C\n\ +.syntax divided\n"); +} +#endif + +void sub_8118F8C(struct Sprite *sprite) +{ + sub_8118724(sprite); + if (!(eRoulette->var8C > 0.5f)) + { + sub_81186B8(sprite); + if (sub_81186E8(sprite) == 0x0) + { + struct StructgUnknown_083F8DF4 *p; + eRoulette->var90 = 0.0f; + p = &gUnknown_083F8DF4[0]; + eRoulette->var8C -= ((float)p[eRoulette->var04_0].var03) + / ((float)(s16)((&p[eRoulette->var04_0])->var04 + 0x1)); + sprite->data[0x1] = 0x4; + sprite->callback = &sub_8118DE4; + } + else + { + if (eRoulette->var90 != 0.0f) + { + if (eRoulette->var8C < 0.0f) + { + eRoulette->var90 = 0.0f; + eRoulette->var8C = 0.0f; + eRoulette->var98 /= 1.2; + } + } + } + } +} + +void sub_8119088(struct Sprite *sprite) +{ + sub_8118724(sprite); + if (!(eRoulette->var94 > 40.f)) + { + eRoulette->var98 = - ( 4.0f / (float)(u16)eRoulette->var86); + eRoulette->var90 = - (eRoulette->var8C / (float)(u16)eRoulette->var86); + sprite->animNum = 0x2; + sprite->animBeginning = TRUE; + sprite->animEnded = FALSE; + sprite->data[0x1] = 0x3; + sprite->callback = &sub_8118F8C; + } +} + +void sub_8119134(struct Sprite *sprite) +{ + sub_8118724(sprite); + if (!(eRoulette->var94 > 60.0f)) + { + m4aSongNumStartOrChange(0x5D); + eRoulette->var98 = - ( 20.0f / (float)(u16)eRoulette->var84); + eRoulette->var90 = ((1.0f - eRoulette->var8C) / (float)(u16)eRoulette->var84); + sprite->animNum = 0x1; + sprite->animBeginning = TRUE; + sprite->animEnded = FALSE; + sprite->data[0x1] = 0x2; + sprite->callback = &sub_8119088; + } +} + +void sub_81191F4(struct Sprite *sprite) +{ + sprite->data[0x1] = 0x1; + sprite->data[0x2] = 0x0; + sub_8118724(sprite); + sprite->invisible = FALSE; + sprite->callback = &sub_8119134; +} + +void sub_8119224(struct Sprite *sprite) +{ + u16 t; + u8 i; + s16 s[0x2][0x2]; + struct Roulette *p; + memcpy(s, &gUnknown_083FA60E, 0x8); + t = sprite->data[0x7] - 0x2; + p = eRoulette; + p->var3C[0x37] = CreateSprite(&gSpriteTemplate_83FA50C, 0x24, -0xC, 0x32); + p->var3C[0x38] = CreateSprite(&gSpriteTemplate_83FA5C0[0x0], s[sprite->data[0x0]][0x0], s[sprite->data[0x0]][0x1], 0x3B); + p->var3C[0x39] = CreateSprite(&gSpriteTemplate_83FA5C0[0x1], 0x24, 0x8C, 0x33); + gSprites[eRoulette->var3C[0x39]].oam.objMode = 0x1; + for (i = 0x0; i < 0x3; i++) + { + gSprites[eRoulette->var3C[0x37 + i]].coordOffsetEnabled = FALSE; + gSprites[eRoulette->var3C[0x37 + i]].invisible = TRUE; + gSprites[eRoulette->var3C[0x37 + i]].animPaused = TRUE; + gSprites[eRoulette->var3C[0x37 + i]].affineAnimPaused = TRUE; + gSprites[eRoulette->var3C[0x37 + i]].data[0x4] = eRoulette->var3C[0x37]; + gSprites[eRoulette->var3C[0x37 + i]].data[0x5] = eRoulette->var3C[0x38]; + gSprites[eRoulette->var3C[0x37 + i]].data[0x6] = eRoulette->var3C[0x39]; + gSprites[eRoulette->var3C[0x37 + i]].data[0x2] = t; + gSprites[eRoulette->var3C[0x37 + i]].data[0x3] = (sprite->data[0x7] * (&gUnknown_083F8DF4[eRoulette->var04_0])->var01) + + ((&gUnknown_083F8DF4[eRoulette->var04_0])->var02 + 0xFFFF); + } + gSprites[eRoulette->var3C[0x38]].coordOffsetEnabled = TRUE; + eRoulette->var38 = sprite; +} + +void sub_81193D4(struct Sprite *sprite) +{ + u8 i = 0; + s16 t; + s16 s[0x2][0x2]; + struct StructgUnknown_083F8DF4 *p; + memcpy(s, &gUnknown_083FA616, 0x8); + t = sprite->data[0x7] - 0x2; + eRoulette->var3C[0x37] = CreateSprite(&gSpriteTemplate_83FA524, s[sprite->data[0x0]][0x0], s[sprite->data[0x0]][0x1], 0x32); + StartSpriteAnim(&gSprites[eRoulette->var3C[0x37]], sprite->data[0x0]); + eRoulette->var3C[0x38] = CreateSprite(&gSpriteTemplate_83FA5F0, s[sprite->data[0x0]][0x0], s[sprite->data[0x0]][0x1], 0x33); + gSprites[eRoulette->var3C[0x38]].affineAnimPaused = TRUE; + gSprites[eRoulette->var3C[0x38]].animPaused = TRUE; + sprite->data[0x7] = (t * (p = &gUnknown_083F8DF4[0])[eRoulette->var04_0].var01) + (p[eRoulette->var04_0].var10 + 0x2D); + for (; i < 0x2; i++) + { + gSprites[eRoulette->var3C[0x37 + i]].data[0x4] = eRoulette->var3C[0x37]; + gSprites[eRoulette->var3C[0x37 + i]].data[0x5] = eRoulette->var3C[0x38]; + gSprites[eRoulette->var3C[0x37 + i]].data[0x6] = eRoulette->var3C[0x38]; + gSprites[eRoulette->var3C[0x37 + i]].data[0x2] = t; + gSprites[eRoulette->var3C[0x37 + i]].data[0x3] = sprite->data[0x7] - 0x2D; + } + eRoulette->var38 = sprite; +} + +#ifdef NONMATCHING +void sub_811952C(struct Sprite *sprite) +{ + u8 z; + register u8 h asm("r10") = 0x0; + u8 j = 0x5; + u32 p = 0x0; + u16 o; + u8 i; + u8 s[0xA] = (u8[]){0,0,0,0,0,0,0,0,0,0}; + u16 t = Random(); + eRoulette->var7D = 0x1; + eRoulette->var03_5 = TRUE; + eRoulette->var03_6 = FALSE; + eRoulette->var7E = 0xFF; + eRoulette->var88 = sprite->data[0x3]; + eRoulette->var98 = 0.0f; + eRoulette->var8C = (&gUnknown_083F8DF4[eRoulette->var04_0])->var1C; //couldn't replicate load, same as sub_8118DE4 + o = (eRoulette->var04_0 * 30 + 33) + (0x1 - eRoulette->var03_0) * 15; + for (i = 0x0; i < 0x4; i++) + { + if (o < sprite->data[0x3] && !(sprite->data[0x3] > o + 90)) + { + sprite->data[0x0] = i * 0x2; + eRoulette->var03_0 = 0x1 & i; + break; + } + if (i == 0x3) + { + sprite->data[0x0] = 0x1; + eRoulette->var03_0 = 0x1; + break; + } + o += 90; + } + if (eRoulette->var03_0) + { + if (sprite->data[0x0]) + { + PlayCry1(0x130, -0x3F); + } + else + { + PlayCry1(0x130, 0x3F); + } + } + else + { + PlayCry1(0x132, -0x3F); + } + i = 0x2; + z = (eRoulette->var7F + 0x2) % 0xC; + if (eRoulette->var03_0 == 0x1 && eRoulette->var04_0 == 0x1) + j += 0x6; + else + j += i; + for (; i < j; i++) + { + if (!(eRoulette->var08 & gUnknown_083F8D90[z].var04)) + { + s[h++] = i; + if (!p && (gUnknown_083F8D90[z].var04 & gUnknown_083F8C00[eRoulette->var1B[eRoulette->var1A_0]].var00)) + { + p = i; + } + } + z = (z + 0x1) % 0xC; + } + if ((eRoulette->var03_0 + 0x1) & eRoulette->var02) + { + if (p && (t & 0xFF) <= 0xBF) + { + sprite->data[0x7] = p; + } + else + { + sprite->data[0x7] = s[t % h]; + } + } + else + { + sprite->data[0x7] = s[t % h]; + } + sprite->callback = &sub_8118CEC; +} +#else +__attribute__((naked)) +void sub_811952C(struct Sprite *sprite) +{ +asm(".syntax 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, 0x14\n\ +mov r8, r0\n\ +movs r0, 0\n\ +mov r10, r0\n\ +movs r1, 0x5\n\ +mov r9, r1\n\ +movs r2, 0\n\ +str r2, [sp, 0xC]\n\ +mov r0, sp\n\ +movs r1, 0\n\ +movs r2, 0xA\n\ +bl memset\n\ +bl Random\n\ +lsls r0, 16\n\ +lsrs r0, 16\n\ +str r0, [sp, 0x10]\n\ +ldr r7, _08119610 @ =gSharedMem + 0x19000\n\ +adds r0, r7, 0\n\ +adds r0, 0x7D\n\ +movs r6, 0x1\n\ +strb r6, [r0]\n\ +ldrb r4, [r7, 0x3]\n\ +movs r0, 0x20\n\ +orrs r4, r0\n\ +movs r0, 0x41\n\ +negs r0, r0\n\ +ands r4, r0\n\ +strb r4, [r7, 0x3]\n\ +adds r1, r7, 0\n\ +adds r1, 0x7E\n\ +movs r0, 0xFF\n\ +strb r0, [r1]\n\ +adds r5, r7, 0\n\ +adds r5, 0x88\n\ +mov r3, r8\n\ +movs r1, 0x34\n\ +ldrsh r0, [r3, r1]\n\ +bl __floatsisf\n\ +str r0, [r5]\n\ +adds r1, r7, 0\n\ +adds r1, 0x98\n\ +ldr r0, _08119614 @ =0x00000000\n\ +str r0, [r1]\n\ +adds r3, r7, 0\n\ +adds r3, 0x8C\n\ +ldr r2, _08119618 @ =gUnknown_083F8DF4\n\ +ldrb r0, [r7, 0x4]\n\ +lsls r0, 30\n\ +lsrs r1, r0, 25\n\ +adds r2, 0x1C\n\ +adds r1, r2\n\ +ldr r1, [r1]\n\ +str r1, [r3]\n\ +lsrs r0, 30\n\ +lsls r1, r0, 4\n\ +subs r1, r0\n\ +lsls r1, 1\n\ +adds r1, 0x21\n\ +lsls r4, 27\n\ +lsrs r4, 27\n\ +subs r6, r4\n\ +lsls r0, r6, 4\n\ +subs r0, r6\n\ +adds r1, r0\n\ +lsls r1, 16\n\ +lsrs r1, 16\n\ +mov r5, r10\n\ +mov r3, r8\n\ +movs r0, 0x34\n\ +ldrsh r2, [r3, r0]\n\ +_081195C8:\n\ +cmp r1, r2\n\ +bge _081195D4\n\ +adds r0, r1, 0\n\ +adds r0, 0x5A\n\ +cmp r2, r0\n\ +ble _08119638\n\ +_081195D4:\n\ +cmp r5, 0x3\n\ +beq _0811961C\n\ +adds r0, r1, 0\n\ +adds r0, 0x5A\n\ +lsls r0, 16\n\ +lsrs r1, r0, 16\n\ +adds r0, r5, 0x1\n\ +lsls r0, 24\n\ +lsrs r5, r0, 24\n\ +cmp r5, 0x3\n\ +bls _081195C8\n\ +_081195EA:\n\ +ldr r0, _08119610 @ =gSharedMem + 0x19000\n\ +ldrb r1, [r0, 0x3]\n\ +movs r0, 0x1F\n\ +ands r0, r1\n\ +cmp r0, 0\n\ +beq _08119664\n\ +mov r1, r8\n\ +movs r2, 0x2E\n\ +ldrsh r0, [r1, r2]\n\ +cmp r0, 0\n\ +beq _08119658\n\ +movs r0, 0x98\n\ +lsls r0, 1\n\ +movs r1, 0x3F\n\ +negs r1, r1\n\ +bl PlayCry1\n\ +b _08119670\n\ +.align 2, 0\n\ +_08119610: .4byte gSharedMem + 0x19000\n\ +_08119614: .4byte 0x00000000\n\ +_08119618: .4byte gUnknown_083F8DF4\n\ +_0811961C:\n\ +movs r0, 0x1\n\ +mov r3, r8\n\ +strh r0, [r3, 0x2E]\n\ +ldr r2, _08119634 @ =gSharedMem + 0x19000\n\ +ldrb r1, [r2, 0x3]\n\ +subs r0, 0x21\n\ +ands r0, r1\n\ +movs r1, 0x1\n\ +orrs r0, r1\n\ +strb r0, [r2, 0x3]\n\ +b _081195EA\n\ +.align 2, 0\n\ +_08119634: .4byte gSharedMem + 0x19000\n\ +_08119638:\n\ +lsrs r0, r5, 1\n\ +mov r1, r8\n\ +strh r0, [r1, 0x2E]\n\ +ldr r3, _08119654 @ =gSharedMem + 0x19000\n\ +movs r1, 0x1\n\ +ands r1, r5\n\ +ldrb r2, [r3, 0x3]\n\ +movs r0, 0x20\n\ +negs r0, r0\n\ +ands r0, r2\n\ +orrs r0, r1\n\ +strb r0, [r3, 0x3]\n\ +b _081195EA\n\ +.align 2, 0\n\ +_08119654: .4byte gSharedMem + 0x19000\n\ +_08119658:\n\ +movs r0, 0x98\n\ +lsls r0, 1\n\ +movs r1, 0x3F\n\ +bl PlayCry1\n\ +b _08119670\n\ +_08119664:\n\ +movs r0, 0x99\n\ +lsls r0, 1\n\ +movs r1, 0x3F\n\ +negs r1, r1\n\ +bl PlayCry1\n\ +_08119670:\n\ +movs r5, 0x2\n\ +ldr r4, _081196A0 @ =gSharedMem + 0x19000\n\ +adds r0, r4, 0\n\ +adds r0, 0x7F\n\ +ldrb r0, [r0]\n\ +adds r0, 0x2\n\ +movs r1, 0xC\n\ +bl __modsi3\n\ +lsls r0, 24\n\ +lsrs r3, r0, 24\n\ +ldrb r1, [r4, 0x3]\n\ +movs r0, 0x1F\n\ +ands r0, r1\n\ +cmp r0, 0x1\n\ +bne _081196A4\n\ +ldrb r1, [r4, 0x4]\n\ +movs r0, 0x3\n\ +ands r0, r1\n\ +cmp r0, 0x1\n\ +bne _081196A4\n\ +mov r0, r9\n\ +adds r0, 0x6\n\ +b _081196A8\n\ +.align 2, 0\n\ +_081196A0: .4byte gSharedMem + 0x19000\n\ +_081196A4:\n\ +mov r2, r9\n\ +adds r0, r2, r5\n\ +_081196A8:\n\ +lsls r0, 24\n\ +lsrs r0, 24\n\ +mov r9, r0\n\ +cmp r5, r9\n\ +bcs _0811970E\n\ +ldr r6, _08119734 @ =gSharedMem + 0x19000\n\ +ldr r7, _08119738 @ =gUnknown_083F8C00 + 0xC\n\ +_081196B6:\n\ +lsls r0, r3, 3\n\ +ldr r1, _0811973C @ =gUnknown_083F8D90 + 0x4\n\ +adds r0, r1\n\ +ldr r1, [r6, 0x8]\n\ +ldr r2, [r0]\n\ +ands r1, r2\n\ +cmp r1, 0\n\ +bne _081196F8\n\ +mov r0, r10\n\ +adds r1, r0, 0x1\n\ +lsls r1, 24\n\ +lsrs r1, 24\n\ +mov r10, r1\n\ +add r0, sp\n\ +strb r5, [r0]\n\ +ldr r0, [sp, 0xC]\n\ +cmp r0, 0\n\ +bne _081196F8\n\ +ldrb r0, [r6, 0x1A]\n\ +lsls r0, 28\n\ +lsrs r0, 28\n\ +ldr r1, _08119740 @ =gSharedMem + 0x1901B\n\ +adds r0, r1\n\ +ldrb r1, [r0]\n\ +lsls r0, r1, 2\n\ +adds r0, r1\n\ +lsls r0, 2\n\ +adds r0, r7\n\ +ldr r0, [r0]\n\ +ands r2, r0\n\ +cmp r2, 0\n\ +beq _081196F8\n\ +str r5, [sp, 0xC]\n\ +_081196F8:\n\ +adds r0, r3, 0x1\n\ +movs r1, 0xC\n\ +bl __modsi3\n\ +lsls r0, 24\n\ +lsrs r3, r0, 24\n\ +adds r0, r5, 0x1\n\ +lsls r0, 24\n\ +lsrs r5, r0, 24\n\ +cmp r5, r9\n\ +bcc _081196B6\n\ +_0811970E:\n\ +ldrb r0, [r4, 0x3]\n\ +lsls r0, 27\n\ +lsrs r0, 27\n\ +adds r0, 0x1\n\ +ldrb r1, [r4, 0x2]\n\ +ands r0, r1\n\ +cmp r0, 0\n\ +beq _08119756\n\ +ldr r2, [sp, 0xC]\n\ +cmp r2, 0\n\ +beq _08119744\n\ +movs r0, 0xFF\n\ +ldr r3, [sp, 0x10]\n\ +ands r0, r3\n\ +cmp r0, 0xBF\n\ +bhi _08119744\n\ +mov r0, r8\n\ +strh r2, [r0, 0x3C]\n\ +b _08119766\n\ +.align 2, 0\n\ +_08119734: .4byte gSharedMem + 0x19000\n\ +_08119738: .4byte gUnknown_083F8C00 + 0xC\n\ +_0811973C: .4byte gUnknown_083F8D90 + 0x4\n\ +_08119740: .4byte gSharedMem + 0x1901B\n\ +_08119744:\n\ +ldr r0, [sp, 0x10]\n\ +mov r1, r10\n\ +bl __modsi3\n\ +add r0, sp\n\ +ldrb r0, [r0]\n\ +mov r1, r8\n\ +strh r0, [r1, 0x3C]\n\ +b _08119766\n\ +_08119756:\n\ +ldr r0, [sp, 0x10]\n\ +mov r1, r10\n\ +bl __modsi3\n\ +add r0, sp\n\ +ldrb r0, [r0]\n\ +mov r2, r8\n\ +strh r0, [r2, 0x3C]\n\ +_08119766:\n\ +ldr r3, _0811977C @ =sub_8118CEC\n\ +mov r0, r8\n\ +str r3, [r0, 0x1C]\n\ +add sp, 0x14\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\ +.align 2, 0\n\ +_0811977C: .4byte sub_8118CEC\n\ +.syntax divided\n"); +} +#endif + +void sub_8119780(struct Sprite *sprite) +{ + if (!(sprite->data[0x1]++ < sprite->data[0x3])) + { + if ((sprite->pos1.x -= 0x2) < -0x10) + { + if (!eRoulette->var03_6) + { + eRoulette->var03_6 = TRUE; + } + DestroySprite(sprite); + eRoulette->var01 = 0x0; + eRoulette->var34 = gUnknown_083FA61E[0x0]; + } + } +} + +void sub_81197D8(struct Sprite *sprite) +{ + u16 t[0x3][0x4]; + s32 p, z; + memcpy(t, &gUnknown_083FA632, 0x18); + if (sprite->data[0x1]++ < sprite->data[0x3]) + { + if(sprite->data[0x1] & 0x1) + { + gSpriteCoordOffsetY = t[sprite->data[0x2] / 0x2][sprite->data[0x7]]; + p = z = sprite->data[0x7] + 0x1; + if (z < 0) + p += 0x3; + sprite->data[0x7] = z - ((p >> 2) * 4); + } + sprite->invisible ^= 0x1; + } + else + { + gSpriteCoordOffsetY = 0x0; + gSprites[eRoulette->var3C[0x37]].animPaused = FALSE; + DestroySprite(sprite); + } +} + +void sub_8119898(struct Sprite *sprite) +{ + float t; + sprite->data[0x1]++; + t = sprite->data[0x1]; + sprite->pos2.y = t * 0.039f * t; + eRoulette->var34 = gUnknown_083FA61E[(eRoulette->var01 - 0x1) / 2]; + if (eRoulette->var01 < 0x13) + eRoulette->var01++; + if (sprite->data[0x1] > 0x3C) + { + sprite->data[0x1] = 0x0; + sprite->callback = &sub_8119780; + gSprites[sprite->data[0x6]].callback = &sub_8119780; + gSprites[sprite->data[0x6]].data[0x1] = -0x2; + gSprites[sprite->data[0x5]].invisible = FALSE; + gSprites[sprite->data[0x5]].callback = &sub_81197D8; + m4aSongNumStart(0xD6); + } +} + +void sub_8119964(struct Sprite *sprite) +{ + if(sprite->data[0x7] == 0x0) + { + register u32 t asm("r2"); + u32 z ; + if (eRoulette->var38->data[0x0] == 0x0) + { + t = eRoulette->var38->data[0x3]; + z = gUnknown_083F8DF4[eRoulette->var04_0].var08; + } + else + { + t = eRoulette->var38->data[0x3]; + z = gUnknown_083F8DF4[eRoulette->var04_0].var08; + z += 0xB4; + } + if (t == z) + { + sprite->invisible = FALSE; + sprite->data[0x7]++; + m4aSongNumStart(0x2B); + eRoulette->var01 = 0x1; + eRoulette->var34 = gUnknown_083FA61E[0x0]; + } + } + else + { + u32 t, z; + eRoulette->var34 = gUnknown_083FA61E[(eRoulette->var01 - 0x1) / 2]; + if (eRoulette->var01 < 0x13) + eRoulette->var01++; + if (eRoulette->var38->data[0x0] == 0x0) + { + t = eRoulette->var38->data[0x3]; + z = gUnknown_083F8DF4[eRoulette->var04_0].var0A; + } + else + { + t = eRoulette->var38->data[0x3]; + z = gUnknown_083F8DF4[eRoulette->var04_0].var0A ; + z += 0xB4; + } + if (t == z) + { + gSprites[sprite->data[0x4]].callback = &sub_8119898; + gSprites[sprite->data[0x4]].invisible = FALSE; + sprite->callback = &SpriteCallbackDummy; + sprite->data[0x7] = 0x0; + } + } +} + +void sub_8119A90(struct Sprite *sprite) +{ + sprite->invisible ^= 0x1; +} + +void sub_8119AAC(struct Sprite *sprite) +{ + if (sprite->pos1.y > -0x10) + { + sprite->pos1.y--; + } + else + { + sprite->callback = &SpriteCallbackDummy; + sprite->invisible = TRUE; + sprite->animPaused = TRUE; + m4aSongNumStop(0x5E); + DestroySprite(sprite); + FreeOamMatrix(gSprites[eRoulette->var3C[0x38]].oam.matrixNum); + DestroySprite(&gSprites[eRoulette->var3C[0x38]]); + } +} + +void sub_8119B24(struct Sprite *sprite) +{ + if (!(sprite->data[0x1] < 0x0)) + { + sprite->data[0x1]--; + sprite->pos1.y--; + if (sprite->data[0x1] == 0x0 && sprite->animCmdIndex == 0x1) + sprite->pos2.y++; + } + else + { + if (!(sprite->data[0x3] < 0x0)) + { + sprite->data[0x3]--; + if (sprite->animDelayCounter == 0x0) + { + if (sprite->animCmdIndex == 0x1) + sprite->pos2.y++; + else + sprite->pos2.y--; + } + } + else + { + m4aSongNumStart(0x2B); + StartSpriteAnim(sprite, eRoulette->var38->data[0x0] + 0x4); + sprite->callback = &sub_8119AAC; + gSprites[sprite->data[0x6]].affineAnimPaused = FALSE; + } + } +} + +void sub_8119BCC(struct Sprite *sprite) +{ + s8 t[0x2]; //sign + s8 z[0x8][0x2]; + memcpy(t, &gUnknown_083FA64A, 0x2); + memcpy(z, &gUnknown_083FA64C, 0x10); + if (sprite->data[0x1]-- > 0x7) + { + sprite->pos1.x += t[eRoulette->var38->data[0x0]] * 0x2; + if (IsSEPlaying()) + { + s8 u = -((0x74 - sprite->pos1.x) / 0x2); + m4aMPlayPanpotControl(&gMPlay_SE1, 0xFFFF,u); + m4aMPlayPanpotControl(&gMPlay_SE2, 0xFFFF, u); + } + } + else + { + if (!(sprite->data[0x1] < 0x0)) + { + sprite->pos1.x += t[eRoulette->var38->data[0x0]] * z[0x7 - sprite->data[0x1]][0x0]; + sprite->pos1.y += z[0x7 - sprite->data[0x1]][0x1]; + } + else + { + m4aSongNumStartOrChange(0x5E); + if(eRoulette->var38->data[0x0] == 0x0) + PlayCry1(0x130, 0x3F); + else + PlayCry1(0x130, -0x3F); + StartSpriteAnim(sprite, eRoulette->var38->data[0x0] + 0x2); + sprite->data[0x1] = 45; + sprite->callback = &sub_8119B24; + } + } +} + +void sub_8119D08(struct Sprite *sprite) +{ + s8 t[0x2]; //sign + memcpy(t, &gUnknown_083FA64A, 0x2); + if (!(sprite->data[0x1]-- < 0x0)) + { + sprite->pos1.x += t[eRoulette->var38->data[0x0]] * 0x2; + gSprites[sprite->data[0x6]].invisible ^= 0x1; + } + else + { + sprite->callback = &sub_8119A90; + } +} + +void sub_8119D80(struct Sprite *sprite) +{ + if (eRoulette->var38->data[0x0] == 0x0) + { + if (eRoulette->var38->data[0x3] == gUnknown_083F8DF4[eRoulette->var04_0].var12 + 90) + { + gSprites[sprite->data[0x6]].data[0x1] = 0x34; + gSprites[sprite->data[0x4]].data[0x1] = 0x34; + } + else + { + return; + } + } + else + { + if (eRoulette->var38->data[0x3] == gUnknown_083F8DF4[eRoulette->var04_0].var14 + 270) + { + gSprites[sprite->data[0x6]].data[0x1] = 0x2E; + gSprites[sprite->data[0x4]].data[0x1] = 0x2E; + } + else + { + return; + } + } + gSprites[sprite->data[0x6]].callback = &sub_8119D08; + gSprites[sprite->data[0x4]].callback = &sub_8119BCC; + m4aSongNumStart(0x2B); +} diff --git a/src/roulette_util.c b/src/roulette_util.c new file mode 100644 index 000000000..3d5b03a5c --- /dev/null +++ b/src/roulette_util.c @@ -0,0 +1,280 @@ +#include "global.h" +#include "roulette_util.h" +#include "roulette.h" + +static u8 sub_81249E4(struct UnkStruct3 *); +static u8 sub_8124BEC(struct UnkStruct3 *); +u8 unref_sub_81249B0(struct UnkStruct0 *, u8); + +extern u16 gPlttBufferFaded[]; +extern u16 gPlttBufferUnfaded[]; + +void sub_8124918(struct UnkStruct0 *r0) +{ + r0->var00 = 0; + r0->var02 = 0; + memset((&r0->var04), 0, 0xC0); +} + +u8 sub_812492C(struct UnkStruct0 *r0, u8 r1, struct UnkStruct1 *r2) +{ + if (!(r1 < 0x10) || (r0->var04[r1].var00_7)) + return 0xFF; + + r0->var04[r1].var04.var00 = r2->var00; + r0->var04[r1].var04.var02 = r2->var02; + r0->var04[r1].var04.var04 = r2->var04; + r0->var04[r1].var04.var05 = r2->var05; + r0->var04[r1].var04.var06 = r2->var06; + r0->var04[r1].var04.var07_0 = r2->var07_0; + r0->var04[r1].var04.var07_5 = r2->var07_5; + r0->var04[r1].var04.var07_7 = r2->var07_7; + + + r0->var04[r1].var00_0 = 0x0; + r0->var04[r1].var00_7 = 0x1; + + r0->var04[r1].var02 = 0x0; + r0->var04[r1].var01 = 0x0; + if (r0->var04[r1].var04.var07_7 < 0) + r0->var04[r1].var03 = 0xFF; + else + r0->var04[r1].var03 = 0x1; + return r1; +} + +#ifdef NONMATCHING +u8 unref_sub_81249B0(struct UnkStruct0 *r0, u8 r1) +{ + if (r1 < 0x10) + { + if (r0->var04[r1].var00_7) + { + r0->var04[r1] = (struct UnkStruct3){0}; + return r1; + } + } + return 0xFF; +} +#else +__attribute__((naked)) +u8 unref_sub_81249B0(struct UnkStruct0 *r0 , u8 r1) +{ + asm(".syntax unified\n\ + push {r4,lr}\n\ + adds r2, r0, 0\n\ + lsls r1, 24\n\ + lsrs r1, 24\n\ + adds r4, r1, 0\n\ + cmp r4, 0xF\n\ + bhi _081249DC\n\ + lsls r0, r4, 1\n\ + adds r0, r4\n\ + lsls r0, 2\n\ + adds r1, r2, r0\n\ + ldrb r0, [r1, 0x4]\n\ + lsrs r0, 7\n\ + cmp r0, 0\n\ + beq _081249DC\n\ + adds r0, r1, 0x4\n\ + movs r1, 0\n\ + movs r2, 0xC\n\ + bl memset\n\ + adds r0, r4, 0\n\ + b _081249DE\n\ + _081249DC:\n\ + movs r0, 0xFF\n\ + _081249DE:\n\ + pop {r4}\n\ + pop {r1}\n\ + bx r1\n\ + .syntax divided\n"); +} +#endif + +u8 sub_81249E4(struct UnkStruct3 *r0) +{ + u8 i; + u8 returnval; + for (i = 0; i < r0->var04.var04; i++) + { + u32 offset = r0->var04.var02 + i; + struct PlttData *faded = (struct PlttData *)&gPlttBufferFaded[offset]; + struct PlttData *unfaded = (struct PlttData *)&gPlttBufferUnfaded[offset]; + switch(r0->var00_0) + { + case 0x1: + if ((u32)(faded->r + r0->var03) < 0x20) + faded->r += r0->var03; + if ((u32)(faded->g + r0->var03) < 0x20) + faded->g += r0->var03; + if ((u32)(faded->b + r0->var03) < 0x20) + faded->b += r0->var03; + break; + case 0x2: + if (r0->var03 < 0) + { + if (!(faded->r + r0->var03 < unfaded->r)) + faded->r += r0->var03; + if (!(faded->g + r0->var03 < unfaded->g)) + faded->g += r0->var03; + if (!(faded->b + r0->var03 < unfaded->b)) + faded->b += r0->var03; + } + else + { + if (!(faded->r + r0->var03 > unfaded->r)) + faded->r += r0->var03; + if (!(faded->g + r0->var03 > unfaded->g)) + faded->g += r0->var03; + if (!(faded->b + r0->var03 > unfaded->b)) + faded->b += r0->var03; + } + break; + } + } + if (((u32)r0->var02++) != r0->var04.var07_0) + { + returnval = 0x0; + } + else + { + r0->var02 = 0x0; + r0->var03 = r0->var03 * -1; + if (r0->var00_0 == 0x1) + r0->var00_0++; + else + r0->var00_0--; + returnval = 0x1; + } + return returnval; +} + +u8 sub_8124BEC(struct UnkStruct3 *r0) +{ + u8 rg2 = 0; + switch (r0->var00_0) + { + case 0x1: + for (rg2 = 0; rg2 < r0->var04.var04; rg2++) + gPlttBufferFaded[r0->var04.var02 + rg2] = r0->var04.var00; + r0->var00_0++; + break; + case 0x2: + for (rg2 = 0; rg2 < r0->var04.var04; rg2++) + gPlttBufferFaded[r0->var04.var02 + rg2] = gPlttBufferUnfaded[r0->var04.var02 + rg2]; + r0->var00_0--; + break; + } + return 0x1; +} + +void task_tutorial_controls_fadein(struct UnkStruct0 *r0) +{ + u8 i = 0; + if (r0->var00) + { + for (i = 0; i < 0x10; i++) + { + if ((r0->var02 >> i) & 0x1) + { + if (((u8)--r0->var04[i].var01) == 0xFF) // if underflow ? + { + if (r0->var04[i].var04.var00 & (0x80 << 8)) // PlttData->unused_15 ? + sub_81249E4(&r0->var04[i]); + else + sub_8124BEC(&r0->var04[i]); + r0->var04[i].var01 = r0->var04[i].var04.var05; + } + } + } + } +} + +void sub_8124CE8(struct UnkStruct0 *r0, u16 r1) +{ + u8 i = 0; + r0->var00++; + for (i = 0; i < 0x10; i++) + { + if ((r1 >> i) & 0x1) + { + if (r0->var04[i].var00_7) + { + r0->var02 |= 0x1 << i; + r0->var04[i].var00_0 = 0x1; + } + } + } +} + +void sub_8124D3C(struct UnkStruct0 *r0, u16 r1) +{ + u8 i; + for (i = 0; i < 0x10; i++) + { + if ((r0->var02 >> i) & 0x1) + { + if (r0->var04[i].var00_7) + { + if ((r1 >> i) & 0x1) + { + u32 offset = r0->var04[i].var04.var02; + u16 *faded = &gPlttBufferFaded[offset]; + u16 *unfaded = &gPlttBufferUnfaded[offset]; + memcpy(faded, unfaded, r0->var04[i].var04.var04 * 2); + r0->var04[i].var00_0 = 0x0; + r0->var04[i].var02 = 0x0; + r0->var04[i].var01 = 0x0; + if (r0->var04[i].var04.var07_7 < 0) + r0->var04[i].var03 = 0xFF; + else + r0->var04[i].var03 = 0x1; + } + } + } + } + if (r1 == 0xFFFF) + { + r0->var00 = 0x0; + r0->var02 = 0x0; + } + else + { + r0->var02 = r0->var02 & ~r1; + } +} +void sub_8124DDC(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height) +{ + + u16 *_dest; + u8 i; + u8 j; + i = 0x0; + dest = &dest[top * 32 + left]; + for (; i < height; i++) + { + _dest = dest + i * 32; + for (j = 0; j < width; j++) + { + *_dest++ = src; + } + } +} +void sub_8124E2C(u16 *dest, u16 *src, u8 left, u8 top, u8 width, u8 height) +{ + u16 *_dest; + u16 *_src = src; + u8 i; + u8 j; + i = 0x0; + dest = &dest[top * 32 + left]; + for (; i < height; i++) + { + _dest = dest + i * 32; + for (j = 0; j < width; j++) + { + *_dest++ = *_src++; + } + } +} diff --git a/src/scene/evolution_scene.c b/src/scene/evolution_scene.c index f307f5979..4ee601360 100644 --- a/src/scene/evolution_scene.c +++ b/src/scene/evolution_scene.c @@ -65,8 +65,8 @@ void nullsub_6(void); bool32 IsHMMove2(u16 move); extern struct Window gUnknown_03004210; -extern u16 gUnknown_030042A4; -extern u16 gUnknown_030042A0; +extern u16 gBattle_BG0_X; +extern u16 gBattle_BG0_Y; extern u16 gBattle_BG1_X; extern u16 gBattle_BG1_Y; extern u16 gBattle_BG2_X; @@ -200,8 +200,8 @@ void EvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, bool8 canStopEvo, SetUpWindowConfig(&gWindowConfig_81E6C58); ResetPaletteFade(); - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -308,8 +308,8 @@ static void CB2_EvolutionSceneLoadGraphics(void) REG_WINOUT = 0; SetUpWindowConfig(&gWindowConfig_81E6C58); ResetPaletteFade(); - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -362,8 +362,8 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) ResetSpriteData(); FreeAllSpritePalettes(); gReservedSpritePaletteCount = 4; - gUnknown_030042A4 = 0; - gUnknown_030042A0 = 0; + gBattle_BG0_X = 0; + gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gBattle_BG2_X = 0; @@ -3923,8 +3923,8 @@ static void EvoDummyFunc(void) static void VBlankCB_EvolutionScene(void) { REG_BG0CNT = BGCNT_SCREENBASE(24) | BGCNT_16COLOR | BGCNT_TXT256x256 | BGCNT_AFF512x512 | BGCNT_PRIORITY(3); // 0x9803 - REG_BG0HOFS = gUnknown_030042A4; - REG_BG0VOFS = gUnknown_030042A0; + REG_BG0HOFS = gBattle_BG0_X; + REG_BG0VOFS = gBattle_BG0_Y; REG_BG1HOFS = gBattle_BG1_X; REG_BG1VOFS = gBattle_BG1_Y; REG_BG2HOFS = gBattle_BG2_X; @@ -3939,8 +3939,8 @@ static void VBlankCB_EvolutionScene(void) static void VBlankCB_TradeEvolutionScene(void) { - REG_BG0HOFS = gUnknown_030042A4; - REG_BG0VOFS = gUnknown_030042A0; + REG_BG0HOFS = gBattle_BG0_X; + REG_BG0VOFS = gBattle_BG0_Y; REG_BG1HOFS = gBattle_BG1_X; REG_BG1VOFS = gBattle_BG1_Y; REG_BG2HOFS = gBattle_BG2_X; diff --git a/src/unknown_task.c b/src/unknown_task.c index 62245502a..2c71bfb08 100644 --- a/src/unknown_task.c +++ b/src/unknown_task.c @@ -12,8 +12,8 @@ extern u16 gBattle_BG1_Y; extern u16 gUnknown_030041B8; extern u16 gBattle_BG2_Y; extern u16 gBattle_BG2_X; -extern u16 gUnknown_030042A0; -extern u16 gUnknown_030042A4; +extern u16 gBattle_BG0_Y; +extern u16 gBattle_BG0_X; extern u16 gBattle_BG1_X; extern u8 gUnknown_0202FFA4; @@ -120,10 +120,10 @@ static void task00_for_dp12(u8 taskId) switch (gTasks[taskId].data[6]) { case 0x0: - value = gUnknown_030042A4; + value = gBattle_BG0_X; break; case 0x2: - value = gUnknown_030042A0; + value = gBattle_BG0_Y; break; case 0x4: value = gBattle_BG1_X; diff --git a/sym_common.txt b/sym_common.txt index 87b411ff4..f620e9e49 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -53,10 +53,10 @@ gBattleTerrain: @ 300428C gBattleTextBuff2: @ 3004290 .space 0x10 -gUnknown_030042A0: @ 30042A0 +gBattle_BG0_Y: @ 30042A0 .space 0x4 -gUnknown_030042A4: @ 30042A4 +gBattle_BG0_X: @ 30042A4 .space 0xC gBattleTextBuff3: @ 30042B0 diff --git a/sym_ewram.txt b/sym_ewram.txt index cffa8396d..fc4ea94ef 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -65,16 +65,16 @@ gBattlePartyID: @ 2024A6A gBanksBySide: @ 2024A72 .space 0x4 -gUnknown_02024A76: @ 2024A76 +gActionsByTurnOrder: @ 2024A76 .space 0x4 -gTurnOrder: @ 2024A7A +gBanksByTurnOrder: @ 2024A7A .space 0x4 -gCurrentMoveTurn: @ 2024A7E +gCurrentTurnActionNumber: @ 2024A7E .space 0x1 -gFightStateTracker: @ 2024A7F +gCurrentActionFuncId: @ 2024A7F .space 0x1 gBattleMons: @ 2024A80 @@ -179,7 +179,7 @@ gUnknown_02024C44: @ 2024C44 gUnknown_02024C4C: @ 2024C4C .space 0x8 -gLockedMove: @ 2024C54 +gLockedMoves: @ 2024C54 .space 0x8 gUnknown_02024C5C: @ 2024C5C @@ -206,7 +206,7 @@ gUnknown_02024C78: @ 2024C78 gSideAffecting: @ 2024C7A .space 0x6 -gSideTimer: @ 2024C80 +gSideTimers: @ 2024C80 .space 0x18 gStatuses3: @ 2024C98 |