1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
|
BrunoScript: ; 762d6 (1d:62d6)
call BrunoScript_762ec
call EnableAutoTextBoxDrawing
ld hl, BrunoTrainerHeaders
ld de, BrunoScriptPointers
ld a, [W_BRUNOCURSCRIPT]
call ExecuteCurMapScriptInTable
ld [W_BRUNOCURSCRIPT], a
ret
BrunoScript_762ec: ; 762ec (1d:62ec)
ld hl, wd126
bit 5, [hl]
res 5, [hl]
ret z
ld a, [wd864]
bit 1, a
jr z, .asm_76300
ld a, $5
jp BrunoScript_76302
.asm_76300
ld a, $24
BrunoScript_76302: ; 76302 (1d:6302)
ld [wd09f], a
ld bc, $2
predef_jump ReplaceTileBlock
BrunoScript_7630d: ; 7630d (1d:630d)
xor a
ld [W_BRUNOCURSCRIPT], a
ret
BrunoScriptPointers: ; 76312 (1d:6312)
dw BrunoScript0
dw DisplayEnemyTrainerTextAndStartBattle
dw BrunoScript2
dw BrunoScript3
dw BrunoScript4
BrunoScript4: ; 7631c (1d:631c)
ret
BrunoScript_7631d: ; 7631d (1d:631d)
ld hl, wSimulatedJoypadStatesEnd
ld a, D_UP
ld [hli], a
ld [hli], a
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
ld a, $6
ld [wSimulatedJoypadStatesIndex], a
call StartSimulatingJoypadStates
ld a, $3
ld [W_BRUNOCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
ret
BrunoScript0: ; 76339 (1d:6339)
ld hl, CoordsData_7637a
call ArePlayerCoordsInArray
jp nc, CheckFightingMapTrainers
xor a
ld [hJoyPressed], a
ld [hJoyHeld], a
ld [wSimulatedJoypadStatesEnd], a
ld [wSimulatedJoypadStatesIndex], a
ld a, [wWhichTrade]
cp $3
jr c, .asm_7635d
ld hl, wd864
bit 6, [hl]
set 6, [hl]
jr z, BrunoScript_7631d
.asm_7635d
ld a, $2
ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
call StartSimulatingJoypadStates
ld a, $3
ld [W_BRUNOCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
ret
CoordsData_7637a: ; 7637a (1d:637a)
db $0A,$04
db $0A,$05
db $0B,$04
db $0B,$05
db $FF
BrunoScript3: ; 76383 (1d:6383)
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
call Delay3
xor a
ld [wJoyIgnore], a
ld [W_BRUNOCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
ret
BrunoScript2: ; 76396 (1d:6396)
call EndTrainerBattle
ld a, [W_ISINBATTLE]
cp $ff
jp z, BrunoScript_7630d
ld a, $1
ld [hSpriteIndexOrTextID], a
jp DisplayTextID
BrunoTextPointers: ; 763a8 (1d:63a8)
dw BrunoText1
dw BrunoDontRunAwayText
BrunoTrainerHeaders: ; 763ac (1d:63ac)
BrunoTrainerHeader0: ; 763ac (1d:63ac)
db $1 ; flag's bit
db ($0 << 4) ; trainer's view range
dw wd864 ; flag's byte
dw BrunoBeforeBattleText ; TextBeforeBattle
dw BrunoAfterBattleText ; TextAfterBattle
dw BrunoEndBattleText ; TextEndBattle
dw BrunoEndBattleText ; TextEndBattle
db $ff
BrunoText1: ; 763b9 (1d:63b9)
TX_ASM
ld hl, BrunoTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
BrunoBeforeBattleText: ; 763c3 (1d:63c3)
TX_FAR _BrunoBeforeBattleText
db "@"
BrunoEndBattleText: ; 763c8 (1d:63c8)
TX_FAR _BrunoEndBattleText
db "@"
BrunoAfterBattleText: ; 763cd (1d:63cd)
TX_FAR _BrunoAfterBattleText
db "@"
BrunoDontRunAwayText: ; 763d2 (1d:63d2)
TX_FAR _BrunoDontRunAwayText
db "@"
|