source: nikanabo/current/bsl/original/IGMD/state/state_cutscene.bsl@ 1193

Last change on this file since 1193 was 185, checked in by geyser, 17 years ago
File size: 9.3 KB
Line 
1#
2# state_cutscene.bsl
3#
4
5var int face_count_dead;
6
7func void
8state_cs_intro(
9 void)
10{
11 trigvolume_enable trig_vol_17 0
12 trigvolume_enable trig_vol_19 0
13 trigvolume_enable trigger_volume_99 0
14 begin_cutscene
15 cutscene_sync off
16 fade_out 0 0 0 0
17 sleep 120
18 #Griffin talks
19 cinematic_start(GRIFtalkangry, 180, 180, 16, 3, 30, true)
20 sound_dialog_play c10_34_01griffin
21 sound_dialog_play_block pause
22 #Kerr responds
23 sleep 20
24 #cinematic_start(KERRtalking, 180, 180, 19, 7, 10, false)
25 cinematic_start(KERRtalking, 180, 180, 15, 1, 10, false)
26 sound_dialog_play c10_34_02kerr
27 sound_dialog_play_block pause
28 #Griffin talks again
29 sleep 20
30 sound_dialog_play c10_34_03griffin
31 sleep 400
32
33 #Make characters for cut-scene
34 sound_music_start mus_main02_hd 1.0
35 chr_create 102 start
36 sleep 10
37 #ninja runs out of scene
38 playback 102 IntroNinja
39 playback 0 IntroKonoko
40 chr_nocollision 0 1
41 fade_in 120
42 cm_anim both Camout01
43 sleep 120
44 cinematic_stop (GRIFtalkangry, 16, 10)
45 cinematic_stop (KERRtalking, 15, 10)
46 cm_wait
47 chr_delete 102
48 cm_anim both Camout02
49 cm_wait
50 cm_interpolate Camin03 0
51 #change this amount to work with cutscene
52 sleep 170
53 sleep 60
54 #security shows up behind Konoko
55 ai2_spawn IntroSec1
56 ai2_spawn IntroSec2
57 sleep 10
58 cm_interpolate Camin04 0
59 playback 0 IntroKonoko02
60 sleep 30
61 sound_dialog_play c10_34_05secguard2
62 sound_dialog_play_block pause
63 chr_animate IntroSec2 SECURIlev11_intro
64 cm_interpolate Camin05 0
65 #put security guard talking here
66 cinematic_start(SEC2talking, 180, 180, 15, 1, 30, true)
67 sound_dialog_play c10_34_04secguard1
68 sound_dialog_play_block pause
69 #Konoko says I don't have time for this
70 cm_interpolate IntroCamNotime 0
71 cinematic_start (KONintense, 180, 180, 20, 8, 20, true)
72 sound_dialog_play c10_34_06konoko
73 sound_dialog_play_block pause
74 #Security says something
75 sound_dialog_play c10_34_07secguard1
76 sound_dialog_play_block pause
77 cinematic_stop (SEC2talking, 15, 30)
78 #your call
79 cm_interpolate IntroCamCall01 0
80 cm_interpolate_block IntroCamCall02 90
81 sleep 70
82 sound_dialog_play c10_34_08konoko
83 sound_dialog_play_block pause
84 cinematic_stop (KONintense, 20,20)
85 sleep 20
86 cm_reset 0
87 #chr_delete 102
88 chr_nocollision 0 0
89 trigvolume_enable trig_vol_17 1
90 trigvolume_enable trig_vol_19 1
91 trigvolume_enable trigger_volume_99 1
92 end_cutscene
93 set_objective_1
94}
95
96
97func void
98dog(string ai_name)
99{
100 particle obj1 kill
101 begin_cutscene
102 chr_forceholster 0 1
103 chr_nocollision 0 1
104 sleep 30
105 #Konoko uses console
106 playback 0 DogKonokoSet
107 cm_interpolate DogCamLeftHigh 0
108 cm_interpolate_block DogCamRightHigh 400
109 sleep 10
110 chr_animate 0 KONOKOlev11_cnsl_start 68
111 chr_animate_block 0 KONOKOlev11_cnsl_idle 300
112 #sleep 30
113 #Konoko talks
114 cinematic_start (KONintense, 180, 180, 19, 7, 20, false)
115 sound_dialog_play c10_35_01aKonoko
116 sleep 90
117 chr_animate 0 KONOKOlev11_cnsl_type 120
118 chr_animate_block 0 KONOKOlev11_cnsl_idle 800 8
119 sleep 120
120 cm_interpolate DogCamRight 0
121 cm_interpolate_block DogCamLeft 500
122 #Konoko senses the watchdog
123 sound_dialog_play_block c10_35_01bKonoko
124 chr_animate 0 KONOKOlev11_cnsl_type 120
125 chr_animate_block 0 KONOKOlev11_cnsl_type 800 8
126 #camera switches to show Ninja
127 chr_create 1030 start
128 playback 1030 DogNinjaSet
129 chr_animate 1030 NINJAlev11_cnsl_type 400
130 cm_interpolate DogCamNinjaRight 0
131 cm_interpolate_block DogCamNinjaLeft 360
132 sleep 360
133 #Konoko says no
134 cm_interpolate DogCamLeftHigh 0
135 cm_interpolate_block DogCamRight 800
136 sound_dialog_play_block c10_35_01cKonoko
137 chr_animate 0 KONOKOlev11_cnsl_idle 240 8
138 sleep 180
139 #Konoko wonders who hacker was
140 chr_animate_block 0 KONOKOlev11_cnsl_stop
141 #Gameplay resumes
142 chr_delete 1030
143 sound_dialog_play_block pause
144 cinematic_stop (KONintense, 15, 30)
145 end_cutscene
146 cm_reset
147 chr_nocollision 0 0
148 playback DogKonokoEnd
149# save_game_2
150
151 trig_activate 12
152 trig_activate 13
153 trig_activate 14
154
155 door_unlock 82
156
157 set_objective_5
158 set_target_2
159
160 console_activate 1
161 console_activate 6
162}
163
164func void
165Nwindow_ninja(string ai_name)
166{
167 #spawn character 1030 before Konoko enters the room
168 chr_create 1030 start
169 chr_neutral 1030 1
170 playback 1030 WindowNinjaSet
171}
172
173func void
174window_ninja(string ai_name)
175{
176 trigvolume_enable Cut_outro 0
177 chr_create 1030 start
178 chr_neutral 1030 1
179 playback 1030 WindowNinjaSet
180 begin_cutscene
181 cm_interpolate WindowCamSet 70
182 ai2_takecontrol 1
183 ai2_setmovementmode 0 walk
184 ai2_movetoflag 0 289
185 sleep f60
186 cm_interpolate WindowCamStart 120
187 sound_music_start mus_pursuit_hd
188 sleep 120
189 #Ninja turns around
190 cm_anim both WindowCam00
191 ai2_takecontrol 0
192 chr_envanim 1030 WindowNinjaBox02 norotation
193 chr_animate 1030 NINJAlev11_windowturn
194 obj_create 481 481
195 obj_show 481 481
196 env_anim 481 481
197 #Konoko says give me back those files
198 cm_wait
199 playback 0 WindowKonoko01
200 cm_interpolate WindowCam02 0
201 sleep 30
202 #cinematic_start (KONintense, 180, 180, 17, 6, 30, false)
203 #sound_dialog_play lev11_WindowKon
204 #sound_dialog_play_block pause
205 #cinematic_stop (KONintense, 18, 30)
206 sleep 60
207 playback 0 WindowKonoko02
208 #Ninja backs towards window and flies out)
209 env_setanim 481 Disk02
210 chr_envanim 1030 WindowNinjaBox01 norotation
211 chr_animate 1030 NINJAlev11_window
212 cm_anim both WindowCam03
213 sleep 185
214 #break glass here
215 sound_impulse_play glass_big
216 particle WindowCharge do explode
217 cm_wait
218 cm_reset
219 end_cutscene
220 sleep 60
221 chr_delete 1030
222 ai2_spawn WindowNinjaRun
223 ai2_passive WindowNinjaRun 1
224 chr_unstoppable WindowNinjaRun 1
225 ai2_spawn creepy_ninja_4
226 chr_lock_active WindowNinjaRun
227 #make ninja no collision with particles
228 playback WindowNinjaRun WindowNinjaRun
229 obj_kill 481 481
230 target_set(1030, 0.0)
231 sleep f210
232 playback WindowNinjaRun JumpNinjaSet
233 sleep f10
234 playback WindowNinjaRun JumpNinjaSet
235 #chr_delete WindowNinjaRun
236}
237
238func void
239WindowNinjaDelete(string ai_name)
240{
241 #chr_delete WindowNinjaRun
242}
243
244func void
245FaceSet(string ai_name)
246{
247 playback WindowNinjaRun
248 ai2_spawn FaceNinja
249 ai2_spawn FaceNinja2
250 ai2_passive FaceNinja 1
251 ai2_passive FaceNinja2 1
252 ai2_passive FaceNinja3 1
253 playback FaceNinja FaceNinjaSet
254 playback FaceNinja FaceNinjaJump
255 sleep 60
256 #chr_delete WindowNinjaRun
257 ai2_passive FaceNinja 0
258 ai2_passive FaceNinja2 0
259 ai2_passive FaceNinja3 0
260 trigvolume_enable Cut_outro 0
261}
262
263func void
264JumpNinja(string ai_name)
265{
266 chr_nocollision WindowNinjaRun 1
267 chr_animate WindowNinjaRun KONOKOlev11_jump -1
268 sleep f135
269 chr_delete WindowNinjaRun
270}
271
272func void
273JumpKonoko(string ai_name)
274{
275 begin_cutscene
276 chr_animate 0 KONOKOlev11_jump -1
277 sleep f135
278}
279
280#func void
281#Face(string ai_name)
282#{
283# playback FaceNinja FaceNinjaJump
284# sleep 60
285# #chr_delete WindowNinjaRun
286# ai2_passive FaceNinja 0
287# sleep 60
288#}
289
290
291func void
292outro_makeNinja(string ai_name)
293{
294 chr_create 111 start
295 chr_create 110 start
296 chr_neutral 110 1
297 chr_neutral 111 1
298 playback 110 OutroNinja
299 playback 111 OutroSuperNinja
300}
301
302func void
303outro(string ai_name)
304{
305 particle obj2 kill
306 sound_music_stop mus_pursuit_hd
307 begin_cutscene
308 sleep f30
309 chr_nocollision 0 1
310 chr_create 111 start
311 chr_create 110 start
312 chr_neutral 110 1
313 chr_neutral 111 1
314 playback 110 OutroNinja
315 playback 111 OutroSuperNinja
316 cm_interpolate JumpCamKonoko01 0
317 playback 0 JumpKonokoSet
318 cm_interpolate_block JumpCamKonoko02 90
319 sleep f10
320 chr_animate 0 KONOKOlev11_jump -1
321 sleep f100
322 chr_nocollision 0 0
323 sleep f10
324 playback 0 JumpKonokoDown
325 cm_interpolate OutroCamSet 0
326 #chr_forceholster 0 1
327 sleep f90
328 cm_interpolate OutroCam01 140
329 sleep 60
330 chr_animate 111 NINCOMstartle_bk1
331 sleep 80
332 cinematic_start (BOSS2face, 180, 180, 17, 6, 30, false)
333 sound_dialog_play c10_37_01superninja
334 sound_dialog_play_block pause
335 cinematic_stop(BOSS2face, 17, 30)
336 #ninja jumps onto line
337 obj_create 71 71
338 cm_anim both OutroCam02
339 env_anim 71 71
340 chr_envanim 111 OutroNinjaBox01 norotation
341 chr_animate 111 NINJAlev11_outrozip01
342 playback 110 OutroNinja02
343 cutscene_sync_mark
344 sound_ambient_start c12_14_07zipa
345 sleep 170
346 cm_interpolate OutroCam03 0
347 playback 0 OutroKonoko
348 #kill character 111 here
349 chr_delete 111
350 sleep 60
351 #KONOKO jumps on back of Ninja
352 env_anim 71 71
353 chr_envanim_block 110 OutroNinjaBox01 norotation
354 chr_animate 110 NINJAlev11_outrozip01
355 chr_envanim 0 OutroKonBox01 norotation
356 chr_animate 0 KONOKOlev11_outrozip01
357 cm_anim both OutroCam04
358 cutscene_sync_mark
359 sound_ambient_start c12_14_07zipb
360 cm_wait
361 cm_anim both OutroCam05
362 env_setanim 71 Zipthing02
363 chr_envanim 110 OutroNinjaBox02 norotation
364 chr_animate 110 NINJAlev11_outrozip02
365 chr_envanim 0 OutroKonBox02 norotation
366 chr_animate 0 KONOKOlev11_outrozip02
367 sleep 60
368 fade_out 0 0 0 60
369 sleep 90
370 win
371}
372
373func void
374Floor2Unlock(string ai_name)
375{
376 input 0
377 cm_interpolate Floor2Unlock 0
378 sleep 150
379 cm_reset
380 door_unlock 54
381 particle lock1_locklight01 do start
382 input 1
383}
384
385func void
386DataArchiveUnlock(string ai_name)
387{
388 door_unlock 7
389 ai2_spawn fl1_target_1
390 input 0
391 sound_music_start mus_heart
392 fork music_force_stop
393 cm_interpolate DataArchiveUnlock 0
394 trigvolume_enable shut_off_vault_music 1
395 particle obj1 create
396 sleep 150
397 cm_reset
398 input 1
399}
400
401func void
402you_lose(string ai_name)
403{
404 sound_music_stop mus_main02_hd
405 sound_music_stop mus_heart
406 sound_music_stop mus_pursuit
407 sleep 240
408 fade_out 0 0 0 180
409 sleep 240
410 lose
411}
Note: See TracBrowser for help on using the repository browser.