arclib-sprite

1.0.3 • Public • Published

Sprite

a flexible base sprite for use in browser games.

Features

  • object-pool for free
  • attach arbitrary render methods to each sprite
  • sprite methods are chain-able

Usage

create one sprite

    // create one sprite
    const sprite = createSprite(opts, renderMethod);

create a pool of n sprites

    // create a pool of 10 sprites
    const spritePool = createSprites(opts, renderMethod, 10);

find an available sprite in a pool

    // find available sprites
    const availableSprite = findAvailable(spritePool);

take at most n sprites

    // take at most 5 available sprites
    const availableSprites = takeAvailable(spritePool, 5);

update

update sprite state

    sprite.update((state) => {
        // increment y position by 1
        return {
            position: [state.position[0], state.position[1] + 1]
        };
    })

then

update sprite state

    sprite
    .update(state => {
        // increment x position by 1
        return {
            position: [state.position[0] + 1, state.position[1]]
        };
    })
    .then(sprite => {
        // do something with sprite
    })

render

calls the sprite's render method

    sprite.render();

move

convenience method for moving (updating position)

    // move to (x + 1, y - 1)
    sprite2D.move(1, -1);
 
    // move to (x + 1, y - 1, z + 1)
    sprite3D.move(1, -1, 1);
 

Readme

Keywords

Package Sidebar

Install

npm i arclib-sprite

Weekly Downloads

4

Version

1.0.3

License

ISC

Unpacked Size

4.59 kB

Total Files

3

Last publish

Collaborators

  • rongruesbeck