Merge branch 'master' into fix-eventobj

This commit is contained in:
GriffinR 2020-01-08 05:51:49 -05:00 committed by GitHub
commit 635267ce32
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
27 changed files with 850 additions and 825 deletions

View File

@ -296,32 +296,32 @@ LilycoveCity_EventScript_DeclineBrendanBattle:: @ 81E2ECD
end
LilycoveCity_EventScript_BattleMayTreecko:: @ 81E2EDE
trainerbattle_no_intro TRAINER_MAY_12, LilycoveCity_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_LILYCOVE_TREECKO, LilycoveCity_Text_MayDefeat
goto LilycoveCity_EventScript_DefeatedMay
end
LilycoveCity_EventScript_BattleMayTorchic:: @ 81E2EEE
trainerbattle_no_intro TRAINER_MAY_13, LilycoveCity_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_LILYCOVE_TORCHIC, LilycoveCity_Text_MayDefeat
goto LilycoveCity_EventScript_DefeatedMay
end
LilycoveCity_EventScript_BattleMayMudkip:: @ 81E2EFE
trainerbattle_no_intro TRAINER_MAY_11, LilycoveCity_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_LILYCOVE_MUDKIP, LilycoveCity_Text_MayDefeat
goto LilycoveCity_EventScript_DefeatedMay
end
LilycoveCity_EventScript_BattleBrendanTreecko:: @ 81E2F0E
trainerbattle_no_intro TRAINER_BRENDAN_14, LilycoveCity_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_LILYCOVE_TREECKO, LilycoveCity_Text_BrendanDefeat
goto LilycoveCity_EventScript_DefeatedBrendan
end
LilycoveCity_EventScript_BattleBrendanTorchic:: @ 81E2F1E
trainerbattle_no_intro TRAINER_BRENDAN_15, LilycoveCity_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_LILYCOVE_TORCHIC, LilycoveCity_Text_BrendanDefeat
goto LilycoveCity_EventScript_DefeatedBrendan
end
LilycoveCity_EventScript_BattleBrendanMudkip:: @ 81E2F2E
trainerbattle_no_intro TRAINER_BRENDAN_13, LilycoveCity_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_LILYCOVE_MUDKIP, LilycoveCity_Text_BrendanDefeat
goto LilycoveCity_EventScript_DefeatedBrendan
end

View File

@ -54,7 +54,7 @@ MagmaHideout_4F_EventScript_Maxie:: @ 823A560
waitmovement 0
msgbox MagmaHideout_4F_Text_MaxieOhItWasYou, MSGBOX_DEFAULT
closemessage
trainerbattle_no_intro TRAINER_MAXIE_1, MagmaHideout_4F_Text_MaxieDefeat
trainerbattle_no_intro TRAINER_MAXIE_MAGMA_HIDEOUT, MagmaHideout_4F_Text_MaxieDefeat
msgbox MagmaHideout_4F_Text_MaxieImGoingAfterGroudon, MSGBOX_DEFAULT
closemessage
clearflag FLAG_HIDE_SLATEPORT_CITY_CAPTAIN_STERN
@ -121,7 +121,7 @@ MagmaHideout_4F_EventScript_Grunt13:: @ 823A6BA
end
MagmaHideout_4F_EventScript_Tabitha:: @ 823A6D1
trainerbattle_single TRAINER_TABITHA_3, MagmaHideout_4F_Text_TabithaIntro, MagmaHideout_4F_Text_TabithaDefeat
trainerbattle_single TRAINER_TABITHA_MAGMA_HIDEOUT, MagmaHideout_4F_Text_TabithaIntro, MagmaHideout_4F_Text_TabithaDefeat
msgbox MagmaHideout_4F_Text_TabithaPostBattle, MSGBOX_AUTOCLOSE
end

View File

@ -204,7 +204,7 @@ MauvilleCity_EventScript_ScottExitEast:: @ 81DF628
MauvilleCity_EventScript_BattleWally:: @ 81DF63A
msgbox MauvilleCity_Text_WallyHereICome, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_WALLY_2, MauvilleCity_Text_WallyDefeat
trainerbattle_no_intro TRAINER_WALLY_MAUVILLE, MauvilleCity_Text_WallyDefeat
applymovement 6, Common_Movement_WalkInPlaceFastestRight
waitmovement 0
msgbox MauvilleCity_Text_WallyIllGoBackToVerdanturf, MSGBOX_DEFAULT

View File

@ -337,11 +337,11 @@ MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerWest:: @ 8224152
return
MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer:: @ 8224157
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, TRAINER_MAXIE_3, 0, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, TRAINER_MAXIE_MOSSDEEP, 0, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand
end
MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer:: @ 8224166
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, TRAINER_TABITHA_1, 0, MossdeepCity_SpaceCenter_Text_TabithaDefeat, MossdeepCity_SpaceCenter_Text_TabithaDefeat
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, TRAINER_TABITHA_MOSSDEEP, 0, MossdeepCity_SpaceCenter_Text_TabithaDefeat, MossdeepCity_SpaceCenter_Text_TabithaDefeat
end
MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall:: @ 8224175

View File

@ -43,7 +43,7 @@ MtChimney_EventScript_Maxie:: @ 822EE0B
applymovement 2, Common_Movement_Delay48
waitmovement 0
msgbox MtChimney_Text_MaxieIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_MAXIE_2, MtChimney_Text_MaxieDefeat
trainerbattle_no_intro TRAINER_MAXIE_MT_CHIMNEY, MtChimney_Text_MaxieDefeat
msgbox MtChimney_Text_MaxieYouHaventSeenLastOfMagma, MSGBOX_DEFAULT
closemessage
delay 30
@ -415,7 +415,7 @@ MtChimney_EventScript_BusyAquaGrunt3:: @ 822F065
end
MtChimney_EventScript_Tabitha:: @ 822F06E
trainerbattle_single TRAINER_TABITHA_2, MtChimney_Text_TabithaIntro, MtChimney_Text_TabithaDefeat
trainerbattle_single TRAINER_TABITHA_MT_CHIMNEY, MtChimney_Text_TabithaIntro, MtChimney_Text_TabithaDefeat
msgbox MtChimney_Text_TabithaPostBattle, MSGBOX_AUTOCLOSE
end

View File

@ -61,32 +61,32 @@ Route103_EventScript_RivalBrendan:: @ 81EC434
end
Route103_EventScript_StartMayBattleTreecko:: @ 81EC48E
trainerbattle_no_intro TRAINER_MAY_4, Route103_Text_MayDefeated
trainerbattle_no_intro TRAINER_MAY_ROUTE_103_TREECKO, Route103_Text_MayDefeated
goto Route103_EventScript_AfterMayBattle
end
Route103_EventScript_StartMayBattleTorchic:: @ 81EC49E
trainerbattle_no_intro TRAINER_MAY_7, Route103_Text_MayDefeated
trainerbattle_no_intro TRAINER_MAY_ROUTE_103_TORCHIC, Route103_Text_MayDefeated
goto Route103_EventScript_AfterMayBattle
end
Route103_EventScript_StartMayBattleMudkip:: @ 81EC4AE
trainerbattle_no_intro TRAINER_MAY_1, Route103_Text_MayDefeated
trainerbattle_no_intro TRAINER_MAY_ROUTE_103_MUDKIP, Route103_Text_MayDefeated
goto Route103_EventScript_AfterMayBattle
end
Route103_EventScript_StartBrendanBattleTreecko:: @ 81EC4BE
trainerbattle_no_intro TRAINER_BRENDAN_4, Route103_Text_BrendanDefeated
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_103_TREECKO, Route103_Text_BrendanDefeated
goto Route103_EventScript_AfterBrendanBattle
end
Route103_EventScript_StartBrendanBattleTorchic:: @ 81EC4CE
trainerbattle_no_intro TRAINER_BRENDAN_7, Route103_Text_BrendanDefeated
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_103_TORCHIC, Route103_Text_BrendanDefeated
goto Route103_EventScript_AfterBrendanBattle
end
Route103_EventScript_StartBrendanBattleMudkip:: @ 81EC4DE
trainerbattle_no_intro TRAINER_BRENDAN_1, Route103_Text_BrendanDefeated
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_103_MUDKIP, Route103_Text_BrendanDefeated
goto Route103_EventScript_AfterBrendanBattle
end

View File

@ -167,19 +167,19 @@ Route104_EventScript_RestoreMusic:: @ 81ECE31
return
Route104_EventScript_BattleMayTreecko:: @ 81ECE36
trainerbattle_no_intro TRAINER_MAY_14, Route104_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TREECKO, Route104_Text_MayDefeat
setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_MayDefeated
end
Route104_EventScript_BattleMayTorchic:: @ 81ECE49
trainerbattle_no_intro TRAINER_MAY_15, Route104_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TORCHIC, Route104_Text_MayDefeat
setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_MayDefeated
end
Route104_EventScript_BattleMayMudkip:: @ 81ECE5C
trainerbattle_no_intro TRAINER_MAY_10, Route104_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_RUSTBORO_MUDKIP, Route104_Text_MayDefeat
setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_MayDefeated
end
@ -237,19 +237,19 @@ Route104_EventScript_BrendanDefeated:: @ 81ECF38
end
Route104_EventScript_BattleBrendanTreecko:: @ 81ECF4D
trainerbattle_no_intro TRAINER_BRENDAN_10, Route104_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TREECKO, Route104_Text_BrendanDefeat
setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_BrendanDefeated
end
Route104_EventScript_BattleBrendanTorchic:: @ 81ECF60
trainerbattle_no_intro TRAINER_BRENDAN_12, Route104_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TORCHIC, Route104_Text_BrendanDefeat
setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_BrendanDefeated
end
Route104_EventScript_BattleBrendanMudkip:: @ 81ECF73
trainerbattle_no_intro TRAINER_BRENDAN_11, Route104_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_MUDKIP, Route104_Text_BrendanDefeat
setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_BrendanDefeated
end

View File

@ -421,17 +421,17 @@ Route110_EventScript_MayBattle:: @ 81EF7EB
end
Route110_EventScript_MayBattleTreecko:: @ 81EF81A
trainerbattle_no_intro TRAINER_MAY_5, Route110_Text_MayDefeated
trainerbattle_no_intro TRAINER_MAY_ROUTE_110_TREECKO, Route110_Text_MayDefeated
goto Route110_EventScript_MayDefeated
end
Route110_EventScript_MayBattleTorchic:: @ 81EF82A
trainerbattle_no_intro TRAINER_MAY_8, Route110_Text_MayDefeated
trainerbattle_no_intro TRAINER_MAY_ROUTE_110_TORCHIC, Route110_Text_MayDefeated
goto Route110_EventScript_MayDefeated
end
Route110_EventScript_MayBattleMudkip:: @ 81EF83A
trainerbattle_no_intro TRAINER_MAY_2, Route110_Text_MayDefeated
trainerbattle_no_intro TRAINER_MAY_ROUTE_110_MUDKIP, Route110_Text_MayDefeated
goto Route110_EventScript_MayDefeated
end
@ -451,17 +451,17 @@ Route110_EventScript_BrendanBattle:: @ 81EF865
end
Route110_EventScript_BrendanBattleTreecko:: @ 81EF894
trainerbattle_no_intro TRAINER_BRENDAN_5, Route110_Text_BrendanDefeated
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_110_TREECKO, Route110_Text_BrendanDefeated
goto Route110_EventScript_BrendanDefeated
end
Route110_EventScript_BrendanBattleTorchic:: @ 81EF8A4
trainerbattle_no_intro TRAINER_BRENDAN_8, Route110_Text_BrendanDefeated
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_110_TORCHIC, Route110_Text_BrendanDefeated
goto Route110_EventScript_BrendanDefeated
end
Route110_EventScript_BrendanBattleMudkip:: @ 81EF8B4
trainerbattle_no_intro TRAINER_BRENDAN_2, Route110_Text_BrendanDefeated
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_110_MUDKIP, Route110_Text_BrendanDefeated
goto Route110_EventScript_BrendanDefeated
end

View File

@ -86,17 +86,17 @@ Route119_EventScript_BattleMay:: @ 81F450B
end
Route119_EventScript_BattleMayTreecko:: @ 81F453A
trainerbattle_no_intro TRAINER_MAY_6, Route119_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TREECKO, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_BattleMayTorchic:: @ 81F454A
trainerbattle_no_intro TRAINER_MAY_9, Route119_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TORCHIC, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_BattleMayMudkip:: @ 81F455A
trainerbattle_no_intro TRAINER_MAY_3, Route119_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_MUDKIP, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
@ -116,17 +116,17 @@ Route119_EventScript_BattleBrendan:: @ 81F4585
end
Route119_EventScript_BattleBrendanTreecko:: @ 81F45B4
trainerbattle_no_intro TRAINER_BRENDAN_6, Route119_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TREECKO, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_BattleBrendanTorchic:: @ 81F45C4
trainerbattle_no_intro TRAINER_BRENDAN_9, Route119_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TORCHIC, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_BattleBrendanMudkip:: @ 81F45D4
trainerbattle_no_intro TRAINER_BRENDAN_3, Route119_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_MUDKIP, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end

View File

@ -41,7 +41,7 @@ Route119_WeatherInstitute_2F_EventScript_Grunt3:: @ 826FF96
end
Route119_WeatherInstitute_2F_EventScript_Shelly:: @ 826FFAD
trainerbattle_single TRAINER_SHELLY_1, Route119_WeatherInstitute_2F_Text_ShellyIntro, Route119_WeatherInstitute_2F_Text_ShellyDefeat, Route119_WeatherInstitute_2F_EventScript_ShellyDefeated
trainerbattle_single TRAINER_SHELLY_WEATHER_INSTITUTE, Route119_WeatherInstitute_2F_Text_ShellyIntro, Route119_WeatherInstitute_2F_Text_ShellyDefeat, Route119_WeatherInstitute_2F_EventScript_ShellyDefeated
msgbox Route119_WeatherInstitute_2F_Text_ShellyPostBattle, MSGBOX_AUTOCLOSE
end

View File

@ -896,19 +896,19 @@ RustboroCity_EventScript_RestoreBgm:: @ 81E10D6
return
RustboroCity_EventScript_BattleMayTreecko:: @ 81E10DB
trainerbattle_no_intro TRAINER_MAY_14, RustboroCity_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TREECKO, RustboroCity_Text_MayDefeat
setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_MayBrineyHint
end
RustboroCity_EventScript_BattleMayTorchic:: @ 81E10EE
trainerbattle_no_intro TRAINER_MAY_15, RustboroCity_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TORCHIC, RustboroCity_Text_MayDefeat
setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_MayBrineyHint
end
RustboroCity_EventScript_BattleMayMudkip:: @ 81E1101
trainerbattle_no_intro TRAINER_MAY_10, RustboroCity_Text_MayDefeat
trainerbattle_no_intro TRAINER_MAY_RUSTBORO_MUDKIP, RustboroCity_Text_MayDefeat
setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_MayBrineyHint
end
@ -960,19 +960,19 @@ RustboroCity_EventScript_BrendanBrineyHint:: @ 81E11C0
end
RustboroCity_EventScript_BattleBrendanTreecko:: @ 81E11D5
trainerbattle_no_intro TRAINER_BRENDAN_10, RustboroCity_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TREECKO, RustboroCity_Text_BrendanDefeat
setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_BrendanBrineyHint
end
RustboroCity_EventScript_BattleBrendanTorchic:: @ 81E11E8
trainerbattle_no_intro TRAINER_BRENDAN_12, RustboroCity_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TORCHIC, RustboroCity_Text_BrendanDefeat
setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_BrendanBrineyHint
end
RustboroCity_EventScript_BattleBrendanMudkip:: @ 81E11FB
trainerbattle_no_intro TRAINER_BRENDAN_11, RustboroCity_Text_BrendanDefeat
trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_MUDKIP, RustboroCity_Text_BrendanDefeat
setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_BrendanBrineyHint
end

View File

@ -2,7 +2,7 @@ SeafloorCavern_Room3_MapScripts:: @ 8234937
.byte 0
SeafloorCavern_Room3_EventScript_Shelly:: @ 8234938
trainerbattle_single TRAINER_SHELLY_2, SeafloorCavern_Room3_Text_ShellyIntro, SeafloorCavern_Room3_Text_ShellyDefeat
trainerbattle_single TRAINER_SHELLY_SEAFLOOR_CAVERN, SeafloorCavern_Room3_Text_ShellyIntro, SeafloorCavern_Room3_Text_ShellyDefeat
msgbox SeafloorCavern_Room3_Text_ShellyPostBattle, MSGBOX_AUTOCLOSE
end

View File

@ -41,7 +41,7 @@ VictoryRoad_1F_EventScript_WallyEntranceBattle:: @ 8235DE1
applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown
waitmovement 0
msgbox VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_WALLY_1, VictoryRoad_1F_Text_WallyEntranceDefeat
trainerbattle_no_intro TRAINER_WALLY_VR_1, VictoryRoad_1F_Text_WallyEntranceDefeat
msgbox VictoryRoad_1F_Text_WallyPostEntranceBattle, MSGBOX_DEFAULT
clearflag FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY
copyobjectxytoperm 4
@ -84,7 +84,7 @@ VictoryRoad_1F_EventScript_EntranceWally:: @ 8235E2C
@ This Wally appears and remains at the exit after the Hall of Fame is entered
VictoryRoad_1F_EventScript_ExitWally:: @ 8235E35
trainerbattle_single TRAINER_WALLY_3, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat
trainerbattle_single TRAINER_WALLY_VR_2, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
goto_if_eq VictoryRoad_1F_EventScript_RematchWally
@ -92,7 +92,7 @@ VictoryRoad_1F_EventScript_ExitWally:: @ 8235E35
end
VictoryRoad_1F_EventScript_RematchWally:: @ 8235E5C
trainerbattle_rematch TRAINER_WALLY_3, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat
trainerbattle_rematch TRAINER_WALLY_VR_2, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat
msgbox VictoryRoad_1F_Text_WallyPostBattle, MSGBOX_AUTOCLOSE
end

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 696 B

After

Width:  |  Height:  |  Size: 696 B

View File

Before

Width:  |  Height:  |  Size: 99 B

After

Width:  |  Height:  |  Size: 99 B

View File

Before

Width:  |  Height:  |  Size: 733 B

After

Width:  |  Height:  |  Size: 733 B

View File

Before

Width:  |  Height:  |  Size: 396 B

After

Width:  |  Height:  |  Size: 396 B

View File

@ -33,8 +33,8 @@
#define TRAINER_FREDRICK 29
#define TRAINER_MATT 30
#define TRAINER_ZANDER 31
#define TRAINER_SHELLY_1 32
#define TRAINER_SHELLY_2 33
#define TRAINER_SHELLY_WEATHER_INSTITUTE 32
#define TRAINER_SHELLY_SEAFLOOR_CAVERN 33
#define TRAINER_ARCHIE 34
#define TRAINER_LEAH 35
#define TRAINER_DAISY 36
@ -515,30 +515,30 @@
#define TRAINER_CONOR 511
#define TRAINER_EDWIN_1 512
#define TRAINER_HECTOR 513
#define TRAINER_TABITHA_1 514
#define TRAINER_TABITHA_MOSSDEEP 514
#define TRAINER_EDWIN_2 515
#define TRAINER_EDWIN_3 516
#define TRAINER_EDWIN_4 517
#define TRAINER_EDWIN_5 518
#define TRAINER_WALLY_1 519
#define TRAINER_BRENDAN_1 520
#define TRAINER_BRENDAN_2 521
#define TRAINER_BRENDAN_3 522
#define TRAINER_BRENDAN_4 523
#define TRAINER_BRENDAN_5 524
#define TRAINER_BRENDAN_6 525
#define TRAINER_BRENDAN_7 526
#define TRAINER_BRENDAN_8 527
#define TRAINER_BRENDAN_9 528
#define TRAINER_MAY_1 529
#define TRAINER_MAY_2 530
#define TRAINER_MAY_3 531
#define TRAINER_MAY_4 532
#define TRAINER_MAY_5 533
#define TRAINER_MAY_6 534
#define TRAINER_MAY_7 535
#define TRAINER_MAY_8 536
#define TRAINER_MAY_9 537
#define TRAINER_WALLY_VR_1 519
#define TRAINER_BRENDAN_ROUTE_103_MUDKIP 520
#define TRAINER_BRENDAN_ROUTE_110_MUDKIP 521
#define TRAINER_BRENDAN_ROUTE_119_MUDKIP 522
#define TRAINER_BRENDAN_ROUTE_103_TREECKO 523
#define TRAINER_BRENDAN_ROUTE_110_TREECKO 524
#define TRAINER_BRENDAN_ROUTE_119_TREECKO 525
#define TRAINER_BRENDAN_ROUTE_103_TORCHIC 526
#define TRAINER_BRENDAN_ROUTE_110_TORCHIC 527
#define TRAINER_BRENDAN_ROUTE_119_TORCHIC 528
#define TRAINER_MAY_ROUTE_103_MUDKIP 529
#define TRAINER_MAY_ROUTE_110_MUDKIP 530
#define TRAINER_MAY_ROUTE_119_MUDKIP 531
#define TRAINER_MAY_ROUTE_103_TREECKO 532
#define TRAINER_MAY_ROUTE_110_TREECKO 533
#define TRAINER_MAY_ROUTE_119_TREECKO 534
#define TRAINER_MAY_ROUTE_103_TORCHIC 535
#define TRAINER_MAY_ROUTE_110_TORCHIC 536
#define TRAINER_MAY_ROUTE_119_TORCHIC 537
#define TRAINER_ISAAC_1 538
#define TRAINER_DAVIS 539
#define TRAINER_MITCHELL 540
@ -593,17 +593,17 @@
#define TRAINER_GRUNT_SPACE_CENTER_6 589
#define TRAINER_GRUNT_SPACE_CENTER_7 590
#define TRAINER_MACEY 591
#define TRAINER_BRENDAN_10 592
#define TRAINER_BRENDAN_11 593
#define TRAINER_BRENDAN_RUSTBORO_TREECKO 592
#define TRAINER_BRENDAN_RUSTBORO_MUDKIP 593
#define TRAINER_PAXTON 594
#define TRAINER_ISABELLA 595
#define TRAINER_GRUNT_WEATHER_INST_5 596
#define TRAINER_TABITHA_2 597
#define TRAINER_TABITHA_MT_CHIMNEY 597
#define TRAINER_JONATHAN 598
#define TRAINER_BRENDAN_12 599
#define TRAINER_MAY_10 600
#define TRAINER_MAXIE_1 601
#define TRAINER_MAXIE_2 602
#define TRAINER_BRENDAN_RUSTBORO_TORCHIC 599
#define TRAINER_MAY_RUSTBORO_MUDKIP 600
#define TRAINER_MAXIE_MAGMA_HIDEOUT 601
#define TRAINER_MAXIE_MT_CHIMNEY 602
#define TRAINER_TIANA 603
#define TRAINER_HALEY_1 604
#define TRAINER_JANICE 605
@ -657,17 +657,17 @@
#define TRAINER_RILEY 653
#define TRAINER_FLINT 654
#define TRAINER_ASHLEY 655
#define TRAINER_WALLY_2 656
#define TRAINER_WALLY_3 657
#define TRAINER_WALLY_4 658
#define TRAINER_WALLY_5 659
#define TRAINER_WALLY_6 660
#define TRAINER_BRENDAN_13 661
#define TRAINER_BRENDAN_14 662
#define TRAINER_BRENDAN_15 663
#define TRAINER_MAY_11 664
#define TRAINER_MAY_12 665
#define TRAINER_MAY_13 666
#define TRAINER_WALLY_MAUVILLE 656
#define TRAINER_WALLY_VR_2 657
#define TRAINER_WALLY_VR_3 658
#define TRAINER_WALLY_VR_4 659
#define TRAINER_WALLY_VR_5 660
#define TRAINER_BRENDAN_LILYCOVE_MUDKIP 661
#define TRAINER_BRENDAN_LILYCOVE_TREECKO 662
#define TRAINER_BRENDAN_LILYCOVE_TORCHIC 663
#define TRAINER_MAY_LILYCOVE_MUDKIP 664
#define TRAINER_MAY_LILYCOVE_TREECKO 665
#define TRAINER_MAY_LILYCOVE_TORCHIC 666
#define TRAINER_JONAH 667
#define TRAINER_HENRY 668
#define TRAINER_ROGER 669
@ -733,9 +733,9 @@
#define TRAINER_GRUNT_MAGMA_HIDEOUT_14 729
#define TRAINER_GRUNT_MAGMA_HIDEOUT_15 730
#define TRAINER_GRUNT_MAGMA_HIDEOUT_16 731
#define TRAINER_TABITHA_3 732
#define TRAINER_TABITHA_MAGMA_HIDEOUT 732
#define TRAINER_DARCY 733
#define TRAINER_MAXIE_3 734
#define TRAINER_MAXIE_MOSSDEEP 734
#define TRAINER_PETE 735
#define TRAINER_ISABELLE 736
#define TRAINER_ANDRES_1 737
@ -769,8 +769,8 @@
#define TRAINER_MYLES 765
#define TRAINER_PAT 766
#define TRAINER_CRISTIN_1 767
#define TRAINER_MAY_14 768
#define TRAINER_MAY_15 769
#define TRAINER_MAY_RUSTBORO_TREECKO 768
#define TRAINER_MAY_RUSTBORO_TORCHIC 769
#define TRAINER_ROXANNE_2 770
#define TRAINER_ROXANNE_3 771
#define TRAINER_ROXANNE_4 772
@ -854,8 +854,8 @@
#define TRAINER_EVERETT 850
#define TRAINER_RED 851
#define TRAINER_LEAF 852
#define TRAINER_BRENDAN_16 853
#define TRAINER_MAY_16 854
#define TRAINER_BRENDAN_PLACEHOLDER 853
#define TRAINER_MAY_PLACEHOLDER 854
#define TRAINERS_COUNT 855

View File

@ -84,7 +84,7 @@ const u32 gMonFrontPic_Slowpoke[] = INCBIN_U32("graphics/pokemon/slowpoke/anim_f
const u32 gMonFrontPic_Slowbro[] = INCBIN_U32("graphics/pokemon/slowbro/anim_front.4bpp.lz");
const u32 gMonFrontPic_Magnemite[] = INCBIN_U32("graphics/pokemon/magnemite/anim_front.4bpp.lz");
const u32 gMonFrontPic_Magneton[] = INCBIN_U32("graphics/pokemon/magneton/anim_front.4bpp.lz");
const u32 gMonFrontPic_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetch_d/anim_front.4bpp.lz");
const u32 gMonFrontPic_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetchd/anim_front.4bpp.lz");
const u32 gMonFrontPic_Doduo[] = INCBIN_U32("graphics/pokemon/doduo/anim_front.4bpp.lz");
const u32 gMonFrontPic_Dodrio[] = INCBIN_U32("graphics/pokemon/dodrio/anim_front.4bpp.lz");
const u32 gMonFrontPic_Seel[] = INCBIN_U32("graphics/pokemon/seel/anim_front.4bpp.lz");

View File

@ -305,7 +305,7 @@ const struct RematchTrainer gRematchTable[REMATCH_TABLE_ENTRIES] =
[REMATCH_TRENT] = REMATCH(TRAINER_TRENT_1, TRAINER_TRENT_2, TRAINER_TRENT_3, TRAINER_TRENT_4, TRAINER_TRENT_5, ROUTE112),
[REMATCH_SAWYER] = REMATCH(TRAINER_SAWYER_1, TRAINER_SAWYER_2, TRAINER_SAWYER_3, TRAINER_SAWYER_4, TRAINER_SAWYER_5, MT_CHIMNEY),
[REMATCH_KIRA_AND_DAN] = REMATCH(TRAINER_KIRA_AND_DAN_1, TRAINER_KIRA_AND_DAN_2, TRAINER_KIRA_AND_DAN_3, TRAINER_KIRA_AND_DAN_4, TRAINER_KIRA_AND_DAN_5, ABANDONED_SHIP_ROOMS2_1F),
[REMATCH_WALLY_3] = REMATCH(TRAINER_WALLY_3, TRAINER_WALLY_4, TRAINER_WALLY_5, TRAINER_WALLY_6, TRAINER_WALLY_6, VICTORY_ROAD_1F),
[REMATCH_WALLY_3] = REMATCH(TRAINER_WALLY_VR_2, TRAINER_WALLY_VR_3, TRAINER_WALLY_VR_4, TRAINER_WALLY_VR_5, TRAINER_WALLY_VR_5, VICTORY_ROAD_1F),
[REMATCH_ROXANNE] = REMATCH(TRAINER_ROXANNE_1, TRAINER_ROXANNE_2, TRAINER_ROXANNE_3, TRAINER_ROXANNE_4, TRAINER_ROXANNE_5, RUSTBORO_CITY),
[REMATCH_BRAWLY] = REMATCH(TRAINER_BRAWLY_1, TRAINER_BRAWLY_2, TRAINER_BRAWLY_3, TRAINER_BRAWLY_4, TRAINER_BRAWLY_5, DEWFORD_TOWN),
[REMATCH_WATTSON] = REMATCH(TRAINER_WATTSON_1, TRAINER_WATTSON_2, TRAINER_WATTSON_3, TRAINER_WATTSON_4, TRAINER_WATTSON_5, MAUVILLE_CITY),

View File

@ -572,12 +572,12 @@ const u32 gMonShinyPalette_Magneton[] = INCBIN_U32("graphics/pokemon/magneton/sh
const u8 gMonIcon_Magneton[] = INCBIN_U8("graphics/pokemon/magneton/icon.4bpp");
const u8 gMonFootprint_Magneton[] = INCBIN_U8("graphics/pokemon/magneton/footprint.1bpp");
const u32 gMonStillFrontPic_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetch_d/front.4bpp.lz");
const u32 gMonPalette_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetch_d/normal.gbapal.lz");
const u32 gMonBackPic_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetch_d/back.4bpp.lz");
const u32 gMonShinyPalette_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetch_d/shiny.gbapal.lz");
const u8 gMonIcon_Farfetchd[] = INCBIN_U8("graphics/pokemon/farfetch_d/icon.4bpp");
const u8 gMonFootprint_Farfetchd[] = INCBIN_U8("graphics/pokemon/farfetch_d/footprint.1bpp");
const u32 gMonStillFrontPic_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetchd/front.4bpp.lz");
const u32 gMonPalette_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetchd/normal.gbapal.lz");
const u32 gMonBackPic_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetchd/back.4bpp.lz");
const u32 gMonShinyPalette_Farfetchd[] = INCBIN_U32("graphics/pokemon/farfetchd/shiny.gbapal.lz");
const u8 gMonIcon_Farfetchd[] = INCBIN_U8("graphics/pokemon/farfetchd/icon.4bpp");
const u8 gMonFootprint_Farfetchd[] = INCBIN_U8("graphics/pokemon/farfetchd/footprint.1bpp");
const u32 gMonStillFrontPic_Doduo[] = INCBIN_U32("graphics/pokemon/doduo/front.4bpp.lz");
const u32 gMonPalette_Doduo[] = INCBIN_U32("graphics/pokemon/doduo/normal.gbapal.lz");

File diff suppressed because it is too large Load Diff

View File

@ -447,7 +447,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Zander},
},
[TRAINER_SHELLY_1] =
[TRAINER_SHELLY_WEATHER_INSTITUTE] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_AQUA_ADMIN,
@ -457,11 +457,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Shelly1),
.party = {.NoItemDefaultMoves = sParty_Shelly1},
.partySize = ARRAY_COUNT(sParty_ShellyWeatherInstitute),
.party = {.NoItemDefaultMoves = sParty_ShellyWeatherInstitute},
},
[TRAINER_SHELLY_2] =
[TRAINER_SHELLY_SEAFLOOR_CAVERN] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_AQUA_ADMIN,
@ -471,8 +471,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Shelly2),
.party = {.NoItemDefaultMoves = sParty_Shelly2},
.partySize = ARRAY_COUNT(sParty_ShellySeafloorCavern),
.party = {.NoItemDefaultMoves = sParty_ShellySeafloorCavern},
},
[TRAINER_ARCHIE] =
@ -7195,7 +7195,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Hector},
},
[TRAINER_TABITHA_1] =
[TRAINER_TABITHA_MOSSDEEP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_MAGMA_ADMIN,
@ -7205,8 +7205,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE,
.partySize = ARRAY_COUNT(sParty_Tabitha1),
.party = {.NoItemDefaultMoves = sParty_Tabitha1},
.partySize = ARRAY_COUNT(sParty_TabithaMossdeep),
.party = {.NoItemDefaultMoves = sParty_TabithaMossdeep},
},
[TRAINER_EDWIN_2] =
@ -7265,7 +7265,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Edwin5},
},
[TRAINER_WALLY_1] =
[TRAINER_WALLY_VR_1] =
{
.partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7275,11 +7275,11 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Wally1),
.party = {.NoItemCustomMoves = sParty_Wally1},
.partySize = ARRAY_COUNT(sParty_WallyVR1),
.party = {.NoItemCustomMoves = sParty_WallyVR1},
},
[TRAINER_BRENDAN_1] =
[TRAINER_BRENDAN_ROUTE_103_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7289,11 +7289,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan1),
.party = {.NoItemDefaultMoves = sParty_Brendan1},
.partySize = ARRAY_COUNT(sParty_BrendanRoute103Mudkip),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute103Mudkip},
},
[TRAINER_BRENDAN_2] =
[TRAINER_BRENDAN_ROUTE_110_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7303,11 +7303,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan2),
.party = {.NoItemDefaultMoves = sParty_Brendan2},
.partySize = ARRAY_COUNT(sParty_BrendanRoute110Mudkip),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute110Mudkip},
},
[TRAINER_BRENDAN_3] =
[TRAINER_BRENDAN_ROUTE_119_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7317,11 +7317,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan3),
.party = {.NoItemDefaultMoves = sParty_Brendan3},
.partySize = ARRAY_COUNT(sParty_BrendanRoute119Mudkip),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute119Mudkip},
},
[TRAINER_BRENDAN_4] =
[TRAINER_BRENDAN_ROUTE_103_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7331,11 +7331,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN,
.partySize = ARRAY_COUNT(sParty_Brendan4),
.party = {.NoItemDefaultMoves = sParty_Brendan4},
.partySize = ARRAY_COUNT(sParty_BrendanRoute103Treecko),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute103Treecko},
},
[TRAINER_BRENDAN_5] =
[TRAINER_BRENDAN_ROUTE_110_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7345,11 +7345,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan5),
.party = {.NoItemDefaultMoves = sParty_Brendan5},
.partySize = ARRAY_COUNT(sParty_BrendanRoute110Treecko),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute110Treecko},
},
[TRAINER_BRENDAN_6] =
[TRAINER_BRENDAN_ROUTE_119_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7359,11 +7359,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan6),
.party = {.NoItemDefaultMoves = sParty_Brendan6},
.partySize = ARRAY_COUNT(sParty_BrendanRoute119Treecko),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute119Treecko},
},
[TRAINER_BRENDAN_7] =
[TRAINER_BRENDAN_ROUTE_103_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7373,11 +7373,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan7),
.party = {.NoItemDefaultMoves = sParty_Brendan7},
.partySize = ARRAY_COUNT(sParty_BrendanRoute103Torchic),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute103Torchic},
},
[TRAINER_BRENDAN_8] =
[TRAINER_BRENDAN_ROUTE_110_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7387,11 +7387,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan8),
.party = {.NoItemDefaultMoves = sParty_Brendan8},
.partySize = ARRAY_COUNT(sParty_BrendanRoute110Torchic),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute110Torchic},
},
[TRAINER_BRENDAN_9] =
[TRAINER_BRENDAN_ROUTE_119_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7401,11 +7401,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan9),
.party = {.NoItemDefaultMoves = sParty_Brendan9},
.partySize = ARRAY_COUNT(sParty_BrendanRoute119Torchic),
.party = {.NoItemDefaultMoves = sParty_BrendanRoute119Torchic},
},
[TRAINER_MAY_1] =
[TRAINER_MAY_ROUTE_103_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7415,11 +7415,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May1),
.party = {.NoItemDefaultMoves = sParty_May1},
.partySize = ARRAY_COUNT(sParty_MayRoute103Mudkip),
.party = {.NoItemDefaultMoves = sParty_MayRoute103Mudkip},
},
[TRAINER_MAY_2] =
[TRAINER_MAY_ROUTE_110_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7429,11 +7429,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May2),
.party = {.NoItemDefaultMoves = sParty_May2},
.partySize = ARRAY_COUNT(sParty_MayRoute110Mudkip),
.party = {.NoItemDefaultMoves = sParty_MayRoute110Mudkip},
},
[TRAINER_MAY_3] =
[TRAINER_MAY_ROUTE_119_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7443,11 +7443,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May3),
.party = {.NoItemDefaultMoves = sParty_May3},
.partySize = ARRAY_COUNT(sParty_MayRoute119Mudkip),
.party = {.NoItemDefaultMoves = sParty_MayRoute119Mudkip},
},
[TRAINER_MAY_4] =
[TRAINER_MAY_ROUTE_103_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7457,11 +7457,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May4),
.party = {.NoItemDefaultMoves = sParty_May4},
.partySize = ARRAY_COUNT(sParty_MayRoute103Treecko),
.party = {.NoItemDefaultMoves = sParty_MayRoute103Treecko},
},
[TRAINER_MAY_5] =
[TRAINER_MAY_ROUTE_110_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7471,11 +7471,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May5),
.party = {.NoItemDefaultMoves = sParty_May5},
.partySize = ARRAY_COUNT(sParty_MayRoute110Treecko),
.party = {.NoItemDefaultMoves = sParty_MayRoute110Treecko},
},
[TRAINER_MAY_6] =
[TRAINER_MAY_ROUTE_119_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7485,11 +7485,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May6),
.party = {.NoItemDefaultMoves = sParty_May6},
.partySize = ARRAY_COUNT(sParty_MayRoute119Treecko),
.party = {.NoItemDefaultMoves = sParty_MayRoute119Treecko},
},
[TRAINER_MAY_7] =
[TRAINER_MAY_ROUTE_103_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7499,11 +7499,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May7),
.party = {.NoItemDefaultMoves = sParty_May7},
.partySize = ARRAY_COUNT(sParty_MayRoute103Torchic),
.party = {.NoItemDefaultMoves = sParty_MayRoute103Torchic},
},
[TRAINER_MAY_8] =
[TRAINER_MAY_ROUTE_110_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7513,11 +7513,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May8),
.party = {.NoItemDefaultMoves = sParty_May8},
.partySize = ARRAY_COUNT(sParty_MayRoute110Torchic),
.party = {.NoItemDefaultMoves = sParty_MayRoute110Torchic},
},
[TRAINER_MAY_9] =
[TRAINER_MAY_ROUTE_119_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -7527,8 +7527,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May9),
.party = {.NoItemDefaultMoves = sParty_May9},
.partySize = ARRAY_COUNT(sParty_MayRoute119Torchic),
.party = {.NoItemDefaultMoves = sParty_MayRoute119Torchic},
},
[TRAINER_ISAAC_1] =
@ -8287,7 +8287,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Macey},
},
[TRAINER_BRENDAN_10] =
[TRAINER_BRENDAN_RUSTBORO_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -8297,11 +8297,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE,
.partySize = ARRAY_COUNT(sParty_Brendan10),
.party = {.NoItemDefaultMoves = sParty_Brendan10},
.partySize = ARRAY_COUNT(sParty_BrendanRustboroTreecko),
.party = {.NoItemDefaultMoves = sParty_BrendanRustboroTreecko},
},
[TRAINER_BRENDAN_11] =
[TRAINER_BRENDAN_RUSTBORO_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -8311,8 +8311,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE,
.partySize = ARRAY_COUNT(sParty_Brendan11),
.party = {.NoItemDefaultMoves = sParty_Brendan11},
.partySize = ARRAY_COUNT(sParty_BrendanRustboroMudkip),
.party = {.NoItemDefaultMoves = sParty_BrendanRustboroMudkip},
},
[TRAINER_PAXTON] =
@ -8357,7 +8357,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_GruntWeatherInst5},
},
[TRAINER_TABITHA_2] =
[TRAINER_TABITHA_MT_CHIMNEY] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_MAGMA_ADMIN,
@ -8367,8 +8367,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Tabitha2),
.party = {.NoItemDefaultMoves = sParty_Tabitha2},
.partySize = ARRAY_COUNT(sParty_TabithaMtChimney),
.party = {.NoItemDefaultMoves = sParty_TabithaMtChimney},
},
[TRAINER_JONATHAN] =
@ -8385,7 +8385,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Jonathan},
},
[TRAINER_BRENDAN_12] =
[TRAINER_BRENDAN_RUSTBORO_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -8395,11 +8395,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan12),
.party = {.NoItemDefaultMoves = sParty_Brendan12},
.partySize = ARRAY_COUNT(sParty_BrendanRustboroTorchic),
.party = {.NoItemDefaultMoves = sParty_BrendanRustboroTorchic},
},
[TRAINER_MAY_10] =
[TRAINER_MAY_RUSTBORO_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -8409,11 +8409,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN,
.partySize = ARRAY_COUNT(sParty_May10),
.party = {.NoItemDefaultMoves = sParty_May10},
.partySize = ARRAY_COUNT(sParty_MayRustboroMudkip),
.party = {.NoItemDefaultMoves = sParty_MayRustboroMudkip},
},
[TRAINER_MAXIE_1] =
[TRAINER_MAXIE_MAGMA_HIDEOUT] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_MAGMA_LEADER,
@ -8423,11 +8423,11 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Maxie1),
.party = {.NoItemDefaultMoves = sParty_Maxie1},
.partySize = ARRAY_COUNT(sParty_MaxieMagmaHideout),
.party = {.NoItemDefaultMoves = sParty_MaxieMagmaHideout},
},
[TRAINER_MAXIE_2] =
[TRAINER_MAXIE_MT_CHIMNEY] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_MAGMA_LEADER,
@ -8437,8 +8437,8 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Maxie2),
.party = {.NoItemDefaultMoves = sParty_Maxie2},
.partySize = ARRAY_COUNT(sParty_MaxieMtChimney),
.party = {.NoItemDefaultMoves = sParty_MaxieMtChimney},
},
[TRAINER_TIANA] =
@ -9183,7 +9183,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Ashley},
},
[TRAINER_WALLY_2] =
[TRAINER_WALLY_MAUVILLE] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9193,11 +9193,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Wally2),
.party = {.NoItemDefaultMoves = sParty_Wally2},
.partySize = ARRAY_COUNT(sParty_WallyMauville),
.party = {.NoItemDefaultMoves = sParty_WallyMauville},
},
[TRAINER_WALLY_3] =
[TRAINER_WALLY_VR_2] =
{
.partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9207,11 +9207,11 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Wally3),
.party = {.NoItemCustomMoves = sParty_Wally3},
.partySize = ARRAY_COUNT(sParty_WallyVR2),
.party = {.NoItemCustomMoves = sParty_WallyVR2},
},
[TRAINER_WALLY_4] =
[TRAINER_WALLY_VR_3] =
{
.partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9221,11 +9221,11 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Wally4),
.party = {.NoItemCustomMoves = sParty_Wally4},
.partySize = ARRAY_COUNT(sParty_WallyVR3),
.party = {.NoItemCustomMoves = sParty_WallyVR3},
},
[TRAINER_WALLY_5] =
[TRAINER_WALLY_VR_4] =
{
.partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9235,11 +9235,11 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Wally5),
.party = {.NoItemCustomMoves = sParty_Wally5},
.partySize = ARRAY_COUNT(sParty_WallyVR4),
.party = {.NoItemCustomMoves = sParty_WallyVR4},
},
[TRAINER_WALLY_6] =
[TRAINER_WALLY_VR_5] =
{
.partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9249,11 +9249,11 @@ const struct Trainer gTrainers[] = {
.items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Wally6),
.party = {.NoItemCustomMoves = sParty_Wally6},
.partySize = ARRAY_COUNT(sParty_WallyVR5),
.party = {.NoItemCustomMoves = sParty_WallyVR5},
},
[TRAINER_BRENDAN_13] =
[TRAINER_BRENDAN_LILYCOVE_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9263,11 +9263,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan13),
.party = {.NoItemDefaultMoves = sParty_Brendan13},
.partySize = ARRAY_COUNT(sParty_BrendanLilycoveMudkip),
.party = {.NoItemDefaultMoves = sParty_BrendanLilycoveMudkip},
},
[TRAINER_BRENDAN_14] =
[TRAINER_BRENDAN_LILYCOVE_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9277,11 +9277,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan14),
.party = {.NoItemDefaultMoves = sParty_Brendan14},
.partySize = ARRAY_COUNT(sParty_BrendanLilycoveTreecko),
.party = {.NoItemDefaultMoves = sParty_BrendanLilycoveTreecko},
},
[TRAINER_BRENDAN_15] =
[TRAINER_BRENDAN_LILYCOVE_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9291,11 +9291,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Brendan15),
.party = {.NoItemDefaultMoves = sParty_Brendan15},
.partySize = ARRAY_COUNT(sParty_BrendanLilycoveTorchic),
.party = {.NoItemDefaultMoves = sParty_BrendanLilycoveTorchic},
},
[TRAINER_MAY_11] =
[TRAINER_MAY_LILYCOVE_MUDKIP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9305,11 +9305,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May11),
.party = {.NoItemDefaultMoves = sParty_May11},
.partySize = ARRAY_COUNT(sParty_MayLilycoveMudkip),
.party = {.NoItemDefaultMoves = sParty_MayLilycoveMudkip},
},
[TRAINER_MAY_12] =
[TRAINER_MAY_LILYCOVE_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9319,11 +9319,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May12),
.party = {.NoItemDefaultMoves = sParty_May12},
.partySize = ARRAY_COUNT(sParty_MayLilycoveTreecko),
.party = {.NoItemDefaultMoves = sParty_MayLilycoveTreecko},
},
[TRAINER_MAY_13] =
[TRAINER_MAY_LILYCOVE_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -9333,8 +9333,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May13),
.party = {.NoItemDefaultMoves = sParty_May13},
.partySize = ARRAY_COUNT(sParty_MayLilycoveTorchic),
.party = {.NoItemDefaultMoves = sParty_MayLilycoveTorchic},
},
[TRAINER_JONAH] =
@ -10247,7 +10247,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout16},
},
[TRAINER_TABITHA_3] =
[TRAINER_TABITHA_MAGMA_HIDEOUT] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_MAGMA_ADMIN,
@ -10257,8 +10257,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE,
.partySize = ARRAY_COUNT(sParty_Tabitha3),
.party = {.NoItemDefaultMoves = sParty_Tabitha3},
.partySize = ARRAY_COUNT(sParty_TabithaMagmaHideout),
.party = {.NoItemDefaultMoves = sParty_TabithaMagmaHideout},
},
[TRAINER_DARCY] =
@ -10275,7 +10275,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Darcy},
},
[TRAINER_MAXIE_3] =
[TRAINER_MAXIE_MOSSDEEP] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_MAGMA_LEADER,
@ -10285,8 +10285,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_Maxie3),
.party = {.NoItemDefaultMoves = sParty_Maxie3},
.partySize = ARRAY_COUNT(sParty_MaxieMossdeep),
.party = {.NoItemDefaultMoves = sParty_MaxieMossdeep},
},
[TRAINER_PETE] =
@ -10751,7 +10751,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Cristin1},
},
[TRAINER_MAY_14] =
[TRAINER_MAY_RUSTBORO_TREECKO] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -10761,11 +10761,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May14),
.party = {.NoItemDefaultMoves = sParty_May14},
.partySize = ARRAY_COUNT(sParty_MayRustboroTreecko),
.party = {.NoItemDefaultMoves = sParty_MayRustboroTreecko},
},
[TRAINER_MAY_15] =
[TRAINER_MAY_RUSTBORO_TORCHIC] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_3,
@ -10775,8 +10775,8 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY,
.partySize = ARRAY_COUNT(sParty_May15),
.party = {.NoItemDefaultMoves = sParty_May15},
.partySize = ARRAY_COUNT(sParty_MayRustboroTorchic),
.party = {.NoItemDefaultMoves = sParty_MayRustboroTorchic},
},
[TRAINER_ROXANNE_2] =
@ -11941,7 +11941,7 @@ const struct Trainer gTrainers[] = {
.party = {.NoItemDefaultMoves = sParty_Leaf},
},
[TRAINER_BRENDAN_16] =
[TRAINER_BRENDAN_PLACEHOLDER] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_RS_PROTAG,
@ -11951,11 +11951,11 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = 0,
.partySize = ARRAY_COUNT(sParty_Brendan16),
.party = {.NoItemDefaultMoves = sParty_Brendan16},
.partySize = ARRAY_COUNT(sParty_BrendanLinkPlaceholder),
.party = {.NoItemDefaultMoves = sParty_BrendanLinkPlaceholder},
},
[TRAINER_MAY_16] =
[TRAINER_MAY_PLACEHOLDER] =
{
.partyFlags = 0,
.trainerClass = TRAINER_CLASS_RS_PROTAG,
@ -11965,7 +11965,7 @@ const struct Trainer gTrainers[] = {
.items = {},
.doubleBattle = FALSE,
.aiFlags = 0,
.partySize = ARRAY_COUNT(sParty_May16),
.party = {.NoItemDefaultMoves = sParty_May16},
.partySize = ARRAY_COUNT(sParty_MayLinkPlaceholder),
.party = {.NoItemDefaultMoves = sParty_MayLinkPlaceholder},
},
};

View File

@ -52,7 +52,7 @@ struct UnknownStruct1
const struct PokedexOption *pokedexList;
u8 unk4;
u8 unk5;
u16 unk6;
u16 numOptions;
};
struct UnknownStruct3
@ -99,7 +99,7 @@ struct PokedexView
u16 unk618;
u16 seenCount;
u16 ownCount;
u16 unk61E[4];
u16 monSpriteIds[4];
u16 selectedMonSpriteId;
u16 unk628;
u16 unk62A;
@ -154,18 +154,18 @@ void sub_80BC3DC(u8);
void sub_80BC47C(u8);
bool8 sub_80BC514(u8);
static void LoadPokedexBgPalette(u8);
void sub_80BC890(void);
void sub_80BC8D4(u8, u8);
static void FreeWindowAndBgBuffers(void);
static void CreatePokedexList(u8 dexMode, u8 sortMode);
static void CreateMonDexNum(u16, u8, u8, u16);
static void CreateCaughtBall(u16, u8, u8, u16);
static u8 CreateMonName(u16, u8, u8);
void sub_80BD28C(u8, u8, u16);
static void ClearMonListEntry(u8 x, u8 y, u16 unused);
static void CreateInitialPokemonSprites(u16, u16);
bool8 sub_80BD404(u8, u8, u8);
u16 sub_80BD69C(u16, u16);
void sub_80BD8D0(void);
static void UpdateSelectedMonSpriteId(void);
static bool8 UpdateSelectedMon(void);
u8 sub_80BDA40(void);
static u8 ClearMonSprites(void);
u16 GetPokemonSpriteToDisplay(u16);
u32 sub_80BDACC(u16, s16, s16);
static void CreateInterfaceSprites(u8);
@ -229,7 +229,7 @@ void sub_80C2064(u8, u8);
void sub_80C20F8(u8);
void sub_80C21D4(u8);
void sub_80C2294(u8);
u8 sub_80C2318(u8, u8);
static u8 GetSearchModeSelection(u8 taskId, u8 option);
void sub_80C23B8(u8);
void sub_80C2594(u8);
void sub_80C2618(const u8*);
@ -1136,9 +1136,34 @@ static const struct PokedexOption gDexSearchTypeOptions[] =
{NULL, NULL},
};
static const u8 gUnknown_0856EFAC[] = {0x00, 0x01};
static const u8 gUnknown_0856EFAE[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05};
static const u8 gDexSearchTypeIds[] = {
#define SEARCH_NAME 0
#define SEARCH_COLOR 1
#define SEARCH_TYPE_1 2
#define SEARCH_TYPE_2 3
#define SEARCH_ORDER 4
#define SEARCH_DEX_MODE 5
#define SORT_NUMERICAL 0
#define SORT_ALPHABETICAL 1
#define SORT_HEAVIEST 2
#define SORT_LIGHTEST 3
#define SORT_TALLEST 4
#define SORT_SMALLEST 5
static const u8 sPokedexModes[] = {DEX_MODE_HOENN, DEX_MODE_NATIONAL};
static const u8 sSortOptions[] =
{
SORT_NUMERICAL,
SORT_ALPHABETICAL,
SORT_HEAVIEST,
SORT_LIGHTEST,
SORT_TALLEST,
SORT_SMALLEST,
};
static const u8 gDexSearchTypeIds[] =
{
TYPE_NONE,
TYPE_NORMAL,
TYPE_FIGHTING,
@ -1159,7 +1184,7 @@ static const u8 gDexSearchTypeIds[] = {
TYPE_DARK,
};
static const struct UnknownStruct1 gUnknown_0856EFC8[] =
static const struct UnknownStruct1 sSearchOptions[] =
{
{gDexSearchAlphaOptions, 6, 7, 10},
{gDexSearchColorOptions, 8, 9, 11},
@ -1285,7 +1310,7 @@ static void ResetPokedexView(struct PokedexView *pokedexView)
pokedexView->seenCount = 0;
pokedexView->ownCount = 0;
for (i = 0; i < 4; i++)
pokedexView->unk61E[i] = 0xFFFF;
pokedexView->monSpriteIds[i] = 0xFFFF;
pokedexView->unk628 = 0;
pokedexView->unk62A = 0;
pokedexView->unk62C = 0;
@ -1367,7 +1392,7 @@ void CB2_Pokedex(void)
EnableInterrupts(1);
SetVBlankCallback(sub_80BB370);
SetMainCallback2(sub_80BB774);
sub_80BC8D4(sPokedexView->dexMode, sPokedexView->dexOrder);
CreatePokedexList(sPokedexView->dexMode, sPokedexView->dexOrder);
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x80);
break;
}
@ -1400,12 +1425,12 @@ void sub_80BB7D4(u8 taskId)
{
if ((gMain.newKeys & A_BUTTON) && sPokedexView->pokedexList[sPokedexView->selectedPokemon].seen)
{
sub_80BD8D0();
UpdateSelectedMonSpriteId();
BeginNormalPaletteFade(~(1 << (gSprites[sPokedexView->selectedMonSpriteId].oam.paletteNum + 16)), 0, 0, 0x10, RGB_BLACK);
gSprites[sPokedexView->selectedMonSpriteId].callback = MoveMonIntoPosition;
gTasks[taskId].func = LoadPageOnceMonFinishedMoving;
PlaySE(SE_PIN);
sub_80BC890();
FreeWindowAndBgBuffers();
}
else if (gMain.newKeys & START_BUTTON)
{
@ -1428,7 +1453,7 @@ void sub_80BB7D4(u8 taskId)
sPokedexView->unk618 = sPokedexView->dexOrder;
gTasks[taskId].func = sub_80BBD1C;
PlaySE(SE_PC_LOGIN);
sub_80BC890();
FreeWindowAndBgBuffers();
}
else if (gMain.newKeys & B_BUTTON)
{
@ -1474,14 +1499,14 @@ void sub_80BBA78(u8 taskId)
case 1: //LIST TOP
sPokedexView->selectedPokemon = 0;
sPokedexView->unk62C = 0x40;
sub_80BDA40();
ClearMonSprites();
CreateInitialPokemonSprites(sPokedexView->selectedPokemon, 0xE);
gMain.newKeys |= START_BUTTON; //Exit menu
break;
case 2: //LIST BOTTOM
sPokedexView->selectedPokemon = sPokedexView->pokemonListCount - 1;
sPokedexView->unk62C = sPokedexView->pokemonListCount * 16 + 0x30;
sub_80BDA40();
ClearMonSprites();
CreateInitialPokemonSprites(sPokedexView->selectedPokemon, 0xE);
gMain.newKeys |= START_BUTTON; //Exit menu
break;
@ -1542,7 +1567,7 @@ void sub_80BBD1C(u8 taskId)
{
if (!gTasks[gTasks[taskId].data[0]].isActive)
{
sub_80BDA40();
ClearMonSprites();
if (sPokedexView->unk64E != 0)
{
sPokedexView->selectedPokemon = 0;
@ -1570,8 +1595,8 @@ void sub_80BBDE8(u8 taskId)
if (!IsNationalPokedexEnabled())
gSaveBlock2Ptr->pokedex.mode = DEX_MODE_HOENN;
gSaveBlock2Ptr->pokedex.order = sPokedexView->dexOrder;
sub_80BDA40();
sub_80BC890();
ClearMonSprites();
FreeWindowAndBgBuffers();
DestroyTask(taskId);
SetMainCallback2(CB2_ReturnToFieldWithOpenMenu);
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
@ -1600,13 +1625,13 @@ void sub_80BBEB8(u8 taskId)
{
u32 a;
sub_80BD8D0();
UpdateSelectedMonSpriteId();
a = (1 << (gSprites[sPokedexView->selectedMonSpriteId].oam.paletteNum + 16));
gSprites[sPokedexView->selectedMonSpriteId].callback = MoveMonIntoPosition;
BeginNormalPaletteFade(~a, 0, 0, 0x10, RGB_BLACK);
gTasks[taskId].func = sub_80BC2D4;
PlaySE(SE_PIN);
sub_80BC890();
FreeWindowAndBgBuffers();
}
else if (gMain.newKeys & START_BUTTON)
{
@ -1623,7 +1648,7 @@ void sub_80BBEB8(u8 taskId)
sPokedexView->unk64E = 0;
gTasks[taskId].func = sub_80BBD1C;
PlaySE(SE_PC_LOGIN);
sub_80BC890();
FreeWindowAndBgBuffers();
}
else if (gMain.newKeys & B_BUTTON)
{
@ -1668,14 +1693,14 @@ static void HandleButtonPress_StartMenu(u8 taskId)
case 1: //LIST TOP
sPokedexView->selectedPokemon = 0;
sPokedexView->unk62C = 0x40;
sub_80BDA40();
ClearMonSprites();
CreateInitialPokemonSprites(sPokedexView->selectedPokemon, 0xE);
gMain.newKeys |= START_BUTTON;
break;
case 2: //LIST BOTTOM
sPokedexView->selectedPokemon = sPokedexView->pokemonListCount - 1;
sPokedexView->unk62C = sPokedexView->pokemonListCount * 16 + 0x30;
sub_80BDA40();
ClearMonSprites();
CreateInitialPokemonSprites(sPokedexView->selectedPokemon, 0xE);
gMain.newKeys |= START_BUTTON;
break;
@ -1747,8 +1772,8 @@ void sub_80BC3DC(u8 taskId)
sPokedexView->dexMode = DEX_MODE_HOENN;
sPokedexView->dexOrder = sPokedexView->unk618;
gTasks[taskId].func = sub_80BB78C;
sub_80BDA40();
sub_80BC890();
ClearMonSprites();
FreeWindowAndBgBuffers();
}
}
@ -1817,7 +1842,7 @@ bool8 sub_80BC514(u8 a)
break;
case 3:
if (a == 0)
sub_80BC8D4(sPokedexView->dexMode, sPokedexView->dexOrder);
CreatePokedexList(sPokedexView->dexMode, sPokedexView->dexOrder);
CreateInitialPokemonSprites(sPokedexView->selectedPokemon, 0xE);
sPokedexView->menuIsOpen = 0;
sPokedexView->menuY = 0;
@ -1871,7 +1896,7 @@ static void LoadPokedexBgPalette(u8 a)
LoadPalette(GetOverworldTextboxPalettePtr(), 0xF0, 32);
}
void sub_80BC890(void)
static void FreeWindowAndBgBuffers(void)
{
void* tilemapBuffer;
@ -1890,7 +1915,7 @@ void sub_80BC890(void)
Free(tilemapBuffer);
}
void sub_80BC8D4(u8 dexMode, u8 sortMode)
static void CreatePokedexList(u8 dexMode, u8 sortMode)
{
u16 vars[3]; //I have no idea why three regular variables are stored in an array, but whatever.
#define temp_dexCount vars[0]
@ -1923,7 +1948,7 @@ void sub_80BC8D4(u8 dexMode, u8 sortMode)
switch (sortMode)
{
case 0:
case SORT_NUMERICAL:
if (temp_isHoennDex)
{
for (i = 0; i < temp_dexCount; i++)
@ -1960,7 +1985,7 @@ void sub_80BC8D4(u8 dexMode, u8 sortMode)
}
}
break;
case 1:
case SORT_ALPHABETICAL:
for (i = 0; i < POKEMON_SLOTS_NUMBER - 1; i++)
{
temp_dexNum = gPokedexOrder_Alphabetical[i];
@ -1974,7 +1999,7 @@ void sub_80BC8D4(u8 dexMode, u8 sortMode)
}
}
break;
case 2:
case SORT_HEAVIEST:
for (i = NATIONAL_DEX_COUNT - 1; i >= 0; i--)
{
temp_dexNum = gPokedexOrder_Weight[i];
@ -1988,7 +2013,7 @@ void sub_80BC8D4(u8 dexMode, u8 sortMode)
}
}
break;
case 3:
case SORT_LIGHTEST:
for (i = 0; i < NATIONAL_DEX_COUNT; i++)
{
temp_dexNum = gPokedexOrder_Weight[i];
@ -2002,7 +2027,7 @@ void sub_80BC8D4(u8 dexMode, u8 sortMode)
}
}
break;
case 4:
case SORT_TALLEST:
for (i = NATIONAL_DEX_COUNT - 1; i >= 0; i--)
{
temp_dexNum = gPokedexOrder_Height[i];
@ -2016,7 +2041,7 @@ void sub_80BC8D4(u8 dexMode, u8 sortMode)
}
}
break;
case 5:
case SORT_SMALLEST:
for (i = 0; i < NATIONAL_DEX_COUNT; i++)
{
temp_dexNum = gPokedexOrder_Height[i];
@ -2065,11 +2090,11 @@ static void CreateMonListEntry(u8 direction, u16 b, u16 c)
{
if (_b < 0 || _b >= NATIONAL_DEX_COUNT || sPokedexView->pokedexList[_b].dexNum == 0xFFFF)
{
sub_80BD28C(0x11, i * 2, c);
ClearMonListEntry(0x11, i * 2, c);
}
else
{
sub_80BD28C(0x11, i * 2, c);
ClearMonListEntry(0x11, i * 2, c);
if (sPokedexView->pokedexList[_b].seen)
{
CreateMonDexNum(_b, 0x12, i * 2, c);
@ -2090,11 +2115,11 @@ static void CreateMonListEntry(u8 direction, u16 b, u16 c)
_b = b - 5;
if (_b < 0 || _b >= NATIONAL_DEX_COUNT || sPokedexView->pokedexList[_b].dexNum == 0xFFFF)
{
sub_80BD28C(0x11, sPokedexView->unk630 * 2, c);
ClearMonListEntry(0x11, sPokedexView->unk630 * 2, c);
}
else
{
sub_80BD28C(0x11, sPokedexView->unk630 * 2, c);
ClearMonListEntry(0x11, sPokedexView->unk630 * 2, c);
if (sPokedexView->pokedexList[_b].seen)
{
CreateMonDexNum(_b, 0x12, sPokedexView->unk630 * 2, c);
@ -2115,10 +2140,10 @@ static void CreateMonListEntry(u8 direction, u16 b, u16 c)
if (r2 > 15)
r2 -= 16;
if (_b < 0 || _b >= NATIONAL_DEX_COUNT || sPokedexView->pokedexList[_b].dexNum == 0xFFFF)
sub_80BD28C(0x11, r2 * 2, c);
ClearMonListEntry(0x11, r2 * 2, c);
else
{
sub_80BD28C(0x11, r2 * 2, c);
ClearMonListEntry(0x11, r2 * 2, c);
if (sPokedexView->pokedexList[_b].seen)
{
CreateMonDexNum(_b, 0x12, r2 * 2, c);
@ -2173,7 +2198,7 @@ static u8 CreateMonName(u16 num, u8 left, u8 top)
return StringLength(str);
}
void sub_80BD28C(u8 x, u8 y, u16 unused)
static void ClearMonListEntry(u8 x, u8 y, u16 unused)
{
FillWindowPixelRect(0, PIXEL_FILL(0), x * 8, y * 8, 0x60, 16);
}
@ -2187,7 +2212,7 @@ static void CreateInitialPokemonSprites(u16 selectedMon, u16 b)
gPaletteFade.bufferTransferDisabled = TRUE;
for (i = 0; i < 4; i++)
sPokedexView->unk61E[i] = 0xFFFF;
sPokedexView->monSpriteIds[i] = 0xFFFF;
sPokedexView->selectedMonSpriteId = 0xFFFF;
unk = GetPokemonSpriteToDisplay(selectedMon - 1);
@ -2236,8 +2261,8 @@ bool8 sub_80BD404(u8 a, u8 b, u8 c)
case 1:
for (i = 0; i < 4; i++)
{
if (sPokedexView->unk61E[i] != 0xFFFF)
gSprites[sPokedexView->unk61E[i]].data[5] += b;
if (sPokedexView->monSpriteIds[i] != 0xFFFF)
gSprites[sPokedexView->monSpriteIds[i]].data[5] += b;
}
foo = 16 * (c - sPokedexView->unk62E) / c;
SetGpuReg(REG_OFFSET_BG2VOFS, sPokedexView->initialVOffset + sPokedexView->unk632 * 16 - foo);
@ -2246,8 +2271,8 @@ bool8 sub_80BD404(u8 a, u8 b, u8 c)
case 2:
for (i = 0; i < 4; i++)
{
if (sPokedexView->unk61E[i] != 0xFFFF)
gSprites[sPokedexView->unk61E[i]].data[5] -= b;
if (sPokedexView->monSpriteIds[i] != 0xFFFF)
gSprites[sPokedexView->monSpriteIds[i]].data[5] -= b;
}
foo = 16 * (c - sPokedexView->unk62E) / c;
SetGpuReg(REG_OFFSET_BG2VOFS, sPokedexView->initialVOffset + sPokedexView->unk632 * 16 + foo);
@ -2331,7 +2356,7 @@ u16 sub_80BD69C(u16 selectedMon, u16 b)
for (i = 0; i < 7; i++)
selectedMon = sub_80C0E0C(1, selectedMon, 0, sPokedexView->pokemonListCount - 1);
sPokedexView->unk62C += 16 * (selectedMon - r6);
sub_80BDA40();
ClearMonSprites();
CreateInitialPokemonSprites(selectedMon, 0xE);
PlaySE(SE_Z_PAGE);
}
@ -2341,7 +2366,7 @@ u16 sub_80BD69C(u16 selectedMon, u16 b)
for (i = 0; i < 7; i++)
selectedMon = sub_80C0E0C(0, selectedMon, 0, sPokedexView->pokemonListCount - 1);
sPokedexView->unk62C += (selectedMon - r6) * 16;
sub_80BDA40();
ClearMonSprites();
CreateInitialPokemonSprites(selectedMon, 0xE);
PlaySE(SE_Z_PAGE);
}
@ -2365,13 +2390,13 @@ u16 sub_80BD69C(u16 selectedMon, u16 b)
return selectedMon;
}
void sub_80BD8D0(void)
static void UpdateSelectedMonSpriteId(void)
{
u16 i;
for (i = 0; i < 4; i++)
{
u16 spriteId = sPokedexView->unk61E[i];
u16 spriteId = sPokedexView->monSpriteIds[i];
if (gSprites[spriteId].pos2.x == 0 && gSprites[spriteId].pos2.y == 0 && spriteId != 0xFFFF)
sPokedexView->selectedMonSpriteId = spriteId;
@ -2432,16 +2457,16 @@ static bool8 UpdateSelectedMon(void)
return FALSE;
}
u8 sub_80BDA40(void)
static u8 ClearMonSprites(void)
{
u16 i;
for (i = 0; i < 4; i++)
{
if (sPokedexView->unk61E[i] != 0xFFFF)
if (sPokedexView->monSpriteIds[i] != 0xFFFF)
{
FreeAndDestroyMonPicSprite(sPokedexView->unk61E[i]);
sPokedexView->unk61E[i] = 0xFFFF;
FreeAndDestroyMonPicSprite(sPokedexView->monSpriteIds[i]);
sPokedexView->monSpriteIds[i] = 0xFFFF;
}
}
return FALSE;
@ -2463,7 +2488,7 @@ u32 sub_80BDACC(u16 num, s16 x, s16 y)
for (i = 0; i < 4; i++)
{
if (sPokedexView->unk61E[i] == 0xFFFF)
if (sPokedexView->monSpriteIds[i] == 0xFFFF)
{
u8 spriteId = CreateMonSpriteFromNationalDexNumber(num, x, y, i);
@ -2472,7 +2497,7 @@ u32 sub_80BDACC(u16 num, s16 x, s16 y)
gSprites[spriteId].data[0] = 0;
gSprites[spriteId].data[1] = i;
gSprites[spriteId].data[2] = NationalPokedexNumToSpecies(num);
sPokedexView->unk61E[i] = spriteId;
sPokedexView->monSpriteIds[i] = spriteId;
return spriteId;
}
}
@ -2725,8 +2750,8 @@ void sub_80BE4E0(struct Sprite *sprite)
if (sPokedexView->unk64A != 0 && sPokedexView->unk64A != 3)
{
FreeAndDestroyMonPicSprite(sPokedexView->unk61E[data1]);
sPokedexView->unk61E[data1] = 0xFFFF;
FreeAndDestroyMonPicSprite(sPokedexView->monSpriteIds[data1]);
sPokedexView->monSpriteIds[data1] = 0xFFFF;
}
else
{
@ -2751,8 +2776,8 @@ void sub_80BE4E0(struct Sprite *sprite)
if ((sprite->data[5] <= -64 || sprite->data[5] >= 64) && sprite->data[0] != 0)
{
FreeAndDestroyMonPicSprite(sPokedexView->unk61E[data1]);
sPokedexView->unk61E[data1] = 0xFFFF;
FreeAndDestroyMonPicSprite(sPokedexView->monSpriteIds[data1]);
sPokedexView->monSpriteIds[data1] = 0xFFFF;
}
}
}
@ -3022,7 +3047,7 @@ void LoadInfoScreen(u8 taskId)
}
}
static void FreeWindowAndBgBuffers(void)
static void FreeWindowAndBgBuffers_(void)
{
void *r0;
FreeAllWindowBuffers();
@ -3148,7 +3173,7 @@ void BeginReturnToPokedex(u8 taskId)
if (!gPaletteFade.active)
{
FreeAndDestroyMonPicSprite(gTasks[taskId].tMonSpriteId);
FreeWindowAndBgBuffers();
FreeWindowAndBgBuffers_();
DestroyTask(taskId);
}
}
@ -4664,7 +4689,7 @@ int sub_80C0F30(u8 dexMode, u8 sortMode, u8 abcGroup, u8 bodyColor, u8 type1, u8
u16 resultsCount;
u8 types[2];
sub_80BC8D4(dexMode, sortMode);
CreatePokedexList(dexMode, sortMode);
for (i = 0, resultsCount = 0; i < NATIONAL_DEX_COUNT; i++)
{
@ -4983,11 +5008,11 @@ void sub_80C170C(u8 taskId)
sPokedexView->unk62A = 0x40;
gUnknown_02039B50 = 0;
sPokedexView->unk610 = 0;
gSaveBlock2Ptr->pokedex.mode = sub_80C2318(taskId, 5);
gSaveBlock2Ptr->pokedex.mode = GetSearchModeSelection(taskId, SEARCH_DEX_MODE);
if (!IsNationalPokedexEnabled())
gSaveBlock2Ptr->pokedex.mode = DEX_MODE_HOENN;
sPokedexView->unk614 = gSaveBlock2Ptr->pokedex.mode;
gSaveBlock2Ptr->pokedex.order = sub_80C2318(taskId, 4);
gSaveBlock2Ptr->pokedex.order = GetSearchModeSelection(taskId, SEARCH_ORDER);
sPokedexView->unk618 = gSaveBlock2Ptr->pokedex.order;
PlaySE(SE_PC_OFF);
gTasks[taskId].func = sub_80C1D38;
@ -5044,14 +5069,14 @@ void sub_80C170C(u8 taskId)
void sub_80C19A4(u8 taskId)
{
u8 r10 = sub_80C2318(taskId, 5);
u8 r9 = sub_80C2318(taskId, 4);
u8 r8 = sub_80C2318(taskId, 0);
u8 r6 = sub_80C2318(taskId, 1);
u8 r4 = sub_80C2318(taskId, 2);
u8 r0 = sub_80C2318(taskId, 3);
u8 dexMode = GetSearchModeSelection(taskId, SEARCH_DEX_MODE);
u8 sortMode = GetSearchModeSelection(taskId, SEARCH_ORDER);
u8 abcGroup = GetSearchModeSelection(taskId, SEARCH_NAME);
u8 bodyColor = GetSearchModeSelection(taskId, SEARCH_COLOR);
u8 type1 = GetSearchModeSelection(taskId, SEARCH_TYPE_1);
u8 type2 = GetSearchModeSelection(taskId, SEARCH_TYPE_2);
sub_80C0F30(r10, r9, r8, r6, r4, r0);
sub_80C0F30(dexMode, sortMode, abcGroup, bodyColor, type1, type2);
gTasks[taskId].func = sub_80C1A4C;
}
@ -5081,8 +5106,8 @@ void sub_80C1AB8(u8 taskId)
if (sPokedexView->pokemonListCount != 0)
{
sPokedexView->unk64E = 1;
sPokedexView->dexMode = sub_80C2318(taskId, 5);
sPokedexView->dexOrder = sub_80C2318(taskId, 4);
sPokedexView->dexMode = GetSearchModeSelection(taskId, SEARCH_DEX_MODE);
sPokedexView->dexOrder = GetSearchModeSelection(taskId, SEARCH_ORDER);
gTasks[taskId].func = sub_80C1D38;
PlaySE(SE_PC_OFF);
}
@ -5102,8 +5127,8 @@ void sub_80C1B64(u8 taskId)
sub_80C21D4(0);
r0 = gTasks[taskId].data[1];
p1 = &gTasks[taskId].data[gUnknown_0856EFC8[r0].unk4];
p2 = &gTasks[taskId].data[gUnknown_0856EFC8[r0].unk5];
p1 = &gTasks[taskId].data[sSearchOptions[r0].unk4];
p2 = &gTasks[taskId].data[sSearchOptions[r0].unk5];
gTasks[taskId].data[14] = *p1;
gTasks[taskId].data[15] = *p2;
sub_80C2294(taskId);
@ -5123,10 +5148,10 @@ void sub_80C1BCC(u8 taskId)
bool8 r3;
r1 = gTasks[taskId].data[1];
r8 = gUnknown_0856EFC8[r1].pokedexList;
p1 = &gTasks[taskId].data[gUnknown_0856EFC8[r1].unk4];
p2 = &gTasks[taskId].data[gUnknown_0856EFC8[r1].unk5];
r2 = gUnknown_0856EFC8[r1].unk6 - 1;
r8 = sSearchOptions[r1].pokedexList;
p1 = &gTasks[taskId].data[sSearchOptions[r1].unk4];
p2 = &gTasks[taskId].data[sSearchOptions[r1].unk5];
r2 = sSearchOptions[r1].numOptions - 1;
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_PIN);
@ -5474,9 +5499,9 @@ void sub_80C21D4(u8 a)
void sub_80C2294(u8 taskId)
{
const struct PokedexOption *r6 = gUnknown_0856EFC8[gTasks[taskId].data[1]].pokedexList;
const u16 *r8 = &gTasks[taskId].data[gUnknown_0856EFC8[gTasks[taskId].data[1]].unk4];
const u16 *r7 = &gTasks[taskId].data[gUnknown_0856EFC8[gTasks[taskId].data[1]].unk5];
const struct PokedexOption *r6 = sSearchOptions[gTasks[taskId].data[1]].pokedexList;
const u16 *r8 = &gTasks[taskId].data[sSearchOptions[gTasks[taskId].data[1]].unk4];
const u16 *r7 = &gTasks[taskId].data[sSearchOptions[gTasks[taskId].data[1]].unk5];
u16 i;
u16 j;
@ -5486,32 +5511,32 @@ void sub_80C2294(u8 taskId)
sub_80C2618(r6[*r8 + *r7].description);
}
u8 sub_80C2318(u8 taskId, u8 b)
static u8 GetSearchModeSelection(u8 taskId, u8 option)
{
const u16 *ptr1 = &gTasks[taskId].data[gUnknown_0856EFC8[b].unk4];
const u16 *ptr2 = &gTasks[taskId].data[gUnknown_0856EFC8[b].unk5];
const u16 *ptr1 = &gTasks[taskId].data[sSearchOptions[option].unk4];
const u16 *ptr2 = &gTasks[taskId].data[sSearchOptions[option].unk5];
u16 type = *ptr1 + *ptr2;
switch (b)
switch (option)
{
default:
return 0;
case 5:
return gUnknown_0856EFAC[type];
case 4:
return gUnknown_0856EFAE[type];
case 0:
case SEARCH_DEX_MODE:
return sPokedexModes[type];
case SEARCH_ORDER:
return sSortOptions[type];
case SEARCH_NAME:
if (type == 0)
return 0xFF;
else
return type;
case 1:
case SEARCH_COLOR:
if (type == 0)
return 0xFF;
else
return type - 1;
case 2:
case 3:
case SEARCH_TYPE_1:
case SEARCH_TYPE_2:
return gDexSearchTypeIds[type];
}
}
@ -5560,8 +5585,8 @@ void sub_80C23B8(u8 taskId)
bool8 sub_80C244C(u8 taskId)
{
u8 val1 = gTasks[taskId].data[1];
const u16 *ptr = &gTasks[taskId].data[gUnknown_0856EFC8[val1].unk5];
u16 val2 = gUnknown_0856EFC8[val1].unk6 - 1;
const u16 *ptr = &gTasks[taskId].data[sSearchOptions[val1].unk5];
u16 val2 = sSearchOptions[val1].numOptions - 1;
if (val2 > 5 && *ptr != 0)
return FALSE;
@ -5572,8 +5597,8 @@ bool8 sub_80C244C(u8 taskId)
bool8 sub_80C2494(u8 taskId)
{
u8 val1 = gTasks[taskId].data[1];
const u16 *ptr = &gTasks[taskId].data[gUnknown_0856EFC8[val1].unk5];
u16 val2 = gUnknown_0856EFC8[val1].unk6 - 1;
const u16 *ptr = &gTasks[taskId].data[sSearchOptions[val1].unk5];
u16 val2 = sSearchOptions[val1].numOptions - 1;
if (val2 > 5 && *ptr < val2 - 5)
return FALSE;