Advertisement
Guest User

Untitled

a guest
Sep 29th, 2010
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.12 KB | None | 0 0
  1. #include maps\mp\_utility;
  2. #include maps\mp\gametypes\_hud_util;
  3.  
  4. init()
  5. {
  6. precacheShader("objpoint_default");
  7.  
  8. level.objPointNames = [];
  9. level.objPoints = [];
  10.  
  11. if ( level.splitscreen )
  12. level.objPointSize = 15;
  13. else
  14. level.objPointSize = 8;
  15.  
  16. level.objpoint_alpha_default = .5;
  17. level.objPointScale = 1.0;
  18. }
  19.  
  20.  
  21. createTeamObjpoint( name, origin, team, shader, alpha, scale )
  22. {
  23. assert( team == "axis" || team == "allies" || team == "all" );
  24.  
  25. objPoint = getObjPointByName( name );
  26.  
  27. if ( isDefined( objPoint ) )
  28. deleteObjPoint( objPoint );
  29.  
  30. if ( !isDefined( shader ) )
  31. shader = "objpoint_default";
  32.  
  33. if ( !isDefined( scale ) )
  34. scale = 1.0;
  35.  
  36. if ( team != "all" )
  37. objPoint = newTeamHudElem( team );
  38. else
  39. objPoint = newHudElem();
  40.  
  41. objPoint.name = name;
  42. objPoint.x = origin[0];
  43. objPoint.y = origin[1];
  44. objPoint.z = origin[2];
  45. objPoint.team = team;
  46. objPoint.isFlashing = false;
  47. objPoint.isShown = true;
  48.  
  49. objPoint setShader( shader, level.objPointSize, level.objPointSize );
  50. objPoint setWaypoint( true, false );
  51.  
  52. if ( isDefined( alpha ) )
  53. objPoint.alpha = alpha;
  54. else
  55. objPoint.alpha = level.objpoint_alpha_default;
  56. objPoint.baseAlpha = objPoint.alpha;
  57.  
  58. objPoint.index = level.objPointNames.size;
  59. level.objPoints[name] = objPoint;
  60. level.objPointNames[level.objPointNames.size] = name;
  61.  
  62. return objPoint;
  63. }
  64.  
  65.  
  66. deleteObjPoint( oldObjPoint )
  67. {
  68. assert( level.objPoints.size == level.objPointNames.size );
  69.  
  70. if ( level.objPoints.size == 1 )
  71. {
  72. assert( level.objPointNames[0] == oldObjPoint.name );
  73. assert( isDefined( level.objPoints[oldObjPoint.name] ) );
  74.  
  75. level.objPoints = [];
  76. level.objPointNames = [];
  77. oldObjPoint destroy();
  78. return;
  79. }
  80.  
  81. newIndex = oldObjPoint.index;
  82. oldIndex = (level.objPointNames.size - 1);
  83.  
  84. objPoint = getObjPointByIndex( oldIndex );
  85. level.objPointNames[newIndex] = objPoint.name;
  86. objPoint.index = newIndex;
  87.  
  88. level.objPointNames[oldIndex] = undefined;
  89. level.objPoints[oldObjPoint.name] = undefined;
  90.  
  91. oldObjPoint destroy();
  92. }
  93.  
  94.  
  95. updateOrigin( origin )
  96. {
  97. if ( self.x != origin[0] )
  98. self.x = origin[0];
  99.  
  100. if ( self.y != origin[1] )
  101. self.y = origin[1];
  102.  
  103. if ( self.z != origin[2] )
  104. self.z = origin[2];
  105. }
  106.  
  107.  
  108. setOriginByName( name, origin )
  109. {
  110. objPoint = getObjPointByName( name );
  111. objPoint updateOrigin( origin );
  112. }
  113.  
  114.  
  115. getObjPointByName( name )
  116. {
  117. if ( isDefined( level.objPoints[name] ) )
  118. return level.objPoints[name];
  119. else
  120. return undefined;
  121. }
  122.  
  123. getObjPointByIndex( index )
  124. {
  125. if ( isDefined( level.objPointNames[index] ) )
  126. return level.objPoints[level.objPointNames[index]];
  127. else
  128. return undefined;
  129. }
  130.  
  131. startFlashing()
  132. {
  133. self endon("stop_flashing_thread");
  134.  
  135. if ( self.isFlashing )
  136. return;
  137.  
  138. self.isFlashing = true;
  139.  
  140. while ( self.isFlashing )
  141. {
  142. self fadeOverTime( 0.75 );
  143. self.alpha = 0.35 * self.baseAlpha;
  144. wait ( 0.75 );
  145.  
  146. self fadeOverTime( 0.75 );
  147. self.alpha = self.baseAlpha;
  148. wait ( 0.75 );
  149. }
  150.  
  151. self.alpha = self.baseAlpha;
  152. }
  153.  
  154. stopFlashing()
  155. {
  156. if ( !self.isFlashing )
  157. return;
  158.  
  159. self.isFlashing = false;
  160. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement