1 | #
|
---|
2 | # tctf_cutscene.bsl
|
---|
3 | #
|
---|
4 |
|
---|
5 | func void
|
---|
6 | Intro(
|
---|
7 | void)
|
---|
8 | {
|
---|
9 | fade_out 0 0 0 0
|
---|
10 | cm_interpolate IntroCam01 0
|
---|
11 | sleep f14
|
---|
12 | begin_cutscene weapon
|
---|
13 | marketing_line_off=1
|
---|
14 | letterbox 1
|
---|
15 | sleep f60
|
---|
16 | invincible=1
|
---|
17 | obj_create 401 402
|
---|
18 | obj_create 404 407
|
---|
19 | fade_in 90
|
---|
20 | #Outside shot of TCTF
|
---|
21 | cm_interpolate IntroCam01 0
|
---|
22 | playback 0 IntroKonokoSet
|
---|
23 | sleep f300
|
---|
24 | #Griffin and Guy talking
|
---|
25 | chr_create 1201 start
|
---|
26 | chr_create 1202 start
|
---|
27 | playback 1202 IntroTCTF01
|
---|
28 | #make this box animation last as long as conversation
|
---|
29 | chr_envanim 1201 IntroGriffinBox01
|
---|
30 | chr_animate 1201 COMGUYsit_idle1 1800
|
---|
31 | #Conversation between the two
|
---|
32 | cm_interpolate IntroCam02 0
|
---|
33 | sound_dialog_play c14_50_01scigoon1
|
---|
34 | cinematic_start (COPtalking, 180, 180, 15, 1, 20, false)
|
---|
35 | sound_dialog_play_block pause
|
---|
36 | cm_interpolate IntroCamGriffin 0
|
---|
37 | sound_dialog_play c14_50_02griffin
|
---|
38 | cinematic_start (GRIFtalking, 180, 180, 16, 3, 20, true)
|
---|
39 | sound_dialog_play_block pause
|
---|
40 | #TCTF walks out
|
---|
41 | sound_music_start atm_low_perc2 0.8
|
---|
42 | cm_interpolate IntroCam02 0
|
---|
43 | playback 1202 IntroTCTF02
|
---|
44 | sound_dialog_play c14_50_03scigoon1
|
---|
45 | sleep f240
|
---|
46 | cinematic_stop (COPtalking, 15, 20)
|
---|
47 | cinematic_stop (GRIFtalking, 15, 20)
|
---|
48 | sleep f60
|
---|
49 | door_open 70
|
---|
50 | door_jam 70
|
---|
51 | sleep f100
|
---|
52 | #KONOKO on roof
|
---|
53 | playback 0 IntroKonoko01
|
---|
54 | cm_interpolate IntroCamInside01 0
|
---|
55 | cm_interpolate_block IntroCamInside02 400
|
---|
56 | sleep f400
|
---|
57 | cm_anim both IntroCamRoof
|
---|
58 | sleep f210
|
---|
59 | #Konoko falls into view
|
---|
60 | cm_anim both IntroCamFall01
|
---|
61 | chr_envanim 0 IntroKonBox01 norotation
|
---|
62 | chr_animate 0 KONOKOlev18_IntroFall01 140
|
---|
63 | #Griffin gets surprised
|
---|
64 | chr_delete 1202
|
---|
65 | cm_anim_block both IntroCamStand01
|
---|
66 | chr_envanim 1201 IntroGriffinBox02 norotation
|
---|
67 | chr_animate 1201 GRIFINlev18_IntroStand 110
|
---|
68 | env_anim 401 401
|
---|
69 | sleep f88
|
---|
70 | #Konoko enters office
|
---|
71 | playback 0 IntroKonoko02
|
---|
72 | cm_interpolate_block IntroCamKonAim01 0
|
---|
73 | cm_interpolate_block IntroCamKonAim02 350
|
---|
74 | sleep f140
|
---|
75 | cinematic_start(KONangryfront, 180, 180, 18, 6, 30, true)
|
---|
76 | sound_dialog_play c14_50_04konoko
|
---|
77 | sound_dialog_play_block pause
|
---|
78 | cinematic_stop (KONangryfront, 18, 30)
|
---|
79 | #Conversation with Griffin
|
---|
80 | playback 1201 IntroGriffin
|
---|
81 | cm_interpolate IntroCamGriffin02 0
|
---|
82 | cinematic_start(GRIFtalkangry, 180,180,18,6,30, true)
|
---|
83 | sound_dialog_play c14_50_05griffin
|
---|
84 | sound_dialog_play_block pause
|
---|
85 | cinematic_stop (GRIFtalkangry, 18, 30)
|
---|
86 | #Griffin's office goes down
|
---|
87 | sound_music_volume atm_low_perc2 0.0 0.5
|
---|
88 | sound_music_stop atm_low_perc2
|
---|
89 | music_intro
|
---|
90 | env_show 403 0
|
---|
91 | obj_create 403 403
|
---|
92 | cm_anim both IntroCamEscape01
|
---|
93 | chr_envanim 1201 IntroGriffinBox03 norotation
|
---|
94 | env_setanim 401 IntroChair02
|
---|
95 | env_anim 402 407
|
---|
96 | cutscene_sync mark
|
---|
97 | sound_ambient_start c14_46_11grifdesk
|
---|
98 | sleep f16
|
---|
99 | playback 0 IntroKonokoAim fromhere
|
---|
100 | cm_anim_block both IntroCamEscape02
|
---|
101 | cm_wait
|
---|
102 | cm_reset
|
---|
103 | obj_kill 401 407
|
---|
104 | # look out Stefan is editing scripts; yo foolios need to turn back on the laser sight :O)
|
---|
105 | marketing_line_off=0
|
---|
106 | end_cutscene
|
---|
107 | invincible=0
|
---|
108 | chr_delete 1201
|
---|
109 | door_unjam 70
|
---|
110 | door_close 70
|
---|
111 | # who is a foolio? the foo or the foo who follows him?
|
---|
112 | s1
|
---|
113 | }
|
---|
114 |
|
---|
115 |
|
---|
116 | func void
|
---|
117 | GrifSpawn(
|
---|
118 | void)
|
---|
119 | {
|
---|
120 | ai2_spawn ZomGrif
|
---|
121 | chr_invincible ZomGrif 1
|
---|
122 | sleep f2
|
---|
123 | ai2_passive ZomGrif 1
|
---|
124 | ai2_setmovementmode ZomGrif walk
|
---|
125 | playback ZomGrif ZomGrifDraw
|
---|
126 | }
|
---|
127 |
|
---|
128 | func void create_zomshin(void)
|
---|
129 | {
|
---|
130 | ai2_spawn ZomShin
|
---|
131 | ai2_passive ZomShin 1
|
---|
132 | chr_shadow ZomShin 0
|
---|
133 | chr_invincible ZomShin 1
|
---|
134 | chr_unstoppable ZomShin 1
|
---|
135 | chr_nocollision ZomShin 1
|
---|
136 | chr_neutral ZomShin 1
|
---|
137 | chr_lock_active ZomShin
|
---|
138 | }
|
---|
139 |
|
---|
140 | func void
|
---|
141 | Base(
|
---|
142 | void)
|
---|
143 | {
|
---|
144 | begin_cutscene
|
---|
145 | #place Griffin here earlier
|
---|
146 | #chr_neutral ZomGrif 1
|
---|
147 | sleep f20
|
---|
148 | #playback ZomGrif BaseGriffin01
|
---|
149 | cm_interpolate BaseCam01 180
|
---|
150 | sleep f210
|
---|
151 | #place Konoko
|
---|
152 | playback 0 BaseKonoko01
|
---|
153 | cm_interpolate BaseCam02 0
|
---|
154 | cm_interpolate_block BaseCam04 500
|
---|
155 | sound_dialog_play c14_51_01konoko
|
---|
156 | cinematic_start(KONangryfront, 180,180,19,7,20, true)
|
---|
157 | sound_dialog_play_block pause
|
---|
158 | cinematic_stop (KONangryfront, 19, 20)
|
---|
159 | cm_interpolate BaseCam01 0
|
---|
160 | cm_interpolate_block BaseCam03 600
|
---|
161 | sound_dialog_play c14_51_02griffin
|
---|
162 | cinematic_start(GRIFtalkangry, 180,180,20,9,20, true)
|
---|
163 | sound_dialog_play_block pause
|
---|
164 | cutscene_sync mark
|
---|
165 | sound_ambient_start c15_04_23_effects
|
---|
166 | sound_dialog_play c14_51_03griffin
|
---|
167 | #Shinzom comes out of ground
|
---|
168 | create_zomshin
|
---|
169 | chr_envanim ZomShin ChairShinBox01
|
---|
170 | obj_create 171 174
|
---|
171 | env_anim 171 174
|
---|
172 | obj_shade 171 174 .5 .5 .5
|
---|
173 | cm_anim both ChairCamZomUp
|
---|
174 | #chr_create ZomShin start
|
---|
175 | #chr_neutral ZomShin 1
|
---|
176 | sleep f270
|
---|
177 | particle zombiespark pulse
|
---|
178 |
|
---|
179 | cm_wait
|
---|
180 |
|
---|
181 | particle zombient start
|
---|
182 | #hide Chair object, show chair gunk
|
---|
183 | env_show 171 1
|
---|
184 | env_show 172 1
|
---|
185 | env_show 173 1
|
---|
186 | env_show 174 1
|
---|
187 | obj_kill 171 174
|
---|
188 | cm_interpolate BaseCamShin01 0
|
---|
189 | playback ZomShin BaseShin
|
---|
190 | cm_interpolate_block BaseCamShin02 300
|
---|
191 | sound_dialog_play_block
|
---|
192 | cinematic_stop (GRIFtalkangry, 20, 20)
|
---|
193 | sound_dialog_play c14_51_04shinatama
|
---|
194 | cinematic_start(SHINZOMlistening, 180,180,19,7,20, false)
|
---|
195 | sound_dialog_play_block
|
---|
196 | cinematic_stop (SHINZOMlistening, 19, 20)
|
---|
197 | sleep f30
|
---|
198 | particle Forcefield do start
|
---|
199 | sound_ambient_start zomshin_amb_loop 0.1
|
---|
200 | sound_ambient_volume zomshin_amb_loop 1.0 1.0
|
---|
201 | cm_interpolate BaseCam02 0
|
---|
202 | sound_dialog_play c14_51_05konoko
|
---|
203 | cinematic_start(KONscared, 180,180,20,9,20, true)
|
---|
204 | sound_dialog_play_block
|
---|
205 | cinematic_stop (KONscared, 20, 20)
|
---|
206 | playback ZomShin BaseShin
|
---|
207 | cm_interpolate_block BaseCamShin02 0
|
---|
208 | sound_dialog_play c14_51_06shinatama
|
---|
209 | cinematic_start(SHINZOMlistening, 180,180,19,7,20, false)
|
---|
210 | particle zombiesteam start
|
---|
211 | sound_dialog_play_block pause
|
---|
212 | cinematic_stop (SHINZOMlistening, 19, 20)
|
---|
213 | # cm_reset
|
---|
214 | # trig_show 9
|
---|
215 | # trig_activate 9
|
---|
216 | end_cutscene
|
---|
217 | music_zom
|
---|
218 | ai2_passive ZomShin 1
|
---|
219 | ai2_makeignoreplayer ZomGrif 1
|
---|
220 | zombie_round_2
|
---|
221 | # ai2_allpassive 1
|
---|
222 | # remove line below after zomshin puzzle is fixed
|
---|
223 | # Zom
|
---|
224 | }
|
---|
225 |
|
---|
226 | func void fade_out_zom_amb(void)
|
---|
227 | {
|
---|
228 | sound_ambient_volume zomshin_amb_loop 0.0 1.0
|
---|
229 | sleep 60
|
---|
230 | sound_ambient_stop zomshin_amb_loop
|
---|
231 | }
|
---|
232 |
|
---|
233 | func void
|
---|
234 | Zom(
|
---|
235 | void)
|
---|
236 | {
|
---|
237 | env_show 1010 0
|
---|
238 | particle Forcefield do stop
|
---|
239 | fork fade_out_zom_amb
|
---|
240 | begin_cutscene
|
---|
241 | marketing_line_off=1
|
---|
242 | #Shinatama will already be created
|
---|
243 | #show the destruction of the turrets and the forcefield around Griffin
|
---|
244 | #cm_interpolate ZomCamGrif01 0
|
---|
245 | ai2_setmovementmode ZomGrif walk
|
---|
246 | playback ZomGrif ZomGrifDrawSet
|
---|
247 | #sleep f120
|
---|
248 | #Shinatama gets up out of chair
|
---|
249 | chr_shadow ZomShin 1
|
---|
250 | chr_invincible ZomShin 0
|
---|
251 | chr_unstoppable ZomShin 0
|
---|
252 | chr_envanim ZomShin ZomShinBox01 norotation
|
---|
253 | chr_animate ZomShin SHINZOMlev18_Free
|
---|
254 | cm_anim both ZomCamFree01
|
---|
255 | sleep f90
|
---|
256 | cutscene_sync mark
|
---|
257 | sound_ambient_start c_shin_escape
|
---|
258 | cm_wait
|
---|
259 | #Griffin says "what are you doing?"
|
---|
260 | cm_interpolate ZomCamGrif01 0
|
---|
261 | sound_dialog_play c14_52_01griffin
|
---|
262 | cinematic_start(GRIFtalkangry, 180,180,19,7,20, false)
|
---|
263 | sound_dialog_play_block
|
---|
264 | cinematic_stop(GRIFtalkangry, 19,20)
|
---|
265 | #Shinatama approaches Griffin
|
---|
266 | cm_interpolate ZomCamShinStart 0
|
---|
267 | playback ZomShin ZomShinSet
|
---|
268 | chr_animate ZomShin SHINZOMwalk1 180
|
---|
269 | chr_nocollision ZomShin 0
|
---|
270 | sleep f175
|
---|
271 | #Griffin says GET BACK OR I'll SHOOT
|
---|
272 | #cm_interpolate ZomCamGrif01 0
|
---|
273 | #playback ZomGrif ZomGrifDrawSet
|
---|
274 | #sleep f120
|
---|
275 | #Shin keeps coming
|
---|
276 | #cm_interpolate ZomCamShinApproach 0
|
---|
277 | playback ZomShin ZomShinWalk
|
---|
278 | chr_animate ZomShin SHINZOMwalk1 600
|
---|
279 | #sleep f120
|
---|
280 | #Griffin draws weapon
|
---|
281 | cm_interpolate ZomCamGrif01 0
|
---|
282 | playback ZomGrif ZomGrifDrawSet
|
---|
283 | sleep f30
|
---|
284 | #sound_dialog_play c14_52_01bgriffin
|
---|
285 | playback ZomGrif ZomGrifDraw
|
---|
286 | sleep f60
|
---|
287 | #konoko drops weapon
|
---|
288 | playback 0 ZomKonokoDrop
|
---|
289 | #Shinatama Approaches Griffin
|
---|
290 | cm_interpolate ZomCamBoth 0
|
---|
291 | sleep f180
|
---|
292 | #Griffin shoots
|
---|
293 | cm_interpolate ZomCamGrifShoot 0
|
---|
294 | playback ZomGrif ZomGrifShoot
|
---|
295 | sleep f50
|
---|
296 | #Shinatama gets hit
|
---|
297 | cm_interpolate ZomCamShinDie 0
|
---|
298 | chr_animate ZomShin SHINZOMshot 126
|
---|
299 | sound_ambient_start c_shin_die 1.0
|
---|
300 | sleep f120
|
---|
301 | #Show Griffin over Shinatama
|
---|
302 | cm_interpolate ZomCamDead 0
|
---|
303 | playback ZomGrif ZomGriffinKilled
|
---|
304 | chr_animate ZomShin SHINZOMfallen_front 1000
|
---|
305 | sleep f10
|
---|
306 | cm_interpolate ZomCamKonokoBehind 270
|
---|
307 | playback 0 ZomKonokoBehind
|
---|
308 | sleep f280
|
---|
309 | #Griffin turns and gets thrown
|
---|
310 | # CB: we force omnipotent off because it breaks this cutscene (you kill
|
---|
311 | # griffin prematurely)
|
---|
312 | omnipotent = 0
|
---|
313 | chr_invincible ZomGrif 0
|
---|
314 | ai2_kill ZomShin
|
---|
315 | chr_neutral ZomGrif 0
|
---|
316 | cm_interpolate ZomCamThrow 0
|
---|
317 | playback ZomGrif ZomGriffinTurn
|
---|
318 | playback 0 ZomKonokoThrow
|
---|
319 | sleep f140
|
---|
320 | #Knoko holds him down
|
---|
321 | cm_interpolate ZomCamKonokoAim02 0
|
---|
322 | chr_neutral ZomGrif 1
|
---|
323 | chr_envanim ZomGrif ZomGriffinBox01 norotation
|
---|
324 | chr_envanim 0 ZomKonokoBox01 norotation
|
---|
325 | chr_animate 0 KONOKOlev18_ZomAim 300
|
---|
326 | chr_animate ZomGrif GRIFINlev18_ZomAim 500
|
---|
327 | sound_dialog_play c14_52_02konoko
|
---|
328 | cinematic_start(KONangryfront, 180,180,19,7,20, false)
|
---|
329 | sound_dialog_play_block pause
|
---|
330 | #Looking down at griffin
|
---|
331 | #chr_envanim 0 ZomKonokoBox01 norotation
|
---|
332 | #chr_envanim ZomGrif ZomGriffinBox01 norotation
|
---|
333 | #chr_animate 0 KONOKOlev18_ZomAim 300
|
---|
334 | #chr_animate ZomGrif GRIFINlev18_ZomAim 500
|
---|
335 | #cm_interpolate ZomCamKonokoAim01 0
|
---|
336 | #KONoko gets off Griffin
|
---|
337 | #cm_interpolate ZomCamKonokoAim02 0
|
---|
338 | chr_envanim 0 ZomKonokoBox02 norotation
|
---|
339 | chr_envanim ZomGrif ZomGriffinBox01 norotation
|
---|
340 | chr_animate ZomGrif GRIFINlev18_ZomAim 500
|
---|
341 | chr_animate 0 KONOKOlev18_ZomUp 120
|
---|
342 | #sound_dialog_play c14_52_04konoko
|
---|
343 | #Griffin gets up put the gun down
|
---|
344 | sleep f100
|
---|
345 | cm_interpolate ZomCamGriffinUp 0
|
---|
346 | chr_envanim ZomGrif ZomGriffinBox02 norotation
|
---|
347 | chr_animate ZomGrif GRIFINlev18_ZomUp
|
---|
348 | sound_dialog_play c14_52_03griffin
|
---|
349 | cinematic_start(GRIFbeatup, 180, 180, 20, 9, 20, true)
|
---|
350 | sound_dialog_play_block pause
|
---|
351 | #Konoko I'm a rogue agent, very dangerous
|
---|
352 | playback 0 ZomKonokoFace
|
---|
353 | cm_interpolate ZomCamKonokoFace 0
|
---|
354 | sound_dialog_play c14_52_04konoko
|
---|
355 | sound_dialog_play_block pause
|
---|
356 | #Griffin says youre a monster
|
---|
357 | cm_interpolate ZomCamGriffinFace 0
|
---|
358 | playback ZomGrif ZomGriffinFace
|
---|
359 | sound_dialog_play c14_52_05griffin
|
---|
360 | sound_dialog_play_block pause
|
---|
361 | #for you, badly
|
---|
362 | cm_interpolate ZomCamKonokoFace 0
|
---|
363 | sound_dialog_play c14_52_06konoko
|
---|
364 | sound_dialog_play_block pause
|
---|
365 | #Griffin says youre a monster
|
---|
366 | cm_interpolate ZomCamGriffinFace 0
|
---|
367 | sound_dialog_play c14_52_07griffin
|
---|
368 | sound_dialog_play_block pause
|
---|
369 | cinematic_stop(GRIFbeatup, 20, 20)
|
---|
370 | cinematic_stop(KONangryfront, 19, 20)
|
---|
371 | #Give player back control
|
---|
372 | cm_reset
|
---|
373 | end_cutscene
|
---|
374 | ai2_allpassive 1
|
---|
375 | chr_set_health ZomGrif 1
|
---|
376 | marketing_line_off=0
|
---|
377 | trigvolume_enable trigger_volume_35 1
|
---|
378 | objective_set(5)
|
---|
379 | }
|
---|
380 |
|
---|
381 | func void
|
---|
382 | OutroKill(
|
---|
383 | void)
|
---|
384 | {
|
---|
385 | sound_music_start mus_wls 1.0
|
---|
386 | begin_cutscene jello
|
---|
387 | sleep f40
|
---|
388 | sound_dialog_play c14_53_01konoko
|
---|
389 | cinematic_start(KONintense, 180,180,19,8,20, false)
|
---|
390 | sound_dialog_play_block
|
---|
391 | cinematic_stop (KONintense, 19, 20)
|
---|
392 | fade_out 0 0 0 120
|
---|
393 | sleep f120
|
---|
394 | end_cutscene
|
---|
395 | win
|
---|
396 | }
|
---|
397 |
|
---|
398 |
|
---|
399 | func void
|
---|
400 | OutroNoKill(
|
---|
401 | void)
|
---|
402 | {
|
---|
403 | begin_cutscene jello
|
---|
404 | cm_detach
|
---|
405 | ai2_takecontrol 1
|
---|
406 | ai2_lookatchar 0 ZomGrif
|
---|
407 | ai2_lookatchar ZomGrif 0
|
---|
408 | sound_music_start mus_sad1
|
---|
409 | sound_dialog_play c14_54_01konoko
|
---|
410 | cinematic_start(KONlistening, 180,180,19,8,20, false)
|
---|
411 | sleep f120
|
---|
412 | cm_interpolate BaseCam01 180
|
---|
413 | sound_dialog_play_block
|
---|
414 | cinematic_stop (KONlistening, 19, 20)
|
---|
415 | fade_out 0 0 0 120
|
---|
416 | sleep f120
|
---|
417 | end_cutscene
|
---|
418 | win
|
---|
419 | }
|
---|