Advertisement
Guest User

Untitled

a guest
Sep 29th, 2010
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.24 KB | None | 0 0
  1. init()
  2. {
  3. precacheShader("damage_feedback");
  4. precacheShader("damage_feedback_j");
  5. precacheShader("damage_feedback_endgame");
  6. precacheShader("scavenger_pickup");
  7.  
  8. level thread onPlayerConnect();
  9. }
  10.  
  11. onPlayerConnect()
  12. {
  13. for(;;)
  14. {
  15. level waittill("connected", player);
  16.  
  17. player.hud_damagefeedback = newClientHudElem(player);
  18. player.hud_damagefeedback.horzAlign = "center";
  19. player.hud_damagefeedback.vertAlign = "middle";
  20. player.hud_damagefeedback.x = -12;
  21. player.hud_damagefeedback.y = -12;
  22. player.hud_damagefeedback.alpha = 0;
  23. player.hud_damagefeedback.archived = true;
  24. player.hud_damagefeedback setShader("damage_feedback", 24, 48);
  25. }
  26. }
  27.  
  28. updateDamageFeedback( typeHit )
  29. {
  30. if ( !isPlayer( self ) )
  31. return;
  32.  
  33. x = -12;
  34. y = -12;
  35.  
  36. if ( getDvarInt( "camera_thirdPerson" ) )
  37. yOffset = self GetThirdPersonCrosshairOffset() * 240;
  38. else
  39. yOffset = getdvarfloat( "cg_crosshairVerticalOffset" ) * 240;
  40.  
  41. if ( level.splitscreen )
  42. yOffset *= 0.5;
  43.  
  44. feedbackDurationOverride = 0;
  45. startAlpha = 1;
  46.  
  47. if ( typeHit == "hitBodyArmor" )
  48. {
  49. self.hud_damagefeedback setShader("damage_feedback_j", 24, 48);
  50. self playlocalsound("MP_hit_alert"); // TODO: change sound?
  51. }
  52. else if ( typeHit == "hitEndGame" )
  53. {
  54. self.hud_damagefeedback setShader("damage_feedback_endgame", 24, 48);
  55. self playlocalsound("MP_hit_alert");
  56. }
  57. else if ( typeHit == "stun" )
  58. {
  59. return;
  60. }
  61. else if ( typeHit == "none" )
  62. {
  63. return;
  64. }
  65. else if ( typeHit == "scavenger" && !level.hardcoreMode )
  66. {
  67. x = -36;
  68. y = 32;
  69. self.hud_damagefeedback setShader("scavenger_pickup", 64, 32);
  70. feedbackDurationOverride = 2.5;
  71. }
  72. else
  73. {
  74. self.hud_damagefeedback setShader("damage_feedback", 24, 48);
  75. self playlocalsound("MP_hit_alert");
  76. }
  77.  
  78. self.hud_damagefeedback.alpha = startAlpha;
  79. if ( feedBackDurationOverride != 0 )
  80. self.hud_damagefeedback fadeOverTime(feedbackDurationOverride);
  81. else
  82. self.hud_damagefeedback fadeOverTime(1);
  83.  
  84. self.hud_damagefeedback.alpha = 0;
  85.  
  86. // only update hudelem positioning when necessary
  87. if ( self.hud_damagefeedback.x != x )
  88. self.hud_damagefeedback.x = x;
  89.  
  90. y = y - int( yOffset );
  91. if ( self.hud_damagefeedback.y != y )
  92. self.hud_damagefeedback.y = y;
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement