If you still haven't figured it out, you can try something like this.
No Attack
Events
Unit - Any Unit is issued an order to Attack
Local Variables
attacker = (Triggering unit) <Unit>
target = (Target unit for (Triggering order)) <Unit>
attackerOwner =...
If you make Frost Armor a hero ability and make it's required level above 6, then you can cast it on magic immune units(Pretty sure).
Frost Armor Pickup
Events
Unit - A unit Acquires an item
Conditions
(Item-type of (Item being manipulated)) Equal to (==) YourItem...
You can turn off "Show Invisible Units" and just have show map. Also I'm pretty sure you can turn "Show Invisible Units" on during the game whenever you want, so this wont exactly work... Only for idiot mhers.
There's an ability, in >Orc, I think called Chaos, which is a passive morph ability that can change the model of a unit, but I've heard it can cause some problems with buffs.