A Sprite contains references to one or more frames of a TextureAtlas. It can be used by the SpriteComponent or the ElementComponent to render a single frame or a sprite animation.
new Sprite(device: GraphicsDevice, options?: {
atlas: TextureAtlas;
frameKeys: string[];
pixelsPerUnit: number;
renderMode: number;
}): Sprite
Create a new Sprite instance.
GraphicsDevice
The graphics device of the application.
Options for creating the Sprite.
The texture atlas. Defaults to null.
string
The keys of the frames in the sprite atlas that this sprite is using. Defaults to null.
number
The number of pixels that map to one Mirror Engine unit. Defaults to 1.
number
The rendering mode of the sprite. Can be:
Defaults to SPRITE_RENDERMODE_SIMPLE.
EventHandler.constructor
get atlas(): TextureAtlas
Gets the texture atlas.
set atlas(value: TextureAtlas): void
Sets the texture atlas.
void
get frameKeys(): string[]
Gets the keys of the frames in the sprite atlas that this sprite is using.
string
set frameKeys(value: string[]): void
Sets the keys of the frames in the sprite atlas that this sprite is using.
string
void
get meshes(): Mesh[]
An array that contains a mesh for each frame.
get pixelsPerUnit(): number
Gets the number of pixels that map to one Mirror Engine unit.
number
set pixelsPerUnit(value: number): void
Sets the number of pixels that map to one Mirror Engine unit.
number
void
get renderMode(): number
Sets the rendering mode of the sprite.
number
set renderMode(value: number): void
Sets the rendering mode of the sprite. Can be:
number
void
destroy(): void
Free up the meshes created by the sprite.
void
fire(
name: string,
arg1?: any,
arg2?: any,
arg3?: any,
arg4?: any,
arg5?: any,
arg6?: any,
arg7?: any,
arg8?: any): EventHandler
Fire an event, all additional arguments are passed on to the event listener.
string
Name of event to fire.
any
First argument that is passed to the event handler.
any
Second argument that is passed to the event handler.
any
Third argument that is passed to the event handler.
any
Fourth argument that is passed to the event handler.
any
Fifth argument that is passed to the event handler.
any
Sixth argument that is passed to the event handler.
any
Seventh argument that is passed to the event handler.
any
Eighth argument that is passed to the event handler.
Self for chaining.
obj.fire('test', 'This is the message')
hasEvent(name: string): boolean
Test if there are any handlers bound to an event name.
string
The name of the event to test.
boolean
True if the object has handlers bound to the specified event name.
obj.on('test', () => {}) // bind an event to 'test'
obj.hasEvent('test') // returns true
obj.hasEvent('hello') // returns false
off(
name?: string,
callback?: HandleEventCallback,
scope?: any): EventHandler
Detach an event handler from an event. If callback is not provided then all callbacks are unbound from the event, if scope is not provided then all events with the callback will be unbound.
string
Name of the event to unbind.
HandleEventCallback
Function to be unbound.
any
Scope that was used as the this when the event is fired.
Self for chaining.
const handler = () => {}
obj.on('test', handler)
obj.off() // Removes all events
obj.off('test') // Removes all events called 'test'
obj.off('test', handler) // Removes all handler functions, called 'test'
obj.off('test', handler, this) // Removes all handler functions, called 'test' with scope this
on(
name: string,
callback: HandleEventCallback,
scope?: any): EventHandle
Attach an event handler to an event.
string
Name of the event to bind the callback to.
HandleEventCallback
Function that is called when event is fired. Note the callback is limited to 8 arguments.
any = ...
Object to use as 'this' when the event is fired, defaults to current this.
Can be used for removing event in the future.
obj.on('test', (a, b) => {
console.log(a + b)
})
obj.fire('test', 1, 2) // prints 3 to the console
const evt = obj.on('test', (a, b) => {
console.log(a + b)
})
// some time later
evt.off()
once(
name: string,
callback: HandleEventCallback,
scope?: any): EventHandle
Attach an event handler to an event. This handler will be removed after being fired once.
string
Name of the event to bind the callback to.
HandleEventCallback
Function that is called when event is fired. Note the callback is limited to 8 arguments.
any = ...
Object to use as 'this' when the event is fired, defaults to current this.
obj.once('test', (a, b) => {
console.log(a + b)
})
obj.fire('test', 1, 2) // prints 3 to the console
obj.fire('test', 1, 2) // not going to get handled