Skip to content

Commit

Permalink
Added /plot members subcommand and tip message
Browse files Browse the repository at this point in the history
  • Loading branch information
Cinnazeyy committed Dec 4, 2021
1 parent 0ae2b5a commit 8da6e62
Show file tree
Hide file tree
Showing 3 changed files with 96 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ public void onCommand(CommandSender sender, String[] args) {
return;
}

if(plot.getPlotOwner().getUUID().equals(getPlayer(sender).getUniqueId()) || plot.getPlotMembers().stream().anyMatch(m -> m.getUUID().equals(getPlayer(sender).getUniqueId())) || getPlayer(sender).hasPermission("alpsbte.plot.review")) {
if(plot.getPlotOwner().getUUID().equals(getPlayer(sender).getUniqueId()) || plot.getPlotMembers().stream().anyMatch(m -> m.getUUID().equals(getPlayer(sender).getUniqueId())) || getPlayer(sender).hasPermission("plotsystem.plot.review")) {
if (plot.isReviewed()) {
new FeedbackMenu(getPlayer(sender), plot.getID());
} else {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
package com.alpsbte.plotsystem.commands.plot;

import com.alpsbte.plotsystem.commands.BaseCommand;
import com.alpsbte.plotsystem.commands.SubCommand;
import com.alpsbte.plotsystem.core.menus.FeedbackMenu;
import com.alpsbte.plotsystem.core.menus.PlotMemberMenu;
import com.alpsbte.plotsystem.core.system.plot.Plot;
import com.alpsbte.plotsystem.core.system.plot.PlotManager;
import com.alpsbte.plotsystem.utils.Utils;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;

import java.sql.SQLException;
import java.util.logging.Level;

public class CMD_Plot_Members extends SubCommand {

public CMD_Plot_Members(BaseCommand baseCommand) {
super(baseCommand);
}

@Override
public void onCommand(CommandSender sender, String[] args) {
try {
if (getPlayer(sender) != null) {
Plot plot;
// Get Plot
if (args.length > 0 && Utils.TryParseInt(args[0]) != null) {
//plot members <id>
int plotID = Integer.parseInt(args[0]);
if (PlotManager.plotExists(plotID)) {
plot = new Plot(plotID);
} else {
sender.sendMessage(Utils.getErrorMessageFormat("This plot does not exist!"));
return;
}
} else if (PlotManager.isPlotWorld(getPlayer(sender).getWorld())) {
//plot members
plot = PlotManager.getPlotByWorld(getPlayer(sender).getWorld());
} else {
sendInfo(sender);
return;
}

if(plot.getPlotOwner().getUUID().equals(getPlayer(sender).getUniqueId()) || getPlayer(sender).hasPermission("plotsystem.admin")) {
new PlotMemberMenu(plot,getPlayer(sender));
} else {
sender.sendMessage(Utils.getErrorMessageFormat("You don't have permission to manage this plot's members!"));
}
} else {
Bukkit.getConsoleSender().sendMessage(ChatColor.RED + "This command can only be used as a player!");
}
} catch (SQLException ex) {
sender.sendMessage(Utils.getErrorMessageFormat("An error occurred while executing command!"));
Bukkit.getLogger().log(Level.SEVERE, "A SQL error occurred!", ex);
}
}

@Override
public String[] getNames() {
return new String[] { "members" };
}

@Override
public String getDescription() {
return "Opens the plot member menu.";
}

@Override
public String[] getParameter() {
return new String[] { "ID" };
}

@Override
public String getPermission() {
return "plotsystem.plot.members";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,7 @@
import com.alpsbte.plotsystem.utils.Utils;
import com.alpsbte.plotsystem.utils.enums.Status;
import com.alpsbte.plotsystem.utils.ftp.FTPManager;
import net.md_5.bungee.api.chat.ClickEvent;
import net.md_5.bungee.api.chat.ComponentBuilder;
import net.md_5.bungee.api.chat.HoverEvent;
import net.md_5.bungee.api.chat.TextComponent;
import net.md_5.bungee.api.chat.*;
import org.apache.commons.io.FileUtils;
import org.bukkit.*;
import org.bukkit.entity.Player;
Expand Down Expand Up @@ -70,6 +67,7 @@ public static void teleportPlayer(Plot plot, Player player) throws SQLException
}

sendLinkMessages(plot, player);
sendGroupTipMessage(plot, player);

if(plot.getPlotOwner().getUUID().equals(player.getUniqueId())) {
plot.setLastActivity(false);
Expand Down Expand Up @@ -228,6 +226,20 @@ public static void sendLinkMessages(Plot plot, Player player){
player.sendMessage("§8--------------------------");
}

public static void sendGroupTipMessage(Plot plot, Player player) {
try {
if (plot.getPlotMembers().size() == 0) {
TextComponent tc = new TextComponent();
tc.setText("§7§l> §7Want to play with your friends? Click §ahere....");
tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND,"/plot members " + plot.getID()));
tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,new ComponentBuilder("Manage Plot Members...").create()));
player.sendMessage("§8--------------------------");
}
} catch (SQLException e) {
Bukkit.getLogger().log(Level.SEVERE, "A SQl error occurred!", e);
}
}

public static void sendFeedbackMessage(List<Plot> plots, Player player) throws SQLException {
player.sendMessage("§8--------------------------");
for(Plot plot : plots) {
Expand Down

0 comments on commit 8da6e62

Please sign in to comment.