commit 685c0cbd16539c71117846cbe21f49a8599e1036 Author: DESKTOP-B8C034L\Raven <740585947@qq.com> Date: Sun Mar 21 21:53:13 2021 +0800 no message diff --git a/ResidenceBuild/.idea/.gitignore b/ResidenceBuild/.idea/.gitignore new file mode 100644 index 0000000..56406a3 --- /dev/null +++ b/ResidenceBuild/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Datasource local storage ignored files +/../../../../:\IdeaProject\ResidenceBuild\.idea/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/ResidenceBuild/.idea/artifacts/ResidenceBuild.xml b/ResidenceBuild/.idea/artifacts/ResidenceBuild.xml new file mode 100644 index 0000000..7256db3 --- /dev/null +++ b/ResidenceBuild/.idea/artifacts/ResidenceBuild.xml @@ -0,0 +1,10 @@ + + + G:/minecraftServerLocal/plugins + + + + + + + \ No newline at end of file diff --git a/ResidenceBuild/.idea/libraries/Residence4_9_2_7.xml b/ResidenceBuild/.idea/libraries/Residence4_9_2_7.xml new file mode 100644 index 0000000..b4e80b4 --- /dev/null +++ b/ResidenceBuild/.idea/libraries/Residence4_9_2_7.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/ResidenceBuild/.idea/libraries/spigot_1_16_5.xml b/ResidenceBuild/.idea/libraries/spigot_1_16_5.xml new file mode 100644 index 0000000..9de9ba5 --- /dev/null +++ b/ResidenceBuild/.idea/libraries/spigot_1_16_5.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/ResidenceBuild/.idea/misc.xml b/ResidenceBuild/.idea/misc.xml new file mode 100644 index 0000000..0548357 --- /dev/null +++ b/ResidenceBuild/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ResidenceBuild/.idea/modules.xml b/ResidenceBuild/.idea/modules.xml new file mode 100644 index 0000000..b2ed0fc --- /dev/null +++ b/ResidenceBuild/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ResidenceBuild/ResidenceBuild.iml b/ResidenceBuild/ResidenceBuild.iml new file mode 100644 index 0000000..bf9971e --- /dev/null +++ b/ResidenceBuild/ResidenceBuild.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ResidenceBuild/config.yml b/ResidenceBuild/config.yml new file mode 100644 index 0000000..e571248 --- /dev/null +++ b/ResidenceBuild/config.yml @@ -0,0 +1,4 @@ +#世界名 +Worlds: + - world1 + - world2 \ No newline at end of file diff --git a/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/ResBuild.class b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/ResBuild.class new file mode 100644 index 0000000..427ccff Binary files /dev/null and b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/ResBuild.class differ diff --git a/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/ResBuildMain.class b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/ResBuildMain.class new file mode 100644 index 0000000..3f35149 Binary files /dev/null and b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/ResBuildMain.class differ diff --git a/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/command/CommandHandler.class b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/command/CommandHandler.class new file mode 100644 index 0000000..7bc67ed Binary files /dev/null and b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/command/CommandHandler.class differ diff --git a/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/configtools/ConfigFactory.class b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/configtools/ConfigFactory.class new file mode 100644 index 0000000..ef6f64e Binary files /dev/null and b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/configtools/ConfigFactory.class differ diff --git a/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/listener/OnPlayerBuildListener.class b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/listener/OnPlayerBuildListener.class new file mode 100644 index 0000000..ccf7cc5 Binary files /dev/null and b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/listener/OnPlayerBuildListener.class differ diff --git a/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/menu/OutPutInfo.class b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/menu/OutPutInfo.class new file mode 100644 index 0000000..605f5f0 Binary files /dev/null and b/ResidenceBuild/out/production/ResidenceBuild/com/raven/resbuild/menu/OutPutInfo.class differ diff --git a/ResidenceBuild/plugin.yml b/ResidenceBuild/plugin.yml new file mode 100644 index 0000000..06b686f --- /dev/null +++ b/ResidenceBuild/plugin.yml @@ -0,0 +1,6 @@ +name: ResBuildMain +main: com.raven.resbuild.ResBuildMain +version: 1.0 +author: Raven +commands: + rsb: \ No newline at end of file diff --git a/ResidenceBuild/src/com/raven/resbuild/ResBuild.java b/ResidenceBuild/src/com/raven/resbuild/ResBuild.java new file mode 100644 index 0000000..ab96b61 --- /dev/null +++ b/ResidenceBuild/src/com/raven/resbuild/ResBuild.java @@ -0,0 +1,27 @@ +package com.raven.ResBuild; + +import org.bukkit.ChatColor; +import org.bukkit.configuration.file.FileConfiguration; +import org.bukkit.plugin.java.JavaPlugin; + +public class ResBuild extends JavaPlugin { + @Override + public void onLoad() { + getServer().getConsoleSender().sendMessage(ChatColor.GREEN +"[ResidenceBuild]:plugin have been load"); + } + + @Override + public void onEnable() { + /*getServer().getPluginManager().registerEvents(new OnPlayerBuildListener(), this); + FlagPermissions.addFlag("build");*/ + FileConfiguration config = getConfig(); + if(config==null){ + saveDefaultConfig(); + } + } + + @Override + public void onDisable() { + getServer().getConsoleSender().sendMessage(ChatColor.GREEN +"[ResidenceBuild]:plugin have been disable"); + } +} diff --git a/ResidenceBuild/src/com/raven/resbuild/ResBuildMain.java b/ResidenceBuild/src/com/raven/resbuild/ResBuildMain.java new file mode 100644 index 0000000..f13a456 --- /dev/null +++ b/ResidenceBuild/src/com/raven/resbuild/ResBuildMain.java @@ -0,0 +1,36 @@ +package com.raven.resbuild; + +import com.bekvon.bukkit.residence.protection.FlagPermissions; +import com.raven.resbuild.command.CommandHandler; +import com.raven.resbuild.listener.OnPlayerBuildListener; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.configuration.file.FileConfiguration; +import org.bukkit.plugin.Plugin; +import org.bukkit.plugin.java.JavaPlugin; + +public class ResBuildMain extends JavaPlugin { + private static Plugin plugin; + @Override + public void onLoad() { + getServer().getConsoleSender().sendMessage(ChatColor.GREEN +"[ResidenceBuild]:plugin have been load"); + plugin = this; + } + + @Override + public void onEnable() { + Bukkit.getPluginCommand("rsb").setExecutor(new CommandHandler()); + getServer().getPluginManager().registerEvents(new OnPlayerBuildListener(), this); + FlagPermissions.addFlag("build"); + saveDefaultConfig(); + } + + @Override + public void onDisable() { + getServer().getConsoleSender().sendMessage(ChatColor.GREEN +"[ResidenceBuild]:plugin have been disable"); + } + + public static Plugin getPlugin(){ + return plugin; + } +} diff --git a/ResidenceBuild/src/com/raven/resbuild/command/CommandHandler.java b/ResidenceBuild/src/com/raven/resbuild/command/CommandHandler.java new file mode 100644 index 0000000..703f857 --- /dev/null +++ b/ResidenceBuild/src/com/raven/resbuild/command/CommandHandler.java @@ -0,0 +1,36 @@ +package com.raven.resbuild.command; + +import com.raven.resbuild.ResBuildMain; +import com.raven.resbuild.configtools.ConfigFactory; +import com.raven.resbuild.menu.OutPutInfo; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class CommandHandler implements CommandExecutor { + @Override + public boolean onCommand(CommandSender commandSender, Command command, String info, String[] extra) { + if(commandSender instanceof Player){ + Player player = (Player) commandSender; + if(info.equals("rsb") && extra.length==0){ + OutPutInfo.display(player); + return true; + }else if(info.equals("rsb") && extra[0].equalsIgnoreCase("reload") && extra.length==1){ + //重新读取config + if(player.hasPermission("rsb.reload")){ + ConfigFactory factory = new ConfigFactory(ResBuildMain.getPlugin()); + factory.reloadConfig(); + player.sendMessage("§a§l[StrengthPlus]:§b§l插件已重载!"); + }else { + player.sendMessage("§c§l[StrengthPlus]:你没有权限去这样做!"); + } + return true; + } + }else { + commandSender.sendMessage(ChatColor.GREEN+"[StrengthPlus]:"+ChatColor.RED+"你必须是一名玩家"); + } + return false; + } +} diff --git a/ResidenceBuild/src/com/raven/resbuild/configtools/ConfigFactory.java b/ResidenceBuild/src/com/raven/resbuild/configtools/ConfigFactory.java new file mode 100644 index 0000000..e891653 --- /dev/null +++ b/ResidenceBuild/src/com/raven/resbuild/configtools/ConfigFactory.java @@ -0,0 +1,43 @@ +package com.raven.resbuild.configtools; + +import com.raven.resbuild.ResBuildMain; +import org.bukkit.Server; +import org.bukkit.configuration.file.FileConfiguration; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.plugin.Plugin; + +import java.io.File; +import java.util.List; + +public class ConfigFactory { + private Plugin plugin; + public ConfigFactory(Plugin plugin){ + this.plugin = plugin; + } + + public static void loadConfig(Plugin plugin) { + try { + File configFile = new File(plugin.getDataFolder(), "config.yml"); + if (!configFile.exists()) { + plugin.saveDefaultConfig(); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + public static boolean getUnableWorlds(String worldName){ + FileConfiguration config = ResBuildMain.getPlugin().getConfig(); + List worldList = config.getStringList("Worlds"); + for(int i=0;i