Skip to content

Extending or customising JALSE

Elliot Ford edited this page Apr 16, 2015 · 15 revisions

Why extend or customise JALSE

JALSE was designed with modular abstraction in mind. Each of the core components can be used to some extent on their own but together create the dynamic Entity tree.

The most common use-case for customisation is the backing Entity and EntityFactory implementation.

Creating a custom AttributeContainer

The default AttributeContainer implementation is DefaultAttributeContainer. AttributeContainer provides a lot of default methods to make creating your own implementation easier. Attributes (see API docs) provides handy utility methods for both AttributeType and NamedAttributeType.

Creating a custom ActionEngine

The default ActionEngine implementations and creating a custom one is covered in Picking an ActionEngine implementation. Actions (see API docs) provides handy utility methods for a variety of Action related functionality.

Creating a custom EntityFactory

The default EntityFactory implementation is DefaultEntityFactory - this factory uses the common pool engine (see Picking an ActionEngine implementation) and creates DefaultEntity instances. The factory handles creating, transferring and killing entities so tree control starts here. Entities (see API docs) provides utility methods for Entity related functionality.

Creating a custom Entity

Creating a custom EntityContainer

Creating a custom Taggable

Using the custom implementations

Example custom implementations

Clone this wiki locally