Pre-release
AdventureJS Docs Downloads
Score: 0 Moves: 0

Extends: adventurejs.Atom

Defined in: adventure/StateManager.js, line 5

Description

StateManager is a special class used for storing general state variables. For example, tangible.is is used to store states such as tangible.is.closed, tangible.is.locked, tangible.is.global, etc. This is done chiefly for organizational purposes. With hundreds of properties per asset, it seemed cleaner to group similar types of properties into clusters and access them through dot notation, rather than leave hundreds of properties floating around the top level of each object. The reason to make it a classed object rather than a generic object (as we do for some collections) is so we can add prototype methods and properties that have access to scope of this (meaning the context asset) and game (the top level game object).

State containers and their values are passed down the inheritance chain. For example: Tangible inherits from Asset, and asset.is.global is available on tangible.is.global. It's also possible to override inherited nested properties. For example: Exit inherits tangible.is.closed and tangible.is.locked, but overrides them with new definitions in order to account for Exit's relationship to the linked class Aperture.

Private Constructor:

var foo = new adventurejs.StateManager(game_name, name, context_id)

Parameters:

  • game_name String
    Name of top level game instance that is scoped to window.
  • name String
    Instance name.
  • context_id String
    The ID of the containing asset instance.
Inherited Overrides

Index

Methods:

Properties:

Methods Collapse all  |  Expand all

getClassInheritance
getClassInheritance() → {Array}

Defined in: adventure/Atom.js, line 171

Inherited from: adventurejs.Atom#getClassInheritance

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

Returns:

Array
hasClass
hasClass(prop) → {Boolean}

Defined in: adventure/Atom.js, line 151

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
set
set(props) → {Object}

Defined in: adventure/Atom.js, line 139

Overrides 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.)

Properties  | 

game
game :Getter

Defined in: adventure/Atom.js, line 118

Inherited from: adventurejs.Atom#game

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

Defined in: adventure/Atom.js, line 62

Overrides from: adventurejs.Atom#Name

Class identifier to be provided in the asset definition. All game objects start as generic objects that get passed to createAsset, which uses an object's class field to specify a class constructor.