if(issuerid != INVALID_PLAYER_ID && weaponid == 22 && bodypart == 4) { new Float:ARMOR; GetPlayerArmour(playerid, ARMOR); if(ARMOR > 0) { SetPlayerArmour(playerid, -26); } if(ARMOR == 0) { new Float:HP; RemovePlayerAttachedObject(playerid,1); RemovePlayerAttachedObject(playerid,6); HasArmour[playerid] = 0; GetPlayerHealth(playerid, HP); SetPlayerHealth(playerid, HP-60); SetPlayerDrunkLevel(playerid, 500000); TextDrawShowForPlayer(playerid, Danio); TT[playerid] = SetTimerEx("Damage", 250, 1, "i", playerid); TC[playerid] = SetTimerEx("Blood", 10000, 1, "i", playerid); } }
#define HD (Float:0x7FFFFFFF)
new bool:JustLoseArmor[MAX_PLAYERS] = false;
public OnPlayerUpdate(playerid)
{
switch(JustLoseArmor[playerid]) {
case false : SetPlayerHealth(playerid,100);
case true : SetPlayerHealth(playerid,HD);
}
return 1;
}
if(issuerid != INVALID_PLAYER_ID && weaponid == 22 && bodypart == 4)
{
new Float:ARMOR;
GetPlayerArmour(playerid, ARMOR);
if(ARMOR > 0)
{
SetPlayerArmour(playerid, -26);
JustLoseArmor[playerid] = true;
}
if(ARMOR == 0)
{
new Float:HP;
JustLoseArmor[playerid] = false;
RemovePlayerAttachedObject(playerid,1);
RemovePlayerAttachedObject(playerid,6);
HasArmour[playerid] = 0;
GetPlayerHealth(playerid, HP);
SetPlayerHealth(playerid, HP-60);
SetPlayerDrunkLevel(playerid, 500000);
TextDrawShowForPlayer(playerid, Danio);
TT[playerid] = SetTimerEx("Damage", 250, 1, "i", playerid);
TC[playerid] = SetTimerEx("Blood", 10000, 1, "i", playerid);
}
}
if(issuerid != INVALID_PLAYER_ID && weaponid == 22 && bodypart == 4)
{
new Float:ARMOR;
GetPlayerArmour(playerid, ARMOR);
if(ARMOR > 0 && ARMOR >= 26)
{
SetPlayerArmour(playerid, -26);
}
if(ARMOR == 0)
{
new Float:HP;
RemovePlayerAttachedObject(playerid,1);
RemovePlayerAttachedObject(playerid,6);
HasArmour[playerid] = 0;
GetPlayerHealth(playerid, HP);
SetPlayerHealth(playerid, HP-60);
SetPlayerDrunkLevel(playerid, 500000);
TextDrawShowForPlayer(playerid, Danio);
TT[playerid] = SetTimerEx("Damage", 250, 1, "i", playerid);
TC[playerid] = SetTimerEx("Blood", 10000, 1, "i", playerid);
}
}
well keep in mind that he might have 10 armor,then you will get him -26 armor and it will be -16 armor,and by the way i think you should make it that if he has less than 26 armor get his armor and set it to 0 and then give him -hp.
by the way try this code to fix ur problem pawn Код:
|
The problem is your relying on the default damage system this needs to be setup with scripted server side damage to work as expected I highly recommend using this include.
https://sampforum.blast.hk/showthread.php?tid=563387 |