Advertisement
Guest User

Untitled

a guest
Sep 29th, 2010
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. #include maps\mp\_utility;
  2. #include common_scripts\utility;
  3.  
  4. /*QUAKED trigger_multiple_area (0.12 0.23 1.0)
  5. defaulttexture="trigger"
  6. "script_area" - A localized string that names the area. e.g. "MP_FLOWER_SHOP"
  7. Defines an area that the player is in.*/
  8.  
  9. /*QUAKED trigger_multiple_softlanding (0.12 0.23 1.0)
  10. defaulttexture="trigger"
  11. "script_type" - "car", "boxes", "trash"
  12. Defines a soft landing area.*/
  13.  
  14. /*QUAKED script_vehicle_snowmobile_player_mp (1 0 0) (-16 -16 -24) (16 16 32) USABLE SPAWNER
  15.  
  16. put this in your GSC:
  17. maps\_snowmobile_player::main( "vehicle_snowmobile" );
  18.  
  19. and these lines in your CSV:
  20. include,vehicle_snowmobile_snowmobile_player
  21. sound,vehicle_snowmobile,vehicle_standard,all_sp
  22.  
  23.  
  24. defaultmdl="vehicle_snowmobile"
  25. default:"vehicletype" "snowmobile_player_mp"
  26. */
  27.  
  28. init()
  29. {
  30. level.softLandingTriggers = getEntArray( "trigger_multiple_softlanding", "classname" );
  31.  
  32. destructibles = getEntArray( "destructible_vehicle", "targetname" );
  33.  
  34. foreach ( trigger in level.softLandingTriggers )
  35. {
  36. if ( trigger.script_type != "car" )
  37. continue;
  38.  
  39. foreach ( destructible in destructibles )
  40. {
  41. /*
  42. if ( !trigger isTouching( destructible ) )
  43. {
  44. println( distance( trigger.origin, destructible.origin ) );
  45. continue;
  46. }
  47. */
  48.  
  49. if ( distance( trigger.origin, destructible.origin ) > 64.0 )
  50. continue;
  51.  
  52. assert( !isDefined( trigger.destructible ) );
  53.  
  54. trigger.destructible = destructible;
  55. }
  56. }
  57.  
  58. //foreach ( trigger in level.softLandingTriggers )
  59. // trigger thread common_scripts\_dynamic_world::triggerTouchThink( ::playerEnterSoftLanding, ::playerLeaveSoftLanding );
  60.  
  61. thread onPlayerConnect();
  62. }
  63.  
  64.  
  65. onPlayerConnect()
  66. {
  67. for ( ;; )
  68. {
  69. level waittill ( "connected", player );
  70.  
  71. player.softLanding = undefined;
  72.  
  73. player thread softLandingWaiter();
  74. }
  75. }
  76.  
  77.  
  78. playerEnterSoftLanding( trigger )
  79. {
  80. self.softLanding = trigger;
  81. }
  82.  
  83.  
  84. playerLeaveSoftLanding( trigger )
  85. {
  86. self.softLanding = undefined;
  87. }
  88.  
  89.  
  90. softLandingWaiter()
  91. {
  92. self endon ( "disconnect" );
  93.  
  94. for ( ;; )
  95. {
  96. self waittill ( "soft_landing", trigger, damage );
  97.  
  98. //if ( damage < 10 )
  99. // continue;
  100.  
  101. if ( !isDefined( trigger.destructible ) )
  102. continue;
  103.  
  104. //magicBullet( "mp5_mp", self.origin, self.origin + (0,0,-100), self );
  105.  
  106. //self waittill( "damage", damage, attacker, direction_vec, point, type, modelName, tagName, partName, dflags );
  107.  
  108. //traceData = bulletTrace( self.origin, self.origin + (0,0,-100), true, self );
  109.  
  110. }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement