diff --git a/.gitignore b/.gitignore
index 744003a..6a87f9d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,6 @@
-.idea/
+/.idea/artifacts
+/.idea/libraries
+/.idea/workspace.xml
+/.idea/modules.xml
target/
out/
\ No newline at end of file
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..9898a0e
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..0f7bc51
--- /dev/null
+++ b/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..d04fbec
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000..aa00ffa
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..90ad631
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TFGuilds.iml b/TFGuilds.iml
index c1e8347..b342fbd 100644
--- a/TFGuilds.iml
+++ b/TFGuilds.iml
@@ -25,7 +25,7 @@
-
+
diff --git a/pom.xml b/pom.xml
index 798e08f..4cdfe0b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
me.totalfreedom
TFGuilds
- 0.2.4
+ 0.2.6
jar
TFGuilds
diff --git a/src/main/java/me/totalfreedom/tfguilds/Common.java b/src/main/java/me/totalfreedom/tfguilds/Common.java
index 2b66001..62bca33 100644
--- a/src/main/java/me/totalfreedom/tfguilds/Common.java
+++ b/src/main/java/me/totalfreedom/tfguilds/Common.java
@@ -22,6 +22,7 @@ public class Common
public static Map INVITES = new HashMap<>();
public static List IN_GUILD_CHAT = new ArrayList<>();
+ public static List CHAT_SPY = new ArrayList<>();
public static String tl(String in)
{
diff --git a/src/main/java/me/totalfreedom/tfguilds/TFGuilds.java b/src/main/java/me/totalfreedom/tfguilds/TFGuilds.java
index 33dc201..178ef0a 100644
--- a/src/main/java/me/totalfreedom/tfguilds/TFGuilds.java
+++ b/src/main/java/me/totalfreedom/tfguilds/TFGuilds.java
@@ -2,6 +2,7 @@ package me.totalfreedom.tfguilds;
import me.totalfreedom.tfguilds.bridge.TFMBridge;
import me.totalfreedom.tfguilds.command.GuildChatCommand;
+import me.totalfreedom.tfguilds.command.GuildChatSpyCommand;
import me.totalfreedom.tfguilds.command.GuildCommand;
import me.totalfreedom.tfguilds.command.TFGuildsCommand;
import me.totalfreedom.tfguilds.config.Config;
@@ -49,6 +50,7 @@ public final class TFGuilds extends JavaPlugin
this.getCommand("guild").setExecutor(new GuildCommand());
this.getCommand("guildchat").setExecutor(new GuildChatCommand());
this.getCommand("tfguilds").setExecutor(new TFGuildsCommand());
+ this.getCommand("guildchatspy").setExecutor(new GuildChatSpyCommand());
}
private void loadListeners()
diff --git a/src/main/java/me/totalfreedom/tfguilds/bridge/TFMBridge.java b/src/main/java/me/totalfreedom/tfguilds/bridge/TFMBridge.java
index fedeaf7..4d36a2c 100644
--- a/src/main/java/me/totalfreedom/tfguilds/bridge/TFMBridge.java
+++ b/src/main/java/me/totalfreedom/tfguilds/bridge/TFMBridge.java
@@ -26,7 +26,7 @@ public class TFMBridge
final Plugin tfm = plugin.getServer().getPluginManager().getPlugin("TotalFreedomMod");
if (tfm != null && tfm instanceof TotalFreedomMod)
{
- tfmPlugin = (TotalFreedomMod) tfm;
+ tfmPlugin = (TotalFreedomMod)tfm;
}
}
catch (Exception ex)
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/AddModSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/AddModSubcommand.java
index 607daee..fd9d967 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/AddModSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/AddModSubcommand.java
@@ -17,7 +17,10 @@ public class AddModSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length == 1 || args.length > 3)
+ {
return false;
+ }
+
if (args.length == 3)
{
if (!plugin.bridge.isAdmin(sender))
@@ -25,77 +28,91 @@ public class AddModSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
Guild guild = Guild.getGuild(args[1]);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
Player player = Bukkit.getPlayer(args[2]);
if (player == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(player.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in the specified guild!");
return true;
}
+
if (guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "No need to make the owner a moderator!");
return true;
}
+
if (guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "This member is already a moderator for this guild!");
return true;
}
+
guild.addModerator(player.getName());
sender.sendMessage(tl(PREFIX + "Added %s%" + player.getName() + "%p% as a moderator for %s%" + GUtil.colorize(guild.getName()) + "%p%."));
guild.broadcast(tl("%s%" + player.getName() + " %p%has been made a moderator of your guild."));
guild.save();
return true;
}
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't change who is a moderator in your guild!");
return true;
}
+
Player n = Bukkit.getPlayer(args[1]);
if (n == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (guild.getOwner().equals(n.getName()))
{
sender.sendMessage(ChatColor.RED + "No need to make yourself a moderator!");
return true;
}
+
if (!guild.hasMember(n.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in your guild!");
return true;
}
+
if (guild.hasModerator(n.getName()))
{
sender.sendMessage(ChatColor.RED + "This member is already a moderator for your guild!");
return true;
}
+
guild.addModerator(n.getName());
sender.sendMessage(tl(PREFIX + "Added %s%" + n.getName() + "%p% as a moderator for your guild."));
guild.broadcast(tl("%s%" + n.getName() + " %p%has been made a moderator of your guild."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/ChatSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/ChatSubcommand.java
index 30cf988..5a1f1e2 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/ChatSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/ChatSubcommand.java
@@ -20,25 +20,29 @@ public class ChatSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (args.length >= 2)
{
String message = StringUtils.join(args, " ", 1, args.length);
guild.chat(player.getName(), message);
return true;
}
+
if (IN_GUILD_CHAT.contains(player))
{
IN_GUILD_CHAT.remove(player);
sender.sendMessage(tl("%p%Guild chat toggled off."));
return true;
}
+
IN_GUILD_CHAT.add(player);
sender.sendMessage(tl("%p%Guild chat toggled on."));
return true;
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/CreateRankSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/CreateRankSubcommand.java
index 35a4f1c..931baba 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/CreateRankSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/CreateRankSubcommand.java
@@ -2,7 +2,6 @@ package me.totalfreedom.tfguilds.command;
import me.totalfreedom.tfguilds.Common;
import me.totalfreedom.tfguilds.guild.Guild;
-import me.totalfreedom.tfguilds.util.GUtil;
import org.apache.commons.lang3.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
@@ -21,26 +20,33 @@ public class CreateRankSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
if (args.length < 2)
+ {
return false;
- Player player = (Player) sender;
+ }
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't create ranks for your guild!");
return true;
}
+
String rank = StringUtils.join(args, " ", 1, args.length);
if (guild.hasRank(rank))
{
sender.sendMessage(ChatColor.RED + "A rank of that name already exists in the guild!");
return true;
}
+
guild.addRank(rank);
sender.sendMessage(tl(PREFIX + "Created a new rank named %s%" + rank + "%p% for your guild."));
guild.save();
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/CreateSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/CreateSubcommand.java
index c682767..94b0afb 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/CreateSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/CreateSubcommand.java
@@ -27,9 +27,11 @@ public class CreateSubcommand extends Common implements CommandExecutor
}
if (args.length < 2)
+ {
return false;
+ }
- Player player = (Player) sender;
+ Player player = (Player)sender;
String name = StringUtils.join(args, " ", 1, args.length);
String identifier = GUtil.flatten(name);
@@ -77,4 +79,4 @@ public class CreateSubcommand extends Common implements CommandExecutor
Bukkit.broadcastMessage(GUtil.colorize(tl("%p%" + sender.getName() + " has created guild %p%&l" + name)));
return true;
}
-}
+}
\ No newline at end of file
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/DeleteRankSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/DeleteRankSubcommand.java
index 9090502..e328472 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/DeleteRankSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/DeleteRankSubcommand.java
@@ -20,26 +20,33 @@ public class DeleteRankSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
if (args.length < 2)
+ {
return false;
- Player player = (Player) sender;
+ }
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't delete ranks from your guild!");
return true;
}
+
String rank = StringUtils.join(args, " ", 1, args.length);
if (!guild.hasRank(rank))
{
sender.sendMessage(ChatColor.RED + "A rank of that name does not exist in the guild!");
return true;
}
+
guild.removeRank(rank);
sender.sendMessage(tl(PREFIX + "Deleted the rank named %s%" + rank + "%p% in your guild."));
guild.save();
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/DisbandSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/DisbandSubcommand.java
index 5fca6cc..3752841 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/DisbandSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/DisbandSubcommand.java
@@ -18,8 +18,10 @@ public class DisbandSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length > 2)
+ {
return false;
-
+ }
+
if (args.length == 2)
{
if (!plugin.bridge.isAdmin(sender))
@@ -49,7 +51,7 @@ public class DisbandSubcommand extends Common implements CommandExecutor
return true;
}
- Player player = (Player) sender;
+ Player player = (Player)sender;
if (!Guild.isInGuild(player))
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/GuildChatCommand.java b/src/main/java/me/totalfreedom/tfguilds/command/GuildChatCommand.java
index 9b90910..7a035c8 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/GuildChatCommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/GuildChatCommand.java
@@ -20,25 +20,29 @@ public class GuildChatCommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (args.length >= 1)
{
String message = StringUtils.join(args, " ", 0, args.length);
guild.chat(player.getName(), message);
return true;
}
+
if (IN_GUILD_CHAT.contains(player))
{
IN_GUILD_CHAT.remove(player);
sender.sendMessage(tl("%p%Guild chat toggled off."));
return true;
}
+
IN_GUILD_CHAT.add(player);
sender.sendMessage(tl("%p%Guild chat toggled on."));
return true;
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/GuildChatSpyCommand.java b/src/main/java/me/totalfreedom/tfguilds/command/GuildChatSpyCommand.java
new file mode 100644
index 0000000..a05960e
--- /dev/null
+++ b/src/main/java/me/totalfreedom/tfguilds/command/GuildChatSpyCommand.java
@@ -0,0 +1,39 @@
+package me.totalfreedom.tfguilds.command;
+
+import me.totalfreedom.tfguilds.Common;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.command.CommandSender;
+import org.bukkit.command.ConsoleCommandSender;
+import org.bukkit.entity.Player;
+
+public class GuildChatSpyCommand extends Common implements CommandExecutor
+{
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
+ {
+ if (sender instanceof ConsoleCommandSender)
+ {
+ sender.sendMessage(NO_PERMS);
+ return true;
+ }
+
+ if (!plugin.bridge.isAdmin(sender))
+ {
+ sender.sendMessage(NO_PERMS);
+ return true;
+ }
+
+ Player player = (Player)sender;
+ if (CHAT_SPY.contains(player))
+ {
+ CHAT_SPY.remove(player);
+ sender.sendMessage(tl(PREFIX + "%p%Global guild chat spy disabled."));
+ return true;
+ }
+
+ CHAT_SPY.add(player);
+ sender.sendMessage(tl(PREFIX + "%p%Global guild chat spy enabled."));
+ return true;
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/GuildCommand.java b/src/main/java/me/totalfreedom/tfguilds/command/GuildCommand.java
index 3f4f946..2965ebd 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/GuildCommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/GuildCommand.java
@@ -14,29 +14,52 @@ public class GuildCommand extends Common implements CommandExecutor
{
switch (args[0].toLowerCase())
{
- case "list": return new ListSubcommand().onCommand(sender, command, label, args);
- case "help": return new HelpSubcommand().onCommand(sender, command, label, args);
- case "create": return new CreateSubcommand().onCommand(sender, command, label, args);
- case "disband": return new DisbandSubcommand().onCommand(sender, command, label, args);
- case "invite": return new InviteSubcommand().onCommand(sender, command, label, args);
- case "addmod": return new AddModSubcommand().onCommand(sender, command, label, args);
- case "removemod": return new RemoveModSubcommand().onCommand(sender, command, label, args);
- case "setowner": return new SetOwnerSubcommand().onCommand(sender, command, label, args);
- case "setstate": return new SetStateSubcommand().onCommand(sender, command, label, args);
- case "kick": return new KickSubcommand().onCommand(sender, command, label, args);
- case "leave": return new LeaveSubcommand().onCommand(sender, command, label, args);
- case "tp": return new TPSubcommand().onCommand(sender, command, label, args);
- case "info": return new InfoSubcommand().onCommand(sender, command, label, args);
- case "tag": return new TagSubcommand().onCommand(sender, command, label, args);
- case "chat": return new ChatSubcommand().onCommand(sender, command, label, args);
- case "join": return new JoinSubcommand().onCommand(sender, command, label, args);
- case "rename": return new RenameSubcommand().onCommand(sender, command, label, args);
- case "createrank": return new CreateRankSubcommand().onCommand(sender, command, label, args);
- case "deleterank": return new DeleteRankSubcommand().onCommand(sender, command, label, args);
- case "setrank": return new SetRankSubcommand().onCommand(sender, command, label, args);
- case "motd": return new MOTDSubcommand().onCommand(sender, command, label, args);
- case "home": return new HomeSubcommand().onCommand(sender, command, label, args);
- case "roster": return new RosterSubcommand().onCommand(sender, command, label, args);
+ case "list":
+ return new ListSubcommand().onCommand(sender, command, label, args);
+ case "help":
+ return new HelpSubcommand().onCommand(sender, command, label, args);
+ case "create":
+ return new CreateSubcommand().onCommand(sender, command, label, args);
+ case "disband":
+ return new DisbandSubcommand().onCommand(sender, command, label, args);
+ case "invite":
+ return new InviteSubcommand().onCommand(sender, command, label, args);
+ case "addmod":
+ return new AddModSubcommand().onCommand(sender, command, label, args);
+ case "removemod":
+ return new RemoveModSubcommand().onCommand(sender, command, label, args);
+ case "setowner":
+ return new SetOwnerSubcommand().onCommand(sender, command, label, args);
+ case "setstate":
+ return new SetStateSubcommand().onCommand(sender, command, label, args);
+ case "kick":
+ return new KickSubcommand().onCommand(sender, command, label, args);
+ case "leave":
+ return new LeaveSubcommand().onCommand(sender, command, label, args);
+ case "tp":
+ return new TPSubcommand().onCommand(sender, command, label, args);
+ case "info":
+ return new InfoSubcommand().onCommand(sender, command, label, args);
+ case "tag":
+ return new TagSubcommand().onCommand(sender, command, label, args);
+ case "chat":
+ return new ChatSubcommand().onCommand(sender, command, label, args);
+ case "join":
+ return new JoinSubcommand().onCommand(sender, command, label, args);
+ case "rename":
+ return new RenameSubcommand().onCommand(sender, command, label, args);
+ case "createrank":
+ return new CreateRankSubcommand().onCommand(sender, command, label, args);
+ case "deleterank":
+ return new DeleteRankSubcommand().onCommand(sender, command, label, args);
+ case "setrank":
+ return new SetRankSubcommand().onCommand(sender, command, label, args);
+ case "motd":
+ return new MOTDSubcommand().onCommand(sender, command, label, args);
+ case "home":
+ return new HomeSubcommand().onCommand(sender, command, label, args);
+ case "roster":
+ return new RosterSubcommand().onCommand(sender, command, label, args);
}
return false;
}
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/HomeSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/HomeSubcommand.java
index 3af3de1..cc29894 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/HomeSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/HomeSubcommand.java
@@ -17,19 +17,24 @@ public class HomeSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length > 2)
+ {
return false;
+ }
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (args.length == 2)
{
if (args[1].equalsIgnoreCase("set"))
@@ -39,6 +44,7 @@ public class HomeSubcommand extends Common implements CommandExecutor
sender.sendMessage(ChatColor.RED + "You can't modify your guild's home!");
return true;
}
+
guild.setHome(player.getLocation());
guild.save();
sender.sendMessage(tl(PREFIX + "Set your current location as the new home of your guild%p%."));
@@ -46,11 +52,13 @@ public class HomeSubcommand extends Common implements CommandExecutor
}
return false;
}
+
if (!guild.hasHome())
{
sender.sendMessage(ChatColor.RED + "Your guild doesn't have a home!");
return true;
}
+
player.teleport(guild.getHome());
sender.sendMessage(tl("%p%Teleported you to your guild's home!"));
return true;
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/InfoSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/InfoSubcommand.java
index 97d6706..938ab2a 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/InfoSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/InfoSubcommand.java
@@ -29,26 +29,31 @@ public class InfoSubcommand extends Common implements CommandExecutor
return true;
}
}
+
Guild guild = Guild.getGuild(GUtil.flatten(StringUtils.join(args, " ", 1, args.length)));
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
sender.sendMessage(guild.getInformation());
return true;
}
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Guild guild = Guild.getGuild((Player) sender);
+
+ Guild guild = Guild.getGuild((Player)sender);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
sender.sendMessage(guild.getInformation());
return true;
}
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/InviteSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/InviteSubcommand.java
index 66e5f89..fd60780 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/InviteSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/InviteSubcommand.java
@@ -23,11 +23,13 @@ public class InviteSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
-
+
if (args.length != 2)
+ {
return false;
-
- Player player = (Player) sender;
+ }
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
Player invitee = Bukkit.getPlayer(args[1]);
if (invitee == null)
@@ -35,37 +37,37 @@ public class InviteSubcommand extends Common implements CommandExecutor
sender.sendMessage(PNF);
return true;
}
-
+
if (Guild.getGuild(invitee) != null)
{
sender.sendMessage(ChatColor.RED + "This player is already in another guild!");
return true;
}
-
+
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
-
+
if (guild.getState() == GuildState.CLOSED)
{
sender.sendMessage(ChatColor.RED + "The guild is currently closed!");
return true;
}
-
+
if (guild.getState() == GuildState.OPEN)
{
sender.sendMessage(ChatColor.RED + "The guild is open! Tell your friend to join using \"/g join\"!");
return true;
}
-
+
if (INVITES.containsKey(invitee))
{
sender.sendMessage(ChatColor.RED + "They have already been invited to your guild!");
return true;
}
-
+
INVITES.put(invitee, guild);
invitee.sendMessage(tl("%p%You have been invited to join %s%" + GUtil.colorize(guild.getName()) + "%p% through %s%" + player.getName() + "%p%'s invite!"));
invitee.sendMessage(tl("%p%Do %s%/g join " + ChatColor.stripColor(GUtil.colorize(guild.getName())) + "%p% to join!"));
@@ -76,7 +78,9 @@ public class InviteSubcommand extends Common implements CommandExecutor
public void run()
{
if (!INVITES.containsKey(invitee))
+ {
return;
+ }
INVITES.remove(player);
invitee.sendMessage(ChatColor.RED + "Invite expired.");
sender.sendMessage(ChatColor.RED + "Invite expired.");
@@ -84,4 +88,4 @@ public class InviteSubcommand extends Common implements CommandExecutor
}.runTaskLater(plugin, 20 * 90);
return true;
}
-}
+}
\ No newline at end of file
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/JoinSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/JoinSubcommand.java
index 81cae35..bd6e52e 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/JoinSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/JoinSubcommand.java
@@ -22,25 +22,32 @@ public class JoinSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
if (args.length < 2)
+ {
return false;
- Player player = (Player) sender;
+ }
+
+ Player player = (Player)sender;
if (Guild.getGuild(player) != null)
{
sender.sendMessage(ChatColor.RED + "You are already in a guild!");
return true;
}
+
Guild guild = Guild.getGuild(GUtil.flatten(StringUtils.join(args, " ", 1, args.length)));
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
if (guild.getState() == GuildState.CLOSED)
{
sender.sendMessage(ChatColor.RED + "That guild is currently closed!");
return true;
}
+
if (guild.getState() == GuildState.INVITE_ONLY)
{
if (!INVITES.containsKey(player))
@@ -50,6 +57,7 @@ public class JoinSubcommand extends Common implements CommandExecutor
}
INVITES.remove(player);
}
+
guild.addMember(player.getName());
guild.broadcast(tl("%s%" + player.getName() + " %p%has joined your guild!"));
guild.save();
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/KickSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/KickSubcommand.java
index 83f1f0e..5536269 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/KickSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/KickSubcommand.java
@@ -17,7 +17,10 @@ public class KickSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length > 3)
+ {
return false;
+ }
+
if (args.length == 3)
{
if (!plugin.bridge.isAdmin(sender))
@@ -25,28 +28,33 @@ public class KickSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
Guild guild = Guild.getGuild(args[1]);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
Player player = Bukkit.getPlayer(args[2]);
if (player == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(player.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in the specified guild!");
return true;
}
+
if (guild.getOwner().equals(player.getName()) || guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You cannot kick the owner/moderator(s) of a guild!");
return true;
}
+
guild.removeMember(player.getName());
sender.sendMessage(tl(PREFIX + "Kicked %s%" + player.getName() + "%p% from %s%" + GUtil.colorize(guild.getName()) + "%p%."));
player.sendMessage(tl("%s%You have been kicked from your guild."));
@@ -54,44 +62,52 @@ public class KickSubcommand extends Common implements CommandExecutor
guild.save();
return true;
}
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't kick people from your guild!");
return true;
}
+
Player n = Bukkit.getPlayer(args[1]);
if (n == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (guild.getOwner().equals(n.getName()))
{
sender.sendMessage(ChatColor.RED + "No need to make yourself a moderator!");
return true;
}
+
if (!guild.hasMember(n.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in your guild!");
return true;
}
+
if ((guild.getOwner().equals(n.getName()) || guild.hasModerator(n.getName())) && !guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You cannot kick the owner/moderator(s) of a guild!");
return true;
}
+
guild.removeMember(n.getName());
sender.sendMessage(tl(PREFIX + "Kicked %s%" + n.getName() + "%p% from your guild."));
n.sendMessage(tl("%s%You have been kicked from your guild."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/LeaveSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/LeaveSubcommand.java
index ef3330f..812d924 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/LeaveSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/LeaveSubcommand.java
@@ -15,24 +15,30 @@ public class LeaveSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length > 1)
+ {
return false;
+ }
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You cannot leave as you are the owner!");
return true;
}
+
guild.removeModerator(player.getName());
guild.removeMember(player.getName());
guild.save();
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/MOTDSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/MOTDSubcommand.java
index ac8ec67..a0eae58 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/MOTDSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/MOTDSubcommand.java
@@ -2,10 +2,8 @@ package me.totalfreedom.tfguilds.command;
import me.totalfreedom.tfguilds.Common;
import me.totalfreedom.tfguilds.guild.Guild;
-import me.totalfreedom.tfguilds.guild.GuildRank;
import me.totalfreedom.tfguilds.util.GUtil;
import org.apache.commons.lang3.StringUtils;
-import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
@@ -19,24 +17,30 @@ public class MOTDSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length == 1)
+ {
return false;
+ }
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't modify your guild's MOTD!");
return true;
}
+
if (args.length >= 3)
{
if (args[1].equalsIgnoreCase("set"))
@@ -49,8 +53,12 @@ public class MOTDSubcommand extends Common implements CommandExecutor
}
return false;
}
+
if (!args[1].equalsIgnoreCase("clear"))
+ {
return false;
+ }
+
guild.setMotd(null);
guild.save();
sender.sendMessage(tl(PREFIX + "Cleared your guild's MOTD."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/RemoveModSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/RemoveModSubcommand.java
index a041570..ef9e7af 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/RemoveModSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/RemoveModSubcommand.java
@@ -17,7 +17,10 @@ public class RemoveModSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length == 1 || args.length > 3)
+ {
return false;
+ }
+
if (args.length == 3)
{
if (!plugin.bridge.isAdmin(sender))
@@ -25,67 +28,79 @@ public class RemoveModSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
Guild guild = Guild.getGuild(args[1]);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
Player player = Bukkit.getPlayer(args[2]);
if (player == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(player.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in the specified guild!");
return true;
}
+
if (!guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "This member is not a moderator for this guild!");
return true;
}
+
guild.removeModerator(player.getName());
sender.sendMessage(tl(PREFIX + "Removed %s%" + player.getName() + "%p% as a moderator for %s%" + GUtil.colorize(guild.getName()) + "%p%."));
guild.broadcast(tl("%s%" + player.getName() + " %p%has been made a member of your guild."));
guild.save();
return true;
}
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't change who is a moderator in your guild!");
return true;
}
+
Player n = Bukkit.getPlayer(args[1]);
if (n == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(n.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in your guild!");
return true;
}
+
if (!guild.hasModerator(n.getName()))
{
sender.sendMessage(ChatColor.RED + "This member is not a moderator for your guild!");
return true;
}
+
guild.removeModerator(n.getName());
sender.sendMessage(tl(PREFIX + "Removed %s%" + n.getName() + "%p% as a moderator for your guild."));
guild.broadcast(tl("%s%" + n.getName() + " %p%has been made a member of your guild."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/RenameSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/RenameSubcommand.java
index f7c0b1e..dad1a80 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/RenameSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/RenameSubcommand.java
@@ -20,13 +20,17 @@ public class RenameSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length < 2)
+ {
return false;
+ }
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
String newName = StringUtils.join(args, " ", 1, args.length);
String identifier = GUtil.flatten(newName);
@@ -35,6 +39,7 @@ public class RenameSubcommand extends Common implements CommandExecutor
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't change the name of your guild!");
@@ -67,6 +72,7 @@ public class RenameSubcommand extends Common implements CommandExecutor
}
}
}
+
guild.disband();
guild.setIdentifier(GUtil.flatten(newName));
guild.setName(newName);
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/RosterSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/RosterSubcommand.java
index 6d45c93..03be36f 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/RosterSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/RosterSubcommand.java
@@ -47,7 +47,7 @@ public class RosterSubcommand extends Common implements CommandExecutor
return true;
}
- Guild guild = Guild.getGuild((Player) sender);
+ Guild guild = Guild.getGuild((Player)sender);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/SetOwnerSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/SetOwnerSubcommand.java
index e37805b..02a1629 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/SetOwnerSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/SetOwnerSubcommand.java
@@ -17,7 +17,10 @@ public class SetOwnerSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length == 1 || args.length > 3)
+ {
return false;
+ }
+
if (args.length == 3)
{
if (!plugin.bridge.isAdmin(sender))
@@ -25,23 +28,27 @@ public class SetOwnerSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
Guild guild = Guild.getGuild(args[1]);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
Player player = Bukkit.getPlayer(args[2]);
if (player == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(player.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in the specified guild!");
return true;
}
+
guild.removeModerator(player.getName());
guild.setOwner(player.getName());
sender.sendMessage(tl(PREFIX + "Ownership has been transferred to %s%" + player.getName() + "%p% in %s%" + GUtil.colorize(guild.getName()) + "%p%."));
@@ -49,34 +56,40 @@ public class SetOwnerSubcommand extends Common implements CommandExecutor
guild.save();
return true;
}
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.getOwner().equals(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't change who is the owner of your guild!");
return true;
}
+
Player n = Bukkit.getPlayer(args[1]);
if (n == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(n.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in your guild!");
return true;
}
+
guild.removeModerator(n.getName());
guild.setOwner(n.getName());
sender.sendMessage(tl(PREFIX + "Ownership has been transferred to %s%" + n.getName() + "%p% in your guild."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/SetRankSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/SetRankSubcommand.java
index 783d9c9..80db8f8 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/SetRankSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/SetRankSubcommand.java
@@ -18,55 +18,71 @@ public class SetRankSubcommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length == 1)
+ {
return false;
+ }
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't change the ranks of your guild members!");
return true;
}
+
Player r = Bukkit.getPlayer(args[1]);
if (r == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.hasMember(r.getName()))
{
sender.sendMessage(ChatColor.RED + "This player is not in your guild!");
return true;
}
+
String name = StringUtils.join(args, " ", 2, args.length);
if (name.toLowerCase().equals("members") ||
name.toLowerCase().equals("member") ||
name.toLowerCase().equals("none"))
{
for (GuildRank gr : guild.getRanks())
+ {
gr.getMembers().remove(r.getName());
+ }
+
sender.sendMessage(tl(PREFIX + "Removed the rank of %s%" + r.getName() + "%p% in your guild."));
r.sendMessage(tl("%p%Your rank in your guild has been removed."));
guild.save();
return true;
}
+
GuildRank rank = guild.getRank(name);
if (rank == null)
{
sender.sendMessage(ChatColor.RED + "A rank of that name does not exist in the guild!");
return true;
}
+
for (GuildRank gr : guild.getRanks())
+ {
gr.getMembers().remove(r.getName());
+ }
+
rank.getMembers().add(r.getName());
sender.sendMessage(tl(PREFIX + "Set the rank of %s%" + r.getName() + "%p% in your guild to %s%" + rank.getName() + "%p%."));
r.sendMessage(tl("%p%Your rank in your guild has been set to %s%" + rank.getName() + "%p%."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/SetStateSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/SetStateSubcommand.java
index 07ee264..4b484ba 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/SetStateSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/SetStateSubcommand.java
@@ -23,47 +23,55 @@ public class SetStateSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
Guild guild = Guild.getGuild(args[1]);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "That guild doesn't exist!");
return true;
}
+
GuildState state = GuildState.findState(args[2]);
if (state == null)
{
sender.sendMessage(ChatColor.RED + "That is not a valid state!");
return true;
}
+
guild.setState(state);
sender.sendMessage(tl(PREFIX + "Set the guild state to %s%" + state.getDisplay().toLowerCase() + "%p% in %s%" + GUtil.colorize(guild.getName()) + "%p%."));
guild.broadcast(tl("%p%The guild is now %s%" + state.getDisplay().toLowerCase() + "%p%."));
guild.save();
return true;
}
+
if (sender instanceof ConsoleCommandSender)
{
sender.sendMessage(NO_PERMS);
return true;
}
- Player player = (Player) sender;
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
if (!guild.hasModerator(player.getName()))
{
sender.sendMessage(ChatColor.RED + "You can't change the state of the guild!");
return true;
}
+
GuildState state = GuildState.findState(args[1]);
if (state == null)
{
sender.sendMessage(ChatColor.RED + "That is not a valid state!");
return true;
}
+
guild.setState(state);
sender.sendMessage(tl(PREFIX + "Set the guild state to %s%" + state.getDisplay().toLowerCase() + "%p% in your guild."));
guild.broadcast(tl("%p%The guild is now %s%" + state.getDisplay().toLowerCase() + "%p%."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/TFGuildsCommand.java b/src/main/java/me/totalfreedom/tfguilds/command/TFGuildsCommand.java
index 3e32cd2..188682e 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/TFGuildsCommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/TFGuildsCommand.java
@@ -16,7 +16,10 @@ public class TFGuildsCommand extends Common implements CommandExecutor
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if (args.length > 1)
+ {
return false;
+ }
+
if (args.length == 1)
{
if (args[0].toLowerCase().equals("reload"))
@@ -26,6 +29,7 @@ public class TFGuildsCommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
try
{
plugin.config.load();
@@ -40,8 +44,8 @@ public class TFGuildsCommand extends Common implements CommandExecutor
}
return true;
}
-
}
+
sender.sendMessage(tl("%p%TFGuilds %s%is a plugin which allows for players to make their own guilds, providing guild chat, guild teleportation, and more."));
sender.sendMessage(tl("%s%Version %p%v" + plugin.getDescription().getVersion()));
OfflinePlayer sp = Bukkit.getOfflinePlayer(UUID.fromString("d018f2b8-ce60-4672-a45f-e580e0331299"));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/TPSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/TPSubcommand.java
index 6daccf6..40ffdb2 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/TPSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/TPSubcommand.java
@@ -20,26 +20,33 @@ public class TPSubcommand extends Common implements CommandExecutor
sender.sendMessage(NO_PERMS);
return true;
}
+
if (args.length != 2)
+ {
return false;
- Player player = (Player) sender;
+ }
+
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
return true;
}
+
Player to = Bukkit.getPlayer(args[1]);
if (to == null)
{
sender.sendMessage(PNF);
return true;
}
+
if (!guild.getMembers().contains(to.getName()))
{
sender.sendMessage(ChatColor.RED + "That player is not in your guild.");
return true;
}
+
player.teleport(to.getLocation());
sender.sendMessage(tl("%p%Teleported to %s%" + to.getName() + "%p%."));
to.sendMessage(tl("%s%" + sender.getName() + " %p%has teleported to you."));
diff --git a/src/main/java/me/totalfreedom/tfguilds/command/TagSubcommand.java b/src/main/java/me/totalfreedom/tfguilds/command/TagSubcommand.java
index 186e50e..bdde8b7 100644
--- a/src/main/java/me/totalfreedom/tfguilds/command/TagSubcommand.java
+++ b/src/main/java/me/totalfreedom/tfguilds/command/TagSubcommand.java
@@ -23,9 +23,11 @@ public class TagSubcommand extends Common implements CommandExecutor
}
if (args.length < 2)
+ {
return false;
+ }
- Player player = (Player) sender;
+ Player player = (Player)sender;
Guild guild = Guild.getGuild(player);
if (guild == null)
{
diff --git a/src/main/java/me/totalfreedom/tfguilds/guild/Guild.java b/src/main/java/me/totalfreedom/tfguilds/guild/Guild.java
index 099f229..a2f91b4 100644
--- a/src/main/java/me/totalfreedom/tfguilds/guild/Guild.java
+++ b/src/main/java/me/totalfreedom/tfguilds/guild/Guild.java
@@ -95,7 +95,9 @@ public class Guild
plugin.guilds.set(identifier + ".tag", tag);
plugin.guilds.set(identifier + ".state", state.name());
for (GuildRank rank : ranks)
+ {
rank.set();
+ }
plugin.guilds.set(identifier + ".motd", motd);
plugin.guilds.set(identifier + ".home", home);
plugin.guilds.set(identifier + ".creation", creation);
@@ -111,7 +113,10 @@ public class Guild
{
Player player = Bukkit.getPlayer(name);
if (player != null)
+ {
Common.IN_GUILD_CHAT.remove(player);
+ }
+
members.remove(name);
moderators.remove(name);
}
@@ -134,7 +139,10 @@ public class Guild
public boolean hasModerator(String name)
{
if (owner.equals(name))
+ {
return true;
+ }
+
return moderators.contains(name);
}
@@ -149,10 +157,16 @@ public class Guild
for (GuildRank rank : ranks)
{
if (GUtil.flatten(name).equals(rank.getIdentifier()))
+ {
remove = rank;
+ }
}
+
if (remove == null)
+ {
return;
+ }
+
remove.delete();
ranks.remove(remove);
}
@@ -162,7 +176,9 @@ public class Guild
for (GuildRank rank : ranks)
{
if (GUtil.flatten(name).equals(rank.getIdentifier()))
+ {
return true;
+ }
}
return false;
}
@@ -172,7 +188,9 @@ public class Guild
for (GuildRank rank : ranks)
{
if (GUtil.flatten(name).equals(rank.getIdentifier()))
+ {
return rank;
+ }
}
return null;
}
@@ -209,7 +227,9 @@ public class Guild
for (String member : members)
{
if (member.equals(owner) || moderators.contains(member))
+ {
continue;
+ }
only.add(member);
}
return only;
@@ -219,7 +239,9 @@ public class Guild
{
List names = new ArrayList<>();
for (GuildRank rank : ranks)
+ {
names.add(rank.getName());
+ }
return names;
}
@@ -267,6 +289,14 @@ public class Guild
{
broadcast(Common.tl("%s%[%p%Guild Chat %s%| %p%" + GUtil.colorize(name) + "%s%] %p%" + as + ChatColor.WHITE + ": %p%" + msg));
GLog.info(Common.tl("%s%[%p%Guild Chat %s%| %p%" + GUtil.colorize(name) + "%s%] %p%" + as + ChatColor.WHITE + ": %p%" + msg));
+
+ for (Player player : Bukkit.getOnlinePlayers())
+ {
+ if (Common.CHAT_SPY.contains(player))
+ {
+ player.sendMessage(GUtil.colorize("&7[GUILD CHAT SPY | " + GUtil.colorize(name) + "] " + as + ": " + msg));
+ }
+ }
}
public void disband()
@@ -275,7 +305,9 @@ public class Guild
{
Player player = Bukkit.getPlayer(member);
if (player == null)
+ {
continue;
+ }
Common.IN_GUILD_CHAT.remove(player);
}
plugin.guilds.set(identifier, null);
@@ -296,7 +328,10 @@ public class Guild
public static Guild createGuild(String identifier, String name, Player owner)
{
if (plugin.guilds.contains(identifier))
+ {
return getGuild(identifier);
+ }
+
Guild guild = new Guild(identifier,
name,
owner.getName(),
@@ -316,7 +351,10 @@ public class Guild
public static Guild getGuild(String identifier)
{
if (!plugin.guilds.contains(identifier))
+ {
return null;
+ }
+
List ranks = new ArrayList<>();
ConfigurationSection rankcs = plugin.guilds.getConfigurationSection(identifier + ".ranks");
if (rankcs != null)
@@ -327,6 +365,7 @@ public class Guild
plugin.guilds.getStringList(identifier + ".ranks." + key + ".members")));
}
}
+
return new Guild(identifier,
plugin.guilds.getString(identifier + ".name"),
plugin.guilds.getString(identifier + ".owner"),
@@ -347,7 +386,9 @@ public class Guild
{
Guild kg = getGuild(key);
if (kg.getMembers().contains(player.getName()))
+ {
guild = kg;
+ }
}
return guild;
}
@@ -363,7 +404,9 @@ public class Guild
{
Guild guild = getGuild(key);
if (guild.getMembers().contains(player.getName()))
+ {
return true;
+ }
}
return false;
}
diff --git a/src/main/java/me/totalfreedom/tfguilds/guild/GuildState.java b/src/main/java/me/totalfreedom/tfguilds/guild/GuildState.java
index 5013dba..1e69972 100644
--- a/src/main/java/me/totalfreedom/tfguilds/guild/GuildState.java
+++ b/src/main/java/me/totalfreedom/tfguilds/guild/GuildState.java
@@ -19,7 +19,10 @@ public enum GuildState
public static GuildState findState(String string)
{
if (string == null)
+ {
return null;
+ }
+
switch (string.toLowerCase())
{
case "open":
diff --git a/src/main/java/me/totalfreedom/tfguilds/listener/ChatListener.java b/src/main/java/me/totalfreedom/tfguilds/listener/ChatListener.java
index 0e61c64..d166b0e 100644
--- a/src/main/java/me/totalfreedom/tfguilds/listener/ChatListener.java
+++ b/src/main/java/me/totalfreedom/tfguilds/listener/ChatListener.java
@@ -18,16 +18,20 @@ public class ChatListener implements Listener
Player player = e.getPlayer();
Guild guild = Guild.getGuild(player);
if (guild == null)
+ {
return;
+ }
+
if (Common.IN_GUILD_CHAT.contains(player))
{
guild.chat(player.getName(), e.getMessage());
e.setCancelled(true);
return;
}
+
if (guild.hasTag())
{
e.setFormat(GUtil.colorize(guild.getTag()) + ChatColor.RESET + " " + e.getFormat());
}
}
-}
+}
\ No newline at end of file
diff --git a/src/main/java/me/totalfreedom/tfguilds/listener/JoinListener.java b/src/main/java/me/totalfreedom/tfguilds/listener/JoinListener.java
index 7161be3..1aabd3d 100644
--- a/src/main/java/me/totalfreedom/tfguilds/listener/JoinListener.java
+++ b/src/main/java/me/totalfreedom/tfguilds/listener/JoinListener.java
@@ -15,10 +15,13 @@ public class JoinListener implements Listener
Player player = e.getPlayer();
Guild guild = Guild.getGuild(player);
if (guild == null)
+ {
return;
+ }
+
if (guild.hasMOTD())
{
player.sendMessage(GUtil.colorize(guild.getMotd()));
}
}
-}
+}
\ No newline at end of file
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index a0d0462..37cc75e 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -2,7 +2,6 @@ name: TFGuilds
version: ${project.version}
main: me.totalfreedom.tfguilds.TFGuilds
api-version: 1.16
-softdepend: [TotalFreedomMod]
authors: [speed, super]
description: A guilds plugin for the TotalFreedom server.
commands:
@@ -17,4 +16,8 @@ commands:
tfguilds:
description: Information about the plugin.
usage: /
- aliases: [tfg]
\ No newline at end of file
+ aliases: [tfg]
+ guildchatspy:
+ description: An admin only command which allows for spying on guild chat.
+ usage: /
+ aliases: [gchatspy, gcs]
\ No newline at end of file