Namespace: Apparel


Apparel in LibEcho is defined as anything that a Person can wear. This includes clothing, jewelry, and perhaps even naughty toys in some cases.

An article of Apparel may occupy one or more ClothingSlots. This prevents a character from wearing a dozen coats at the same time, for example. A shirt would occupy ClothingSlot.TORSO and a pair of pants would occupy ClothingSlot.LEGS. A dress would occupy both ClothingSlot.TORSO and ClothingSlot.LEGS.

When a Person wears a particular article of Apparel, any currently worn articles that occupy the same ClothingSlots are removed.

A couple of generic Apparel types are provided. GenericApparel provides a bare-bones Apparel implementation from which which all other Apparel types are subclassed. GenericMenswear and GenericWomenswear provide implementations which reference the potential wearer's femininity stat to determine whether or not they can be worn, and provide some default adjustments to that stat.

Additionally, several specific Apparel types are provided, which ought to cover most use-cases, simplifying the structure of the defaults files.

The Apparel system also provides the WornApparel class, which is a special subclass of GeneralInventory that only deals with Apparel. It is used by the People classes to track what a Person is wearing, and provides the auto-removal functionality mentioned above.




<<macro [arg]>>


Short example usage.


FIXME - Long Detailed Example






<static> ClothingSlot :number

This is an enumeration specifying all of the available clothing slots. WornApparel also sorts its contents in order of these enumeration values.

WornApparel displays are sorted according to the order of this enumeration. Therefore, the enumeration is not sequential. Space has been left between each enumeration, both for future development and for end-user extention.

FIXME: Might ought to have gloves slot. Maybe even wigs slot (could wear hat with)? Certain toys might also qualify for a slot?

  • number
Name Type Default Description
UNDERPANTS number 100

Boxers, briefs, panties, etc.

Covers: Nothing. Covered By: LEGS, TORSO (if long), OVER (if long).

UNDERSHIRT number 200

Bras and such; T-shirts should use TORSO.

Covers: Nothing. Covered By: TORSO (if not low - FIXME), OVER (if not low - FIXME). (Under which is - FIXME): TORSO (if low), OVER (if low).

UNDERLEGS number 300

Socks and hosiery.

Covers: Nothing. Covered By: LEGS+FEET (if LEGS are long and FEET are tall), OVER+FEET (if OVER is long and FEET are tall).

TORSO number 400

Shirts and tops.

Covers: UNDERSHIRT, UNDERPANTS (if long), NECK (if tall). Covered By: OVER.

LEGS number 500

Pants, skirts, and bottoms; Socks and hosiery should use UNDERLEGS

Covers: UNDERPANTS, UNDERLEGS (if long and FEET slot contains something tall). Covered By: OVER (if long).

FEET number 600

Shoes. Socks and hosiery should use UNDERLEGS.

Covers: UNDERLEGS (if tall and LEGS slot contains something long). Covered By: OVER (if long).

OVER number 700

Coats and shawls.

Covers: TORSO, UNDERSHIRT, LEGS (if long), UNDERPANTS (if long), UNDERLEGS (if long and FEET slot contains something tall), NECK (if tall). Covered By: Nothing.

GLOVES number 750


Covers: FINGER, WRIST (if long). Covered By: Nothing.

HEAD number 800

Hats and helmets.

Covers: Ears (if long). Covered By: Nothing.

EARS number 900

Earrings. Something like earmuffs probably should use HEAD.

Covers: Nothing. Covered By: HEAD (if long).

NECK number 1000

Necklaces and ties.

Covers: Nothing. Covered By: TORSO (if tall), OVER (if tall).

WRIST number 1100

Bracelets, watches.

Covers: Nothing. Covered By: GLOVES (if long).

FINGER number 1200


Covers: Nothing. Covered By: GLOVES.