Revision 824 | Revision 878 | Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed
//--------------------------------------------------------------------------------------//// A Gate Two Birds And The Beautiful Sky Level Script File//// Level: map7// Script By: Patrick "Nemo" Weiser// Geometry By: TickNSwisted & Patrick "Nemo" Weiser & LTiefland// Created on: 27.01.2004//// Last Edited by: ltiefland// Last Edited on: 11/11/06////--------------------------------------------------------------------------------------void main();void init();void shoot_disrupter(entity weapon_parm, entity origin_parm, entity target_parm);void shoot_tal(entity weapon_parm, entity origin_parm, entity target_parm, string explosion_parm, entity other_entity);void moveWarbird();void intro();void finish_intro();void firstShoot();void romulancommander();void attack_bridge();void decloak_warbird();void attack_outpost();void bridge_endcinematic();void loop_explosions_bridge();void disrupter0();void disrupter1();void disrupter2();void disrupter3();void activate_trigger_count();void collision_counter();//Energieumleitungvoid energyrouting_Used();void energyrouting_Failed();void energyrouting_Canceled();void energyrouting_Solved();void warbirds_boom();void hall_collapse();#include "maps/global_scripts/global_debugUtils.scr"#include "maps/global_scripts/global_common.scr"#include "maps/global_scripts/global_math.scr"#include "maps/global_scripts/global_acceleratedMovement.scr"#include "maps/global_scripts/global_cinematicFX.scr"#include "maps/global_scripts/global_tricorderBase.scr"#include "maps/global_scripts/global_tricorderRoute.scr"void main(){cam_fadeout( .1, 0, 0, 0, 1, 0 );// $player.notsolid();// $player.hide();letterbox( .1 );freezeplayer();cinematic();soundtrack( "music/warbird1.mus" );musicvolume( 0.75, .1 );allowMusicDucking( 0 );//--Kameras spawnenspawn( "Camera", "targetname", "cam1");spawn( "Camera", "targetname", "cam2");spawn( "Camera", "targetname", "cam3");spawn( "Camera", "targetname", "cam4");//--Cams laden/* cam.load( "map7_cam1" );cam.load( "map7_rom1" );cam.load( "map7_rom2" );cam.load( "map7_cam2" );cam.load( "map7_cam3" );cam.load( "map7_p_illia1" );cam.load( "map7_illia_cam1" );cam.load( "map7_outpost_cam1" );*///--Energieumleitung$energyrouting.puzzleobject_itemtouse( "Tricorder" );$energyrouting.puzzleobject_itemusedthread( "energyrouting_Used" );$energyrouting.puzzleobject_solvedthread( "energyrouting_Solved" );$energyrouting.puzzleobject_failedthread( "energyrouting_Failed" );$energyrouting.puzzleobject_canceledthread( "energyrouting_Canceled" );//--Erlaubt Kamera-Shakes$world.canShakeCamera( 1 );init();thread intro();}void finish_intro(){killthread("intro");$screen.hide();clearletterbox( .1 );noncinematic();releaseplayer();cueplayer();$illia.remove();wait(.1);$player.give( "models/weapons/worldmodel-tricorder-STX.tik" );$player.useActorWeapon( "TricorderSTX" );thread loop_explosions_bridge();thread collision_counter();//Make a new objective appear: get to the transporter and beam to the planet//Make the blip appear on your radar$illias_transporter_console.missionobjective( 1 );//Make the mission objective appear$player.setobjectiveshow( "transportout", 1 );}void init(){//--NPCs in game$romulan.ai_off();$illia.ai_off();$illia.anim( "ent-library-seat-idle" );$illia.morph( "exp_Serious" );$illia.morph( "exp_Nervous" );$illia.removeactorweapon ( "CompressionRifle" );$illia_prisoner3.ai_off();$illia_prisoner3.removeactorweapon ( "CompressionRifle" );$illia_prisoner3.anim( "cin-m8_situp" );$chang.ai_off();$guard1.ai_off();$guard2.ai_off();$chang.ai_off();$guard1.hide();$guard2.hide();$chang.hide();$guard1.notsolid();$chang.notsolid();$tebok2.ai_off();//Added by TickNSwisted 29/08/2004$npcs_off.notsolid();$npcs_off.ai_off();$beam_illia.ai_off();$beam_illia.morph( "exp_Relief" );$beam_illia.removeactorweapon ( "CompressionRifle" );$beam_illia.hide();$beam_illia.notsolid();$screen.show();$screen.solid();$screen.alpha( 1 );//Added by DrBob, 07/03/04$illia_plasmaleak.hide();$illia_flames.hide();//Add the objectives list$player.loadobjectives( "GBS7" );//--Load modelsspawn("script_object","targetname","fire1");wait(.1);$fire1.model( "models/projectile/projectile-photonball-voyager.tik" );$fire1.scale( .2 );$fire1.hide();spawn("script_object","targetname","fire2");wait(.1);$fire2.model( "models/projectile/projectile-photonball-voyager.tik" );$fire2.hide();$fire2.scale( .2 );$warp.scale( 0.8 );$warp.modelname( "models/fx/fx-warpflash-federation.tik" );$warp.origin( $warbird1.getOrigin() );//--Binding ships, weapons etc$fire_origin1.bind($warbird1_origin);$fire_origin2.bind($warbird1_origin);$warbird1.bind($warbird1_origin);$illia_plasmaleak.bind( $warbird1_origin );$illia_flames.bind( $warbird1_origin );$warbird1.hide();$warbird_talshiar.forcealpha( 1 );$warbird_talshiar.alpha( 0 );$warbird_talshiar.hide();//--Romulan outpost + torpedosglobalCommon_SpawnScriptModel( "projectile/projectile-photonball-voyager.tik", "torp_0", '-872 1264 -8', 0 );globalCommon_SpawnScriptModel( "projectile/projectile-photonball-voyager.tik", "torp_1", '-872 1264 -8', 0 );globalCommon_SpawnScriptModel( "projectile/projectile-photonball-voyager.tik", "torp_2", '-872 1264 -8', 0 );globalCommon_SpawnScriptModel( "projectile/projectile-photonball-voyager.tik", "torp_3", '-872 1264 -8', 0 );$bigBang1.doexplosion( "fx/fx-explosion-crate-attrex-01.tik" );$bigBang3.doexplosion( "fx/fx-explosion-crate-romulan-01.tik" );$bigBang4.doexplosion( "fx/fx-explosion-crate-attrex-large.tik" );$bigBang5.doexplosion( "fx/fx-explosion-crate-romulan-03.tik" );$bigBang2.doexplosion( "fx/fx-explosion-crate-attrex-01.tik" );$bigBang6.doexplosion( "fx/fx-explosion-crate-romulan-03.tik" );$bigBang7.doexplosion( "fx/fx-explosion-crate-klingon-02.tik" );$bigBang8.doexplosion( "fx/fx-explosion-crate-klingon-03.tik" );$bigBang9.doexplosion( "fx/fx-explosion-crate-attrex-large.tik" );$bigBang10.doexplosion( "fx/fx-explosion-crate-romulan-01.tik" );$bigBang11.doexplosion( "fx/fx-explosion-crate-romulan-03.tik" );$bigBang12.doexplosion( "fx/fx-explosion-crate-klingon-03.tik" );$bigBang13.doexplosion( "fx/fx-explosion-crate-attrex-large.tik" );//--Collision-counter$stopCounter.nottriggerable();$chang.updatebosshealth( 1, 1 );$chang.health( 200 );$chang.maxhealth( 201 );$chang.maxbosshealth( 200 );//--Sonstiges$sparks.hide();$planet.hide();$cam1.follow($map7_cam1);$cam1.cut();wait( .1 );cuecamera($cam1);}void shoot_disrupter(entity weapon_parm, entity origin_parm, entity target_parm){weapon_parm.origin(origin_parm.getorigin() );weapon_parm.show();weapon_parm.playsound("sound/weapons/radgun/rad_fire.wav");weapon_parm.time(3);weapon_parm.moveto(target_parm);wait(1);weapon_parm.scale(0.000000001);wait(2.1);weapon_parm.hide();}void shoot_tal(entity weapon_parm, entity origin_parm, entity target_parm, string explosion_parm, entity other_entity){weapon_parm.origin(origin_parm.getorigin() );weapon_parm.show();weapon_parm.playsound("sound/weapons/radgun/rad_fire.wav");weapon_parm.time(1.5);weapon_parm.moveto(target_parm);wait(.5);weapon_parm.scale(0.00001);wait(1);trigger( explosion_parm);wait(.1);other_entity.show();weapon_parm.remove();}void moveWarbird(){triggerEntity( $warp );$bird1_origin1.followpath($bird1_path1);$cam1_origin1.playsound( "sound/ent_getoutof_warp.wav", 0, 4, 20000 );}void intro(){skipthread("finish_intro");cam_fadein( 4, 0, 0, 0, 1, 0 );wait(3);//Menu below modified by DrBob on 07/03/04 to hide mousestuffcmd( "showmenu oberth_system\n" );wait(4);stuffcmd ( "popmenu 0\n" );wait( 2 );triggerEntity( $warp );$warbird1_origin.followpath($warbird_path1);//Modified on 07/03/04 by DrBob to add warpin sound.$warbird1_origin.playsound( "sound/ent_getoutof_warp.wav", 0, 4, 20000 );$warbird1.show();wait( 4 );$cam2.follow($introcam_1);$cam2.cut();wait(.1);cuecamera($cam2);wait( 4 );romulancommander();}void firstShoot(){$cam4.follow($map7_cam2);$cam4.cut();wait( .1 );cuecamera($cam4);wait(.5);thread shoot_disrupter($fire1, $fire_origin1, $fire);wait(1);thread shoot_disrupter($fire2, $fire_origin2, $fire);wait( 2 );attack_outpost();}void romulancommander(){$cam3.follow( $map7_rom1 );$cam3.cut();wait(.1);cuecamera($cam3);$screen.show();$romulan.playdialog("localization/sound/dialog/map07/Tebok/approaching.mp3",1,10000,0);waitfordialog($romulan);$romulan.playdialog("localization/sound/dialog/map07/Tebok/military.mp3",1,10000,0);waitfordialog($romulan);$romulan.playdialog("localization/sound/dialog/map07/Tebok/turnyourship.mp3",1,10000,0);waitfordialog($romulan);$screen.hide();wait( 1.5 );$cam2.follow( $map7_illia_cam1 );$cam2.cut();wait(.1);cuecamera($cam2);wait( .4 );$illia.morph( "exp_Surprise" );$illia.playdialog("localization/sound/dialog/map07/illia/heisangry.mp3", 1, 10000, 0);wait(1);$illia.anim( "ent-frontchair-gesture1" );wait( 1.5 );$illia.unmorph( "exp_Surprise" );firstShoot();}void attack_bridge(){$cam4.follow( $map7_rom2 );$cam4.cut();wait(.1);cuecamera($cam4);cam_fadein( 1.5, 0, 0, 0, 1, 0 );wait( .5 );$player.earthquake( 2, 2 );triggerentity( $exp_center );$exp_center.playsound( "sound/impact/explosion/expl_distnode1.wav", 0, 4, 20000 );$sparks.show();triggerentity( $exp_behind );wait( 1.5 );triggerentity( $exp_behind );wait( .2 );triggerentity( $exp_screen2 );$player.earthquake( 1, 3.5 );wait( .7 );$cam4.earthquake( 1, 1 );wait( 1 );triggerentity( $exp_screen2 );triggerentity( $exp_screen1 );wait( .5 );cam_fadeout( 2, 0, 0, 0, 1, 0 );wait( .2 );triggerentity( $exp_2 );wait( .2 );cam_fadein( 1, 0, 0, 0, 1, 0 );triggerentity( $exp_screen_trans );cuecamera($cam2);$illia_prisoner3.playdialog("localization/sound/dialog/map07/illia/warbirdof.mp3", 1, 10000, 0);waitfordialog( $illia_prisoner3 );$illia_prisoner3.playdialog("localization/sound/dialog/map07/illia/collision.mp3", 1, 1000, 0);waitfordialog( $illia_prisoner3 );cam_fadeout( 1, 0, 0, 0, 1, 0 );wait( 2 );bridge_endcinematic();}void decloak_warbird(){cam_fadein( 1, 0, 0, 0, 1, 0 );$cam2.fov( 85 );$cam2.follow( $map7_p_illia1 );$cam2.cut();wait(.1);cuecamera($cam2);wait( 2.1 );$illia_prisoner3.playdialog("localization/sound/dialog/map07/illia/itwascleartome.mp3", 1, 10000, 0);waitfordialog( $illia_prisoner3 );$illia_prisoner3.playdialog("localization/sound/dialog/map07/illia/minutesof.mp3", 1, 10000, 0);waitfordialog( $illia_prisoner3 );wait( 1.3 );$illia_prisoner3.playdialog("localization/sound/dialog/map07/illia/notgoingtoget.mp3", 1, 10000, 0);waitfordialog( $illia_prisoner3 );$torp_1.hide();$torp_2.hide();wait( .2 );cam_fadeout( 1, 0, 0, 0, 1, 0 );wait( 2 );$cam3.follow( $introcam_2 );$cam3.cut();wait( .1 );cuecamera($cam3);cam_fadein( 2, 0, 0, 0, 1, 0 );wait( 1.7 );//Decloak the ship$warbird_talshiar.playsound( "sound/cloak.wav", 0, 4, 20000 );$warbird_talshiar.fadein( 2, 1 );$warbird_talshiar.show();wait(2.5);$cam1.follow( $map7_cam3 );$cam1.cut();wait( .1 );cuecamera( $cam1 );wait( .5 );thread shoot_tal($torp_1, $weapon_tal_origin, $weapon_tal_origin1, "$explosion", $illia_plasmaleak );wait( 1 );thread shoot_tal($torp_2, $weapon_tal_origin, $weapon_tal_origin1, "$explosion2", $illia_flames);wait( 3 );cam_fadeout( 2, 0, 0, 0, 1, 0 );wait( 2 );cam_fadein( 1, 0, 0, 0, 1, 0 );cuecamera($cam2);$illia_prisoner3.playdialog("localization/sound/dialog/map07/illia/shouldnot.mp3", 1, 10000, 0);waitfordialog( $illia_prisoner3 );cam_fadeout( 1, 0, 0, 0, 1, 0 );wait( 1.5 );attack_bridge();}void attack_outpost(){$cam1.follow( $map7_outpost_cam1 );$cam1.cut();wait(.1);cuecamera ($cam1);wait(.7);thread disrupter0();wait(1);thread disrupter1();wait(1);thread disrupter2();wait(1);thread disrupter3();wait( 4 );decloak_warbird();}void bridge_endcinematic(){$cam4.follow( $map7_rom2 );$cam4.cut();wait(.1);cam_fadein( 2, 0, 0, 0, 1, 0 );cuecamera($cam4);wait( .5 );$player.earthquake( 2, 2 );triggerentity( $exp_screen2 );wait( 1);$player.earthquake( 2.2, 1 );triggerentity( $exp_screen1 );wait( .4 );$player.earthquake( 1.5, 1 );triggerentity( $exp_behind );triggerentity( $exp_screen2 );wait( .6 );triggerentity( $exp_screen1 );$player.earthquake( 1, .4 );wait( .5 );triggerentity( $exp_behind );wait(.3);triggerentity( $exp_screen_trans );thread finish_intro();}void loop_explosions_bridge(){triggerentity( $exp_center );$exp_center.playsound( "sound/impact/explosion/expl_distnode1.wav", 0, 4, 20000 );$player.earthquake( .5, 1 );wait( 2 );triggerentity( $exp_screen1 );wait( 2.5 );triggerentity( $exp_Screen2 );triggerentity( $exp_behind );wait( 2 );$player.earthquake( .5, 1 );triggerentity( $exp_screen1 );wait( 2 );triggerentity( $exp_behind );wait( 1 );triggerentity( $exp_screen2 );triggerentity( $exp_center );$exp_center.playsound( "sound/impact/explosion/expl_drullship.wav", 0, 4, 20000 );$player.earthquake( 1, 2 );wait( 2 );triggerentity( $exp_behind );wait( 1 );thread loop_explosions_bridge();}void disrupter0(){$torp_0.followpath( $proj0_path);wait(2);trigger( "$bigBang11" );$bigBang11.playsound( "sound/impact/explosion/explo_disruptor.wav", 0, 4, 20000 );wait(.1);trigger( "$bigBang12" );wait(.1);trigger( "$bigBang13" );wait(.1);}void disrupter1(){$torp_1.followpath( $proj1_path);wait(1.7);$player.earthquake( 1, 0.3 );trigger( "$bigBang1" );$bigBang1.playsound( "sound/impact/explosion/expl_towerfall.wav", 0, 4, 20000 );wait(.1);trigger( "$bigBang3" );wait(.1);trigger( "$bigBang4" );wait(.1);trigger( "$bigBang5" );$torp_1.trigger("debris");wait(2);$debris.hide();}void disrupter2(){$torp_2.followpath( $proj2_path);wait(2);$player.earthquake( 1, 0.5 );trigger( "$bigBang2" );$bigBang2.playsound( "sound/impact/explosion/explo_shuttleint.wav", 0, 4, 20000 );wait(.1);trigger( "$bigBang6" );wait(.1);trigger( "$bigBang7" );//$proj1_origin.trigger("debris2");trigger( "$debris2");}void disrupter3(){$torp_3.followpath( $proj3_path);wait(2);$player.earthquake( 1, 1 );trigger( "$bigBang8" );$bigBang8.playsound( "sound/impact/explosion/explo_wall1.wav", 0, 4, 20000 );cam_fadeout( 1.5, 1, 1, 1, 1, 0 );wait(.1);trigger( "$bigBang9" );wait(.1);trigger( "$bigBang10" );wait(.1);trigger( "$bigBang8" );wait(.1);trigger( "$bigBang9" );wait(.1);trigger( "$bigBang10" );}void activate_trigger_count(){$stopCounter.triggerable();}void collision_counter(){///////////////////////////COLLSISION-COUNTER///////////////////////////////////////////////////////////////Time to collsision://////////////////////////////////////////////////////////////////60 SECONDS/////////////////////////////////////////////Note: Um den Timer zu verändern, kann man zwei Werte verändern.// Der erste Wert ist dazu da, um festzulegen, wie wiel Schaden// verursacht wird. Der zweite Wert ist dazu da, um festzulegen// wann Chang wieder verletzt wird.//// To determine the overall amount of time available for// the player to save Chang, increase the total amount of// health chang has. -- This will likely be done in the same place// that you call the updatebosshealth(). Keep in mind that health// and maxboss health must be equal for the "lifebar" to be correct//// ADDED WAIT (1.5) end of thread to make countdown 60 secs -TickNSwisted//First Get Initial Value of Chang's lifefloat collision;collision = $chang.gethealth();//Now, continue looping until chang is dead. If chang is saved//before he dies, then killthread MUST be called on this thread//to stop this counter, or should it be? mwuhahahahahahaaaa!while( collision > 1.0 ){//Every iteration damage Chang$chang.addhealth( -1 );collision = $chang.gethealth();//print ("end of cinematic thread life counter\n");//Check if chang is 'dead". If he is, then fail the missionif ( collision < 1.0 ){cam_fadeout( 3, 1, 1, 1, 1, 0 );$player.earthquake( 2, 2 );wait( 2 );$player.earthquake( 5, 2 );wait( 2 );stuffcmd ( "kill\n" );}//Wait a specified interval before damaging againwait( 1.5 );}}//Energieumleitung wird benutztvoid energyrouting_Used(){//print( "energyrouting_Used" );entity puzzle;puzzle = getcurrententity();globalTricorderRoute_Reset();globalTricorderRoute_SetSource1Row( 3 );globalTricorderRoute_SetDestination1( 6, 3 );//--- begin row definitionsglobalTricorderRoute_BeginDef();globalTricorderRoute_SetNextRow( 32, 32, 32, 32, 32, 32, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 32, 32, 32, 32, 11, 32, 32, 32 );globalTricorderRoute_SetNextRow( 1, 20, 32, 32, 32, 7, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 8, 32, 32, 32, 23, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 18, 6, 16, 6, 1, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 32, 9, 32, 4, 22, 0, 3, 7 );globalTricorderRoute_SetNextRow( 32, 32, 17, 32, 32, 32, 32, 2, 6 );globalTricorderRoute_SetNextRow( 32, 32, 11, 32, 32, 32, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 32, 32, 32, 32, 32, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 32, 32, 32, 32, 32, 32, 32, 32 );globalTricorderRoute_SetNextRow( 32, 32, 32, 32, 32, 32, 32, 32, 32 );//--- run the puzzleglobalTricorderRoute_Run( puzzle, 0 );}//Energieumleitung falschvoid energyrouting_Failed(){$energyrouting.puzzleobject_reset();}//Energieumleitung abgebrochenvoid energyrouting_Canceled(){$energyrouting.puzzleobject_reset();}//Energieumleitung abgeschlossenvoid energyrouting_Solved(){spawn( "Camera", "targetname", "illia_beamout_cam" );wait( 0.5 );$illia_beamout_cam.follow( $illia_beamout_path );$illia_beamout_cam.cut();wait( 0.5 );killthread( "collision_counter" );killthread( "loop_explosions_bridge" );$chang.updatebosshealth( 0 );//Make the objective complete$player.setobjectivecomplete( "transportout", 1 );//Make the blip disappear on your radar$illias_transporter_console.missionobjective( 0 );freezeplayer();$player.hide();$player.notsolid();cinematic();letterbox( 0.1 );$beam_illia.show();cuecamera( $illia_beamout_cam );wait( 2 );$beam_illia.DisplayEffect( "TransportOut", "Romulan" );wait( 2.7 );cam_fadeout( 2, 0, 0, 0, 1, 0 );musicvolume( 1.2, .1 );music( "action" );wait( .3 );//thread warbirds_boom();warbirds_boom();}void warbirds_boom(){$player.notsolid();$player.hide();//letterbox( .1 );//cinematic();//freezeplayer();$planet.show();$cam1.follow($collision_cam1, $warbird_collision_illia);$cam1.cut();wait( .1 );cam_fadein( 2, 0, 0, 0, 1, 0 );cuecamera($cam1);$warbird_collision_illia.time(12.2);$warbird_collision_illia.moveto($collision_point);wait( 4 );$cam2.follow($collision_cam2);$cam2.cut();wait( .1 );cuecamera($cam2);wait( 4 );$cam3.follow($collision_cam3);$cam3.cut();wait( .1 );cuecamera($cam3);wait( 3.2 );triggerentity($exp_col1);wait( .5 );triggerentity($exp_col2);wait( .1 );triggerentity($exp_col3);wait( .1 );triggerentity($bigboom);$warbird_collision_illia.hide();$warbird_collision_tal.hide();wait( 3 );stuffcmd("map map8 \n");/*$player.show();$player.solid();clearletterbox( .1 );noncinematic();releaseplayer();cueplayer();*/}void hall_collapse(){triggerentity( $exp_hall_01 );$player.playsound ("sound/environment/metal/bigcreak.wav" );//$hall_rotate.playsound ("sound/environment/metal/metal_creak2.wav" );$player.earthquake( 3, 4 );wait (.5);triggerentity( $exp_hall_02 );triggerentity( $snd_hall_02 );$hall_rotate.playsound ( "sound/environment/metal/metal_explo3.wav" );$hall_rotate.time (1);$hall_rotate.movedown (320);wait (1);$player.playsound ("sound/explo_large_06.wav" );}