@Override
  public void apply(Hero hero) {
    setKnown();
    Buff.affect(hero, MindVision.class, MindVision.DURATION);
    Dungeon.observe();

    if (Dungeon.level.mobs.size() > 0) {
      GLog.i("You can somehow feel the presence of other creatures' minds!");
    } else {
      GLog.i("You can somehow tell that you are alone on this level at the moment.");
    }
  }
  public static void teleportHero(Hero hero) {

    int count = 10;
    int pos;
    do {
      pos = Dungeon.level.randomRespawnCell();
      if (count-- <= 0) {
        break;
      }
    } while (pos == -1);

    if (pos == -1) {

      GLog.w(TXT_NO_TELEPORT);

    } else {

      appear(hero, pos);
      Dungeon.level.press(pos, hero);
      Dungeon.observe();

      GLog.i(TXT_TELEPORTED);
    }
  }