1 |
# |
2 |
# |
3 |
# power_cutscene.bsl |
4 |
# |
5 |
|
6 |
func void |
7 |
intro( |
8 |
void) |
9 |
{ |
10 |
# CB: begin_cutscene does a silent ai2_allpassive 1 as part of its cutscene setup, |
11 |
# so we need to remove this if we want to have AIs walking around under their own |
12 |
# control during a cutscene |
13 |
fade_out 0 0 0 0 |
14 |
cm_interpolate Camout01 0 |
15 |
obj_create 100 104 |
16 |
chr_create 1000 start |
17 |
chr_create 1001 start |
18 |
playback 1000 IntroGrifTCTF |
19 |
playback 1001 IntroKonTCTF |
20 |
sleep f7 |
21 |
begin_cutscene |
22 |
cutscene_sync off |
23 |
ai2_allpassive 0 |
24 |
|
25 |
ai2_spawn A1_intro01 |
26 |
ai2_spawn A1_intro02 |
27 |
ai2_makeignoreplayer A1_intro01 1 |
28 |
ai2_makeignoreplayer A1_intro02 1 |
29 |
#fade_out 0 0 0 0 |
30 |
#Setup Konoko and Griffin talking |
31 |
sleep f60 |
32 |
|
33 |
# Force holster by Wu |
34 |
chr_forceholster char_0 1 |
35 |
|
36 |
fade_in 120 |
37 |
chr_nocollision(0, 1); |
38 |
#Setup shot |
39 |
cm_anim both Camout01 |
40 |
cm_wait |
41 |
#KOnoko standing on top |
42 |
cm_anim both Camout02 |
43 |
chr_envanim 0 KonBipedBox01 |
44 |
chr_animate 0 KONOKOidle1 300 |
45 |
env_setanim 100 StandRightWing |
46 |
env_setanim 101 StandLeftWing |
47 |
env_setanim 102 StandBody |
48 |
env_setanim 103 StandRightTail |
49 |
env_setanim 104 StandLeftTail |
50 |
#Konoko and Griffin talking |
51 |
sleep f120 |
52 |
sound_dialog_play c08_27_01konoko |
53 |
cinematic_start (KONtalking, 180, 180, 15, 1, 15, false) |
54 |
sound_dialog_play_block pause |
55 |
sound_dialog_play c08_27_02griffin |
56 |
cinematic_start (GRIFtalking, 180, 180, 16, 3, 15, true) |
57 |
cm_interpolate_block IntroCamTBoth 0 |
58 |
sound_dialog_play_block pause |
59 |
sound_dialog_play c08_27_03konoko |
60 |
cinematic_stop (KONtalking, 15, 20) |
61 |
cinematic_start (KONintense, 180, 180, 15, 1, 20, false) |
62 |
sound_dialog_play_block pause |
63 |
sound_dialog_play c08_27_04griffin |
64 |
sound_dialog_play_block pause |
65 |
sound_dialog_play c08_27_05konoko |
66 |
sound_dialog_play_block pause |
67 |
cm_interpolate_block IntroCamTGrif 0 |
68 |
sound_dialog_play c08_27_06griffin |
69 |
cinematic_stop (GRIFtalking, 16, 20) |
70 |
cinematic_start (GRIFtalkangry, 180, 180, 16, 3, 20, true) |
71 |
sound_dialog_play_block pause |
72 |
cm_interpolate IntroCamTKon 0 |
73 |
|
74 |
# start the wind as the dialog ends, sync to that |
75 |
cutscene_sync on |
76 |
sound_dialog_play c08_27_07konoko |
77 |
cinematic_stop (GRIFtalkangry, 16, 20) |
78 |
cinematic_stop (KONintense, 15, 20) |
79 |
cinematic_start (KONangry, 180, 180, 15, 1, 20, false) |
80 |
sleep 200 |
81 |
sound_ambient_start pp_wind_loop 0.1 |
82 |
sound_ambient_volume pp_wind_loop 0.8 1.0 |
83 |
sleep 50 |
84 |
cutscene_sync off |
85 |
#Jumping off the building |
86 |
chr_envanim 0 KonBipedBox02 norotation |
87 |
cm_anim both Camout03 |
88 |
#sound_ambient_start pp09_wingsa |
89 |
chr_animate 0 KONOKOlev9_intro_jump |
90 |
env_setanim 100 JumpRightWing |
91 |
env_setanim 101 JumpLeftWing |
92 |
env_setanim 102 JumpBody |
93 |
env_setanim 103 JumpRightTail |
94 |
env_setanim 104 JumpLeftTail |
95 |
sleep f120 |
96 |
sound_ambient_start pp09_wingsa |
97 |
# october 25, 2000 this pause was breaking the scene |
98 |
# sound_dialog_play_block pause |
99 |
cinematic_stop (KONangry, 15, 20) |
100 |
#sleep f100 |
101 |
cm_anim_block both Camout04 |
102 |
#Transport A1_intro02 to new location |
103 |
chr_teleport A1_intro02 1105 |
104 |
#Gliding |
105 |
#music_intro |
106 |
sleep f100 |
107 |
sound_ambient_start pp09_wingsb |
108 |
chr_envanim_block 0 KonBipedBox03 |
109 |
cm_anim both Camout05 |
110 |
chr_animate 0 KONOKOlev9_intro_glide 360 |
111 |
env_setanim 100 GlideRightWing |
112 |
env_setanim 101 GlideLeftWing |
113 |
env_setanim 102 GlideBody |
114 |
env_setanim 103 GlideRightTail |
115 |
env_setanim 104 GlideLeftTail |
116 |
#Landing |
117 |
chr_envanim_block 0 KonBipedBox04 norotation |
118 |
#gl_fog_start=.98 |
119 |
#gs_farclipplane_set 2000 |
120 |
cm_anim both Camout06 |
121 |
chr_animate 0 KONOKOlev9_intro_land |
122 |
|
123 |
env_setanim 100 LandRightWing |
124 |
env_setanim 101 LandLeftWing |
125 |
env_setanim 102 LandBody |
126 |
env_setanim 103 LandRightTail |
127 |
env_setanim 104 LandLeftTail |
128 |
sleep 30 |
129 |
sound_ambient_volume pp_wind_loop 0.0 1.0 |
130 |
sleep 60 |
131 |
sound_ambient_stop pp_wind_loop |
132 |
sound_ambient_start pp09_wingsc |
133 |
cm_wait |
134 |
playback 0 IntroKonokoSet01 |
135 |
obj_kill 100 104 |
136 |
sleep f5 |
137 |
cm_reset |
138 |
chr_nocollision 0 0 |
139 |
end_cutscene |
140 |
env_show 100 1 |
141 |
env_show 101 1 |
142 |
env_show 102 1 |
143 |
env_show 103 1 |
144 |
env_show 104 1 |
145 |
chr_delete ai_12 |
146 |
chr_delete ai_13 |
147 |
chr_delete 1000 |
148 |
chr_delete 1001 |
149 |
ai2_makeignoreplayer A1_intro01 0 |
150 |
ai2_makeignoreplayer A1_intro02 0 |
151 |
#Transport A1_intro02 to new location again |
152 |
chr_teleport A1_intro02 1104 |
153 |
s1 |
154 |
music_intro |
155 |
music_intro_timer |
156 |
} |
157 |
|
158 |
func void |
159 |
camcontrol( |
160 |
void) |
161 |
{ |
162 |
cm_anim both Camout01 |
163 |
cm_anim both Camout02 |
164 |
cm_anim both Camout03 |
165 |
cm_anim both Camout04 |
166 |
cm_anim both Camout05 |
167 |
cm_anim both Camout06 |
168 |
cm_wait |
169 |
letterbox 0 |
170 |
cm_jello 1 |
171 |
cm_reset |
172 |
chr_nocollision 0 0 |
173 |
input 1 |
174 |
} |
175 |
|
176 |
func void |
177 |
Muro( |
178 |
void) |
179 |
{ |
180 |
begin_cutscene |
181 |
|
182 |
sound_music_start mus_sad1 0.1 |
183 |
sound_music_volume mus_sad1 0.3 2 |
184 |
|
185 |
cutscene_sync off |
186 |
sleep f10 |
187 |
cm_anim both Elev1Cam01 |
188 |
playback 0 Elev1KonokoSet01 |
189 |
cutscene_sync on |
190 |
sound_ambient_start c12_20_16elevator |
191 |
sleep f5 |
192 |
chr_nocollision 0 1 |
193 |
chr_envanim 0 Elev1KonBox01 norotation |
194 |
obj_create 801 801 |
195 |
obj_shade 801 801 .4 .4 .4 |
196 |
env_show 801 0 |
197 |
env_setanim 801 Elev101 |
198 |
sleep 200 |
199 |
|
200 |
#Shinatama crying here |
201 |
|
202 |
sound_dialog_play c08_28_05shinscream1 |
203 |
sound_music_volume mus_sad1 1.0 0.5 |
204 |
|
205 |
cinematic_start (SHINtortured, 180, 180, 20, 7, 15, false) |
206 |
|
207 |
sleep 60 |
208 |
sound_music_volume mus_sad1 0.8 0.5 |
209 |
sleep 100 |
210 |
|
211 |
fade_out 0 0 0 10 |
212 |
sleep f10 |
213 |
#Muro torturing shinatama |
214 |
fade_in 10 |
215 |
particle torture do start |
216 |
ai2_spawn MuroMuro |
217 |
ai2_spawn MuroShinatama |
218 |
ai2_spawn MuroComguy |
219 |
playback MuroMuro MuroMuroSet |
220 |
playback MuroComguy MuroComguySet |
221 |
|
222 |
sound_dialog_play c08_28_06shinscream2 |
223 |
|
224 |
chr_envanim MuroShinatama ShinBox02 norotation |
225 |
chr_animate MuroShinatama SHINATlev9_Shin02 180 |
226 |
cutscene_sync off |
227 |
cm_interpolate MuroCamShin02 0 |
228 |
sound_ambient_start c12_26_20shin_tort |
229 |
cm_interpolate_block MuroCamShin01 800 |
230 |
sleep f120 |
231 |
chr_envanim MuroShinatama ShinBox03 norotation |
232 |
chr_animate MuroShinatama SHINATlev9_Shin03 12 |
233 |
sleep f12 |
234 |
particle torture do stop |
235 |
chr_envanim MuroShinatama ShinBox04 norotation |
236 |
chr_animate MuroShinatama SHINATlev9_Shin04 1000 12 |
237 |
sound_dialog_play_block pause |
238 |
cinematic_stop (SHINtortured, 19,20) |
239 |
##Muro talks |
240 |
sound_dialog_play c08_28_01muro |
241 |
cinematic_start (MUROtalking, 180, 180, 16, 3, 15, true) |
242 |
cm_interpolate MuroCamMuro 0 |
243 |
sound_dialog_play_block pause |
244 |
##Shin screams |
245 |
particle torture do start |
246 |
sound_ambient_start c12_26_20shin_torta |
247 |
#chr_envanim MuroShinatama ShinBox01 norotation |
248 |
#chr_animate MuroShinatama SHINATlev9_Shin01 12 |
249 |
#sleep f12 |
250 |
chr_envanim MuroShinatama ShinBox02 norotation |
251 |
chr_animate MuroShinatama SHINATlev9_Shin02 180 |
252 |
|
253 |
sound_dialog_play shinscream_new |
254 |
|
255 |
cinematic_start (SHINtortured, 180, 180, 19, 20, 10, false) |
256 |
sleep f130 |
257 |
particle torture do stop |
258 |
chr_envanim MuroShinatama ShinBox04 norotation |
259 |
chr_animate MuroShinatama SHINATlev9_Shin04 1200 10 |
260 |
sleep f30 |
261 |
##Muro talks again |
262 |
cm_interpolate MuroCamMuro01 0 |
263 |
cm_interpolate_block MuroCamMuro02 1400 |
264 |
sound_dialog_play c08_28_02muro |
265 |
cinematic_stop (SHINtortured, 18,20) |
266 |
sound_dialog_play_block pause |
267 |
sleep f10 |
268 |
particle torture do start |
269 |
sound_ambient_start c12_26_20shin_torta |
270 |
|
271 |
sound_dialog_play shinscream_new2 |
272 |
|
273 |
sound_dialog_play_block pause |
274 |
particle torture do stop |
275 |
sleep f10 |
276 |
sound_dialog_play c08_28_03muro |
277 |
sound_dialog_play_block pause |
278 |
chr_envanim MuroShinatama ShinBox04 norotation |
279 |
chr_animate MuroShinatama SHINATlev9_Shin04 1200 10 |
280 |
sleep f5 |
281 |
|
282 |
sound_dialog_play shinscreams_6 |
283 |
|
284 |
sound_dialog_play_block pause |
285 |
sound_dialog_play c08_28_04muro |
286 |
sound_dialog_play_block pause |
287 |
cinematic_stop (MUROtalking, 16,15) |
288 |
|
289 |
sound_dialog_play muro_laff2 |
290 |
|
291 |
sleep f80 |
292 |
particle torture do start |
293 |
sound_ambient_start c12_26_20shin_torta |
294 |
sleep f15 |
295 |
|
296 |
sound_dialog_play_interrupt shinscreams_4 |
297 |
|
298 |
cinematic_start (SHINtortured, 180, 180, 20, 19, 10, false) |
299 |
sleep f20 |
300 |
fade_out 0 0 0 10 |
301 |
sleep f10 |
302 |
particle torture do stop |
303 |
fade_in 10 |
304 |
#Konoko finishes riding elevator |
305 |
chr_envanim 0 Elev1KonBox02 norotation |
306 |
env_setanim 801 Elev102 |
307 |
cm_anim both Elev1Cam02 |
308 |
sound_ambient_start c13_07_22elevatora |
309 |
sleep f295 |
310 |
env_show 802 1 |
311 |
obj_kill 801 801 |
312 |
cm_reset |
313 |
playback 0 Elev1KonokoSet |
314 |
sleep f1 |
315 |
chr_nocollision 0 0 |
316 |
end_cutscene |
317 |
|
318 |
chr_delete MuroComguy |
319 |
chr_delete MuroMuro |
320 |
chr_delete MuroShinatama |
321 |
} |
322 |
|
323 |
|
324 |
|
325 |
func void |
326 |
Elev2( |
327 |
void) |
328 |
{ |
329 |
begin_cutscene |
330 |
sleep f30 |
331 |
cutscene_sync off |
332 |
chr_nocollision 0 1 |
333 |
playback 0 Elev2KonokoSet |
334 |
cm_anim both Elev2Cam01 |
335 |
cutscene_sync on |
336 |
sound_ambient_start c13_07_22elevator |
337 |
chr_envanim 0 Elev2KonBox01 |
338 |
env_show 821 0 |
339 |
obj_create 821 821 |
340 |
obj_shade 821 821 .4 .4 .4 |
341 |
env_setanim 821 Elev201 |
342 |
cm_wait |
343 |
obj_kill 821 821 |
344 |
env_show 822 1 |
345 |
chr_nocollision 0 0 |
346 |
cm_reset |
347 |
end_cutscene |
348 |
} |
349 |
|
350 |
|
351 |
|
352 |
func void |
353 |
Torture( |
354 |
void) |
355 |
{ |
356 |
#input 0 |
357 |
cm_interpolate TortureCam01 80 |
358 |
sleep f180 |
359 |
cm_reset 80 |
360 |
#input 1 |
361 |
} |
362 |
|
363 |
|
364 |
func void |
365 |
outro( |
366 |
void) |
367 |
{ |
368 |
sleep f30 |
369 |
begin_cutscene jello |
370 |
cutscene_sync off |
371 |
#oni SPECcial effect |
372 |
chr_animate 0 KONOKOpowerup |
373 |
cinematic_start (KONtransform, 180, 180, 15, 2, 15, false) |
374 |
sleep f220 |
375 |
fade_out 0 0 0 10 |
376 |
sleep f10 |
377 |
fade_in 10 |
378 |
ai2_spawn OutroKerr |
379 |
ai2_spawn OutroGrif |
380 |
ai2_spawn OutroCop |
381 |
playback OutroCop ShinCopSet |
382 |
playback OutroGrif ShinGrifSet |
383 |
playback OutroKerr ShinKerrSet |
384 |
cinematic_stop (KONtransform, 16, 30) |
385 |
cm_interpolate ShinCamCop 0 |
386 |
cm_interpolate_block ShinCamCopFace 1600 |
387 |
sleep f20 |
388 |
sound_dialog_play c08_29_01scigoon1 |
389 |
cinematic_start (COPtalking, 180, 180, 16, 3, 20, false) |
390 |
sound_dialog_play_block pause |
391 |
cinematic_stop (COPtalking, 16, 20) |
392 |
cm_interpolate ShinCamGrif 0 |
393 |
cm_interpolate_block ShinCamGrifFace 1800 |
394 |
sound_dialog_play c08_29_02griffin |
395 |
cinematic_start (GRIFtalking, 180, 180, 19, 7, 20, false) |
396 |
sound_dialog_play_block pause |
397 |
sleep f20 |
398 |
playback 0 OutroKonoko01 |
399 |
cinematic_stop (GRIFtalking, 19, 20) |
400 |
fade_out 0 0 0 10 |
401 |
sleep f10 |
402 |
fade_in 10 |
403 |
#doors start to open |
404 |
obj_create 131 133 |
405 |
env_anim 131 133 |
406 |
env_show 134 0 |
407 |
env_show 135 0 |
408 |
env_show 136 0 |
409 |
cm_interpolate OutroCam01 0 |
410 |
cutscene_sync on |
411 |
sound_ambient_start c03_55_18bigdoor |
412 |
cm_interpolate_block OutroCam02 700 |
413 |
sleep f200 |
414 |
playback 0 OutroKonoko02 |
415 |
sleep f200 |
416 |
#Konoko sees doors opening |
417 |
#playback 0 OutroKonoko02 |
418 |
cm_interpolate OutroCam03 0 |
419 |
sleep f90 |
420 |
#playback 0 OutroKonoko02 |
421 |
sleep f40 |
422 |
cm_interpolate OutroCam04 0 |
423 |
sleep f180 |
424 |
fade_out 0 0 0 120 |
425 |
sleep f120 |
426 |
win |
427 |
} |
428 |
|