Ejemplo n.º 1
0
  @Override
  public boolean behave(double time) {
    if (RandomUtil.getRandomInt(200) == 0) {
      double a = RandomUtil.getRandomGaussian(RandomUtil.getRandomDouble(Angles.PI_2), 0.1);

      double rad = 300;

      SceneEntity target = temple;
      double speed = RandomUtil.getRandomDouble(0.1) + 0.2;
      double x = rad * Math.cos(a);
      double y = rad * Math.sin(a);
      double ang = Math.atan2(target.getAABB().y - y, target.getAABB().x - x);
      Vector2D velocity = new Vector2D(speed * Math.cos(ang), speed * Math.sin(ang));

      SpawnerBubble spawner =
          new SpawnerBubble(getSceneVeil(), x, y, 180. + Angles.toDegrees(a), velocity, target, 20);
      spawners.add(spawner);
      getSceneVeil().addEntity(spawner);
    }
    return false;
  }