Table of Contents

GenericApparel

FIXME This is all changing, and this info isn't correct. It will be updated once the code is done.

Apparel.GenericApparel provides the barebones base class from which all other Apparel types are derived. GenericApparel is generally unisex. GenericMenswear and GenericWomenswear derive from GenericApparel and provide barebones base classes for masculine and feminine apparel (currently mostly unimplemented).

Several specific apparel types are also provided, deriving from GenericApparel, GenericMenswear, and GenericWomenswear, which offer defaults for ClothingSlots, genericName, and other properties in some cases. These are the classes that you generally want to use in your defaults JS when you define objects.

Properties

Articles of Apparel may have various properties. Some specific apparel types implement some properties, as listed later on. All properties may be set in your defaults JS when you define objects. Even those provided by the specific apparel types may be overridden.

.genericName

The generic name of an object, printed when it is obvious what the item is but no details can be seen. The most obvious example would be a bra printing through a tight tshirt being referred to as just a “bra” (its genericName) rather than a “lacy purple bra”.

The specific Apparel types all implement this property, but you may override it in defaults.

.name

The specific name of the apparel, printed when the apparel can be plainly seen. “A green peacoat” or “a long floral print skirt,” for example.

.slots

An array of the ClothingSlots that the object occupies. Only one article of apparel my occupy a particular ClothingSlot at a time (see above). Setting this to an empty array will allow the article of apparel to be worn without occupying any ClothingSlots.

.inventoryCategory

The category into which InventoryUI sorts the object. If this property is omitted, it will be sorted into the “Other” category.

.wardrobeCategory

The category into which ApparelUI sorts the object. If this property is omitted, it will be sorted into the “Other” category.

.long

If this property is true, the article of apparel will be considered “long” and possibly conceal more underlayers. Knee length long skirts and pants. Trenchcoats. Etc. See the section on ClothingSlots for more details.

.short

If this property is true, the article of apparel will be considered “short” and possibly conceal fewer underlayers.. Crop tops. Booty shorts. Minidresses. Etc. See the section on ClothingSlots for more details.

.high

If this property is true, the article of apparel will be considered “high” and possibly conceal more underlayers.. Turtleneck shirts. High-top shoes and boots. Etc. See the section on ClothingSlots for more details.

.low

If this property is true, the article of apparel will be considered “low” and possibly conceal fewer underlayers.. Off-shoulder and swoop tops. Low-rise jeans. Etc. See the section on ClothingSlots for more details.

.transparent

If this property is true, the article of apparel will reveal whatever is worn beneath it regardless of what ClothingSlots is occupies. A fishnet top or translucent wraparound, for example.

.thin

The “thin” property, when set to true, is used to denote tight-fitting articles of apparel made with thin fabric. A tight-fitting t-shirt, for example. The articles of apparel worn below will “show an outline” through this article of apparel, and will be listed with their genericName in worn apparel descriptions, without showing the specific details of the item. For example, wearing a “pink polka-dot bra” beneath a “tight red t-shirt” will list in descriptions as “a tight red t-shirt and a bra (printing through the tight red t-shirt),” rather than specifically as a “pink polka-dot bra”.

Generic Apparel Types

A couple of generic Apparel types are provided. GenericApparel provides a bare-bones Apparel implementation from which which all other Apparel types are derived. 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 (currently unimplemented).

Unless you are actually extending the library, you probably don't need to use any of these GenericApparel classes. If you are just using the library in your game, you're probably better off using the specific Apparel classes.

However, if you need to create an article of Apparel that does not easily fit into any of the specific types, one of the generic types may be useful to you.

LibEcho.Apparel.GenericApparel

This is the generic Apparel type from which all other Apparel is derived. Objects that specify this type in their defaults must also explicitly provide a ClothingSlots field and all genericName properties.

LibEcho.Apparel.GenericMenswear

This is a generic Apparel type that will at some point provide defaults that associate it with masculine People. Depending on the type of Transformations that are enabled, People with too much femininity might not be able to equip this type of Apparel, and/or equipping it may gradually cause the Person to transform towards being more masculine.

At the current time, however, none of this is implemented, as the Transformation mechanics are still being worked on.

As with GenericApparel, objects that specify this type in their defaults must also explicitly provide a ClothingSlots field and all genericName properties.

LibEcho.Apparel.GenericWomenswear

This is a generic Apparel type that will at some point provide defaults that associate it with feminine People. Depending on the type of Transformations that are enabled, People with too much masculinity might not be able to equip this type of Apparel, and/or equipping it may gradually cause the Person to transform towards being more feminine.

At the current time, however, none of this is implemented, as the Transformation mechanics are still being worked on.

As with GenericApparel, objects that specify this type in their defaults must also explicitly provide a ClothingSlots field and all genericName properties.

Specific Apparel Types

Several specific Apparel types are provided, which ought to cover most use-cases, simplifying the structure of the defaults files. Unisex apparel has no specific masculine or feminine bent; it can be worn by anyone. Menswear and Womenswear are gender-specific clothing types and may be restricted accordingly depending on game settings and/or transformation level. Currently, all Jewelry is considered unisex, but this needs to be fixed FIXME.

LibEcho.Apparel.Unisex.Coat

Unisex short coats, jackets, etc. FIXME need to implement LongCoat.

LibEcho.Apparel.Unisex.Hat

Unisex headgear.

LibEcho.Apparel.Unisex.Pants

Unisex long pants.

LibEcho.Apparel.Unisex.Shirt

Unisex shirt.

LibEcho.Apparel.Unisex.Shoes

Unisex low-top shoes.

LibEcho.Apparel.Unisex.ShoesTall

Unisex high-top shoes and boots.

LibEcho.Apparel.Unisex.Shorts

Unisex shorts.

LibEcho.Apparel.Unisex.Socks

Unisex socks.

LibEcho.Apparel.Menswear.Boxers

Men's boxers.

LibEcho.Apparel.Menswear.Briefs

Men's briefs.

LibEcho.Apparel.Womenswear.Bra

Women's bra.

LibEcho.Apparel.Womenswear.Dress

Women's short or mid-length dress (does not cover all the way down to feet).

LibEcho.Apparel.Womenswear.DressLong

Women's long dress (goes all the way down to feet).

LibEcho.Apparel.Womenswear.Panties

Women's panties.

LibEcho.Apparel.Womenswear.PantsWomens

Women's long pants and slacks.

LibEcho.Apparel.Womenswear.ShirtWomens

Women's shirts and blouses.

LibEcho.Apparel.Womenswear.ShoesWomens

Women's low-top shoes.

LibEcho.Apparel.Womenswear.ShoesWomensTall

Women's high-top shoes and boots.

LibEcho.Apparel.Womenswear.ShortsWomens

Women's shorts, capris, stc.

LibEcho.Apparel.Womenswear.Skirt

Women's short or mid-length skirt (does not cover all the way down to feet).

LibEcho.Apparel.Womenswear.SkirtLong

Women's long skirt (goes all the way down to feet).

LibEcho.Apparel.Womenswear.Stockings

Women's stockings and hoisery.

LibEcho.Apparel.Jewelry.Bracelet

Bracelets.

LibEcho.Apparel.Jewelry.Earrings

Earrings.

LibEcho.Apparel.Jewelry.Necklace

Necklaces.

LibEcho.Apparel.Jewelry.Ring

Rings.