You have to be careful though.
If the object property isn't set (let's say Weapon for instance) it could come back with an '!' .
I'd do it my own way, in a loop, with an array and one if - much simpler to look at, but only understandable to the pro's

. That way you get a message that is customised and can change if your "self" changes in any way.