mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-06-28 19:54:44 +02:00
Major cleanup
This commit is contained in:
@ -12,26 +12,9 @@ import com.gmail.nossr50.datatypes.PlayerProfile;
|
||||
import com.gmail.nossr50.locale.LocaleLoader;
|
||||
import com.gmail.nossr50.util.Users;
|
||||
|
||||
public class PartyManager {
|
||||
private static String partiesFilePath;
|
||||
public final class PartyManager {
|
||||
private static String partiesFilePath = mcMMO.p.getDataFolder().getPath() + File.separator + "FlatFileStuff" + File.separator + "parties.yml";
|
||||
private static List<Party> parties = new ArrayList<Party>();
|
||||
private static mcMMO plugin;
|
||||
private static PartyManager instance;
|
||||
|
||||
private PartyManager() {
|
||||
plugin = mcMMO.p;
|
||||
partiesFilePath = plugin.getDataFolder().getPath() + File.separator + "FlatFileStuff" + File.separator + "parties.yml";
|
||||
|
||||
loadParties();
|
||||
}
|
||||
|
||||
public static PartyManager getInstance() {
|
||||
if (instance == null) {
|
||||
instance = new PartyManager();
|
||||
}
|
||||
|
||||
return instance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if two players are in the same party.
|
||||
@ -40,7 +23,7 @@ public class PartyManager {
|
||||
* @param secondPlayer The second player
|
||||
* @return true if they are in the same party, false otherwise
|
||||
*/
|
||||
public boolean inSameParty(Player firstPlayer, Player secondPlayer) {
|
||||
public static boolean inSameParty(Player firstPlayer, Player secondPlayer) {
|
||||
PlayerProfile firstProfile = Users.getProfile(firstPlayer);
|
||||
PlayerProfile secondProfile = Users.getProfile(secondPlayer);
|
||||
|
||||
@ -64,7 +47,7 @@ public class PartyManager {
|
||||
* @param playerName The name of the player that joins
|
||||
* @param party The concerned party
|
||||
*/
|
||||
private void informPartyMembersJoin(String playerName, Party party) {
|
||||
private static void informPartyMembersJoin(String playerName, Party party) {
|
||||
for (Player member : party.getOnlineMembers()) {
|
||||
if (!member.getName().equals(playerName)) {
|
||||
member.sendMessage(LocaleLoader.getString("Party.InformedOnJoin", new Object[] {playerName}));
|
||||
@ -78,7 +61,7 @@ public class PartyManager {
|
||||
* @param playerName The name of the player that quits
|
||||
* @param party The concerned party
|
||||
*/
|
||||
private void informPartyMembersQuit(String playerName, Party party) {
|
||||
private static void informPartyMembersQuit(String playerName, Party party) {
|
||||
for (Player member : party.getOnlineMembers()) {
|
||||
if (!member.getName().equals(playerName)) {
|
||||
member.sendMessage(LocaleLoader.getString("Party.InformedOnQuit", new Object[] {playerName}));
|
||||
@ -92,7 +75,7 @@ public class PartyManager {
|
||||
* @param player The player to check
|
||||
* @return all the players in the player's party
|
||||
*/
|
||||
public List<String> getAllMembers(Player player) {
|
||||
public static List<String> getAllMembers(Player player) {
|
||||
Party party = Users.getProfile(player).getParty();
|
||||
|
||||
if (party == null) {
|
||||
@ -108,7 +91,7 @@ public class PartyManager {
|
||||
* @param partyName The party to check
|
||||
* @return all online players in this party
|
||||
*/
|
||||
public List<Player> getOnlineMembers(String partyName) {
|
||||
public static List<Player> getOnlineMembers(String partyName) {
|
||||
Party party = getParty(partyName);
|
||||
|
||||
if (party == null) {
|
||||
@ -124,7 +107,7 @@ public class PartyManager {
|
||||
* @param player The player to check
|
||||
* @return all online players in this party
|
||||
*/
|
||||
public List<Player> getOnlineMembers(Player player) {
|
||||
public static List<Player> getOnlineMembers(Player player) {
|
||||
return getOnlineMembers(player.getName());
|
||||
}
|
||||
|
||||
@ -134,7 +117,7 @@ public class PartyManager {
|
||||
* @param partyName The party name
|
||||
* @return the existing party, null otherwise
|
||||
*/
|
||||
public Party getParty(String partyName) {
|
||||
public static Party getParty(String partyName) {
|
||||
for (Party party : parties) {
|
||||
if (party.getName().equals(partyName)) {
|
||||
return party;
|
||||
@ -150,7 +133,7 @@ public class PartyManager {
|
||||
* @param playerName The member name
|
||||
* @return the existing party, null otherwise
|
||||
*/
|
||||
public Party getPlayerParty(String playerName) {
|
||||
public static Party getPlayerParty(String playerName) {
|
||||
for (Party party : parties) {
|
||||
if (party.getMembers().contains(playerName)) {
|
||||
return party;
|
||||
@ -164,7 +147,7 @@ public class PartyManager {
|
||||
*
|
||||
* @return the list of parties.
|
||||
*/
|
||||
public List<Party> getParties() {
|
||||
public static List<Party> getParties() {
|
||||
return parties;
|
||||
}
|
||||
|
||||
@ -174,7 +157,7 @@ public class PartyManager {
|
||||
* @param playerName The name of the player to remove
|
||||
* @param party The party
|
||||
*/
|
||||
public void removeFromParty(String playerName, Party party) {
|
||||
public static void removeFromParty(String playerName, Party party) {
|
||||
List<String> members = party.getMembers();
|
||||
|
||||
members.remove(playerName);
|
||||
@ -204,7 +187,7 @@ public class PartyManager {
|
||||
*
|
||||
* @param party The party to remove
|
||||
*/
|
||||
public void disbandParty(Party party) {
|
||||
public static void disbandParty(Party party) {
|
||||
List<String> members = party.getMembers();
|
||||
|
||||
for (String member : party.getMembers()) {
|
||||
@ -229,7 +212,7 @@ public class PartyManager {
|
||||
* @param partyName The party to add the player to
|
||||
* @param password the password for this party, null if there was no password
|
||||
*/
|
||||
public void createParty(Player player, PlayerProfile playerProfile, String partyName, String password) {
|
||||
public static void createParty(Player player, PlayerProfile playerProfile, String partyName, String password) {
|
||||
partyName = partyName.replace(".", "");
|
||||
Party party = getParty(partyName);
|
||||
String playerName = player.getName();
|
||||
@ -264,7 +247,7 @@ public class PartyManager {
|
||||
* @param partyName The party to add the player to
|
||||
* @param password the password for this party, null if there was no password
|
||||
*/
|
||||
public void joinParty(Player player, PlayerProfile playerProfile, String partyName, String password) {
|
||||
public static void joinParty(Player player, PlayerProfile playerProfile, String partyName, String password) {
|
||||
partyName = partyName.replace(".", "");
|
||||
Party party = getParty(partyName);
|
||||
String playerName = player.getName();
|
||||
@ -299,7 +282,7 @@ public class PartyManager {
|
||||
* @param password The password provided by the player
|
||||
* @return true if the player can join the party
|
||||
*/
|
||||
public boolean checkJoinability(Player player, Party party, String password) {
|
||||
public static boolean checkJoinability(Player player, Party party, String password) {
|
||||
//Don't care about passwords if it isn't locked
|
||||
if (party.isLocked()) {
|
||||
String partyPassword = party.getPassword();
|
||||
@ -330,7 +313,7 @@ public class PartyManager {
|
||||
* @param player The player to add to the party
|
||||
* @param playerProfile The profile of the player
|
||||
*/
|
||||
public void joinInvitedParty(Player player, PlayerProfile playerProfile) {
|
||||
public static void joinInvitedParty(Player player, PlayerProfile playerProfile) {
|
||||
Party invite = playerProfile.getInvite();
|
||||
|
||||
if (!parties.contains(invite)) {
|
||||
@ -349,7 +332,7 @@ public class PartyManager {
|
||||
* @param playerProfile The profile of the player
|
||||
* @param party The party
|
||||
*/
|
||||
public void addToParty(String playerName, PlayerProfile playerProfile, Party party) {
|
||||
public static void addToParty(String playerName, PlayerProfile playerProfile, Party party) {
|
||||
informPartyMembersJoin(playerName, party);
|
||||
playerProfile.setParty(party);
|
||||
party.getMembers().add(playerName);
|
||||
@ -361,7 +344,7 @@ public class PartyManager {
|
||||
* @param partyName The party name
|
||||
* @return the leader of the party
|
||||
*/
|
||||
public String getPartyLeader(String partyName) {
|
||||
public static String getPartyLeader(String partyName) {
|
||||
Party party = getParty(partyName);
|
||||
|
||||
if (party == null) {
|
||||
@ -377,7 +360,7 @@ public class PartyManager {
|
||||
* @param playerName The name of the player to set as leader
|
||||
* @param party The party
|
||||
*/
|
||||
public void setPartyLeader(String playerName, Party party) {
|
||||
public static void setPartyLeader(String playerName, Party party) {
|
||||
String leaderName = party.getLeader();
|
||||
|
||||
for (Player member : party.getOnlineMembers()) {
|
||||
@ -402,7 +385,7 @@ public class PartyManager {
|
||||
* @param playerProfile The profile of the given player
|
||||
* @return true if the player can invite
|
||||
*/
|
||||
public boolean canInvite(Player player, PlayerProfile playerProfile) {
|
||||
public static boolean canInvite(Player player, PlayerProfile playerProfile) {
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if (party == null || (party.isLocked() && !party.getLeader().equals(player.getName()))) {
|
||||
@ -418,7 +401,7 @@ public class PartyManager {
|
||||
* @param partyName The party name to check
|
||||
* @return true if this is a valid party, false otherwise
|
||||
*/
|
||||
public boolean isParty(String partyName) {
|
||||
public static boolean isParty(String partyName) {
|
||||
for (Party party : parties) {
|
||||
if (party.getName().equals(partyName)) {
|
||||
return true;
|
||||
@ -431,7 +414,7 @@ public class PartyManager {
|
||||
/**
|
||||
* Load party file.
|
||||
*/
|
||||
private void loadParties() {
|
||||
private static void loadParties() {
|
||||
File file = new File(partiesFilePath);
|
||||
|
||||
if (!file.exists()) {
|
||||
@ -462,7 +445,7 @@ public class PartyManager {
|
||||
/**
|
||||
* Save party file.
|
||||
*/
|
||||
public void saveParties() {
|
||||
public static void saveParties() {
|
||||
File file = new File(partiesFilePath);
|
||||
|
||||
if (file.exists()) {
|
||||
|
@ -14,12 +14,6 @@ import com.gmail.nossr50.util.Permissions;
|
||||
import com.gmail.nossr50.util.Users;
|
||||
|
||||
public class ACommand implements CommandExecutor {
|
||||
private final mcMMO plugin;
|
||||
|
||||
public ACommand (mcMMO plugin) {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
PlayerProfile profile;
|
||||
@ -68,7 +62,7 @@ public class ACommand implements CommandExecutor {
|
||||
Player player = (Player) sender;
|
||||
|
||||
McMMOAdminChatEvent chatEvent = new McMMOAdminChatEvent(player.getName(), message);
|
||||
plugin.getServer().getPluginManager().callEvent(chatEvent);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(chatEvent);
|
||||
|
||||
if (chatEvent.isCancelled()) {
|
||||
return true;
|
||||
@ -77,9 +71,9 @@ public class ACommand implements CommandExecutor {
|
||||
message = chatEvent.getMessage();
|
||||
String prefix = LocaleLoader.getString("Commands.AdminChat.Prefix", new Object[] {player.getName()} );
|
||||
|
||||
plugin.getLogger().info("[A]<" + player.getName() + "> " + message);
|
||||
mcMMO.p.getLogger().info("[A]<" + player.getName() + "> " + message);
|
||||
|
||||
for (Player otherPlayer : plugin.getServer().getOnlinePlayers()) {
|
||||
for (Player otherPlayer : mcMMO.p.getServer().getOnlinePlayers()) {
|
||||
if (Permissions.adminChat(otherPlayer) || otherPlayer.isOp()) {
|
||||
otherPlayer.sendMessage(prefix + message);
|
||||
}
|
||||
@ -87,7 +81,7 @@ public class ACommand implements CommandExecutor {
|
||||
}
|
||||
else {
|
||||
McMMOAdminChatEvent chatEvent = new McMMOAdminChatEvent("Console", message);
|
||||
plugin.getServer().getPluginManager().callEvent(chatEvent);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(chatEvent);
|
||||
|
||||
if (chatEvent.isCancelled()) {
|
||||
return true;
|
||||
@ -96,9 +90,9 @@ public class ACommand implements CommandExecutor {
|
||||
message = chatEvent.getMessage();
|
||||
String prefix = LocaleLoader.getString("Commands.AdminChat.Prefix", new Object[] {LocaleLoader.getString("Commands.Chat.Console")} );
|
||||
|
||||
plugin.getLogger().info("[A]<*Console*> " + message);
|
||||
mcMMO.p.getLogger().info("[A]<*Console*> " + message);
|
||||
|
||||
for (Player player : plugin.getServer().getOnlinePlayers()) {
|
||||
for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
|
||||
if (Permissions.adminChat(player) || player.isOp()) {
|
||||
player.sendMessage(prefix + message);
|
||||
}
|
||||
|
@ -96,7 +96,7 @@ public class PCommand implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!PartyManager.getInstance().isParty(args[0])) {
|
||||
if (!PartyManager.isParty(args[0])) {
|
||||
sender.sendMessage(LocaleLoader.getString("Party.InvalidName"));
|
||||
return true;
|
||||
}
|
||||
@ -123,7 +123,7 @@ public class PCommand implements CommandExecutor {
|
||||
|
||||
plugin.getLogger().info("[P](" + args[0] + ")" + "<*Console*> " + message);
|
||||
|
||||
for (Player member : PartyManager.getInstance().getOnlineMembers(args[0])) {
|
||||
for (Player member : PartyManager.getOnlineMembers(args[0])) {
|
||||
member.sendMessage(prefix + message);
|
||||
}
|
||||
}
|
||||
|
@ -19,12 +19,6 @@ import com.gmail.nossr50.party.PartyManager;
|
||||
import com.gmail.nossr50.util.Users;
|
||||
|
||||
public class PartyCommand implements CommandExecutor {
|
||||
private final mcMMO plugin;
|
||||
|
||||
public PartyCommand (mcMMO plugin) {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if (CommandHelper.noConsoleUsage(sender)) {
|
||||
@ -38,51 +32,71 @@ public class PartyCommand implements CommandExecutor {
|
||||
Player player = (Player) sender;
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
if(args.length < 1)
|
||||
if (args.length < 1) {
|
||||
return party(sender);
|
||||
}
|
||||
|
||||
if(args[0].equalsIgnoreCase("join"))
|
||||
if (args[0].equalsIgnoreCase("join")) {
|
||||
return join(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("accept"))
|
||||
}
|
||||
else if (args[0].equalsIgnoreCase("accept")) {
|
||||
return accept(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("create"))
|
||||
}
|
||||
else if (args[0].equalsIgnoreCase("create")) {
|
||||
return create(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("info"))
|
||||
}
|
||||
else if (args[0].equalsIgnoreCase("info")) {
|
||||
return party(sender);
|
||||
else if(args[0].equalsIgnoreCase("?") || args[0].equalsIgnoreCase("help"))
|
||||
return help(sender, args);
|
||||
}
|
||||
else if (args[0].equalsIgnoreCase("?") || args[0].equalsIgnoreCase("help")) {
|
||||
return printHelp(sender, args);
|
||||
}
|
||||
|
||||
if (playerProfile.inParty()) {
|
||||
if(args[0].equalsIgnoreCase("quit") || args[0].equalsIgnoreCase("q") || args[0].equalsIgnoreCase("leave"))
|
||||
if(args[0].equalsIgnoreCase("quit") || args[0].equalsIgnoreCase("q") || args[0].equalsIgnoreCase("leave")) {
|
||||
return quit(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("expshare"))
|
||||
return expshare(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("itemshare"))
|
||||
return itemshare(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("invite"))
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("expshare")) {
|
||||
return shareExp(sender, args);
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("itemshare")) {
|
||||
return shareItem(sender, args);
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("invite")) {
|
||||
return invite(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("kick"))
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("kick")) {
|
||||
return kick(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("disband"))
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("disband")) {
|
||||
return disband(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("owner"))
|
||||
return owner(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("lock"))
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("owner")) {
|
||||
return changeOwner(sender, args);
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("lock")) {
|
||||
return lock(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("unlock"))
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("unlock")) {
|
||||
return unlock(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("password"))
|
||||
return password(sender, args);
|
||||
else if(args[0].equalsIgnoreCase("rename"))
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("password")) {
|
||||
return changePassword(sender, args);
|
||||
}
|
||||
else if(args[0].equalsIgnoreCase("rename")) {
|
||||
return rename(sender, args);
|
||||
else
|
||||
return usage(sender);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
return printUsage(sender);
|
||||
}
|
||||
}
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.None"));
|
||||
return usage(sender);
|
||||
return printUsage(sender);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean usage(CommandSender sender) {
|
||||
private boolean printUsage(CommandSender sender) {
|
||||
Player player = (Player) sender;
|
||||
player.sendMessage(LocaleLoader.getString("Party.Help.0"));
|
||||
player.sendMessage(LocaleLoader.getString("Party.Help.1"));
|
||||
@ -97,7 +111,7 @@ public class PartyCommand implements CommandExecutor {
|
||||
if (playerProfile.inParty()) {
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
Server server = plugin.getServer();
|
||||
Server server = mcMMO.p.getServer();
|
||||
String leader = party.getLeader();
|
||||
StringBuffer tempList = new StringBuffer();
|
||||
|
||||
@ -123,127 +137,137 @@ public class PartyCommand implements CommandExecutor {
|
||||
// player.sendMessage(LocaleLoader.getString("Commands.Party.ShareMode", new Object[] { "NONE", "NONE" })); Party share modes will get implemented later
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.Members.Header"));
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.Members", new Object[] {tempList}));
|
||||
} else {
|
||||
return usage(sender);
|
||||
}
|
||||
else {
|
||||
return printUsage(sender);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean join(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.join"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.join")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if(args.length < 2) {
|
||||
if (args.length < 2) {
|
||||
player.sendMessage(LocaleLoader.getString("Party.Help.0"));
|
||||
return true;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Player target = Bukkit.getServer().getPlayer(args[1]);
|
||||
|
||||
if (target == null) {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOnline", new Object[] {args[1]}));
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!Users.getProfile(target).inParty()) {
|
||||
player.sendMessage(LocaleLoader.getString("Party.PlayerNotInParty", new Object[] {args[1]}));
|
||||
return false;
|
||||
}
|
||||
String password = null;
|
||||
if(args.length > 2) password = args[2];
|
||||
|
||||
String partyTarget = partyManagerInstance.getPlayerParty(target.getName()).getName();
|
||||
Party newParty = partyManagerInstance.getParty(args[0]);
|
||||
String password = null;
|
||||
|
||||
if(args.length > 2) {
|
||||
password = args[2];
|
||||
}
|
||||
|
||||
String partyTarget = PartyManager.getPlayerParty(target.getName()).getName();
|
||||
Party newParty = PartyManager.getParty(args[0]);
|
||||
|
||||
// Check to see if the party exists, and if it does, can the player join it?
|
||||
if (newParty != null && !partyManagerInstance.checkJoinability(player, newParty, null)) {
|
||||
if (newParty != null && !PartyManager.checkJoinability(player, newParty, null)) {
|
||||
return true; // End before any event is fired.
|
||||
}
|
||||
|
||||
if (party != null) {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, party.getName(), partyTarget, EventReason.CHANGED_PARTIES);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
partyManagerInstance.removeFromParty(playerName, party);
|
||||
|
||||
PartyManager.removeFromParty(playerName, party);
|
||||
}
|
||||
else {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, null, partyTarget, EventReason.JOINED_PARTY);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
partyManagerInstance.joinParty(player, playerProfile, partyTarget, password);
|
||||
PartyManager.joinParty(player, playerProfile, partyTarget, password);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
private boolean accept(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.accept"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.accept")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
if (playerProfile.hasPartyInvite()) {
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
|
||||
if (playerProfile.inParty()) {
|
||||
Party party = playerProfile.getParty();
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, party.getName(), playerProfile.getInvite().getName(), EventReason.CHANGED_PARTIES);
|
||||
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
partyManagerInstance.removeFromParty(player.getName(), party);
|
||||
PartyManager.removeFromParty(player.getName(), party);
|
||||
}
|
||||
else {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, null, playerProfile.getInvite().getName(), EventReason.JOINED_PARTY);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
partyManagerInstance.joinInvitedParty(player, playerProfile);
|
||||
|
||||
PartyManager.joinInvitedParty(player, playerProfile);
|
||||
}
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("mcMMO.NoInvites"));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean create(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.create"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.create")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if(args.length < 2) {
|
||||
player.sendMessage(LocaleLoader.getString("Party.Help.1"));
|
||||
return true;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
String partyname = args[1];
|
||||
String password = null;
|
||||
if(args.length > 2) password = args[2];
|
||||
|
||||
Party newParty = partyManagerInstance.getParty(partyname);
|
||||
Party newParty = PartyManager.getParty(partyname);
|
||||
// Check to see if the party exists, and if it does cancel creating a new party
|
||||
if (newParty != null) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.AlreadyExists", new Object[] {partyname}));
|
||||
@ -253,68 +277,67 @@ public class PartyCommand implements CommandExecutor {
|
||||
if (playerProfile.inParty()) {
|
||||
String oldPartyName = party.getName();
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, oldPartyName, partyname, EventReason.CHANGED_PARTIES);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
partyManagerInstance.removeFromParty(playerName, party);
|
||||
partyManagerInstance.createParty(player, playerProfile, partyname, password);
|
||||
} else {
|
||||
PartyManager.removeFromParty(playerName, party);
|
||||
PartyManager.createParty(player, playerProfile, partyname, password);
|
||||
}
|
||||
else {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, null, partyname, EventReason.JOINED_PARTY);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
partyManagerInstance.createParty(player, playerProfile, partyname, password);
|
||||
PartyManager.createParty(player, playerProfile, partyname, password);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean quit(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.quit"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.quit")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if (party != null) {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(player, party.getName(), null, EventReason.LEFT_PARTY);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
partyManagerInstance.removeFromParty(playerName, party);
|
||||
PartyManager.removeFromParty(playerName, party);
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.Leave"));
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.None"));
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean expshare(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.expshare"))
|
||||
return true;
|
||||
return true;
|
||||
private boolean shareExp(CommandSender sender, String[] args) {
|
||||
return (!CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.expshare"));
|
||||
}
|
||||
|
||||
private boolean itemshare(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.itemshare"))
|
||||
return true;
|
||||
return true;
|
||||
private boolean shareItem(CommandSender sender, String[] args) {
|
||||
return (!CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.itemshare"));
|
||||
}
|
||||
|
||||
private boolean help(CommandSender sender, String[] args) {
|
||||
private boolean printHelp(CommandSender sender, String[] args) {
|
||||
Player player = (Player) sender;
|
||||
player.sendMessage(LocaleLoader.getString("Party.Help.3"));
|
||||
player.sendMessage(LocaleLoader.getString("Party.Help.1"));
|
||||
@ -327,8 +350,9 @@ public class PartyCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
private boolean invite(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.invite"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.invite")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
switch (args.length) {
|
||||
case 2:
|
||||
@ -340,14 +364,14 @@ public class PartyCommand implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player target = plugin.getServer().getPlayer(args[1]);
|
||||
Player target = mcMMO.p.getServer().getPlayer(args[1]);
|
||||
|
||||
if (target != null) {
|
||||
if (PartyManager.getInstance().inSameParty(player, target)) {
|
||||
if (PartyManager.inSameParty(player, target)) {
|
||||
player.sendMessage(LocaleLoader.getString("Party.Player.InSameParty"));
|
||||
return true;
|
||||
}
|
||||
if (PartyManager.getInstance().canInvite(player, playerProfile)) {
|
||||
if (PartyManager.canInvite(player, playerProfile)) {
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
Users.getProfile(target).setInvite(party);
|
||||
@ -360,6 +384,7 @@ public class PartyCommand implements CommandExecutor {
|
||||
player.sendMessage(LocaleLoader.getString("Party.Locked"));
|
||||
return true;
|
||||
}
|
||||
|
||||
player.sendMessage(LocaleLoader.getString("Party.Player.Invalid"));
|
||||
return true;
|
||||
|
||||
@ -373,13 +398,13 @@ public class PartyCommand implements CommandExecutor {
|
||||
* Kick a party member
|
||||
*/
|
||||
private boolean kick(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.kick"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.kick")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if (party.getLeader().equals(playerName)) {
|
||||
@ -388,22 +413,27 @@ public class PartyCommand implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player target = plugin.getServer().getOfflinePlayer(args[1]).getPlayer();
|
||||
Player target = mcMMO.p.getServer().getOfflinePlayer(args[1]).getPlayer();
|
||||
|
||||
if (target != null) {
|
||||
String partyName = party.getName();
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(target, partyName, null, EventReason.KICKED_FROM_PARTY);
|
||||
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
target.sendMessage(LocaleLoader.getString("Commands.Party.Kick", new Object[] {partyName}));
|
||||
}
|
||||
partyManagerInstance.removeFromParty(args[1], party);
|
||||
|
||||
PartyManager.removeFromParty(args[1], party);
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -411,59 +441,63 @@ public class PartyCommand implements CommandExecutor {
|
||||
* Disband the current party, kicks out all party members.
|
||||
*/
|
||||
private boolean disband(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.disband"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.disband")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if (party.getLeader().equals(playerName)) {
|
||||
for (Player onlineMembers : party.getOnlineMembers()) {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(onlineMembers, party.getName(), null, EventReason.KICKED_FROM_PARTY);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
onlineMembers.sendMessage(LocaleLoader.getString("Party.Disband"));
|
||||
}
|
||||
partyManagerInstance.disbandParty(party);
|
||||
|
||||
PartyManager.disbandParty(party);
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Change the owner of the current party
|
||||
*/
|
||||
private boolean owner(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.owner"))
|
||||
private boolean changeOwner(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.owner")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
|
||||
if(args.length < 2) {
|
||||
player.sendMessage("Usage: /party owner [player]");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (party.getLeader().equals(playerName)) {
|
||||
if (!party.getMembers().contains(args[1])) {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotInYourParty", new Object[] {args[1]}));
|
||||
return true;
|
||||
}
|
||||
partyManagerInstance.setPartyLeader(args[1], party);
|
||||
|
||||
PartyManager.setPartyLeader(args[1], party);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -471,8 +505,9 @@ public class PartyCommand implements CommandExecutor {
|
||||
* Lock the current party
|
||||
*/
|
||||
private boolean lock(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.lock"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.lock")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
@ -489,11 +524,14 @@ public class PartyCommand implements CommandExecutor {
|
||||
player.sendMessage(LocaleLoader.getString("Party.Locked"));
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage("Commands.Party.None");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -501,8 +539,9 @@ public class PartyCommand implements CommandExecutor {
|
||||
* Unlock the current party
|
||||
*/
|
||||
private boolean unlock(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.unlock"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.unlock")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
@ -519,24 +558,28 @@ public class PartyCommand implements CommandExecutor {
|
||||
player.sendMessage(LocaleLoader.getString("Party.Unlocked"));
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage("Commands.Party.None");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean password(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.password"))
|
||||
private boolean changePassword(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.password")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
Party party = playerProfile.getParty();
|
||||
|
||||
if(args.length < 2) {
|
||||
if (args.length < 2) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Usage.2", new Object[] {"party", "password", "<" + LocaleLoader.getString("Commands.Usage.Password") + ">"}));
|
||||
return true;
|
||||
}
|
||||
@ -546,8 +589,10 @@ public class PartyCommand implements CommandExecutor {
|
||||
party.setPassword(args[1]);
|
||||
player.sendMessage(LocaleLoader.getString("Party.PasswordSet", new Object[] {args[1]}));
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -555,25 +600,28 @@ public class PartyCommand implements CommandExecutor {
|
||||
* Rename the current party
|
||||
*/
|
||||
private boolean rename(CommandSender sender, String[] args) {
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.rename"))
|
||||
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party.rename")) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String playerName = player.getName();
|
||||
PlayerProfile playerProfile = Users.getProfile(player);
|
||||
|
||||
PartyManager partyManagerInstance = PartyManager.getInstance();
|
||||
Party party = playerProfile.getParty();
|
||||
String leader = party.getLeader();
|
||||
|
||||
if (party.getLeader().equals(playerName)) {
|
||||
if(args.length < 2) {
|
||||
if (args.length < 2) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Usage.2", new Object[] {"party", "rename", "<" + LocaleLoader.getString("Commands.Usage.PartyName") + ">"}));
|
||||
return true;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
String newPartyName = args[1];
|
||||
if (!party.getName().equals(newPartyName)) {//This is to prevent party leaders from spamming other players with the rename message
|
||||
Party newParty = partyManagerInstance.getParty(newPartyName);
|
||||
|
||||
// This is to prevent party leaders from spamming other players with the rename message
|
||||
if (!party.getName().equals(newPartyName)) {
|
||||
Party newParty = PartyManager.getParty(newPartyName);
|
||||
|
||||
// Check to see if the party exists, and if it does cancel renaming the party
|
||||
if (newParty != null) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.AlreadyExists", new Object[] {newPartyName}));
|
||||
@ -582,7 +630,7 @@ public class PartyCommand implements CommandExecutor {
|
||||
|
||||
for (Player onlineMembers : party.getOnlineMembers()) {
|
||||
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(onlineMembers, party.getName(), newPartyName, EventReason.CHANGED_PARTIES);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return true;
|
||||
@ -592,13 +640,17 @@ public class PartyCommand implements CommandExecutor {
|
||||
onlineMembers.sendMessage(LocaleLoader.getString("Party.InformedOnNameChange", new Object[] {leader, newPartyName}));
|
||||
}
|
||||
}
|
||||
|
||||
party.setName(newPartyName);
|
||||
}
|
||||
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.Rename", new Object[] {newPartyName}));
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -61,7 +61,7 @@ public class PtpCommand implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (PartyManager.getInstance().inSameParty(player, target)) {
|
||||
if (PartyManager.inSameParty(player, target)) {
|
||||
McMMOPartyTeleportEvent event = new McMMOPartyTeleportEvent(player, target, profile.getParty().getName());
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
|
Reference in New Issue
Block a user