foobard
This commit is contained in:
149
maps/mp/mp_compact.gsc
Executable file
149
maps/mp/mp_compact.gsc
Executable file
@@ -0,0 +1,149 @@
|
||||
#include maps\mp\_utility;
|
||||
|
||||
main()
|
||||
{
|
||||
maps\mp\mp_compact_precache::main();
|
||||
maps\createart\mp_compact_art::main();
|
||||
maps\mp\mp_compact_fx::main();
|
||||
|
||||
maps\mp\_destructible_dlc::main(); // call before _load
|
||||
maps\mp\_load::main();
|
||||
|
||||
maps\mp\_compass::setupMiniMap( "compass_map_mp_compact" );
|
||||
|
||||
setdvar( "r_lightGridEnableTweaks", 1 );
|
||||
setdvar( "r_lightGridIntensity", 1.10 );
|
||||
setdvar( "r_lightGridContrast", 1 );
|
||||
setdvar( "compassmaxrange", "1700" );
|
||||
|
||||
ambientPlay( "ambient_mp_compact" );
|
||||
|
||||
game["attackers"] = "allies";
|
||||
game["defenders"] = "axis";
|
||||
|
||||
//doMagnet();
|
||||
|
||||
//level thread crusherControl();
|
||||
}
|
||||
|
||||
doMagnet()
|
||||
{
|
||||
strength = 18000;
|
||||
if ( getdvar( "scr_compact_magnet_strength" ) != "" )
|
||||
strength = getdvarfloat( "scr_compact_magnet_strength" );
|
||||
if ( strength == 0 )
|
||||
return;
|
||||
|
||||
radius = 250;
|
||||
if ( getdvar( "scr_compact_magnet_radius" ) != "" )
|
||||
radius = getdvarfloat( "scr_compact_magnet_radius" );
|
||||
if ( radius <= 0 )
|
||||
return;
|
||||
|
||||
magnet = getent( "magnetorg", "targetname" );
|
||||
Missile_CreateAttractorEnt( magnet, strength, radius );
|
||||
}
|
||||
|
||||
crusherControl()
|
||||
{
|
||||
//button = getEnt( "button01", "targetname" );
|
||||
crusher = getEnt( "crusher01", "targetname" );
|
||||
|
||||
crushTop = getEnt( "crushtop01", "targetname" );
|
||||
playerDetector = getEnt( "onelevator", "targetname" );
|
||||
|
||||
upOrigin = crusher getOrigin();
|
||||
downOrigin = upOrigin + (0,0,-128);
|
||||
|
||||
//button.origin = button.origin + (0,0,20);
|
||||
|
||||
crushTop thread triggerLinkThread( crusher );
|
||||
crushTop thread crushEmThread();
|
||||
playerDetector thread triggerLinkThread( crusher );
|
||||
playerDetector thread playerDetectorThread();
|
||||
|
||||
//precacheString( &"MP_PRESS_TO_RAPPEL" );
|
||||
//button setHintString( &"MP_PRESS_TO_RAPPEL" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
/*
|
||||
button makeUsable();
|
||||
button waittill ( "trigger", player );
|
||||
button playSound( "vending_machine_button_press" );
|
||||
button makeUnusable();
|
||||
*/
|
||||
|
||||
// move down
|
||||
crusher playSound( "elev_run_start" );
|
||||
crusher playLoopSound( "elev_run_loop" );
|
||||
|
||||
crusher moveTo( downOrigin, 10.0 );
|
||||
crusher waittill ( "movedone" );
|
||||
|
||||
crusher stopLoopSound( "elev_run_loop" );
|
||||
crusher playSound( "elev_run_end" );
|
||||
|
||||
/*
|
||||
button makeUsable();
|
||||
button waittill ( "trigger", player );
|
||||
button playSound( "vending_machine_button_press" );
|
||||
button makeUnusable();
|
||||
*/
|
||||
|
||||
wait 2;
|
||||
|
||||
// wait until a player gets on
|
||||
playerDetector waittill( "trigger", player );
|
||||
|
||||
// move up
|
||||
crusher playSound( "elev_run_start" );
|
||||
crusher playLoopSound( "elev_run_loop" );
|
||||
|
||||
crusher moveTo( upOrigin, 10.0 );
|
||||
crusher waittill ( "movedone" );
|
||||
|
||||
crusher stopLoopSound( "elev_run_loop" );
|
||||
crusher playSound( "elev_run_end" );
|
||||
|
||||
wait 2;
|
||||
|
||||
// wait until no players are on
|
||||
while ( gettime() - playerDetector.triggertime <= 2000 )
|
||||
wait .05;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
triggerLinkThread( crusher )
|
||||
{
|
||||
for ( ;; )
|
||||
{
|
||||
self.origin = crusher.origin;
|
||||
|
||||
wait ( 0.05 );
|
||||
}
|
||||
}
|
||||
|
||||
playerDetectorThread()
|
||||
{
|
||||
self.triggertime = gettime();
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "trigger", player );
|
||||
self.triggertime = gettime();
|
||||
}
|
||||
}
|
||||
|
||||
crushEmThread()
|
||||
{
|
||||
crushBottom = getEnt( "crushbtm01", "targetname" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill ( "trigger", player );
|
||||
|
||||
if ( player isTouching( crushBottom ) && isReallyAlive( player ) )
|
||||
player _suicide();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user