From: Alex Fenton Date: 2007-11-08T09:15:07+09:00 Subject: Re: alternate to case; generating a list of sub-classes Thufir wrote: > The below uses pseudo-random number generation to populate an array > with various monsters, all inherit from Creature. Can a list of > classes which inherit from Creature be generated automagically? Perhaps: class Creature @creature_classes = [] # hook to note when a class inherits def self.inherited(klass) @creature_classes << klass end # generate a random creature from among known subclasses def self.random_creature @creature_classes[ rand(@creature_classes.length) ].new end end hth alex