source: AE/packages/VanillaBSL/IGMD/state/state_cutscene.bsl @ 367

Last change on this file since 367 was 367, checked in by gumby, 12 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.