summaryrefslogtreecommitdiffstats
path: root/MCServer/Plugins/APIDump/Hooks/OnTakeDamage.lua
blob: 608126f2b2b8c3f4b711e8f250d47c950b34d35d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
return
{
	HOOK_TAKE_DAMAGE =
	{
		CalledWhen = "An {{cEntity|entity}} is taking any kind of damage",
		DefaultFnName = "OnTakeDamage",  -- also used as pagename
		Desc = [[
			This hook is called when any {{cEntity}} descendant, such as a {{cPlayer|player}} or a
			{{cMonster|mob}}, takes any kind of damage. The plugins may modify the amount of damage or effects
			with this hook by editting the {{TakeDamageInfo}} object passed.</p>
			<p>
			This hook is called after the final damage is calculated, including all the possible weapon
			{{cEnchantments|enchantments}}, armor protection and potion effects.
		]],
		Params =
		{
			{ Name = "Receiver", Type = "{{cEntity}} descendant", Notes = "The entity taking damage" },
			{ Name = "TDI", Type = "{{TakeDamageInfo}}", Notes = "The damage type, cause and effects. Plugins may modify this object to alter the final damage applied." },
		},
		Returns = [[
			If the function returns false or no value, other plugins' callbacks are called and then the server
			applies the final values from the TDI object to Receiver. If the function returns true, no other
			callbacks are called, and no damage nor effects are applied.
		]],
	},  -- HOOK_TAKE_DAMAGE
}