My main problem with this is the requirement that we pass the pointer to the game object around to a ridiculous number of places, and most of the time it's not used. Can you stash the martial art item instead of looking it back up like this?