[FilterScript] Custom Damage System - Knockout/Shock
|
Big Clucker Join Date: Jan 2016 Posts: 190 Reputation: 16 |
Simple Custom Damage/Knockout/Shock system Hello everybody, I decided to share my filterscript with ya all, didn't release anything since I joined so I decided to spare some change 0.0.
Alright, custom damage system is simple and useful aswell, here's the damages for the guns: Code: Assault Machines (M4-AK47) | -20 Damage + Shock for ten haundred seconds. Glock 49. (9mm) | -45 Damage + Shock for ten haundred seconds. Glock. 47 D-E S. (Deagle) | -40 Damage + Shock for ten haundred seconds. Sniper Rifle | Kills you or injuries you, depends on your script. Katana | -60 Damage + Knockout for thirty seconds + Shock for ten haundred seconds. Baseball Bat | -40 Damage + Knockout for twenty seconds + Shock for fifty seconds. Baton (Nitestick) | -50 Damage + Knockout for fifty seconds + ten haundred and fifty seconds. Cane/Knife/Golf Club/Shovel/Pool Cue | -30 Damage + Knockout for five seconds. Remington 97. Sawnoff (Sawnoff Shotgun) | -10 Damage/x2-4 + Shock for two haundred seconds. Code: Sniper Rifle | Removes all the armour. Katana | -30 Armour Damage. Cane/Knife/Golf Club/Shovel/Pool Cue | -10 Armour Damage. And finally here's the code. Code:
#include <a_samp>
forward Knocked(playerid);
public Knocked(playerid)
{
SendClientMessage(playerid, -1, "You are able to move now");
TogglePlayerControllable(playerid, 1);
return 1;
}
forward ClearShock(playerid);
public ClearShock(playerid)
{
SetPlayerDrunkLevel(playerid, 0);
return 1;
}
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Custom Damage System has been loaded succesfully, congratulations mate!");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
{
new Float:HP;
new Float:Armor;
GetPlayerHealth(playerid, HP);
GetPlayerArmour(playerid, Armor);
if(Armor < 1)
{
if(weaponid == 31 || weaponid == 30)
{
SetPlayerHealth(playerid, HP-(amount*3));
SendClientMessage(playerid, -1, "You were shot by assault rifle");
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
else if(weaponid == 22)
{
SetPlayerHealth(playerid, HP-45);
SendClientMessage(playerid, -1, "You were shot by glock.49");
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
else if(weaponid == 34)
{
SetPlayerHealth(playerid, HP-300);
SendClientMessage(playerid, -1, "You were shot by a sniper rifle");
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
else if(weaponid == 8)
{
SetPlayerHealth(playerid, HP-60);
SendClientMessage(playerid, -1, "You have been knocked to the floor by a katana.");
ApplyAnimation(playerid,"PED","KO_skid_front",4.1,0,0,0,0,0);
SetTimerEx("Knocked", 50000, false, "i", playerid);
TogglePlayerControllable(playerid, 0);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
else if(weaponid == 5)
{
SetPlayerHealth(playerid, HP-40);
new hitrand = random(10);
if(hitrand <= 1)
{
SendClientMessage(playerid, -12, " You have been knocked to the floor by a baseball bat.");
ApplyAnimation(playerid,"PED","KO_skid_front",4.1,0,0,0,0,0);
SetTimerEx("Knocked", 20000, false, "i", playerid);
TogglePlayerControllable(playerid, 0);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
}
else if(weaponid == 3)
{
SetPlayerHealth(playerid, HP-40);
new hitrand = random(10);
if(hitrand <= 1)
{
SendClientMessage(playerid, -12, " You have been knocked to the floor by an ASP Baton.");
ApplyAnimation(playerid,"PED","KO_skid_front",4.1,0,0,0,0,0);
SetTimerEx("Knocked", 50000, false, "i", playerid);
TogglePlayerControllable(playerid, 0);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
}
else if(weaponid == 15 || weaponid == 4 || weaponid == 2 || weaponid == 6 || weaponid == 7)
{
SetPlayerHealth(playerid, HP-30);
SendClientMessage(playerid, -1, "You have been knocked to the floor by a melee gun.");
ApplyAnimation(playerid,"PED","KO_skid_front",4.1,0,0,0,0,0);
SetTimerEx("Knocked", 10000, false, "i", playerid);
TogglePlayerControllable(playerid, 0);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
else
{
if(weaponid != 26)
{
SetPlayerHealth(playerid, HP-(amount*1.5));
SendClientMessage(playerid, -1, "You were shot heavily by remington 92. Sawn.");
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
}
}
if(Armor >= 1)
{
if(weaponid == 34)
{
SetPlayerArmour(playerid, Armor-150);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
SendClientMessage(playerid, -1, "You were shot by a sniper rifle");
}
if(Armor >= 30)
{
if(weaponid == 8)
{
SetPlayerArmour(playerid, Armor-30);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
}
if(Armor >= 20)
{
if(weaponid == 5 || weaponid == 15 || weaponid == 3 || weaponid == 4 || weaponid == 2 || weaponid == 6 || weaponid == 7)
{
SetPlayerArmour(playerid, Armor-10);
SetPlayerDrunkLevel(playerid, 8000);
SetTimerEx("ClearShock", 100000, false, "i", playerid);
}
}
}
return 1;
}
You can edit how many hits by melee guns until he gets knocked out by adding/editing this: PHP Code:
This script is to be updated weekly/monthly, new features that i'm planning to add:
I'd appreciate if someone captured screenshots for me, or wait until I capture few, waiting for my friends to take screenshots with this, I can't capture screenshots alone 0.0 __________________ |
Aucun commentaire:
Enregistrer un commentaire