API Documentation for: 0.11.8
Show:

platypus.Component Class

Defined in: platypus.Component:1
Module: platypus

This is the extendable Component class. Typically specific component classes should be created using platypus.createComponentClass(). This method accepts component definitions and creates component classes that can be used to create components by entities. It adds properties and methods that are common to all components so that component definitions can focus on unique properties and methods.

To create an extended component class, use the following syntax:

 platypus.createComponentClass(componentDefinition, prototype);
                        
  • componentDefinition is list of key/value pairs that describe the component's behavior.
  • prototype is an optional prototype that this component extends. See component-template.js for an example componentDefinition that can be sent into this component class factory.

Methods

addEventListener

(
  • event
  • callback
)
Function private

This method adds an event listener to the entity.

Parameters:

  • event String

    The event that this component should listen for.

  • callback Function

    The handler for the event.

Returns:

Function:

handler A reference to the bound handler.

addMethod

(
  • name
  • func
)
private

Defined in addMethod:131

This method adds a method to the entity.

Parameters:

  • name String

    The name of the method. For example, if name is "turnYellow", the method is accessible on the entity as entity.turnYellow().

  • func Function

    The function describing the method.

destroy

() private

Defined in destroy:54

This method cleans up listeners and methods that this component added to the entity. It should never be called by the component itself. Call this.owner.removeComponent(this) instead.

getAssetList

(
  • definition
  • properties
  • defaultProperties
)
Array

Defined in getAssetList:188

This method can be overwritten to provide the list of assets this component requires. This method is invoked when the list of game scenes is created to determine assets for each scene.

Parameters:

  • definition Object

    The definition for the component.

  • properties Object

    The properties of the Entity.

  • defaultProperties Object

    The default properties of the Entity.

Returns:

Array:

A list of the necessary assets to load.

getLateAssetList

(
  • data
)
Array

This method can be overwritten to provide the list of assets this component requires. This method is invoked when the list of game scenes is created to determine assets for each scene.

Parameters:

  • data Object

    Scene data that affects the list of assets.

Returns:

Array:

A list of the necessary assets to load.

removeEventListener

(
  • event
  • callback
)
private

This method removes an event listener from the entity.

Parameters:

  • event String

    The event for which to remove a listener.

  • callback Function

    The listener to remove. If not supplied, all event listeners for the provided event are removed.

removeEventListeners

(
  • [listeners]
)
private

This method removes multiple event listeners from the entity.

Parameters:

  • [listeners] Array optional

    The list of listeners to remove. If not supplied, all event listeners are removed.

removeMethod

(
  • name
)
private

Defined in removeMethod:172

This method removes a method from the entity.

Parameters:

  • name String

    The name of the method to be removed.

toJSON

() Object

Defined in toJSON:45

Available since 0.11.0

Returns a JSON object describing the component.

Returns:

Object:

Returns a JSON definition that can be used to recreate the component.

toString

() String

Defined in toString:35

Returns a string describing the component.

Returns:

String:

Returns the component type as a string of the form "[Component ComponentType]".