Skip to content

Commit 01b2383

Browse files
committed
Add new event for bans and unbans
1 parent d4e7c48 commit 01b2383

File tree

6 files changed

+96
-1
lines changed

6 files changed

+96
-1
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.funniray</groupId>
88
<artifactId>litebans-waterdodge</artifactId>
9-
<version>1.0-SNAPSHOT</version>
9+
<version>1.1-SNAPSHOT</version>
1010

1111
<properties>
1212
<maven.compiler.source>8</maven.compiler.source>

src/main/java/com/funniray/lbwd/commands/PardonCommand.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import com.funniray.lbwd.LBWD;
2121
import com.funniray.lbwd.datatypes.Ban;
22+
import com.funniray.lbwd.events.UnbanEvent;
2223
import com.funniray.lbwd.utils.Colors;
2324
import dev.waterdog.waterdogpe.ProxyServer;
2425
import dev.waterdog.waterdogpe.command.Command;
@@ -60,6 +61,9 @@ public boolean onExecute(CommandSender commandSender, String s, String[] strings
6061

6162
ProxyServer.getInstance().getLogger().info(Colors.GREEN + "Player " + ban.getName() + " was pardoned by " + ban.getRemovedByName());
6263

64+
UnbanEvent event = new UnbanEvent(ban,"ban");
65+
ProxyServer.getInstance().getEventManager().callEvent(event);
66+
6367
return true;
6468
} else {
6569
commandSender.sendMessage(getUsageMessage());

src/main/java/com/funniray/lbwd/commands/UnmuteCommand.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import com.funniray.lbwd.LBWD;
2121
import com.funniray.lbwd.datatypes.Ban;
22+
import com.funniray.lbwd.events.UnbanEvent;
2223
import com.funniray.lbwd.utils.Colors;
2324
import dev.waterdog.waterdogpe.ProxyServer;
2425
import dev.waterdog.waterdogpe.command.Command;
@@ -60,6 +61,9 @@ public boolean onExecute(CommandSender commandSender, String s, String[] strings
6061

6162
ProxyServer.getInstance().getLogger().info(Colors.GREEN + "Player " + ban.getName() + " was unmuted by " + ban.getRemovedByName());
6263

64+
UnbanEvent event = new UnbanEvent(ban,"mute");
65+
ProxyServer.getInstance().getEventManager().callEvent(event);
66+
6367
ProxiedPlayer p = ProxyServer.getInstance().getPlayer(ban.getUuid());
6468
if (p!=null) {
6569
p.sendMessage(Colors.GREEN+"You've been unmuted!");

src/main/java/com/funniray/lbwd/datatypes/Ban.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
package com.funniray.lbwd.datatypes;
1919

2020
import com.funniray.lbwd.LBWD;
21+
import com.funniray.lbwd.events.BanEvent;
2122
import com.funniray.lbwd.utils.Colors;
2223
import com.funniray.lbwd.utils.DateUtils;
2324
import com.funniray.lbwd.utils.UseQuotes;
@@ -222,6 +223,14 @@ public static Ban createBan(CommandSender commandSender, String s, String[] stri
222223
Ban ban = new Ban(uuid,ip,reason,senderUuid,senderName,(double) (new Date()).getTime(),until,silent,isIpBan,true,"*",false);
223224
ban.name = playerName;
224225

226+
BanEvent event = new BanEvent(ban,node);
227+
228+
ProxyServer.getInstance().getEventManager().callEvent(event);
229+
230+
if (event.isCancelled()) {
231+
return null;
232+
}
233+
225234
return ban;
226235
}
227236

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package com.funniray.lbwd.events;
2+
3+
import com.funniray.lbwd.datatypes.Ban;
4+
import dev.waterdog.waterdogpe.event.CancellableEvent;
5+
import dev.waterdog.waterdogpe.event.Event;
6+
7+
public class BanEvent extends Event implements CancellableEvent {
8+
private Ban ban;
9+
private String node;
10+
private boolean cancelled;
11+
12+
public BanEvent(Ban ban, String node) {
13+
this.ban = ban;
14+
this.node = node;
15+
}
16+
17+
public Ban getBan() {
18+
return this.ban;
19+
}
20+
21+
public String getNode() {
22+
return node;
23+
}
24+
25+
@Override
26+
public boolean isCancelled() {
27+
return this.cancelled;
28+
}
29+
30+
@Override
31+
public void setCancelled(boolean b) {
32+
this.cancelled = b;
33+
}
34+
35+
@Override
36+
public void setCancelled() {
37+
this.cancelled = true;
38+
}
39+
}
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package com.funniray.lbwd.events;
2+
3+
import com.funniray.lbwd.datatypes.Ban;
4+
import dev.waterdog.waterdogpe.event.CancellableEvent;
5+
import dev.waterdog.waterdogpe.event.Event;
6+
7+
public class UnbanEvent extends Event implements CancellableEvent {
8+
private Ban ban;
9+
private String node;
10+
private boolean cancelled;
11+
12+
public UnbanEvent(Ban ban, String node) {
13+
this.ban = ban;
14+
this.node = node;
15+
}
16+
17+
public Ban getBan() {
18+
return this.ban;
19+
}
20+
21+
public String getNode() {
22+
return node;
23+
}
24+
25+
@Override
26+
public boolean isCancelled() {
27+
return this.cancelled;
28+
}
29+
30+
@Override
31+
public void setCancelled(boolean b) {
32+
this.cancelled = b;
33+
}
34+
35+
@Override
36+
public void setCancelled() {
37+
this.cancelled = true;
38+
}
39+
}

0 commit comments

Comments
 (0)