mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-25 19:24:16 +01:00
Decompile TV (#80)
* ClearTVShowData * special_0x44 * DoTVShow (nonmatching because align) * DoTVShowBravoTrainerPokemonProfile * Update field names * DoTVShowBravoTrainerBattleTower * Renaming of struct fields * sub_80EBFF4 and UpdateTVScreensOnMap * SetTVMetatilesOnMap * Power buttons for the TV screens on the map * special_0x45 * sub_80EC18C * special_0x4a * ResetGabbyAndTy * GabbyAndTyBeforeInterview * GabbyAndTyAfterInterview * Through IsTVShowInSearchOfTrainersAiring * GabbyAndTyGetLastQuote * GabbyAndTyGetLastBattleTrivia * GabbyAndTySetScriptVarsToFieldObjectLocalIds * InterviewAfter; use TVShow as a precursor for making the individual show structs anonymous * Make TV structs anonymous within the union * Move the TV union to its own subheader * Move TV show enums to the global.tv.h subheader * Funcion renaming * Apply static attributes where able * PutPokemonTodayCaughtOnAir * sub_80EC8A4 * PutPokemonTodayFailedOnTheAir * sub_80EC9E8, sub_80ECA10 * sub_80ECA38 * sub_80ECB00 * Put3CheersForPokeblocksOnTheAir * PutFanClubSpecialOnTheAir * ContestLiveUpdates_BeforeInterview * Other before-interview Contest Live Updates functions * ContestLiveUpdates_BeforeInterview_5 * InterviewAfter_BravoTrainerPokemonProfile * BravoTrainerPokemonProfile_BeforeInterview1 * BravoTrainerPokemonProfile_BeforeInterview2 * Disassemble TV data * Decompile TV data * InterviewAfter_BravoTrainerBattleTowerProfile * SaveRecordedItemPurchasesForTVShow * PutNameRaterShowOnTheAir * StartMassOutbreak * PutLilycoveContestLadyShowOnTheAir * InterviewAfter_FanClubLetter * Rip TV strings * InterviewAfter_RecentHappenings * InterviewAfter_PkmnFanClubOpinions * sub_80ED718 * EndMassOutbreak * sub_80ED888 * sub_80ED8B4 * UpdateMassOutbreakTimeLeft * sub_80ED950 * PutFishingAdviceShowOnTheAir * through sub_80EDA80 * ewram and common syms are now fetched from the object files * BSS symbols are taken from the tv.o file * through sub_80EDC60 * sub_80EDCE8 * sub_80EDD78 * through sub_80EDE84 * nomatching sub_80EDE98 * sub_80EDFB4 * sub_80EE104 * sub_80EE104 * sub_80EE184 * sub_80EE2CC * sub_80EE35C * sub_80EE44C * sub_80EE4DC * sub_80EE5A4 * sub_80EE69C * sub_80EE72C * sub_80EE7C0 * sub_80EE818 * sub_80EE8C8 * sub_80EEA70 * sub_80EEB98 * sub_80EEBF4 * through sub_80EED60 * Functions relating to Pokemon News * sub_80EEF6C * GetPriceReduction * IsPriceDiscounted * sub_80EF120 * through sub_80EF370 * sub_80EF40C * HasMixableShowAlreadyBeenSpawnedWithPlayerID * TV_SortPurchasesByQuantity * FindActiveBroadcastByShowType_SetScriptResult * InterviewBefore * through sub_80EF88C * through sub_80EF93C * through sub_80EFA24 * through TV_BernoulliTrial * sub_80EFB58 * sub_80EFBA4 * sub_80EFBDC * through sub_80EFD98 * ChangePokemonNickname * ChangeBoxPokemonNickname * sub_80EFF9C * through player_id_to_dword * CheckForBigMovieOrEmergencyNewsOnTV * GetMomOrDadStringForTVMessage * sub_80F01E8 * sub_80F0358 * sub_80F049C * TV record mixing functions * sub_80F06D0 * sub_80F0708 nonmatching * through sub_80F0B24 * sub_80F0B64 * through sub_80F0C04 * sub_80F0C7C * sub_80F0D60 * sub_80F0E58 * sub_80F0E84 * through sub_80F0F24 * sub_80F0F64 * sub_80F1208 * sub_80F1254 * sub_80F1290 * sub_80F12A4 * sub_80F14F8 * DoTVShowTodaysSmartShopper * DoTVShowTheNameRaterShow * DoTVShowPokemonTodaySuccessfulCapture * DoTVShowPokemonTodayFailedCapture * DoTVShowPokemonFanClubLetter * DoTVShowRecentHappenings * DoTVShowPokemonFanClubOpinions * DoTVShowPokemonNewsMassOutbreak * DoTVShowPokemonContestLiveUpdates * DoTVShowPokemonBattleUpdate * DoTVShow3CheersForPokeblocks * DoTVShowInSearchOfTrainers * Label GabbyAndTyData fields; remove ddump comments from data/text/tv.inc * DoTVShowPokemonAngler * DoTVShowTheWorldOfMasters; update RAM symbols and field names * Decorate static functions * DoTVShowTodaysRivalTrainer; region map enums * TVDewfordTrendWatcherNetworkTextGroup * DoTVShowHoennTreasureInvestigators * DoTVShowFindThatGamer * DoTVShowBreakingNewsTV * DoTVShowSecretBaseVisit * DoTVShowPokemonLotterWinnerFlashReport * DoTVShowThePokemonBattleSeminar * DoTVShowTrainerFanClubSpecial, DoTVShowTrainerFanClub * DoTVShowSpotTheCuties * DoTVShowPokemonNewsBattleFrontier * DoTVShowWhatsNo1InHoennToday * Helpers for DoTVShowSecretBaseSecrets * DoTVShowSecretBaseSecrets * DoTVShowSafariFanClub * Finish decompilation of tv.s * Some renaming * Rename text group pointers * revoke statis; pokenews enums * Labels are number one * Label all TV struct fields * Make data/text/tv.inc more readable * Split data/text/tv.inc * Rename pokenews text pointers * Frontier Symbol constants; indicate static rodata objects with 's' prefix * Fix leading spaces/tabs F*** CLion sometimes * Fix inconsequential warning
This commit is contained in:
parent
428dd0e0a8
commit
52db3ad5aa
@ -12935,7 +12935,7 @@ _081A1118:
|
||||
adds r1, r0, 0
|
||||
mov r0, sp
|
||||
movs r2, 0x2
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
adds r0, r5, 0
|
||||
mov r1, sp
|
||||
bl StringCopy
|
||||
@ -18997,7 +18997,7 @@ sub_81A4594: @ 81A4594
|
||||
adds r1, r6, 0x6
|
||||
ldrb r2, [r6, 0xE]
|
||||
add r0, sp, 0xC
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
ldr r1, =gUnknown_0203AB74
|
||||
ldrb r0, [r1]
|
||||
mov r3, r8
|
||||
@ -19111,7 +19111,7 @@ sub_81A4684: @ 81A4684
|
||||
adds r1, 0xA
|
||||
ldrb r2, [r5, 0x1A]
|
||||
add r0, sp, 0xC
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
ldr r1, =gUnknown_0203AB74
|
||||
ldrb r0, [r1]
|
||||
adds r3, r7, 0x2
|
||||
@ -19133,13 +19133,13 @@ sub_81A4684: @ 81A4684
|
||||
adds r4, r5, 0
|
||||
adds r4, 0x12
|
||||
adds r0, r4, 0
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _081A4734
|
||||
add r0, sp, 0xC
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x1
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
b _081A473C
|
||||
.pool
|
||||
_081A4734:
|
||||
@ -28660,7 +28660,7 @@ _081A95EE:
|
||||
lsls r0, r7, 2
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
add sp, 0x8
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
|
@ -3193,7 +3193,7 @@ _0817E63A:
|
||||
adds r1, r4, 0
|
||||
ldr r2, [sp]
|
||||
ldr r3, [sp, 0x4]
|
||||
bl sub_80ECB00
|
||||
bl PutBattleUpdateOnTheAir
|
||||
b _0817E670
|
||||
.pool
|
||||
_0817E65C:
|
||||
@ -3205,7 +3205,7 @@ _0817E65C:
|
||||
adds r1, r4, 0
|
||||
ldr r2, [sp]
|
||||
ldr r3, [sp, 0x4]
|
||||
bl sub_80ECB00
|
||||
bl PutBattleUpdateOnTheAir
|
||||
_0817E670:
|
||||
add sp, 0x20
|
||||
pop {r3-r5}
|
||||
|
@ -2407,7 +2407,7 @@ _080B1AD8:
|
||||
.pool
|
||||
_080B1AEC:
|
||||
bl sub_80B1C7C
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
_080B1AF4:
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -2468,7 +2468,7 @@ _080B1B56:
|
||||
special_trainer_unable_to_battle: @ 80B1B60
|
||||
push {lr}
|
||||
bl sub_80B1D18
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end special_trainer_unable_to_battle
|
||||
|
@ -1795,7 +1795,7 @@ _08162ED8:
|
||||
adds r0, 0xE4
|
||||
ldrb r2, [r0]
|
||||
adds r0, r6, 0
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
b _08162F62
|
||||
.pool
|
||||
_08162F00:
|
||||
@ -1835,7 +1835,7 @@ _08162F3E:
|
||||
adds r1, r0, 0
|
||||
adds r0, r6, 0
|
||||
adds r2, r4, 0
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
b _08162F62
|
||||
.pool
|
||||
_08162F5C:
|
||||
@ -5016,7 +5016,7 @@ _08164B04:
|
||||
lsls r0, 2
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
b _08164B54
|
||||
.pool
|
||||
_08164B28:
|
||||
@ -5040,7 +5040,7 @@ _08164B28:
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
ldr r0, [r1]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
_08164B54:
|
||||
add sp, 0x8
|
||||
pop {r3-r5}
|
||||
@ -5673,7 +5673,7 @@ _0816508C:
|
||||
bl SetMonData
|
||||
ldr r0, [r7]
|
||||
adds r0, r4
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
strb r0, [r5, 0x1]
|
||||
_081650D4:
|
||||
adds r5, 0x4
|
||||
|
@ -1275,7 +1275,7 @@ _080802AC:
|
||||
strh r0, [r1]
|
||||
adds r5, 0x1
|
||||
_080802D4:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -1295,7 +1295,7 @@ _080802EC:
|
||||
bl sub_807FD90
|
||||
b _08080336
|
||||
_08080302:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
ldr r2, =gUnknown_020322A4
|
||||
ldr r1, [r2]
|
||||
adds r1, 0x7C
|
||||
@ -6091,7 +6091,7 @@ _08082BEE:
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
_08082BF4:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -6104,7 +6104,7 @@ _08082C0C:
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
_08082C12:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -6118,7 +6118,7 @@ _08082C12:
|
||||
cmp r0, 0
|
||||
bne _08082C0C
|
||||
_08082C2E:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -6132,7 +6132,7 @@ _08082C48:
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
_08082C4E:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -6149,7 +6149,7 @@ _08082C6A:
|
||||
ldr r4, =gUnknown_03003110
|
||||
adds r0, r4, 0
|
||||
bl sub_8081F94
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -8568,7 +8568,7 @@ sub_8083F94: @ 8083F94
|
||||
ldrb r0, [r5, 0x12]
|
||||
str r0, [sp]
|
||||
adds r0, r7, 0
|
||||
bl sub_80ECC04
|
||||
bl Put3CheersForPokeblocksOnTheAir
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080840BA
|
||||
@ -8617,7 +8617,7 @@ _08084058:
|
||||
ldrb r0, [r5, 0x12]
|
||||
str r0, [sp]
|
||||
adds r0, r7, 0
|
||||
bl sub_80ECC04
|
||||
bl Put3CheersForPokeblocksOnTheAir
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080840C4
|
||||
|
@ -1059,7 +1059,7 @@ _080B2C5C:
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
_080B2C7E:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
@ -1361,7 +1361,7 @@ _080B2F0C:
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
mov r9, r0
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
movs r4, 0
|
||||
@ -1984,7 +1984,7 @@ _080B3474:
|
||||
adds r5, 0x1C
|
||||
adds r4, 0x1
|
||||
_080B349A:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
@ -2080,7 +2080,7 @@ _080B3574:
|
||||
beq _080B35F8
|
||||
b _080B35FE
|
||||
_080B357A:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
movs r4, 0
|
||||
@ -2297,7 +2297,7 @@ _080B3750:
|
||||
b _080B37CC
|
||||
_080B375A:
|
||||
ldr r0, =gUnknown_08278091
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
movs r0, 0x1
|
||||
strh r0, [r5, 0x8]
|
||||
b _080B37CC
|
||||
|
@ -1525,7 +1525,7 @@ sub_80D8490: @ 80D8490
|
||||
movs r6, 0
|
||||
ldr r0, =gUnknown_02039F25
|
||||
mov r8, r0
|
||||
ldr r2, =gUnknown_02039E1E
|
||||
ldr r2, =gUnknown_02039E00 + 30
|
||||
mov r10, r2
|
||||
ldr r7, =gUnknown_02039F34
|
||||
_080D84B8:
|
||||
@ -2624,7 +2624,7 @@ _080D8EF2:
|
||||
bl sub_80DB89C
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
mov r2, r9
|
||||
@ -3562,7 +3562,7 @@ _080D96D4:
|
||||
bl sub_80DB89C
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r4, =gStringVar4
|
||||
@ -3671,7 +3671,7 @@ _080D97DC:
|
||||
bl sub_80DB89C
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r4, =gStringVar4
|
||||
@ -3809,7 +3809,7 @@ _080D9904:
|
||||
bl sub_80DB89C
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r4, =gStringVar4
|
||||
@ -4010,7 +4010,7 @@ _080D9AD2:
|
||||
bl sub_80DB89C
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r4, =gUnknown_02039F34
|
||||
@ -4381,7 +4381,7 @@ _080D9DD4:
|
||||
lsls r1, 20
|
||||
lsrs r1, 29
|
||||
lsls r1, 6
|
||||
ldr r4, =gUnknown_02039E02
|
||||
ldr r4, =gUnknown_02039E00 + 2
|
||||
adds r1, r4
|
||||
bl StringCopy
|
||||
ldr r0, =gStringVar1
|
||||
@ -4476,7 +4476,7 @@ _080D9EDC:
|
||||
bl sub_80DC9B4
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r0, =gStringVar2
|
||||
@ -4626,7 +4626,7 @@ _080DA038:
|
||||
bl sub_80DB89C
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r6, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r4, =gStringVar4
|
||||
@ -5096,7 +5096,7 @@ sub_80DA3CC: @ 80DA3CC
|
||||
ldr r0, =gStringVar1
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r5, =gStringVar4
|
||||
@ -5360,7 +5360,7 @@ _080DA600:
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrh r0, [r0, 0x8]
|
||||
bl sub_80ED03C
|
||||
bl BravoTrainerPokemonProfile_BeforeInterview1
|
||||
b _080DA668
|
||||
.pool
|
||||
_080DA65C:
|
||||
@ -5667,7 +5667,7 @@ _080DA8F2:
|
||||
ldr r5, =gUnknown_02039F25
|
||||
ldrb r0, [r5]
|
||||
lsls r0, 6
|
||||
ldr r4, =gUnknown_02039E0D
|
||||
ldr r4, =gUnknown_02039E00 + 13
|
||||
adds r0, r4
|
||||
mov r1, sp
|
||||
movs r2, 0x8
|
||||
@ -6451,7 +6451,7 @@ sub_80DAF1C: @ 80DAF1C
|
||||
add r0, sp, 0x4
|
||||
bl StringCopy
|
||||
lsls r1, r5, 6
|
||||
ldr r0, =gUnknown_02039E0D
|
||||
ldr r0, =gUnknown_02039E00 + 13
|
||||
adds r1, r0
|
||||
add r0, sp, 0x4
|
||||
bl StringAppend
|
||||
@ -6508,7 +6508,7 @@ sub_80DAFA0: @ 80DAFA0
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
lsls r0, r4, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r0, r2
|
||||
bl sub_80DAED4
|
||||
ldr r0, =gUnknown_02039F26
|
||||
@ -11173,7 +11173,7 @@ sub_80DD45C: @ 80DD45C
|
||||
lsrs r6, r1, 24
|
||||
ldr r0, =gStringVar1
|
||||
lsls r1, r4, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
ldr r0, =gStringVar2
|
||||
@ -15385,21 +15385,21 @@ _080DF6AE:
|
||||
beq _080DF6AE
|
||||
_080DF6C4:
|
||||
mov r0, r9
|
||||
bl sub_80ECDA4
|
||||
bl ContestLiveUpdates_BeforeInterview_1
|
||||
mov r0, r10
|
||||
bl sub_80ECDF4
|
||||
bl ContestLiveUpdates_BeforeInterview_2
|
||||
ldr r5, [sp, 0x4]
|
||||
lsrs r0, r5, 24
|
||||
bl sub_80ECE34
|
||||
bl ContestLiveUpdates_BeforeInterview_3
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x1C]
|
||||
add r0, r8
|
||||
ldrh r0, [r0, 0xA]
|
||||
bl sub_80ECE74
|
||||
bl ContestLiveUpdates_BeforeInterview_4
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
bl sub_80ECEB4
|
||||
bl ContestLiveUpdates_BeforeInterview_5
|
||||
_080DF6EE:
|
||||
add sp, 0xC
|
||||
pop {r3-r5}
|
||||
|
@ -144,7 +144,7 @@ sub_81563B0: @ 81563B0
|
||||
beq _081564A0
|
||||
adds r7, r5, 0
|
||||
ldr r6, =gAIScriptPtr
|
||||
ldr r0, =gUnknown_02039E1E
|
||||
ldr r0, =gUnknown_02039E00 + 30
|
||||
mov r8, r0
|
||||
_081563CC:
|
||||
ldr r0, [r7]
|
||||
@ -5030,7 +5030,7 @@ sub_8158948: @ 8158948
|
||||
push {r4-r6,lr}
|
||||
movs r5, 0
|
||||
movs r4, 0
|
||||
ldr r6, =gUnknown_02039E1E
|
||||
ldr r6, =gUnknown_02039E00 + 30
|
||||
_08158950:
|
||||
lsls r1, r4, 1
|
||||
ldr r0, =gUnknown_02039F34
|
||||
|
@ -1239,7 +1239,7 @@ _080F6334:
|
||||
ldr r1, =gUnknown_02039F20
|
||||
ldrb r0, [r1]
|
||||
ldr r7, =gStringVar1
|
||||
ldr r2, =gUnknown_02039E0D
|
||||
ldr r2, =gUnknown_02039E00 + 13
|
||||
mov r8, r2
|
||||
cmp r0, 0
|
||||
beq _080F636E
|
||||
@ -1750,7 +1750,7 @@ task_repel: @ 80F67C4
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
bl sub_80ED090
|
||||
bl BravoTrainerPokemonProfile_BeforeInterview2
|
||||
_080F67E6:
|
||||
movs r0, 0
|
||||
str r0, [sp]
|
||||
@ -4785,7 +4785,7 @@ _080F8074:
|
||||
ldrb r0, [r6]
|
||||
muls r0, r5
|
||||
adds r0, r4
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -4834,7 +4834,7 @@ _080F80E2:
|
||||
ldrb r0, [r7]
|
||||
muls r0, r6
|
||||
adds r0, r5
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -4883,7 +4883,7 @@ _080F814E:
|
||||
ldrb r0, [r7]
|
||||
muls r0, r6
|
||||
adds r0, r5
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -4926,7 +4926,7 @@ _080F8190:
|
||||
ldrb r0, [r7]
|
||||
muls r0, r6
|
||||
adds r0, r5
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -4969,7 +4969,7 @@ _080F81F8:
|
||||
ldrb r0, [r7]
|
||||
muls r0, r6
|
||||
adds r0, r5
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -4994,7 +4994,7 @@ sub_80F8264: @ 80F8264
|
||||
ldr r0, =gSpecialVar_0x8006
|
||||
ldrh r1, [r0]
|
||||
lsls r1, 6
|
||||
ldr r0, =gUnknown_02039E0D
|
||||
ldr r0, =gUnknown_02039E00 + 13
|
||||
adds r1, r0
|
||||
adds r0, r4, 0
|
||||
bl StringCopy
|
||||
@ -5013,7 +5013,7 @@ sub_80F8290: @ 80F8290
|
||||
ldr r1, =gSpecialVar_0x8006
|
||||
ldrh r1, [r1]
|
||||
lsls r1, 6
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
adds r1, r2
|
||||
bl StringCopy
|
||||
pop {r0}
|
||||
@ -5104,7 +5104,7 @@ sub_80F834C: @ 80F834C
|
||||
ldr r2, =gUnknown_02039F20
|
||||
ldrb r0, [r2]
|
||||
ldr r4, =gStringVar3
|
||||
ldr r3, =gUnknown_02039E0D
|
||||
ldr r3, =gUnknown_02039E00 + 13
|
||||
cmp r0, 0
|
||||
beq _080F836E
|
||||
_080F835C:
|
||||
@ -5137,7 +5137,7 @@ sub_80F8390: @ 80F8390
|
||||
ldr r2, =gUnknown_02039F20
|
||||
ldrb r0, [r2]
|
||||
ldr r4, =gStringVar1
|
||||
ldr r3, =gUnknown_02039E02
|
||||
ldr r3, =gUnknown_02039E00 + 2
|
||||
cmp r0, 0
|
||||
beq _080F83B2
|
||||
_080F83A0:
|
||||
@ -5578,7 +5578,7 @@ sub_80F8714: @ 80F8714
|
||||
b _080F877E
|
||||
.pool
|
||||
_080F8748:
|
||||
ldr r5, =gUnknown_02039E02
|
||||
ldr r5, =gUnknown_02039E00 + 2
|
||||
movs r4, 0x3
|
||||
_080F874C:
|
||||
adds r0, r5, 0
|
||||
|
@ -141,7 +141,7 @@ sub_80FC5DC: @ 80FC5DC
|
||||
bl GetMultiplayerId
|
||||
ldr r1, =gUnknown_02039F25
|
||||
strb r0, [r1]
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
ldr r4, =gUnknown_02039F30
|
||||
strb r0, [r4]
|
||||
ldr r1, =gUnknown_02039F2A
|
||||
|
@ -492,7 +492,7 @@ sub_812287C: @ 812287C
|
||||
bl Free
|
||||
b _08122980
|
||||
_081228B0:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r9, r0
|
||||
|
@ -565,7 +565,7 @@ _0811A72C:
|
||||
ldr r4, =gStringVar3
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x2
|
||||
bl sub_811F88C
|
||||
bl InitializeEasyChatWordArray
|
||||
b _0811A7C2
|
||||
.pool
|
||||
_0811A73C:
|
||||
@ -3704,7 +3704,7 @@ sub_811BDF0: @ 811BDF0
|
||||
ldrb r2, [r0]
|
||||
mov r0, sp
|
||||
adds r1, r5, 0
|
||||
bl sub_81DB5E8
|
||||
bl TVShowConvertInternationalString
|
||||
movs r0, 0
|
||||
mov r1, sp
|
||||
bl sub_81AFC0C
|
||||
@ -11109,8 +11109,8 @@ _0811F886:
|
||||
bx r1
|
||||
thumb_func_end sub_811F860
|
||||
|
||||
thumb_func_start sub_811F88C
|
||||
sub_811F88C: @ 811F88C
|
||||
thumb_func_start InitializeEasyChatWordArray
|
||||
InitializeEasyChatWordArray: @ 811F88C
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
lsls r1, 16
|
||||
@ -11133,7 +11133,7 @@ _0811F8AE:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_811F88C
|
||||
thumb_func_end InitializeEasyChatWordArray
|
||||
|
||||
thumb_func_start sub_811F8BC
|
||||
sub_811F8BC: @ 811F8BC
|
||||
|
@ -108,8 +108,8 @@ _080981E4:
|
||||
.pool
|
||||
thumb_func_end task_del_textbox
|
||||
|
||||
thumb_func_start box_related_two__2
|
||||
box_related_two__2: @ 80981EC
|
||||
thumb_func_start ShowFieldMessage
|
||||
ShowFieldMessage: @ 80981EC
|
||||
push {r4,lr}
|
||||
adds r1, r0, 0
|
||||
ldr r4, =gUnknown_020375BC
|
||||
@ -130,7 +130,7 @@ _0809820E:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end box_related_two__2
|
||||
thumb_func_end ShowFieldMessage
|
||||
|
||||
thumb_func_start sub_8098214
|
||||
sub_8098214: @ 8098214
|
||||
|
@ -217,7 +217,7 @@ _080F96FC:
|
||||
ldrb r0, [r4, 0x2]
|
||||
bl sub_80F95C0
|
||||
ldr r0, =gText_PkmnFainted3
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
ldrh r0, [r4]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4]
|
||||
|
@ -389,8 +389,8 @@ _081DB5E4:
|
||||
bx r0
|
||||
thumb_func_end sub_81DB5AC
|
||||
|
||||
thumb_func_start sub_81DB5E8
|
||||
sub_81DB5E8: @ 81DB5E8
|
||||
thumb_func_start TVShowConvertInternationalString
|
||||
TVShowConvertInternationalString: @ 81DB5E8
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
adds r4, r2, 0
|
||||
@ -403,7 +403,7 @@ sub_81DB5E8: @ 81DB5E8
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_81DB5E8
|
||||
thumb_func_end TVShowConvertInternationalString
|
||||
|
||||
thumb_func_start sub_81DB604
|
||||
sub_81DB604: @ 81DB604
|
||||
|
70
asm/link.s
70
asm/link.s
@ -1371,8 +1371,8 @@ _08009FC4:
|
||||
.pool
|
||||
thumb_func_end sub_8009FAC
|
||||
|
||||
thumb_func_start sub_8009FCC
|
||||
sub_8009FCC: @ 8009FCC
|
||||
thumb_func_start GetLinkPlayerCount
|
||||
GetLinkPlayerCount: @ 8009FCC
|
||||
push {lr}
|
||||
ldr r0, =gLinkVSyncDisabled
|
||||
ldrb r0, [r0]
|
||||
@ -1392,14 +1392,14 @@ _08009FEC:
|
||||
_08009FF4:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8009FCC
|
||||
thumb_func_end GetLinkPlayerCount
|
||||
|
||||
thumb_func_start sub_8009FF8
|
||||
sub_8009FF8: @ 8009FF8
|
||||
push {r4-r7,lr}
|
||||
adds r6, r0, 0
|
||||
adds r5, r1, 0
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
movs r2, 0
|
||||
@ -1442,7 +1442,7 @@ sub_800A03C: @ 800A03C
|
||||
thumb_func_start sub_800A040
|
||||
sub_800A040: @ 800A040
|
||||
push {lr}
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -1546,7 +1546,7 @@ _0800A0EA:
|
||||
b _0800A22E
|
||||
.pool
|
||||
_0800A0FC:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0800A10E
|
||||
@ -1572,12 +1572,12 @@ _0800A130:
|
||||
adds r5, 0x1C
|
||||
adds r6, 0x1
|
||||
_0800A134:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r6, r0
|
||||
blt _0800A120
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r7, r0
|
||||
@ -1714,12 +1714,12 @@ _0800A266:
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
_0800A26C:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
bcc _0800A24C
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r6, r0
|
||||
@ -1742,8 +1742,8 @@ _0800A298:
|
||||
.pool
|
||||
thumb_func_end sub_800A23C
|
||||
|
||||
thumb_func_start sub_800A2A4
|
||||
sub_800A2A4: @ 800A2A4
|
||||
thumb_func_start GetLinkPlayerTrainerId
|
||||
GetLinkPlayerTrainerId: @ 800A2A4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gLinkPlayers
|
||||
@ -1755,7 +1755,7 @@ sub_800A2A4: @ 800A2A4
|
||||
ldr r0, [r1]
|
||||
bx lr
|
||||
.pool
|
||||
thumb_func_end sub_800A2A4
|
||||
thumb_func_end GetLinkPlayerTrainerId
|
||||
|
||||
thumb_func_start sub_800A2BC
|
||||
sub_800A2BC: @ 800A2BC
|
||||
@ -2697,7 +2697,7 @@ _0800A9E2:
|
||||
lsrs r4, r0, 24
|
||||
adds r5, 0x1
|
||||
_0800A9EE:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -3044,7 +3044,7 @@ _0800AC96:
|
||||
thumb_func_start sub_800ACAC
|
||||
sub_800ACAC: @ 800ACAC
|
||||
push {r4,lr}
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
movs r3, 0
|
||||
@ -3142,7 +3142,7 @@ _0800AD72:
|
||||
thumb_func_start sub_800AD88
|
||||
sub_800AD88: @ 800AD88
|
||||
push {r4,r5,lr}
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
movs r1, 0
|
||||
@ -3239,7 +3239,7 @@ _0800AE46:
|
||||
thumb_func_start sub_800AE5C
|
||||
sub_800AE5C: @ 800AE5C
|
||||
push {r4,lr}
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
movs r1, 0
|
||||
@ -9671,7 +9671,7 @@ _0800E1C8:
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
_0800E1E6:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
subs r0, 0x1
|
||||
@ -9965,7 +9965,7 @@ _0800E428:
|
||||
ble _0800E3FC
|
||||
mov r4, r9
|
||||
_0800E434:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
@ -10019,7 +10019,7 @@ _0800E4A6:
|
||||
adds r5, 0x1C
|
||||
adds r4, 0x1
|
||||
_0800E4AC:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
@ -13627,7 +13627,7 @@ sub_80102B8: @ 80102B8
|
||||
bl sub_800FD14
|
||||
strh r4, [r5]
|
||||
_080102E6:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
movs r1, 0
|
||||
@ -13734,7 +13734,7 @@ sub_8010390: @ 8010390
|
||||
b _0801041C
|
||||
.pool
|
||||
_080103CC:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
movs r1, 0x1
|
||||
@ -15290,7 +15290,7 @@ _08011048:
|
||||
strb r0, [r1, 0x3]
|
||||
adds r4, 0x1
|
||||
_08011054:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
@ -20950,12 +20950,12 @@ _08014138:
|
||||
adds r5, 0x1C
|
||||
adds r4, 0x1
|
||||
_08014152:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
blt _08014138
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x2
|
||||
@ -21159,7 +21159,7 @@ sub_8014304: @ 8014304
|
||||
strh r1, [r0]
|
||||
ldr r0, =0x00004087
|
||||
bl VarSet
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
ldr r1, =gUnknown_03005DB8
|
||||
strb r0, [r1]
|
||||
bl GetMultiplayerId
|
||||
@ -39697,7 +39697,7 @@ sub_801DDD0: @ 801DDD0
|
||||
strb r5, [r4, 0x16]
|
||||
movs r0, 0xFF
|
||||
strb r0, [r4, 0x1A]
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
strb r0, [r4, 0xD]
|
||||
bl GetMultiplayerId
|
||||
strb r0, [r4, 0x13]
|
||||
@ -42285,7 +42285,7 @@ _0801F30A:
|
||||
movs r0, 0x1
|
||||
strh r0, [r4]
|
||||
_0801F30E:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
adds r2, r0, 0
|
||||
@ -42446,7 +42446,7 @@ _0801F448:
|
||||
ldrsh r0, [r4, r3]
|
||||
cmp r0, 0
|
||||
beq _0801F47C
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x2
|
||||
@ -45504,7 +45504,7 @@ _08020C8E:
|
||||
b _08020CF8
|
||||
.pool
|
||||
_08020CAC:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
@ -53271,7 +53271,7 @@ _08024B2C:
|
||||
_08024B6A:
|
||||
ldr r0, [sp, 0x10]
|
||||
strb r1, [r0]
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
mov r1, r8
|
||||
strb r0, [r1]
|
||||
bl GetMultiplayerId
|
||||
@ -57700,7 +57700,7 @@ _08026EF6:
|
||||
adds r4, 0xC
|
||||
adds r5, 0x1
|
||||
_08026EFE:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -59511,7 +59511,7 @@ _08027C76:
|
||||
thumb_func_start sub_8027D20
|
||||
sub_8027D20: @ 8027D20
|
||||
push {lr}
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
ldr r1, =gUnknown_02022C98
|
||||
ldr r1, [r1]
|
||||
adds r1, 0x24
|
||||
@ -64891,7 +64891,7 @@ sub_802AA48: @ 802AA48
|
||||
sub_802AA60: @ 802AA60
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
movs r2, 0
|
||||
strb r0, [r4, 0x5]
|
||||
adds r1, r4, 0
|
||||
@ -68775,7 +68775,7 @@ _0802C8A4:
|
||||
thumb_func_start sub_802C8AC
|
||||
sub_802C8AC: @ 802C8AC
|
||||
push {lr}
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r1}
|
||||
|
@ -1392,7 +1392,7 @@ _08120BB0:
|
||||
movs r0, 0xFF
|
||||
strb r0, [r7, 0x7]
|
||||
mov r0, sp
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _08120BF8
|
||||
mov r0, sp
|
||||
@ -1458,7 +1458,7 @@ _08120C48:
|
||||
muls r0, r5
|
||||
adds r0, 0x5
|
||||
adds r0, r6, r0
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _08120C5E
|
||||
mov r0, r8
|
||||
@ -1480,7 +1480,7 @@ _08120C6A:
|
||||
movs r5, 0x3
|
||||
_08120C74:
|
||||
adds r0, r6, 0
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _08120C84
|
||||
mov r1, r8
|
||||
@ -1569,7 +1569,7 @@ _08120CF2:
|
||||
mov r1, r8
|
||||
strb r0, [r1, 0x7]
|
||||
mov r0, sp
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _08120D1A
|
||||
movs r0, 0x1
|
||||
@ -2205,7 +2205,7 @@ sub_8121178: @ 8121178
|
||||
bl ConvertInternationalString
|
||||
mov r0, r8
|
||||
bl sub_8120EC0
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
|
@ -6514,7 +6514,7 @@ sub_81C3220: @ 81C3220
|
||||
b _081C3282
|
||||
.pool
|
||||
_081C326C:
|
||||
bl sub_80F0020
|
||||
bl GetPlayerIDAsU32
|
||||
adds r4, r0, 0
|
||||
ldr r0, =0x0000ffff
|
||||
ands r4, r0
|
||||
|
@ -1162,7 +1162,7 @@ _080E7714:
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
_080E771C:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r8, r0
|
||||
@ -1179,7 +1179,7 @@ _080E771C:
|
||||
adds r1, 0x1
|
||||
strh r1, [r0, 0x8]
|
||||
_080E773E:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r4, [sp, 0x8]
|
||||
@ -1312,7 +1312,7 @@ sub_80E7820: @ 80E7820
|
||||
sub_80E7830: @ 80E7830
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x3
|
||||
@ -1341,7 +1341,7 @@ _080E7856:
|
||||
.pool
|
||||
_080E7868:
|
||||
movs r0, 0
|
||||
bl sub_800A2A4
|
||||
bl GetLinkPlayerTrainerId
|
||||
adds r2, r0, 0
|
||||
movs r0, 0x1
|
||||
ands r2, r0
|
||||
@ -1362,7 +1362,7 @@ _080E7880:
|
||||
.pool
|
||||
_080E7894:
|
||||
movs r0, 0
|
||||
bl sub_800A2A4
|
||||
bl GetLinkPlayerTrainerId
|
||||
movs r1, 0x9
|
||||
bl __umodsi3
|
||||
adds r2, r0, 0
|
||||
@ -1523,7 +1523,7 @@ _080E79CE:
|
||||
adds r4, r1, 0
|
||||
adds r4, 0x20
|
||||
adds r0, r4, 0
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _080E79F2
|
||||
adds r0, r4, 0
|
||||
@ -1738,7 +1738,7 @@ sub_80E7B60: @ 80E7B60
|
||||
ldr r0, =gLinkPlayers
|
||||
ldrh r0, [r0, 0x4]
|
||||
bl SeedRng2
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
movs r0, 0
|
||||
@ -1878,7 +1878,7 @@ _080E7C9A:
|
||||
bne _080E7CEE
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x24
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _080E7CBA
|
||||
adds r0, r5, 0
|
||||
@ -1901,7 +1901,7 @@ _080E7CC6:
|
||||
adds r4, r0, 0
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x2C
|
||||
bl sub_8009228
|
||||
bl IsStringJapanese
|
||||
cmp r0, 0
|
||||
beq _080E7CE2
|
||||
ldrb r0, [r4]
|
||||
@ -1931,7 +1931,7 @@ _080E7CFA:
|
||||
lsrs r0, 16
|
||||
mov r8, r0
|
||||
_080E7D04:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r8, r0
|
||||
@ -3557,7 +3557,7 @@ sub_80E89AC: @ 80E89AC
|
||||
adds r6, r0, 0
|
||||
mov r8, r1
|
||||
mov r9, r2
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
|
@ -125,7 +125,7 @@ _08184EAC:
|
||||
bl GetMultiplayerId
|
||||
ldr r1, =gUnknown_0203C7B4
|
||||
strb r0, [r1]
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r10, r0
|
||||
@ -505,7 +505,7 @@ _081851D0:
|
||||
adds r4, 0x1C
|
||||
adds r5, 0x1
|
||||
_081851DA:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
|
@ -1963,7 +1963,7 @@ _08033726:
|
||||
lsls r0, r1, 24
|
||||
lsrs r4, r0, 24
|
||||
_0803372C:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
|
48
asm/rom6.s
48
asm/rom6.s
@ -4121,7 +4121,7 @@ _081377BC:
|
||||
add r2, sp, 0x18
|
||||
bl SetMonData
|
||||
adds r0, r4, 0
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
strb r0, [r5, 0x1]
|
||||
movs r7, 0x1
|
||||
_0813780A:
|
||||
@ -4629,7 +4629,7 @@ sub_8137C10: @ 8137C10
|
||||
ldr r0, =gSpecialVar_0x8004
|
||||
ldrh r0, [r0]
|
||||
bl sub_8137A98
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -5399,13 +5399,13 @@ sub_8138240: @ 8138240
|
||||
bl GetMultiplayerId
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
movs r4, 0
|
||||
cmp r4, r5
|
||||
bcs _0813828A
|
||||
ldr r0, =gUnknown_0858D144
|
||||
ldr r0, =gTVStringVarPtrs
|
||||
mov r8, r0
|
||||
_08138262:
|
||||
cmp r7, r4
|
||||
@ -6378,7 +6378,7 @@ sub_8138AA4: @ 8138AA4
|
||||
sub_8138AC0: @ 8138AC0
|
||||
push {lr}
|
||||
ldr r0, =gStringVar4
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -6537,7 +6537,7 @@ _08138BF6:
|
||||
thumb_func_start sub_8138C04
|
||||
sub_8138C04: @ 8138C04
|
||||
push {r4,lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7060,7 +7060,7 @@ sub_8138FEC: @ 8138FEC
|
||||
thumb_func_start sub_8139004
|
||||
sub_8139004: @ 8139004
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7084,7 +7084,7 @@ _0813902A:
|
||||
thumb_func_start sub_8139030
|
||||
sub_8139030: @ 8139030
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7108,7 +7108,7 @@ _08139056:
|
||||
thumb_func_start sub_813905C
|
||||
sub_813905C: @ 813905C
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7132,7 +7132,7 @@ _08139082:
|
||||
thumb_func_start sub_8139088
|
||||
sub_8139088: @ 8139088
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7156,7 +7156,7 @@ _081390AE:
|
||||
thumb_func_start sub_81390B4
|
||||
sub_81390B4: @ 81390B4
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7295,7 +7295,7 @@ RemoveScriptFieldObject: @ 81391AC
|
||||
thumb_func_start sub_81391D0
|
||||
sub_81391D0: @ 81391D0
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7479,7 +7479,7 @@ _08139342:
|
||||
thumb_func_start sub_8139348
|
||||
sub_8139348: @ 8139348
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7507,7 +7507,7 @@ sub_8139370: @ 8139370
|
||||
movs r1, 0x1
|
||||
mov r0, sp
|
||||
strb r1, [r0]
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7519,7 +7519,7 @@ sub_8139370: @ 8139370
|
||||
mov r2, sp
|
||||
bl SetMonData
|
||||
adds r0, r4, 0
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
@ -7538,7 +7538,7 @@ _081393B6:
|
||||
thumb_func_start sub_81393C8
|
||||
sub_81393C8: @ 81393C8
|
||||
push {lr}
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
@ -7882,8 +7882,8 @@ _08139684:
|
||||
bx r0
|
||||
thumb_func_end sub_8139668
|
||||
|
||||
thumb_func_start sub_8139688
|
||||
sub_8139688: @ 8139688
|
||||
thumb_func_start GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
GetIdxOfFirstPartyMemberThatIsNotAnEgg: @ 8139688
|
||||
push {r4-r6,lr}
|
||||
bl CalculatePlayerPartyCount
|
||||
lsls r0, 24
|
||||
@ -7926,7 +7926,7 @@ _081396D8:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8139688
|
||||
thumb_func_end GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
|
||||
thumb_func_start sub_81396E0
|
||||
sub_81396E0: @ 81396E0
|
||||
@ -8050,7 +8050,7 @@ sub_81397C4: @ 81397C4
|
||||
cmp r1, r0
|
||||
bls _081397E0
|
||||
movs r0, 0
|
||||
bl sub_80EF340
|
||||
bl TV_PrintIntToStringVar
|
||||
b _08139862
|
||||
.pool
|
||||
_081397E0:
|
||||
@ -9094,7 +9094,7 @@ _0813A062:
|
||||
lsls r0, 2
|
||||
adds r0, r7
|
||||
ldr r0, [r0]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -9996,7 +9996,7 @@ _0813A7C6:
|
||||
lsrs r0, 22
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -10036,7 +10036,7 @@ sub_813A820: @ 813A820
|
||||
lsls r0, r4, 2
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
ldr r0, =0x00004031
|
||||
adds r1, r4, 0
|
||||
bl VarSet
|
||||
@ -10056,7 +10056,7 @@ sub_813A854: @ 813A854
|
||||
lsrs r0, 14
|
||||
adds r0, r4
|
||||
ldr r0, [r0]
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
|
@ -3267,7 +3267,7 @@ s67_execute_box: @ 809ABD4
|
||||
bne _0809ABE2
|
||||
ldr r0, [r4, 0x64]
|
||||
_0809ABE2:
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
@ -3793,7 +3793,7 @@ sBD_virtual_message: @ 809AFA0
|
||||
ldr r1, =gUnknown_020375C4
|
||||
ldr r1, [r1]
|
||||
subs r0, r1
|
||||
bl box_related_two__2
|
||||
bl ShowFieldMessage
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
@ -3841,7 +3841,7 @@ s7E_load_first_pokenames: @ 809AFFC
|
||||
lsls r2, 2
|
||||
adds r2, r0
|
||||
ldr r4, [r2]
|
||||
bl sub_8139688
|
||||
bl GetIdxOfFirstPartyMemberThatIsNotAnEgg
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
|
@ -222,7 +222,7 @@ sub_80F8970: @ 80F8970
|
||||
mov r12, r0
|
||||
ldr r1, =gSpecialVar_0x8006
|
||||
mov r9, r1
|
||||
ldr r2, =gUnknown_02039E02
|
||||
ldr r2, =gUnknown_02039E00 + 2
|
||||
mov r10, r2
|
||||
mov r2, r12
|
||||
mov r1, sp
|
||||
@ -625,7 +625,7 @@ sub_80F8C7C: @ 80F8C7C
|
||||
ldrb r0, [r6]
|
||||
muls r0, r5
|
||||
adds r0, r4
|
||||
bl sub_80EE5A4
|
||||
bl GetRibbonCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x4
|
||||
|
@ -4494,7 +4494,7 @@ sub_80EAF80: @ 80EAF80
|
||||
bne _080EAF9A
|
||||
b _080EB16A
|
||||
_080EAF9A:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x2
|
||||
|
@ -6603,7 +6603,7 @@ _0807A97C:
|
||||
adds r4, 0x1C
|
||||
adds r5, 0x1
|
||||
_0807A980:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
@ -6632,7 +6632,7 @@ _0807A9B0:
|
||||
adds r4, 0x1C
|
||||
adds r5, 0x1
|
||||
_0807A9B4:
|
||||
bl sub_8009FCC
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r5, r0
|
||||
|
4
common_syms/tv.txt
Normal file
4
common_syms/tv.txt
Normal file
@ -0,0 +1,4 @@
|
||||
sCurTVShowSlot
|
||||
sTV_SecretBaseVisitMovesTemp
|
||||
sTV_DecorationsBuffer
|
||||
sTV_SecretBaseVisitMonsTemp
|
@ -822,7 +822,15 @@ gUnknown_0827EE09:: @ 27EE09
|
||||
.incbin "baserom.gba", 0x27ee09, 0x2
|
||||
|
||||
gUnknown_0827EE0B:: @ 827EE0B
|
||||
.incbin "baserom.gba", 0x27ee0b, 0x118fa
|
||||
.incbin "baserom.gba", 0x27ee0b, 0x46a
|
||||
|
||||
.include "data/text/tv.inc"
|
||||
|
||||
.incbin "baserom.gba", 0x0028c7e9, 0x90f
|
||||
|
||||
.include "data/text/pokemon_news.inc"
|
||||
|
||||
.incbin "baserom.gba", 0x28e066, 0x269f
|
||||
|
||||
gUnknown_08290705:: @ 8290705
|
||||
.incbin "baserom.gba", 0x290705, 0xeb
|
||||
|
165
data/text/pokemon_news.inc
Normal file
165
data/text/pokemon_news.inc
Normal file
@ -0,0 +1,165 @@
|
||||
|
||||
gPokeNewsTextSlateport_Upcoming:: @ 0828D0F8
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "SLATEPORT’s most popular kind of guy,\n"
|
||||
.string "the ENERGY GURU, is in the news again!\p"
|
||||
.string "He promises to, “Stupendously go for\n"
|
||||
.string "it in just this many days: {STR_VAR_1}!”\p"
|
||||
.string "While he refused to elaborate on what\n"
|
||||
.string "he will stupendously go for, the\l"
|
||||
.string "ENERGY GURU advised, “Save up your\l"
|
||||
.string "money. That’ll be good…”\p"
|
||||
.string "It sounds like a trip to SLATEPORT\n"
|
||||
.string "would be well worth your while that day.\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextSlateport_Ongoing:: @ 0828D2A1
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "This is the news you’ve all been\n"
|
||||
.string "waiting for!\p"
|
||||
.string "SLATEPORT’S ENERGY GURU is going\n"
|
||||
.string "for it stupendously in the MARKET!\p"
|
||||
.string "He promises unbeatable bargain\n"
|
||||
.string "prices on CALCIUM and PROTEIN!\p"
|
||||
.string "A trip to SLATEPORT CITY sounds\n"
|
||||
.string "worthwhile. Why not visit and shop\l"
|
||||
.string "to your heart’s content?\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextSlateport_Ending:: @ 0828D3F5
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "This is the news you’ve all been\n"
|
||||
.string "waiting for!\p"
|
||||
.string "SLATEPORT’S ENERGY GURU is going\n"
|
||||
.string "for it stupendously in the MARKET!\p"
|
||||
.string "He promises unbeatable bargain\n"
|
||||
.string "prices on CALCIUM and PROTEIN!\p"
|
||||
.string "According to the ENERGY GURU, he\n"
|
||||
.string "still has ample merchandise left.\p"
|
||||
.string "Why not visit SLATEPORT CITY for\n"
|
||||
.string "a most enjoyable shopping trip?\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextGameCorner_Upcoming:: @ 0828D571
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "It’s approaching!\n"
|
||||
.string "It’s finally coming!\p"
|
||||
.string "The GAME CORNER’s service day will be\n"
|
||||
.string "here in just this many days: {STR_VAR_1}!\p"
|
||||
.string "Even those who are usually unlucky\n"
|
||||
.string "may be lucky on this particular day!\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextGameCorner_Ongoing:: @ 0828D66F
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "It’s here!\n"
|
||||
.string "It’s finally arrived!\p"
|
||||
.string "GAME CORNER’s service day has finally\n"
|
||||
.string "arrived!\p"
|
||||
.string "Could you be lucky at the SLOTS \n"
|
||||
.string "and ROULETTE?\p"
|
||||
.string "The location is MAUVILLE CITY.\n"
|
||||
.string "This is the place!\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextGameCorner_Ending:: @ 0828D768
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "It’s here!\n"
|
||||
.string "It’s finally arrived!\p"
|
||||
.string "GAME CORNER’s service day has finally\n"
|
||||
.string "arrived!\p"
|
||||
.string "Could you be lucky at the SLOTS\n"
|
||||
.string "and ROULETTE?\p"
|
||||
.string "Time is limited and has almost run out.\n"
|
||||
.string "The location is MAUVILLE CITY.\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextLilycove_Upcoming:: @ 0828D875
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "We’ve just received wonderful news\n"
|
||||
.string "from LILYCOVE DEPARTMENT STORE.\p"
|
||||
.string "The DEPARTMENT STORE’s clear-out sale\n"
|
||||
.string "will be in just this many days: {STR_VAR_1}!\p"
|
||||
.string "That thingamajig or that doodad that\n"
|
||||
.string "you’ve always wanted could be yours!\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextLilycove_Ongoing:: @ 0828D994
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "This is the news you’ve all been\n"
|
||||
.string "waiting for!\p"
|
||||
.string "LILYCOVE DEPARTMENT STORE’s clear-out\n"
|
||||
.string "sale has finally arrived!\p"
|
||||
.string "All the thingamajigs and doodads that\n"
|
||||
.string "you’ve always dreamt about…\p"
|
||||
.string "You may be in for fateful encounters\n"
|
||||
.string "with them all!\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextLilycove_Ending:: @ 0828DAC0
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "This is the news you’ve all been\n"
|
||||
.string "waiting for!\p"
|
||||
.string "LILYCOVE DEPARTMENT STORE’s clear-out\n"
|
||||
.string "sale has finally arrived!\p"
|
||||
.string "All the thingamajigs and doodads that\n"
|
||||
.string "you’ve always dreamt about…\p"
|
||||
.string "You may be in for fateful encounters\n"
|
||||
.string "with them all!\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextBlendMaster_Upcoming:: @ 0828DBEC
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "We have big news for everyone\n"
|
||||
.string "involved in the making of {POKEBLOCK}S.\p"
|
||||
.string "The legendary BLEND MASTER will be\n"
|
||||
.string "appearing in LILYCOVE CITY with just\l"
|
||||
.string "a mere {STR_VAR_1}-day wait to go!\p"
|
||||
.string "The BLEND MASTER is said to be\n"
|
||||
.string "the best in all HOENN when it comes to\l"
|
||||
.string "spinning a BERRY BLENDER.\p"
|
||||
.string "Those people who want to make great\n"
|
||||
.string "{POKEBLOCK}S or see the MASTER in action\l"
|
||||
.string "are urged to save their BERRIES.\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextBlendMaster_Ongoing:: @ 0828DD9E
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "We have big news for everyone\n"
|
||||
.string "involved in the making of {POKEBLOCK}S.\p"
|
||||
.string "The legendary BLEND MASTER has\n"
|
||||
.string "finally appeared!\p"
|
||||
.string "The BLEND MASTER is spinning\n"
|
||||
.string "the BERRY BLENDER at the LILYCOVE\l"
|
||||
.string "CONTEST HALL.\p"
|
||||
.string "Those people who want to make great\n"
|
||||
.string "{POKEBLOCK}S or see the MASTER in action\l"
|
||||
.string "should hurry to LILYCOVE.\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
||||
|
||||
gPokeNewsTextBlendMaster_Ending:: @ 0828DF05
|
||||
.string "Greetings!\n"
|
||||
.string "It’s time for POKéMON NEWS.\p"
|
||||
.string "It’s incredible!\n"
|
||||
.string "Too incredible, even!\p"
|
||||
.string "The BERRY BLENDER is spinning at\n"
|
||||
.string "a dizzying pace!\p"
|
||||
.string "The BLEND MASTER has lived up to\n"
|
||||
.string "his reputation!\p"
|
||||
.string "The BLEND MASTER will soon be\n"
|
||||
.string "leaving LILYCOVE.\p"
|
||||
.string "If you haven’t seen the MASTER in\n"
|
||||
.string "action, don’t waste this chance!\l"
|
||||
.string "Head to LILYCOVE right now!\p"
|
||||
.string "That’s the news on POKéMON NEWS.$"
|
2891
data/text/tv.inc
Normal file
2891
data/text/tv.inc
Normal file
File diff suppressed because it is too large
Load Diff
128
data/tv.s
128
data/tv.s
@ -1,128 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.section .rodata
|
||||
.align 2, 0
|
||||
|
||||
gUnknown_0858D094:: @ 858D094
|
||||
.incbin "baserom.gba", 0x58d094, 0x3c
|
||||
|
||||
gUnknown_0858D0D0:: @ 858D0D0
|
||||
.incbin "baserom.gba", 0x58d0d0, 0xe
|
||||
|
||||
gUnknown_0858D0DE:: @ 858D0DE
|
||||
.incbin "baserom.gba", 0x58d0de, 0xe
|
||||
|
||||
gUnknown_0858D0EC:: @ 858D0EC
|
||||
.incbin "baserom.gba", 0x58d0ec, 0x1c
|
||||
|
||||
gUnknown_0858D108:: @ 858D108
|
||||
.incbin "baserom.gba", 0x58d108, 0x14
|
||||
|
||||
gUnknown_0858D11C:: @ 858D11C
|
||||
.incbin "baserom.gba", 0x58d11c, 0x14
|
||||
|
||||
gUnknown_0858D130:: @ 858D130
|
||||
.incbin "baserom.gba", 0x58d130, 0x14
|
||||
|
||||
gUnknown_0858D144:: @ 858D144
|
||||
.incbin "baserom.gba", 0x58d144, 0xc
|
||||
|
||||
gUnknown_0858D150:: @ 858D150
|
||||
.incbin "baserom.gba", 0x58d150, 0x20
|
||||
|
||||
gUnknown_0858D170:: @ 858D170
|
||||
.incbin "baserom.gba", 0x58d170, 0x18
|
||||
|
||||
gUnknown_0858D188:: @ 858D188
|
||||
.incbin "baserom.gba", 0x58d188, 0x14
|
||||
|
||||
gUnknown_0858D19C:: @ 858D19C
|
||||
.incbin "baserom.gba", 0x58d19c, 0x4
|
||||
|
||||
gUnknown_0858D1A0:: @ 858D1A0
|
||||
.incbin "baserom.gba", 0x58d1a0, 0x30
|
||||
|
||||
gUnknown_0858D1D0:: @ 858D1D0
|
||||
.incbin "baserom.gba", 0x58d1d0, 0x34
|
||||
|
||||
gUnknown_0858D204:: @ 858D204
|
||||
.incbin "baserom.gba", 0x58d204, 0x24
|
||||
|
||||
gUnknown_0858D228:: @ 858D228
|
||||
.incbin "baserom.gba", 0x58d228, 0x18
|
||||
|
||||
gUnknown_0858D240:: @ 858D240
|
||||
.incbin "baserom.gba", 0x58d240, 0x3c
|
||||
|
||||
gUnknown_0858D27C:: @ 858D27C
|
||||
.incbin "baserom.gba", 0x58d27c, 0x84
|
||||
|
||||
gUnknown_0858D300:: @ 858D300
|
||||
.incbin "baserom.gba", 0x58d300, 0x20
|
||||
|
||||
gUnknown_0858D320:: @ 858D320
|
||||
.incbin "baserom.gba", 0x58d320, 0x18
|
||||
|
||||
gUnknown_0858D338:: @ 858D338
|
||||
.incbin "baserom.gba", 0x58d338, 0x4c
|
||||
|
||||
gUnknown_0858D384:: @ 858D384
|
||||
.incbin "baserom.gba", 0x58d384, 0x10
|
||||
|
||||
gUnknown_0858D394:: @ 858D394
|
||||
.incbin "baserom.gba", 0x58d394, 0x1c
|
||||
|
||||
gUnknown_0858D3B0:: @ 858D3B0
|
||||
.incbin "baserom.gba", 0x58d3b0, 0x8
|
||||
|
||||
gUnknown_0858D3B8:: @ 858D3B8
|
||||
.incbin "baserom.gba", 0x58d3b8, 0xc
|
||||
|
||||
gUnknown_0858D3C4:: @ 858D3C4
|
||||
.incbin "baserom.gba", 0x58d3c4, 0x2c
|
||||
|
||||
gUnknown_0858D3F0:: @ 858D3F0
|
||||
.incbin "baserom.gba", 0x58d3f0, 0x1c
|
||||
|
||||
gUnknown_0858D40C:: @ 858D40C
|
||||
.incbin "baserom.gba", 0x58d40c, 0xc
|
||||
|
||||
gUnknown_0858D418:: @ 858D418
|
||||
.incbin "baserom.gba", 0x58d418, 0x10
|
||||
|
||||
gUnknown_0858D428:: @ 858D428
|
||||
.incbin "baserom.gba", 0x58d428, 0x34
|
||||
|
||||
gUnknown_0858D45C:: @ 858D45C
|
||||
.incbin "baserom.gba", 0x58d45c, 0x38
|
||||
|
||||
gUnknown_0858D494:: @ 858D494
|
||||
.incbin "baserom.gba", 0x58d494, 0x4
|
||||
|
||||
gUnknown_0858D498:: @ 858D498
|
||||
.incbin "baserom.gba", 0x58d498, 0x1c
|
||||
|
||||
gUnknown_0858D4B4:: @ 858D4B4
|
||||
.incbin "baserom.gba", 0x58d4b4, 0x30
|
||||
|
||||
gUnknown_0858D4E4:: @ 858D4E4
|
||||
.incbin "baserom.gba", 0x58d4e4, 0x40
|
||||
|
||||
gUnknown_0858D524:: @ 858D524
|
||||
.incbin "baserom.gba", 0x58d524, 0x4c
|
||||
|
||||
gUnknown_0858D570:: @ 858D570
|
||||
.incbin "baserom.gba", 0x58d570, 0x24
|
||||
|
||||
gUnknown_0858D594:: @ 858D594
|
||||
.incbin "baserom.gba", 0x58d594, 0xac
|
||||
|
||||
gUnknown_0858D640:: @ 858D640
|
||||
.incbin "baserom.gba", 0x58d640, 0x2c
|
||||
|
||||
gUnknown_0858D66C:: @ 858D66C
|
||||
.incbin "baserom.gba", 0x58d66c, 0x24
|
||||
|
||||
gUnknown_0858D690:: @ 858D690
|
||||
.incbin "baserom.gba", 0x58d690, 0x20
|
@ -78,6 +78,7 @@
|
||||
#define BATTLE_PLAYER_TELEPORTED 0x5
|
||||
#define BATTLE_POKE_FLED 0x6
|
||||
#define BATTLE_CAUGHT 0x7
|
||||
#define BATTLE_SAFARI_OUT_OF_BALLS 0x8
|
||||
#define BATTLE_FORFEITED 0x9
|
||||
#define BATTLE_OPPONENT_TELEPORTED 0xA
|
||||
|
||||
@ -528,11 +529,11 @@ struct BattleResults
|
||||
u8 playerSwitchesCounter; // 0x2
|
||||
u8 unk3; // 0x3
|
||||
u8 unk4; // 0x4
|
||||
u8 unk5_0:1; // 0x5 , 0x1
|
||||
u8 unk5_1:1; // 0x5 , 0x2
|
||||
u8 caughtMonBall:4; // 0x5 , 0x4/0x8/0x10/0x20
|
||||
u8 unk5_6:1; // 0x5 , 0x40
|
||||
u8 unk5_7:1; // 0x5 , 0x80
|
||||
u8 unk5_0:1; // 0x5
|
||||
u8 usedMasterBall:1; // 0x5
|
||||
u8 caughtMonBall:4; // 0x5
|
||||
u8 unk5_6:1; // 0x5
|
||||
u8 unk5_7:1; // 0x5
|
||||
u16 playerMon1Species; // 0x6
|
||||
u8 playerMon1Name[11]; // 0x8
|
||||
u8 battleTurnCounter; // 0x13
|
||||
@ -545,7 +546,7 @@ struct BattleResults
|
||||
u16 caughtMonSpecies; // 0x28
|
||||
u8 caughtMonNick[10]; // 0x2A
|
||||
u8 filler34[2];
|
||||
u8 catchAttempts[12]; // 0x36
|
||||
u8 catchAttempts[11]; // 0x36
|
||||
};
|
||||
|
||||
extern struct BattleResults gBattleResults;
|
||||
@ -902,6 +903,10 @@ struct MonSpritesGfx
|
||||
struct SpriteTemplate templates[4];
|
||||
};
|
||||
|
||||
extern struct BattleSpritesGfx* gMonSpritesGfx;
|
||||
extern u8 gBattleOutcome;
|
||||
extern u16 gLastUsedItem;
|
||||
extern u32 gBattleTypeFlags;
|
||||
extern struct MonSpritesGfx* gMonSpritesGfxPtr;
|
||||
|
||||
#endif // GUARD_BATTLE_H
|
||||
|
6
include/battle_tower.h
Normal file
6
include/battle_tower.h
Normal file
@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_BATTLE_TOWER_H
|
||||
#define GUARD_BATTLE_TOWER_H
|
||||
|
||||
u16 sub_8164FCC(u8, u8);
|
||||
|
||||
#endif //GUARD_BATTLE_TOWER_H
|
18
include/contest.h
Normal file
18
include/contest.h
Normal file
@ -0,0 +1,18 @@
|
||||
#ifndef GUARD_CONTEST_H
|
||||
#define GUARD_CONTEST_H
|
||||
|
||||
struct ContestStruct_02039E00 {
|
||||
u16 unk_00;
|
||||
u8 unk_02[11];
|
||||
u8 unk_0d[8];
|
||||
u8 filler_15[9];
|
||||
u8 filler_1E[34];
|
||||
};
|
||||
|
||||
extern struct ContestStruct_02039E00 gUnknown_02039E00[4];
|
||||
extern u8 gUnknown_02039F24;
|
||||
extern EWRAM_DATA u16 gUnknown_02039F2C;
|
||||
extern EWRAM_DATA u8 gUnknown_02039F2E;
|
||||
extern EWRAM_DATA u8 gUnknown_02039F30;
|
||||
|
||||
#endif //GUARD_CONTEST_H
|
147
include/decoration.h
Normal file
147
include/decoration.h
Normal file
@ -0,0 +1,147 @@
|
||||
#ifndef GUARD_DECORATION_H
|
||||
#define GUARD_DECORATION_H
|
||||
|
||||
enum DecoId {
|
||||
/*000*/ DECOR_NONE,
|
||||
/*001*/ DECOR_SMALL_DESK,
|
||||
/*002*/ DECOR_POKEMON_DESK,
|
||||
/*003*/ DECOR_HEAVY_DESK,
|
||||
/*004*/ DECOR_RAGGED_DESK,
|
||||
/*005*/ DECOR_COMFORT_DESK,
|
||||
/*006*/ DECOR_PRETTY_DESK,
|
||||
/*007*/ DECOR_BRICK_DESK,
|
||||
/*008*/ DECOR_CAMP_DESK,
|
||||
/*009*/ DECOR_HARD_DESK,
|
||||
/*010*/ DECOR_SMALL_CHAIR,
|
||||
/*011*/ DECOR_POKEMON_CHAIR,
|
||||
/*012*/ DECOR_HEAVY_CHAIR,
|
||||
/*013*/ DECOR_PRETTY_CHAIR,
|
||||
/*014*/ DECOR_COMFORT_CHAIR,
|
||||
/*015*/ DECOR_RAGGED_CHAIR,
|
||||
/*016*/ DECOR_BRICK_CHAIR,
|
||||
/*017*/ DECOR_CAMP_CHAIR,
|
||||
/*018*/ DECOR_HARD_CHAIR,
|
||||
/*019*/ DECOR_RED_PLANT,
|
||||
/*020*/ DECOR_TROPICAL_PLANT,
|
||||
/*021*/ DECOR_PRETTY_FLOWERS,
|
||||
/*022*/ DECOR_COLORFUL_PLANT,
|
||||
/*023*/ DECOR_BIG_PLANT,
|
||||
/*024*/ DECOR_GORGEOUS_PLANT,
|
||||
/*025*/ DECOR_RED_BRICK,
|
||||
/*026*/ DECOR_YELLOW_BRICK,
|
||||
/*027*/ DECOR_BLUE_BRICK,
|
||||
/*028*/ DECOR_RED_BALLOON,
|
||||
/*029*/ DECOR_BLUE_BALLOON,
|
||||
/*030*/ DECOR_YELLOW_BALLOON,
|
||||
/*031*/ DECOR_RED_TENT,
|
||||
/*032*/ DECOR_BLUE_TENT,
|
||||
/*033*/ DECOR_SOLID_BOARD,
|
||||
/*034*/ DECOR_SLIDE,
|
||||
/*035*/ DECOR_FENCE_LENGTH,
|
||||
/*036*/ DECOR_FENCE_WIDTH,
|
||||
/*037*/ DECOR_TIRE,
|
||||
/*038*/ DECOR_STAND,
|
||||
/*039*/ DECOR_MUD_BALL,
|
||||
/*040*/ DECOR_BREAKABLE_DOOR,
|
||||
/*041*/ DECOR_SAND_ORNAMENT,
|
||||
/*042*/ DECOR_SILVER_SHIELD,
|
||||
/*043*/ DECOR_GOLD_SHIELD,
|
||||
/*044*/ DECOR_GLASS_ORNAMENT,
|
||||
/*045*/ DECOR_TV,
|
||||
/*046*/ DECOR_ROUND_TV,
|
||||
/*047*/ DECOR_CUTE_TV,
|
||||
/*048*/ DECOR_GLITTER_MAT,
|
||||
/*049*/ DECOR_JUMP_MAT,
|
||||
/*050*/ DECOR_SPIN_MAT,
|
||||
/*051*/ DECOR_C_LOW_NOTE_MAT,
|
||||
/*052*/ DECOR_D_NOTE_MAT,
|
||||
/*053*/ DECOR_E_NOTE_MAT,
|
||||
/*054*/ DECOR_F_NOTE_MAT,
|
||||
/*055*/ DECOR_G_NOTE_MAT,
|
||||
/*056*/ DECOR_A_NOTE_MAT,
|
||||
/*057*/ DECOR_B_NOTE_MAT,
|
||||
/*058*/ DECOR_C_HIGH_NOTE_MAT,
|
||||
/*059*/ DECOR_SURF_MAT,
|
||||
/*060*/ DECOR_THUNDER_MAT,
|
||||
/*061*/ DECOR_FIRE_BLAST_MAT,
|
||||
/*062*/ DECOR_POWDER_SNOW_MAT,
|
||||
/*063*/ DECOR_ATTRACT_MAT,
|
||||
/*064*/ DECOR_FISSURE_MAT,
|
||||
/*065*/ DECOR_SPIKES_MAT,
|
||||
/*066*/ DECOR_BALL_POSTER,
|
||||
/*067*/ DECOR_GREEN_POSTER,
|
||||
/*068*/ DECOR_RED_POSTER,
|
||||
/*069*/ DECOR_BLUE_POSTER,
|
||||
/*070*/ DECOR_CUTE_POSTER,
|
||||
/*071*/ DECOR_PIKA_POSTER,
|
||||
/*072*/ DECOR_LONG_POSTER,
|
||||
/*073*/ DECOR_SEA_POSTER,
|
||||
/*074*/ DECOR_SKY_POSTER,
|
||||
/*075*/ DECOR_KISS_POSTER,
|
||||
/*076*/ DECOR_PICHU_DOLL,
|
||||
/*077*/ DECOR_PIKACHU_DOLL,
|
||||
/*078*/ DECOR_MARILL_DOLL,
|
||||
/*079*/ DECOR_TOGEPI_DOLL,
|
||||
/*080*/ DECOR_CYNDAQUIL_DOLL,
|
||||
/*081*/ DECOR_CHIKORITA_DOLL,
|
||||
/*082*/ DECOR_TOTODILE_DOLL,
|
||||
/*083*/ DECOR_JIGGLYPUFF_DOLL,
|
||||
/*084*/ DECOR_MEOWTH_DOLL,
|
||||
/*085*/ DECOR_CLEFAIRY_DOLL,
|
||||
/*086*/ DECOR_DITTO_DOLL,
|
||||
/*087*/ DECOR_SMOOCHUM_DOLL,
|
||||
/*088*/ DECOR_TREECKO_DOLL,
|
||||
/*089*/ DECOR_TORCHIC_DOLL,
|
||||
/*090*/ DECOR_MUDKIP_DOLL,
|
||||
/*091*/ DECOR_DUSKULL_DOLL,
|
||||
/*092*/ DECOR_WYNAUT_DOLL,
|
||||
/*093*/ DECOR_BALTOY_DOLL,
|
||||
/*094*/ DECOR_KECLEON_DOLL,
|
||||
/*095*/ DECOR_AZURILL_DOLL,
|
||||
/*096*/ DECOR_SKITTY_DOLL,
|
||||
/*097*/ DECOR_SWABLU_DOLL,
|
||||
/*098*/ DECOR_GULPIN_DOLL,
|
||||
/*099*/ DECOR_LOTAD_DOLL,
|
||||
/*100*/ DECOR_SEEDOT_DOLL,
|
||||
/*101*/ DECOR_PIKA_CUSHION,
|
||||
/*102*/ DECOR_ROUND_CUSHION,
|
||||
/*103*/ DECOR_KISS_CUSHION,
|
||||
/*104*/ DECOR_ZIGZAG_CUSHION,
|
||||
/*105*/ DECOR_SPIN_CUSHION,
|
||||
/*106*/ DECOR_DIAMOND_CUSHION,
|
||||
/*107*/ DECOR_BALL_CUSHION,
|
||||
/*108*/ DECOR_GRASS_CUSHION,
|
||||
/*109*/ DECOR_FIRE_CUSHION,
|
||||
/*110*/ DECOR_WATER_CUSHION,
|
||||
/*111*/ DECOR_SNORLAX_DOLL,
|
||||
/*112*/ DECOR_RHYDON_DOLL,
|
||||
/*113*/ DECOR_LAPRAS_DOLL,
|
||||
/*114*/ DECOR_VENUSAUR_DOLL,
|
||||
/*115*/ DECOR_CHARIZARD_DOLL,
|
||||
/*116*/ DECOR_BLASTOISE_DOLL,
|
||||
/*117*/ DECOR_WAILMER_DOLL,
|
||||
/*118*/ DECOR_REGIROCK_DOLL,
|
||||
/*119*/ DECOR_REGICE_DOLL,
|
||||
/*120*/ DECOR_REGISTEEL_DOLL
|
||||
};
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
struct Decoration
|
||||
{
|
||||
/*0x00*/ u8 id;
|
||||
/*0x01*/ u8 name[16];
|
||||
/*0x11*/ u8 permission;
|
||||
/*0x12*/ u8 shape;
|
||||
/*0x13*/ u8 category;
|
||||
/*0x14*/ u16 price;
|
||||
/*0x18*/ const u8 *description;
|
||||
/*0x1c*/ const u16 *tiles;
|
||||
};
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
extern const struct Decoration gDecorations[];
|
||||
|
||||
#endif //GUARD_DECORATION_H
|
@ -30,7 +30,9 @@ enum
|
||||
|
||||
void InitEasyChatPhrases(void);
|
||||
void easy_chat_input_maybe(void);
|
||||
void CopyEasyChatWord(u8 *, u16);
|
||||
bool32 sub_811F8D8(u16);
|
||||
void CopyEasyChatWord(u8 *dest, u16 word);
|
||||
bool32 sub_811F8D8(u16 word);
|
||||
void InitializeEasyChatWordArray(u16 *words, u16 length);
|
||||
void ConvertEasyChatWordsToString(u8 *dest, const u16 *src, u16 length1, u16 length2);
|
||||
|
||||
#endif // GUARD_EASYCHAT_H
|
||||
|
@ -8,4 +8,353 @@
|
||||
extern const u8 gUnknown_082766A2[];
|
||||
extern const u8 gUnknown_082766A6[];
|
||||
|
||||
extern const u8 gTVBravoTrainerText00[];
|
||||
extern const u8 gTVBravoTrainerText01[];
|
||||
extern const u8 gTVBravoTrainerText02[];
|
||||
extern const u8 gTVBravoTrainerText03[];
|
||||
extern const u8 gTVBravoTrainerText04[];
|
||||
extern const u8 gTVBravoTrainerText05[];
|
||||
extern const u8 gTVBravoTrainerText06[];
|
||||
extern const u8 gTVBravoTrainerText07[];
|
||||
extern const u8 gTVBravoTrainerText08[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText00[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText01[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText02[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText03[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText04[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText05[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText06[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText07[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText08[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText09[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText10[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText11[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText12[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText13[];
|
||||
extern const u8 gTVBravoTrainerBattleTowerText14[];
|
||||
extern const u8 gTVFanClubOpinionsText00[];
|
||||
extern const u8 gTVFanClubOpinionsText01[];
|
||||
extern const u8 gTVFanClubOpinionsText02[];
|
||||
extern const u8 gTVFanClubOpinionsText03[];
|
||||
extern const u8 gTVFanClubOpinionsText04[];
|
||||
extern const u8 gTVFanClubText00[];
|
||||
extern const u8 gTVFanClubText01[];
|
||||
extern const u8 gTVFanClubText02[];
|
||||
extern const u8 gTVFanClubText03[];
|
||||
extern const u8 gTVFanClubText04[];
|
||||
extern const u8 gTVFanClubText05[];
|
||||
extern const u8 gTVFanClubText06[];
|
||||
extern const u8 gTVFanClubText07[];
|
||||
extern const u8 gTVRecentHappeningsText00[];
|
||||
extern const u8 gTVRecentHappeningsText01[];
|
||||
extern const u8 gTVRecentHappeningsText02[];
|
||||
extern const u8 gTVRecentHappeningsText03[];
|
||||
extern const u8 gTVRecentHappeningsText04[];
|
||||
extern const u8 gTVRecentHappeningsText05[];
|
||||
extern const u8 gTVMassOutbreakText00[];
|
||||
extern const u8 gTV3CheersForPokeblocksText00[];
|
||||
extern const u8 gTV3CheersForPokeblocksText01[];
|
||||
extern const u8 gTV3CheersForPokeblocksText02[];
|
||||
extern const u8 gTV3CheersForPokeblocksText03[];
|
||||
extern const u8 gTV3CheersForPokeblocksText04[];
|
||||
extern const u8 gTV3CheersForPokeblocksText05[];
|
||||
extern const u8 gTVTrainerFanClubSpecialText00[];
|
||||
extern const u8 gTVTrainerFanClubSpecialText01[];
|
||||
extern const u8 gTVTrainerFanClubSpecialText02[];
|
||||
extern const u8 gTVTrainerFanClubSpecialText03[];
|
||||
extern const u8 gTVTrainerFanClubSpecialText04[];
|
||||
extern const u8 gTVTrainerFanClubSpecialText05[];
|
||||
extern const u8 gTVNameRaterText00[];
|
||||
extern const u8 gTVNameRaterText01[];
|
||||
extern const u8 gTVNameRaterText02[];
|
||||
extern const u8 gTVNameRaterText03[];
|
||||
extern const u8 gTVNameRaterText04[];
|
||||
extern const u8 gTVNameRaterText05[];
|
||||
extern const u8 gTVNameRaterText06[];
|
||||
extern const u8 gTVNameRaterText07[];
|
||||
extern const u8 gTVNameRaterText08[];
|
||||
extern const u8 gTVNameRaterText09[];
|
||||
extern const u8 gTVNameRaterText10[];
|
||||
extern const u8 gTVNameRaterText11[];
|
||||
extern const u8 gTVNameRaterText12[];
|
||||
extern const u8 gTVNameRaterText13[];
|
||||
extern const u8 gTVNameRaterText14[];
|
||||
extern const u8 gTVNameRaterText15[];
|
||||
extern const u8 gTVNameRaterText16[];
|
||||
extern const u8 gTVNameRaterText17[];
|
||||
extern const u8 gTVNameRaterText18[];
|
||||
extern const u8 gTVPokemonAnglerText00[];
|
||||
extern const u8 gTVPokemonAnglerText01[];
|
||||
extern const u8 gTVPokemonTodayFailedText00[];
|
||||
extern const u8 gTVPokemonTodayFailedText01[];
|
||||
extern const u8 gTVPokemonTodayFailedText02[];
|
||||
extern const u8 gTVPokemonTodayFailedText03[];
|
||||
extern const u8 gTVPokemonTodayFailedText04[];
|
||||
extern const u8 gTVPokemonTodayFailedText05[];
|
||||
extern const u8 gTVPokemonTodayFailedText06[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText00[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText01[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText02[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText03[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText04[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText05[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText06[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText07[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText08[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText09[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText10[];
|
||||
extern const u8 gTVPokemonTodaySuccessfulText11[];
|
||||
extern const u8 gTVTodaysSmartShopperText00[];
|
||||
extern const u8 gTVTodaysSmartShopperText01[];
|
||||
extern const u8 gTVTodaysSmartShopperText02[];
|
||||
extern const u8 gTVTodaysSmartShopperText03[];
|
||||
extern const u8 gTVTodaysSmartShopperText04[];
|
||||
extern const u8 gTVTodaysSmartShopperText05[];
|
||||
extern const u8 gTVTodaysSmartShopperText06[];
|
||||
extern const u8 gTVTodaysSmartShopperText07[];
|
||||
extern const u8 gTVTodaysSmartShopperText08[];
|
||||
extern const u8 gTVTodaysSmartShopperText09[];
|
||||
extern const u8 gTVTodaysSmartShopperText10[];
|
||||
extern const u8 gTVTodaysSmartShopperText11[];
|
||||
extern const u8 gTVTodaysSmartShopperText12[];
|
||||
extern const u8 gTVWorldOfMastersText00[];
|
||||
extern const u8 gTVWorldOfMastersText01[];
|
||||
extern const u8 gTVWorldOfMastersText02[];
|
||||
extern const u8 gTVTodaysRivalTrainerText00[];
|
||||
extern const u8 gTVTodaysRivalTrainerText07[];
|
||||
extern const u8 gTVTodaysRivalTrainerText08[];
|
||||
extern const u8 gTVTodaysRivalTrainerText09[];
|
||||
extern const u8 gTVTodaysRivalTrainerText10[];
|
||||
extern const u8 gTVTodaysRivalTrainerText01[];
|
||||
extern const u8 gTVTodaysRivalTrainerText02[];
|
||||
extern const u8 gTVTodaysRivalTrainerText03[];
|
||||
extern const u8 gTVTodaysRivalTrainerText04[];
|
||||
extern const u8 gTVTodaysRivalTrainerText05[];
|
||||
extern const u8 gTVTodaysRivalTrainerText06[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText00[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText01[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText02[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText03[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText04[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText05[];
|
||||
extern const u8 gTVDewfordTrendWatcherNetworkText06[];
|
||||
extern const u8 gTVHoennTreasureInvestigatorsText00[];
|
||||
extern const u8 gTVHoennTreasureInvestigatorsText01[];
|
||||
extern const u8 gTVHoennTreasureInvestigatorsText02[];
|
||||
extern const u8 gTVFindThatGamerText00[];
|
||||
extern const u8 gTVFindThatGamerText01[];
|
||||
extern const u8 gTVFindThatGamerText02[];
|
||||
extern const u8 gTVFindThatGamerText03[];
|
||||
extern const u8 gTVBreakingNewsText00[];
|
||||
extern const u8 gTVBreakingNewsText01[];
|
||||
extern const u8 gTVBreakingNewsText02[];
|
||||
extern const u8 gTVBreakingNewsText03[];
|
||||
extern const u8 gTVBreakingNewsText04[];
|
||||
extern const u8 gTVBreakingNewsText05[];
|
||||
extern const u8 gTVBreakingNewsText06[];
|
||||
extern const u8 gTVBreakingNewsText07[];
|
||||
extern const u8 gTVBreakingNewsText12[];
|
||||
extern const u8 gTVBreakingNewsText08[];
|
||||
extern const u8 gTVBreakingNewsText09[];
|
||||
extern const u8 gTVBreakingNewsText10[];
|
||||
extern const u8 gTVBreakingNewsText11[];
|
||||
extern const u8 gTVSecretBaseVisitText00[];
|
||||
extern const u8 gTVSecretBaseVisitText01[];
|
||||
extern const u8 gTVSecretBaseVisitText02[];
|
||||
extern const u8 gTVSecretBaseVisitText03[];
|
||||
extern const u8 gTVSecretBaseVisitText04[];
|
||||
extern const u8 gTVSecretBaseVisitText05[];
|
||||
extern const u8 gTVSecretBaseVisitText06[];
|
||||
extern const u8 gTVSecretBaseVisitText07[];
|
||||
extern const u8 gTVSecretBaseVisitText08[];
|
||||
extern const u8 gTVSecretBaseVisitText09[];
|
||||
extern const u8 gTVSecretBaseVisitText10[];
|
||||
extern const u8 gTVSecretBaseVisitText11[];
|
||||
extern const u8 gTVSecretBaseVisitText12[];
|
||||
extern const u8 gTVSecretBaseVisitText13[];
|
||||
extern const u8 gTVPokemonLotteryWinnerFlashReportText00[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText00[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText01[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText02[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText03[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText04[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText05[];
|
||||
extern const u8 gTVThePokemonBattleSeminarText06[];
|
||||
extern const u8 gTVTrainerFanClubText00[];
|
||||
extern const u8 gTVTrainerFanClubText01[];
|
||||
extern const u8 gTVTrainerFanClubText02[];
|
||||
extern const u8 gTVTrainerFanClubText03[];
|
||||
extern const u8 gTVTrainerFanClubText04[];
|
||||
extern const u8 gTVTrainerFanClubText05[];
|
||||
extern const u8 gTVTrainerFanClubText06[];
|
||||
extern const u8 gTVTrainerFanClubText07[];
|
||||
extern const u8 gTVTrainerFanClubText08[];
|
||||
extern const u8 gTVTrainerFanClubText09[];
|
||||
extern const u8 gTVTrainerFanClubText10[];
|
||||
extern const u8 gTVTrainerFanClubText11[];
|
||||
extern const u8 gTVCutiesText00[];
|
||||
extern const u8 gTVCutiesText01[];
|
||||
extern const u8 gTVCutiesText02[];
|
||||
extern const u8 gTVCutiesText03[];
|
||||
extern const u8 gTVCutiesText04[];
|
||||
extern const u8 gTVCutiesText05[];
|
||||
extern const u8 gTVCutiesText06[];
|
||||
extern const u8 gTVCutiesText07[];
|
||||
extern const u8 gTVCutiesText08[];
|
||||
extern const u8 gTVCutiesText09[];
|
||||
extern const u8 gTVCutiesText10[];
|
||||
extern const u8 gTVCutiesText11[];
|
||||
extern const u8 gTVCutiesText12[];
|
||||
extern const u8 gTVCutiesText13[];
|
||||
extern const u8 gTVCutiesText14[];
|
||||
extern const u8 gTVCutiesText15[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText00[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText01[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText02[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText03[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText04[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText05[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText06[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText07[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText08[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText09[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText10[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText11[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText12[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText13[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText14[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText15[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText16[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText17[];
|
||||
extern const u8 gTVPokemonNewsBattleFrontierText18[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText00[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText01[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText02[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText03[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText04[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText05[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText06[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText07[];
|
||||
extern const u8 gTVWhatsNo1InHoennTodayText08[];
|
||||
extern const u8 gTVSecretBaseSecretsText00[];
|
||||
extern const u8 gTVSecretBaseSecretsText01[];
|
||||
extern const u8 gTVSecretBaseSecretsText02[];
|
||||
extern const u8 gTVSecretBaseSecretsText03[];
|
||||
extern const u8 gTVSecretBaseSecretsText04[];
|
||||
extern const u8 gTVSecretBaseSecretsText05[];
|
||||
extern const u8 gTVSecretBaseSecretsText06[];
|
||||
extern const u8 gTVSecretBaseSecretsText07[];
|
||||
extern const u8 gTVSecretBaseSecretsText08[];
|
||||
extern const u8 gTVSecretBaseSecretsText09[];
|
||||
extern const u8 gTVSecretBaseSecretsText10[];
|
||||
extern const u8 gTVSecretBaseSecretsText11[];
|
||||
extern const u8 gTVSecretBaseSecretsText12[];
|
||||
extern const u8 gTVSecretBaseSecretsText13[];
|
||||
extern const u8 gTVSecretBaseSecretsText14[];
|
||||
extern const u8 gTVSecretBaseSecretsText15[];
|
||||
extern const u8 gTVSecretBaseSecretsText16[];
|
||||
extern const u8 gTVSecretBaseSecretsText17[];
|
||||
extern const u8 gTVSecretBaseSecretsText18[];
|
||||
extern const u8 gTVSecretBaseSecretsText19[];
|
||||
extern const u8 gTVSecretBaseSecretsText20[];
|
||||
extern const u8 gTVSecretBaseSecretsText21[];
|
||||
extern const u8 gTVSecretBaseSecretsText22[];
|
||||
extern const u8 gTVSecretBaseSecretsText23[];
|
||||
extern const u8 gTVSecretBaseSecretsText24[];
|
||||
extern const u8 gTVSecretBaseSecretsText25[];
|
||||
extern const u8 gTVSecretBaseSecretsText26[];
|
||||
extern const u8 gTVSecretBaseSecretsText27[];
|
||||
extern const u8 gTVSecretBaseSecretsText28[];
|
||||
extern const u8 gTVSecretBaseSecretsText29[];
|
||||
extern const u8 gTVSecretBaseSecretsText30[];
|
||||
extern const u8 gTVSecretBaseSecretsText31[];
|
||||
extern const u8 gTVSecretBaseSecretsText32[];
|
||||
extern const u8 gTVSecretBaseSecretsText33[];
|
||||
extern const u8 gTVSecretBaseSecretsText34[];
|
||||
extern const u8 gTVSecretBaseSecretsText35[];
|
||||
extern const u8 gTVSecretBaseSecretsText36[];
|
||||
extern const u8 gTVSecretBaseSecretsText37[];
|
||||
extern const u8 gTVSecretBaseSecretsText38[];
|
||||
extern const u8 gTVSecretBaseSecretsText39[];
|
||||
extern const u8 gTVSecretBaseSecretsText40[];
|
||||
extern const u8 gTVSecretBaseSecretsText41[];
|
||||
extern const u8 gTVSecretBaseSecretsText42[];
|
||||
extern const u8 gTVSafariFanClubText00[];
|
||||
extern const u8 gTVSafariFanClubText01[];
|
||||
extern const u8 gTVSafariFanClubText02[];
|
||||
extern const u8 gTVSafariFanClubText03[];
|
||||
extern const u8 gTVSafariFanClubText04[];
|
||||
extern const u8 gTVSafariFanClubText05[];
|
||||
extern const u8 gTVSafariFanClubText06[];
|
||||
extern const u8 gTVSafariFanClubText07[];
|
||||
extern const u8 gTVSafariFanClubText08[];
|
||||
extern const u8 gTVSafariFanClubText09[];
|
||||
extern const u8 gTVSafariFanClubText10[];
|
||||
extern const u8 gTVContestLiveUpdatesText00[];
|
||||
extern const u8 gTVContestLiveUpdatesText01[];
|
||||
extern const u8 gTVContestLiveUpdatesText02[];
|
||||
extern const u8 gTVContestLiveUpdatesText03[];
|
||||
extern const u8 gTVContestLiveUpdatesText04[];
|
||||
extern const u8 gTVContestLiveUpdatesText05[];
|
||||
extern const u8 gTVContestLiveUpdatesText06[];
|
||||
extern const u8 gTVContestLiveUpdatesText07[];
|
||||
extern const u8 gTVContestLiveUpdatesText08[];
|
||||
extern const u8 gTVContestLiveUpdatesText09[];
|
||||
extern const u8 gTVContestLiveUpdatesText10[];
|
||||
extern const u8 gTVContestLiveUpdatesText11[];
|
||||
extern const u8 gTVContestLiveUpdatesText12[];
|
||||
extern const u8 gTVContestLiveUpdatesText13[];
|
||||
extern const u8 gTVContestLiveUpdatesText14[];
|
||||
extern const u8 gTVContestLiveUpdatesText15[];
|
||||
extern const u8 gTVContestLiveUpdatesText16[];
|
||||
extern const u8 gTVContestLiveUpdatesText17[];
|
||||
extern const u8 gTVContestLiveUpdatesText18[];
|
||||
extern const u8 gTVContestLiveUpdatesText19[];
|
||||
extern const u8 gTVContestLiveUpdatesText20[];
|
||||
extern const u8 gTVContestLiveUpdatesText21[];
|
||||
extern const u8 gTVContestLiveUpdatesText22[];
|
||||
extern const u8 gTVContestLiveUpdatesText23[];
|
||||
extern const u8 gTVContestLiveUpdatesText24[];
|
||||
extern const u8 gTVContestLiveUpdatesText25[];
|
||||
extern const u8 gTVContestLiveUpdatesText26[];
|
||||
extern const u8 gTVContestLiveUpdatesText27[];
|
||||
extern const u8 gTVContestLiveUpdatesText28[];
|
||||
extern const u8 gTVContestLiveUpdatesText29[];
|
||||
extern const u8 gTVContestLiveUpdatesText30[];
|
||||
extern const u8 gTVContestLiveUpdatesText31[];
|
||||
extern const u8 gTVContestLiveUpdatesText32[];
|
||||
extern const u8 gTVPokemonBattleUpdateText00[];
|
||||
extern const u8 gTVPokemonBattleUpdateText01[];
|
||||
extern const u8 gTVPokemonBattleUpdateText02[];
|
||||
extern const u8 gTVPokemonBattleUpdateText03[];
|
||||
extern const u8 gTVPokemonBattleUpdateText04[];
|
||||
extern const u8 gTVPokemonBattleUpdateText05[];
|
||||
extern const u8 gTVPokemonBattleUpdateText06[];
|
||||
extern const u8 gTVPokemonBattleUpdateText07[];
|
||||
extern const u8 gTVInSearchOfTrainersText00[];
|
||||
extern const u8 gTVInSearchOfTrainersText01[];
|
||||
extern const u8 gTVInSearchOfTrainersText02[];
|
||||
extern const u8 gTVInSearchOfTrainersText03[];
|
||||
extern const u8 gTVInSearchOfTrainersText04[];
|
||||
extern const u8 gTVInSearchOfTrainersText05[];
|
||||
extern const u8 gTVInSearchOfTrainersText06[];
|
||||
extern const u8 gTVInSearchOfTrainersText07[];
|
||||
extern const u8 gTVInSearchOfTrainersText08[];
|
||||
extern const u8 gTVPokemonContestLiveUpdates2Text00[];
|
||||
extern const u8 gTVPokemonContestLiveUpdates2Text01[];
|
||||
extern const u8 gTVPokemonContestLiveUpdates2Text02[];
|
||||
extern const u8 gTVPokemonContestLiveUpdates2Text03[];
|
||||
extern const u8 gPokeNewsTextSlateport_Upcoming[];
|
||||
extern const u8 gPokeNewsTextSlateport_Ongoing[];
|
||||
extern const u8 gPokeNewsTextSlateport_Ending[];
|
||||
extern const u8 gPokeNewsTextGameCorner_Upcoming[];
|
||||
extern const u8 gPokeNewsTextGameCorner_Ongoing[];
|
||||
extern const u8 gPokeNewsTextGameCorner_Ending[];
|
||||
extern const u8 gPokeNewsTextLilycove_Upcoming[];
|
||||
extern const u8 gPokeNewsTextLilycove_Ongoing[];
|
||||
extern const u8 gPokeNewsTextLilycove_Ending[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Upcoming[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Ongoing[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Ending[];
|
||||
|
||||
#endif //GUARD_EVENT_SCRIPTS_H
|
||||
|
@ -22,4 +22,6 @@ extern u16 gUnknown_03005DE8;
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
void DrawWholeMapView(void);
|
||||
|
||||
#endif //GUARD_FIELD_CAMERA_H
|
||||
|
12
include/field_message_box.h
Normal file
12
include/field_message_box.h
Normal file
@ -0,0 +1,12 @@
|
||||
#ifndef GUARD_field_message_box_H
|
||||
#define GUARD_field_message_box_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
void ShowFieldMessage(const u8 *);
|
||||
|
||||
#endif //GUARD_field_message_box_H
|
@ -8,9 +8,14 @@
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
extern struct MapCoords {
|
||||
int width;
|
||||
int height;
|
||||
} gUnknown_03005DC0;
|
||||
|
||||
// Exported ROM declarations
|
||||
u8 MapGridGetMetatileBehaviorAt(s16, s16);
|
||||
u32 MapGridGetMetatileBehaviorAt(int, int);
|
||||
void MapGridSetMetatileIdAt(int, int, u16);
|
||||
void GetCameraCoords(u16*, u16*);
|
||||
bool8 MapGridIsImpassableAt(s16, s16);
|
||||
s32 GetMapBorderIdAt(s16, s16);
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#define TRAINER_FLAG_START 0x500
|
||||
#define TRAINERS_FLAG_NO 0x356
|
||||
#define CODE_FLAGS (TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA)
|
||||
#define CODE_FLAGS (TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x860
|
||||
|
||||
// SYSTEM FLAGS
|
||||
|
||||
@ -84,6 +84,20 @@
|
||||
#define SYS_CTRL_OBJ_DELETE CODE_FLAGS + 0x61
|
||||
#define SYS_RESET_RTC_ENABLE CODE_FLAGS + 0x62
|
||||
|
||||
#define SYS_TOWER_SILVER CODE_FLAGS + 0x64
|
||||
#define SYS_TOWER_GOLD CODE_FLAGS + 0x65
|
||||
#define SYS_DOME_SILVER CODE_FLAGS + 0x66
|
||||
#define SYS_DOME_GOLD CODE_FLAGS + 0x67
|
||||
#define SYS_PALACE_SILVER CODE_FLAGS + 0x68
|
||||
#define SYS_PALACE_GOLD CODE_FLAGS + 0x69
|
||||
#define SYS_ARENA_SILVER CODE_FLAGS + 0x6A
|
||||
#define SYS_ARENA_GOLD CODE_FLAGS + 0x6B
|
||||
#define SYS_FACTORY_SILVER CODE_FLAGS + 0x6C
|
||||
#define SYS_FACTORY_GOLD CODE_FLAGS + 0x6D
|
||||
#define SYS_PIKE_SILVER CODE_FLAGS + 0x6E
|
||||
#define SYS_PIKE_GOLD CODE_FLAGS + 0x6F
|
||||
#define SYS_PYRAMID_SILVER CODE_FLAGS + 0x70
|
||||
#define SYS_PYRAMID_GOLD CODE_FLAGS + 0x71
|
||||
#define SYS_FRONTIER_PASS CODE_FLAGS + 0x72
|
||||
|
||||
#define SYS_STORAGE_UNKNOWN_FLAG CODE_FLAGS + 0x77
|
||||
|
@ -56,4 +56,7 @@
|
||||
|
||||
#define NUM_GAME_STATS 64
|
||||
|
||||
void IncrementGameStat(u8);
|
||||
u32 GetGameStat(u8);
|
||||
|
||||
#endif // GUARD_GAME_STAT_H
|
||||
|
324
include/global.h
324
include/global.h
@ -197,7 +197,13 @@ struct SaveBlock2
|
||||
|
||||
// All below could be a one giant struct
|
||||
|
||||
/*0x64C*/ u8 field_64C[1629];
|
||||
/*0x64C*/ u8 field_64C[0x588];
|
||||
/*0xBD4*/ u16 field_BD4;
|
||||
/*0xBD6*/ u16 field_BD6;
|
||||
/*0xBD8*/ u8 field_BD8[11];
|
||||
/*0xBE3*/ u8 filler_BE3[8];
|
||||
/*0xBEB*/ u8 field_BEB;
|
||||
/*0xBE3*/ u8 filler_BEC[189];
|
||||
/*0xCA9*/ u8 frontierChosenLvl : 2; // 0x1, 0x2 -> 0x3
|
||||
/*0xCA9*/ u8 field_CA9_a : 1; // 0x4
|
||||
/*0xCA9*/ u8 field_CA9_b : 1; // 0x8
|
||||
@ -205,7 +211,10 @@ struct SaveBlock2
|
||||
/*0xCA9*/ u8 field_CA9_d : 1; // 0x20
|
||||
/*0xCA9*/ u8 field_CA9_e : 1; // 0x40
|
||||
/*0xCA9*/ u8 field_CA9_f : 1; // 0x80
|
||||
/*0xCAA*/ u8 field_CAA[368];
|
||||
/*0xCAA*/ u16 field_CAA[0x2e];
|
||||
/*0xD06*/ u8 field_D06;
|
||||
/*0xD07*/ u8 field_D07;
|
||||
/*0xd08*/ u8 filler_D08[0x112];
|
||||
/*0xE1A*/ u16 battlePyramidFloor; // possibly?
|
||||
/*0xE1C*/ u8 field_E1C[16];
|
||||
/*0xE2C*/ struct PyramidBag pyramidBag;
|
||||
@ -225,30 +234,31 @@ extern struct SaveBlock2 *gSaveBlock2Ptr;
|
||||
|
||||
struct SecretBaseRecord
|
||||
{
|
||||
u8 sbr_field_0;
|
||||
u8 sbr_field_1_0:4;
|
||||
u8 gender:1;
|
||||
u8 sbr_field_1_5:1;
|
||||
u8 sbr_field_1_6:2;
|
||||
u8 trainerName[7];
|
||||
u8 trainerId[4]; // byte 0 is used for determining trainer class
|
||||
u8 language;
|
||||
u16 sbr_field_e;
|
||||
u8 sbr_field_10;
|
||||
u8 sbr_field_11;
|
||||
u8 decorations[16];
|
||||
u8 decorationPos[16];
|
||||
u32 partyPersonality[6];
|
||||
u16 partyMoves[6 * 4];
|
||||
u16 partySpecies[6];
|
||||
u16 partyHeldItems[6];
|
||||
u8 partyLevels[6];
|
||||
u8 partyEVs[6];
|
||||
/*ID?*/ /*0x1A9C*/ u8 sbr_field_0;
|
||||
/*0x1A9D*/ u8 sbr_field_1_0:4;
|
||||
/*0x1A9D*/ u8 gender:1;
|
||||
/*0x1A9D*/ u8 sbr_field_1_5:1;
|
||||
/*0x1A9D*/ u8 sbr_field_1_6:2;
|
||||
/*0x1A9E*/ u8 trainerName[7]; // 0xFF bytes?
|
||||
/*0x1AA5*/ u8 trainerId[4]; // byte 0 is used for determining trainer class
|
||||
/*0x1AA9*/ u8 language;
|
||||
/*0x1AAA*/ u16 sbr_field_e;
|
||||
/*0x1AAC*/ u8 sbr_field_10;
|
||||
/*0x1AAD*/ u8 sbr_field_11;
|
||||
/*0x1AAE*/ u8 decorations[16];
|
||||
/*0x1ABE*/ u8 decorationPos[16];
|
||||
/*0x1ACE*/ u32 partyPersonality[6];
|
||||
/*0x1AE6*/ u16 partyMoves[6 * 4];
|
||||
/*0x1B16*/ u16 partySpecies[6];
|
||||
/*0x1B22*/ u16 partyHeldItems[6];
|
||||
/*0x1B2E*/ u8 partyLevels[6];
|
||||
/*0x1B34*/ u8 partyEVs[6];
|
||||
};
|
||||
|
||||
#include "game_stat.h"
|
||||
#include "global.fieldmap.h"
|
||||
#include "global.berry.h"
|
||||
#include "global.tv.h"
|
||||
#include "pokemon.h"
|
||||
|
||||
struct WarpData
|
||||
@ -317,218 +327,6 @@ struct EasyChatPair
|
||||
u16 words[2];
|
||||
}; /*size = 0x8*/
|
||||
|
||||
struct TVShowCommon
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 pad02[20];
|
||||
/*0x16*/ u16 var16[3];
|
||||
/*0x1C*/ u8 srcTrainerId3Lo;
|
||||
/*0x1D*/ u8 srcTrainerId3Hi;
|
||||
/*0x1E*/ u8 srcTrainerId2Lo;
|
||||
/*0x1F*/ u8 srcTrainerId2Hi;
|
||||
/*0x20*/ u8 srcTrainerIdLo;
|
||||
/*0x21*/ u8 srcTrainerIdHi;
|
||||
/*0x22*/ u8 trainerIdLo;
|
||||
/*0x23*/ u8 trainerIdHi;
|
||||
};
|
||||
|
||||
struct TVShowFanClubLetter
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u16 pad04[6];
|
||||
/*0x10*/ u8 playerName[8];
|
||||
/*0x18*/ u8 language;
|
||||
};
|
||||
|
||||
struct TVShowRecentHappenings
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u16 var02;
|
||||
/*0x04*/ u16 var04[6];
|
||||
/*0x10*/ u8 playerName[8];
|
||||
/*0x18*/ u8 language;
|
||||
/*0x19*/ u8 pad19[10];
|
||||
};
|
||||
|
||||
struct TVShowFanclubOpinions
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u16 var02;
|
||||
/*0x04*/ u8 var04A:4;
|
||||
/*0x04*/ u8 var04B:4;
|
||||
/*0x05*/ u8 playerName[8];
|
||||
/*0x0D*/ u8 language;
|
||||
/*0x0E*/ u8 var0E;
|
||||
/*0x0F*/ u8 var0F;
|
||||
/*0x10*/ u8 var10[8];
|
||||
/*0x18*/ u16 var18[2];
|
||||
/*0x1C*/ u16 var1C[4];
|
||||
};
|
||||
|
||||
struct TVShowUnknownType04
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 pad02[4];
|
||||
/*0x06*/ u16 var06;
|
||||
};
|
||||
|
||||
struct TVShowNameRaterShow
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u8 pokemonName[11];
|
||||
/*0x0F*/ u8 trainerName[11];
|
||||
/*0x1A*/ u8 random;
|
||||
/*0x1B*/ u8 random2;
|
||||
/*0x1C*/ u16 var1C;
|
||||
/*0x1E*/ u8 language;
|
||||
/*0x1F*/ u8 pokemonNameLanguage;
|
||||
};
|
||||
|
||||
struct TVShowBravoTrainerPokemonProfiles
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u16 var04[2];
|
||||
/*0x08*/ u8 pokemonNickname[11];
|
||||
/*0x13*/ u8 contestCategory:3;
|
||||
/*0x13*/ u8 contestRank:2;
|
||||
/*0x13*/ u8 contestResult:2;
|
||||
/*0x13*/ u8 var13_7:1;
|
||||
/*0x14*/ u16 var14;
|
||||
/*0x16*/ u8 playerName[8];
|
||||
/*0x1E*/ u8 language;
|
||||
/*0x1F*/ u8 var1f;
|
||||
};
|
||||
|
||||
struct TVShowBravoTrainerBattleTowerSpotlight
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 trainerName[8];
|
||||
/*0x0A*/ u16 species;
|
||||
/*0x0C*/ u8 pokemonName[8];
|
||||
/*0x14*/ u16 defeatedSpecies;
|
||||
/*0x16*/ u16 var16;
|
||||
/*0x18*/ u16 var18[1];
|
||||
/*0x1A*/ u8 btLevel;
|
||||
/*0x1B*/ u8 var1b;
|
||||
/*0x1C*/ u8 var1c;
|
||||
/*0x1D*/ u8 language;
|
||||
};
|
||||
|
||||
struct TVShowPokemonToday
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 language;
|
||||
/*0x03*/ u8 language2;
|
||||
/*0x04*/ u8 nickname[11];
|
||||
/*0x0F*/ u8 ball;
|
||||
/*0x10*/ u16 species;
|
||||
/*0x12*/ u8 var12;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
};
|
||||
|
||||
struct TVShowSmartShopper
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 priceReduced;
|
||||
/*0x03*/ u8 language;
|
||||
/*0x04*/ u8 pad04[2];
|
||||
/*0x06*/ u16 itemIds[3];
|
||||
/*0x0C*/ u16 itemAmounts[3];
|
||||
/*0x12*/ u8 shopLocation;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
};
|
||||
|
||||
struct TVShowPokemonTodayFailed
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 language;
|
||||
/*0x03*/ u8 pad03[9];
|
||||
/*0x0c*/ u16 species;
|
||||
/*0x0e*/ u16 species2;
|
||||
/*0x10*/ u8 var10;
|
||||
/*0x11*/ u8 var11;
|
||||
/*0x12*/ u8 var12;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
};
|
||||
|
||||
struct TVShowPokemonAngler
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 var02;
|
||||
/*0x03*/ u8 var03;
|
||||
/*0x04*/ u16 var04;
|
||||
/*0x06*/ u8 language;
|
||||
u8 pad07[12];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
};
|
||||
|
||||
struct TVShowWorldOfMasters
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u16 var02;
|
||||
/*0x04*/ u16 var04;
|
||||
/*0x06*/ u16 var06;
|
||||
/*0x08*/ u16 var08;
|
||||
/*0x0a*/ u8 var0a;
|
||||
/*0x0b*/ u8 language;
|
||||
u8 pad0c[7];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
};
|
||||
|
||||
struct TVShowMassOutbreak
|
||||
{
|
||||
/*0x00*/ u8 var00;
|
||||
/*0x01*/ u8 var01;
|
||||
/*0x02*/ u8 var02;
|
||||
/*0x03*/ u8 var03;
|
||||
/*0x04*/ u16 moves[4];
|
||||
/*0x0C*/ u16 species;
|
||||
/*0x0E*/ u16 var0E;
|
||||
/*0x10*/ u8 locationMapNum;
|
||||
/*0x11*/ u8 locationMapGroup;
|
||||
/*0x12*/ u8 var12;
|
||||
/*0x13*/ u8 probability;
|
||||
/*0x14*/ u8 level;
|
||||
/*0x15*/ u8 var15;
|
||||
/*0x16*/ u16 var16;
|
||||
/*0x18*/ u8 language;
|
||||
u8 pad19[11];
|
||||
};
|
||||
|
||||
typedef union TVShow
|
||||
{
|
||||
struct TVShowCommon common;
|
||||
struct TVShowFanClubLetter fanclubLetter;
|
||||
struct TVShowRecentHappenings recentHappenings;
|
||||
struct TVShowFanclubOpinions fanclubOpinions;
|
||||
struct TVShowUnknownType04 unkShow04;
|
||||
struct TVShowNameRaterShow nameRaterShow;
|
||||
struct TVShowBravoTrainerPokemonProfiles bravoTrainer;
|
||||
struct TVShowBravoTrainerBattleTowerSpotlight bravoTrainerTower;
|
||||
struct TVShowPokemonToday pokemonToday;
|
||||
struct TVShowSmartShopper smartshopperShow;
|
||||
struct TVShowPokemonTodayFailed pokemonTodayFailed;
|
||||
struct TVShowPokemonAngler pokemonAngler;
|
||||
struct TVShowWorldOfMasters worldOfMasters;
|
||||
struct TVShowMassOutbreak massOutbreak;
|
||||
} TVShow;
|
||||
|
||||
struct MailStruct
|
||||
{
|
||||
/*0x00*/ u16 words[9];
|
||||
@ -576,35 +374,6 @@ typedef union OldMan
|
||||
u8 filler[0x40];
|
||||
} OldMan;
|
||||
|
||||
struct UnknownSaveStruct2ABC
|
||||
{
|
||||
u8 val0;
|
||||
u8 val1;
|
||||
u16 val2;
|
||||
};
|
||||
|
||||
struct GabbyAndTyData
|
||||
{
|
||||
/*2b10*/ u16 mon1;
|
||||
/*2b12*/ u16 mon2;
|
||||
/*2b14*/ u16 lastMove;
|
||||
/*2b16*/ u16 quote;
|
||||
/*2b18*/ u8 mapnum;
|
||||
/*2b19*/ u8 battleNum;
|
||||
/*2b1a*/ u8 valA_0:1;
|
||||
/*2b1a*/ u8 valA_1:1;
|
||||
/*2b1a*/ u8 valA_2:1;
|
||||
/*2b1a*/ u8 valA_3:1;
|
||||
/*2b1a*/ u8 valA_4:1;
|
||||
/*2b1a*/ u8 valA_5:3;
|
||||
/*2b1b*/ u8 valB_0:1;
|
||||
/*2b1b*/ u8 valB_1:1;
|
||||
/*2b1b*/ u8 valB_2:1;
|
||||
/*2b1b*/ u8 valB_3:1;
|
||||
/*2b1b*/ u8 valB_4:1;
|
||||
/*2b1b*/ u8 valB_5:3;
|
||||
};
|
||||
|
||||
struct RecordMixing_UnknownStructSub
|
||||
{
|
||||
u32 unk0;
|
||||
@ -781,22 +550,22 @@ struct SaveBlock1
|
||||
/*0x????*/ u8 decorCushion[10];
|
||||
/*0x27CA*/ u8 padding_27CA[2];
|
||||
/*0x27CC*/ TVShow tvShows[25];
|
||||
/*0x2B50*/ struct UnknownSaveStruct2ABC pokeNews[16];
|
||||
/*0x2B50*/ PokeNews pokeNews[16];
|
||||
/*0x2B90*/ u16 outbreakPokemonSpecies;
|
||||
/*0x????*/ u8 outbreakLocationMapNum;
|
||||
/*0x????*/ u8 outbreakLocationMapGroup;
|
||||
/*0x????*/ u8 outbreakPokemonLevel;
|
||||
/*0x????*/ u8 outbreakUnk1;
|
||||
/*0x????*/ u16 outbreakUnk2;
|
||||
/*0x????*/ u16 outbreakPokemonMoves[4];
|
||||
/*0x????*/ u8 outbreakUnk4;
|
||||
/*0x????*/ u8 outbreakPokemonProbability;
|
||||
/*0x????*/ u16 outbreakUnk5;
|
||||
/*0x2B92*/ u8 outbreakLocationMapNum;
|
||||
/*0x2B93*/ u8 outbreakLocationMapGroup;
|
||||
/*0x2B94*/ u8 outbreakPokemonLevel;
|
||||
/*0x2B95*/ u8 outbreakUnk1;
|
||||
/*0x2B96*/ u16 outbreakUnk2;
|
||||
/*0x2B98*/ u16 outbreakPokemonMoves[4];
|
||||
/*0x2BA0*/ u8 outbreakUnk4;
|
||||
/*0x2BA1*/ u8 outbreakPokemonProbability;
|
||||
/*0x2BA2*/ u16 outbreakDaysLeft;
|
||||
/*0x2BA4*/ struct GabbyAndTyData gabbyAndTyData;
|
||||
/*0x????*/ u16 unk2B1C[6];
|
||||
/*0x????*/ u16 unk2B28[6];
|
||||
/*0x????*/ u16 unk2B34[6];
|
||||
/*0x????*/ u16 unk2B3A[3];
|
||||
/*0x2BB0*/ u16 unk2BB0[6];
|
||||
/*0x2BBC*/ u16 unk2BBC[6];
|
||||
/*0x2BC8*/ u16 unk2BC8[6];
|
||||
/*0x2BD4*/ u16 unk2BD4[3];
|
||||
/*0x2BE0*/ struct MailStruct mail[16];
|
||||
/*0x2E20*/ u8 additionalPhrases[5]; // bitfield for 33 additional phrases in easy chat system
|
||||
/*0x2E25*/ u8 unk2E25[3]; // possibly padding?
|
||||
@ -806,7 +575,8 @@ struct SaveBlock1
|
||||
/*0x2e90*/ struct ContestWinner contestWinners[13]; // 0 - 5 used in contest hall, 6 - 7 unused?, 8 - 12 museum
|
||||
/*0x3030*/ struct DaycareData daycare;
|
||||
/*0x3150*/ struct LinkBattleRecord linkBattleRecords[5];
|
||||
/*0x31A0*/ u8 filler_31A0[8];
|
||||
/*0x31A0*/ u8 unk_31A0;
|
||||
/*0x31A1*/ u8 filler_31A1[7];
|
||||
/*0x31A8*/ u8 giftRibbons[52];
|
||||
/*0x31DC*/ struct Roamer roamer;
|
||||
/*0x31F8*/ struct EnigmaBerry enigmaBerry;
|
||||
|
535
include/global.tv.h
Normal file
535
include/global.tv.h
Normal file
@ -0,0 +1,535 @@
|
||||
#ifndef GUARD_GLOBAL_TV_H
|
||||
#define GUARD_GLOBAL_TV_H
|
||||
|
||||
enum
|
||||
{
|
||||
TVSHOW_OFF_AIR,
|
||||
|
||||
TVSHOW_FAN_CLUB_LETTER = 1,
|
||||
TVSHOW_RECENT_HAPPENINGS,
|
||||
TVSHOW_PKMN_FAN_CLUB_OPINIONS,
|
||||
TVSHOW_UNKN_SHOWTYPE_04,
|
||||
TVSHOW_NAME_RATER_SHOW,
|
||||
TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE,
|
||||
TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE,
|
||||
TVSHOW_CONTEST_LIVE_UPDATES,
|
||||
TVSHOW_3_CHEERS_FOR_POKEBLOCKS,
|
||||
TVSHOW_BATTLE_UPDATE,
|
||||
TVSHOW_FAN_CLUB_SPECIAL,
|
||||
TVSHOW_CONTEST_LIVE_UPDATES_2,
|
||||
|
||||
TVSHOW_POKEMON_TODAY_CAUGHT = 21,
|
||||
TVSHOW_SMART_SHOPPER,
|
||||
TVSHOW_POKEMON_TODAY_FAILED,
|
||||
TVSHOW_FISHING_ADVICE,
|
||||
TVSHOW_WORLD_OF_MASTERS,
|
||||
TVSHOW_TODAYS_RIVAL_TRAINER,
|
||||
TVSHOW_TREND_WATCHER,
|
||||
TVSHOW_TREASURE_INVESTIGATORS,
|
||||
TVSHOW_FIND_THAT_GAMER,
|
||||
TVSHOW_BREAKING_NEWS,
|
||||
TVSHOW_SECRET_BASE_VISIT,
|
||||
TVSHOW_LOTTO_WINNER,
|
||||
TVSHOW_BATTLE_SEMINAR,
|
||||
TVSHOW_TRAINER_FAN_CLUB,
|
||||
TVSHOW_CUTIES,
|
||||
TVSHOW_FRONTIER,
|
||||
TVSHOW_NUMBER_ONE,
|
||||
TVSHOW_SECRET_BASE_SECRETS,
|
||||
TVSHOW_SAFARI_FAN_CLUB,
|
||||
|
||||
TVSHOW_MASS_OUTBREAK = 41,
|
||||
};
|
||||
|
||||
typedef union // size = 0x24
|
||||
{
|
||||
// Common
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 pad02[26];
|
||||
/*0x1C*/ u8 srcTrainerId3Lo;
|
||||
/*0x1D*/ u8 srcTrainerId3Hi;
|
||||
/*0x1E*/ u8 srcTrainerId2Lo;
|
||||
/*0x1F*/ u8 srcTrainerId2Hi;
|
||||
/*0x20*/ u8 srcTrainerIdLo;
|
||||
/*0x21*/ u8 srcTrainerIdHi;
|
||||
/*0x22*/ u8 trainerIdLo;
|
||||
/*0x23*/ u8 trainerIdHi;
|
||||
} common;
|
||||
|
||||
// Local shows
|
||||
// TVSHOW_FAN_CLUB_LETTER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u16 words[6];
|
||||
/*0x10*/ u8 playerName[8];
|
||||
/*0x18*/ u8 language;
|
||||
} fanclubLetter;
|
||||
|
||||
// TVSHOW_RECENT_HAPPENINGS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 var02;
|
||||
/*0x04*/ u16 words[6];
|
||||
/*0x10*/ u8 playerName[8];
|
||||
/*0x18*/ u8 language;
|
||||
} recentHappenings;
|
||||
|
||||
// TVSHOW_PKMN_FAN_CLUB_OPINIONS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u8 friendshipHighNybble:4;
|
||||
/*0x04*/ u8 questionAsked:4;
|
||||
/*0x05*/ u8 playerName[8];
|
||||
/*0x0D*/ u8 language;
|
||||
/*0x0E*/ u8 pokemonNameLanguage;
|
||||
/*0x0F*/ u8 filler_0F[1];
|
||||
/*0x10*/ u8 nickname[8];
|
||||
/*0x18*/ u8 filler_18[4];
|
||||
/*0x1C*/ u16 words[4];
|
||||
} fanclubOpinions;
|
||||
|
||||
// TVSHOW_UNKN_SHOWTYPE_04 (dummied out)
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 pad02[4];
|
||||
/*0x06*/ u16 var06;
|
||||
/*0x08*/ u8 pad_08[3];
|
||||
/*0x0b*/ u8 string_0b[12];
|
||||
/*0x17*/ u8 language;
|
||||
} unkShow04;
|
||||
|
||||
// TVSHOW_NAME_RATER_SHOW
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u8 pokemonName[11];
|
||||
/*0x0F*/ u8 trainerName[11];
|
||||
/*0x1A*/ u8 random;
|
||||
/*0x1B*/ u8 random2;
|
||||
/*0x1C*/ u16 randomSpecies;
|
||||
/*0x1E*/ u8 language;
|
||||
/*0x1F*/ u8 pokemonNameLanguage;
|
||||
} nameRaterShow;
|
||||
|
||||
// TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE (contest)
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u16 words[2];
|
||||
/*0x08*/ u8 pokemonNickname[11];
|
||||
/*0x13*/ u8 contestCategory:3;
|
||||
/*0x13*/ u8 contestRank:2;
|
||||
/*0x13*/ u8 contestResult:2;
|
||||
/*0x14*/ u16 move;
|
||||
/*0x16*/ u8 playerName[8];
|
||||
/*0x1E*/ u8 language;
|
||||
/*0x1F*/ u8 pokemonNameLanguage;
|
||||
} bravoTrainer;
|
||||
|
||||
// TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 trainerName[8];
|
||||
/*0x0A*/ u16 species;
|
||||
/*0x0C*/ u8 pokemonName[8];
|
||||
/*0x14*/ u16 defeatedSpecies;
|
||||
/*0x16*/ u16 numFights;
|
||||
/*0x18*/ u16 words[1];
|
||||
/*0x1A*/ u8 btLevel;
|
||||
/*0x1B*/ u8 interviewResponse;
|
||||
/*0x1C*/ bool8 wonTheChallenge;
|
||||
/*0x1D*/ u8 language;
|
||||
/*0x1E*/ u8 pokemonNameLanguage;
|
||||
} bravoTrainerTower;
|
||||
|
||||
// TVSHOW_CONTEST_LIVE_UPDATES
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 winningSpecies;
|
||||
/*0x04*/ u8 winningTrainerName[8];
|
||||
/*0x0C*/ u8 appealFlags2;
|
||||
/*0x0D*/ u8 round1Rank;
|
||||
/*0x0e*/ u8 round2Rank;
|
||||
/*0x0f*/ u8 appealFlags1;
|
||||
/*0x10*/ u16 move;
|
||||
/*0x12*/ u16 species;
|
||||
/*0x14*/ u8 playerName[8];
|
||||
/*0x1C*/ u8 category;
|
||||
/*0x1D*/ u8 language;
|
||||
/*0x1E*/ u8 winningTrainerLanguage;
|
||||
} contestLiveUpdates;
|
||||
|
||||
// TVSHOW_3_CHEERS_FOR_POKEBLOCKS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 sheen;
|
||||
/*0x03*/ u8 flavor:3;
|
||||
/*0x03*/ u8 unk_03_3:2;
|
||||
/*0x04*/ u8 worstBlenderName[8];
|
||||
/*0x0C*/ u8 playerName[8];
|
||||
/*0x14*/ u8 language;
|
||||
/*0x15*/ u8 worstBlenderLanguage;
|
||||
} threeCheers;
|
||||
|
||||
// TVSHOW_BATTLE_UPDATE
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 species;
|
||||
/*0x04*/ u8 playerName[8];
|
||||
/*0x0C*/ u8 linkOpponentName[8];
|
||||
/*0x14*/ u16 move;
|
||||
/*0x16*/ u16 species2;
|
||||
/*0x18*/ u8 battleType;
|
||||
/*0x19*/ u8 language;
|
||||
/*0x1A*/ u8 linkOpponentLanguage;
|
||||
} battleUpdate;
|
||||
|
||||
// TVSHOW_FAN_CLUB_SPECIAL
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 playerName[8];
|
||||
/*0x0a*/ u8 idLo;
|
||||
/*0x0b*/ u8 idHi;
|
||||
/*0x0c*/ u8 idolName[8];
|
||||
/*0x14*/ u16 words[1];
|
||||
/*0x16*/ u8 score;
|
||||
/*0x17*/ u8 language;
|
||||
/*0x18*/ u8 idolNameLanguage;
|
||||
} fanClubSpecial;
|
||||
|
||||
// TVSHOW_CONTEST_LIVE_UPDATES_2
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 playerName[8];
|
||||
/*0x0a*/ u8 contestCategory;
|
||||
/*0x0b*/ u8 nickname[11];
|
||||
/*0x16*/ u8 pokeblockState;
|
||||
/*0x17*/ u8 language;
|
||||
/*0x18*/ u8 pokemonNameLanguage;
|
||||
} contestLiveUpdates2;
|
||||
|
||||
// Record Mixing Shows
|
||||
// TVSHOW_POKEMON_TODAY_CAUGHT
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 language;
|
||||
/*0x03*/ u8 language2;
|
||||
/*0x04*/ u8 nickname[11];
|
||||
/*0x0F*/ u8 ball;
|
||||
/*0x10*/ u16 species;
|
||||
/*0x12*/ u8 nBallsUsed;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} pokemonToday;
|
||||
|
||||
// TVSHOW_SMART_SHOPPER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 priceReduced;
|
||||
/*0x03*/ u8 language;
|
||||
/*0x04*/ u8 pad04[2];
|
||||
/*0x06*/ u16 itemIds[3];
|
||||
/*0x0C*/ u16 itemAmounts[3];
|
||||
/*0x12*/ u8 shopLocation;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} smartshopperShow;
|
||||
|
||||
// TVSHOW_POKEMON_TODAY_FAILED
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 language;
|
||||
/*0x03*/ u8 pad03[9];
|
||||
/*0x0c*/ u16 species;
|
||||
/*0x0e*/ u16 species2;
|
||||
/*0x10*/ u8 nBallsUsed;
|
||||
/*0x11*/ u8 outcome;
|
||||
/*0x12*/ u8 location;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} pokemonTodayFailed;
|
||||
|
||||
// TVSHOW_FISHING_ADVICE
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 nBites;
|
||||
/*0x03*/ u8 nFails;
|
||||
/*0x04*/ u16 species;
|
||||
/*0x06*/ u8 language;
|
||||
/*0x07*/ u8 pad07[12];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} pokemonAngler;
|
||||
|
||||
// TVSHOW_WORLD_OF_MASTERS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 numPokeCaught;
|
||||
/*0x04*/ u16 caughtPoke;
|
||||
/*0x06*/ u16 steps;
|
||||
/*0x08*/ u16 species;
|
||||
/*0x0a*/ u8 location;
|
||||
/*0x0b*/ u8 language;
|
||||
/*0x0c*/ u8 pad0c[7];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} worldOfMasters;
|
||||
|
||||
// TVSHOW_TODAYS_RIVAL_TRAINER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 dexCount;
|
||||
/*0x04*/ u8 badgeCount;
|
||||
/*0x05*/ u8 nSilverSymbols;
|
||||
/*0x06*/ u8 nGoldSymbols;
|
||||
/*0x07*/ u8 location;
|
||||
/*0x08*/ u16 battlePoints;
|
||||
/*0x0a*/ u16 mapDataId;
|
||||
/*0x0c*/ u8 language;
|
||||
/*0x0d*/ u8 filler_0d[6];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} rivalTrainer;
|
||||
|
||||
// TVSHOW_TREND_WATCHER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 filler_02[2];
|
||||
/*0x04*/ u16 words[2];
|
||||
/*0x08*/ u8 gender;
|
||||
/*0x09*/ u8 language;
|
||||
/*0x0a*/ u8 filler_0a[9];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} trendWatcher;
|
||||
|
||||
// TVSHOW_TREASURE_INVESTIGATORS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 item;
|
||||
/*0x04*/ u8 location;
|
||||
/*0x05*/ u8 language;
|
||||
/*0x06*/ u16 mapDataId;
|
||||
/*0x08*/ u8 filler_08[11];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} treasureInvestigators;
|
||||
|
||||
// TVSHOW_FIND_THAT_GAMER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 won;
|
||||
/*0x03*/ u8 whichGame;
|
||||
/*0x04*/ u16 nCoins;
|
||||
/*0x06*/ u8 filler_06[2];
|
||||
/*0x08*/ u8 language;
|
||||
/*0x09*/ u8 filler_09[10];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} findThatGamer;
|
||||
|
||||
// TVSHOW_BREAKING_NEWS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 lastOpponentSpecies;
|
||||
/*0x04*/ u8 location;
|
||||
/*0x05*/ u8 outcome;
|
||||
/*0x06*/ u16 caughtMonBall;
|
||||
/*0x08*/ u16 balls;
|
||||
/*0x0a*/ u16 poke1Species;
|
||||
/*0x0c*/ u16 lastUsedMove;
|
||||
/*0x0e*/ u8 language;
|
||||
/*0x0f*/ u8 filler_0f[4];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} breakingNews;
|
||||
|
||||
// TVSHOW_SECRET_BASE_VISIT
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 avgLevel;
|
||||
/*0x03*/ u8 nDecorations;
|
||||
/*0x04*/ u8 decorations[4];
|
||||
/*0x08*/ u16 species;
|
||||
/*0x0a*/ u16 move;
|
||||
/*0x0c*/ u8 language;
|
||||
/*0x0d*/ u8 filler_0d[6];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} secretBaseVisit;
|
||||
|
||||
// TVSHOW_LOTTO_WINNER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 item;
|
||||
/*0x04*/ u8 whichPrize;
|
||||
/*0x05*/ u8 language;
|
||||
/*0x06*/ u8 filler_06[13];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} lottoWinner;
|
||||
|
||||
// TVSHOW_BATTLE_SEMINAR
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 move;
|
||||
/*0x04*/ u16 foeSpecies;
|
||||
/*0x06*/ u16 species;
|
||||
/*0x08*/ u16 otherMoves[3];
|
||||
/*0x0e*/ u16 betterMove;
|
||||
/*0x10*/ u8 nOtherMoves;
|
||||
/*0x11*/ u8 language;
|
||||
/*0x12*/ u8 filler_12[1];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} battleSeminar;
|
||||
|
||||
// TVSHOW_TRAINER_FAN_CLUB
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 filler_02[2];
|
||||
/*0x04*/ u16 words[2];
|
||||
/*0x08*/ u8 language;
|
||||
/*0x09*/ u8 filler_09[10];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} trainerFanClub;
|
||||
|
||||
// TVSHOW_CUTIES
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 nRibbons;
|
||||
/*0x03*/ u8 selectedRibbon;
|
||||
/*0x04*/ u8 nickname[11];
|
||||
/*0x0f*/ u8 language;
|
||||
/*0x10*/ u8 pokemonNameLanguage;
|
||||
/*0x11*/ u8 filler_12[2];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} cuties;
|
||||
|
||||
// TVSHOW_FRONTIER
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 winStreak;
|
||||
/*0x04*/ u16 species1;
|
||||
/*0x06*/ u16 species2;
|
||||
/*0x08*/ u16 species3;
|
||||
/*0x0a*/ u16 species4;
|
||||
/*0x0c*/ u8 language;
|
||||
/*0x0d*/ u8 facility;
|
||||
/*0x0e*/ u8 filler_0e[5];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} frontier;
|
||||
|
||||
// TVSHOW_NUMBER_ONE
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 count;
|
||||
/*0x04*/ u8 actionIdx;
|
||||
/*0x05*/ u8 language;
|
||||
/*0x06*/ u8 filler_06[13];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} numberOne;
|
||||
|
||||
// TVSHOW_SECRET_BASE_SECRETS
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u16 stepsInBase;
|
||||
/*0x04*/ u8 baseOwnersName[8];
|
||||
/*0x0c*/ u32 flags;
|
||||
/*0x10*/ u16 item;
|
||||
/*0x12*/ u8 savedState;
|
||||
/*0x13*/ u8 playerName[8];
|
||||
/*0x1b*/ u8 language;
|
||||
/*0x1c*/ u8 baseOwnersNameLanguage;
|
||||
} secretBaseSecrets;
|
||||
|
||||
// TVSHOW_SAFARI_FAN_CLUB
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 nMonsCaught;
|
||||
/*0x03*/ u8 nPkblkUsed;
|
||||
/*0x04*/ u8 language;
|
||||
/*0x05*/ u8 filler_05[14];
|
||||
/*0x13*/ u8 playerName[8];
|
||||
} safariFanClub;
|
||||
|
||||
// Mass Outbreak
|
||||
// TVSHOW_MASS_OUTBREAK
|
||||
struct {
|
||||
/*0x00*/ u8 kind;
|
||||
/*0x01*/ bool8 active;
|
||||
/*0x02*/ u8 var02;
|
||||
/*0x03*/ u8 var03;
|
||||
/*0x04*/ u16 moves[4];
|
||||
/*0x0C*/ u16 species;
|
||||
/*0x0E*/ u16 var0E;
|
||||
/*0x10*/ u8 locationMapNum;
|
||||
/*0x11*/ u8 locationMapGroup;
|
||||
/*0x12*/ u8 var12;
|
||||
/*0x13*/ u8 probability;
|
||||
/*0x14*/ u8 level;
|
||||
/*0x15*/ u8 var15;
|
||||
/*0x16*/ u16 daysLeft;
|
||||
/*0x18*/ u8 language;
|
||||
} massOutbreak;
|
||||
} TVShow;
|
||||
|
||||
enum {
|
||||
POKENEWS_NONE,
|
||||
POKENEWS_SLATEPORT,
|
||||
POKENEWS_GAME_CORNER,
|
||||
POKENEWS_LILYCOVE,
|
||||
POKENEWS_BLENDMASTER
|
||||
};
|
||||
|
||||
typedef struct // 2b50
|
||||
{
|
||||
u8 kind;
|
||||
u8 state;
|
||||
u16 days;
|
||||
} PokeNews;
|
||||
|
||||
struct GabbyAndTyData
|
||||
{
|
||||
/*2ba4*/ u16 mon1;
|
||||
/*2ba6*/ u16 mon2;
|
||||
/*2ba8*/ u16 lastMove;
|
||||
/*2baa*/ u16 quote[1];
|
||||
/*2bac*/ u8 mapnum;
|
||||
/*2bad*/ u8 battleNum;
|
||||
/*2bae*/ u8 battleTookMoreThanOneTurn:1;
|
||||
/*2bae*/ u8 playerLostAMon:1;
|
||||
/*2bae*/ u8 playerUsedAnItem:1;
|
||||
/*2bae*/ u8 playerThrewABall:1;
|
||||
/*2bae*/ u8 onAir:1;
|
||||
/*2bae*/ u8 valA_5:3;
|
||||
/*2baf*/ u8 battleTookMoreThanOneTurn2:1;
|
||||
/*2baf*/ u8 playerLostAMon2:1;
|
||||
/*2baf*/ u8 playerUsedAnItem2:1;
|
||||
/*2baf*/ u8 playerThrewABall2:1;
|
||||
/*2baf*/ u8 valB_4:4;
|
||||
};
|
||||
|
||||
#endif //GUARD_GLOBAL_TV_H
|
13
include/international_string_util.h
Normal file
13
include/international_string_util.h
Normal file
@ -0,0 +1,13 @@
|
||||
#ifndef GUARD_international_string_util_H
|
||||
#define GUARD_international_string_util_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
void TVShowConvertInternationalString(void *dest, const void *src, u8 language);
|
||||
u32 sub_81DB604(const u8 *);
|
||||
|
||||
#endif //GUARD_international_string_util_H
|
@ -58,5 +58,6 @@ ItemUseFunc ItemId_GetFieldFunc(u16 itemId);
|
||||
u8 ItemId_GetBattleUsage(u16 itemId);
|
||||
ItemUseFunc ItemId_GetBattleFunc(u16 itemId);
|
||||
u8 ItemId_GetSecondaryId(u16 itemId);
|
||||
u16 itemid_get_market_price(u16 itemId);
|
||||
|
||||
#endif // ITEM_H
|
||||
|
@ -177,12 +177,12 @@ u32 LinkMain1(u8 *, u16 *, u16[CMD_LENGTH][MAX_LINK_PLAYERS]);
|
||||
void LinkVSync(void);
|
||||
void Timer3Intr(void);
|
||||
void SerialCB(void);
|
||||
u8 GetLinkPlayerCount(void);
|
||||
|
||||
void sub_800E0E8(void);
|
||||
bool8 sub_800A520(void);
|
||||
bool8 sub_8010500(void);
|
||||
void sub_800DFB4(u8, u8);
|
||||
void sub_800ADF8(void);
|
||||
u8 sub_8009FCC(void);
|
||||
|
||||
#endif // GUARD_LINK_H
|
||||
|
@ -2,7 +2,7 @@
|
||||
#define GUARD_MALLOC_H
|
||||
|
||||
#define malloc Alloc
|
||||
#define calloc AllocZeroed
|
||||
#define calloc(ct, sz) AllocZeroed((ct) * (sz))
|
||||
#define free Free
|
||||
|
||||
extern u8 gHeap[];
|
||||
|
@ -359,6 +359,7 @@ enum
|
||||
MOVE_DOOM_DESIRE,
|
||||
MOVE_PSYCHO_BOOST,
|
||||
};
|
||||
extern const u8 gMoveNames[][13];
|
||||
|
||||
#define LAST_MOVE_INDEX MOVE_PSYCHO_BOOST
|
||||
|
||||
|
@ -16,6 +16,8 @@ enum
|
||||
FLAG_SET_CAUGHT
|
||||
};
|
||||
|
||||
u8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
|
||||
s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
|
||||
u16 pokedex_count(u8);
|
||||
u16 sub_80C0844(u8);
|
||||
|
||||
#endif // GUARD_POKEDEX_H
|
||||
|
@ -2,5 +2,7 @@
|
||||
#define GUARD_POKEMON_STORAGE_SYSTEM_H
|
||||
|
||||
u8* GetBoxNamePtr(u8 boxNumber);
|
||||
struct BoxPokemon *GetBoxedMonPtr(u8, u8);
|
||||
void SetBoxMonNickFromAnyBox(u8, u8, u8 *);
|
||||
|
||||
#endif // GUARD_POKEMON_STORAGE_SYSTEM_H
|
||||
|
227
include/region_map.h
Normal file
227
include/region_map.h
Normal file
@ -0,0 +1,227 @@
|
||||
#ifndef GUARD_REGION_MAP_H
|
||||
#define GUARD_REGION_MAP_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
enum {
|
||||
REGION_MAP_LITTLEROOT_TOWN,
|
||||
REGION_MAP_OLDALE_TOWN,
|
||||
REGION_MAP_DEWFORD_TOWN,
|
||||
REGION_MAP_LAVARIDGE_TOWN,
|
||||
REGION_MAP_FALLARBOR_TOWN,
|
||||
REGION_MAP_VERDANTURF_TOWN,
|
||||
REGION_MAP_PACIFIDLOG_TOWN,
|
||||
REGION_MAP_PETALBURG_CITY,
|
||||
REGION_MAP_SLATEPORT_CITY,
|
||||
REGION_MAP_MAUVILLE_CITY,
|
||||
REGION_MAP_RUSTBORO_CITY,
|
||||
REGION_MAP_FORTREE_CITY,
|
||||
REGION_MAP_LILYCOVE_CITY,
|
||||
REGION_MAP_MOSSDEEP_CITY,
|
||||
REGION_MAP_SOOTOPOLIS_CITY,
|
||||
REGION_MAP_EVER_GRANDE_CITY,
|
||||
REGION_MAP_ROUTE_101,
|
||||
REGION_MAP_ROUTE_102,
|
||||
REGION_MAP_ROUTE_103,
|
||||
REGION_MAP_ROUTE_104,
|
||||
REGION_MAP_ROUTE_105,
|
||||
REGION_MAP_ROUTE_106,
|
||||
REGION_MAP_ROUTE_107,
|
||||
REGION_MAP_ROUTE_108,
|
||||
REGION_MAP_ROUTE_109,
|
||||
REGION_MAP_ROUTE_110,
|
||||
REGION_MAP_ROUTE_111,
|
||||
REGION_MAP_ROUTE_112,
|
||||
REGION_MAP_ROUTE_113,
|
||||
REGION_MAP_ROUTE_114,
|
||||
REGION_MAP_ROUTE_115,
|
||||
REGION_MAP_ROUTE_116,
|
||||
REGION_MAP_ROUTE_117,
|
||||
REGION_MAP_ROUTE_118,
|
||||
REGION_MAP_ROUTE_119,
|
||||
REGION_MAP_ROUTE_120,
|
||||
REGION_MAP_ROUTE_121,
|
||||
REGION_MAP_ROUTE_122,
|
||||
REGION_MAP_ROUTE_123,
|
||||
REGION_MAP_ROUTE_124,
|
||||
REGION_MAP_ROUTE_125,
|
||||
REGION_MAP_ROUTE_126,
|
||||
REGION_MAP_ROUTE_127,
|
||||
REGION_MAP_ROUTE_128,
|
||||
REGION_MAP_ROUTE_129,
|
||||
REGION_MAP_ROUTE_130,
|
||||
REGION_MAP_ROUTE_131,
|
||||
REGION_MAP_ROUTE_132,
|
||||
REGION_MAP_ROUTE_133,
|
||||
REGION_MAP_ROUTE_134,
|
||||
REGION_MAP_UNDERWATER_124,
|
||||
REGION_MAP_UNDERWATER_125,
|
||||
REGION_MAP_UNDERWATER_126,
|
||||
REGION_MAP_UNDERWATER_127,
|
||||
REGION_MAP_UNDERWATER_128,
|
||||
REGION_MAP_GRANITE_CAVE,
|
||||
REGION_MAP_MT_CHIMNEY,
|
||||
REGION_MAP_SAFARI_ZONE,
|
||||
REGION_MAP_BATTLE_FRONTIER,
|
||||
REGION_MAP_PETALBURG_WOODS,
|
||||
REGION_MAP_RUSTURF_TUNNEL,
|
||||
REGION_MAP_ABANDONED_SHIP,
|
||||
REGION_MAP_NEW_MAUVILLE,
|
||||
REGION_MAP_METEOR_FALLS,
|
||||
REGION_MAP_METEOR_FALLS2,
|
||||
REGION_MAP_MT_PYRE,
|
||||
REGION_MAP_AQUA_HIDEOUT_OLD,
|
||||
REGION_MAP_SHOAL_CAVE,
|
||||
REGION_MAP_SEAFLOOR_CAVERN,
|
||||
REGION_MAP_UNDERWATER,
|
||||
REGION_MAP_VICTORY_ROAD,
|
||||
REGION_MAP_MIRAGE_ISLAND,
|
||||
REGION_MAP_CAVE_OF_ORIGIN,
|
||||
REGION_MAP_SOUTHERN_ISLAND,
|
||||
REGION_MAP_FIERY_PATH,
|
||||
REGION_MAP_FIERY_PATH2,
|
||||
REGION_MAP_JAGGED_PASS,
|
||||
REGION_MAP_JAGGED_PASS2,
|
||||
REGION_MAP_SEALED_CHAMBER,
|
||||
REGION_MAP_UNDERWATER_SEALED_CHAMBER,
|
||||
REGION_MAP_SCORCHED_SLAB,
|
||||
REGION_MAP_ISLAND_CAVE,
|
||||
REGION_MAP_DESERT_RUINS,
|
||||
REGION_MAP_ANCIENT_TOMB,
|
||||
REGION_MAP_INSIDE_OF_TRUCK,
|
||||
REGION_MAP_SKY_PILLAR,
|
||||
REGION_MAP_SECRET_BASE,
|
||||
REGION_MAP_NONE,
|
||||
REGION_MAP_PALLET_TOWN,
|
||||
REGION_MAP_VIRIDIAN_CITY,
|
||||
REGION_MAP_PEWTER_CITY,
|
||||
REGION_MAP_CERULEAN_CITY,
|
||||
REGION_MAP_LAVENDER_TOWN,
|
||||
REGION_MAP_VERMILION_CITY,
|
||||
REGION_MAP_CELADON_CITY,
|
||||
REGION_MAP_FUCHSIA_CITY,
|
||||
REGION_MAP_CINNABAR_ISLAND,
|
||||
REGION_MAP_INDIGO_PLATEAU,
|
||||
REGION_MAP_SAFFRON_CITY,
|
||||
REGION_MAP_ROUTE_4,
|
||||
REGION_MAP_ROUTE_10,
|
||||
REGION_MAP_ROUTE_1,
|
||||
REGION_MAP_ROUTE_2,
|
||||
REGION_MAP_ROUTE_3,
|
||||
REGION_MAP_ROUTE_4_2,
|
||||
REGION_MAP_ROUTE_5,
|
||||
REGION_MAP_ROUTE_6,
|
||||
REGION_MAP_ROUTE_7,
|
||||
REGION_MAP_ROUTE_8,
|
||||
REGION_MAP_ROUTE_9,
|
||||
REGION_MAP_ROUTE_10_2,
|
||||
REGION_MAP_ROUTE_11,
|
||||
REGION_MAP_ROUTE_12,
|
||||
REGION_MAP_ROUTE_13,
|
||||
REGION_MAP_ROUTE_14,
|
||||
REGION_MAP_ROUTE_15,
|
||||
REGION_MAP_ROUTE_16,
|
||||
REGION_MAP_ROUTE_17,
|
||||
REGION_MAP_ROUTE_18,
|
||||
REGION_MAP_ROUTE_19,
|
||||
REGION_MAP_ROUTE_20,
|
||||
REGION_MAP_ROUTE_21,
|
||||
REGION_MAP_ROUTE_22,
|
||||
REGION_MAP_ROUTE_23,
|
||||
REGION_MAP_ROUTE_24,
|
||||
REGION_MAP_ROUTE_25,
|
||||
REGION_MAP_VIRIDIAN_FOREST,
|
||||
REGION_MAP_MT_MOON,
|
||||
REGION_MAP_S_S_ANNE,
|
||||
REGION_MAP_UNDERGROUND_PATH,
|
||||
REGION_MAP_UNDERGROUND_PATH_2,
|
||||
REGION_MAP_DIGLETTS_CAVE,
|
||||
REGION_MAP_KANTO_VICTORY_ROAD,
|
||||
REGION_MAP_ROCKET_HIDEOUT,
|
||||
REGION_MAP_SILPH_CO,
|
||||
REGION_MAP_POKEMON_MANSION,
|
||||
REGION_MAP_KANTO_SAFARI_ZONE,
|
||||
REGION_MAP_POKEMON_LEAGUE,
|
||||
REGION_MAP_ROCK_TUNNEL,
|
||||
REGION_MAP_SEAFOAM_ISLANDS,
|
||||
REGION_MAP_POKEMON_TOWER,
|
||||
REGION_MAP_CERULEAN_CAVE,
|
||||
REGION_MAP_POWER_PLANT,
|
||||
REGION_MAP_ONE_ISLAND,
|
||||
REGION_MAP_TWO_ISLAND,
|
||||
REGION_MAP_THREE_ISLAND,
|
||||
REGION_MAP_FOUR_ISLAND,
|
||||
REGION_MAP_FIVE_ISLAND,
|
||||
REGION_MAP_SEVEN_ISLAND,
|
||||
REGION_MAP_SIX_ISLAND,
|
||||
REGION_MAP_KINDLE_ROAD,
|
||||
REGION_MAP_TREASURE_BEACH,
|
||||
REGION_MAP_CAPE_BRINK,
|
||||
REGION_MAP_BOND_BRIDGE,
|
||||
REGION_MAP_THREE_ISLE_PORT,
|
||||
REGION_MAP_SEVII_ISLE_6,
|
||||
REGION_MAP_SEVII_ISLE_7,
|
||||
REGION_MAP_SEVII_ISLE_8,
|
||||
REGION_MAP_SEVII_ISLE_9,
|
||||
REGION_MAP_RESORT_GORGEOUS,
|
||||
REGION_MAP_WATER_LABYRINTH,
|
||||
REGION_MAP_FIVE_ISLE_MEADOW,
|
||||
REGION_MAP_MEMORIAL_PILLAR,
|
||||
REGION_MAP_OUTCAST_ISLAND,
|
||||
REGION_MAP_GREEN_PATH,
|
||||
REGION_MAP_WATER_PATH,
|
||||
REGION_MAP_RUIN_VALLEY,
|
||||
REGION_MAP_TRAINER_TOWER,
|
||||
REGION_MAP_CANYON_ENTRANCE,
|
||||
REGION_MAP_SEVAULT_CANYON,
|
||||
REGION_MAP_TANOBY_RUINS,
|
||||
REGION_MAP_SEVII_ISLE_22,
|
||||
REGION_MAP_SEVII_ISLE_23,
|
||||
REGION_MAP_SEVII_ISLE_24,
|
||||
REGION_MAP_NAVEL_ROCK,
|
||||
REGION_MAP_MT_EMBER,
|
||||
REGION_MAP_BERRY_FOREST,
|
||||
REGION_MAP_ICEFALL_CAVE,
|
||||
REGION_MAP_ROCKET_WAREHOUSE,
|
||||
REGION_MAP_TRAINER_TOWER_2,
|
||||
REGION_MAP_DOTTED_HOLE,
|
||||
REGION_MAP_LOST_CAVE,
|
||||
REGION_MAP_PATTERN_BUSH,
|
||||
REGION_MAP_ALTERING_CAVE,
|
||||
REGION_MAP_TANOBY_CHAMBERS,
|
||||
REGION_MAP_THREE_ISLE_PATH,
|
||||
REGION_MAP_TANOBY_KEY,
|
||||
REGION_MAP_BIRTH_ISLAND,
|
||||
REGION_MAP_MONEAN_CHAMBER,
|
||||
REGION_MAP_LIPTOO_CHAMBER,
|
||||
REGION_MAP_WEEPTH_CHAMBER,
|
||||
REGION_MAP_DILFORD_CHAMBER,
|
||||
REGION_MAP_SCUFIB_CHAMBER,
|
||||
REGION_MAP_RIXY_CHAMBER,
|
||||
REGION_MAP_VIAPOIS_CHAMBER,
|
||||
REGION_MAP_EMBER_SPA,
|
||||
REGION_MAP_SPECIAL_AREA,
|
||||
REGION_MAP_AQUA_HIDEOUT,
|
||||
REGION_MAP_MAGMA_HIDEOUT,
|
||||
REGION_MAP_MIRAGE_TOWER,
|
||||
REGION_MAP_BIRTH_ISLAND_2,
|
||||
REGION_MAP_FARAWAY_ISLAND,
|
||||
REGION_MAP_ARTISAN_CAVE,
|
||||
REGION_MAP_MARINE_CAVE,
|
||||
REGION_MAP_UNDERWATER_MARINE_CAVE,
|
||||
REGION_MAP_TERRA_CAVE,
|
||||
REGION_MAP_UNDERWATER_TERRA_CAVE,
|
||||
REGION_MAP_UNDERWATER_UNK1,
|
||||
REGION_MAP_UNDERWATER_UNK2,
|
||||
REGION_MAP_DESERT_UNDERPASS,
|
||||
REGION_MAP_ALTERING_CAVE_2,
|
||||
REGION_MAP_NAVEL_ROCK2,
|
||||
REGION_MAP_TRAINER_HILL
|
||||
};
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
void GetMapName(u8 *, u16, u16);
|
||||
|
||||
#endif //GUARD_REGION_MAP_H
|
@ -29,5 +29,6 @@ const struct MapHeader *get_mapheader_by_bank_and_number(u8, u8);
|
||||
void FieldObjectMoveDestCoords(struct MapObject *, u32, s16 *, s16 *);
|
||||
void sub_8086230(void);
|
||||
void c2_exit_to_overworld_2_switch(void);
|
||||
void c2_exit_to_overworld_1_continue_scripts_restart_music(void);
|
||||
|
||||
#endif //GUARD_ROM4_H
|
||||
|
@ -2,5 +2,6 @@
|
||||
#define GUARD_ROM6_H
|
||||
|
||||
void sub_81357FC(u8, void(void));
|
||||
u8 GetIdxOfFirstPartyMemberThatIsNotAnEgg(void);
|
||||
|
||||
#endif //GUARD_ROM6_H
|
||||
|
11
include/script_menu.h
Normal file
11
include/script_menu.h
Normal file
@ -0,0 +1,11 @@
|
||||
#ifndef GUARD_SCRIPT_MENU_H
|
||||
#define GUARD_SCRIPT_MENU_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
extern const u8 *const gUnknown_0858BAF0[9];
|
||||
|
||||
#endif //GUARD_SCRIPT_MENU_H
|
11
include/secret_base.h
Normal file
11
include/secret_base.h
Normal file
@ -0,0 +1,11 @@
|
||||
#ifndef GUARD_SECRET_BASE_H
|
||||
#define GUARD_SECRET_BASE_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
void sub_80E980C(void);
|
||||
|
||||
#endif //GUARD_SECRET_BASE_H
|
12
include/shop.h
Normal file
12
include/shop.h
Normal file
@ -0,0 +1,12 @@
|
||||
#ifndef GUARD_SHOP_H
|
||||
#define GUARD_SHOP_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3];
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
#endif //GUARD_SHOP_H
|
@ -449,5 +449,6 @@ enum
|
||||
};
|
||||
|
||||
#define NUM_SPECIES SPECIES_EGG
|
||||
extern const u8 gSpeciesNames[][11];
|
||||
|
||||
#endif // GUARD_SPECIES_H
|
||||
|
@ -31,7 +31,7 @@ u8 *StringFillWithTerminator(u8 *dest, u16 n);
|
||||
u8 *StringCopyN_Multibyte(u8 *dest, u8 *src, u32 n);
|
||||
u32 StringLength_Multibyte(u8 *str);
|
||||
u8 *WriteColorChangeControlCode(u8 *dest, u32 colorType, u8 color);
|
||||
bool32 sub_8009228(u8 *str);
|
||||
bool32 IsStringJapanese(u8 *str);
|
||||
bool32 sub_800924C(u8 *str, s32 n);
|
||||
u8 GetExtCtrlCodeLength(u8 code);
|
||||
static const u8 *SkipExtCtrlCode(const u8 *s);
|
||||
|
33
include/strings.h
Normal file
33
include/strings.h
Normal file
@ -0,0 +1,33 @@
|
||||
#ifndef GUARD_strings_H
|
||||
#define GUARD_strings_H
|
||||
|
||||
extern const u8 gText_Lv50[];
|
||||
extern const u8 gText_OpenLevel[];
|
||||
extern const u8 gText_Mom[];
|
||||
extern const u8 gText_Dad[];
|
||||
extern const u8 gText_Cool[];
|
||||
extern const u8 gText_Beauty[];
|
||||
extern const u8 gText_Cute[];
|
||||
extern const u8 gText_Smart[];
|
||||
extern const u8 gText_Tough[];
|
||||
extern const u8 gText_Single[];
|
||||
extern const u8 gText_Double[];
|
||||
extern const u8 gText_Spicy2[];
|
||||
extern const u8 gText_Dry2[];
|
||||
extern const u8 gText_Sweet2[];
|
||||
extern const u8 gText_Bitter2[];
|
||||
extern const u8 gText_Sour2[];
|
||||
extern const u8 gText_Excellent[];
|
||||
extern const u8 gText_VeryGood[];
|
||||
extern const u8 gText_Good[];
|
||||
extern const u8 gText_SoSo[];
|
||||
extern const u8 gText_Bad[];
|
||||
extern const u8 gText_TheWorst[];
|
||||
extern const u8 gText_Slots[];
|
||||
extern const u8 gText_Roulette[];
|
||||
extern const u8 gText_Jackpot[];
|
||||
extern const u8 gText_First[];
|
||||
extern const u8 gText_Second[];
|
||||
extern const u8 gText_Third[];
|
||||
|
||||
#endif //GUARD_strings_H
|
21
include/tv.h
Normal file
21
include/tv.h
Normal file
@ -0,0 +1,21 @@
|
||||
#ifndef GUARD_TV_H
|
||||
#define GUARD_TV_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
extern u8 *const gTVStringVarPtrs[3];
|
||||
|
||||
void ClearTVShowData(void);
|
||||
void PutPokemonTodayCaughtOnAir(void);
|
||||
u32 GetPlayerIDAsU32(void);
|
||||
bool8 GetPriceReduction(u8 newsKind);
|
||||
u8 GetRibbonCount(struct Pokemon *pokemon);
|
||||
void sub_80EE184(void);
|
||||
void sub_80F14F8(TVShow *shows);
|
||||
int sub_80EF370(int value);
|
||||
|
||||
#endif //GUARD_TV_H
|
@ -53,4 +53,14 @@
|
||||
#define VAR_0x40BC 0x40BC
|
||||
#define VAR_0x40C2 0x40C2
|
||||
|
||||
#define VAR_FRONTIER_FACILITY 0x40CF
|
||||
|
||||
#define VAR_DAILY_SLOTS 0x40E6
|
||||
#define VAR_DAILY_WILDS 0x40E7
|
||||
#define VAR_DAILY_BLENDER 0x40E8
|
||||
#define VAR_DAILY_PLANTED_BERRIES 0x40E9
|
||||
#define VAR_DAILY_PICKED_BERRIES 0x40EA
|
||||
#define VAR_DAILY_ROULETTE 0x40EB
|
||||
#define VAR_DAILY_BP 0x40F1
|
||||
|
||||
#endif // GUARD_VARS_H
|
||||
|
@ -148,7 +148,7 @@ SECTIONS {
|
||||
asm/contest_effect.o(.text);
|
||||
asm/record_mixing.o(.text);
|
||||
asm/secret_base.o(.text);
|
||||
asm/tv.o(.text);
|
||||
src/tv.o(.text);
|
||||
asm/contest_link_80F57C4.o(.text);
|
||||
asm/script_pokemon_util_80F87D8.o(.text);
|
||||
asm/field_poison.o(.text);
|
||||
@ -387,7 +387,7 @@ SECTIONS {
|
||||
data/contest_effect.o(.rodata);
|
||||
data/record_mixing.o(.rodata);
|
||||
data/secret_base.o(.rodata);
|
||||
data/tv.o(.rodata);
|
||||
src/tv.o(.rodata);
|
||||
data/contest_link_80F57C4.o(.rodata);
|
||||
data/script_pokemon_util_80F87D8.o(.rodata);
|
||||
src/pokemon_size_record.o(.rodata)
|
||||
|
@ -40,6 +40,7 @@
|
||||
#include "trainer_classes.h"
|
||||
#include "evolution_scene.h"
|
||||
#include "roamer.h"
|
||||
#include "tv.h"
|
||||
#include "safari_zone.h"
|
||||
#include "battle_string_ids.h"
|
||||
|
||||
@ -64,7 +65,6 @@ struct UnknownPokemonStruct2
|
||||
/*0x1D*/ u8 language;
|
||||
};
|
||||
|
||||
extern u32 gBattleTypeFlags;
|
||||
extern u8 gBattleCommunication[];
|
||||
extern u8 gBattleTerrain;
|
||||
extern u16 gBattle_BG0_X;
|
||||
@ -88,7 +88,6 @@ extern void (*gBattleMainFunc)(void);
|
||||
extern void (*gUnknown_030061E8)(void);
|
||||
extern struct UnknownPokemonStruct2 gUnknown_02022FF8[3]; // what is it used for?
|
||||
extern struct UnknownPokemonStruct2* gUnknown_02023058; // what is it used for?
|
||||
extern u8 gBattleOutcome;
|
||||
extern u8 gUnknown_02039B28[]; // possibly a struct?
|
||||
extern struct UnknownStruct6 gUnknown_02038C28; // todo: identify & document
|
||||
extern struct MusicPlayerInfo gMPlay_SE1;
|
||||
@ -139,7 +138,6 @@ extern u8 gActionForBanks[BATTLE_BANKS_COUNT];
|
||||
extern u16 gChosenMovesByBanks[BATTLE_BANKS_COUNT];
|
||||
extern u8 gCurrentActionFuncId;
|
||||
extern u8 gLastUsedAbility;
|
||||
extern u16 gLastUsedItem;
|
||||
extern u8 gUnknown_0203CF00[];
|
||||
extern const u8* gBattlescriptPtrsForSelection[BATTLE_BANKS_COUNT];
|
||||
extern const u8* gBattlescriptCurrInstr;
|
||||
@ -152,7 +150,6 @@ extern u8 gCurrMovePos;
|
||||
extern u8 gUnknown_020241E9;
|
||||
extern u16 gLastUsedMove;
|
||||
|
||||
extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
|
||||
extern const struct BattleMove gBattleMoves[];
|
||||
extern const u16 gUnknown_08C004E0[]; // battle textbox palette
|
||||
extern const struct BgTemplate gUnknown_0831AA08[];
|
||||
@ -226,8 +223,6 @@ extern u8 sub_81A9E28(void); // battle frontier 2
|
||||
extern void sub_81A56E8(u8 bank); // battle frontier 2
|
||||
extern void sub_81B8FB0(u8, u8); // party menu
|
||||
extern u8 pokemon_order_func(u8); // party menu
|
||||
extern void sub_80EC728(void); // tv
|
||||
extern void sub_80EE184(void); // tv
|
||||
extern bool8 InBattlePyramid(void);
|
||||
|
||||
// this file's functions
|
||||
@ -859,7 +854,7 @@ static void CB2_HandleStartBattle(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 2 && (gLinkPlayers[i].version & 0xFF) == 3; i++);
|
||||
for (i = 0; i < 2 && (gLinkPlayers[i].version & 0xFF) == VERSION_EMERALD; i++);
|
||||
|
||||
if (i == 2)
|
||||
gBattleCommunication[MULTIUSE_STATE] = 16;
|
||||
@ -2073,7 +2068,7 @@ static void sub_8038F34(void)
|
||||
else
|
||||
monsCount = 2;
|
||||
|
||||
for (i = 0; i < monsCount && (gLinkPlayers[i].version & 0xFF) == 3; i++);
|
||||
for (i = 0; i < monsCount && (gLinkPlayers[i].version & 0xFF) == VERSION_EMERALD; i++);
|
||||
|
||||
if (!gSaveBlock2Ptr->field_CA9_b && i == monsCount)
|
||||
{
|
||||
@ -4927,7 +4922,7 @@ static void HandleEndTurn_FinishBattle(void)
|
||||
}
|
||||
}
|
||||
}
|
||||
sub_80EC728();
|
||||
PutPokemonTodayCaughtOnAir();
|
||||
}
|
||||
|
||||
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK
|
||||
|
@ -11087,7 +11087,7 @@ static void atkEF_pokeball_catch_calculation(void)
|
||||
{
|
||||
if (gLastUsedItem == ITEM_MASTER_BALL)
|
||||
{
|
||||
gBattleResults.unk5_1 = 1;
|
||||
gBattleResults.usedMasterBall = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -353,7 +353,7 @@ void sub_803F850(u8 arg0)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < sub_8009FCC(); i++)
|
||||
for (i = 0; i < GetLinkPlayerCount(); i++)
|
||||
gBattleExecBuffer |= gBitTable[arg0] << (i << 2);
|
||||
|
||||
gBattleExecBuffer &= ~(0x10000000 << arg0);
|
||||
|
@ -59,7 +59,7 @@ extern u8* GetMonNick(struct Pokemon* mon, u8* dst);
|
||||
extern u8* GetBoxMonNick(struct BoxPokemon* boxMon, u8* dst);
|
||||
extern u8 sav1_map_get_name(void);
|
||||
extern s8 sub_8198C58(void);
|
||||
extern void sub_81DB5E8(u8* str1, u8* str2, u8);
|
||||
extern void TVShowConvertInternationalString(u8* str1, u8* str2, u8);
|
||||
extern void sub_806A068(u16, u8);
|
||||
extern void fade_screen(u8, u8);
|
||||
extern void overworld_free_bg_tilemaps(void);
|
||||
@ -404,8 +404,8 @@ static bool8 sub_807158C(struct DaycareData* daycare, u8 daycareId)
|
||||
|| StringCompareWithoutExtCtrlCodes(gSaveBlock2Ptr->playerName, daycareMon->OT_name) != 0))
|
||||
{
|
||||
StringCopy(gStringVar1, nick);
|
||||
sub_81DB5E8(gStringVar2, daycareMon->OT_name, daycareMon->language_maybe);
|
||||
sub_81DB5E8(gStringVar3, daycareMon->monName, daycareMon->unknown);
|
||||
TVShowConvertInternationalString(gStringVar2, daycareMon->OT_name, daycareMon->language_maybe);
|
||||
TVShowConvertInternationalString(gStringVar3, daycareMon->monName, daycareMon->unknown);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include "easy_chat.h"
|
||||
#include "event_data.h"
|
||||
#include "money.h"
|
||||
#include "tv.h"
|
||||
#include "coins.h"
|
||||
#include "text.h"
|
||||
|
||||
@ -36,7 +37,6 @@ extern void sub_813624C(void); // clears something pokeblock related
|
||||
extern void ResetPokedex(void);
|
||||
extern void sub_8084400(void);
|
||||
extern void ClearMailData(void);
|
||||
extern void ClearTVShowData(void);
|
||||
extern void ResetGabbyAndTy(void);
|
||||
extern void ResetSecretBases(void);
|
||||
extern void ResetLinkContestBoolean(void);
|
||||
|
@ -114,7 +114,7 @@ void sub_80FC190(void)
|
||||
{
|
||||
SetMainCallback2(c2_exit_to_overworld_2_switch);
|
||||
}
|
||||
else if (gBattleOutcome == 8)
|
||||
else if (gBattleOutcome == BATTLE_SAFARI_OUT_OF_BALLS)
|
||||
{
|
||||
ScriptContext2_RunNewScript(gUnknown_082A4B4C);
|
||||
warp_in();
|
||||
|
@ -170,13 +170,13 @@ extern const u8 gText_BattlePyramidFloor[];
|
||||
void DisplayPyramidFloorWindow(void)
|
||||
{
|
||||
// TODO: fix location
|
||||
if (*(u16*)(&gSaveBlock2Ptr->field_CAA[8]) == 7)
|
||||
if (gSaveBlock2Ptr->field_CAA[4] == 7)
|
||||
sBattlePyramidFloorWindowId = AddWindow(&gPyramidFloorWindowTemplate_1);
|
||||
else
|
||||
sBattlePyramidFloorWindowId = AddWindow(&gPyramidFloorWindowTemplate_2);
|
||||
PutWindowTilemap(sBattlePyramidFloorWindowId);
|
||||
sub_81973FC(sBattlePyramidFloorWindowId, 0);
|
||||
StringCopy(gStringVar1, gUnknown_08510510[*(u16*)(&gSaveBlock2Ptr->field_CAA[8])]);
|
||||
StringCopy(gStringVar1, gUnknown_08510510[gSaveBlock2Ptr->field_CAA[4]]);
|
||||
StringExpandPlaceholders(gStringVar4, gText_BattlePyramidFloor);
|
||||
PrintTextOnWindow(sBattlePyramidFloorWindowId, 1, gStringVar4, 0, 1, 0xFF, NULL);
|
||||
CopyWindowToVram(sBattlePyramidFloorWindowId, 2);
|
||||
|
@ -625,7 +625,7 @@ u8 *WriteColorChangeControlCode(u8 *dest, u32 colorType, u8 color)
|
||||
return dest;
|
||||
}
|
||||
|
||||
bool32 sub_8009228(u8 *str)
|
||||
bool32 IsStringJapanese(u8 *str)
|
||||
{
|
||||
while (*str != EOS)
|
||||
{
|
||||
|
11
sym_bss.txt
11
sym_bss.txt
@ -25,16 +25,9 @@
|
||||
.include "src/fldeff_cut.o"
|
||||
.include "src/script_menu.o"
|
||||
.include "src/record_mixing.o"
|
||||
.include "src/tv.o"
|
||||
|
||||
gUnknown_03001174: @ 3001174
|
||||
.space 0x1
|
||||
|
||||
gUnknown_03001175: @ 3001175
|
||||
.space 0x1
|
||||
|
||||
gUnknown_03001176: @ 3001176
|
||||
.space 0x2
|
||||
|
||||
.space 1 @ TODO: define this u32 in mauville_old_man
|
||||
gUnknown_03001178: @ 3001178
|
||||
.space 0x4
|
||||
|
||||
|
@ -210,13 +210,7 @@ gBattleMainFunc: @ 3005D04
|
||||
.space 0xC
|
||||
|
||||
gBattleResults: @ 3005D10
|
||||
.space 0x2A
|
||||
|
||||
gUnknown_03005D3A: @ 3005D3A
|
||||
.space 0xC
|
||||
|
||||
gUnknown_03005D46: @ 3005D46
|
||||
.space 0xE
|
||||
.space 0x44
|
||||
|
||||
gLeveledUpInBattle: @ 3005D54
|
||||
.space 0xC
|
||||
@ -326,17 +320,7 @@ gUnknown_030060B4: @ 30060B4
|
||||
gUnknown_030060B8: @ 30060B8
|
||||
.space 0x4
|
||||
|
||||
gUnknown_030060BC: @ 30060BC
|
||||
.space 0x4
|
||||
|
||||
gUnknown_030060C0: @ 30060C0
|
||||
.space 0x10
|
||||
|
||||
gUnknown_030060D0: @ 30060D0
|
||||
.space 0x10
|
||||
|
||||
gUnknown_030060E0: @ 30060E0
|
||||
.space 0x50
|
||||
.include "tv.o"
|
||||
|
||||
gUnknown_03006130: @ 3006130
|
||||
.space 0x34
|
||||
|
@ -1029,16 +1029,7 @@ gBagPockets: @ 2039DD8
|
||||
.space 0x28
|
||||
|
||||
gUnknown_02039E00: @ 2039E00
|
||||
.space 0x2
|
||||
|
||||
gUnknown_02039E02: @ 2039E02
|
||||
.space 0xB
|
||||
|
||||
gUnknown_02039E0D: @ 2039E0D
|
||||
.space 0x11
|
||||
|
||||
gUnknown_02039E1E: @ 2039E1E
|
||||
.space 0xE2
|
||||
.space 0x100
|
||||
|
||||
gUnknown_02039F00: @ 2039F00
|
||||
.space 0x8
|
||||
@ -1145,26 +1136,7 @@ gUnknown_0203A01D: @ 203A01D
|
||||
gUnknown_0203A020: @ 203A020
|
||||
.space 0x4
|
||||
|
||||
gUnknown_0203A024: @ 203A024
|
||||
.space 0x2
|
||||
|
||||
gUnknown_0203A026: @ 203A026
|
||||
.space 0x2
|
||||
|
||||
gUnknown_0203A028: @ 203A028
|
||||
.space 0x2
|
||||
|
||||
gUnknown_0203A02A: @ 203A02A
|
||||
.space 0x2
|
||||
|
||||
gUnknown_0203A02C: @ 203A02C
|
||||
.space 0x4
|
||||
|
||||
gUnknown_0203A030: @ 203A030
|
||||
.space 0x1
|
||||
|
||||
gUnknown_0203A031: @ 203A031
|
||||
.space 0x3
|
||||
.include "src/tv.o"
|
||||
|
||||
gUnknown_0203A034: @ 203A034
|
||||
.space 0x4
|
||||
|
Loading…
Reference in New Issue
Block a user