diff --git a/constants/trainer_constants.asm b/constants/trainer_constants.asm index a7a3dd5..52d8902 100644 --- a/constants/trainer_constants.asm +++ b/constants/trainer_constants.asm @@ -776,8 +776,8 @@ DEF KRIS EQU __trainer_class__ trainerclass LORELEI ; 57 const LORELEI1 - trainerclass XXX ; 58 South guy - const XXX1 + trainerclass UTHER ; 58 South guy + const UTHER1 trainerclass IMPOSTEROAK ; 56 const OAK @@ -814,6 +814,18 @@ DEF KRIS EQU __trainer_class__ trainerclass JACK const JACKY + + trainerclass SIGAL + const SIGAL1 + + trainerclass KUYE + const KUYE1 + + trainerclass SHAM + const SHAM1 + + trainerclass CARL + const CARL1 DEF TOPAZ EQU __trainer_class__ DEF NUM_TRAINER_CLASSES EQU __trainer_class__ - 1 diff --git a/data/trainers/attributes.asm b/data/trainers/attributes.asm index c4f466b..15f4574 100644 --- a/data/trainers/attributes.asm +++ b/data/trainers/attributes.asm @@ -561,4 +561,28 @@ TrainerClassAttributes: dw AI_BASIC | AI_SETUP | AI_TYPES | AI_CAUTIOUS | AI_STATUS | AI_RISKY dw CONTEXT_USE | SWITCH_SOMETIMES +; Sigal + db FULL_RESTORE, FULL_HEAL ; items + db 25 ; base reward + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY | AI_OPPORTUNIST | AI_TYPES + dw CONTEXT_USE | SWITCH_SOMETIMES + +; Kuye + db FULL_RESTORE, FULL_HEAL ; items + db 25 ; base reward + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY | AI_OPPORTUNIST | AI_TYPES + dw CONTEXT_USE | SWITCH_SOMETIMES + +; Sham + db FULL_RESTORE, NO_ITEM ; items + db 25 ; base reward + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY | AI_OPPORTUNIST | AI_TYPES + dw CONTEXT_USE | SWITCH_SOMETIMES + +; Carl + db FULL_RESTORE, NO_ITEM ; items + db 25 ; base reward + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY | AI_OPPORTUNIST | AI_TYPES + dw CONTEXT_USE | SWITCH_SOMETIMES + assert_table_length NUM_TRAINER_CLASSES diff --git a/data/trainers/class_names.asm b/data/trainers/class_names.asm index d306f33..4dd79e9 100644 --- a/data/trainers/class_names.asm +++ b/data/trainers/class_names.asm @@ -80,18 +80,22 @@ TrainerClassNames:: li "SPORTSMAN" li "???" li "???" - li "LEADER" - li "LEADER" - li "LEADER" + li "LEADER" ; WALKER + li "TRAINER" ; LORELEI + li "LEADER" ; UTHER li "LEADER?" ; Imposter Oak - li "LEADER" - li "TRAINER" - li "LEADER" - li "LEADER" + li "LEADER" ; AGATHA + li "TRAINER" ; GIOVANNI (coat) + li "LEADER" ; GIOVANNI (boss?) + li "LEADER" ; GREEN li "BALLSMITH" - li "EXECUTIVE" - li "EXECUTIVE" - li "PROFESSOR" + li "EXECUTIVE" ; ARIANA + li "EXECUTIVE" ; ARCHER + li "PROFESSOR" ; BLUE li "ELDER" li "SHINJUKU" ; JACK + li "LEADER" ; SIGAL + li "LEADER" ; KUYE + li "EXECUTIVE" ; SHAM + li "EXECUTIVE" ; CARL assert_list_length NUM_TRAINER_CLASSES diff --git a/data/trainers/dvs.asm b/data/trainers/dvs.asm index 60ae2d4..66830c0 100644 --- a/data/trainers/dvs.asm +++ b/data/trainers/dvs.asm @@ -95,4 +95,8 @@ TrainerClassDVs: dn 13, 12, 13, 13 ; PROF.BLUE dn 12, 15, 13, 13 ; ELDER (HP Ground) dn 12, 15, 13, 13 ; JACK (HP Ground) + dn 13, 12, 13, 13 ; SIGAL (HP TBA) + dn 13, 12, 13, 13 ; KUYE (HP TBA) + dn 13, 12, 13, 13 ; SHAM + dn 13, 12, 13, 13 ; CARL assert_table_length NUM_TRAINER_CLASSES diff --git a/data/trainers/encounter_music.asm b/data/trainers/encounter_music.asm index 545ee5f..9170441 100644 --- a/data/trainers/encounter_music.asm +++ b/data/trainers/encounter_music.asm @@ -97,4 +97,8 @@ TrainerEncounterMusic:: db MUSIC_OFFICER_ENCOUNTER ; PROF.BLUE db MUSIC_SAGE_ENCOUNTER ; ELDER db MUSIC_HIKER_ENCOUNTER ; JACK + db MUSIC_OFFICER_ENCOUNTER ; SIGAL + db MUSIC_OFFICER_ENCOUNTER ; KUYE + db MUSIC_ROCKET_ENCOUNTER ; SHAM + db MUSIC_ROCKET_ENCOUNTER ; CARL assert_table_length NUM_TRAINER_CLASSES + 1 diff --git a/data/trainers/gendered_trainers.asm b/data/trainers/gendered_trainers.asm index 4f04eb4..52e4b69 100644 --- a/data/trainers/gendered_trainers.asm +++ b/data/trainers/gendered_trainers.asm @@ -38,6 +38,8 @@ MaleTrainers: db AEROFOSSIL db ELDER db JACK + db SIGAL + db CARL .End FemaleTrainers: @@ -54,4 +56,6 @@ FemaleTrainers: db CHANNELER db PAINTER db KABUFOSSIL + db KUYE + db SHAM .End diff --git a/data/trainers/genders.asm b/data/trainers/genders.asm index 70153f4..bcff863 100644 --- a/data/trainers/genders.asm +++ b/data/trainers/genders.asm @@ -96,4 +96,8 @@ BTTrainerClassGenders: db MALE ; PROF.BLUE db MALE ; ELDER db MALE ; JACK + db MALE ; SIGAL + db FEMALE ; KUYE + db FEMALE ; SHAM + db MALE ; CARL assert_table_length NUM_TRAINER_CLASSES diff --git a/data/trainers/leaders.asm b/data/trainers/leaders.asm index e83a091..d2a31bd 100644 --- a/data/trainers/leaders.asm +++ b/data/trainers/leaders.asm @@ -21,11 +21,11 @@ GymLeaders: ; db RED ; For now Nihon bosses will be here. db WALKER - db LORELEI - db XXX + db KUYE + db UTHER db IMPOSTEROAK db AGATHA - db LEADERGIOVANNI + db SIGAL db GREEN ; fallthrough KantoGymLeaders: diff --git a/data/trainers/palettes.asm b/data/trainers/palettes.asm index 1841aea..f0e206f 100644 --- a/data/trainers/palettes.asm +++ b/data/trainers/palettes.asm @@ -103,6 +103,10 @@ INCBIN "gfx/trainers/archer.gbcpal", middle_colors INCBIN "gfx/trainers/blue_professor.gbcpal", middle_colors INCBIN "gfx/trainers/elder.gbcpal", middle_colors INCBIN "gfx/trainers/jack.gbcpal", middle_colors +INCBIN "gfx/trainers/sigal.gbcpal", middle_colors +INCBIN "gfx/trainers/kuye.gbcpal", middle_colors +INCBIN "gfx/trainers/executive_f.gbcpal", middle_colors +INCBIN "gfx/trainers/executive_m.gbcpal", middle_colors EnbyPalette: INCLUDE "gfx/player/topaz.pal" diff --git a/data/trainers/parties_new_classes.asm b/data/trainers/parties_new_classes.asm index bc5914d..9164034 100644 --- a/data/trainers/parties_new_classes.asm +++ b/data/trainers/parties_new_classes.asm @@ -753,5 +753,74 @@ TwinsGroup: dw DRATINI dw THUNDER_WAVE, TWISTER, FLAMETHROWER, HEADBUTT db -1 ; end - + end_list_items + +SigalGroup: + next_list_item ; SIGAL1 (1) + db "SIGAL@", TRAINERTYPE_MOVES + db 60 + dw TOTARTLE ; MAWTLE + dw CRUNCH, SURF, RAPID_SPIN, PURSUIT + db 60 + dw JUNGELA + dw SLEEP_POWDER, GIGA_DRAIN, FAINT_ATTACK, BODY_SLAM + db 60 + dw MUK ; MUKA + dw CRUNCH, SLUDGE_BOMB, EXPLOSION, FIRE_BLAST + db 60 + dw CROAKOZUNA + dw BELLY_DRUM, BODY_SLAM, CROSS_CHOP, FAINT_ATTACK + db 60 + dw TERRADOS + dw EARTHQUAKE, CRUNCH, SUNNY_DAY, FIRE_BLAST + db 60 + dw TYRANITAR + dw ROCK_SLASH, PURSUIT, EARTHQUAKE, FIRE_BLAST + db -1 ; end + end_list_items + +KuyeGroup: + next_list_item ; KUYE1 (1) + db "KUYE@", TRAINERTYPE_MOVES + db 60 + dw JUNGELA ; CACTORMUS + dw SPIKES, EARTHQUAKE, EXPLOSION, LEECH_SEED + db 60 + dw MAMOSWINE + dw EARTHQUAKE, ICE_BEAM, ROCK_SLIDE, WHIRLWIND + db 60 + dw DONPHAN + dw RAPID_SPIN, EARTHQUAKE, BODY_SLAM, ANCIENTPOWER + db 60 + dw GREAT_TUSK ; TRAMPEL + dw BELLY_DRUM, EARTHQUAKE, BODY_SLAM, ROCK_SLIDE + db 60 + dw GLIGAR ; GLISCOR + dw SWORDS_DANCE, EARTHQUAKE, WING_ATTACK, SANDSTORM + db 60 + dw GUARDIA + dw SWORDS_DANCE, EARTHQUAKE, ICE_BEAM, ROCK_SLIDE + db -1 ; end + end_list_items + +ShamGroup: + next_list_item ; SHAM1 (1) + db "KUYE@", TRAINERTYPE_NORMAL + db 60 + dw SLOWKING + db 60 + dw PERSIAN + db -1 ; end + end_list_items + +CarlGroup: + next_list_item ; CARL1 (1) + db "KUYE@", TRAINERTYPE_NORMAL + db 60 + dw HIRSUSWINE + db 60 + dw MAMOSWINE + db 60 + dw HOUNDOOM + db -1 ; end end_list_items diff --git a/data/trainers/party_pointers.asm b/data/trainers/party_pointers.asm index c557f33..8f4a010 100644 --- a/data/trainers/party_pointers.asm +++ b/data/trainers/party_pointers.asm @@ -96,4 +96,8 @@ TrainerGroups: dba ProfBlueGroup dba ElderGroup dba JackGroup + dba SigalGroup + dba KuyeGroup + dba ShamGroup + dba CarlGroup assert_table_length NUM_TRAINER_CLASSES diff --git a/data/trainers/pic_pointers.asm b/data/trainers/pic_pointers.asm index 79ebac8..a62995c 100644 --- a/data/trainers/pic_pointers.asm +++ b/data/trainers/pic_pointers.asm @@ -96,4 +96,8 @@ TrainerPicPointers:: dba ProfBluePic dba ElderPic dba JackPic + dba SigalPic + dba KuyePic + dba ShamPic + dba CarlPic assert_table_length NUM_TRAINER_CLASSES diff --git a/data/trainers/sprites.asm b/data/trainers/sprites.asm index b325726..cada67d 100644 --- a/data/trainers/sprites.asm +++ b/data/trainers/sprites.asm @@ -68,7 +68,7 @@ BTTrainerClassSprites: db SPRITE_OFFICER db SPRITE_ROCKET_GIRL db SPRITE_SUPER_NERD ; placeholder for mysticalman eusine - db SPRITE_KAREN ; placeholder until the channeler overworld sprite is added. + db SPRITE_CHANNELER ; CHANNELER db SPRITE_BIKER ; Cue Ball db SPRITE_POKEFAN_M ; Engineer db SPRITE_ROCKER ; Rocker @@ -94,4 +94,8 @@ BTTrainerClassSprites: db SPRITE_RED ; Prof.Blue db SPRITE_SAGE ; ELDER db SPRITE_ROCKER ; JACK + db SPRITE_RED ; SIGAL + db SPRITE_RED ; KUYE + db SPRITE_RED ; SHAM + db SPRITE_RED ; CARL assert_table_length NUM_TRAINER_CLASSES diff --git a/gfx/pics.asm b/gfx/pics.asm index cbaea69..96f2532 100644 --- a/gfx/pics.asm +++ b/gfx/pics.asm @@ -1055,3 +1055,7 @@ PainterPic: INCBIN "gfx/trainers/painter.2bpp.lz" SoldierPic: INCBIN "gfx/trainers/soldier.2bpp.lz" SportsmanPic: INCBIN "gfx/trainers/sportsman.2bpp.lz" JackPic: INCBIN "gfx/trainers/jack.2bpp.lz" +SigalPic: INCBIN "gfx/trainers/sigal.2bpp.lz" +KuyePic: INCBIN "gfx/trainers/kuye.2bpp.lz" +ShamPic: INCBIN "gfx/trainers/executive_f.2bpp.lz" +CarlPic: INCBIN "gfx/trainers/executive_m.2bpp.lz" diff --git a/gfx/trainers/kuye.png b/gfx/trainers/kuye.png new file mode 100644 index 0000000..76a1e81 Binary files /dev/null and b/gfx/trainers/kuye.png differ diff --git a/gfx/trainers/lorelei.png b/gfx/trainers/lorelei.png index 3c46482..5b05c4d 100644 Binary files a/gfx/trainers/lorelei.png and b/gfx/trainers/lorelei.png differ diff --git a/gfx/trainers/sigal.png b/gfx/trainers/sigal.png index 0760f0d..fc7e738 100644 Binary files a/gfx/trainers/sigal.png and b/gfx/trainers/sigal.png differ