You can set up a bunch of locks to all use the same control database, but its only a little more complicated. This should make all the locks that use the same database match - a change made to any one of the locks affects all of them (I haven't done this one, but I don't see why the docs should lie:). To set it up, you do the following (the #dbnumber is the dbnumber of the exit, room, or object that's going to contain the lock database, and should be the same for all the locks that are supposed to share the same controls): @lock <exit1>=#50173 @set <exit1>=_lock_dbref:<#dbnumber> @lock <exit2>=#50173 @set <exit2>=_lock_dbref:<#dbnumber> lock #set <#dbnumber>
Lock Manager Version 1.0.0 by WhiteFire. ------------------------------------------------------------------------ Lock Manager allows you to easly control locks using WhiteFire's general lock program. Syntax: lock [#show] [<lockname>] Shows the status of a lock. lock #help [<subject>] Gives you help on this program. lock #guest [<lockname>=]<players> Add players to the guest list. lock #!guest [<lockname>=]<players> Remove players to the guest list. lock #ban [<lockname>=]<players> Add players to the banned list. lock #!ban [<lockname>=]<players> Remove players to the banned list. lock #maint [<lockname>=]<players> Add players to the maintenance list. lock #!maint [<lockname>=]<players> Remove players to the maintenance list. lock #max [<lockname>=][<limit>] Set a crowd limit for the lock. lock #public [<lockname>] Set the lock to public status. lock #private [<lockname>] Set the lock to private status. lock #set [<lockname>=]<dbref> Set a lock alias or the default lock. For help on setting up a lock, type: lock #help setup For an index of help for the program, type: lock #help index -- LOCK #HELP INDEX ---------------------------------------------------- To access one of the items listed below, type: lock #help <subject> Subject What ----------- -------------------------------------------------- Index This text. Setup Information on how to setup a lock. Public Information on the #public and #private commands. Set Information for the #set command. Guest About guest lists and the #guest and #!guest commands. Banned About the Banned list and the #ban and #!ban commands. Maxcrowd About the Crowd lock feature and the #max command. Maintenance About the maintenance features and #maint/#!maint. Messages Using special messages on the lock. Credits Credit where credit is due. For further information contact "WhiteFire" on Tapestreis or FurryMUCK. -- LOCK #HELP SETUP ---------------------------------------------------- To set up a lock for use with the lock manager you do the folowing: @lock <exit>=#<dbref of WhiteFire's lock program> lock #set <exit> You may alternatly, on the exit, set a property _lock_dbref:#<dbref> Where the <dbref> is the location of the lock database. It is posible to have more than one lock using the same database, giving a central control over all of them. In this case you should use the command: lock #set #<dbref> using the dbref of the lock database. -- LOCK #HELP PUBLIC --------------------------------------------------- The public/private status of a lock controls who can get through it. If a lock is public anyone can go through if (a) they are not on the banned list, and (b) they would not exceed the maxcrowd, if set. Syntax: lock #public [<lockname>] This sets the lock public. lock #private [<lockname>] This sets the lock private. -- LOCK #HELP SET ------------------------------------------------------ To set up a lock for use with the lock manager you do the folowing: @lock <exit>=#<dbref of WhiteFire's lock program> lock #set <exit> You may alternatly, on the exit, set a property _lock_dbref:#<dbref> Where the <dbref> is the location of the lock database. It is posible to have more than one lock using the same database, giving a central control over all of them. In this case you should use the command: lock #set #<dbref> using the dbref of the lock database. -- LOCK #HELP GUEST ---------------------------------------------------- The 'guest' list is a list of people who can alwase pass through a lock, regardless of if the lock is set up non-public, or if it would exceed the max-crowd. Syntax: lock #guest [<lockname>=]<player1> [<player2>...] Add guest(s). lock #!guest [<lockname>=]<player1> [<player2>...] Remove guest(s). -- LOCK #HELP BANNED --------------------------------------------------- The 'banned' list is a list of players who may never pass through a lock, regardless of the public/private status of the lock. Syntax: lock #ban [<lockname>=]<player1> [<player2>...] Add banned player(s). lock #!ban [<lockname>=]<player1> [<player2>...] Remove player(s). -- LOCK #HELP CROWD ---------------------------------------------------- If you set a maximum 'crowd' for a room through the #max command, the lock keeps people out of the room if the room is 'full'. The rules for someone trying to enter a room are: (a) If they are on the guest list, they get in. (b) if they are banned, they don't. (c) if they would not exceed the maximum number of people in the room, they are let through. Note that the maximum does not count sleepers, or people on the guest list. Also it has no effect if the lock is not public. Syntax: lock #max [<lockname>=]<number> Set the max number of people. lock #max [<lockname>] Turn off the crowd lock. -- LOCK #HELP MAINTENANCE ---------------------------------------------- The maintenance list is a list of players that can alter the other atribues of the lock with this program. This allows you to have other people run the lock for you. This feature is not avalible on mucks where this program is not owned by, and set, Wizard. Syntax: lock #maint [<lockname>=]<player1> [<player2>...] Add to maint list. lock #!maint [<lockname>=]<player1> [<player2>...] Remove from maint list. -- LOCK #HELP MESSAGES ------------------------------------------------- There are a number of messages that you may set on a lock on top of the @succ/@osucc/@fail/@ofail messages. Curently these are only setable as properties on the lock's database as properties. There is no support in this program to set or view any of these messages. All such messages support pronoun substitutions, but do NOT support programs, such as the @6800 at this time. This, and the support through this program, is coming in future releases. They all come in user and room versions. ('o' messages) The properties are: _banned-msg/_obanned-msg: Message printed if player is banned. _max-msg/_omax-msg: Message printed if there are too many people in the destination. _succ-msg/_osucc-msg: Message printed before the @succ/@osucc message if successful. _fail-msg/_ofail-msg: Message printed before the @fail/@ofail message if the lock is not public and they are not on the guest list. -- LOCK #HELP CREDITS -------------------------------------------------- Many thanks to Foxen for inspiration through example, both from her crowd lock program and MUFpage, the ultimate feep. Both had a lot of influence in the creation of this program. Also I filched a few functions from her player list program. :) ----------------------------------------------------- Feeps 4ever! ----- Have fun building!