This is stripped down, bare bones clothing code based on the code I personally use. Feel free to use this in any way you like. If you have questions, feel free to ask me. Last updated 10/19/2006 Using this code in your desc is simple. You would include {bodypart:top} and {bodypart:bottom} where you want the clothing to appear. Substitute what location names you choose. These macros are required. While you can change them if you like, I wouldn't unless you're sure you know how they work. @set me=/_msgmacs/bodypart:{if:{prop:/wearing/{:1},this},{exec:/clothing/{prop:/wearing/{:1},this}/desc},{prop:/nude/{:1},this}} @set me=/_msgmacs/choices:Clothing choices: {commas:{lremove:{parse:path,{listprops:clothing,{owner:this}},{subst:{&path},clothing/,}},{parse:stuff,{listprops:wearing,{owner:this}},{prop:{&stuff},{owner:this}}}}, or }. @set me=/_msgmacs/stripclothing:{if:{eq:{:1},{prop:wearing/{prop:clothing/{:1}/location,{owner:this}},{owner:this}}},You take off your {:1}.{store:,wearing/{prop:clothing/{:1}/location,{owner:this}},{owner:this}},You're not wearing '{:1}'.} @set me=/_msgmacs/wearclothing:{if:{prop:clothing/{:1}/desc,{owner:this}},You put on your {store:{:1},wearing/{prop:clothing/{:1}/location},{owner:this}}.,I don't know what '{:1}' is.} @set me=/_msgmacs/wearing:You are wearing {if:{propdir:wearing,{owner:this}},{commas:{parse:stuff,{listprops:wearing,{owner:this}},{prop:{&stuff},{owner:this}}}},*nothing*}. These are examples only. The location names are entirely your choice, and you can use any and as many as you like. @set me=/clothing/pants/desc: Pants. @set me=/clothing/pants/location:bottom @set me=/clothing/skirt/desc: A Skirt. @set me=/clothing/skirt/location:bottom @set me=/clothing/shirt/desc: A Shirt. @set me=/clothing/shirt/location:top These need to match the location names you choose above, but are not otherwise limited. @set me=/nude/bottom: No pants. @set me=/nude/top: No shirt. This can be called recursively to simulate layers of clothing, as follows. @set me=/clothing/shirt/desc: A Shirt. @set me=/clothing/shirt/location:top @set me=/clothing/bra/desc: A Bra. @set me=/clothing/bra/location:breasts @set me=/nude/top:{bodypart:breasts} @set me=/nude/breasts: Naked breasts. You would only put in your desc {bodypart:top}. If you took off the shirt, the nude desc for your top would then look first at your bra, and only if you weren't wearing a bra would your naked breasts show. This is the action to control the code. It could be written better, I suppose. @act wear;strip=me @link wear=$nothing @succ wear={exec:{&cmd}/sc} @set wear=wear/sc:{if:{&arg},{wearclothing:{&arg}},{wearing}{nl}{choices}} @set wear=strip/sc:{if:{&arg},{stripclothing:{&arg}},{wearing}{nl}{choices}} Lastly, this is a good idea so you know what you're wearing when you connect. @set me=_connect/wearing:&{null:{delay:2,{wearing}}} -------------- Remote Control -------------- This can be run through a remote control object, one that can be handed to others for role-play purposes. Skip the control action above and do this instead: @create remote control==rc @desc $rc=A small remote with two buttons on it, [wear] and [strip]. @link $rc=me @set $rc=S @set $rc=J @act wear;strip=$rc @link wear=$nothing @succ wear={exec:{&cmd}/sc} @set wear=wear/sc:{if:{&arg},{wearclothing:{&arg}},{wearing}{nl}{choices}} @set wear=strip/sc:{if:{&arg},{stripclothing:{&arg}},{wearing}{nl}{choices}}