-- A heart that, when claimed, gives the Stooge two -- magnets to use to pull boxes around. deferred class MAGNET_HEART -- Alternatively perhaps it makes sense to have a general POWER_HEART -- and have GUN_HEART, MIRROR_HEART, etc. inherit from it. inherit HEART redefine react_to_stooge end feature react_to_stooge is -- Do a Heart's thing then give the Stooge some magnets. do precursor stooge.change_magnets( stooge.magnets + 2 ) end -- One could argue that the power provided by a heart is just -- an attribute. We'll need to decide which is better if we decide -- to have more kinds of hearts that give the Stooge more kinds of -- powers. end