Subversion-Projekte sthq.gbs

Revision

Revision 845 | Revision 854 | Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

// EF2 Level Script File
//
// Level:               map3b.bsp
// Script By:           Cortex, Argyle, ltiefland
// Geometry By:         Argyle, Cortex, Alpharaptor
// Created on:          17/11/03
// Last Edited on:  20/01/07
// Last Edited by:      ltiefland

#include "maps/global_scripts/global_archetype.scr"
#include "maps/global_scripts/global_common.scr"
#include "maps/global_scripts/global_playerLoadout.scr"
#include "maps/global_scripts/global_debugUtils.scr"
#include "maps/global_scripts/global_array.scr"
#include "maps/global_scripts/global_math.scr"
#include "maps/global_scripts/global_acceleratedMovement.scr"
#include "maps/attackplayer.scr"

void jeff_door_open();
void jeff_door_close();
void ff1();
void ff2();
void ff3();
void switch_open();
void lever_move();
void alexia_walk();
void door_field_active();
void spotted();
//void spotted_action();
void trap_activation();
void north();
void east();
void south();
void west();
void neil_find();
void sarah_find();
void levelchange();
void closed_door_sound();
void closed_door_sound_2();


//-----------------------------MAP3EX ORIGINAL SCRIPT------------------------------------------------------------

void jeff_door_open()
{
        $latch.time( 0.2 );
        $latch.movedown(4);
        $latch.playsound( "sound/environment/metal/panel_close1.wav" );
        wait(1);
        $latch.bind( $jeff_door_origin );
        $jeff_door.bind( $jeff_door_origin );
        $jeff_door_origin.time( 2.5 );
        $jeff_door_origin.playsound( "sound/doors/drull_smldoor_01.wav" );
        $jeff_door_origin.rotateto( '0 90 0' );
        waitfor( $jeff_door_origin );
        $jeff_door_origin.playsound( "sound/doors/drull_smldoor_stop_01.wav" );
}

void jeff_door_close()
{
        $latch.bind( $jeff_door_origin );
        $jeff_door.bind( $jeff_door_origin );
        $jeff_door_origin.time( 2.5 );
        $jeff_door_origin.playsound( "sound/doors/drull_smldoor_01.wav" );
        $jeff_door_origin.rotateto( '0 0 0' );
        waitfor( $jeff_door_origin );
        $jeff_door_origin.playsound( "sound/doors/drull_smldoor_stop_01.wav" );
        wait(1);
        $latch.time( 0.2 );
        $latch.moveup(4);
        $latch.playsound( "sound/environment/metal/panel_close1.wav" );
}


void ff1()
{
        $cor_ff1.show();
        $cor_ff1.solid();
        $cor_ff1.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $cor_ff1.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
        $ff2_trig.triggerable();
}

void ff2()
{
        $cor_ff2.show();
        $cor_ff2.solid();
        $cor_ff2.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $cor_ff2.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
}

void ff3()
{
        $cor_ff3.show();
        $cor_ff3.solid();
        $cor_ff3.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $cor_ff3.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
        $ff2_trig.triggerable();
}

void switch_open()
{
        $lever_door.movewest(1);
        wait(0.1);
        $lever_door.movenorth(35);
        $lever_door.time(2);
        $lever_door.playsound( "sound/ships/forever/for_gravpanel.wav", 1, 1, 11111 );
        waitfor( $lever_door );
        $lever_door.playsound( "sound/ships/forever/for_gravpanelstop.wav", 1, 1, 11111 );
}

void lever_move()
{
        $lever_one.time(0.2);
        $lever_one.movedown(15);
        $player.playsound( "sound/environment/metal/panel_close1.wav");
        wait(0.2);
        $player.playsound("sound/environment/computer/lcars_yes.wav");
        $alexia.notsolid();
        $alexia.hide();
        $alexia1.solid();
        $alexia1.show();
        $door_field.hide();
        $door_field.notsolid();
        $door_field.stoploopsound();
}

void alexia_walk()
{
        $alexia.walkto( "$alexia_nav1", "walk" );
        waitfor( $alexia );
        $alexia.walkto( "alexia_nav2", "walk" );
        waitfor( $alexia );
        $alexia.walkto( "$alexia_nav3", "walk" );
        waitfor( $alexia );
        $alexia.hide();
        $alexia.notsolid();
        $alexia1.show();
}

void door_field_active()
{
        $door_field.show();
        $door_field.solid();
        $door_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $door_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
        $lever.triggerable();
}

void spotted()
{
        //$office_field.solid();
        //$spotted_trigger2.nottriggerable();
        //$spotted_trigger3.nottriggerable();
        //$spotted_trigger4.nottriggerable();
        $emma.removeactorweapon( "EnterpriseDatapad" );
        $emma.anim( "idle" );
        $emma.turntoangle( 160 );
        $emma.headwatchtarget( "player" , 7 );

        wait(0.5);

        $emma.anim( "tap_comm" );
        waitforanimation( $emma, "tap_comm" );
        $player.playsound( "sound/misc/player/communicatorbeep.wav", 1, 1, 11111 );
        $emma.anim( "idle" );
        $alexia1.anim( "idle" );
        wait(0.2);
        $alexia1.turntoangle( 60 );
        $alexia1.headwatchtarget( "player" , 7 );
        $comp_screen.hide();
        $office_door.lock();
        $sick_door.lock();
        //$office_field.show();
        $office_field2.show();
        $office_field2.solid();
        $office_field2.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $office_field2.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
        wait(0.3);
        //$office_door_field.show();
        //$office_door_field.solid();
        //$office_door_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        //$office_door_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
        wait(0.3);
        $sick_door_field.show();
        $sick_door_field.solid();
        $sick_door_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $sick_door_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );

        AIShowGroup    ( 668, "Federation" );
        $security3.ai_on();
        $security4.ai_on();
        CommandToGroup ( 668 , "groupactortype" , "enemy" , "");
        CommandToGroup ( 668 , "visiondistance" , "4000" , "" );
        CommandToGroup ( 668 , "fov" , "360" , "" );
        CommandToGroup ( 668 , "attack" , "$player" , "" );
}


void spotted_action()
{
}

void trap_activation()
{
        $west_trigger.triggerable();    
}

void north()
{
        $north_field.show();
        $north_field.solid();
        $north_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $north_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );

        $sarah_find_trig.nottriggerable();
        $neil_find_trig.nottriggerable();
        $east_trigger.triggerable();
        $south_trigger.triggerable();
}

void east()
{
        $east_field.show();
        $east_field.solid();
        $east_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
}

void south()
{
        $south_field.show();
        $south_field.solid();
        $south_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $south_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
}

void west()
{
        $west_field.show();
        $west_field.solid();
        $west_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $west_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );

        $sarah_find_trig.nottriggerable();
        $neil_find_trig.nottriggerable();
        $east_trigger.triggerable();
        $south_trigger.triggerable();
}

void neil_find()
{
        $neil.solid();
        $neil.show();

        $neil.walkto( "$neil_nav1", "walk" );
        waitfor( $neil );
        $neil.walkto( "$neil_nav2", "walk" );
        waitfor( $neil );
        $neil.walkto( "$neil_nav3", "walk" );
        waitfor( $neil );
        $neil.headwatchtarget( "player" , 7 );
        $neil.anim( "tap_comm" );
        waitforanimation( $neil, "tap_comm" );
        $neil.playsound( "sound/misc/player/communicatorbeep.wav", 1, 1, 11111 );
        $neil.anim( "idle" );

        $east_field.show();
        $east_field.solid();
        $east_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $east_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );

        $sarah_find_trig.nottriggerable();
        $south_trigger.triggerable();
}

void sarah_find()
{
        $sarah.solid();
        $sarah.show();

        $sarah.walkto( "$sarah_nav1", "walk" );
        waitfor( $sarah );
        $sarah.walkto( "$sarah_nav2", "walk" );
        $sarah.headwatchtarget( "player" , 7 );
        $sarah.anim( "tap_comm" );
        waitforanimation( $sarah, "tap_comm" );
        $sarah.playsound( "sound/misc/player/communicatorbeep.wav", 1, 1, 11111 );
        $sarah.anim( "idle" );

        $south_field.show();
        $south_field.solid();
        $south_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
        $south_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );

        $neil_find_trig.nottriggerable();
        $east_trigger.triggerable();
}

void levelchange()
{
      stuffcmd("map map4 \n");
}

void closed_door_sound()
{
        $player.playsound( "sound/doors/door_locked.wav");
}

void closed_door_sound_2()
{
        $player.playsound( "sound/environment/computer/lcars_no.wav");
}

void main()
{

//-----------------------MAP3EX ORIGINAL SCRIPT--------------------------------
        $cor_ff1.hide();
        $cor_ff2.hide();
        $cor_ff3.hide();
        $cor_ff1.notsolid();
        $cor_ff2.notsolid();
        $cor_ff3.notsolid();
        $ff2_trig.nottriggerable();
        //$office_door_field.notsolid();
        //$office_field.notsolid();
        //$office_field.hide();
        $office_field2.hide();
        $sick_door_field.notsolid();
        $sick_door_field.hide();
        //$office_door_field.hide();
        //$office_field.hide();
        $office_field2.hide();
        $sick_door_field.hide();
        $door_field.hide();
        $door_field.hide();
        $door_field.notsolid();
        $lever.nottriggerable();
        //--------------------------------------------------
        $alexia.ai_off();
        $alexia.anim( "idle" );
        $alexia.removeactorweapon( "CompressionRifle" );
        $alexia.useactorweapon( "none" );
        $alexia.pushable( 0 );

        $emma.ai_off();
        $emma.anim( "idle" );
        $emma.removeactorweapon( "CompressionRifle" );
        $emma.useactorweapon( "none" );
        $emma.pushable( 0 );
        $emma.useactorweapon( "EnterpriseDatapad" );
        $emma.anim( "ent-datapad-use" );

        $alexia1.ai_off();
        $alexia1.anim( "ent-table-gesture2" );
        $alexia1.removeactorweapon( "CompressionRifle" );
        $alexia1.useactorweapon( "none" );
        $alexia1.pushable( 0 );
        $alexia1.notsolid();
        $alexia1.hide();

        $neil.ai_off();
        $neil.anim( "idle" );
        $neil.removeactorweapon( "CompressionRifle" );
        $neil.useactorweapon( "none" );
        $neil.pushable( 0 );
        $neil.hide();
        $neil.notsolid();

        $sarah.ai_off();
        $sarah.anim( "idle" );
        $sarah.removeactorweapon( "CompressionRifle" );
        $sarah.useactorweapon( "none" );
        $sarah.pushable( 0 );
        $sarah.hide();
        $sarah.notsolid();

        //-------------------------------------------------
        $security3.setgroupid ( 668 );
        $security3.pushable( 0 );
        $security3.giveactorweapon( "actorweapons/fed-compressionrifle.tik", 1.0 );
        $security3.useactorweapon( "CompressionRifle" );

        $security4.setgroupid ( 668 );
        $security4.pushable( 0 );
        $security4.giveactorweapon( "actorweapons/fed-compressionrifle.tik", 1.0 );
        $security4.useactorweapon( "CompressionRifle" );

        $security3.hide();
        $security3.notsolid();
        $security4.hide();
        $security4.notsolid();
        //-------------------------------------------------
        $east_trigger.nottriggerable();
        $south_trigger.nottriggerable();
        $west_trigger.nottriggerable(); 

        $north_field.hide();
        $north_field.notsolid();

        $east_field.hide();
        $east_field.notsolid();

        $south_field.hide();
        $south_field.notsolid();

        $west_field.hide();
        $west_field.notsolid();


        //Archetypes
        thread globalArchetype_Setup( $hint_lever, "hint_lever");

}