On 03/23/2012 03:52 PM, Tanner Swett wrote: > On Fri, Mar 23, 2012 at 1:13 PM, Kerim Aydin <ke...@u.washington.edu> wrote: >> Trying to define an obvious concept here, does recursion work, can >> this be written better? >> >> A golem can either have a Boss, be Emancipated, or be in Storage. >> >> If a golem has no owner, or (through circularity of ownership) >> owns itself, it is Emancipated. Otherwise: >> 1. If a golem's owner is a first-class person, that person >> is the golem's Boss; otherwise, >> 2. If the golem's owner is an Emancipated golem or a non-golem, >> then the golem is in Storage; otherwise, >> 3. the golem's owner's Boss is the golem's Boss. > > If I may make a suggestion: > > {A golem's first guardian (if any) is its owner. A golem's nth > guardian (if any), for n greater than 1, is the owner of its (n-1)st > guardian. > > If a golem has no owner, or has itself as a guardian, it is > Emancipated. If a golem is not Emancipated, but has an Emancipated > golem as a guardian, it is in Storage. If a golem has a first-class > player as a guardian, that player is the golem's Boss.}
Possible shenanigans if a player is ever owned, but that's likely to cause all sorts of trouble anyway.