How to make a comsys object
From FiranMUX
Making a Comsys Channel Object
- If this is a new comsys channel, @ccreate <channel name>.
- @create a channel object with @create <channel name>. Standard format for channel names is Comsys -- <channel name>
- @set the new object Sticky, Safe and Wizard
- @desc the new object with what the channel is
- &max_log the new object=100
- @cset/object <channel name>=#dbref of the new object
- @tel the new object to the bin of comsys channels (#2481)
Locking a Comsys Channel Object
- Add the criteria of what the channel is being locked to: Ex: &is-wizard #<dbref>=[hasflag(%#,wizard)]
- Then lock it to that criteria: Ex: @lock/use #<dbref>=is-wizard/1
- The join lock for a channel is a normal @lock on the channel object.
- The transmit lock for a channel is a use @lock on the channel object.
- The receive lock for a channel is an enter @lock on the channel object.
- The wizard channel, for example, looks like this:
Comsys -- Wizards(#142sSW) Type: THING Flags: SAFE STICKY WIZARD Wizard channel Owner: Kath Key: IS-WIZARD/1 Dead ducks: 0 Zone: *NOTHING* Powers: EnterLock: IS-WIZARD-OR-ROYALTY/1 UseLock: IS-WIZARD/1 Modified: Tue Sep 25 10:35:32.697625 2007 IS-WIZARD: [or(hasflag(%#, wizard), hastag(%#, wizchan))] IS-WIZARD-OR-ROYALTY: [or(orflags(%#, WZ), hastag(%#, wizchan))] MAX_LOG [#1$P]: 100
- More information on @locking if it seems confusing can be found in Adam's @lock class.
