Saber-Factions/src/main/java/com/massivecraft/factions/cmd/CmdAutoClaim.java

56 lines
1.6 KiB
Java
Raw Normal View History

2011-10-09 21:57:43 +02:00
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Faction;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.zcore.util.TL;
2014-04-04 20:55:21 +02:00
public class CmdAutoClaim extends FCommand {
2014-04-04 20:55:21 +02:00
public CmdAutoClaim() {
2014-07-01 22:10:18 +02:00
super();
this.aliases.add("autoclaim");
2014-04-04 20:55:21 +02:00
//this.requiredArgs.add("");
this.optionalArgs.put("faction", "your");
2014-07-01 22:10:18 +02:00
this.permission = Permission.AUTOCLAIM.node;
this.disableOnLock = true;
2014-04-04 20:55:21 +02:00
2014-07-01 22:10:18 +02:00
senderMustBePlayer = true;
senderMustBeMember = false;
senderMustBeModerator = false;
senderMustBeAdmin = false;
2014-04-04 20:55:21 +02:00
}
@Override
public void perform() {
Faction forFaction = this.argAsFaction(0, myFaction);
if (forFaction == null || forFaction == fme.getAutoClaimFor()) {
2014-07-01 22:10:18 +02:00
fme.setAutoClaimFor(null);
msg(TL.COMMAND_AUTOCLAIM_DISABLED);
2014-07-01 22:10:18 +02:00
return;
2014-04-04 20:55:21 +02:00
}
if (!fme.canClaimForFaction(forFaction)) {
2014-07-01 21:52:40 +02:00
if (myFaction == forFaction) {
msg(TL.COMMAND_AUTOCLAIM_REQUIREDRANK, Role.MODERATOR.getTranslation());
2014-07-01 22:10:18 +02:00
} else {
msg(TL.COMMAND_AUTOCLAIM_OTHERFACTION, forFaction.describeTo(fme));
2014-07-01 22:10:18 +02:00
}
2014-04-04 20:55:21 +02:00
return;
}
fme.setAutoClaimFor(forFaction);
msg(TL.COMMAND_AUTOCLAIM_ENABLED, forFaction.describeTo(fme));
2014-04-04 20:55:21 +02:00
fme.attemptClaim(forFaction, me.getLocation(), true);
}
@Override
public TL getUsageTranslation() {
return TL.COMMAND_AUTOCLAIM_DESCRIPTION;
}
}