-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathscript20.s
189 lines (166 loc) · 6.24 KB
/
script20.s
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
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
include macros.s
include mainsym.s
; Script 20, old tunnels computers + give laptop
org scriptCodeStart
dc.w LabComputer4
dc.w GiveLaptop2
dc.w LabComputer1
dc.w LabComputer2
dc.w LabComputer3
dc.w HackerFinal
; Lab computer note #4
;
; Parameters: -
; Returns: -
; Modifies: various
LabComputer4: lda #ACT_HACKER
jsr FindLevelActor
bcc LC_NoActor
lda lvlActOrg,y
cmp #$0f+ORG_GLOBAL
bne LC_NoActor
lda lvlActX,y
cmp #$6e
bcc LC_NoActor
cmp #$78
bcs LC_NoActor
lda #$88
sta lvlActX,y
lda #$48
sta lvlActY,y
lda #$10+AIMODE_TURNTO
sta lvlActF,y
lda #<EP_GIVELAPTOP2
ldx #>EP_GIVELAPTOP2
sta actScriptEP+2
stx actScriptF+2
lda #$00
sta scriptVariable
LC_NoActor: gettext txtNote4
DisplayCommon: jsr SetupTextScreen
ldy #0
sty temp1
sty temp2
jsr PrintMultipleRows
jsr WaitForExit
jmp CenterPlayer
; Lab computer note #1
;
; Parameters: -
; Returns: -
; Modifies: various
LabComputer1: lda codes+6*3+2
ora #$30
sta txtNumber3
gettext txtNote1
bne DisplayCommon
; Lab computer note #2
;
; Parameters: -
; Returns: -
; Modifies: various
LabComputer2: gettext txtNote2
bne DisplayCommon
; Lab computer note #3
;
; Parameters: -
; Returns: -
; Modifies: various
LabComputer3: gettext txtNote3
bne DisplayCommon
; Jeff gives laptop after reading apocalyptic note
;
; Parameters: -
; Returns: -
; Modifies: various
GiveLaptop2: lda scriptVariable
bne GiveLaptop2b
inc scriptVariable
gettext txtGiveLaptop2
H_SpeakCommon: ldy #ACT_HACKER
jmp SpeakLine
GiveLaptop2b: lda #SFX_PICKUP
jsr PlaySfx
lda #ITEM_LAPTOP
ldx #1
jsr AddItem
lda #0
sta actScriptF+2
HF_TooFar:
SEL_Wait: rts
; Jeff interaction if return to lab after installing laptop
;
; Parameters: -
; Returns: -
; Modifies: various
HackerFinal: lda actXH+ACTI_PLAYER
cmp #$84
bcc HF_TooFar
jsr AddQuestScore
lda #$00
sta actScriptF+2
gettext txtHackerFinal
bne H_SpeakCommon
; Messages
;0123456789012345678901234567890123456789
txtNote1: dc.b "NOTE #1",0
dc.b " ",0
dc.b "SUCCESS: THE AI MATRIX IS STABLE AND",0
dc.b "CAPABLE OF COHERENT THOUGHT.",0
dc.b " ",0
dc.b "TO NOT FORGET, THE THIRD NUMBER FOR THE",0
dc.b "SUITE LAB: "
txtNumber3: dc.b "X. SIMULATIONS WERE PROMISING",0
dc.b "BUT ONLY A LIVE TEST CAN FULLY CONFIRM.",0
dc.b "TOO BAD IT'S TOO LATE FOR THE CONTRACT.",0
textjump txtNormanSignature
txtNote2: ;0123456789012345678901234567890123456789
dc.b "NOTE #2",0
dc.b " ",0
dc.b "I HAVE GIVEN THE AI FREE REIGN OF THE",0
dc.b "NETHER TUNNEL AND THE INVENTION CHAMBER.",0
dc.b "MEANWHILE THIS LAB IS SHIELDED FROM IT",0
dc.b "AS A SECURITY PRECAUTION.",0
dc.b " ",0
dc.b "I GAVE IT A QUESTION TO PONDER: HOW TO",0
dc.b "SECURE THE FUTURE OF MANKIND?",0
textjump txtNormanSignature
txtNote3: ;0123456789012345678901234567890123456789
dc.b "NOTE #3",0
dc.b " ",0
dc.b "SETBACK! THE AI REDEFINED ROBOTS AS THE",0
dc.b "'NEW HUMANS' THAT SHALL INHERIT EARTH.",0
dc.b "IT HAS BEGUN TO CONSTRUCT SOMETHING, BUT",0
dc.b "REFUSES TO EXPLAIN IT TO ME.",0
dc.b " ",0
dc.b "ADDENDUM: IT'S CALLED 'JORMUNGANDR.' A",0
dc.b "HUGE BURROWING MACHINE.",0
dc.b " ",0
dc.b "LUCKILY THE PLUG CAN BE PULLED AT ANY",0
dc.b "MOMENT.",0
textjump txtNormanSignature
;0123456789012345678901234567890123456789
txtNote4: dc.b "NOTE #4",0
dc.b " ",0
dc.b "THE AI HAS REPURPOSED THE FIBER-OPTIC",0
dc.b "LINK BETWEEN THE SERVER VAULT AND THE",0
dc.b "INVENTION CHAMBER.",0
dc.b " ",0
dc.b "I CALL IT A 'BI-DIRECTIONAL REVENGE",0
dc.b "PROTOCOL.' IF COMMUNICATION CEASES DUE",0
dc.b "TO EITHER JORMUNGANDR OR THE AI BEING",0
dc.b "DISABLED, THE ONE THAT REMAINS LAUNCHES",0
dc.b "ITS ATTACK.",0
dc.b " ",0
dc.b "IT'S ALSO TAKEN CONTROL OF THE MILITARY",0
dc.b "LINE AND INSTALLED EMP SHIELDING. I NEED",0
dc.b "TO CONTACT RUTGER URGENTLY.",0
txtNormanSignature:
dc.b " ",0
dc.b "- NORMAN",0,0
txtGiveLaptop2: dc.b 34,"SORRY FOR SNEAKING UP ON YOU, BUT THAT IF ANYTHING IS EVIL. TAKE THIS LAPTOP. "
dc.b "IF YOU CAN FIND THE LINK, WE MIGHT BE ABLE TO TRICK THE PROTOCOL. THEN IT SHOULD "
dc.b "BE SAFE TO BLAST BOTH OF THEM TO HELL. OF COURSE.. IT COULD ALSO GO HORRIBLY WRONG.",34,0
txtHackerFinal: dc.b 34,"HEY. YOU SHOULD BE KICKING JORMUNGANDR AND CONSTRUCT ASS. I'VE GOT NO WORRIES HERE. "
dc.b "WELL, EXCEPT WHETHER YOU'LL COME BACK ALIVE. TRY TO DO THAT, OK?",34,0
checkscriptend