@Override
  public void perform() {
    Double amount = this.arg(0, ARDouble.get());
    if (amount == null) return;

    UPlayer from = this.arg(1, ARUPlayer.getStartAny(sender));
    if (from == null) return;

    Faction to = this.arg(2, ARFaction.get(sender));
    if (to == null) return;

    boolean success = Econ.transferMoney(usender, from, to, amount);

    if (success && MConf.get().logMoneyTransactions) {
      Factions.get()
          .log(
              ChatColor.stripColor(
                  Txt.parse(
                      "%s transferred %s from the player \"%s\" to the faction \"%s\"",
                      usender.getName(),
                      Money.format(amount),
                      from.describeTo(null),
                      to.describeTo(null))));
    }
  }
  /**
   * @param Cost of action
   * @param because Mark did x
   * @param UPlayer
   * @return boolean
   */
  public static boolean doFinanceCrap(double cost, String sinceDidX, UPlayer player) {
    if (!Config._economy.isHooked()
        || !UConf.get(player).econEnabled
        || Utilities.getOnlinePlayerExact(player) == null
        || cost == 0.0) {
      return true;
    }

    if (UConf.get(player).bankEnabled
        && UConf.get(player).bankFactionPaysCosts
        && player.hasFaction()) {
      return Econ.modifyMoney(player.getFaction(), -cost, sinceDidX);
    } else {
      return Econ.modifyMoney(player, -cost, sinceDidX);
    }
  }
  public void econLandRewardRoutine() {
    if (!Econ.isEnabled()) return;

    double econLandReward = MConf.get().econLandReward;
    if (econLandReward == 0.0) return;

    Factions.get().log("Running econLandRewardRoutine...");
    for (Faction faction : this.getAll()) {
      int landCount = faction.getLandCount();
      if (!faction.getFlag(MFlag.getFlagPeaceful()) && landCount > 0) {
        List<MPlayer> players = faction.getMPlayers();
        int playerCount = players.size();
        double reward = econLandReward * landCount / playerCount;
        for (MPlayer player : players) {
          Econ.modifyMoney(
              player,
              reward,
              "own " + landCount + " faction land divided among " + playerCount + " members");
        }
      }
    }
  }
  @Override
  public void perform() {
    Double amount = this.arg(0, ARDouble.get());
    if (amount == null) return;

    Faction from = this.arg(1, ARFaction.get(sender), myFaction);
    if (from == null) return;

    FPlayer to = fme;

    boolean success = Econ.transferMoney(fme, from, to, amount);

    if (success && MConf.get().logMoneyTransactions) {
      Factions.get()
          .log(
              ChatColor.stripColor(
                  Txt.parse(
                      "%s withdrew %s from the faction bank: %s",
                      fme.getName(), Money.format(from, amount), from.describeTo(null))));
    }
  }
Exemple #5
0
  public void updateHelp() {
    helpPages = new ArrayList<ArrayList<String>>();
    ArrayList<String> pageLines;

    pageLines = new ArrayList<String>();
    pageLines.add(p.cmdBase.cmdHelp.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdList.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdShow.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdPower.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdJoin.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdLeave.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdChat.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdHome.getUseageTemplate(true));
    pageLines.add(p.txt.parse("<i>Naucz sie jak tworzyc miasto na nastepnych stronach."));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.cmdBase.cmdCreate.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdDescription.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdTag.getUseageTemplate(true));
    pageLines.add(p.txt.parse("<i>Mozesz chciec ja zamknac i uzywac zaproszen:"));
    pageLines.add(p.cmdBase.cmdOpen.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdInvite.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdDeinvite.getUseageTemplate(true));
    pageLines.add(p.txt.parse("<i>I nie zapomnij ustawic spawnu miasta:"));
    pageLines.add(p.cmdBase.cmdSethome.getUseageTemplate(true));
    helpPages.add(pageLines);

    if (Econ.isSetup() && Conf.econEnabled && Conf.bankEnabled) {
      pageLines = new ArrayList<String>();
      pageLines.add("");
      pageLines.add(p.txt.parse("<i>Twoje miasto posiada bank, ktory jest uzywany do placenia za"));
      pageLines.add(p.txt.parse("<i>pewne rzeczy, wiec przydalo by sie zlozyc w nim pieniadze."));
      pageLines.add(p.txt.parse("<i>Aby dowiedziec sie wiecej, uzyj komendy money."));
      pageLines.add("");
      pageLines.add(p.cmdBase.cmdMoney.getUseageTemplate(true));
      pageLines.add("");
      pageLines.add("");
      pageLines.add("");
      helpPages.add(pageLines);
    }

    pageLines = new ArrayList<String>();
    pageLines.add(p.cmdBase.cmdClaim.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdAutoClaim.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdUnclaim.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdUnclaimall.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdKick.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdMod.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdAdmin.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdTitle.getUseageTemplate(true));
    pageLines.add(
        p.txt.parse("<i>Tytuly sa tylko dla zabawy. Nie sa z nimi powiazane zadne prawa."));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.cmdBase.cmdMap.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdBoom.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdOwner.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdOwnerList.getUseageTemplate(true));
    pageLines.add(p.txt.parse("<i>Zajete tereny sa dodatkowo chronione tak, ze"));
    pageLines.add(p.txt.parse("<i>tylko wlasciciel(e), burmistrz miasta i ewentualnie"));
    pageLines.add(p.txt.parse("<i>zastepca burmistrza maja do niej pelen dostep"));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.cmdBase.cmdDisband.getUseageTemplate(true));
    pageLines.add("");
    pageLines.add(p.cmdBase.cmdRelationAlly.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdRelationNeutral.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdRelationEnemy.getUseageTemplate(true));
    pageLines.add(p.txt.parse("<i>Ustawia relacje jaka CHCIALBYS miec z innym miastem."));
    pageLines.add(p.txt.parse("<i>Domyslnie relacje z innymi miastami sa neutralne."));
    pageLines.add(p.txt.parse("<i>Jesli OBYDWA miasta wybiora \"ally\" bedziecie sojusznikami."));
    pageLines.add(p.txt.parse("<i>Jesli JEDNO miasto wybierze \"enemy\" bedziecie wrogami."));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.txt.parse("<i>Nigdy nie mozesz zranic czlonkow miasta i sojusznikow."));
    pageLines.add(
        p.txt.parse("<i>Nie mozesz zranic neutralnych graczy, gdy sa na swoim terytorium."));
    pageLines.add(p.txt.parse("<i>Zawsze mozesz zranic wrogow i graczy bez miasta."));
    pageLines.add("");
    pageLines.add(p.txt.parse("<i>Ginac tracisz energie. Odnawia sie ona z czasem."));
    pageLines.add(p.txt.parse("<i>Energia miasta to suma mocy wszystkich czlonkow."));
    pageLines.add(p.txt.parse("<i>Energia miasta okresla ile terenu moze ono zajac."));
    pageLines.add(p.txt.parse("<i>Mozesz zajmowac teren miast ktore maja zbyt malo energii."));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.txt.parse("<i>Tylko czlonkowie miasta moga niszczyc i budowac na swoim"));
    pageLines.add(p.txt.parse("<i>terytorium. Tak samo jest z korzystaniem z nastepujacych:"));
    pageLines.add(p.txt.parse("<i>przedmiotow: Drzwi, Skrzynki, Piece, Dozowniki, Diode."));
    pageLines.add("");
    pageLines.add(p.txt.parse("<i>Upewnij sie, ze polozyles plytki nasickowe przed drzwiami dla"));
    pageLines.add(p.txt.parse("<i>twoich gosci. Inaczej nie przejda. Mozesz to"));
    pageLines.add(p.txt.parse("<i>wykorzystac do tworzenia miejsc tylko dla czlonkow."));
    pageLines.add(p.txt.parse("<i>Jako ze dozowniki sa chronione, mozesz tworzyc z nich"));
    pageLines.add(p.txt.parse("<i>pulapki, bez obawy ze ktos ukradnie ci ich zawartosc."));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add("W koncu troszke komend dla adminow serwera:");
    pageLines.add(p.cmdBase.cmdBypass.getUseageTemplate(true));
    pageLines.add(p.txt.parse("<c>/f claim safezone <i>zajmuje teren na Strefe bezpieczna"));
    pageLines.add(p.txt.parse("<c>/f claim warzone <i>zajmuje teren na Strefe walki"));
    pageLines.add(p.txt.parse("<c>/f autoclaim [safezone|warzone] <i>zgadnij ;)"));
    pageLines.add(p.cmdBase.cmdSafeunclaimall.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdWarunclaimall.getUseageTemplate(true));
    pageLines.add(
        p.txt.parse(
            "<i>Notka: "
                + p.cmdBase.cmdUnclaim.getUseageTemplate(false)
                + P.p.txt.parse("<i>")
                + " dziala takze na strefach Bezpiecznych/Walki."));
    pageLines.add(p.cmdBase.cmdPeaceful.getUseageTemplate(true));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.txt.parse("<i>Wiecej komend dla adminow:"));
    pageLines.add(p.cmdBase.cmdChatSpy.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdPermanent.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdPermanentPower.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdPowerBoost.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdConfig.getUseageTemplate(true));
    helpPages.add(pageLines);

    pageLines = new ArrayList<String>();
    pageLines.add(p.txt.parse("<i>I jeszcze wiecej komend dla tych Panow:"));
    pageLines.add(p.cmdBase.cmdLock.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdReload.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdSaveAll.getUseageTemplate(true));
    pageLines.add(p.cmdBase.cmdVersion.getUseageTemplate(true));
    helpPages.add(pageLines);
  }