Skip to content

Commit b45236d

Browse files
committed
添加cq消息屏蔽
1 parent 80217fa commit b45236d

File tree

2 files changed

+95
-4
lines changed
  • plumbot-bukkit/src/main/java/me/regadpole/plumbot/event/qq
  • plumbot-velocity/src/main/java/me/regadpole/plumbot/event/qq

2 files changed

+95
-4
lines changed

plumbot-bukkit/src/main/java/me/regadpole/plumbot/event/qq/QQEvent.java

+62-4
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,18 @@ public void onFriendMessageReceive(PrivateMessage e){
2929

3030
QQBot bot = (QQBot) PlumBot.getBot();
3131

32+
Pattern pattern;
33+
Matcher matcher;
3234

3335
if(e.getMessage().equals(Prefix+"在线人数")) {
3436
if(!Config.Online()){
3537
return;
3638
}
39+
pattern = Pattern.compile("\\[CQ:.*].*");
40+
matcher = pattern.matcher(e.getMessage());
41+
if (matcher.find()){
42+
return;
43+
}
3744
bot.sendMsg(false, "当前在线:" + "("+Bukkit.getServer().getOnlinePlayers().size()+"人)"+ServerManager.listOnlinePlayer(), e.getUserId());
3845
return;
3946
}
@@ -42,22 +49,28 @@ public void onFriendMessageReceive(PrivateMessage e){
4249
if(!Config.TPS()){
4350
return;
4451
}
52+
pattern = Pattern.compile("\\[CQ:.*].*");
53+
matcher = pattern.matcher(e.getMessage());
54+
if (matcher.find()){
55+
return;
56+
}
4557
ServerTps st = new ServerTps();
4658
bot.sendMsg(false, "当前tps:" + st.getTps() + "\n" + "当前MSPT:" + st.getMSPT(),e.getUserId());
4759
return;
4860
}
4961

5062
if(Config.getAdmins().contains(e.getUserId())) {
51-
52-
Pattern pattern;
53-
Matcher matcher;
54-
5563
pattern = Pattern.compile(Prefix+"cmd .*");
5664
matcher = pattern.matcher(e.getMessage());
5765
if (matcher.find()) {
5866
if(!Config.CMD()){
5967
return;
6068
}
69+
pattern = Pattern.compile("\\[CQ:.*].*");
70+
matcher = pattern.matcher(matcher.group());
71+
if (matcher.find()){
72+
return;
73+
}
6174
String cmd = matcher.group().replace(Prefix+"cmd ", "");
6275
bot.sendMsg(false, "已发送指令至服务器",e.getUserId());
6376
PlumBot.getScheduler().runTaskAsynchronously(()->{
@@ -111,6 +124,11 @@ public void onGroupMessageReceive(GroupMessage e){
111124
if(!Config.CMD()){
112125
return;
113126
}
127+
pattern = Pattern.compile("\\[CQ:.*].*");
128+
matcher = pattern.matcher(msg);
129+
if (matcher.find()){
130+
return;
131+
}
114132
String cmd = matcher.group().replace(Prefix+"cmd ", "");
115133
bot.sendMsg(true, "已发送指令至服务器",groupID);
116134
PlumBot.getScheduler().runTaskAsynchronously(()->{
@@ -126,6 +144,11 @@ public void onGroupMessageReceive(GroupMessage e){
126144
if (!Config.WhiteList()) {
127145
return;
128146
}
147+
pattern = Pattern.compile("\\[CQ:.*].*");
148+
matcher = pattern.matcher(msg);
149+
if (matcher.find()){
150+
return;
151+
}
129152
String name = matcher.group().replace(Prefix + "删除白名单 ", "");
130153
if (name.isEmpty()) {
131154
bot.sendMsg(true, "id不能为空", groupID);
@@ -149,6 +172,11 @@ public void onGroupMessageReceive(GroupMessage e){
149172
if (!Config.SDC()){
150173
return;
151174
}
175+
pattern = Pattern.compile("\\[CQ:.*].*");
176+
matcher = pattern.matcher(msg);
177+
if (matcher.find()){
178+
return;
179+
}
152180
String scmd = matcher.group().replace(Prefix+"", "");
153181
String gcmd = Config.getCommandsYaml().getString("Admin."+scmd);
154182
if(gcmd!=null) {
@@ -188,6 +216,11 @@ public void onGroupMessageReceive(GroupMessage e){
188216
if(!Config.Online()){
189217
return;
190218
}
219+
pattern = Pattern.compile("\\[CQ:.*].*");
220+
matcher = pattern.matcher(msg);
221+
if (matcher.find()){
222+
return;
223+
}
191224
bot.sendMsg(true, "当前在线:" + "("+Bukkit.getServer().getOnlinePlayers().size()+"人)"+ServerManager.listOnlinePlayer(),groupID);
192225
return;
193226
}
@@ -196,6 +229,11 @@ public void onGroupMessageReceive(GroupMessage e){
196229
if(!Config.TPS()){
197230
return;
198231
}
232+
pattern = Pattern.compile("\\[CQ:.*].*");
233+
matcher = pattern.matcher(msg);
234+
if (matcher.find()){
235+
return;
236+
}
199237
ServerTps st = new ServerTps();
200238
bot.sendMsg(true, "当前tps:" + st.getTps() + "\n" + "当前MSPT:" + st.getMSPT(),groupID);
201239
return;
@@ -207,6 +245,11 @@ public void onGroupMessageReceive(GroupMessage e){
207245
if (!Config.WhiteList()) {
208246
return;
209247
}
248+
pattern = Pattern.compile("\\[CQ:.*].*");
249+
matcher = pattern.matcher(msg);
250+
if (matcher.find()){
251+
return;
252+
}
210253
String PlayerName = matcher.group().replace(Prefix + "申请白名单 ", "");
211254
if (PlayerName.isEmpty()) {
212255
bot.sendMsg(true, "id不能为空", groupID);
@@ -229,6 +272,11 @@ public void onGroupMessageReceive(GroupMessage e){
229272
if (!Config.WhiteList()) {
230273
return;
231274
}
275+
pattern = Pattern.compile("\\[CQ:.*].*");
276+
matcher = pattern.matcher(msg);
277+
if (matcher.find()){
278+
return;
279+
}
232280
String name = matcher.group().replace(Prefix + "删除白名单 ", "");
233281
PlumBot.getScheduler().runTaskAsynchronously(() -> {
234282
String idForName = DatabaseManager.getBind(String.valueOf(senderID), DataBase.type().toLowerCase(), PlumBot.getDatabase());
@@ -257,6 +305,11 @@ public void onGroupMessageReceive(GroupMessage e){
257305
if (!Config.SDC()){
258306
return;
259307
}
308+
pattern = Pattern.compile("\\[CQ:.*].*");
309+
matcher = pattern.matcher(msg);
310+
if (matcher.find()){
311+
return;
312+
}
260313
String scmd = matcher.group().replace(Prefix+"", "");
261314
String gcmd = Config.getCommandsYaml().getString("User."+scmd);
262315
if(gcmd!=null) {
@@ -271,6 +324,11 @@ public void onGroupMessageReceive(GroupMessage e){
271324
if (Config.SDR()){
272325
String back = Config.getReturnsYaml().getString(msg);
273326
if(back!=null){
327+
pattern = Pattern.compile("\\[CQ:.*].*");
328+
matcher = pattern.matcher(msg);
329+
if (matcher.find()){
330+
return;
331+
}
274332
bot.sendMsg(true, back,groupID);
275333
return;
276334
}

plumbot-velocity/src/main/java/me/regadpole/plumbot/event/qq/QQEvent.java

+33
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,18 @@ public QQEvent(PlumBot plugin) {
3434

3535
public void onFriendMessageReceive(PrivateMessage e){
3636

37+
Pattern pattern;
38+
Matcher matcher;
39+
3740
if(e.getMessage().equals("/在线人数")) {
3841
if(!Config.config.Online){
3942
return;
4043
}
44+
pattern = Pattern.compile("\\[CQ:.*].*");
45+
matcher = pattern.matcher(e.getMessage());
46+
if (matcher.find()){
47+
return;
48+
}
4149
List<String> pname = new ArrayList<>();
4250
for (Player player : plugin.getServer().getAllPlayers()) {
4351
pname.add(player.getUsername());
@@ -84,6 +92,11 @@ public void onGroupMessageReceive(GroupMessage e){
8492
if (!Config.config.WhiteList.enable) {
8593
return;
8694
}
95+
pattern = Pattern.compile("\\[CQ:.*].*");
96+
matcher = pattern.matcher(msg);
97+
if (matcher.find()){
98+
return;
99+
}
87100
String name = matcher.group().replace("/删除白名单 ", "");
88101
if (name.isEmpty()) {
89102
PlumBot.getBot().sendMsg(true, "id不能为空", groupID);
@@ -126,6 +139,11 @@ public void onGroupMessageReceive(GroupMessage e){
126139
if(!Config.config.Online){
127140
return;
128141
}
142+
pattern = Pattern.compile("\\[CQ:.*].*");
143+
matcher = pattern.matcher(msg);
144+
if (matcher.find()){
145+
return;
146+
}
129147
List<String> pname = new ArrayList<>();
130148
for (Player player : plugin.getServer().getAllPlayers()) {
131149
pname.add(player.getUsername());
@@ -140,6 +158,11 @@ public void onGroupMessageReceive(GroupMessage e){
140158
if (!Config.config.WhiteList.enable) {
141159
return;
142160
}
161+
pattern = Pattern.compile("\\[CQ:.*].*");
162+
matcher = pattern.matcher(msg);
163+
if (matcher.find()){
164+
return;
165+
}
143166
String PlayerName = matcher.group().replace("/申请白名单 ", "");
144167
if (PlayerName.isEmpty()) {
145168
PlumBot.getBot().sendMsg(true, "id不能为空", groupID);
@@ -162,6 +185,11 @@ public void onGroupMessageReceive(GroupMessage e){
162185
if (!Config.config.WhiteList.enable) {
163186
return;
164187
}
188+
pattern = Pattern.compile("\\[CQ:.*].*");
189+
matcher = pattern.matcher(msg);
190+
if (matcher.find()){
191+
return;
192+
}
165193
String name = matcher.group().replace("/删除白名单 ", "");
166194
PlumBot.INSTANCE.getServer().getScheduler().buildTask(PlumBot.INSTANCE, () -> {
167195
String idForName = DatabaseManager.getBind(String.valueOf(senderID), DbConfig.type.toLowerCase(), PlumBot.getDatabase());
@@ -187,6 +215,11 @@ public void onGroupMessageReceive(GroupMessage e){
187215
if (plugin.vconf.getReturnsObj().get(msg) == null) return;
188216
String back = String.valueOf(plugin.vconf.getReturnsObj().get(msg));
189217
if(back!=null){
218+
pattern = Pattern.compile("\\[CQ:.*].*");
219+
matcher = pattern.matcher(msg);
220+
if (matcher.find()){
221+
return;
222+
}
190223
PlumBot.getBot().sendMsg(true, back,groupID);
191224
return;
192225
}

0 commit comments

Comments
 (0)