PlugAttachableclassattachables.t[678]

PlugAttachable is a mix-in class for use in conjunction with either SimpleAttachable or NearbyAttachable, enabling the commands PLUG X INTO Y, UNPLUG X FROM Y, PLUG X IN and UNPLUG X, treating ATTACH and DETACH commands as equivalent to these, and describing an object's attachments as being plugged into it.

class PlugAttachable :   object

Superclass Tree   (in declaration order)

PlugAttachable
        object

Subclass Tree  

(none)

Global Objects  

(none)

Summary of Properties  

alreadyAttachedMsg  alreadyPluggedInMsg  attachmentLister  cannotBeAttachedMsg  cannotPlugInAnyMoreMsg  canPlugIntoMe  isPlugable  isPluggedIn  needsExplicitSocket  notAttachedMsg  notAttachedToThatMsg  okayDetachFromMsg  okayDetachMsg  reportAttachAsPlug  socketCapacity 

Summary of Methods  

attachTo  dobjFor(PlugIn)  dobjFor(PlugInto)  dobjFor(Unplug)  dobjFor(UnplugFrom)  iobjFor(AttachTo)  iobjFor(PlugInto)  makeDetachedFrom  makePlugged  okayAttachMsg 

Properties  

alreadyAttachedMsgattachables.t[761]

no description available

alreadyPluggedInMsgattachables.t[764]
no description available

attachmentListerattachables.t[690]
Objects attached to this object should be described as plugged into it, so we need to use the appropriate lister.

cannotBeAttachedMsgattachables.t[816]
Make sure we don't exceed our socketCapacity if the player uses ATTACH TO rather than PLUG INTO; use the check method for PlugInto.

cannotPlugInAnyMoreMsgattachables.t[796]
If plugging anything else into us would exceed our socketCapacity, rule out the action with an appropriate message,

canPlugIntoMeattachables.t[684]
A PlugAttachable can have other things plugged into it.

isPlugableattachables.t[681]
A PlugAttachable can be plugged into things.

isPluggedInattachables.t[701]
Is this item plugged in to anything?

needsExplicitSocketattachables.t[698]
Plugable objects could either be implemented so that an explicit socket needs to be specified (e.g. PLUG CABLE INTO SOCKET) or so that the socket can be left unspecified (e.g. PLUG TV IN). For the former case, make this property true; for the latter, make it nil.

notAttachedMsgattachables.t[854]
no description available

notAttachedToThatMsgattachables.t[857]
no description available

okayDetachFromMsgattachables.t[851]
Note that we're no longer plugged in to anything.

okayDetachMsgattachables.t[889]
If plugging/unplugging this item requires an explicit socket to plug into/unplug from, then detach this item from whatever it's currently attached to.

reportAttachAsPlugattachables.t[939]
Flag, so we want ATTACH X TO Y to be reported as plugging X into Y? By default we do, but in some cases game authors may prefer to have attaching reported as attaching.

socketCapacityattachables.t[710]
If this object represents the socket side of a plug-and-socket relationship, then the socketCapacity defines the total number of items that can be plugged into it once. By default we'll assume that a socket can only have one thing plugged into it at a time, but this can readily be overridded for items that can take more.

Methods  

attachTo (obj)attachables.t[950]

If we're attached to something we're considered to be plugged into it.

dobjFor(PlugIn)attachables.t[891]
no description available

dobjFor(PlugInto)attachables.t[718]
no description available

dobjFor(Unplug)attachables.t[860]
no description available

dobjFor(UnplugFrom)attachables.t[819]
no description available

iobjFor(AttachTo)attachables.t[799]
no description available

iobjFor(PlugInto)attachables.t[766]
no description available

makeDetachedFrom (obj)attachables.t[942]
If we're detached from something we're no longer plugged into it.

makePlugged (stat)attachables.t[713]
Note whether we're plugged our unplugged.

okayAttachMsg ( )attachables.t[751]
If we're plugging in or we want attaching to be reported as plugging in, then say that actor plugs the dobjs into the iobj; otherwise use the inherited message, which reports that the actor attaches the dobjs to the iobj.

Adv3Lite Library Reference Manual
Generated on 26/02/2025 from adv3Lite version 2.2