all files / src/ index.ts

100% Statements 19/19
50% Branches 1/2
100% Functions 2/2
100% Lines 18/18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40                                            
import {SchedulerStatic} from "./scheduler";
import {EventStatus, FiniteStateMachine, FiniteStateMachineStatic} from "./fsm";
import {Pool, PoolStatic} from "./pool";
import {EventManager} from "./event";
 
export class GameDev {
    scheduler: SchedulerStatic;
    fsm: FiniteStateMachineStatic;
    pool: PoolStatic;
    event: EventManager;
 
    constructor() {
        this.scheduler = new SchedulerStatic();
        this.fsm = new FiniteStateMachineStatic();
        this.pool = new PoolStatic();
        this.event = new EventManager();
    }
}
 
 
const gamedev = new GameDev();
 
const gamedevjs = {
    gamedev: gamedev,
    EventStatus: EventStatus,
    EventManager: EventManager,
    FiniteStateMachine: FiniteStateMachine,
    Pool: Pool
};
 
Eif (window) {
    (<any>window).gamedevjs = gamedevjs;
}
 
export {
    gamedev,
    EventStatus,
    EventManager
}