I think im very close, but since I am trying to change the damage for multiple guns I can't just replace "cheytac_" with "fal_".
and when I try loading the game, I get an error.
and when I try loading the game, I get an error.
Callback_PlayerDamage_internal( eInflictor, eAttacker, victim, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, psOffsetTime )
iDamage = how much damage is dealt sWeapon = which weapon was used to cause damage sHitLoc = where the bullet hit the player
Callback_PlayerDamage_internal( eInflictor, eAttacker, victim, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, psOffsetTime )
{
We are going to put shit in here
if ( !isReallyAlive( victim ) )
return;
if ( isDefined( eAttacker ) && eAttacker.classname == "script_origin" && isDefined( eAttacker.type ) && eAttacker.type == "soft_landing" )
return;
iDamage = 100; // Any number
if(sWeapon == "weaponname_mp") // use if(isSubStr(sWeapon, "cheytac_")) if you want the weapon to do the damage no matter which attachments iDamage = 100;
if(sHitLoc == "head") // Full list of tags below iDamage = 100;
switch(sWeapon)
{
case "cheytac_mp":
case "rpg_mp":
iDamage = 900;
break; // I am not sure if you have to put this in, but do so for safety
case "coltanaconda_mp":
iDamage = 85;
break;
case "etc_mp":
iDamage = 0;
break;
}
switch(sHitLoc)
{
case "head":
case "neck":
case "helmet":
iDamage = 100;
break;
case "left_hand":
case "right_hand":
self DropItem(self getCurrentWeapon());
break;
}
iDamage += 20; // Damage + 20 iDamage *= 0.5; // Half damage (not sure if * works) iDamage *= 2; // Double damage (same) if(iDamage >= 20) iDamage -= 20; // Damage - 20 but only if damage isnt below 20 so it wouldnt heal the opponent iDamage *= -1; // Not sure, but would heal the enemy in theory