예제 #1
0
  @Override
  public boolean unregisterPlayer(Player player) {
    lock();
    try {

      if (!isStarted()) {
        player.sendMessage("Ивент не запущен.");
        return false;
      }

      if (getState() != EventState.REGISTER) {
        player.sendMessage("Время регистрации вышло.");
        return false;
      }

      Array<Player> prepare = getPrepare();

      if (!prepare.contains(player)) {
        player.sendMessage("Вы не зарегестрированы.");
        return false;
      }

      prepare.fastRemove(player);

      player.setEvent(false);
      player.sendMessage("Вы отрегестрированы.");
      return false;

    } finally {
      unlock();
    }
  }
예제 #2
0
  @Override
  public boolean registerPlayer(Player player) {
    lock();
    try {

      if (!isStarted()) {
        player.sendMessage("Ивент не запущен.");
        return false;
      }

      if (getState() != EventState.REGISTER) {
        player.sendMessage("Время регистрации вышло.");
        return false;
      }

      if (player.getLevel() > getMaxLevel() || player.getLevel() < getMinLevel()) {
        player.sendMessage("Вы не подходите по уровню.");
        return false;
      }

      Array<Player> prepare = getPrepare();

      if (prepare.contains(player)) {
        player.sendMessage("Вы уже зарегестрированы.");
        return false;
      }

      if (player.isDead()) {
        player.sendMessage("Вы мертвы.");
        return false;
      }

      if (player.hasDuel()) {
        player.sendMessage("Вы находитесь в дуэли.");
        return false;
      }

      prepare.add(player);

      player.setEvent(true);
      player.sendMessage("Вы зарегестрированы.");
      return true;

    } finally {
      unlock();
    }
  }