f8f3704cd4
"logFactionCreate": true, - log faction creation "logFactionDisband": true, - log factions being disbanded, by command or by circumstance "logFactionJoin": true, - log player joining a faction "logFactionKick": true, - log player being kicked from a faction "logFactionLeave": true, - log player leaving a faction "logLandClaims": true, - log land being claimed (including safe zone and war zone) "logLandUnclaims": true, - log land being unclaimed (including safe zone and war zone) "logMoneyTransactions": true, - log money being deposited, withdrawn, and otherwise transferred in relation to faction banks Also a fix for a potential NPE from players logging out and Spout appearance handler referencing them afterwards
40 lines
1.0 KiB
Java
40 lines
1.0 KiB
Java
package com.massivecraft.factions.cmd;
|
|
|
|
import com.massivecraft.factions.Conf;
|
|
import com.massivecraft.factions.Faction;
|
|
import com.massivecraft.factions.P;
|
|
import com.massivecraft.factions.integration.Econ;
|
|
import com.massivecraft.factions.struct.Permission;
|
|
|
|
public class CmdMoneyWithdraw extends FCommand
|
|
{
|
|
public CmdMoneyWithdraw()
|
|
{
|
|
this.aliases.add("w");
|
|
this.aliases.add("withdraw");
|
|
|
|
this.requiredArgs.add("amount");
|
|
this.optionalArgs.put("faction", "yours");
|
|
|
|
this.permission = Permission.MONEY_WITHDRAW.node;
|
|
this.setHelpShort("withdraw money");
|
|
|
|
senderMustBePlayer = true;
|
|
senderMustBeMember = false;
|
|
senderMustBeModerator = false;
|
|
senderMustBeAdmin = false;
|
|
}
|
|
|
|
@Override
|
|
public void perform()
|
|
{
|
|
double amount = this.argAsDouble(0, 0d);
|
|
Faction faction = this.argAsFaction(1, myFaction);
|
|
if (faction == null) return;
|
|
Econ.transferMoney(fme, faction, fme, amount);
|
|
|
|
if (Conf.logMoneyTransactions)
|
|
P.p.log(fme.getName()+" withdrew "+Econ.moneyString(amount)+" from the faction bank: "+faction.getTag());
|
|
}
|
|
}
|