Difference between revisions of "Damageinfo functions"

From Fortress Forever Wiki
Jump to navigationJump to search
(Removing all content from page)
Line 1: Line 1:
Damageinfo is an object that's passed along whenever a player is damaged or dies. By intercepting this object, you can detect events in the game, or change the outcome of those events. Damageinfo can be accessed from within the callbacks [[Lua:player_ondamage|player_ondamage]] and [[Lua:player_onkilled|player_onkilled]].
 
  
===Usage===
 
CTakeDamageInfo:'' function''(''parameters'')
 
 
===Example===
 
<pre>function player_ondamage( player, damageinfo )
 
 
-- if no damageinfo do nothing
 
if not damageinfo then return end
 
 
local attacker = damageinfo:GetAttacker()
 
local inflictor = damageinfo:GetInflictor()
 
 
-- hunted has body armor on and only takes damage from certain things
 
if player:GetTeamId() == Team.kBlue then
 
local weapon = damageinfo:GetInflictor():GetClassName()
 
local attacker_is_buildable = false
 
 
if IsSentrygun(attacker) or IsDispenser(attacker) or IsSentrygun(inflictor) or IsDispenser(inflictor) then
 
attacker_is_buildable = true
 
end
 
if attacker_is_buildable ~= true and weapon ~= "ff_weapon_sniperrifle" and weapon ~= "ff_weapon_crowbar" and weapon ~= "ff_projectile_dart" and weapon ~= "ff_weapon_knife" then
 
damageinfo:ScaleDamage(0)
 
else
 
end
 
 
-- hunted also has quad damage
 
else
 
if IsPlayer( attacker ) then
 
attacker = CastToPlayer( attacker )
 
if attacker:GetTeamId() == Team.kBlue and player:GetTeamId() ~= HUNTED_ALLIES_TEAM then
 
damageinfo:ScaleDamage(4)
 
attacker:AddFortPoints( POINTS_PER_HUNTED_ATTACK * 10, "Hunted Attack" )
 
ConsoleToAll( "The Hunted, " .. attacker:GetName() .. ", dealt quad damage to" .. player:GetName() .. "!" )
 
end
 
end
 
end
 
end
 
</pre>
 
 
===Functions===
 
TODO: list parameters, return types, and descriptions
 
GetAttacker
 
GetInflictor
 
GetDamage
 
GetDamageForce
 
GetDamagePosition
 
GetDamageType
 
GetAmmoType
 
ScaleDamage
 
SetDamage
 
 
[[Category:Lua]]
 
[[Category:Lua_Commands]]
 

Revision as of 09:42, 12 May 2009