OnClientPlayerDamage: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (Enhanced argument readability)
(Replace with predefined variable.)
 
(One intermediate revision by one other user not shown)
Line 25: Line 25:
This example prevents any damage from the minigun.
This example prevents any damage from the minigun.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function stopMinigunDamage ( attacker, weapon, bodypart )
function stopMinigunDamage(attacker, weapon, bodypart)
if ( weapon == 38 ) then --if the weapon used was the minigun
if (weapon == 38) then --if the weapon used was the minigun
cancelEvent() --cancel the event
cancelEvent() --cancel the event
end
end
end
end
addEventHandler ( "onClientPlayerDamage", getLocalPlayer(), stopMinigunDamage )
addEventHandler("onClientPlayerDamage", localPlayer, stopMinigunDamage)
</syntaxhighlight>
</syntaxhighlight>
==Issues==
{{Issues|
{{Issue|8082|(Fixed in r9762) Custom weapons don't fully work with onClientPlayerDamage}}
}}


==See Also==
==See Also==

Latest revision as of 11:40, 2 May 2022

This event is triggered whenever a player is damaged.

[[{{{image}}}|link=|]] Note: This event is only triggered for players that are streamed in

Parameters

element attacker, int damage_causing, int bodypart [, float loss ]
  • attacker: A player element representing the attacker or vehicle element (when being run over or falling off a bike).
  • damage_causing: An int representing the cause of damage, either a attacker weapon, or some other types of damage.
  • bodypart: An integer representing the bodypart the player was damaged.
  • 3: Torso
  • 4: Ass
  • 5: Left Arm
  • 6: Right Arm
  • 7: Left Leg
  • 8: Right Leg
  • 9: Head
  • loss: A float representing the percentage of health the player lost.

Source

The source of this event is the player that got damaged. (Streamed in players only)

Cancel effect

If this event is canceled, then any damaging effects to the local player will cease.

Example

This example prevents any damage from the minigun.

function stopMinigunDamage(attacker, weapon, bodypart)
	if (weapon == 38) then --if the weapon used was the minigun
		cancelEvent() --cancel the event
	end
end
addEventHandler("onClientPlayerDamage", localPlayer, stopMinigunDamage)

See Also

Client player events


Client event functions