2011-04-08 15:51:07 +02:00
|
|
|
package org.mcteam.factions.commands;
|
2011-03-22 15:45:41 +01:00
|
|
|
|
2011-04-08 15:51:07 +02:00
|
|
|
import org.mcteam.factions.Conf;
|
|
|
|
import org.mcteam.factions.FPlayer;
|
|
|
|
import org.mcteam.factions.Faction;
|
|
|
|
import org.mcteam.factions.struct.Role;
|
2011-03-22 15:45:41 +01:00
|
|
|
|
|
|
|
public class FCommandMod extends FBaseCommand {
|
|
|
|
|
|
|
|
public FCommandMod() {
|
2011-03-22 18:48:09 +01:00
|
|
|
aliases.add("mod");
|
|
|
|
|
2011-03-22 15:45:41 +01:00
|
|
|
requiredParameters.add("player name");
|
|
|
|
|
|
|
|
helpDescription = "Give or revoke moderator rights";
|
|
|
|
}
|
|
|
|
|
|
|
|
public void perform() {
|
|
|
|
if ( ! assertHasFaction()) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2011-05-08 17:16:43 +02:00
|
|
|
if( isLocked() ) {
|
|
|
|
sendLockMessage();
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2011-03-22 15:45:41 +01:00
|
|
|
if ( ! assertMinRole(Role.ADMIN)) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
String playerName = parameters.get(0);
|
|
|
|
|
|
|
|
FPlayer you = findFPlayer(playerName, false);
|
|
|
|
if (you == null) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
Faction myFaction = me.getFaction();
|
|
|
|
|
|
|
|
if (you.getFaction() != myFaction) {
|
|
|
|
sendMessage(you.getNameAndRelevant(me)+Conf.colorSystem+" is not a member in your faction.");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (you == me) {
|
|
|
|
sendMessage("The target player musn't be yourself.");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2011-03-22 17:20:21 +01:00
|
|
|
if (you.getRole() == Role.MODERATOR) {
|
2011-03-22 15:45:41 +01:00
|
|
|
// Revoke
|
2011-03-22 17:20:21 +01:00
|
|
|
you.setRole(Role.NORMAL);
|
2011-03-22 15:45:41 +01:00
|
|
|
myFaction.sendMessage(you.getNameAndRelevant(myFaction)+Conf.colorSystem+" is no longer moderator in your faction.");
|
|
|
|
} else {
|
|
|
|
// Give
|
2011-03-22 17:20:21 +01:00
|
|
|
you.setRole(Role.MODERATOR);
|
2011-03-22 15:45:41 +01:00
|
|
|
myFaction.sendMessage(you.getNameAndRelevant(myFaction)+Conf.colorSystem+" was promoted to moderator in your faction.");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|