source: nikanabo/current/bsl/original/IGMD/roof/roof_cutscene.bsl

Last change on this file was 185, checked in by geyser, 17 years ago
File size: 7.4 KB
Line 
1#
2#
3# roof_cutscene.bsl
4#
5
6func void intro_roll_sounds(void)
7{
8 sleep 252
9 sound_impulse_play kon_roll
10 sleep 3
11 sound_impulse_play kon_roll
12}
13
14func void
15intro_taunt(
16 void)
17{
18 chr_envanim_stop IntroNinja
19 chr_teleport IntroNinja 600
20 chr_facetoflag IntroNinja 600
21 chr_animate IntroNinja NINCOMcrouch_idle
22
23 ai2_passive IntroNinja 1
24 ai2_setmovementmode IntroNinja creep
25 sleep f40
26 playback_block IntroNinja IntroNinja
27 ai2_passive IntroNinja 0
28
29 ai2_attack IntroNinja 0
30}
31
32func void
33intro(
34 void)
35{
36 fade_out 0 0 0 0
37 cm_interpolate IntroCam01 0
38 sleep 14
39 begin_cutscene
40 ai2_spawn IntroNinja
41 #sound_ambient_start c08_11_19zip
42 sleep 30
43 fade_in 120
44 obj_create 81 81
45 env_anim 81 81
46 cm_anim both IntroCam01
47 chr_envanim 0 IntroKonBip01 norotation
48 chr_animate 0 KONOKOlev12_Intro
49 chr_envanim IntroNinja IntroNinBip01 norotation
50 chr_animate IntroNinja NINJAlev12_Intro
51 fork intro_roll_sounds
52 sleep f30
53 sound_ambient_start c08_11_19zip
54 cm_anim_block both IntroCam02
55 cm_wait
56 cm_reset
57 playback 0 IntroKonoko
58 done_with_intro_cutscene = 1;
59 trigvolume_reset death_fall_trigger_67
60 end_cutscene
61 fork intro_taunt
62 s1
63}
64
65func void
66camcontrol(
67 void)
68{
69 cm_anim both IntroCam01
70 cm_anim_block both IntroCam02
71 cm_wait
72}
73
74
75
76func void
77Elevator(
78 void)
79{
80 begin_cutscene
81 sleep 10
82 # "It's strange, I can almost feel him out there, creeping from shadow to shadow..."
83 sound_dialog_play c11_39_02konoko
84 playback 0 ElevatorKonokoSet
85 cm_interpolate ElevatorCam01 0
86 sleep 10
87 chr_envanim 0 ElevatorKonBox01
88 obj_create 31 31
89 obj_shade 31 31 .4 .4 .4
90 env_anim 31 31
91 sound_ambient_start first_elevator
92 cm_anim both ElevatorCam01
93 sleep 220
94 obj_kill 31 31
95 env_show 31 1
96 cm_reset
97 sleep 10
98 end_cutscene
99}
100
101
102
103
104func void
105NinjaZip(
106 void)
107{
108 chr_envanim NinjaZip ZipNinjaBipBox norotation
109 chr_animate NinjaZip NINJAlev12_zip
110 obj_create 72 72
111 env_anim 72 72
112 sleep 60
113 playback E_N14 Ninja02Jump
114 sleep 80
115 ai2_passive E_N14 0
116 sleep 100
117 playback NinjaZip NinjaZipLeave
118 sleep 120
119 chr_delete NinjaZip
120}
121
122func void
123KonokoZip(
124 void)
125{
126 particle obj_zip kill
127 begin_cutscene
128 sleep 10
129 cm_anim both KonZipCam01
130 chr_envanim 0 ZipKonBipBox norotation
131 chr_animate 0 KONOKOlev12_zip
132 obj_create 71 71
133 env_anim 71 71
134 sleep 55
135 sound_ambient_start c08_11_19zip
136 sleep 235
137
138 # CB: kill ninja's zip so we don't get Z fighting on superposed objects
139 obj_kill 72 72
140
141 cm_reset
142 end_cutscene
143}
144
145func void pretty_sayline(void)
146{
147 sleep 180
148 # "I'm backing him into a corner. This isn't going to be pretty."
149 sound_dialog_play c11_39_09konoko
150 sound_dialog_play_block pause
151 sleep 30
152 door_open 2
153 door_jam 2
154}
155
156func void
157ninja(
158 void)
159{
160 begin_cutscene
161 sleep 10
162 fork pretty_sayline
163 fork storm
164 ai2_spawn OutroNinja
165 chr_boss_shield OutroNinja
166 ai2_allpassive 1
167 playback OutroNinja SuperNinjaSet
168 chr_nocollision OutroNinja 1
169 #konokoenters elevator
170 #cm_interpolate SuperCam00 0
171 #playback 0 SuperKonokoEnter
172 chr_envanim 0 SuperKonBox01
173 gs_farclipplane_set 500
174 obj_create 41 41
175 obj_shade 41 41 .4 .4 .4
176 env_anim 41 41
177 sound_ambient_start c08_20_27elevator
178 cm_anim both SuperCam00
179 cm_wait
180 obj_kill 41 41
181 env_show 41 1
182 cm_interpolate SuperNinjaCam01 180
183 sleep 120
184 #all you have done is force me to fight
185 sound_dialog_play c11_40_01superninja
186 cinematic_start (BOSS2face, 180, 180, 19, 7, 20, false)
187 sleep 60
188 playback 0 SuperKonokoSet
189 sound_dialog_play_block pause
190 #Konoko who are you
191 cm_interpolate SuperCamKonokoSet 0
192 door_close 2
193 door_lock 2
194 sound_dialog_play c11_40_02konoko
195 cinematic_start (KONtalking, 180, 180, 20, 9, 20, true)
196 sound_dialog_play_block pause
197 cinematic_stop (KONtalking, 20, 20)
198 #Super Ninja goes around
199 playback OutroNinja SuperNinjaWalk
200 sleep 40
201 playback 0 SuperKonokoWalk
202 #ninja talks
203 sound_dialog_play c11_40_03superninja
204 cinematic_stop (BOSS2face, 7, 0)
205 cinematic_start (BOSS2face, 180, 180, 7, 9, 2, false)
206 cm_interpolate SuperCamWalkOut02 0
207 cm_interpolate_block SuperCamWalkOut02b 800
208 sound_dialog_play_block pause
209 #konoko answers
210 sound_dialog_play c11_40_04konoko
211 cinematic_start (KONtalking, 180, 180, 16, 3, 20, true)
212 sound_dialog_play_block pause
213 cinematic_stop (KONtalking, 16, 20)
214 #super ninja we writhe
215 sound_dialog_play c11_40_05superninja
216 #cm_interpolate_block SuperCamWalkOut02b 800
217 sound_dialog_play_block pause
218 cm_interpolate SuperCamWalkOut02b 800
219 #Konoko says you're a thug
220 sound_dialog_play c11_40_06konoko
221 cinematic_start (KONangry, 180, 180, 16, 3, 20, true)
222 cm_interpolate SuperCamWalkOut03 0
223 cm_interpolate_block SuperCamWalkOut03b 600
224 sound_dialog_play_block pause
225 cinematic_stop (KONtalking, 16, 20)
226 #ninja says we'll see about that
227 sound_dialog_play c11_40_07superninja
228 sound_dialog_play_block pause
229 cinematic_stop (BOSS2face, 19, 15)
230 #gameplay setup
231 playback 0 SuperKonokoEnd
232 cm_reset
233 end_cutscene
234 sleep 20
235 chr_animate OutroNinja NINCOMteleport_in 47
236 music_battle
237 sleep 40
238 playback OutroNinja SuperNinjaDone
239 chr_animate OutroNinja NINCOMteleport_out 31
240 chr_nocollision OutroNinja 0
241
242 dprint SAVEDGAME4
243 save_game 4 autosave
244}
245
246
247func void
248test(
249 void)
250{
251 chr_envanim 0 ZipKonBipBox norotation
252 sleep 120
253 playback 0 IntroKonoko
254}
255
256
257func void
258deathfall(
259 void)
260{
261 if (done_with_intro_cutscene eq 1)
262 {
263 sleep 30
264 cm_detach
265 sleep 30
266 chr_set_health 0 0
267 }
268}
269
270
271func void
272outro(
273 void)
274{
275 sound_music_volume mus_fitec 0.0 1.0
276 music_stop
277 begin_cutscene
278 chr_animate OutroNinja NINCOMteleport_in 31
279 sleep 10
280 #spawn teleported Ninja and add some glowy bits
281 chr_envanim OutroNinja OutroNinjaBox01
282 chr_animate OutroNinja NINCOMteleport_out 31
283 sleep 10
284 cm_interpolate OutroCam01 0
285 sleep 10
286 chr_envanim OutroNinja OutroNinjaBox01 norotation
287 chr_animate OutroNinja NINJAlev12_Outro1
288 sound_ambient_start ninja_cd_scene
289 cm_anim both OutroCam01
290 sleep 208
291 obj_create 481 481
292 env_anim 481 481
293 cm_interpolate OutroCamDisk 90
294 chr_envanim OutroNinja OutroNinjaBox02 norotation
295 chr_animate OutroNinja NINJAlev12_Outro2 900
296 #Konoko patrol to flag 2000
297 #chr_teleport 0 2000
298 playback 0 OutroKonoko01
299 sleep 100
300 sleep 70
301 #camera cut here to Konoko's face
302 cm_interpolate OutroCam02 0
303 #sleep 30
304 #playback 0 OutroKonoko02
305 sleep 50
306 cinematic_start (KONtalking, 180, 180, 18, 6, 15, true)
307 sound_dialog_play c11_41_01konoko
308 sleep 300
309 #camera cut here to Konoko and Ninja
310 cm_interpolate OutroCam03 0
311 cm_interpolate_block OutroCam04 800
312 chr_envanim OutroNinja OutroNinjaBox02 norotation
313 chr_animate OutroNinja NINJAlev12_Outro2 1300
314 sound_dialog_play_block
315 # Camera cut as Konoko steps on Ninja
316 #Add sound of Konoko saying she has nothing in common
317 sound_dialog_play c11_41_01bkonoko
318 cinematic_stop (KONtalking, 18, 20)
319 cinematic_start (KONintense, 180, 180, 18, 6, 15, true)
320 cm_anim both OutroCam05
321 chr_envanim 0 OutroKonBox01 norotation
322 chr_animate 0 KONOKOlev12_Outro1
323 chr_envanim OutroNinja OutroNinjaBox03 norotation
324 chr_animate OutroNinja NINJAlev12_Outro3
325 sleep 175
326 sound_ambient_start c09_36_26neckbreak
327 sleep 100
328 #Camera cut to Konoko's face
329 playback 0 OutroKonoko02
330 chr_animate OutroNinja STRIKEfallen_front 540
331 cm_interpolate OutroCam06 0
332 sleep 60
333 sound_dialog_play c11_41_02konoko
334 cinematic_stop (KONintense, 18, 10)
335 sleep 60
336 fade_out 0 0 0 120
337 sleep 120
338 win
339}
340
Note: See TracBrowser for help on using the repository browser.