Search in sources :

Example 1 with Routines

use of com.b3dgs.lionengine.game.feature.Routines in project lionengine by b3dgs.

the class EntityHelper method addAfter.

/*
     * Featurable
     */
@Override
public void addAfter(Services services, Setup setup) {
    final Routines routines = addFeatureAndGet(new Routines(services, setup));
    updating = extrp -> {
        state.update(extrp);
        attacker.update(extrp);
        extractor.update(extrp);
        producer.update(extrp);
        launchable.update(extrp);
        launcher.update(extrp);
        routines.update(extrp);
        body.update(extrp);
        pathfindable.update(extrp);
        tileCollidable.update(extrp);
        state.postUpdate();
        mirrorable.update(extrp);
        animatable.update(extrp);
        rasterable.update(extrp);
    };
    rendering = g -> {
        pathfindable.render(g);
        rasterable.render(g);
        collidable.render(g);
        routines.render(g);
    };
    updatingCurrent = updating;
    renderingCurrent = rendering;
    addFeature(new RefreshableModel(extrp -> {
        checker.update(extrp);
        updatingCurrent.update(extrp);
    }));
    addFeature(new DisplayableModel(g -> {
        renderingCurrent.render(g);
    }));
}
Also used : Routines(com.b3dgs.lionengine.game.feature.Routines) State(com.b3dgs.lionengine.game.feature.state.State) RefreshableModel(com.b3dgs.lionengine.game.feature.RefreshableModel) Routines(com.b3dgs.lionengine.game.feature.Routines) FeaturableModel(com.b3dgs.lionengine.game.feature.FeaturableModel) ProducibleModel(com.b3dgs.lionengine.game.feature.producible.ProducibleModel) Setup(com.b3dgs.lionengine.game.feature.Setup) RenderableVoid(com.b3dgs.lionengine.graphic.RenderableVoid) AttackerModel(com.b3dgs.lionengine.game.feature.attackable.AttackerModel) FovableModel(com.b3dgs.lionengine.game.feature.tile.map.transition.fog.FovableModel) SelectableModel(com.b3dgs.lionengine.game.feature.collidable.selector.SelectableModel) Mirrorable(com.b3dgs.lionengine.game.feature.Mirrorable) TileCollidable(com.b3dgs.lionengine.game.feature.tile.map.collision.TileCollidable) PathfindableModel(com.b3dgs.lionengine.game.feature.tile.map.pathfinding.PathfindableModel) LaunchableModel(com.b3dgs.lionengine.game.feature.launchable.LaunchableModel) Attacker(com.b3dgs.lionengine.game.feature.attackable.Attacker) AnimatableModel(com.b3dgs.lionengine.game.feature.AnimatableModel) Body(com.b3dgs.lionengine.game.feature.body.Body) ActionerModel(com.b3dgs.lionengine.game.feature.ActionerModel) Services(com.b3dgs.lionengine.game.feature.Services) RasterableModel(com.b3dgs.lionengine.game.feature.rasterable.RasterableModel) Extractor(com.b3dgs.lionengine.game.feature.tile.map.extractable.Extractor) UpdatableVoid(com.b3dgs.lionengine.UpdatableVoid) SetupSurfaceRastered(com.b3dgs.lionengine.game.feature.rasterable.SetupSurfaceRastered) Locale(java.util.Locale) ProducerModel(com.b3dgs.lionengine.game.feature.producible.ProducerModel) Animatable(com.b3dgs.lionengine.game.feature.Animatable) Producer(com.b3dgs.lionengine.game.feature.producible.Producer) CollidableFramedModel(com.b3dgs.lionengine.game.feature.collidable.framed.CollidableFramedModel) CollidableModel(com.b3dgs.lionengine.game.feature.collidable.CollidableModel) MirrorableModel(com.b3dgs.lionengine.game.feature.MirrorableModel) Renderable(com.b3dgs.lionengine.graphic.Renderable) Rasterable(com.b3dgs.lionengine.game.feature.rasterable.Rasterable) Collidable(com.b3dgs.lionengine.game.feature.collidable.Collidable) Launchable(com.b3dgs.lionengine.game.feature.launchable.Launchable) ExtractableModel(com.b3dgs.lionengine.game.feature.tile.map.extractable.ExtractableModel) DisplayableModel(com.b3dgs.lionengine.game.feature.DisplayableModel) Updatable(com.b3dgs.lionengine.Updatable) Launcher(com.b3dgs.lionengine.game.feature.launchable.Launcher) LayerableModel(com.b3dgs.lionengine.game.feature.LayerableModel) TransformableModel(com.b3dgs.lionengine.game.feature.TransformableModel) Pathfindable(com.b3dgs.lionengine.game.feature.tile.map.pathfinding.Pathfindable) BodyModel(com.b3dgs.lionengine.game.feature.body.BodyModel) LauncherModel(com.b3dgs.lionengine.game.feature.launchable.LauncherModel) TileCollidableModel(com.b3dgs.lionengine.game.feature.tile.map.collision.TileCollidableModel) StateHandler(com.b3dgs.lionengine.game.feature.state.StateHandler) ExtractorModel(com.b3dgs.lionengine.game.feature.tile.map.extractable.ExtractorModel) RefreshableModel(com.b3dgs.lionengine.game.feature.RefreshableModel) DisplayableModel(com.b3dgs.lionengine.game.feature.DisplayableModel)

Aggregations

Updatable (com.b3dgs.lionengine.Updatable)1 UpdatableVoid (com.b3dgs.lionengine.UpdatableVoid)1 ActionerModel (com.b3dgs.lionengine.game.feature.ActionerModel)1 Animatable (com.b3dgs.lionengine.game.feature.Animatable)1 AnimatableModel (com.b3dgs.lionengine.game.feature.AnimatableModel)1 DisplayableModel (com.b3dgs.lionengine.game.feature.DisplayableModel)1 FeaturableModel (com.b3dgs.lionengine.game.feature.FeaturableModel)1 LayerableModel (com.b3dgs.lionengine.game.feature.LayerableModel)1 Mirrorable (com.b3dgs.lionengine.game.feature.Mirrorable)1 MirrorableModel (com.b3dgs.lionengine.game.feature.MirrorableModel)1 RefreshableModel (com.b3dgs.lionengine.game.feature.RefreshableModel)1 Routines (com.b3dgs.lionengine.game.feature.Routines)1 Services (com.b3dgs.lionengine.game.feature.Services)1 Setup (com.b3dgs.lionengine.game.feature.Setup)1 TransformableModel (com.b3dgs.lionengine.game.feature.TransformableModel)1 Attacker (com.b3dgs.lionengine.game.feature.attackable.Attacker)1 AttackerModel (com.b3dgs.lionengine.game.feature.attackable.AttackerModel)1 Body (com.b3dgs.lionengine.game.feature.body.Body)1 BodyModel (com.b3dgs.lionengine.game.feature.body.BodyModel)1 Collidable (com.b3dgs.lionengine.game.feature.collidable.Collidable)1