From 3ead981de0cf960b9a81035e8ec1d15e50db03d8 Mon Sep 17 00:00:00 2001 From: X_huihui <64721484+xiaohuihui1022@users.noreply.github.com> Date: Sat, 24 Dec 2022 20:08:28 +0800 Subject: [PATCH] Init --- pom.xml | 76 +++++++++++++++++++ src/main/java/me/huihui/zhpb/Main.java | 26 +++++++ .../me/huihui/zhpb/events/playerchat.java | 34 +++++++++ src/main/resources/config.yml | 8 ++ src/main/resources/plugin.yml | 7 ++ zhpb.iml | 34 +++++++++ 6 files changed, 185 insertions(+) create mode 100644 pom.xml create mode 100644 src/main/java/me/huihui/zhpb/Main.java create mode 100644 src/main/java/me/huihui/zhpb/events/playerchat.java create mode 100644 src/main/resources/config.yml create mode 100644 src/main/resources/plugin.yml create mode 100644 zhpb.iml diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..bf433c3 --- /dev/null +++ b/pom.xml @@ -0,0 +1,76 @@ + + + 4.0.0 + + me.huihui + zhpb + 1.0 + jar + + Zhpb + + A Swearing shielding plugin + + 1.8 + UTF-8 + + https://www.minept.top + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + ${java.version} + ${java.version} + + + + org.apache.maven.plugins + maven-shade-plugin + 3.2.4 + + + package + + shade + + + false + + + + + + + + src/main/resources + true + + + + + + + spigotmc-repo + https://hub.spigotmc.org/nexus/content/repositories/snapshots/ + + + sonatype + https://oss.sonatype.org/content/groups/public/ + + + + + + org.spigotmc + spigot-api + 1.13-R0.1-SNAPSHOT + provided + + + diff --git a/src/main/java/me/huihui/zhpb/Main.java b/src/main/java/me/huihui/zhpb/Main.java new file mode 100644 index 0000000..a2d4d04 --- /dev/null +++ b/src/main/java/me/huihui/zhpb/Main.java @@ -0,0 +1,26 @@ +package me.huihui.zhpb; + +import me.huihui.zhpb.events.playerchat; +import org.bukkit.ChatColor; +import org.bukkit.plugin.Plugin; +import org.bukkit.plugin.java.JavaPlugin; + +public final class Main extends JavaPlugin { + + @Override + public void onEnable() { + // config.yml + getConfig().options().copyDefaults(); + saveDefaultConfig(); + Plugin plugin = getPlugin(Main.class); + // register events + getServer().getPluginManager().registerEvents(new playerchat(), this); + System.out.println(ChatColor.RED + "[脏话屏蔽]插件已启用"); + System.out.println("列表里的脏话:" + plugin.getConfig().getStringList("ZangHuaList").toString()); + } + + @Override + public void onDisable() { + // Plugin shutdown logic + } +} diff --git a/src/main/java/me/huihui/zhpb/events/playerchat.java b/src/main/java/me/huihui/zhpb/events/playerchat.java new file mode 100644 index 0000000..5dc071e --- /dev/null +++ b/src/main/java/me/huihui/zhpb/events/playerchat.java @@ -0,0 +1,34 @@ +package me.huihui.zhpb.events; + +import org.bukkit.ChatColor; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.AsyncPlayerChatEvent; +import org.bukkit.plugin.Plugin; +import me.huihui.zhpb.Main; + +import java.util.List; + +public class playerchat implements Listener { + Plugin plugin = Main.getPlugin(Main.class); + @EventHandler + public void playerchat(AsyncPlayerChatEvent event){ + List zhList = plugin.getConfig().getStringList("ZangHuaList"); + String Message = event.getMessage(); + boolean isZangHuaSpeak = false; + StringBuilder replacement = new StringBuilder("*"); + for (int i = 0; i < zhList.toArray().length; i++){ + if (Message.contains(zhList.get(i))){ + for (int x = 1; x < zhList.get(i).length(); x++){ + replacement.append("*"); + } + Message = Message.replace(zhList.get(i), replacement); + event.getPlayer().sendMessage(ChatColor.RED + "您说了脏话:" + zhList.get(i)); + isZangHuaSpeak = true; + } + } + if (isZangHuaSpeak){ + event.setMessage(Message); + } + } +} diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml new file mode 100644 index 0000000..a9310ff --- /dev/null +++ b/src/main/resources/config.yml @@ -0,0 +1,8 @@ +ZangHuaList: + - "sb" + - "SB" + - "cnm" + - "nmsl" + - "傻逼" + - "曹尼玛" + - "你妈死了" \ No newline at end of file diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml new file mode 100644 index 0000000..4a1bf9c --- /dev/null +++ b/src/main/resources/plugin.yml @@ -0,0 +1,7 @@ +name: Zhpb +version: '${project.version}' +main: me.huihui.zhpb.Main +api-version: 1.13 +authors: [ X_huihui ] +description: A Swearing shielding plugin +website: https://www.minept.top diff --git a/zhpb.iml b/zhpb.iml new file mode 100644 index 0000000..abe244f --- /dev/null +++ b/zhpb.iml @@ -0,0 +1,34 @@ + + + + + + + SPIGOT + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file