Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package sk.tuke.kpi.oop.game.scenarios;
- import org.jetbrains.annotations.NotNull;
- import org.jetbrains.annotations.Nullable;
- import sk.tuke.kpi.gamelib.*;
- import sk.tuke.kpi.oop.game.characters.Ripley;
- import sk.tuke.kpi.oop.game.controllers.KeeperController;
- import sk.tuke.kpi.oop.game.controllers.MovableController;
- import sk.tuke.kpi.oop.game.items.Energy;
- import sk.tuke.kpi.oop.game.items.Hammer;
- import sk.tuke.kpi.oop.game.items.Wrench;
- import sk.tuke.kpi.oop.game.openables.Door;
- public class MissionImpossible implements SceneListener {
- private Ripley ellen;
- public static class Factory implements ActorFactory
- {
- public @Nullable Actor create(String type, String name)
- {
- if (name.equals("ellen")) return new Ripley();
- if(name.equals("energy"))return new Energy();
- if(name.equals("door"))return new Door();
- else return null;
- }
- }
- @Override
- public void sceneInitialized(@NotNull Scene scene) {
- Input input = scene.getInput();
- ellen = scene.getFirstActorByType(Ripley.class);
- MovableController M = new MovableController(ellen);
- KeeperController K = new KeeperController(ellen);
- Hammer hammer = new Hammer();
- Wrench wrench = new Wrench();
- ellen.setEnergy(30);
- ellen.getBackpack().add(hammer);
- ellen.getBackpack().add(wrench);
- input.registerListener(M);
- input.registerListener(K);
- scene.follow(ellen);
- }
- @Override
- public void sceneUpdating(Scene scene) {
- int windowHeight = scene.getGame().getWindowSetup().getHeight();
- int yTextPos = windowHeight - GameApplication.STATUS_LINE_OFFSET;
- scene.getGame().getOverlay().drawText("Energy: "+ellen.getEnergy(), 100, yTextPos);
- scene.getGame().pushActorContainer(ellen.getBackpack());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement