[Package Index | Mudlib Index | Effect Index]

File /std/shops/player_shop/shop_front.c

The standard inheritable object for player-run shop fronts.

Description

As far as the customer is concerned, the shop front is the shop. They will have no access to the other areas of the shop. In this room, they can apply for a position, make a complaint or suggestion, as well as buy and sell items. The main entrance is linked to a bell which will 'tinkle' throughout the shop. In the event that the npc shopkeeper is not currently working, and no employees are currently in the shop, a push-bell is provided to alert any employees who may be logged on.

Applicants who have had their application accepted can confirm their employment here. Any applicant may also cancel their application.

All suggestions and complaints are mailed to managers. All applications are saved and managers are notified by e-mail.

Note that the outside entrance to this room should be modified to call the tinkle_bell() function. This will ensure that the shop's bell alerts any employees within the shop whenever the door is opened/closed. In the setup() function, the relevant exit should be modified along these lines:

modify_exit( DIRECTION, ({ "open/close func", ({ this_object(),
   "shop_bell" }), "door short", "shop door", "door long",
   "This is a functional, if not terribly exciting door.  "
   "There is a sign hanging above it.\n" }) );

And the function shop_bell() which looks like this:

int shop_bell(int opening)
{
    ( PATH_TO_SHOP_FRONT )->tinkle_bell(opening);
    return 1;
}

See also:
/include/player_shop.h, /std/shops/player_shop/office.c, /std/shops/player_shop/mgr_office.c, /std/shops/player_shop/counter.c, /std/shops/player_shop/storeroom.c and /std/shops/player_shop/shopkeeper.c

Written by Ringo

Started 1st August 1999

Example

#include "path.h"

inherit "/std/shops/player_shop/shop_front";

void setup()
{
   set_light(60);
   set_office( PATH+ "office" );

   set_long( "This is the Creel Springs branch of Tarnach Fendertwin's "
      "Quality Consumables, a shop that acts as a trading post for magic "
      "spell components.  There is a small card and a push-bell on the "
      "counter to the east and a sign hanging from the front of it.  The "
      "door to the east leads out to the village lane.\n" );
   add_sign( "The sign is a piece of white card that hangs from the front "
     "of the counter.\n", "Welcomme to Tarnach's!  Pleese ask aboute "
     "our pryces for buying and selling: "+ query_office()->
     query_list_string() +".  Employement enquyries wellcome!" );
   set_exit_counter( "west" );
   set_exit_out( "east", "/d/ram/Lancre_Kingdom/Creel_Springs_pt/creel_springs02" );
}

Inherits

This class inherits the following classes /std/room/basic_room.c

Includes

This class includes the following files /include/player_shop.h and /include/mail.h

Method index

Public Functions

These are functions that everyone can access.

.