Command to convert to new money system
This commit is contained in:
parent
0a0cc047ae
commit
f6c4031827
@ -60,6 +60,7 @@ permissions:
|
|||||||
factions.money.f2p: {description: transfer f --> p, default: false}
|
factions.money.f2p: {description: transfer f --> p, default: false}
|
||||||
factions.money.p2f: {description: transfer p --> f, default: false}
|
factions.money.p2f: {description: transfer p --> f, default: false}
|
||||||
factions.money.withdraw: {description: withdraw from faction, default: false}
|
factions.money.withdraw: {description: withdraw from faction, default: false}
|
||||||
|
factions.moneyconvert: {description: convert to the new money system, default: false}
|
||||||
factions.motd: {description: faction motd, default: false}
|
factions.motd: {description: faction motd, default: false}
|
||||||
factions.open: {description: set if invitation is required to join, default: false}
|
factions.open: {description: set if invitation is required to join, default: false}
|
||||||
factions.perm: {description: change faction permissions, default: false}
|
factions.perm: {description: change faction permissions, default: false}
|
||||||
@ -170,6 +171,7 @@ permissions:
|
|||||||
factions.money.f2p: true
|
factions.money.f2p: true
|
||||||
factions.money.p2f: true
|
factions.money.p2f: true
|
||||||
factions.money.withdraw: true
|
factions.money.withdraw: true
|
||||||
|
factions.moneyconvert: true
|
||||||
factions.motd: true
|
factions.motd: true
|
||||||
factions.officer: true
|
factions.officer: true
|
||||||
factions.officer.any: true
|
factions.officer.any: true
|
||||||
@ -238,6 +240,7 @@ permissions:
|
|||||||
default: false
|
default: false
|
||||||
children:
|
children:
|
||||||
factions.kit.rank2: true
|
factions.kit.rank2: true
|
||||||
|
factions.moneyconvert: true
|
||||||
factions.config: true
|
factions.config: true
|
||||||
factions.clean: true
|
factions.clean: true
|
||||||
factions.kit.rank2:
|
factions.kit.rank2:
|
||||||
|
@ -60,6 +60,7 @@ public enum Perm implements Identified
|
|||||||
MONEY_F2P,
|
MONEY_F2P,
|
||||||
MONEY_P2F,
|
MONEY_P2F,
|
||||||
MONEY_WITHDRAW,
|
MONEY_WITHDRAW,
|
||||||
|
MONEYCONVERT,
|
||||||
MOTD,
|
MOTD,
|
||||||
OPEN,
|
OPEN,
|
||||||
PERM,
|
PERM,
|
||||||
|
@ -60,6 +60,7 @@ public class CmdFactions extends FactionsCommand
|
|||||||
public CmdFactionsDisband cmdFactionsDisband = new CmdFactionsDisband();
|
public CmdFactionsDisband cmdFactionsDisband = new CmdFactionsDisband();
|
||||||
public CmdFactionsPowerBoost cmdFactionsPowerBoost = new CmdFactionsPowerBoost();
|
public CmdFactionsPowerBoost cmdFactionsPowerBoost = new CmdFactionsPowerBoost();
|
||||||
public CmdFactionsSetpower cmdFactionsSetpower = new CmdFactionsSetpower();
|
public CmdFactionsSetpower cmdFactionsSetpower = new CmdFactionsSetpower();
|
||||||
|
public CmdFactionsMoneyconvert cmdFactionsMoneyconvert = new CmdFactionsMoneyconvert();
|
||||||
public CmdFactionsConfig cmdFactionsConfig = new CmdFactionsConfig();
|
public CmdFactionsConfig cmdFactionsConfig = new CmdFactionsConfig();
|
||||||
public CmdFactionsClean cmdFactionsClean = new CmdFactionsClean();
|
public CmdFactionsClean cmdFactionsClean = new CmdFactionsClean();
|
||||||
public MassiveCommandVersion cmdFactionsVersion = new MassiveCommandVersion(Factions.get()).setAliases("v", "version").addRequirements(RequirementHasPerm.get(Perm.VERSION));
|
public MassiveCommandVersion cmdFactionsVersion = new MassiveCommandVersion(Factions.get()).setAliases("v", "version").addRequirements(RequirementHasPerm.get(Perm.VERSION));
|
||||||
|
@ -0,0 +1,76 @@
|
|||||||
|
package com.massivecraft.factions.cmd;
|
||||||
|
|
||||||
|
import com.massivecraft.factions.entity.Faction;
|
||||||
|
import com.massivecraft.factions.entity.FactionColl;
|
||||||
|
import com.massivecraft.factions.entity.MConf;
|
||||||
|
import com.massivecraft.massivecore.MassiveException;
|
||||||
|
import com.massivecraft.massivecore.command.Visibility;
|
||||||
|
import com.massivecraft.massivecore.command.type.primitive.TypeStringConfirmation;
|
||||||
|
import com.massivecraft.massivecore.money.Money;
|
||||||
|
import com.massivecraft.massivecore.util.ConfirmationUtil;
|
||||||
|
|
||||||
|
public class CmdFactionsMoneyconvert extends FactionsCommand
|
||||||
|
{
|
||||||
|
// -------------------------------------------- //
|
||||||
|
// CONSTRUCT
|
||||||
|
// -------------------------------------------- //
|
||||||
|
|
||||||
|
public CmdFactionsMoneyconvert()
|
||||||
|
{
|
||||||
|
// Parameters
|
||||||
|
this.addParameter(TypeStringConfirmation.get(), "confirmation", "");
|
||||||
|
|
||||||
|
// Low priority
|
||||||
|
this.setPriority(-100);
|
||||||
|
}
|
||||||
|
|
||||||
|
// -------------------------------------------- //
|
||||||
|
// OVERRIDE
|
||||||
|
// -------------------------------------------- //
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Visibility getVisibility()
|
||||||
|
{
|
||||||
|
return MConf.get().useNewMoneySystem ? Visibility.INVISIBLE : Visibility.SECRET;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void perform() throws MassiveException
|
||||||
|
{
|
||||||
|
if (MConf.get().useNewMoneySystem)
|
||||||
|
{
|
||||||
|
throw new MassiveException().addMsg("<b>The economy system is already converted.");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Args
|
||||||
|
if (!this.argIsSet(0))
|
||||||
|
{
|
||||||
|
msg("<i>Money in Factions used to be stored within the applicable economy plugin." +
|
||||||
|
" This is problematic because not all economy plugins support that." +
|
||||||
|
" This command allows to convert to the new system where the money of a Faction" +
|
||||||
|
" is stored within the Factions plugin. Then all economy plugins can be used with Factions.");
|
||||||
|
}
|
||||||
|
String confirmationString = this.readArg(null);
|
||||||
|
ConfirmationUtil.tryConfirm(this);
|
||||||
|
|
||||||
|
MConf.get().useNewMoneySystem = true;
|
||||||
|
|
||||||
|
for (Faction f : FactionColl.get().getAll())
|
||||||
|
{
|
||||||
|
if (!Money.exists(f))
|
||||||
|
{
|
||||||
|
msg("<h>%s <i>does not have any money.", f.getName());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
double money = Money.get(f);
|
||||||
|
f.setMoney(money);
|
||||||
|
|
||||||
|
Money.set(f, null, 0);
|
||||||
|
|
||||||
|
msg("<h>%s <i>has <h>%s <i> and has been converted.", f.getName(), Money.format(money));
|
||||||
|
}
|
||||||
|
msg("<i>Converted all factions. Hooray!");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user