Pre-release
Adventure.js Docs Downloads
Score: 0 Moves: 0

Class: Liquid

Extends: adventurejs.Substance

Defined in: adventure/assets/substances/Liquid.js, line 6

More info: AboutSubstances

Public Constructor:

MyGame.createAsset({ "class":"Liquid", "name":"foo", [...] })

Liquid is a subclass of Substance with liquid (as opposed to solid or gaseous) properties. Liquid is equivalent to water in its freezing temperature, boiling temperature, and specific heat.

Example:

Substances are different from Tangibles in that they're semi-global, rather than singular. The class represents all of its kind in a Game, meaning, if you create an instance called "water", all water in the Game is the same water, whether it's in a lake or a drinking glass. As such, Liquid has no temperature setting of its own. Instead, temperature can be applied to a Liquid's container.

MyGame.createAsset({
  class: "Liquid",
  name: "water",
  description: "It's water. ",
});
MyGame.createAsset({
  class: "Bowl",
  name: "bowl",
  place: { on: "counter" },
  description: "It's a bowl. ",
  in:
  {
    vessel: {
      volume: 350,
      substance_id: "water",
      temperature: 20,
    },
  },
});

Liquids that you define can be mixed and turned into other Liquids by setting the mixwith property, as shown in the example below.

MyGame.createAsset({
  class: "Liquid",
  name: "water",
  description: "It's water. ",
  mixwith:
  {
    "milk": "watery milk",
    "ketchup": "ketchup water",
    "beer": "watered down beer",
  },
});
MyGame.createAsset({
  class: "Liquid",
  name: "milk",
  description: "It's milk. ",
  mixwith:
  {
    "water": "watery milk",
  },
});

MyGame.createAsset({
  class: "Liquid",
  name: "watery milk",
  description: "It's watery milk. ",
  mixwith:
  {
    "milk": "watery milk",
    "water": "watery milk",
  },
});

Private Constructor:

var foo = new adventurejs.Liquid(game_name, name)

Though all in-game glasses use a standard constructor method under the hood, it's unlikely that you'd need to call it directly. To create an instance of the Liquid class, it must be defined in a game file as a generic object. That object will be used at runtime to construct a new game class instance, which will be validated and initialized before adding it to the Game. See above for the public constructor, or see Game#createAsset to learn more.

Parameters:

  • game_name String
    Name of top level game instance that is scoped to window.
  • name String
    Instance name.
Inherited Overrides

Index

Methods:

Properties:

Methods Collapse all  |  Expand all

$can()

Defined in: adventure/asset/$can.js, line 7

Inherited from: adventurejs.Asset#$can

$can() is a general method for getting at asset properties stored in asset.can.
$is()

Defined in: adventure/asset/$is.js, line 7

Inherited from: adventurejs.Asset#$is

$is() is a generalized method for getting various asset states, usually stored in the asset.is nested object. It can also test for more complex circumstances, such as in the case of Tangibles. For example, if your game has a sword in a stone, you can test whether the sword is currently in the stone with MyGame.$("sword").is("in", "stone")
$must()

Defined in: adventure/asset/$must.js, line 7

Inherited from: adventurejs.Asset#$must

$must() is a general method for getting at asset properties stored in asset.must.
addWordsToLookup(words, type)

Defined in: adventure/asset/addWordsToLookup.js, line 6

Inherited from: adventurejs.Asset#addWordsToLookup

Parameters:

  • words Array
  • type String
addWordsToLookup() takes words associated with this asset and adds them to the global lookup table.
aliases()

Defined in: adventure/Asset.js, line 662

Inherited from: adventurejs.Asset#aliases

aliases() is a collection of method names that are meant for authors to use. Since they don't exist on all classes, we set up these aliases so that, if authors call them on classes they're not applicable to, they will politely return null instead of throwing a "not a function" error.
callAction(hook, asset_name, params) → {Boolean}

Defined in: adventure/asset/callAction.js, line 6

Inherited from: adventurejs.Asset#callAction

Parameters:

  • hook string
  • asset_name string
    We use asset.name here instead of asset.id in support of authors, because we're never asking them to deal in IDs, only names. Hooks will only be defined by authors, so we let them use asset.name as their identifier. We do however make an effort to see if an id has been passed instead of a name, because Ivan.
  • params object
    Arbitrary parameter object.
Check if this asset has a general verb action or reaction for the specified event, or if the asset has an action for the specific asset. If either form is found, pass it to getStringOrArrayOrFunction and return the results. If the result returns false or null it will terminate the calling verb's default behavior.

Returns:

Boolean
canSetVerbState(verb) → {Boolean}

Defined in: adventure/asset/canSetVerbState.js, line 6

Inherited from: adventurejs.Asset#canSetVerbState

Parameters:

  • verb String
canSetVerbState is a method to check whether the specified verb can set state on this asset. Assumes that asset.dov[verb].enabled is true

Returns:

Boolean
destroy()

Defined in: adventure/asset/destroy.js, line 7

Inherited from: adventurejs.Asset#destroy

Todos: What else needs to happen on destroy?

destroy is called to remove an asset from the game world.
didDoVerbs(verbs) → {Boolean}

Defined in: adventure/asset/didDoVerbs.js, line 6

Inherited from: adventurejs.Asset#didDoVerbs

Parameters:

  • verbs Array
didDoVerbs check whether any of the specified verbs has ever been applied to the asset as a direct object. This is a convenience method that relies on asset.DOVdidDo()

Returns:

Boolean
didIoVerbs(verbs) → {Boolean}

Defined in: adventure/asset/didIoVerbs.js, line 6

Inherited from: adventurejs.Asset#didIoVerbs

Parameters:

  • verbs Array
didIoVerbs check whether any of the specified verbs has ever been applied to the asset as an indirect object. This is a convenience method that relies on asset.IOVdidDo()

Returns:

Boolean
DOVallowOnce(verb) → {Boolean}

Defined in: adventure/asset/DOVallowOnce.js, line 6

Inherited from: adventurejs.Asset#DOVallowOnce

Parameters:

  • verb String
DOVallowOnce is a method to check whether this asset is subscribed to allow the specified verb to act on it as a direct object only once.

Returns:

Boolean
DOVallowWithAnything(verb) → {Boolean}

Defined in: adventure/asset/DOVallowWithAnything.js, line 6

Inherited from: adventurejs.Asset#DOVallowWithAnything

Parameters:

  • verb String
DOVallowWithAnything is a method to check whether this asset is subscribed to act as a direct object with the specified verb without any direct object.

Returns:

Boolean
DOVallowWithAsset(verb, asset) → {Boolean}

Defined in: adventure/asset/DOVallowWithAsset.js, line 6

Inherited from: adventurejs.Asset#DOVallowWithAsset

Parameters:

  • verb String
  • asset Object
DOVallowWithAsset is a method to check whether this asset is subscribed to act as a direct object with the specified verb and indirect object.

Returns:

Boolean
DOVallowWithNothing(verb) → {Boolean}

Defined in: adventure/asset/DOVallowWithNothing.js, line 6

Inherited from: adventurejs.Asset#DOVallowWithNothing

Parameters:

  • verb String
DOVallowWithNothing is a method to check whether this asset is subscribed to act as a direct object with the specified verb without any indirect object. For example, "plug in computer" where when an outlet is implied but not defined.

Returns:

Boolean
DOVdidDo(verb) → {Boolean}

Defined in: adventure/asset/DOVdidDo.js, line 6

Inherited from: adventurejs.Asset#DOVdidDo

Parameters:

  • verb String
DOVdidDo is a method to check whether this asset was already used as a direct objecb by the specified verb.

_didDo is an alias meant for authors.

Returns:

Boolean
DOVdidDoCount(verb) → {Int}

Defined in: adventure/asset/DOVdidDoCount.js, line 6

Inherited from: adventurejs.Asset#DOVdidDoCount

Parameters:

  • verb String
DOVdidDoCount is a method to get a count of times this asset was used as a direct object by the specified verb.

_doCount is an alias meant for authors.

Returns:

Int
DOVdidTry(verb) → {Boolean}

Defined in: adventure/asset/DOVdidTry.js, line 6

Inherited from: adventurejs.Asset#DOVdidTry

Parameters:

  • verb String
DOVdidTry is a method to check whether it was attempted to use this asset as a direct object by the specified verb.

_didTry is an alias meant for authors.

Returns:

Boolean
DOVdidTryCount(verb) → {Boolean}

Defined in: adventure/asset/DOVdidTryCount.js, line 6

Inherited from: adventurejs.Asset#DOVdidTryCount

Parameters:

  • verb String
DOVdidTryCount is a method to get a count of times it was tried to use this asset as a direct object by the specified verb.

_tryCount is an alias meant for authors.

Returns:

Boolean
DOVgetConnectionCount(verb) → {Int}

Defined in: adventure/asset/DOVgetConnectionCount.js, line 6

Inherited from: adventurejs.Asset#DOVgetConnectionCount

Parameters:

  • verb String
    The name of a verb.
Return this.dov[verb].with_params.connections.length

Returns:

Int
DOVgetConnections(verb) → {Array}

Defined in: adventure/asset/DOVgetConnections.js, line 6

Inherited from: adventurejs.Asset#DOVgetConnections

Parameters:

  • verb String
    The name of a verb.
Return this.dov[verb].with_params.connections

Returns:

Array
DOVgetMaxConnections(verb) → {Int}

Defined in: adventure/asset/DOVgetMaxConnections.js, line 6

Inherited from: adventurejs.Asset#DOVgetMaxConnections

Parameters:

  • verb String
    The name of a verb.
Return this.dov[verb].with_params.max_connections

Returns:

Int
DOVhasIndirectObjects(verb) → {Boolean}

Defined in: adventure/asset/DOVhasIndirectObjects.js, line 6

Inherited from: adventurejs.Asset#DOVhasIndirectObjects

Parameters:

  • verb String
DOVhasIndirectObjects is a method to check whether this asset has any particular indirect objects specified by the author for use with the specified verb.

Returns:

Boolean
DOVhasMaxConnections(verb) → {Boolean}

Defined in: adventure/asset/DOVhasMaxConnections.js, line 6

Inherited from: adventurejs.Asset#DOVhasMaxConnections

Parameters:

  • verb String
    The name of a verb.
Get whether the DOV has maximum connections.

Returns:

Boolean
DOVincrementDoCount(verb)

Defined in: adventure/asset/DOVincrementDoCount.js, line 6

Inherited from: adventurejs.Asset#DOVincrementDoCount

Parameters:

  • verb String
DOVincrementDoCount is a method to increment the number of times the specified verb has acted on this asset as a direct object.
DOVincrementTryCount(verb)

Defined in: adventure/asset/DOVincrementTryCount.js, line 6

Inherited from: adventurejs.Asset#DOVincrementTryCount

Parameters:

  • verb String
DOVincrementTryCount is a method to increment the number of times the specified verb has been tried on this asset as a direct object.
DOVisConnectedToAnything(verb) → {Boolean}

Defined in: adventure/asset/DOVisConnectedToAnything.js, line 6

Inherited from: adventurejs.Asset#DOVisConnectedToAnything

Parameters:

  • verb String
    The name of a verb.
Check whether this asset is currently connected to anything directly by a verb such as plugIn or tie. For example, if this asset is a computer plugged into an outlet, this method would return true.

Returns:

Boolean
DOVisConnectedToAsset(verb, asset) → {Boolean}

Defined in: adventure/asset/DOVisConnectedToAsset.js, line 6

Inherited from: adventurejs.Asset#DOVisConnectedToAsset

Parameters:

  • verb String
    The name of the verb to test.
  • asset Object | String
    A game asset or asset id to test.
Check whether this asset is currently connected as a direct object to the specified indirect object by the specified verb. For example, in the case of a computer plugged into an outlet, the computer would be the direct object, and calling this method on it would return true.

Returns:

Boolean
DOVisConnectedToNothing(verb) → {Boolean}

Defined in: adventure/asset/DOVisConnectedToNothing.js, line 6

Inherited from: adventurejs.Asset#DOVisConnectedToNothing

Parameters:

  • verb String
    The name of a verb.
Check whether this asset is currently connected as an indirect object to nothing by the specified verb. For example, in the case of a computer that can be plugged in, an author might prefer not to create a specific outlet into which to plug the computer. For that case we allow 'plug in computer', and store a null value to asset.dov.plugIn.with_params.connections to represent the computer's plugged in state.

Returns:

Boolean
DOVsetConnection(verb, asset)

Defined in: adventure/asset/DOVsetConnection.js, line 6

Inherited from: adventurejs.Asset#DOVsetConnection

Parameters:

  • verb String
  • asset Object
Set asset's direct verb param connection to specified indirect object.
DOVsetWithAsset(verb, asset) → {Boolean}

Defined in: adventure/asset/DOVsetWithAsset.js, line 6

Inherited from: adventurejs.Asset#DOVsetWithAsset

Parameters:

  • verb String
  • asset Object
DOVsetWithAsset is used to specify another asset that can be used as an indirect object with this asset as direct object. For example, if this asset is a locking chest, chest.DOVsetWithAsset('unlock', 'gold key') would add the gold key as an indirect object of the chest.

Returns:

Boolean
DOVsetWithClass(verb, clas) → {Boolean}

Defined in: adventure/asset/DOVsetWithClass.js, line 6

Inherited from: adventurejs.Asset#DOVsetWithClass

Parameters:

  • verb String
  • clas String
DOVsetWithClass is a method to add an indirect object class to asset.dov[verb].with_classes.

Returns:

Boolean
DOVunsetConnection(verb, asset)

Defined in: adventure/asset/DOVunsetConnection.js, line 6

Inherited from: adventurejs.Asset#DOVunsetConnection

Parameters:

  • verb String
  • asset Object
Unset asset's direct verb param connection to specified indirect object.
getDescription(description) → {String}

Defined in: adventure/asset/getDescription.js, line 6

Inherited from: adventurejs.Asset#getDescription

Parameters:

  • description String
Get a description, such as "look in book", where "in" has been defined as a key at asset.descriptions.in. "look" is always the default description.

Returns:

String
getIndirectDescription(indirect_aspect, indirect_asset, direct_aspect) → {String}

Defined in: adventure/asset/getIndirectDescription.js, line 6

Inherited from: adventurejs.Asset#getIndirectDescription

Parameters:

  • indirect_aspect String
  • indirect_asset Object
  • direct_aspect String
Get indirect description, such as "look at this through magnifying glass", where "through magnifying glass" is a key at asset.descriptions["through magnifying glass"].description "look" is always the default direct object description.

Returns:

String
getInheritance() → {Array}

Defined in: adventure/Atom.js, line 151

Inherited from: adventurejs.Atom#getInheritance

getInheritance is a utility method to get an asset's inheritance chain. Returns a list of class names from high to low.

Returns:

Array
has()

Defined in: adventure/asset/$has.js, line 7

Inherited from: adventurejs.Asset#has

has is an alias to asset.isIn() that reverses the direct and indirect objects, to test whether that asset is in this asset.
if( MyGame.$('crown').$has('jewel') ){ // do stuff }
hasAction(hook_name, asset1_name, asset2_name) → {Boolean}

Defined in: adventure/asset/hasAction.js, line 6

Inherited from: adventurejs.Asset#hasAction

Parameters:

  • hook_name string
  • asset1_name string
    We use asset.name here instead of asset.id to make life slightly easier for authors. Asset IDs are formed from asset names, but generally we don't expect authors to be aware of IDs. Hooks will only be defined by authors, so let them use asset.name as their identifier. We do however make an effort to see if an id has been passed instead of a name.
  • asset2_name string
Check if this asset has a general verb action or reaction for the specified event, or if the asset has an action for the specific asset.

Returns:

Boolean
hasClass(prop) → {Boolean}

Defined in: adventure/Atom.js, line 131

Inherited from: adventurejs.Atom#hasClass

Parameters:

  • prop String
    Name of the class to test for.
A method to test whether the Atom is an instance of a given class.

Returns:

Boolean
hasDescription(description) → {String|Boolean}

Defined in: adventure/asset/hasDescription.js, line 6

Inherited from: adventurejs.Asset#hasDescription

Parameters:

  • description String
See if asset has a description for an aspect, such as "look in book", where "in" has been defined as a key at asset.descriptions.in. "look" is always the default description.

Returns:

String | Boolean
hasIndirectDescription(indirect_aspect, indirect_asset, direct_aspect) → {String|Boolean}

Defined in: adventure/asset/hasIndirectDescription.js, line 6

Inherited from: adventurejs.Asset#hasIndirectDescription

Parameters:

  • indirect_aspect String
  • indirect_asset Object
  • direct_aspect String
Determine whether asset has an indirect description, such as "look at this through magnifying glass", where "through magnifying glass" becomes a key at asset.descriptions["through magnifying glass"]. "look" is always the default direct object description.

Returns:

String | Boolean
incrementDoVerbCount(verb, index)

Defined in: adventure/asset/incrementDoVerbCount.js, line 6

Inherited from: adventurejs.Asset#incrementDoVerbCount

Parameters:

  • verb String
  • index Int
incrementDoVerbCount takes a verb and an index and updates this asset's count of the number of times the verb has acted upon it.
incrementTryVerbCount(verb, index)

Defined in: adventure/asset/incrementTryVerbCount.js, line 6

Inherited from: adventurejs.Asset#incrementTryVerbCount

Parameters:

  • verb String
  • index Int
incrementTryVerbCount takes a verb and an index and updates this asset's count of the number of times the verb has attempted upon it.
initialize()

Defined in: adventure/Asset.js, line 498

Inherited from: adventurejs.Asset#initialize

initialize() is the final step of creating a new game world asset, following construction and validation. The chief job of initialization is to add all of this asset's words to MyGame.world_lookup.

Because we're not doing natural language processing and everything is indexed, we want to increase the chances that the parser understands player input that is partial or has words jumbled. We add a lookup entry for every combination of an object's adjectives with its noun(s). For example we have a "green colored pencil", and we want the parser to understand "green pencil" or "colored pencil". If there are other colored pencils, we want the parser to understand "colored pencils". If there are colored pencils in three shades of green, we want the parser to understand "green pencils". We store all of these combinations to the lookup.
IOVallowOnce(verb) → {Boolean}

Defined in: adventure/asset/IOVallowOnce.js, line 6

Inherited from: adventurejs.Asset#IOVallowOnce

Parameters:

  • verb String
IOVallowOnce is a method to check whether this asset is subscribed to allow the specified verb to act on it as an indirect object only once.

Returns:

Boolean
IOVallowWithAnything(verb) → {Boolean}

Defined in: adventure/asset/IOVallowWithAnything.js, line 6

Inherited from: adventurejs.Asset#IOVallowWithAnything

Parameters:

  • verb String
IOVallowWithAnything is a method to check whether this asset is subscribed to act as an indirect object with the specified verb and any direct object.

Returns:

Boolean
IOVallowWithAsset(verb, asset) → {Boolean}

Defined in: adventure/asset/IOVallowWithAsset.js, line 6

Inherited from: adventurejs.Asset#IOVallowWithAsset

Parameters:

  • verb String
  • asset Object
IOVallowWithAsset is a method to check whether this asset is subscribed to act as an indirect object with the specified verb and direct object.

Returns:

Boolean
IOVallowWithNothing(verb) → {Boolean}

Defined in: adventure/asset/IOVallowWithNothing.js, line 6

Inherited from: adventurejs.Asset#IOVallowWithNothing

Parameters:

  • verb String
IOVallowWithNothing is a method to check whether this asset is subscribed to act as an indirect object with the specified verb without any direct object. Unlikely to happen but provided for completionism.

Returns:

Boolean
IOVdidDo(verb) → {Boolean}

Defined in: adventure/asset/IOVdidDo.js, line 6

Inherited from: adventurejs.Asset#IOVdidDo

Parameters:

  • verb String
IOVdidDo is a method to check whether this asset was already used as an indirect objecb by the specified verb.

_iDidDo is an alias meant for authors.

Returns:

Boolean
IOVdidDoCount(verb) → {Int}

Defined in: adventure/asset/IOVdidDoCount.js, line 6

Inherited from: adventurejs.Asset#IOVdidDoCount

Parameters:

  • verb String
IOVdidDoCount is a method to get a count of times this asset was used as an indirect object by the specified verb.

_iDoCount is an alias meant for authors.

Returns:

Int
IOVdidTry(verb) → {Boolean}

Defined in: adventure/asset/IOVdidTry.js, line 6

Inherited from: adventurejs.Asset#IOVdidTry

Parameters:

  • verb String
IOVdidTry is a method to check whether it was attempted to use this asset as an indirect object by the specified verb.

_iDidTry is an alias meant for authors.

Returns:

Boolean
IOVdidTryCount(verb) → {Boolean}

Defined in: adventure/asset/IOVdidTryCount.js, line 6

Inherited from: adventurejs.Asset#IOVdidTryCount

Parameters:

  • verb String
IOVdidTryCount is a method to get a count of times it was attempted to use this asset as an indirect object by the specified verb.

_iTryCount is an alias meant for authors.

Returns:

Boolean
IOVgetConnectionCount(verb) → {Int}

Defined in: adventure/asset/IOVgetConnectionCount.js, line 6

Inherited from: adventurejs.Asset#IOVgetConnectionCount

Parameters:

  • verb String
    The name of a verb.
Return this.iov[verb].with_params.connections.length

Returns:

Int
IOVgetConnections(verb) → {Array}

Defined in: adventure/asset/IOVgetConnections.js, line 6

Inherited from: adventurejs.Asset#IOVgetConnections

Parameters:

  • verb String
    The name of a verb.
Return this.iov[verb].with_params.connections

Returns:

Array
IOVgetMaxConnections(verb) → {Int}

Defined in: adventure/asset/IOVgetMaxConnections.js, line 6

Inherited from: adventurejs.Asset#IOVgetMaxConnections

Parameters:

  • verb String
    The name of a verb.
Return this.iov[verb].with_params.max_connections

Returns:

Int
IOVhasDirectObjects(verb) → {Boolean}

Defined in: adventure/asset/IOVhasDirectObjects.js, line 6

Inherited from: adventurejs.Asset#IOVhasDirectObjects

Parameters:

  • verb String
IOVhasDirectObjects is a method to check whether this asset has any particular direct objects specified by the author for use with the specified verb.

Returns:

Boolean
IOVhasMaxConnections(verb) → {Boolean}

Defined in: adventure/asset/IOVhasMaxConnections.js, line 6

Inherited from: adventurejs.Asset#IOVhasMaxConnections

Parameters:

  • verb String
    The name of a verb.
Get whether the IOV has maximum connections.

Returns:

Boolean
IOVincrementDoCount(verb)

Defined in: adventure/asset/IOVincrementDoCount.js, line 6

Inherited from: adventurejs.Asset#IOVincrementDoCount

Parameters:

  • verb String
IOVincrementDoCount is a method to increment the number of times the specified verb has acted on this asset as an indirect object.
IOVincrementTryCount(verb)

Defined in: adventure/asset/IOVincrementTryCount.js, line 6

Inherited from: adventurejs.Asset#IOVincrementTryCount

Parameters:

  • verb String
IOVincrementTryCount is a method to increment the number of times the specified verb has been tried on this asset as an indirect object.
IOVisConnectedToAnything(verb) → {Boolean}

Defined in: adventure/asset/IOVisConnectedToAnything.js, line 6

Inherited from: adventurejs.Asset#IOVisConnectedToAnything

Parameters:

  • verb String
    The name of a verb.
Check whether this asset is currently connected to anything indirectly by a verb such as plugIn or tie. For example, if this asset is an outlet with a computer plugged into it, this method would return true.

Returns:

Boolean
IOVisConnectedToAsset(verb, asset) → {Boolean}

Defined in: adventure/asset/IOVisConnectedToAsset.js, line 6

Inherited from: adventurejs.Asset#IOVisConnectedToAsset

Parameters:

  • verb String
    The name of the verb to test.
  • asset Object | String
    A game asset or asset id to test.
Check whether this asset is currently connected as an indirect object to the specified direct object by the specified verb. For example, in the case of a computer plugged into an outlet, the outlet would be the indirect object, and calling this method on it would return true.

Returns:

Boolean
IOVisConnectedToNothing(verb) → {Boolean}

Defined in: adventure/asset/IOVisConnectedToNothing.js, line 6

Inherited from: adventurejs.Asset#IOVisConnectedToNothing

Parameters:

  • verb String
    The name of a verb.
Check whether this asset is currently connected as an indirect object to nothing by the specified verb. (This seems like an unlikely situation as of this writing, but is offered for completion with DOVisConnectedToNothing which does have at least one use case.)

Returns:

Boolean
IOVsetConnection(verb, asset)

Defined in: adventure/asset/IOVsetConnection.js, line 6

Inherited from: adventurejs.Asset#IOVsetConnection

Parameters:

  • verb String
  • asset Object
Set asset's indirect verb param connection to specified direct object.
IOVsetWithAsset(verb, asset) → {Boolean}

Defined in: adventure/asset/IOVsetWithAsset.js, line 6

Inherited from: adventurejs.Asset#IOVsetWithAsset

Parameters:

  • verb String
  • asset Object
IOVsetWithAsset is used to specify another asset that can be used as a direct object with this asset as indirect object. For example, if this asset is a gold key, gold_key.IOVsetWithAsset('unlock', 'chest') would add the chest as a direct object of the gold key.

Returns:

Boolean
IOVsetWithClass(verb, clas) → {Boolean}

Defined in: adventure/asset/IOVsetWithClass.js, line 6

Inherited from: adventurejs.Asset#IOVsetWithClass

Parameters:

  • verb String
  • clas String
IOVsetWithClass is a method to add a direct object class to asset.iov[verb].with_classes.

Returns:

Boolean
IOVunsetConnection(verb, asset)

Defined in: adventure/asset/IOVunsetConnection.js, line 6

Inherited from: adventurejs.Asset#IOVunsetConnection

Parameters:

  • verb String
  • asset Object
Unset asset's indirect verb param connection to specified direct object.
isDOV(verb) → {Boolean}

Defined in: adventure/asset/isDOV.js, line 6

Inherited from: adventurejs.Asset#isDOV

Parameters:

  • verb String
isDOV is a method to check whether this asset is subscribed to allow the specified verb to act on it as a direct object.

Returns:

Boolean
isIOV(verb) → {Boolean}

Defined in: adventure/asset/isIOV.js, line 6

Inherited from: adventurejs.Asset#isIOV

Parameters:

  • verb String
isIOV is a method to check whether this asset is subscribed to allow the specified verb to act on it as an indirect object.

Returns:

Boolean
isState(verb) → {Boolean}

Defined in: adventure/asset/isState.js, line 6

Inherited from: adventurejs.Asset#isState

Parameters:

  • verb String
isState is a method to check whether this asset already has state set by the specified verb.

Returns:

Boolean
redirectVerb(oldVerb, newVerb)

Defined in: adventure/asset/redirectVerb.js, line 7

Inherited from: adventurejs.Asset#redirectVerb

Parameters:

  • oldVerb String
  • newVerb String
redirectVerb is a method for setting a verb redirect on this asset, such that when one verb is called on the asset, another verb will be called instead. Example: player enters "hit person", it is redirected to "slap person".
set(props) → {Object}

Defined in: adventure/Atom.js, line 119

Inherited from: adventurejs.Atom#set

Parameters:

  • props Object
    A generic object containing properties to copy to the Object instance.
Provides a chainable shortcut method for setting a number of properties on the instance.

Returns:

Object Returns the instance the method is called on (useful for chaining calls.)
setDOV(verb, params)

Defined in: adventure/asset/setDOV.js, line 7

Inherited from: adventurejs.Asset#setDOV

Parameters:

  • verb String
  • params Object
setDOV is a passthrough to setVerbSubscription with direct object specified.
setDOVs(verb, params)

Defined in: adventure/asset/setDOVs.js, line 7

Inherited from: adventurejs.Asset#setDOVs

Parameters:

  • verb String
  • params Object
setDOVs is a passthrough to send multiple verbs to setVerbSubscription with direct object specified.
setIOV(verb, params)

Defined in: adventure/asset/setIOV.js, line 7

Inherited from: adventurejs.Asset#setIOV

Parameters:

  • verb String
  • params Object
setIOV is a passthrough to setVerbSubscription with indirect object specified.
setIOVs(verb, params)

Defined in: adventure/asset/setIOVs.js, line 7

Inherited from: adventurejs.Asset#setIOVs

Parameters:

  • verb String
  • params Object
setIOVs is a passthrough to send multiple verbs to setVerbSubscription with indirect object specified.
setKnown(bool)

Defined in: adventure/asset/setKnown.js, line 7

Inherited from: adventurejs.Asset#setKnown

Parameters:

  • bool Boolean
setKnown sets an object known.
setLinkedState(bool)

Defined in: adventure/asset/setLinkedState.js, line 7

Inherited from: adventurejs.Asset#setLinkedState

Parameters:

  • bool Boolean
setLinkedState sets an asset and its linked asset to the specified state.
setObjectOfVerbs(object_of, verb)

Defined in: adventure/asset/setObjectOfVerbs.js, line 7

Inherited from: adventurejs.Asset#setObjectOfVerbs

Parameters:

  • object_of String
  • verb String
setObjectOfVerbs is a convenience method that passes a list of verb names through to setVerbSubscription.
setState(verb, bool)

Defined in: adventure/asset/setState.js, line 6

Inherited from: adventurejs.Asset#setState

Parameters:

  • verb String
  • bool Boolean
Apply the specified state change to the asset.
setVerbSubscription(object_of, verb, params)

Defined in: adventure/asset/setVerbSubscription.js, line 6

Inherited from: adventurejs.Asset#setVerbSubscription

Todos: phase out earlier version

Parameters:

  • object_of String
  • verb String | Object
    An early version takes a string, with separate params object. A later version takes an object that includes the verb name as an object key and params as value.
  • params Object
    An optional param that works with the earlier version.
setVerbSubscription constructs verb subscriptions at asset.dov / asset.iov. It's intended mostly as a private function, though it is available to authors. An early version takes a string with separate params object. A later version takes an object that includes the verb name as an object key and params as value. // valid (for now) early version this.setIOV('hold',{with_params:{max_connections:2}}); // valid later version with one verb this.setIOV( { hold: { with_params: { max_connections:2 } } } ); // valid later version with multiple verbs this.setIOVs([ { hold: { with_params: { max_connections:3 } } }, { smell: true }, ]);
setVerbSubscriptionsWithAssets(description) → {String}

Defined in: adventure/asset/setVerbSubscriptionsWithAssets.js, line 6

Inherited from: adventurejs.Asset#setVerbSubscriptionsWithAssets

Parameters:

  • description String
Link assets that connect via verb subscriptions. For example, imagine "hit target with sword", where we have target.dov.hit.with_assets:["sword"] This pass will set sword.iov.hit.with_assets:["target"] to ensure that both assets are in sync and either can be queried.

Returns:

String
setVerbSubscriptionsWithConnection()

Defined in: adventure/asset/setVerbSubscriptionsWithConnection.js, line 6

Inherited from: adventurejs.Asset#setVerbSubscriptionsWithConnection

Make any connections specified in the game file. Assets can subscribe to verbs with dov[verb] and some verbs make connections between assets that they act upon, which are recorded in dov[verb].with_params.connections. Authors can preset connections in their game file, and in case they only set one of two connected assets, we want to ensure that both assets are marked as connected, so we check that here.
toggleState(verb) → {Boolean}

Defined in: adventure/asset/toggleState.js, line 6

Inherited from: adventurejs.Asset#toggleState

Parameters:

  • verb String
Apply the specified verb's state change to the asset.

Returns:

Boolean
undestroy()

Defined in: adventure/asset/undestroy.js, line 7

Inherited from: adventurejs.Asset#undestroy

undestroy is called to return a destroyed asset to the game world.
unredirectVerb(oldVerb)

Defined in: adventure/asset/unredirectVerb.js, line 7

Inherited from: adventurejs.Asset#unredirectVerb

Parameters:

  • oldVerb String
unredirectVerb is a method for removing previously set verb redirects.
unsetDOV(verb)

Defined in: adventure/asset/unsetDOV.js, line 7

Inherited from: adventurejs.Asset#unsetDOV

Parameters:

  • verb String
unsetDOV is a passthrough to unsetVerbSubscription.
unsetDOVs(verbs)

Defined in: adventure/asset/unsetDOVs.js, line 7

Inherited from: adventurejs.Asset#unsetDOVs

Parameters:

  • verbs Array
unsetDOVs is a passthrough to unsetVerbSubscription.
unsetIOV(verb)

Defined in: adventure/asset/unsetIOV.js, line 7

Inherited from: adventurejs.Asset#unsetIOV

Parameters:

  • verb String
unsetIOV is a passthrough to unsetVerbSubscription.
unsetIOVs(verbs)

Defined in: adventure/asset/unsetIOVs.js, line 7

Inherited from: adventurejs.Asset#unsetIOVs

Parameters:

  • verbs Array
unsetIOVs is a passthrough to unsetVerbSubscription.
unsetVerbSubscription(object_of, verb)

Defined in: adventure/asset/unsetVerbSubscription.js, line 6

Inherited from: adventurejs.Asset#unsetVerbSubscription

Parameters:

  • object_of String
  • verb String
unsetVerbSubscription disables the use of the specified verb with this asset, if it has been previously set.
validate()

Defined in: adventure/Asset.js, line 475

Inherited from: adventurejs.Asset#validate

validate() provides an opportunity to check author-made Assets for errors before initializing them.

Properties  | 

adjectives :Getter/Setter

Defined in: adventure/Asset.js, line 295

Inherited from: adventurejs.Asset#adjectives

A list of adjectives defined for this asset in the game file. Some asset classes may have predefined adjectives. If a class has predefined adjectives, and an author creates an instance of the class with custom adjectives, the custom adjectives will be appended to the predefined ones.
article_name :Getter

Defined in: adventure/Asset.js, line 388

Inherited from: adventurejs.Asset#article_name

Getter function returns asset name preceded either by definite article or indefinite article, depending on what's set for the asset's use_definite_article_in_lists property.
articlename :Getter

Defined in: adventure/Asset.js, line 402

Inherited from: adventurejs.Asset#articlename

Getter function returns asset name or proper name, depending on settings.
Articlename :Getter

Defined in: adventure/Asset.js, line 422

Inherited from: adventurejs.Asset#Articlename

Returns this.articlename with propercase.
can :Object

Defined in: adventure/Asset.js, line 51

Inherited from: adventurejs.Asset#can

can is a generalized container for asset boolean properties.
collection :Getter/Setter

Defined in: adventure/Asset.js, line 169

Inherited from: adventurejs.Asset#collection

Collection is a special property that lets one object stand in for a group of objects. For example, object desk has three drawers: top_drawer, middle_drawer, bottom_drawer. desk_drawers is a scenery object attached to desk which intercepts player input like "examine drawers", so that author can return a response like "You see three drawers."
definite_article :String

Defined in: adventure/Asset.js, line 200

Inherited from: adventurejs.Asset#definite_article

Default value: 'the'

The asset's preferred definite article. Can be overridden in game file.
definite_name :Getter

Defined in: adventure/Asset.js, line 360

Inherited from: adventurejs.Asset#definite_name

Getter function returns asset name preceded by its definite article, example: 'the asset'.
description :*

Defined in: adventure/Asset.js, line 441

Inherited from: adventurejs.Asset#description

An alias to descriptions.look.
descriptions :Object

Defined in: adventure/Asset.js, line 145

Inherited from: adventurejs.Asset#descriptions

A list of descriptions for a variety of contexts. Only description is required, all others are optional. Most of these apply only to Tangible Asset.
  • descriptions.description -
  • descriptions.brief - used for room descriptions if player has typed "brief"
  • descriptions.verbose - used for room descriptions if player has typed "verbose"
  • descriptions.listen - used if player types "listen" or "listen to thing"
  • descriptions.in - used if player types "look in thing"
  • descriptions.through - used if player types "look through thing"
  • descriptions.smell - used if player types "smell thing"
  • descriptions.taste - used if player types "taste thing"
  • descriptions.touch - used if player types "touch thing"
  • descriptions.careful - used if player types "carefully examine thing"
did_do_verb :Object

Defined in: adventure/Asset.js, line 305

Inherited from: adventurejs.Asset#did_do_verb

did_do_verb is used to track which verbs have acted upon this object. This is a backup of the verb counter used in verb subscriptions.
did_do_verb_count :Object

Defined in: adventure/Asset.js, line 314

Inherited from: adventurejs.Asset#did_do_verb_count

did_do_verb_count is used to track the number of times that given verbs have acted upon this object. This is a backup of the verb counter used in verb subscriptions.
did_try_verb :Object

Defined in: adventure/Asset.js, line 324

Inherited from: adventurejs.Asset#did_try_verb

did_try_verb is used to track which verbs have been tried upon this object. This is a backup of the verb counter used in verb subscriptions.
did_try_verb_count :Object

Defined in: adventure/Asset.js, line 333

Inherited from: adventurejs.Asset#did_try_verb_count

did_try_verb_count is used to track the number of times that given verbs have been tried upon this object. This is a backup of the verb counter used in verb subscriptions.
dont_use_articles :Boolean

Defined in: adventure/Asset.js, line 227

Inherited from: adventurejs.Asset#dont_use_articles

Default value: false

An option to prevent definite/indefinite articles from appearing before an asset name. Used chiefly for characters, to prevent phrases such as "the Mrs. Beasley". Can be overridden in game file.
dov :Boolean

Defined in: adventure/Asset.js, line 73

Inherited from: adventurejs.Asset#dov

Default value: {}

dov is a container for direct object verb subscriptions.
exclude_from_lookup :Boolean

Defined in: adventure/Asset.js, line 119

Inherited from: adventurejs.Asset#exclude_from_lookup

Default value: false

Almost all assets will be listed in the world_lookup table that is used to find assets from player input , with some exceptions, such as SceneryZones.
game :Getter

Defined in: adventure/Atom.js, line 110

Inherited from: adventurejs.Atom#game

Returns the top level game object. Use this.game.
image :String

Defined in: adventure/Asset.js, line 343

Inherited from: adventurejs.Asset#image

image is used to store the id of an image in game.image_lookup that is associated with this asset.
indefinite_article :String

Defined in: adventure/Asset.js, line 208

Inherited from: adventurejs.Asset#indefinite_article

Default value: 'a'

The asset's preferred indefinite article. Can be overridden in game file.
indefinite_name :Getter

Defined in: adventure/Asset.js, line 374

Inherited from: adventurejs.Asset#indefinite_name

Getter function returns asset name preceded by its indefinite article, example: 'an asset'.
iov :Boolean

Defined in: adventure/Asset.js, line 83

Inherited from: adventurejs.Asset#iov

Default value: {}

iov is a container for direct object verb subscriptions.
is :Object

Defined in: adventure/Asset.js, line 38

Inherited from: adventurejs.Asset#is

is is a generalized container for asset states. Many states are / can be stored here. A chief benefit of this is being able to get specific states by testing asset.is.state. Note that there is also an asset.$is() method which is related to this, but is a distinct function.
is.abstract :Boolean

Defined in: adventure/asset/Asset_Is.js, line 91

Inherited from: adventurejs.Asset#is.abstract

Default value: false

Nested property of Is

Abstractions are universally available and bypass reachability tests.
is.collection :Boolean

Defined in: adventure/asset/Asset_Is.js, line 51

Inherited from: adventurejs.Asset#is.collection

Default value: true

Nested property of Is

Set whether object is a collection of other object IDs.
is.destroyed :Boolean

Defined in: adventure/asset/Asset_Is.js, line 36

Inherited from: adventurejs.Asset#is.destroyed

Default value: false

Nested property of Is

Set to true when an object is removed from the game by destruction.
is.extant :Boolean

Defined in: adventure/asset/Asset_Is.js, line 44

Inherited from: adventurejs.Asset#is.extant

Default value: true

Nested property of Is

Set to true when an object is in the game.
is.global :Boolean

Defined in: adventure/asset/Asset_Is.js, line 82

Inherited from: adventurejs.Asset#is.global

Default value: false

Nested property of Is

Almost all tangible assets have a singular location. Global assets are available in all locations in order to catch player input.
is.initialized :Boolean

Defined in: adventure/asset/Asset_Is.js, line 65

Inherited from: adventurejs.Asset#is.initialized

Default value: false

Nested property of Is

Used at runtime to keep track of asset's initialization state.
is.known :Boolean

Defined in: adventure/asset/Asset_Is.js, line 27

Inherited from: adventurejs.Asset#is.known

Default value: false

Nested property of Is

Todos: In games with multiple characters, any character the player takes will share this knowledge. May want an option to set this per player character.

Used to track whether player knows about an asset.
is.liquid :Boolean

Defined in: adventure/assets/Substance_Is.js, line 28

Overrides from: adventurejs.Substance#is.liquid

Default value: false

Nested property of Is

Set whether this asset is liquid.
is.nameless :Boolean

Defined in: adventure/asset/Asset_Is.js, line 72

Inherited from: adventurejs.Asset#is.nameless

Default value: false

Nested property of Is

Almost all assets are given a name which is then used to create their id, with some exceptions. For example, exit ids are generated by taking the name of the exit's room + the exit's direction.
is.plugged :Boolean

Defined in: adventure/assets/Tangible_Is.js, line 29

Inherited from: adventurejs.Asset#is.plugged

Default value: false

Nested property of Is

Set whether this asset is plugged, like a drain.
is.pluggedIn :Boolean

Defined in: adventure/assets/Tangible_Is.js, line 36

Inherited from: adventurejs.Asset#is.pluggedIn

Default value: false

Nested property of Is

Set whether this asset is plugged in, like an appliance.
is.singleton :Boolean

Defined in: adventure/asset/Asset_Is.js, line 98

Inherited from: adventurejs.Asset#is.singleton

Default value: false

Nested property of Is

Todos: Have only applied this to several special global assets, and have not implemented any code around it. Is it still useful?

Meant for use to distinguish some assets as being singular in the game world.
is.validated :Boolean

Defined in: adventure/asset/Asset_Is.js, line 58

Inherited from: adventurejs.Asset#is.validated

Default value: false

Nested property of Is

Used at runtime to keep track of asset's validation state.
must :Object

Defined in: adventure/Asset.js, line 60

Inherited from: adventurejs.Asset#must

must is a generalized container for asset boolean properties.
Name :String

Defined in: adventure/Atom.js, line 97

Inherited from: adventurejs.Atom#Name

Name returns the name of the class instance with the first character uppercased.
name_is_proper :Boolean

Defined in: adventure/Asset.js, line 184

Inherited from: adventurejs.Asset#name_is_proper

Default value: false

Used to determine whether to display a name or proper name.
noun :String

Defined in: adventure/Asset.js, line 237

Inherited from: adventurejs.Asset#noun

noun is a string representing the type of asset this is, for example 'mug' or 'rock'. Players can input this word to refer to any asset of its type.
plural :String

Defined in: adventure/Asset.js, line 266

Inherited from: adventurejs.Asset#plural

plural is a string representing multiple assets of this type, for example 'swords'. Players can input this word to refer to groups of assets.
print_bold :Boolean

Defined in: adventure/Asset.js, line 105

Inherited from: adventurejs.Asset#print_bold

Default value: false

Set to true to have an object's name be printed bold.
print_italic :Boolean

Defined in: adventure/Asset.js, line 112

Inherited from: adventurejs.Asset#print_italic

Default value: false

Set to true to have an object's name be printed italic.
pronoun :String

Defined in: adventure/Asset.js, line 246

Inherited from: adventurejs.Asset#pronoun

pronoun is a string representing the generic pronoun.
propername :String

Defined in: adventure/Asset.js, line 191

Inherited from: adventurejs.Asset#propername

The asset's proper name, as provided in the game file. Assets can have both a name and a proper name. Used chiefly for characters, so that, for example, an asset can be both 'cat' and 'Mister Whiskers'.
quirks :Object

Defined in: adventure/Asset.js, line 94

Inherited from: adventurejs.Asset#quirks

quirks is a container for setting how to handle ambiguous verbs based on context. For example, if player inputs "stand" while sitting in a chair with quirks.stand_means_get_off set to true, player will get off the chair, as opposed to trying to stand in place on the chair.
singlePluralPairs :Array

Defined in: adventure/Asset.js, line 254

Inherited from: adventurejs.Asset#singlePluralPairs

singlePluralPairs is a collection of strings representing the singular and plural forms of this asset, for example ['mug', 'mugs']. Players can use the singular to refer to a single asset or the plural to refer to a group of assets. These are stored in pairs so we can check for correspondence between the forms.
split_name_for_world_lookup :Boolean

Defined in: adventure/Asset.js, line 128

Inherited from: adventurejs.Asset#split_name_for_world_lookup

Default value: true

Object names are split into individual words for the world_lookup table. For example, given an object named "crystal sword", adventurejs creates lookup table entries for "crystal" and "sword". This lets the game recognize either word as player input, such as "get crystal" or "swing sword".

But, an author might want to name a thing, eg, "hole in the ground", in which case we wind up with lookup table entries for "hole" and "in" and "the" and "ground", which is likely to lead to bad input parsing. To avoid name splitting, set split_name_for_world_lookup to false. The object's full name will still be added to the lookup.
use_definite_article_in_lists :Boolean

Defined in: adventure/Asset.js, line 216

Inherited from: adventurejs.Asset#use_definite_article_in_lists

Default value: false

A preference for how an asset's name appears when it is printed in certain contexts. Chiefly used for room names. For example, you might name a room 'Sitting Room', but want it to appear as 'the Sitting Room' in some contexts for narrative clarity. Can be overridden in game file.