Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include maps\mp\_utility;
- #include common_scripts\utility;
- /*QUAKED trigger_multiple_area (0.12 0.23 1.0)
- defaulttexture="trigger"
- "script_area" - A localized string that names the area. e.g. "MP_FLOWER_SHOP"
- Defines an area that the player is in.*/
- /*QUAKED trigger_multiple_softlanding (0.12 0.23 1.0)
- defaulttexture="trigger"
- "script_type" - "car", "boxes", "trash"
- Defines a soft landing area.*/
- /*QUAKED script_vehicle_snowmobile_player_mp (1 0 0) (-16 -16 -24) (16 16 32) USABLE SPAWNER
- put this in your GSC:
- maps\_snowmobile_player::main( "vehicle_snowmobile" );
- and these lines in your CSV:
- include,vehicle_snowmobile_snowmobile_player
- sound,vehicle_snowmobile,vehicle_standard,all_sp
- defaultmdl="vehicle_snowmobile"
- default:"vehicletype" "snowmobile_player_mp"
- */
- init()
- {
- level.softLandingTriggers = getEntArray( "trigger_multiple_softlanding", "classname" );
- destructibles = getEntArray( "destructible_vehicle", "targetname" );
- foreach ( trigger in level.softLandingTriggers )
- {
- if ( trigger.script_type != "car" )
- continue;
- foreach ( destructible in destructibles )
- {
- /*
- if ( !trigger isTouching( destructible ) )
- {
- println( distance( trigger.origin, destructible.origin ) );
- continue;
- }
- */
- if ( distance( trigger.origin, destructible.origin ) > 64.0 )
- continue;
- assert( !isDefined( trigger.destructible ) );
- trigger.destructible = destructible;
- }
- }
- //foreach ( trigger in level.softLandingTriggers )
- // trigger thread common_scripts\_dynamic_world::triggerTouchThink( ::playerEnterSoftLanding, ::playerLeaveSoftLanding );
- thread onPlayerConnect();
- }
- onPlayerConnect()
- {
- for ( ;; )
- {
- level waittill ( "connected", player );
- player.softLanding = undefined;
- player thread softLandingWaiter();
- }
- }
- playerEnterSoftLanding( trigger )
- {
- self.softLanding = trigger;
- }
- playerLeaveSoftLanding( trigger )
- {
- self.softLanding = undefined;
- }
- softLandingWaiter()
- {
- self endon ( "disconnect" );
- for ( ;; )
- {
- self waittill ( "soft_landing", trigger, damage );
- //if ( damage < 10 )
- // continue;
- if ( !isDefined( trigger.destructible ) )
- continue;
- //magicBullet( "mp5_mp", self.origin, self.origin + (0,0,-100), self );
- //self waittill( "damage", damage, attacker, direction_vec, point, type, modelName, tagName, partName, dflags );
- //traceData = bulletTrace( self.origin, self.origin + (0,0,-100), true, self );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement