From 20dd6ed7286bf7229d580e970816e35609716548 Mon Sep 17 00:00:00 2001 From: Howard Abrams Date: Tue, 15 Jul 2025 09:02:28 -0700 Subject: [PATCH] House expansion up and down the tree --- typeclasses/consumables.py | 3 + world/version1.ev | 621 +++++++++++++++++++++++++++++++------ 2 files changed, 532 insertions(+), 92 deletions(-) diff --git a/typeclasses/consumables.py b/typeclasses/consumables.py index 44e6d85..8fab57f 100755 --- a/typeclasses/consumables.py +++ b/typeclasses/consumables.py @@ -224,6 +224,9 @@ class Trolley(Producer): "<> " "<>.")) + def do_open(self): + self.at_look() + def do_bake(self): """ Set the scone that we bake today. diff --git a/world/version1.ev b/world/version1.ev index 93a7382..eb33f45 100644 --- a/world/version1.ev +++ b/world/version1.ev @@ -1959,7 +1959,7 @@ Someone has set a nice chair for viewing. # And the best description ever: # [[file:../../../projects/mud.org::*Inside][Inside:3]] -@desc here = An enormous stone hearth overshadows this round room with dark paneling. A subtle smell of tea and incense. Large, overstuffed chairs sit invitingly by the fireplace. Oddly angled shelves with books and knickknackery adorn the walls while a trolley supports a large kettle, cups and scones. +@desc here = An enormous stone hearth overshadows this round room with dark paneling. A subtle smell of tea and incense. Large, overstuffed chairs sit invitingly by the fireplace. Oddly angled shelves with books and knickknackery adorn the walls and the smell of fresh-baked scones come from the kitchen. # Inside:3 ends here @@ -1983,7 +1983,7 @@ Someone has set a nice chair for viewing. @set here/fire_full = "Large, overstuffed chairs slightly shield you from the bright light of the roaring fire in the fireplace of a stone hearth." # And a final description: -@set here/final_desc = "Oddly angled shelves with books and knickknackery adorn the walls around a tapestry. The subtle smell of wood smoke, incense and tea leads you to a trolley supporting a large teapot, cups and freshly baked scones." +@set here/final_desc = "Oddly angled shelves with books and knickknackery adorn the walls around a tapestry. The subtle smell of wood smoke, incense and fresh-baked scones from the kitchen." # Inside:4 ends here @@ -2160,70 +2160,6 @@ drop ball @desc books = Books of different sizes and colors. So many books. Perhaps you want to |glook|n at a single |gbook|n at random? # Books:4 ends here -# Trolley of Scones -# The trolley [[file:~/src/moss-n-puddles/typeclasses/consumables.py::class Producer(Object):][produces]] random scones, which, like the [[Berry Trolley][berries]] can be eaten or fed to the wildlife. - - -# [[file:../../../projects/mud.org::*Trolley of Scones][Trolley of Scones:1]] -@create/drop trolley;trolly : typeclasses.consumables.Trolley -# Trolley of Scones:1 ends here - - - -# We mentioned a /trolley/ with tea, cups and scones: - -# [[file:../../../projects/mud.org::*Trolley of Scones][Trolley of Scones:2]] -@desc trolley = A tea trolley, complete with a small collection of teacups, a magical teapot, as well as a daily assortment of scones. -# Trolley of Scones:2 ends here - - - -# We have to have the trolley bake something with the Python command: - -# [[file:../../../projects/mud.org::*Trolley of Scones][Trolley of Scones:3]] -py here.search("trolley").do_bake() -# Trolley of Scones:3 ends here - - - -# And let’s not clutter up the scene too much: - - -# [[file:../../../projects/mud.org::*Trolley of Scones][Trolley of Scones:4]] -@lock trolley = view:tag(hidden_trolley) -# Trolley of Scones:4 ends here - -# Tea Service - -# The “room” gives the teacups, and the “teapot” fills the cups, so we just need descriptions: - -# [[file:../../../projects/mud.org::*Tea Service][Tea Service:1]] -@detail teacups = An odd, yet interesting assortment of teacups. Take one. -# -@detail teacup = Each cup is unique. Take one to look further. -# Tea Service:1 ends here - - - -# A [[file:~/src/moss-n-puddles/typeclasses/drinkables.py::class Teapot(Object):][teapot]] will contain a type of tea … either given or randomly chosen. -# A teapot will “fill” a teacup forever, until it is “remade”. - - -# [[file:../../../projects/mud.org::*Tea Service][Tea Service:2]] -@create/drop teapot;pot;tea pot:typeclasses.drinkables.Teapot -# -@desc teapot = An adorable brown teapot, waiting for you to |gmake|n some tea. -# Tea Service:2 ends here - - -# And of course, you can’t steal the tea pot: - -# [[file:../../../projects/mud.org::*Tea Service][Tea Service:3]] -@lock teapot = get:false() -# -@set teapot/get_err_msg = "You don't need to carry it around to make tea." -# Tea Service:3 ends here - # Chairs # And [[file:~/src/moss-n-puddles/typeclasses/sittables.py::class Sittables(Sittable):][the chairs]] is a /plural/ location to sit, allowing anyone to sit down. @@ -2381,12 +2317,129 @@ pose gnome/default = smoking his pipe @give pipe = gnome # Pipe:2 ends here +# Kitchen +# Better place to put the tea and scones. + + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:1]] +@dig Cramped Kitchen;mp11 = archway to kitchen;kitchen;archway,back to main room;leave;main;back +# Kitchen:1 ends here + + + +# And describe the exit: + + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:2]] +@desc archway = Knarled roots of a tree forms an opening where you can see cabinets, a stove and even a teapot. +# +@set archway/traverse_msg = "You stoop again to enter the cramped room." +# Kitchen:2 ends here + + + +# And describing the room: + + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:3]] +@teleport mp11 +# +@desc here = This small, oddly shaped room contains low cabinets. The teapot on the stove seems warm as if finishing the ritual of brewing tea. A plate of scones on the counter smell inviting. +# Kitchen:3 ends here + + + +# And the exit: + + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:4]] +@desc leave = Knarled roots of a tree forms an opening where you can see cabinets, a stove and even a teapot. +# +@set leave/traverse_msg = "You stoop again and leave the cramped room." +# Kitchen:4 ends here + + + +# And some details: + + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:5]] +@detail stove = Black, iron stove with rounded corners trimmed in gold. While cold, the teapot on the stove seems like it just made a tea. And yeah, the scones seem fresh baked as well. +# Kitchen:5 ends here + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:6]] +@detail countertop;countertops = Covered in hand-sized black tiles with gold flecks match the stove. The plate of scones look freshly baked. +# Kitchen:6 ends here + +# [[file:../../../projects/mud.org::*Kitchen][Kitchen:7]] +@detail plate = On the tiled counter-top, a large plate carries a stack of fresh-baked scones. +# +@detail scone;scones = A scones look tempting. Perhaps no one will miss one... +# Kitchen:7 ends here + +# Cabinets and Counter-tops +# The Trolley [[file:~/src/moss-n-puddles/typeclasses/consumables.py::class Producer(Object):][produces]] teacups and random scones, which, like the [[Berry Trolley][berries]] can be eaten or fed to the wildlife. + + +# [[file:../../../projects/mud.org::*Cabinets and Counter-tops][Cabinets and Counter-tops:1]] +@create/drop cabinet;cabinets : typeclasses.consumables.Trolley +# Cabinets and Counter-tops:1 ends here + + + +# We mentioned a /trolley/ with tea, cups and scones: + +# [[file:../../../projects/mud.org::*Cabinets and Counter-tops][Cabinets and Counter-tops:2]] +@desc cabinet = The cabinets contain an assortment of tea cups. +# Cabinets and Counter-tops:2 ends here + + + +# We have to have the trolley bake something with the Python command: + +# [[file:../../../projects/mud.org::*Cabinets and Counter-tops][Cabinets and Counter-tops:3]] +py here.search("cabinet").do_bake() +# Cabinets and Counter-tops:3 ends here + +# Tea Service + +# The “room” gives the teacups, and the “teapot” fills the cups, so we just need descriptions: + +# [[file:../../../projects/mud.org::*Tea Service][Tea Service:1]] +@detail teacups = An odd, yet interesting assortment of teacups. Take one. +# +@detail teacup = Each cup is unique. Take one to look further. +# Tea Service:1 ends here + + + +# A [[file:~/src/moss-n-puddles/typeclasses/drinkables.py::class Teapot(Object):][teapot]] will contain a type of tea … either given or randomly chosen. +# A teapot will “fill” a teacup forever, until it is “remade”. + + +# [[file:../../../projects/mud.org::*Tea Service][Tea Service:2]] +@create/drop teapot;pot;tea pot:typeclasses.drinkables.Teapot +# +@desc teapot = An adorable brown teapot, full of tea. You feel you could |gmake|n a fresh pot. +# Tea Service:2 ends here + + +# And of course, you can’t steal the tea pot: + +# [[file:../../../projects/mud.org::*Tea Service][Tea Service:3]] +@lock teapot = get:false() +# +@set teapot/get_err_msg = "You don't need to carry it around to make tea." +# Tea Service:3 ends here + # Secret Room # Pulling on a candle opens a secret staircase! # [[file:../../../projects/mud.org::*Secret Room][Secret Room:1]] -@dig Secret Room;mp10:typeclasses.rooms_dark.DarkRoom = stairs behind bookcase;stairs,up the stairs;stairs +@teleport/quiet mp03 +# +@dig Secret Room;mp12:typeclasses.rooms_dark.DarkRoom = stairs behind bookcase;down;down stairs;secret passage;bookcase,up the stairs;stairs;leave;up # Secret Room:1 ends here @@ -2482,20 +2535,27 @@ pose gnome/default = smoking his pipe # Pulling Sconce # Temporarily move the exit into the room. -# Reset things: - # [[file:../../../projects/mud.org::*Pulling Sconce][Pulling Sconce:1]] -@set sconce/pull_msg = "You hear a click, and the bookcase next to the candle swings forward revealing a secret passage." +@set sconce/pull_msg = "You hear a click, and the bookcase next to the candle swings forward revealing a |Ysecret passage|n." # Pulling Sconce:1 ends here + + +# Let’s reset it to start: + + +# [[file:../../../projects/mud.org::*Pulling Sconce][Pulling Sconce:2]] +@teleport/tonone stairs behind bookcase +# Pulling Sconce:2 ends here + # Inside the Secret Room # [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:1]] -@teleport mp10 +@teleport mp12 # -@desc here = A curious little room containing a stool next to a table covered with jars, bottles, glass pipes and other alchemical equipment. +@desc here = A curious little room containing a stool next to a table covered with alchemical equipment--a testament to the arcane arts--cluttered yet meticulously organized. # Inside the Secret Room:1 ends here @@ -2504,47 +2564,60 @@ pose gnome/default = smoking his pipe # [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:2]] -@alias up the stairs = up +@desc stairs = Stone steps leading back to the surface. You are sure you will be able to find the latch to let yourself out. # -@set stairs/traverse_msg = "You climb the stone stairs back to the cozy room." +@set stairs/traverse_msg = "You climb the stone stairs. Feeling around, you find the latch and let yourself out." # Inside the Secret Room:2 ends here -# And details to make this room feel intentional as well. - - -# [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:3]] -@detail table = Made from a black wood. Dusty on the edges. -# Inside the Secret Room:3 ends here - - - # Are the equipment stuff we could =use=? +# [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:3]] +@detail equipment;alchemical = A mortar and pestle, vials, crystal phials, jars, and tools all surround a black cauldron. +# Inside the Secret Room:3 ends here + # [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:4]] -@detail equipment = pipes, beakers, tubes ... +@detail mortar;pestle = An obsidian mortar, its surface smooth and cool to the touch. Beside it, a pestle carved from a single piece of ancient bone, adorned with carvings of arcane symbols. # Inside the Secret Room:4 ends here - - -# Should the jars be objects that could be picked up? - - # [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:5]] -@detail jars = Hrm. Newt eyes, bat wings... interesting contents. +@detail = phials = Delicate crystal phials, each shaped like a teardrop, hang from a wrought iron rack. These phials may store volatile ingredients, which require special containment to prevent their magical properties from dissipating. # Inside the Secret Room:5 ends here +# # such as powdered unicorn horn or phoenix feathers, -# Bottles same as jars? +# Should the jars and vials be objects that could be picked up? # [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:6]] -@detail bottles = Four bottles contain clear liquids and are labeled: DA, KI, ON, and SU +@detail jars = Hrm. Newt eyes, bat wings... interesting contents. + +@detail vials = Scattered across the table are an array of glass vials, each containing vibrant liquids that swirl with colors not found in nature. Some are stoppered with cork, while others are sealed with wax. # Inside the Secret Room:6 ends here + + +# Labels, written in elegant script, indicate their contents: "Essence of Nightshade," "Elixir of Clarity," and "Dragon's Blood."? + +# Bottles same as vials? + + +# [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:7]] +@detail bottles = Four bottles contain clear liquids and are labeled: DA, KI, ON, and SU +# Inside the Secret Room:7 ends here + + + +# And tools that definitely need to /stay here/: + + +# [[file:../../../projects/mud.org::*Inside the Secret Room][Inside the Secret Room:8]] +@detail tools = A set of finely crafted tools lies neatly arranged on a velvet cloth: a pair of tweezers for handling delicate ingredients, a small scalpel for precise cutting, and a set of measuring spoons made from silver, each engraved with different symbols representing the elements. +# Inside the Secret Room:8 ends here + # Stool # A stool to sit while working @@ -2568,10 +2641,374 @@ pose gnome/default = smoking his pipe @lock stool = get:false() # Stool:3 ends here + + +# Let’s do a funnier message: + # [[file:../../../projects/mud.org::*Stool][Stool:4]] @set stool/get_err_msg = "Stop try to steal everything not nailed down." # Stool:4 ends here +# Book + +# A mystic book of potions can add a new dimension to the game. + + +# [[file:../../../projects/mud.org::*Book][Book:1]] +@create/drop leather-bound book:typeclasses.readables.Book +# Book:1 ends here + + + +# The book’s title and the fact that it can’t be removed from the room: + + +# [[file:../../../projects/mud.org::*Book][Book:2]] +@desc book = An old brown book where even the cover has seen considerable wear with stains and scratches in the leather. The band connect to a gold ring, itself attached to a chain that hooks it to the table. The title reads, |MFavorite Potions|n. Inside, written in beautiful penmanship, the book contains recipes. +# Book:2 ends here + + + +# Lock it down. + + +# [[file:../../../projects/mud.org::*Book][Book:3]] +@lock book = get:false() +# +@set book/get_err_msg = "The book is chained to the table." +# Book:3 ends here + + + +# And of course, the inside. + + +# [[file:../../../projects/mud.org::*Book][Book:4]] +@set book/inside = "file:world/alchemy-book.md" +# Book:4 ends here + +# Cauldron +# The cauldron should have a special =look= so you know what ingredients have been added, and the follow commands: + +# - =empty= … an imp should drink the contents and then shakes its head, but only if there are ingredients already in it. +# - =add= (or =give=) an item from the inventory. +# - =create=, =cook= or =mix= +# - =bottle= to create a vial + +# What about these commands? + +# - =crush= for use in + + +# [[file:../../../projects/mud.org::*Cauldron][Cauldron:1]] +@create/drop black cauldron: typeclasses.alchemy.Cauldron +# Cauldron:1 ends here + + + +# And the details: + + +# [[file:../../../projects/mud.org::*Cauldron][Cauldron:2]] +@desc cauldron = A small, cast-iron cauldron sits on a portable stand, its interior stained from countless brews. The cauldron is surrounded by a ring of salt, a protective barrier against unwanted energies. A small fire burns beneath it, ready to heat concoctions. +# Cauldron:2 ends here + +# Table +# Until we decide if we want to do something with the table: + + +# [[file:../../../projects/mud.org::*Table][Table:1]] +@detail table = Made from a polish black wood, etched with intricate runes that shimmer faintly in the candlelight. +# Table:1 ends here + +# Imp +# Every secret alchemical lab should have an Imp familiar. + + +# [[file:../../../projects/mud.org::*Imp][Imp:1]] +@create/drop Impetus;imp: typeclasses.puppets.Puppet +# Imp:1 ends here + + + +# Note that we give him a male gender: + + +# [[file:../../../projects/mud.org::*Imp][Imp:2]] +@set imp/gender = "neutral" +# Imp:2 ends here + + + +# Work around the =pose= bug: + + +# [[file:../../../projects/mud.org::*Imp][Imp:3]] +py bt = self.search('imp'); bt.db.pose = 'sitting on an ornate perch' +# Imp:3 ends here + +# [[file:../../../projects/mud.org::*Imp][Imp:4]] +@set imp/_sdesc = "imp" +# +@set imp/pose_sleep = "sitting on an ornate perch" +# +@pose default imp = sitting on an ornate perch +# Imp:4 ends here + + + +# And a good description that I can rework: + + +# [[file:../../../projects/mud.org::*Imp][Imp:5]] +@desc imp = Peculiar little fellow gives you are quizical look from its roost on a wrought iron perch that it clutches with its clawed feet and barbed, prehensile tail. +# Imp:5 ends here + +# [[file:../../../projects/mud.org::*Imp][Imp:7]] +@set imp/arrive = "5 ;; emote stares at you quizically. ;; 240 ;; emote yawns." +# Imp:7 ends here + + + +# Would be nice if it has a variety of responses to speech. + + +# [[file:../../../projects/mud.org::*Imp][Imp:8]] +@set imp/say = "1 ;; emote << nods ^ looks at you quizically ^ stares at you curiously ^ shrugs ^ investigates its fingerclaws ^ winks ^ smirks ^ raises an eyebrow ... well, if it had one, it would ^ stares at you ^ squints its eyes >>." +# Imp:8 ends here + +# Bedroom +# A bedroom with a wardrobe that goes to another land sounds great. + + +# [[file:../../../projects/mud.org::*Bedroom][Bedroom:1]] +@teleport/quiet mp03 +# +@dig Bedroom;mp13:typeclasses.rooms.OpenableRoom = stairs up to a loft;up stairs;up;loft;bedroom,down the stairs;down;leave +# Bedroom:1 ends here + + + +# Look see: + + +# [[file:../../../projects/mud.org::*Bedroom][Bedroom:2]] +@desc loft = Ornate black irons banister outline the thick wood planks that form steps leading to some lofty alcove. +# +@set loft/traverse_msg = "You walk up the shadowy stairs..." +# Bedroom:2 ends here + + + +# And a description: + +# [[file:../../../projects/mud.org::*Bedroom][Bedroom:3]] +@teleport/quiet mp13 +# +@desc here = Like the shadows that dance here, this oddly shaped room hugs its contents: a thick wooden framed bed piled high with blankets and pillows to keep out the chill; a thick burgundy carpet sporting a pair of slippers; and a wardrobe decorated with ornate leaves and berries. +# Bedroom:3 ends here + + + +# And describe the exit: + + +# [[file:../../../projects/mud.org::*Bedroom][Bedroom:4]] +@desc down the stairs = Ornate black irons banister outline the thick wood planks that form steps leading down to living space below. +# +@set down the stairs/traverse_msg = "You walk down the stairs to the living space below." +# Bedroom:4 ends here + + + +# And of course, you can see more details: + + +# [[file:../../../projects/mud.org::*Bedroom][Bedroom:5]] +@detail bed = Cozy and inviting, like most things in this house, someone covered this bed in warm blankets and fluffy pillows in rich, warm colors. The frame, formed from a single tree that grew to hold this bed. +# +@detail blankets = Thick and warm to ward off the outside rain and chill. +# +@detail pillows = While fluffy, these long pillows could certainly make fine posts for a blanket fort. +# +@detail carpet = The dark red rug has a curious whirlpool pattern. +# Bedroom:5 ends here + + + +# Are the slippers just a red herring? + + +# [[file:../../../projects/mud.org::*Bedroom][Bedroom:6]] +@create/drop pair slippers +# +@desc slippers = Red-leather and worn with an ornate tassel on top. +# +@lock slippers = tethered:id(mp13) +# +@set slippers/tethered_msg = "The slippers are having none of this adventuring outside of this cozy room, and walk back to the side of the bed." +# Bedroom:6 ends here + +# Wardrobe +# One needs to open it to go to another world. + + +# [[file:../../../projects/mud.org::*Wardrobe][Wardrobe:1]] +@dig Prairie;mp14 = through the wardrobe,copse of pinion pines;pines;copse;trees +# Wardrobe:1 ends here + + + +# And describe the exit: + + +# [[file:../../../projects/mud.org::*Wardrobe][Wardrobe:2]] +@desc wardrobe = Behind the cloaks and jackets, you see long, green needles from pine trees, and beyond that, a clearing! +# +@set wardrobe/traverse_msg = "You part and push through the cloaks, jackets and waistcoats, and into a copse of pinion trees, to reach a wide open space of grass." +# +@alias through the wardrobe = the exit +# +@alias through the wardrobe = wardrobe +# +@set here/open_exit = $search(through the wardrobe) +# +@teleport/tonone through the wardrobe +# Wardrobe:2 ends here + + + +# And messages for opening and closing the wardrobe: + + +# [[file:../../../projects/mud.org::*Wardrobe][Wardrobe:3]] +@set here/open_exit_msg = "$You() $conj(open) the wardrobe, revealing the cloaks, jackets, and ... green needles from pine trees? What is going on here? Between the trees, you see a clearing!" +# +# Not sure if the door closed automatically, or if someone closed it, so we use a passive sentence: +@set here/close_exit_msg = "The wardrobe door is closed." +# Wardrobe:3 ends here + + + +# How will we distinguish between the wardrobe, the exit and the object that controls the exit? The room could have an “open” and “close” that could teleport and remove the exit. + + +# [[file:../../../projects/mud.org::*Wardrobe][Wardrobe:4]] +@create/drop wardrobe +# +@desc wardrobe = While resting on the floor, this wardrobe scratches the ceiling. Large furniture, or perhaps a small room? Gorgeously ornate with carvings of leaves and berries. Carved above the doors, are the words, |wUKRAH|n. The latch is undone, and this can be |gopen|ned. +# Wardrobe:4 ends here + + + +# The =look= command could be distinguishing using aliases of “the exit” and “the furniture”? + + +# [[file:../../../projects/mud.org::*Wardrobe][Wardrobe:5]] +@alias wardrobe = the object +# Wardrobe:5 ends here + + + +# Don’t allow it to get taken: + + +# [[file:../../../projects/mud.org::*Wardrobe][Wardrobe:6]] +@lock wardrobe = get:false() +# +@set wardrobe/get_err_msg = "The wardrobe is way too big to lift." +# Wardrobe:6 ends here + +# Southwest Prairie +# What am I doing here? + + +# [[file:../../../projects/mud.org::*Southwest Prairie][Southwest Prairie:1]] +@teleport/quiet mp13 +# +@desc here = On the edge of a small knoll with a copse of trees, the space stretches to a rolling dawnclear, blue skies pushing down the horizona distant sunset attempting to pull the sky down with it bright, star painted skies. +# Southwest Prairie:1 ends here + + + +# Describe the exit: + + +# [[file:../../../projects/mud.org::*Southwest Prairie][Southwest Prairie:2]] +@desc copse = A copse of trees covers the top of the knoll. Hanging from a tree, a lit lantern, as if showing the way to another world. +# +@set copse/traverse_msg = "You push through the tree's long pine needles to then push through the cloaks and jackets to exit the wardrobe." +# Southwest Prairie:2 ends here + + + +# Details? + + +# [[file:../../../projects/mud.org::*Southwest Prairie][Southwest Prairie:3]] +@detail knoll;hillock;knell = The land stretches and buckles in small rolls. You find yourself and one of the high points, allowing you to absorb the immense view. +# +@detail latern = Curious iron worked latern sways in the subtle breeze. +# +@detail campfire;fire = Only a thin wisp of smoke escapes to the skies; fragrating the air. +# Southwest Prairie:3 ends here + +# Mare’s Head +# Taken from [[https://en.wikipedia.org/wiki/Mare%27s_Head][Wikipedia]]. + + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:1]] +@create/drop Mares Head;head: typeclasses.puppets.Puppet +# Mare’s Head:1 ends here + + + +# Note that we give him a male gender: + + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:2]] +@set mares head/gender = "neutral" +# Mare’s Head:2 ends here + + + +# Work around the =pose= bug: + + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:3]] +py bt = self.search('head'); bt.db.pose = 'sitting next to a small campfire' +# Mare’s Head:3 ends here + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:4]] +@set mares head/_sdesc = "curious figure" +# +@set mares head/pose_sleep = "sitting next to a small campfire" +# +@pose default mares head = sitting next to a small campfire +# Mare’s Head:4 ends here + + + +# And a good description that I can rework: + + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:5]] +@desc mares head = A curious figure wearing dark robes and a gleaming white skull of a mare. Interestingly, the skull has velvety horse ears. +# Mare’s Head:5 ends here + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:6]] +@detail ears;ear = They look real, and twitch as if alive. +# Mare’s Head:6 ends here + + + +# And when someone arrives: + + +# [[file:../../../projects/mud.org::*Mare’s Head][Mare’s Head:7]] +@set mares head/arrive = "5 ;; emote nods its skull in greeting. ;; 30 ;; emote stares at you with its empty sockets. ;; emote reaches into the fire, and pulls out a branch ;; 2 ;; emote brushes off the soot, and bends it into a pleasing curve... ;; gift pipe to {0}" +# Mare’s Head:7 ends here + # Bugs # And now that we are done, say it: