Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
- {
- new Float:damage, Float:health, Float:armour;
- GetPlayerHealth(playerid, health);
- GetPlayerArmour(playerid, armour);
- if(issuerid != INVALID_PLAYER_ID)
- {
- if(weaponid == 23 && OdlegloscGracze(15.0,playerid, issuerid) && PlayerData[issuerid][pSluzba] == true) //paralizator
- {
- SetTimerEx("UnFreeze", 12 * 1000, 0, "d", playerid);
- ApplyAnimation(playerid,"CRACK","crckdeth2", 4.1, 0, 1, 1, 1, 0);
- GameTextForPlayer(playerid, "~r~Dostales z paralizatora", 2500, 3);
- GameTextForPlayer(issuerid, "~r~Trafiles z paralizatora", 2500, 3);
- return 1;
- }
- if(weaponid >= 2 || weaponid <= 38)
- {
- switch(bodypart)
- {
- case 3: //Klatka
- {
- if(armour>1) SetPlayerHealth(playerid, health);
- if(armour<1) SetPlayerHealth(playerid, health - 40.5);
- }
- case 4: //Krocze
- {
- if(armour>1) SetPlayerHealth(playerid, health);
- if(armour<1) SetPlayerHealth(playerid, health - 17.5);
- }
- case 5: //Lewe ramie
- {
- if(armour>1) SetPlayerHealth(playerid, health);
- if(armour<1) SetPlayerHealth(playerid, health - 15);
- }
- case 6: //Prawie ramie
- {
- if(armour>1) SetPlayerHealth(playerid, health);
- if(armour<1) SetPlayerHealth(playerid, health - 15.5);
- }
- case 7: //Lewa noga
- {
- if(armour>1) SetPlayerHealth(playerid, health);
- if(armour<1) SetPlayerHealth(playerid, health - 9.0+random(10));
- }
- case 8: //Prawa noga
- {
- if(armour>1) SetPlayerHealth(playerid, health);
- if(armour<1) SetPlayerHealth(playerid, health - 9.0+random(10));
- }
- case 9: //Glowa
- {
- SetPlayerHealth(playerid, 0.0000);
- }
- }
- }
- if(weaponid == 0)
- {
- new bajceps = PlayerData[issuerid][pSila] - 3000;
- switch(bajceps)
- {
- case 0..100: damage = 5.0;
- case 101..200: damage = 7.0;
- case 201..300: damage = 8.5;
- case 301..400: damage = 9.5;
- case 401..500: damage = 11.5;
- case 501..600: damage = 12.5;
- case 601..700: damage = 13.5;
- case 701..800: damage = 14.5;
- case 801..900: damage = 15.5;
- case 1000..1100: damage = 17.5;
- }
- if(armour)
- {
- if(armour > damage) SetPlayerArmour(playerid, armour-damage);
- else
- {
- SetPlayerArmour(playerid, 0.0);
- armour = damage-armour;
- if(armour >= health) SetPlayerHealth(playerid, 0.0);
- else SetPlayerHealth(playerid, health-armour);
- }
- SetPlayerHealth(playerid, health);
- }
- else
- {
- SetPlayerHealth(playerid, health-damage);
- }
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement