Advertisement
Guest User

takedamage

a guest
Nov 17th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.59 KB | None | 0 0
  1. public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
  2. {
  3.     new Float:damage, Float:health, Float:armour;
  4.     GetPlayerHealth(playerid, health);
  5.     GetPlayerArmour(playerid, armour);
  6.    
  7.     if(issuerid != INVALID_PLAYER_ID)
  8.     {
  9.         if(weaponid == 23 && OdlegloscGracze(15.0,playerid, issuerid) && PlayerData[issuerid][pSluzba] == true) //paralizator
  10.         {
  11.             SetTimerEx("UnFreeze", 12 * 1000, 0, "d", playerid);
  12.             ApplyAnimation(playerid,"CRACK","crckdeth2", 4.1, 0, 1, 1, 1, 0);
  13.             GameTextForPlayer(playerid, "~r~Dostales z paralizatora", 2500, 3);
  14.             GameTextForPlayer(issuerid, "~r~Trafiles z paralizatora", 2500, 3);
  15.             return 1;
  16.         }
  17.         if(weaponid >= 2 || weaponid <= 38)
  18.         {
  19.             switch(bodypart)
  20.             {
  21.                 case 3: //Klatka
  22.                 {
  23.                     if(armour>1) SetPlayerHealth(playerid, health);
  24.                     if(armour<1) SetPlayerHealth(playerid, health - 40.5);
  25.                 }
  26.                 case 4: //Krocze
  27.                 {
  28.                     if(armour>1) SetPlayerHealth(playerid, health);
  29.                     if(armour<1) SetPlayerHealth(playerid, health - 17.5);
  30.                 }
  31.                 case 5: //Lewe ramie
  32.                 {
  33.                     if(armour>1) SetPlayerHealth(playerid, health);
  34.                     if(armour<1) SetPlayerHealth(playerid, health - 15);
  35.                 }
  36.                 case 6: //Prawie ramie
  37.                 {
  38.                     if(armour>1) SetPlayerHealth(playerid, health);
  39.                     if(armour<1) SetPlayerHealth(playerid, health - 15.5);
  40.                 }
  41.                 case 7: //Lewa noga
  42.                 {
  43.                     if(armour>1) SetPlayerHealth(playerid, health);
  44.                     if(armour<1) SetPlayerHealth(playerid, health - 9.0+random(10));
  45.                 }
  46.                 case 8: //Prawa noga
  47.                 {
  48.                     if(armour>1) SetPlayerHealth(playerid, health);
  49.                     if(armour<1) SetPlayerHealth(playerid, health - 9.0+random(10));
  50.                 }
  51.                 case 9: //Glowa
  52.                 {
  53.                     SetPlayerHealth(playerid, 0.0000);
  54.                 }
  55.             }
  56.         }
  57.         if(weaponid == 0)
  58.         {
  59.             new bajceps =  PlayerData[issuerid][pSila] - 3000;
  60.             switch(bajceps)
  61.             {
  62.                 case 0..100:   damage = 5.0;
  63.                 case 101..200: damage = 7.0;
  64.                 case 201..300: damage = 8.5;
  65.                 case 301..400: damage = 9.5;
  66.                 case 401..500: damage = 11.5;
  67.                 case 501..600: damage = 12.5;
  68.                 case 601..700: damage = 13.5;
  69.                 case 701..800: damage = 14.5;
  70.                 case 801..900: damage = 15.5;
  71.                 case 1000..1100: damage = 17.5;
  72.             }
  73.  
  74.             if(armour)
  75.             {
  76.                 if(armour > damage) SetPlayerArmour(playerid, armour-damage);
  77.                 else
  78.                 {
  79.                     SetPlayerArmour(playerid, 0.0);
  80.                     armour = damage-armour;
  81.                     if(armour >= health) SetPlayerHealth(playerid, 0.0);
  82.                     else SetPlayerHealth(playerid, health-armour);
  83.                 }
  84.                 SetPlayerHealth(playerid, health);
  85.             }
  86.             else
  87.             {
  88.                 SetPlayerHealth(playerid, health-damage);
  89.             }
  90.         }
  91.     }
  92.     return 1;
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement