-
Notifications
You must be signed in to change notification settings - Fork 10
/
script02.s
109 lines (92 loc) · 3.66 KB
/
script02.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
include macros.s
include mainsym.s
; Script 2, parking garage conversation
org scriptCodeStart
dc.w Scientist2
; Scientist 2 conversation
;
; Parameters: -
; Returns: -
; Modifies: various
Scientist2: ldy #C_SCIENTIST ;Ensure sprite file on the same frame as first script exec
jsr EnsureSpriteFile
lda actXH+ACTI_PLAYER ;Wait until player close enough
cmp #$37
bcc S2_Wait
cmp #$3c
bcs S2_Wait
lda actYH+ACTI_PLAYER
cmp #$29
bcs S2_Wait
lda actMB+ACTI_PLAYER
lsr
bcc S2_Wait
lda scriptVariable
asl
tay
lda S2_JumpTbl,y
sta S2_Jump+1
lda S2_JumpTbl+1,y
sta S2_Jump+2
S2_Jump: jmp $0000
S2_Wait: rts
S2_JumpTbl: dc.w S2_Dialogue1
dc.w S2_Dialogue2
dc.w S2_Dialogue3
dc.w S2_Dialogue4
S2_Dialogue1: jsr AddQuestScore
inc scriptVariable
ldy lvlDataActBitsStart+$04
lda lvlStateBits,y ;Enable rotordrone now
ora #$04
sta lvlStateBits,y
ldy #ACT_SCIENTIST2
gettext txtParkingGarage1
jmp SpeakLine
S2_Dialogue2: inc scriptVariable
ldy #ACT_SCIENTIST3
gettext txtParkingGarage2
jmp SpeakLine
S2_Dialogue3: inc scriptVariable
ldy #ACT_SCIENTIST2
gettext txtParkingGarage3
jmp SpeakLine
S2_Dialogue4: lda #ITEM_COMMGEAR
ldx #1
jsr AddItem
ldx actIndex
lda #$00
sta temp4
lda #ITEM_SECURITYPASS
jsr DI_ItemNumber
lda actD,x
asl
lda #$7f
adc #$00
ldx temp8
jsr MoveActorX ;Move item to scientist's facing direction
lda #-16*8
jsr MoveActorY
lda #SFX_PICKUP
jsr PlaySfx
lda #$00
sta actScriptF ;No more script exec here
ldy #ACT_SCIENTIST2
gettext txtParkingGarage4
jmp SpeakLine
; Note: reordered to compress better
txtParkingGarage4:
dc.b 34,"GOOD LUCK.",34,0
txtParkingGarage2:
dc.b 34,"COMMON SENSE WOULD DICTATE WE ATTEMPT TO ESCAPE. BUT THESE MACHINES' HIGHLY COORDINATED ACTIONS "
dc.b "SUGGEST A CENTRAL AI, WHICH I DIDN'T KNOW WE HAD DEVELOPED. "
dc.b "THERE MAY BE MORE THAN OUR LIVES AT STAKE.",34,0
txtParkingGarage1:
dc.b 34,"I SEE VIKTOR DIDN'T MAKE IT. BUT YOU DID, THAT'S WHAT COUNTS. AMOS, NANOSURGEON. SHE'S LINDA, CYBER-PSYCHOLOGIST. "
dc.b "YOU'VE SEEN HOW OUR CREATIONS HAVE TURNED ON US. TOTAL INTERNET AND PHONE BLACKOUT. WE'RE STUCK AND HELP IS UNLIKELY. "
dc.b "AS THE ONLY ENHANCED PERSON IN THIS ROOM, RIGHT NOW YOU'RE OUR BEST BET.",34,0
txtParkingGarage3:
dc.b 34,"YES. WE MUST FIND OUT THEIR ULTIMATE AIM BEYOND JUST KILLING EVERYONE. "
dc.b "TAKE THIS SECURITY PASS TO ACCESS THE UPPER LABS, PLUS A WIRELESS CAMERA/RADIO "
dc.b "SET SO WE CAN STAY IN TOUCH.",34,0
checkscriptend