| 1 | #
 | 
|---|
| 2 | # Compound_cutscene.bsl
 | 
|---|
| 3 | 
 | 
|---|
| 4 | func void intro(void)
 | 
|---|
| 5 | {
 | 
|---|
| 6 |         fade_out 0 0 0 0
 | 
|---|
| 7 |         cm_interpolate IntroCam00 0
 | 
|---|
| 8 |         sleep f14
 | 
|---|
| 9 |         begin_cutscene  
 | 
|---|
| 10 |         ai2_allpassive 0
 | 
|---|
| 11 |         gs_farclipplane_set 10000
 | 
|---|
| 12 |         letterbox 1
 | 
|---|
| 13 |         cm_interpolate IntroCam00 0
 | 
|---|
| 14 |         sleep f60
 | 
|---|
| 15 |         chr_super 0 1
 | 
|---|
| 16 |         fade_in 120
 | 
|---|
| 17 |         music_intro
 | 
|---|
| 18 |         sleep f240
 | 
|---|
| 19 |         #Konoko drops from sky
 | 
|---|
| 20 |         cm_interpolate IntroCam01 300
 | 
|---|
| 21 |         sleep f300
 | 
|---|
| 22 |         cm_anim both IntroCam01
 | 
|---|
| 23 |         chr_envanim 0 IntroKonBox01 norotation
 | 
|---|
| 24 |         chr_animate 0 KONOKOlev7_Intro
 | 
|---|
| 25 |         sleep f90
 | 
|---|
| 26 |         cutscene_sync mark
 | 
|---|
| 27 |         sound_ambient_start c05_05_15kon_land
 | 
|---|
| 28 |         sleep f60
 | 
|---|
| 29 |         particle IntroImpact do explode
 | 
|---|
| 30 |         #close up of Konoko
 | 
|---|
| 31 |         cm_anim_block both IntroCam02
 | 
|---|
| 32 |         ai2_allpassive 1
 | 
|---|
| 33 |         #Vista shot
 | 
|---|
| 34 |         cm_wait
 | 
|---|
| 35 |         playback 0 IntroKonokoSet
 | 
|---|
| 36 |         cm_reset
 | 
|---|
| 37 |         end_cutscene
 | 
|---|
| 38 |         chr_set_health 0 400
 | 
|---|
| 39 |         chr_super 0 0
 | 
|---|
| 40 |         s1
 | 
|---|
| 41 | }
 | 
|---|
| 42 | 
 | 
|---|
| 43 | 
 | 
|---|
| 44 | func void ParkLeft(void)
 | 
|---|
| 45 | {
 | 
|---|
| 46 |         begin_cutscene
 | 
|---|
| 47 |         chr_teleport C_b74 541
 | 
|---|
| 48 |         ai2_dopath C_b74 patrol_74
 | 
|---|
| 49 |         chr_teleport C_Eb73 528
 | 
|---|
| 50 |         ai2_dopath C_Eb73 patrol_73
 | 
|---|
| 51 |         trigvolume_corpse 29
 | 
|---|
| 52 |         sleep f30
 | 
|---|
| 53 |         obj_create 51 59
 | 
|---|
| 54 |         env_anim 51 59
 | 
|---|
| 55 |         sleep f2
 | 
|---|
| 56 |         cm_interpolate ParkLeftCam01 0
 | 
|---|
| 57 |         #Show Truck objects
 | 
|---|
| 58 |         #see van entering from tunnel
 | 
|---|
| 59 |         sleep f8
 | 
|---|
| 60 |         cutscene_sync mark
 | 
|---|
| 61 |         sound_ambient_start c05_26_17_trucka
 | 
|---|
| 62 |         sleep f270
 | 
|---|
| 63 |         #Striker exits van
 | 
|---|
| 64 |         ai2_spawn ParkStriker
 | 
|---|
| 65 |         chr_lock_active ParkStriker
 | 
|---|
| 66 |         chr_neutral ParkStriker 1
 | 
|---|
| 67 |         cm_anim both ParkCam01
 | 
|---|
| 68 |         env_setanim 51 truckbackstop
 | 
|---|
| 69 |         env_setanim 52 truckcabstop
 | 
|---|
| 70 |         env_setanim 53 truckdoorstop
 | 
|---|
| 71 |         env_setanim 54 truckdoor2stop
 | 
|---|
| 72 |         env_setanim 55 truckwheel03stop
 | 
|---|
| 73 |         env_setanim 56 truckwheel04stop
 | 
|---|
| 74 |         env_setanim 57 truckwheel05stop
 | 
|---|
| 75 |         env_setanim 58 truckwheel06stop
 | 
|---|
| 76 |         env_setanim 59 truckwheel07stop
 | 
|---|
| 77 |         chr_envanim ParkStriker ParkStrikeBox01 norotation
 | 
|---|
| 78 |         sleep f40
 | 
|---|
| 79 |         cutscene_sync mark
 | 
|---|
| 80 |         sound_ambient_start c05_31_21_brake_doorsa
 | 
|---|
| 81 |         sleep f60
 | 
|---|
| 82 |         chr_animate ParkStriker STRIKElev7_Park
 | 
|---|
| 83 |         playback 0 ParkLeftKonoko
 | 
|---|
| 84 |         ai2_spawn C_Sb25
 | 
|---|
| 85 |         ai2_spawn C_Sb26
 | 
|---|
| 86 |         ai2_spawn C_Eb27
 | 
|---|
| 87 |         playback C_Sb25 truckers
 | 
|---|
| 88 |         sleep 40
 | 
|---|
| 89 |         playback C_Sb26 truckers
 | 
|---|
| 90 |         sleep 30
 | 
|---|
| 91 |         playback C_Eb27 truckers
 | 
|---|
| 92 |         sleep 60
 | 
|---|
| 93 |         #hide object van and unhide gunk van
 | 
|---|
| 94 |         obj_kill 51 59
 | 
|---|
| 95 |         env_show 151 1
 | 
|---|
| 96 |         env_show 152 1
 | 
|---|
| 97 |         env_show 153 1
 | 
|---|
| 98 |         env_show 154 1
 | 
|---|
| 99 |         env_show 155 1
 | 
|---|
| 100 |         env_show 156 1
 | 
|---|
| 101 |         env_show 157 1
 | 
|---|
| 102 |         env_show 158 1
 | 
|---|
| 103 |         env_show 159 1
 | 
|---|
| 104 |         #cm_wait
 | 
|---|
| 105 |         playback 0 ParkLeftKonoko01
 | 
|---|
| 106 |         #sleep f240
 | 
|---|
| 107 |         cm_reset
 | 
|---|
| 108 |         #chr_delete ParkStriker
 | 
|---|
| 109 |         #konoko talks
 | 
|---|
| 110 |         sleep f120
 | 
|---|
| 111 |         sound_dialog_play c15_57_05konoko
 | 
|---|
| 112 |         cinematic_start (KONlistening, 180, 180, 19, 7, 20, false)
 | 
|---|
| 113 |         sound_dialog_play_block
 | 
|---|
| 114 |         cinematic_stop (KONlistening, 19, 20)
 | 
|---|
| 115 |         end_cutscene
 | 
|---|
| 116 |         music_truck
 | 
|---|
| 117 | }
 | 
|---|
| 118 | 
 | 
|---|
| 119 | func void ParkRight(void)
 | 
|---|
| 120 | {
 | 
|---|
| 121 |         begin_cutscene
 | 
|---|
| 122 |         chr_teleport C_b74 541
 | 
|---|
| 123 |         ai2_dopath C_b74 patrol_74
 | 
|---|
| 124 |         chr_teleport C_Eb73 528
 | 
|---|
| 125 |         ai2_dopath C_Eb73 patrol_73
 | 
|---|
| 126 |         trigvolume_corpse 29
 | 
|---|
| 127 |         sleep f30
 | 
|---|
| 128 |         obj_create 51 59
 | 
|---|
| 129 |         env_anim 51 59
 | 
|---|
| 130 |         sleep f2
 | 
|---|
| 131 |         cm_interpolate ParkRightCam01 0
 | 
|---|
| 132 |         #Show Truck objects
 | 
|---|
| 133 |         #see van entering from tunnel
 | 
|---|
| 134 |         sleep f8
 | 
|---|
| 135 |         cutscene_sync mark
 | 
|---|
| 136 |         sound_ambient_start c05_26_17_trucka
 | 
|---|
| 137 |         sleep f270
 | 
|---|
| 138 |         #Striker exits van
 | 
|---|
| 139 |         ai2_spawn ParkStriker
 | 
|---|
| 140 |         chr_lock_active ParkStriker
 | 
|---|
| 141 |         chr_neutral ParkStriker 1
 | 
|---|
| 142 |         cm_anim both ParkCam01
 | 
|---|
| 143 |         env_setanim 51 truckbackstop
 | 
|---|
| 144 |         env_setanim 52 truckcabstop
 | 
|---|
| 145 |         env_setanim 53 truckdoorstop
 | 
|---|
| 146 |         env_setanim 54 truckdoor2stop
 | 
|---|
| 147 |         env_setanim 55 truckwheel03stop
 | 
|---|
| 148 |         env_setanim 56 truckwheel04stop
 | 
|---|
| 149 |         env_setanim 57 truckwheel05stop
 | 
|---|
| 150 |         env_setanim 58 truckwheel06stop
 | 
|---|
| 151 |         env_setanim 59 truckwheel07stop
 | 
|---|
| 152 |         chr_envanim ParkStriker ParkStrikeBox01 norotation
 | 
|---|
| 153 |         sleep f40
 | 
|---|
| 154 |         cutscene_sync mark
 | 
|---|
| 155 |         sound_ambient_start c05_31_21_brake_doorsa
 | 
|---|
| 156 |         sleep f60
 | 
|---|
| 157 |         chr_animate ParkStriker STRIKElev7_Park
 | 
|---|
| 158 |         playback 0 ParkRightKonoko
 | 
|---|
| 159 |         ai2_spawn C_Sb25
 | 
|---|
| 160 |         ai2_spawn C_Sb26
 | 
|---|
| 161 |         ai2_spawn C_Eb27
 | 
|---|
| 162 |         playback C_Sb25 truckers
 | 
|---|
| 163 |         sleep 40
 | 
|---|
| 164 |         playback C_Sb26 truckers
 | 
|---|
| 165 |         sleep f30
 | 
|---|
| 166 |         playback C_Eb27 truckers
 | 
|---|
| 167 |         sleep 60
 | 
|---|
| 168 |         #hide object van and unhide gunk van
 | 
|---|
| 169 |         obj_kill 51 59
 | 
|---|
| 170 |         env_show 151 1
 | 
|---|
| 171 |         env_show 152 1
 | 
|---|
| 172 |         env_show 153 1
 | 
|---|
| 173 |         env_show 154 1
 | 
|---|
| 174 |         env_show 155 1
 | 
|---|
| 175 |         env_show 156 1
 | 
|---|
| 176 |         env_show 157 1
 | 
|---|
| 177 |         env_show 158 1
 | 
|---|
| 178 |         env_show 159 1
 | 
|---|
| 179 |         #cm_wait
 | 
|---|
| 180 |         playback 0 ParkRightKonoko01
 | 
|---|
| 181 |         #sleep f240
 | 
|---|
| 182 |         cm_reset
 | 
|---|
| 183 |         #chr_delete ParkStriker
 | 
|---|
| 184 |         #kononko talks
 | 
|---|
| 185 |         sleep f120
 | 
|---|
| 186 |         sound_dialog_play c15_57_05konoko
 | 
|---|
| 187 |         cinematic_start (KONlistening, 180, 180, 19, 7, 20, false)
 | 
|---|
| 188 |         sound_dialog_play_block
 | 
|---|
| 189 |         cinematic_stop (KONlistening, 19, 20)
 | 
|---|
| 190 |         end_cutscene
 | 
|---|
| 191 |         music_truck
 | 
|---|
| 192 | }
 | 
|---|
| 193 | 
 | 
|---|
| 194 | 
 | 
|---|
| 195 | func void Truck(void)
 | 
|---|
| 196 | {
 | 
|---|
| 197 |         trigvolume_corpse 29
 | 
|---|
| 198 |         begin_cutscene
 | 
|---|
| 199 | 
 | 
|---|
| 200 |         #hide gunk and show object
 | 
|---|
| 201 |         obj_create 51 59
 | 
|---|
| 202 |         env_show 151 0
 | 
|---|
| 203 |         env_show 152 0
 | 
|---|
| 204 |         env_show 153 0
 | 
|---|
| 205 |         env_show 154 0
 | 
|---|
| 206 |         env_show 155 0
 | 
|---|
| 207 |         env_show 156 0
 | 
|---|
| 208 |         env_show 157 0
 | 
|---|
| 209 |         env_show 158 0
 | 
|---|
| 210 |         env_show 159 0
 | 
|---|
| 211 |         #Konoko enters Truck
 | 
|---|
| 212 |         cm_anim both TruckCam01
 | 
|---|
| 213 |         cutscene_sync mark
 | 
|---|
| 214 |         sound_ambient_start c05_26_17_truckb
 | 
|---|
| 215 |         chr_envanim 0 TruckKonBox01 norotation
 | 
|---|
| 216 |         chr_animate 0 KONOKOlev7_TruckEnter
 | 
|---|
| 217 |         env_setanim 54 truckdoor2enter
 | 
|---|
| 218 |         sound_dialog_play c15_57_06konoko
 | 
|---|
| 219 |         cinematic_start (KONintense, 180, 180, 19, 7, 20, false)
 | 
|---|
| 220 | 
 | 
|---|
| 221 |         #Truck exhaust starts and truck peels out
 | 
|---|
| 222 |         #sleep f10
 | 
|---|
| 223 |         sound_ambient_start c05_31_21_brake_doorsb
 | 
|---|
| 224 |         cm_anim_block both TruckCam02
 | 
|---|
| 225 |         playback 0 TruckKonokoHide
 | 
|---|
| 226 |         ai2_allpassive 0
 | 
|---|
| 227 |         cinematic_stop (KONintense, 19, 20)
 | 
|---|
| 228 |         sleep f80
 | 
|---|
| 229 |         chr_teleport C_Sb25 238
 | 
|---|
| 230 |         ai2_dopath C_Sb25 patrol_70
 | 
|---|
| 231 |         chr_teleport C_Sb26 195
 | 
|---|
| 232 |         ai2_dopath C_Sb26 patrol_84
 | 
|---|
| 233 |         chr_teleport C_Eb27 227
 | 
|---|
| 234 |         ai2_dopath C_Eb26 patrol_85
 | 
|---|
| 235 |         env_setanim 51 truckbackdrive01
 | 
|---|
| 236 |         env_setanim 52 truckcabdrive01
 | 
|---|
| 237 |         env_setanim 53 truckdoordrive01
 | 
|---|
| 238 |         env_setanim 54 truckdoor2drive01
 | 
|---|
| 239 |         env_setanim 55 truckwheel03drive01
 | 
|---|
| 240 |         env_setanim 56 truckwheel04drive01
 | 
|---|
| 241 |         env_setanim 57 truckwheel05drive01
 | 
|---|
| 242 |         env_setanim 58 truckwheel06drive01
 | 
|---|
| 243 |         env_setanim 59 truckwheel07drive01
 | 
|---|
| 244 | 
 | 
|---|
| 245 |         #Truck heads towrads camera
 | 
|---|
| 246 |         cm_interpolate_block TruckCam04 0
 | 
|---|
| 247 |         env_setanim 51 truckbackdrive02
 | 
|---|
| 248 |         env_setanim 52 truckcabdrive02
 | 
|---|
| 249 |         env_setanim 53 truckdoordrive02
 | 
|---|
| 250 |         env_setanim 54 truckdoor2drive02
 | 
|---|
| 251 |         env_setanim 55 truckwheel03drive02
 | 
|---|
| 252 |         env_setanim 56 truckwheel04drive02
 | 
|---|
| 253 |         env_setanim 57 truckwheel05drive02
 | 
|---|
| 254 |         env_setanim 58 truckwheel06drive02
 | 
|---|
| 255 |         env_setanim 59 truckwheel07drive02
 | 
|---|
| 256 |         sleep f160
 | 
|---|
| 257 |         fade_out 0 0 0 15
 | 
|---|
| 258 |         fade_in 15
 | 
|---|
| 259 | 
 | 
|---|
| 260 |         #Truck heads towrads door
 | 
|---|
| 261 |         cm_anim both TruckCam03 
 | 
|---|
| 262 |         env_setanim 51 truckbackdrive02
 | 
|---|
| 263 |         env_setanim 52 truckcabdrive02
 | 
|---|
| 264 |         env_setanim 53 truckdoordrive02
 | 
|---|
| 265 |         env_setanim 54 truckdoor2drive02
 | 
|---|
| 266 |         env_setanim 55 truckwheel03drive02
 | 
|---|
| 267 |         env_setanim 56 truckwheel04drive02
 | 
|---|
| 268 |         env_setanim 57 truckwheel05drive02
 | 
|---|
| 269 |         env_setanim 58 truckwheel06drive02
 | 
|---|
| 270 |         env_setanim 59 truckwheel07drive02
 | 
|---|
| 271 | 
 | 
|---|
| 272 |         #Truck crashes through door
 | 
|---|
| 273 |         cm_anim_block both TruckCam05
 | 
|---|
| 274 |         env_setanim 51 truckbackcrash
 | 
|---|
| 275 |         env_setanim 52 truckcabcrash
 | 
|---|
| 276 |         env_setanim 53 truckdoorcrash
 | 
|---|
| 277 |         env_setanim 54 truckdoor2crash
 | 
|---|
| 278 |         env_setanim 55 truckwheel03crash
 | 
|---|
| 279 |         env_setanim 56 truckwheel04crash
 | 
|---|
| 280 |         env_setanim 57 truckwheel05crash
 | 
|---|
| 281 |         env_setanim 58 truckwheel06crash
 | 
|---|
| 282 |         env_setanim 59 truckwheel07crash
 | 
|---|
| 283 | 
 | 
|---|
| 284 |         #break door here
 | 
|---|
| 285 |         sleep f35
 | 
|---|
| 286 |         cutscene_sync mark
 | 
|---|
| 287 |         sound_ambient_start c05_53_27_crash
 | 
|---|
| 288 |         sleep f10
 | 
|---|
| 289 |         particle TruckDoor do explode
 | 
|---|
| 290 |         env_show 911 1
 | 
|---|
| 291 |         env_show 912 0
 | 
|---|
| 292 |         env_show 913 0
 | 
|---|
| 293 |         env_show 914 1
 | 
|---|
| 294 | 
 | 
|---|
| 295 |         #Konoko exits truck
 | 
|---|
| 296 |         sleep f125
 | 
|---|
| 297 |         cutscene_sync mark
 | 
|---|
| 298 |         sound_ambient_start c05_31_21_brake_doorsc
 | 
|---|
| 299 |         cm_anim_block both TruckCam06
 | 
|---|
| 300 |         chr_envanim 0 TruckKonBox02 norotation
 | 
|---|
| 301 |         chr_animate 0 KONOKOlev7_TruckExit
 | 
|---|
| 302 |         env_setanim 54 truckdoor2exit
 | 
|---|
| 303 | 
 | 
|---|
| 304 |         #gameplay resumes
 | 
|---|
| 305 |         cm_wait
 | 
|---|
| 306 |         env_show 915 1
 | 
|---|
| 307 |         env_show 916 1
 | 
|---|
| 308 |         env_show 251 1
 | 
|---|
| 309 |         env_show 252 1
 | 
|---|
| 310 |         env_show 253 1
 | 
|---|
| 311 |         env_show 254 1
 | 
|---|
| 312 |         env_show 255 1
 | 
|---|
| 313 |         env_show 256 1
 | 
|---|
| 314 |         env_show 257 1
 | 
|---|
| 315 |         env_show 258 1
 | 
|---|
| 316 |         env_show 259 1
 | 
|---|
| 317 |         obj_kill 51 59
 | 
|---|
| 318 |         cm_reset
 | 
|---|
| 319 |         playback 0 TruckExitKonoko
 | 
|---|
| 320 |         end_cutscene
 | 
|---|
| 321 | 
 | 
|---|
| 322 |         stop_music_truck
 | 
|---|
| 323 | }
 | 
|---|
| 324 | 
 | 
|---|
| 325 | func void sp_start_dish_loop(void)
 | 
|---|
| 326 | {
 | 
|---|
| 327 |         sound_ambient_start mc_dish_loop 0.6
 | 
|---|
| 328 | }
 | 
|---|
| 329 | 
 | 
|---|
| 330 | func void sp_start_dish_and_wait(void)
 | 
|---|
| 331 | {
 | 
|---|
| 332 |         sleep 320
 | 
|---|
| 333 |         sound_ambient_start mc_dish_loop 0.1
 | 
|---|
| 334 |         sound_ambient_volume mc_dish_loop 0.6 4.0
 | 
|---|
| 335 | }
 | 
|---|
| 336 | 
 | 
|---|
| 337 | func void dish(void)
 | 
|---|
| 338 | {
 | 
|---|
| 339 |         begin_cutscene
 | 
|---|
| 340 |         gs_farclipplane_set 5000
 | 
|---|
| 341 |         sleep f60
 | 
|---|
| 342 |         #hide and unhide dish stuff
 | 
|---|
| 343 |         obj_create 201 209
 | 
|---|
| 344 |         obj_shade 201 209 .5 .5 .5
 | 
|---|
| 345 |         env_show 301 0
 | 
|---|
| 346 |         env_show 302 0
 | 
|---|
| 347 |         env_show 303 0
 | 
|---|
| 348 |         env_show 304 0
 | 
|---|
| 349 |         env_show 305 0
 | 
|---|
| 350 |         env_show 306 0
 | 
|---|
| 351 |         env_show 307 0
 | 
|---|
| 352 |         env_show 308 0
 | 
|---|
| 353 |         env_show 309 0
 | 
|---|
| 354 |         cm_anim both DishCam01
 | 
|---|
| 355 |         chr_peace 0
 | 
|---|
| 356 |         chr_envanim 0 DishKonokoBox01
 | 
|---|
| 357 |         sleep f60
 | 
|---|
| 358 |         obj_force_draw 201 209
 | 
|---|
| 359 |         cutscene_sync mark
 | 
|---|
| 360 |         sound_ambient_start c06_08_03_basic
 | 
|---|
| 361 |         sleep f440
 | 
|---|
| 362 |         #dish thing starts to raise
 | 
|---|
| 363 |         env_anim 201 209
 | 
|---|
| 364 |         cm_anim_block both DishCam02
 | 
|---|
| 365 |         cm_anim_block both DishCam03
 | 
|---|
| 366 |         cm_anim_block both DishCam04
 | 
|---|
| 367 |         sleep f120
 | 
|---|
| 368 |         cutscene_sync mark
 | 
|---|
| 369 |         sound_ambient_start c06_35_00_servo
 | 
|---|
| 370 |         cm_anim_block both DishCam05
 | 
|---|
| 371 |         sleep f300
 | 
|---|
| 372 |         #close up of Konoko
 | 
|---|
| 373 |         env_show 401 1
 | 
|---|
| 374 |         env_show 402 1
 | 
|---|
| 375 |         env_show 403 1
 | 
|---|
| 376 |         env_show 404 1
 | 
|---|
| 377 |         env_show 405 1
 | 
|---|
| 378 |         env_show 406 1
 | 
|---|
| 379 |         env_show 407 1
 | 
|---|
| 380 |         env_show 408 1
 | 
|---|
| 381 |         env_show 409 1
 | 
|---|
| 382 |         obj_kill 201 209
 | 
|---|
| 383 |         #Vista shot
 | 
|---|
| 384 |         particle dish do explode
 | 
|---|
| 385 |         cutscene_sync mark
 | 
|---|
| 386 |         sound_ambient_start c16_49_01_amb2
 | 
|---|
| 387 |         gs_farclipplane_set 3000
 | 
|---|
| 388 |         cm_interpolate DishCam06 0
 | 
|---|
| 389 |         cm_interpolate_block DishCam07 940
 | 
|---|
| 390 |         sleep f600
 | 
|---|
| 391 |         cutscene_sync mark
 | 
|---|
| 392 |         sound_ambient_start c16_49_01_effectsa
 | 
|---|
| 393 |         sleep f330
 | 
|---|
| 394 |         cutscene_sync mark
 | 
|---|
| 395 |         sound_ambient_start c16_49_01_effectsb
 | 
|---|
| 396 |         fork sp_start_dish_and_wait
 | 
|---|
| 397 |         cm_wait
 | 
|---|
| 398 |         cm_interpolate DishCam08 0
 | 
|---|
| 399 |         particle dishpulse do start
 | 
|---|
| 400 |         particle sturm_ambient start
 | 
|---|
| 401 |         sleep f300
 | 
|---|
| 402 |         playback 0 GrifKonokoSet
 | 
|---|
| 403 |         cm_interpolate GrifCam01 180
 | 
|---|
| 404 |         sleep f120
 | 
|---|
| 405 | 
 | 
|---|
| 406 |         #cm_reset
 | 
|---|
| 407 |         if (did_kill_griffen() eq 1)
 | 
|---|
| 408 |         {
 | 
|---|
| 409 |                 mutant
 | 
|---|
| 410 |         }
 | 
|---|
| 411 |         if (did_kill_griffen() eq 0)
 | 
|---|
| 412 |         {
 | 
|---|
| 413 |                 grif
 | 
|---|
| 414 |         }
 | 
|---|
| 415 | }
 | 
|---|
| 416 | 
 | 
|---|
| 417 | 
 | 
|---|
| 418 | func void grif(void)
 | 
|---|
| 419 | {
 | 
|---|
| 420 |         begin_cutscene
 | 
|---|
| 421 |         cutscene_sync mark
 | 
|---|
| 422 |         sound_ambient_start c07_17_19heli
 | 
|---|
| 423 |         #camera pans to see Konoko looking at dish
 | 
|---|
| 424 |         #playback 0 GrifKonokoSet
 | 
|---|
| 425 |         #cm_interpolate GrifCam01 180
 | 
|---|
| 426 |         #sleep f240
 | 
|---|
| 427 | 
 | 
|---|
| 428 |         # CB: this sets up the AI target selection parameters for the group battle
 | 
|---|
| 429 |         ai2_boss_battle = 1
 | 
|---|
| 430 | 
 | 
|---|
| 431 |         #camera pans to see Muro
 | 
|---|
| 432 |         ai2_spawn Muro
 | 
|---|
| 433 |         ai2_passive Muro 1
 | 
|---|
| 434 |         if (extra_guys eq 1) {
 | 
|---|
| 435 |                 ai2_spawn GrifElite01
 | 
|---|
| 436 |                 counter = counter + 1;
 | 
|---|
| 437 |         }
 | 
|---|
| 438 |         ai2_spawn GrifElite02
 | 
|---|
| 439 |         ai2_spawn GrifElite03
 | 
|---|
| 440 |         playback Muro GrifMuroSet
 | 
|---|
| 441 |         playback GrifElite01 GrifElite01Set
 | 
|---|
| 442 |         playback GrifElite02 GrifElite02Set
 | 
|---|
| 443 |         playback GrifElite03 GrifElite03Set
 | 
|---|
| 444 |         cm_interpolate GrifCam02 150
 | 
|---|
| 445 |         sleep f10
 | 
|---|
| 446 |         playback GrifElite02 GrifElite02Set
 | 
|---|
| 447 |         sleep f5
 | 
|---|
| 448 |         playback GrifElite03 GrifElite03Set
 | 
|---|
| 449 |         sleep f150
 | 
|---|
| 450 |         #Muro says  you shouldn't have come here alone
 | 
|---|
| 451 |         cm_interpolate GrifCamMuro01 0
 | 
|---|
| 452 |         sound_dialog_play c15_60_01muro
 | 
|---|
| 453 |         cinematic_start (MUROtalking, 180, 180, 19, 7, 20, false)
 | 
|---|
| 454 |         sound_dialog_play_block pause
 | 
|---|
| 455 |         cinematic_stop (MUROtalking, 19, 20)
 | 
|---|
| 456 |         #Konoko looks pissed
 | 
|---|
| 457 |         playback 0 GrifKonokoSet02
 | 
|---|
| 458 |         cm_interpolate GrifCamKon01 0
 | 
|---|
| 459 |         sleep f15
 | 
|---|
| 460 |         #griffin appears in a helicopter behind her
 | 
|---|
| 461 |         cm_interpolate GrifCamHeli 240
 | 
|---|
| 462 |         sleep f20
 | 
|---|
| 463 |         obj_create 901 906
 | 
|---|
| 464 |         env_anim 901 906
 | 
|---|
| 465 |         ai2_spawn Griffin
 | 
|---|
| 466 |         if (extra_guys eq 1) {
 | 
|---|
| 467 |                 ai2_spawn GrifOps01
 | 
|---|
| 468 |                 count_swat_dies = count_swat_dies + 1;
 | 
|---|
| 469 |         }
 | 
|---|
| 470 |         ai2_spawn GrifOps02
 | 
|---|
| 471 |         ai2_spawn GrifOps03
 | 
|---|
| 472 |         chr_envanim Griffin GrifGrifBox01
 | 
|---|
| 473 |         if (extra_guys eq 1) {
 | 
|---|
| 474 |                 chr_envanim GrifOps01 GrifOps01Box01
 | 
|---|
| 475 |                 chr_envanim GrifOps02 GrifOps02Box01
 | 
|---|
| 476 |         }
 | 
|---|
| 477 |         if (extra_guys eq 0) {
 | 
|---|
| 478 |                 chr_envanim GrifOps02 GrifOps01Box01
 | 
|---|
| 479 |         }
 | 
|---|
| 480 |         chr_envanim GrifOps03 GrifOps03Box01
 | 
|---|
| 481 |         chr_animate Griffin COMGUYlev7_helistand 500
 | 
|---|
| 482 |         chr_animate GrifOps01 STRIKEcrouch_idle 400
 | 
|---|
| 483 |         chr_animate GrifOps02 STRIKEcrouch_idle 400
 | 
|---|
| 484 |         chr_animate GrifOps03 STRIKEcrouch_idle 400
 | 
|---|
| 485 |         sleep f90
 | 
|---|
| 486 |         sound_dialog_play c15_60_02griffin
 | 
|---|
| 487 |         cinematic_start (GRIFshouting, 180, 180, 15, 1, 20, false)
 | 
|---|
| 488 |         sleep f200
 | 
|---|
| 489 |         cinematic_stop (GRIFshouting, 15, 20)
 | 
|---|
| 490 |         #Guys jump out of helicopter
 | 
|---|
| 491 |         env_setanim 901 heli_doors_rt08
 | 
|---|
| 492 |         env_setanim 902 heli_doors_lt08
 | 
|---|
| 493 |         env_setanim 903 heli_rotorblades08
 | 
|---|
| 494 |         env_setanim 904 heli_body08
 | 
|---|
| 495 |         env_setanim 905 heli_canopy08
 | 
|---|
| 496 |         env_setanim 906 heli_interior08
 | 
|---|
| 497 |         chr_envanim Griffin GrifGrifBox02 norotation
 | 
|---|
| 498 |         if (extra_guys eq 1) {
 | 
|---|
| 499 |                 chr_envanim GrifOps01 GrifOps01Box02 norotation
 | 
|---|
| 500 |                 chr_envanim GrifOps02 GrifOps02Box02 norotation
 | 
|---|
| 501 |         }
 | 
|---|
| 502 |         if (extra_guys eq 0) {
 | 
|---|
| 503 |                 chr_envanim GrifOps02 GrifOps01Box02 norotation
 | 
|---|
| 504 |         }
 | 
|---|
| 505 |         chr_envanim GrifOps03 GrifOps03Box02 norotation
 | 
|---|
| 506 |         chr_animate Griffin COMGUYlev7_Grif
 | 
|---|
| 507 |         if (extra_guys eq 1) {
 | 
|---|
| 508 |                 chr_animate GrifOps01 STRIKElev7_Ops01
 | 
|---|
| 509 |                 chr_animate GrifOps02 STRIKElev7_Ops02
 | 
|---|
| 510 |         }
 | 
|---|
| 511 |         if (extra_guys eq 0) {
 | 
|---|
| 512 |                 chr_animate GrifOps02 STRIKElev7_Ops01
 | 
|---|
| 513 |         }
 | 
|---|
| 514 |         chr_animate GrifOps03 STRIKElev7_Ops03
 | 
|---|
| 515 |         cm_anim both GrifCamOut
 | 
|---|
| 516 |         ai2_allpassive 1
 | 
|---|
| 517 |         sleep f240
 | 
|---|
| 518 |         #Guys run to help Konoko
 | 
|---|
| 519 |         playback Griffin GrifGrifRunAlt
 | 
|---|
| 520 |         if (extra_guys eq 1) {
 | 
|---|
| 521 |                 playback GrifOps01 GrifOps01Run
 | 
|---|
| 522 |                 playback GrifOps02 GrifOps02Run
 | 
|---|
| 523 |         }
 | 
|---|
| 524 |         if (extra_guys eq 0) {
 | 
|---|
| 525 |                 playback GrifOps02 GrifOps01Run
 | 
|---|
| 526 |         }
 | 
|---|
| 527 |         sleep f10
 | 
|---|
| 528 |         playback GrifOps03 GrifOps03Run
 | 
|---|
| 529 |         cm_wait
 | 
|---|
| 530 |         #sleep f20
 | 
|---|
| 531 |         cm_interpolate GrifCamHelp01 0
 | 
|---|
| 532 |         sleep f20
 | 
|---|
| 533 |         cm_interpolate_block GrifCamHelp02 180
 | 
|---|
| 534 |         sleep f180
 | 
|---|
| 535 |         cm_interpolate GrifCamWatch01 0
 | 
|---|
| 536 |         cm_interpolate_block GrifCamWatch02 210
 | 
|---|
| 537 |         playback 0 GrifKonokoWatch
 | 
|---|
| 538 |         sleep f210
 | 
|---|
| 539 | 
 | 
|---|
| 540 |         #Muro says you gonna trust him?
 | 
|---|
| 541 |         obj_kill 901 906
 | 
|---|
| 542 |         cm_interpolate GrifCamFace01 0
 | 
|---|
| 543 |         cm_interpolate_block GrifCamFace02 700
 | 
|---|
| 544 |         sound_dialog_play c15_60_03muro
 | 
|---|
| 545 |         cinematic_start (MUROtalking, 180, 180, 19, 7, 20, false)
 | 
|---|
| 546 |         sound_dialog_play_block pause 
 | 
|---|
| 547 | 
 | 
|---|
| 548 |         #Konoko says he dreamed of life
 | 
|---|
| 549 |         cm_interpolate GrifCamKonFace01 0
 | 
|---|
| 550 |         cm_interpolate_block GrifCamKonFace02 800
 | 
|---|
| 551 |         sound_dialog_play c15_60_04konoko
 | 
|---|
| 552 |         cinematic_start (KONintense, 180, 180, 20, 9, 20, true)
 | 
|---|
| 553 |         sound_dialog_play_block pause
 | 
|---|
| 554 |         sound_dialog_play c15_60_05konoko
 | 
|---|
| 555 |         sound_dialog_play_block pause
 | 
|---|
| 556 | 
 | 
|---|
| 557 |         sound_music_start mus_ot
 | 
|---|
| 558 | 
 | 
|---|
| 559 |         cm_interpolate GrifCamMuroFace01 0
 | 
|---|
| 560 |         sound_dialog_play c15_60_06muro
 | 
|---|
| 561 |         sound_dialog_play_block pause
 | 
|---|
| 562 |         cinematic_stop (MUROtalking, 19, 20)
 | 
|---|
| 563 | 
 | 
|---|
| 564 |         chr_set_health Muro 500
 | 
|---|
| 565 | 
 | 
|---|
| 566 |         cinematic_stop (KONintense, 20, 20)
 | 
|---|
| 567 |         end_cutscene
 | 
|---|
| 568 |         ai2_passive Muro 0
 | 
|---|
| 569 |         chr_boss_shield Muro
 | 
|---|
| 570 |         cm_reset
 | 
|---|
| 571 |         s4
 | 
|---|
| 572 |         fork wait_to_help
 | 
|---|
| 573 |         paths
 | 
|---|
| 574 |         objective_set(6)
 | 
|---|
| 575 | }
 | 
|---|
| 576 | 
 | 
|---|
| 577 | 
 | 
|---|
| 578 | func void mutant(void)
 | 
|---|
| 579 | {
 | 
|---|
| 580 |         begin_cutscene
 | 
|---|
| 581 |         #camera pans to see Konoko looking at dish
 | 
|---|
| 582 |         #playback 0 GrifKonokoSet
 | 
|---|
| 583 |         #cm_interpolate GrifCam01 180
 | 
|---|
| 584 |         #sleep f240
 | 
|---|
| 585 |         #camera pans to see Muro
 | 
|---|
| 586 |         ai2_spawn Muro
 | 
|---|
| 587 |         ai2_passive Muro 1
 | 
|---|
| 588 |         playback Muro GrifMuroSet
 | 
|---|
| 589 |         cm_interpolate GrifCam02 150
 | 
|---|
| 590 |         sleep f150
 | 
|---|
| 591 |         #Muro says  you shouldn't have come here alone
 | 
|---|
| 592 |         cm_interpolate GrifCamMuro01 0
 | 
|---|
| 593 |         cm_interpolate_block MutantCam01 900
 | 
|---|
| 594 |         sound_dialog_play c15_59_01muro
 | 
|---|
| 595 |         cinematic_start (MUROtalking, 180, 180, 19, 7, 20, false)
 | 
|---|
| 596 |         sleep f500
 | 
|---|
| 597 |         #Konoko looks pissed
 | 
|---|
| 598 |         playback 0 GrifKonokoSet02
 | 
|---|
| 599 |         cm_interpolate GrifCamKon01 0
 | 
|---|
| 600 |         sleep f150
 | 
|---|
| 601 |         cinematic_stop (MUROtalking, 19, 20)
 | 
|---|
| 602 |         #muro transforms
 | 
|---|
| 603 |         cm_interpolate GrifCam02 0
 | 
|---|
| 604 |         particle MutantTransform do explode
 | 
|---|
| 605 |         cutscene_sync mark
 | 
|---|
| 606 |         sound_ambient_start c08_06_25muro
 | 
|---|
| 607 |         sleep f150
 | 
|---|
| 608 |         chr_animate Muro MUROtransform
 | 
|---|
| 609 |         cm_interpolate_block MutantCam01 200
 | 
|---|
| 610 |         sleep f170
 | 
|---|
| 611 |         #show Konoko protecting herself from the blast
 | 
|---|
| 612 |         cm_interpolate MutantCamKon 0
 | 
|---|
| 613 |         chr_animate 0 KONOKOlev7_blown
 | 
|---|
| 614 |         sleep f100
 | 
|---|
| 615 |         #kill muro and spawn mutant muro
 | 
|---|
| 616 |         chr_delete Muro 
 | 
|---|
| 617 |         ai2_spawn MutantMuro
 | 
|---|
| 618 |         playback MutantMuro MutantMuroEnd01
 | 
|---|
| 619 |         sleep 1
 | 
|---|
| 620 |         ai2_allpassive=1
 | 
|---|
| 621 |         chr_neutral MutantMuro 1
 | 
|---|
| 622 |         sleep f10
 | 
|---|
| 623 |         chr_animate MutantMuro MUTCOMtransform
 | 
|---|
| 624 |         cm_interpolate MutantCam01 0
 | 
|---|
| 625 |         cm_interpolate_block  MutantCam03 240
 | 
|---|
| 626 |         sleep f60
 | 
|---|
| 627 |         sound_dialog_play c15_59_02muro
 | 
|---|
| 628 |         cinematic_start (MUTANTMUROface, 180, 180, 19, 7, 20, false)
 | 
|---|
| 629 |         cm_interpolate MutantCam04 700
 | 
|---|
| 630 |         sound_dialog_play_block pause
 | 
|---|
| 631 |         #Konoko says surrender
 | 
|---|
| 632 |         cm_interpolate MutantCamKonTalk 0
 | 
|---|
| 633 |         sound_dialog_play c15_59_03konoko
 | 
|---|
| 634 |         cinematic_start (KONangryfront, 180, 180, 20, 9, 20, true)
 | 
|---|
| 635 |         sound_dialog_play_block pause
 | 
|---|
| 636 | 
 | 
|---|
| 637 |         sound_music_start mus_ot
 | 
|---|
| 638 | 
 | 
|---|
| 639 |         #Muro says never
 | 
|---|
| 640 |         #playback MutantMuro MutantMuroEnd01
 | 
|---|
| 641 |         #cm_interpolate MutantCamMuroEnd 0
 | 
|---|
| 642 |         #sleep f60
 | 
|---|
| 643 |         #playback MutantMuro MutantMuroEnd02
 | 
|---|
| 644 |         #sleep f120
 | 
|---|
| 645 |         #gameplay resumes
 | 
|---|
| 646 |         cinematic_stop (KONangryfront, 20, 20)
 | 
|---|
| 647 |         cinematic_stop (MUTANTMUROface, 19, 20)
 | 
|---|
| 648 |         cm_reset        
 | 
|---|
| 649 |         end_cutscene
 | 
|---|
| 650 |         chr_boss_shield MutantMuro
 | 
|---|
| 651 |         ai2_passive MutantMuro 0
 | 
|---|
| 652 |         s4
 | 
|---|
| 653 |         objective_set(7)
 | 
|---|
| 654 | }
 | 
|---|
| 655 | 
 | 
|---|
| 656 | 
 | 
|---|
| 657 | 
 | 
|---|
| 658 | func void
 | 
|---|
| 659 | Outro(
 | 
|---|
| 660 |         void)
 | 
|---|
| 661 | {
 | 
|---|
| 662 |         sound_music_stop mus_ot
 | 
|---|
| 663 | 
 | 
|---|
| 664 |         begin_cutscene jello
 | 
|---|
| 665 | 
 | 
|---|
| 666 |         #slowmo
 | 
|---|
| 667 |         #weird particle effect
 | 
|---|
| 668 |         sleep f120
 | 
|---|
| 669 |         chr_animate 0 KONOKOendpowerup
 | 
|---|
| 670 |         sleep f120
 | 
|---|
| 671 |         cm_interpolate EndCam 600
 | 
|---|
| 672 |         sound_ambient_volume mc_dish_loop 1.0 4.0
 | 
|---|
| 673 |         sleep f500
 | 
|---|
| 674 |         fade_out 0 0 0 120
 | 
|---|
| 675 |         sleep f120
 | 
|---|
| 676 |         win
 | 
|---|
| 677 | }
 | 
|---|