~= is "not equal" in lua
you seem to be under the impression that ~= is equals.
In your code: A soldier is not a demoman, therefore multiply by 4
and a soldier is not a pyro, so multiply by 4 again
Fixed:
Code:
function player_ondamage( player, damageinfo )
if player:GetClass() == Player.kSoldier then
local damageforce = damageinfo:GetDamageForce()
damageinfo:SetDamageForce(Vector( damageforce.x * 4, damageforce.y * 4, damageforce.z * 4))
damageinfo:SetDamage( 0 )
elseif player:GetClass() == Player.kDemoman then
local damageforce = damageinfo:GetDamageForce()
damageinfo:SetDamageForce(Vector( damageforce.x * 4, damageforce.y * 4, damageforce.z * 4))
damageinfo:SetDamage( 0 )
elseif player:GetClass() == Player.kPyro then
local damageforce = damageinfo:GetDamageForce()
damageinfo:SetDamageForce(Vector( damageforce.x * 4, damageforce.y * 4, damageforce.z * 4))
damageinfo:SetDamage( 0 )
end
end
edit: silly lua should use elif. It's like sooo much shorter