1.14.0 • Published 15 days ago

@theatrejs/theatrejs v1.14.0

Weekly downloads
-
License
MIT
Repository
github
Last release
15 days ago

Copyright License Bundle Size (Gzipped) NPM Version

Theatre.js

🎮 A JavaScript 2D Game Engine focused on creating pixel art games.

Installation

npm install @theatrejs/theatrejs --save

Quick Start

⚠️ This example does not include the preloading of assets.

import {Actor, Engine, Sprite, Stage, Vector2} from '@theatrejs/theatrejs';

import textureHero from './hero-16x16.png';

class Hero extends Actor {
    onCreate() {
        this.setSprite(new Sprite({
            $sizeTarget: new Vector2(16, 16),
            $textureColor: textureHero
        }));
    }
}

class Level1 extends Stage {
    onCreate() {
        this.createActor(Hero);
    }
}

const engine = new Engine({$container: document.body});
engine.initiate();
engine.createStage(Level1);

With Preloading

⚠️ Assets are preloaded asynchronously.

asynchronous module

import {Engine, FACTORIES, Sprite, Vector2} from '@theatrejs/theatrejs';

import textureHero from './hero-16x16.png';

class Hero extends FACTORIES.ActorWithPreloadables([FACTORIES.PreloadableTexture(textureHero)]) {
    onCreate() {
        this.setSprite(new Sprite({
            $sizeTarget: new Vector2(16, 16),
            $textureColor: textureHero
        }));
    }
}

class Level1 extends FACTORIES.StageWithPreloadables([Hero]) {
    onCreate() {
        this.createActor(Hero);
    }
}

const engine = new Engine();
engine.initiate();

await engine.preloadStage(Level1);

engine.createStage(Level1);

synchronous module

...

const engine = new Engine();
engine.initiate();

engine.preloadStage(Level1).then(() => {
    engine.createStage(Level1);
});

API

1.14.0

15 days ago

1.13.0

27 days ago

1.12.0

1 month ago

1.11.0

2 months ago

1.2.0

5 months ago

1.1.0

6 months ago

1.0.0

6 months ago

1.9.0

4 months ago

1.8.0

4 months ago

1.7.0

5 months ago

1.6.0

5 months ago

1.3.3

5 months ago

1.5.0

5 months ago

1.3.2

5 months ago

1.4.0

5 months ago

1.3.1

5 months ago

1.3.0

5 months ago

1.2.1

5 months ago

1.10.0

2 months ago

0.1.0

6 months ago