I remember when I had an epiphany like that.
thanks a bunch. 
question: What role does the variable %this play in that function? :o
None.
Armor functions are used when you want something to apply to only one kind of player.
For instance,
function Armor::zombieExplode(%this, %obj)
{
// Nothing!
}
Why make this function? So I can put this function in on top of it.
function ZombieBoomerArmor::zombieExplode(%this, %obj)
{
// Boomer explosion code here.
}
Then, I can call
%armor.zombieExplode(); and it will always work with no console errors. If the boomer explodes, however, the bile affect is applied to nearby players.
For what you are doing, you
do not need to use an Armor function. Just apply the code I give you intelligently to the function where the "discombobulation" happens.