Skip to content

Commit 7c38686

Browse files
QoL #10: better structuring of trainer data (allowing splitting it into banks)
1 parent 1b58fe0 commit 7c38686

File tree

8 files changed

+154
-254
lines changed

8 files changed

+154
-254
lines changed

constants/trainer_data_constants.asm

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,13 @@ SWITCH_SOMETIMES EQU 1 << SWITCH_SOMETIMES_F
4646
SWITCH_RARELY EQU 1 << SWITCH_RARELY_F
4747
SWITCH_OFTEN EQU 1 << SWITCH_OFTEN_F
4848

49-
; TrainerTypes indexes (see engine/battle/read_trainer_party.asm)
49+
; TrainerTypes bits (see engine/battle/read_trainer_party.asm)
5050
const_def
51-
const TRAINERTYPE_NORMAL
52-
const TRAINERTYPE_MOVES
53-
const TRAINERTYPE_ITEM
54-
const TRAINERTYPE_ITEM_MOVES
51+
const TRAINERTYPE_MOVES_F
52+
const TRAINERTYPE_ITEM_F
53+
54+
; Trainer party types (see data/trainers/parties.asm)
55+
TRAINERTYPE_NORMAL EQU 0
56+
TRAINERTYPE_MOVES EQU 1 << TRAINERTYPE_MOVES_F
57+
TRAINERTYPE_ITEM EQU 1 << TRAINERTYPE_ITEM_F
58+
TRAINERTYPE_ITEM_MOVES EQU TRAINERTYPE_MOVES | TRAINERTYPE_ITEM ;backwards compatibility

data/trainers/parties.asm

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
INCLUDE "data/trainers/party_pointers.asm"
2-
3-
Trainers:
41
; Trainer data structure:
52
; - db "NAME@", TRAINERTYPE_* constant
63
; - 1 to 6 Pokémon:
@@ -10,6 +7,8 @@ Trainers:
107
; * for TRAINERTYPE_ITEM_MOVES: db level, species, item, 4 moves
118
; - db -1 ; end
129

10+
SECTION "Enemy Trainer Parties", ROMX
11+
1312
FalknerGroup:
1413
; FALKNER (1)
1514
db "FALKNER@", TRAINERTYPE_MOVES

data/trainers/party_pointers.asm

Lines changed: 67 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -2,70 +2,70 @@
22

33
TrainerGroups:
44
; entries correspond to trainer classes (see constants/trainer_constants.asm)
5-
dw FalknerGroup
6-
dw WhitneyGroup
7-
dw BugsyGroup
8-
dw MortyGroup
9-
dw PryceGroup
10-
dw JasmineGroup
11-
dw ChuckGroup
12-
dw ClairGroup
13-
dw Rival1Group
14-
dw PokemonProfGroup
15-
dw WillGroup
16-
dw PKMNTrainerGroup
17-
dw BrunoGroup
18-
dw KarenGroup
19-
dw KogaGroup
20-
dw ChampionGroup
21-
dw BrockGroup
22-
dw MistyGroup
23-
dw LtSurgeGroup
24-
dw ScientistGroup
25-
dw ErikaGroup
26-
dw YoungsterGroup
27-
dw SchoolboyGroup
28-
dw BirdKeeperGroup
29-
dw LassGroup
30-
dw JanineGroup
31-
dw CooltrainerMGroup
32-
dw CooltrainerFGroup
33-
dw BeautyGroup
34-
dw PokemaniacGroup
35-
dw GruntMGroup
36-
dw GentlemanGroup
37-
dw SkierGroup
38-
dw TeacherGroup
39-
dw SabrinaGroup
40-
dw BugCatcherGroup
41-
dw FisherGroup
42-
dw SwimmerMGroup
43-
dw SwimmerFGroup
44-
dw SailorGroup
45-
dw SuperNerdGroup
46-
dw Rival2Group
47-
dw GuitaristGroup
48-
dw HikerGroup
49-
dw BikerGroup
50-
dw BlaineGroup
51-
dw BurglarGroup
52-
dw FirebreatherGroup
53-
dw JugglerGroup
54-
dw BlackbeltGroup
55-
dw ExecutiveMGroup
56-
dw PsychicGroup
57-
dw PicnickerGroup
58-
dw CamperGroup
59-
dw ExecutiveFGroup
60-
dw SageGroup
61-
dw MediumGroup
62-
dw BoarderGroup
63-
dw PokefanMGroup
64-
dw KimonoGirlGroup
65-
dw TwinsGroup
66-
dw PokefanFGroup
67-
dw RedGroup
68-
dw BlueGroup
69-
dw OfficerGroup
70-
dw GruntFGroup
71-
dw MysticalmanGroup
5+
dba FalknerGroup
6+
dba WhitneyGroup
7+
dba BugsyGroup
8+
dba MortyGroup
9+
dba PryceGroup
10+
dba JasmineGroup
11+
dba ChuckGroup
12+
dba ClairGroup
13+
dba Rival1Group
14+
dba PokemonProfGroup
15+
dba WillGroup
16+
dba PKMNTrainerGroup
17+
dba BrunoGroup
18+
dba KarenGroup
19+
dba KogaGroup
20+
dba ChampionGroup
21+
dba BrockGroup
22+
dba MistyGroup
23+
dba LtSurgeGroup
24+
dba ScientistGroup
25+
dba ErikaGroup
26+
dba YoungsterGroup
27+
dba SchoolboyGroup
28+
dba BirdKeeperGroup
29+
dba LassGroup
30+
dba JanineGroup
31+
dba CooltrainerMGroup
32+
dba CooltrainerFGroup
33+
dba BeautyGroup
34+
dba PokemaniacGroup
35+
dba GruntMGroup
36+
dba GentlemanGroup
37+
dba SkierGroup
38+
dba TeacherGroup
39+
dba SabrinaGroup
40+
dba BugCatcherGroup
41+
dba FisherGroup
42+
dba SwimmerMGroup
43+
dba SwimmerFGroup
44+
dba SailorGroup
45+
dba SuperNerdGroup
46+
dba Rival2Group
47+
dba GuitaristGroup
48+
dba HikerGroup
49+
dba BikerGroup
50+
dba BlaineGroup
51+
dba BurglarGroup
52+
dba FirebreatherGroup
53+
dba JugglerGroup
54+
dba BlackbeltGroup
55+
dba ExecutiveMGroup
56+
dba PsychicGroup
57+
dba PicnickerGroup
58+
dba CamperGroup
59+
dba ExecutiveFGroup
60+
dba SageGroup
61+
dba MediumGroup
62+
dba BoarderGroup
63+
dba PokefanMGroup
64+
dba KimonoGirlGroup
65+
dba TwinsGroup
66+
dba PokefanFGroup
67+
dba RedGroup
68+
dba BlueGroup
69+
dba OfficerGroup
70+
dba GruntFGroup
71+
dba MysticalmanGroup

0 commit comments

Comments
 (0)