@Override public int getPlayerRenderPosY() { return player.getRenderPosY(); }
public DefaultGameContext(Level level, Settings settings) { LOGGER.info("Creating default game context"); this.settings = settings; this.level = level; // TODO: test objects for (int i = 0; i < 20 + Math.random() * 4; i++) { GameObject object = new GameObject(GameObjectSpec.PHARAO); object.setAi(new SimpleAI()); object.setAnimation(new FixedDurationAnimation(250, 4, true)); object.pos = new Vect2d( Math.random() * level.bitmap.getWidth() - 100, Math.random() * level.bitmap.getHeight() - 100); object.delta = new Vect2d(VERY_SLOW, VERY_SLOW); objects.add(object); } for (int i = 0; i < 40 + Math.random() * 8; i++) { GameObject object = new GameObject(GameObjectSpec.MUMMY); object.setAi(new SimpleAI()); object.setAnimation(new FixedDurationAnimation(200, 4, true)); object.pos = new Vect2d( Math.random() * level.bitmap.getWidth() - 100, Math.random() * level.bitmap.getHeight() - 100); object.delta = new Vect2d(SLOW, SLOW); objects.add(object); } for (int i = 0; i < 5 + Math.random() * 15; i++) { GameObject object = new GameObject(GameObjectSpec.SNAKE); object.setAi(new SimpleAI()); object.setAnimation(new FixedDurationAnimation(75, 4, true)); object.pos = new Vect2d( Math.random() * level.bitmap.getWidth() - 100, Math.random() * level.bitmap.getHeight() - 100); object.delta = new Vect2d(VERY_FAST, VERY_FAST); objects.add(object); } player = new GameObject(GameObjectSpec.PLAYER); player.setAnimation(new FixedDurationAnimation(100, 6, true)); player.pos = new Vect2d(0, 0); player.delta = new Vect2d(NORMAL, NORMAL); objects.add(player); objects.addAll(level.getGameObjects()); }
@Override public GameContext dup() { DefaultGameContext ctx = new DefaultGameContext(level, settings); ctx.player.pos = player.pos; return ctx; }