import { IGame, IUi, IEvents, IPlayerPool, IVehiclePool,  IEntityAttachmentPool } from "../../game";
import RageEvents from "./events";
import RageUi from "./ui";
import { RagePlayerPool, RageVehiclePool, RageEntityAttachmentPool } from "./entities";

export default class RageGame implements IGame {
    players: IPlayerPool = new RagePlayerPool();
    vehicles: IVehiclePool = new RageVehiclePool();
    attachments: IEntityAttachmentPool = new RageEntityAttachmentPool();
    events: IEvents = new RageEvents;
    ui: IUi = new RageUi;

    wait(ms: number): void {
        mp.game.wait(ms);
    }

    disableDefaultEngineBehaviour(): void {
        mp.game.vehicle.defaultEngineBehaviour = false;
    }
}