Пример #1
0
  public String doAccept(MPlayer player, GovType type) {
    Integer inv = player.getSessionStore().getInt("gov-inv", -1);
    if (inv < 0) {
      return player.getLocale().localize("command.government.error.not-invited", type.getName());
    }

    Government gov = Mafiacraft.getGovernmentManager().getGovernment(inv);
    if (gov == null) {
      return player
          .getLocale()
          .localize("action.government.error.invited-nonexistent" + type.getName());
    }

    gov.addAffiliate(player);

    player.sendMessage(
        MsgColor.SUCCESS
            + player
                .getLocale()
                .localize("command.government.success.joined", type.getName(), gov.getName()));
    gov.broadcastMessage(
        player
            .getLocale()
            .localize("event.government.player-joined", player.getName(), gov.getType().getName()));
    return null;
  }
Пример #2
0
 public String doHelp(MPlayer player, String arg, GovType type) {
   if (type.equals(GovType.MAFIA)) {
     MenuType.MAFIA.doHelp(player, arg);
   } else if (type.equals(GovType.POLICE)) {
     MenuType.POLICE.doHelp(player, arg);
   }
   return null;
 }
Пример #3
0
  /**
   * Found command.
   *
   * @param player The player.
   * @param name The name to found as.
   * @param type The type of government.
   * @return The first error.
   */
  public String doFound(MPlayer player, String name, GovType type) {
    if (!player.hasPermission("mafiacraft.citizen")) {
      return player.getLocale().localize("action.general.not-citizen");
    }

    if (!type.canFound()) {
      return player.getLocale().localize("command.government.error.found", type.getName());
    }

    double balance = player.getMoney();
    double cost = Config.getDouble("mafia.found");

    if (balance < cost) {
      return player
          .getLocale()
          .localize("command.government.error.no-money.found", StringUtils.formatCurrency(cost));
    }

    if (player.getGovernment() != null) {
      return player.getLocale().localize("action.government.error.in-gov");
    }

    name = name.trim();
    boolean result = ValidationUtils.validateName(name);
    if (!result) {
      return player.getLocale().localize("command.government.error.invalid-name", name);
    }

    if (Mafiacraft.getGovernmentManager().getGovernment(name) != null) {
      return player.getLocale().localize("action.government.error.exists");
    }

    // Found the government
    Government founded = Mafiacraft.getGovernmentManager().createGovernment(name, type);
    if (!founded.addAffiliate(player)) {
      return player.getLocale().localize("error.fatal.adding");
    }

    founded.setLeader(player);

    double startupCapital = Config.getDouble("mafia.startupcapital");
    founded.addMoney(startupCapital);

    player.sendMessage(
        MsgColor.SUCCESS
            + player
                .getLocale()
                .localize("command.government.success.founded", type.getName(), name));
    return null;
  }
Пример #4
0
  public String doLeave(MPlayer player, GovType type) {
    Government gov = player.getGovernment();
    if (gov == null) {
      return "You aren't in a " + type.getName();
    }

    gov.removeMemberAndSucceed(player);

    player.sendMessage(MsgColor.SUCCESS + "You have left " + gov.getName() + ".");
    gov.broadcastMessage(
        MsgColor.INFO + player.getName() + " has left the " + gov.getType().getName() + ".");
    return null;
  }