禁止放置方块、丢弃管理、菜单更新、构建数组
This commit is contained in:
parent
52b743b381
commit
8d9585728e
@ -21,43 +21,49 @@ public class MenuCommandExecutor implements CommandExecutor {
|
||||
|| command.getName().equalsIgnoreCase("xf-tl")) {
|
||||
System.out.println();
|
||||
if (strings.length == 0) {
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§3筱锋工具箱[XF_Tool](版本号:%s)", Tools.XF_Version));
|
||||
sender.sendMessage(String.format("§3作者:%s", Tools.XF_Author));
|
||||
sender.sendMessage("§3博客:§ehttps://www.blog.x-lf.com/");
|
||||
sender.sendMessage("§2输入 §6/xf-tool help §2 查看插件帮助吧");
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
} else {
|
||||
if (Objects.equals(strings[0], "help")) {
|
||||
if (strings.length == 1) {
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage("§6/xf-tool §7- 查看插件信息");
|
||||
sender.sendMessage("§6/xf-tool help [page] §7- 查看指令帮助");
|
||||
sender.sendMessage("§6/xf-tool drop §7- 丢弃管理");
|
||||
sender.sendMessage("§6/xf-op §7- OP管理");
|
||||
sender.sendMessage("§6/xf-tool setting §7- 插件基础设置");
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage("§a页码: §71§8/§71");
|
||||
} else if (strings.length == 2) {
|
||||
if (Objects.equals(strings[1], "1")) {
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage("§6/xf-tool §7- 查看插件信息");
|
||||
sender.sendMessage("§6/xf-tool help [page] §7- 查看指令帮助");
|
||||
sender.sendMessage("§6/xf-op §7- OP管理");
|
||||
sender.sendMessage("§6/xf-tool setting §7- 插件基础设置");
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage("§a页码: §71§8/§71");
|
||||
} else sender.sendMessage(String.format("%s§r%s §r§c页码超出范围!", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
} else {
|
||||
sender.sendMessage(String.format("%s§r%s §r§c参数不正确,请输入 §6/xf-tool help §c查看指令帮助", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
} else if (Objects.equals(strings[0], "setting")) {
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage("§6/xf-tool update §7- 查看是否有可选更新");
|
||||
sender.sendMessage("§6/xf-tool version §7- 查看插件版本");
|
||||
sender.sendMessage(String.format("§7§l§m==]========== %s§7§l§m ==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
} else if (Objects.equals(strings[0], "update"))
|
||||
sender.sendMessage(String.format("%s§r%s §r§c很抱歉,我还没有做接口哈!", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
else if (Objects.equals(strings[0],"version"))
|
||||
else if (Objects.equals(strings[0], "drop")) {
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
sender.sendMessage("§6/xf-drop §7- 解除丢弃物品");
|
||||
sender.sendMessage("§6/xf-drop <on or off> §7- 设置是否允许丢弃物品");
|
||||
sender.sendMessage(String.format("§7§l§m==]==========§r %s §7§l§m==========[==",Tools.XF_Prefix));
|
||||
} else if (Objects.equals(strings[0],"version"))
|
||||
sender.sendMessage(String.format("%s§r%s §r§3版本号:%s", Tools.XF_Prefix, Tools.XF_PrefixArrow,Tools.XF_Version));
|
||||
else sender.sendMessage(String.format("%s§r%s §r§c参数错误请输入 §6/xf-tool help §c查看帮助", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
|
@ -0,0 +1,76 @@
|
||||
package org.frontleaves.xf_tools.Commands;
|
||||
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.frontleaves.xf_tools.XF_Tools;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class XfDropCommandExecutor implements CommandExecutor {
|
||||
|
||||
protected XF_Tools Tools;
|
||||
|
||||
public XfDropCommandExecutor(XF_Tools Tools) {
|
||||
this.Tools = Tools;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if (command.getName().equalsIgnoreCase("xf-drop")) {
|
||||
if (args.length == 0) {
|
||||
int i = 0;
|
||||
Object[] User = new Object[2];
|
||||
for (; Tools.XF_Player.get(i).length != 0; i++) {
|
||||
User = Tools.XF_Player.get(i);
|
||||
if (User[0] == sender.getName()) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ((int) User[1] == 0) {
|
||||
User[1] = 1;
|
||||
sender.sendMessage(String.format("%s§r%s §r§2解除丢弃物品设置成功", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
} else {
|
||||
sender.sendMessage(String.format("%s§r%s §r§c你已经解除过绑定了", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
} else if (args.length == 1) {
|
||||
if (Objects.equals(args[0], "on")) {
|
||||
int i = 0;
|
||||
Object[] User = new Object[2];
|
||||
for (; Tools.XF_Player.get(i).length != 0; i++) {
|
||||
User = Tools.XF_Player.get(i);
|
||||
if (User[0] == sender.getName()) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ((int) User[1] == 1) {
|
||||
User[1] = 0;
|
||||
sender.sendMessage(String.format("%s§r%s §r§2禁止丢弃物品设置成功", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
} else {
|
||||
sender.sendMessage(String.format("%s§r%s §r§c你已经上锁了", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
} else if (Objects.equals(args[0], "off")) {
|
||||
int i = 0;
|
||||
Object[] User = new Object[2];
|
||||
for (; Tools.XF_Player.get(i).length != 0; i++) {
|
||||
User = Tools.XF_Player.get(i);
|
||||
if (User[0] == sender.getName()) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ((int) User[1] == 0) {
|
||||
User[1] = 1;
|
||||
sender.sendMessage(String.format("%s§r%s §r§2解除丢弃物品设置成功", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
} else {
|
||||
sender.sendMessage(String.format("%s§r%s §r§c你已经解除过绑定了", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
} else {
|
||||
sender.sendMessage(String.format("%s§r%s §r§c参数不正确,请输入 §6/xf-tool help §c查看指令帮助", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
} else {
|
||||
sender.sendMessage(String.format("%s§r%s §r§c参数不正确,请输入 §6/xf-tool help §c查看指令帮助", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
@ -0,0 +1,53 @@
|
||||
package org.frontleaves.xf_tools.Events;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.block.BlockPlaceEvent;
|
||||
import org.bukkit.event.inventory.InventoryCloseEvent;
|
||||
import org.bukkit.event.player.PlayerDropItemEvent;
|
||||
import org.frontleaves.xf_tools.XF_Tools;
|
||||
|
||||
public class BlockEvent implements Listener {
|
||||
|
||||
protected XF_Tools Tools;
|
||||
|
||||
public BlockEvent(XF_Tools Tools) {
|
||||
this.Tools = Tools;
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void InventoryEvent(InventoryCloseEvent Player) {
|
||||
if (!Player.getPlayer().isOp()) {
|
||||
// 基岩检测
|
||||
if (Player.getPlayer().getInventory().contains(Material.BEDROCK)) {
|
||||
Player.getPlayer().getInventory().remove(Material.BEDROCK);
|
||||
Player.getPlayer().sendMessage(String.format("%s§r%s §r§c这个 %s 你不可以拥有", Tools.XF_Prefix, Tools.XF_PrefixArrow, Material.BEDROCK));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void DropEvent(PlayerDropItemEvent Player) {
|
||||
if (!Player.getPlayer().isOp()) {
|
||||
// 基岩检测
|
||||
if (Player.getPlayer().getInventory().contains(Material.BEDROCK)) {
|
||||
Player.setCancelled(true);
|
||||
Player.getPlayer().getInventory().remove(Material.BEDROCK);
|
||||
Player.getPlayer().sendMessage(String.format("%s§r%s §r§c这个 %s 你不可以拥有", Tools.XF_Prefix, Tools.XF_PrefixArrow, Material.BEDROCK));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void BlockPlaceEvent(BlockPlaceEvent Player) {
|
||||
if (!Player.getPlayer().isOp()) {
|
||||
// 基岩检测
|
||||
if (Player.getPlayer().getInventory().contains(Material.BEDROCK)) {
|
||||
Player.setCancelled(true);
|
||||
Player.getPlayer().getInventory().remove(Material.BEDROCK);
|
||||
Player.getPlayer().sendMessage(String.format("%s§r%s §r§c这个 %s 你不可以拥有", Tools.XF_Prefix, Tools.XF_PrefixArrow, Material.BEDROCK));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
32
src/main/java/org/frontleaves/xf_tools/Events/DropEvent.java
Normal file
32
src/main/java/org/frontleaves/xf_tools/Events/DropEvent.java
Normal file
@ -0,0 +1,32 @@
|
||||
package org.frontleaves.xf_tools.Events;
|
||||
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerDropItemEvent;
|
||||
import org.frontleaves.xf_tools.XF_Tools;
|
||||
|
||||
public class DropEvent implements Listener {
|
||||
|
||||
protected XF_Tools Tools;
|
||||
|
||||
public DropEvent(XF_Tools Tools) {
|
||||
this.Tools = Tools;
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void Drop(PlayerDropItemEvent Player) {
|
||||
int i = 0;
|
||||
Object[] User = new Object[2];
|
||||
for (; Tools.XF_Player.get(i).length != 0; i++) {
|
||||
User = Tools.XF_Player.get(i);
|
||||
if (User[0] == Player.getPlayer().getName()) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ((int) User[1] == 0) {
|
||||
Player.setCancelled(true);
|
||||
if (Player.isCancelled())
|
||||
Player.getPlayer().sendMessage(String.format("%s§r%s §r§c丢东西保护,如果确定需要丢物品输入 §6/xf-drop §c开启丢物品", Tools.XF_Prefix, Tools.XF_PrefixArrow));
|
||||
}
|
||||
}
|
||||
}
|
@ -4,15 +4,32 @@ import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerJoinEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
import org.frontleaves.xf_tools.XF_Tools;
|
||||
|
||||
public class PlayerActivityListener implements Listener {
|
||||
|
||||
protected XF_Tools Tools;
|
||||
|
||||
public PlayerActivityListener(XF_Tools Tools) {
|
||||
this.Tools = Tools;
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onJoinServer(PlayerJoinEvent Player) {
|
||||
Object[] PlayerData = {Player.getPlayer().getName(), 0};
|
||||
Tools.XF_Player.add(PlayerData);
|
||||
Player.setJoinMessage(String.format("§7[§2+§7]§3 %s", Player.getPlayer().getDisplayName()));
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onQuitServer(PlayerQuitEvent Player) {
|
||||
for (int i = 0; Tools.XF_Player.get(i).length != 0; i++) {
|
||||
Object[] User = Tools.XF_Player.get(i);
|
||||
if (User[0] == Player.getPlayer().getName()) {
|
||||
Tools.XF_Player.remove(i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
Player.setQuitMessage(String.format("§7[§c-§7]§3 %s", Player.getPlayer().getDisplayName()));
|
||||
}
|
||||
}
|
||||
|
@ -3,14 +3,22 @@ package org.frontleaves.xf_tools;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import org.frontleaves.xf_tools.Commands.MenuCommandExecutor;
|
||||
import org.frontleaves.xf_tools.Commands.OpCheckCommandExecutor;
|
||||
import org.frontleaves.xf_tools.Commands.XfDropCommandExecutor;
|
||||
import org.frontleaves.xf_tools.Commands.XfOpCommandExecutor;
|
||||
import org.frontleaves.xf_tools.Events.BlockEvent;
|
||||
import org.frontleaves.xf_tools.Events.DropEvent;
|
||||
import org.frontleaves.xf_tools.Events.PlayerActivityListener;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public final class XF_Tools extends JavaPlugin {
|
||||
public String XF_Version = "1.0.0-Alpha";
|
||||
public String XF_Author = "筱锋xiao_lfeng";
|
||||
public String XF_Prefix = "§2XF§bTools";
|
||||
public String XF_PrefixArrow = "§7§l>>";
|
||||
// 初始化部分
|
||||
public List<Object[]> XF_Player = new ArrayList<>();
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
@ -22,15 +30,18 @@ public final class XF_Tools extends JavaPlugin {
|
||||
getCommand("xf-tool").setExecutor(new MenuCommandExecutor(this));
|
||||
getCommand("xf-tl").setExecutor(new MenuCommandExecutor(this));
|
||||
getCommand("xf-op").setExecutor(new XfOpCommandExecutor(this));
|
||||
getCommand("xf-drop").setExecutor(new XfDropCommandExecutor(this));
|
||||
|
||||
// 载入监听
|
||||
getServer().getPluginManager().registerEvents(new PlayerActivityListener(), this);
|
||||
getServer().getPluginManager().registerEvents(new PlayerActivityListener(this), this);
|
||||
getServer().getPluginManager().registerEvents(new BlockEvent(this), this);
|
||||
getServer().getPluginManager().registerEvents(new DropEvent(this), this);
|
||||
|
||||
// 输出配置文件
|
||||
saveDefaultConfig();
|
||||
|
||||
// 信息输出
|
||||
getLogger().info(String.format("作者:%s",this.XF_Author));
|
||||
getLogger().info(String.format("作者:%s", this.XF_Author));
|
||||
getLogger().info("瞄,希望我的插件对你有所帮助~");
|
||||
|
||||
super.onEnable();
|
||||
|
Loading…
x
Reference in New Issue
Block a user