Skip to content

Commit e01724d

Browse files
authored
Expand api event (#15)
1 parent 8b0eddc commit e01724d

File tree

3 files changed

+40
-7
lines changed

3 files changed

+40
-7
lines changed

src/main/java/catserver/api/bukkit/event/ForgeEvent.java

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@
44
import org.bukkit.Bukkit;
55
import org.bukkit.event.HandlerList;
66

7+
import javax.annotation.Nonnull;
8+
9+
/**
10+
* A Bukkit side wrapper for Forge events.
11+
* This wrapper event is <b>optionally</b> cancellable.
12+
*/
13+
@SuppressWarnings("unused")
714
public class ForgeEvent extends org.bukkit.event.Event {
815
private static final HandlerList handlers = new HandlerList();
916
private final Event forgeEvent;
@@ -13,10 +20,41 @@ public ForgeEvent(Event forgeEvent) {
1320
this.forgeEvent = forgeEvent;
1421
}
1522

23+
@Nonnull
1624
public Event getForgeEvent() {
1725
return this.forgeEvent;
1826
}
1927

28+
/**
29+
* Try to set the cancelled state of the wrapped Forge event.
30+
* @param cancelled The cancelled state to set.
31+
* @return Whether the cancelled state was successfully set.
32+
*/
33+
public boolean trySetCancelled(boolean cancelled) {
34+
if (this.forgeEvent.isCancelable()) {
35+
this.forgeEvent.setCanceled(cancelled);
36+
return true;
37+
}
38+
return false;
39+
}
40+
41+
/**
42+
* Get the cancelled state of the wrapped Forge event.
43+
* @return Whether the wrapped Forge event is cancelled.
44+
* If the wrapped Forge event is not cancellable, this will always return false.
45+
*/
46+
public boolean isCancelled() {
47+
return this.forgeEvent.isCanceled();
48+
}
49+
50+
/**
51+
* Get whether the wrapped Forge event is cancellable.
52+
* @return Whether the wrapped Forge event is cancellable.
53+
*/
54+
public boolean isCancellable() {
55+
return this.forgeEvent.isCancelable();
56+
}
57+
2058
@Override
2159
public HandlerList getHandlers() {
2260
return handlers;

src/main/java/catserver/server/command/internal/CommandCatserver.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,18 @@
11
package catserver.server.command.internal;
22

33
import catserver.server.CatServer;
4-
// CatRoom start - Dump item command
54
import catserver.server.utils.ItemStackUtils;
65
import net.md_5.bungee.api.chat.ClickEvent;
76
import net.md_5.bungee.api.chat.TextComponent;
8-
import net.minecraft.item.ItemStack;
9-
// CatRoom end - Dump item command
107
import net.minecraft.world.World;
118
import net.minecraftforge.common.DimensionManager;
129
import org.bukkit.Bukkit;
1310
import org.bukkit.ChatColor;
1411
import org.bukkit.command.Command;
1512
import org.bukkit.command.CommandSender;
1613
import org.bukkit.craftbukkit.v1_12_R1.CraftServer;
17-
// CatRoom start - Dump item command
1814
import org.bukkit.craftbukkit.v1_12_R1.entity.CraftPlayer;
1915
import org.bukkit.entity.Player;
20-
// CatRoom end - Dump item command
2116

2217
public class CommandCatserver extends Command {
2318
public CommandCatserver(String name) {

src/main/java/org/bukkit/plugin/EventExecutor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,17 @@
1212

1313
import com.google.common.base.Preconditions;
1414

15-
// CatRoom start
1615
import catserver.server.executor.hiddenclass.BukkitEventExecutorFactory;
1716
import org.bukkit.plugin.java.JavaPlugin;
1817
import org.bukkit.Bukkit;
19-
// CatRoom end
2018

2119
/**
2220
* Interface which defines the class for event call backs to plugins
2321
*/
2422
public interface EventExecutor {
2523
public void execute(Listener listener, Event event) throws EventException;
2624

25+
/*
2726
ConcurrentMap<Method, Class<? extends EventExecutor>> eventExecutorMap = new ConcurrentHashMap<Method, Class<? extends EventExecutor>>() {
2827
@Override
2928
public Class<? extends EventExecutor> computeIfAbsent(Method key, Function<? super Method, ? extends Class<? extends EventExecutor>> mappingFunction) {
@@ -41,6 +40,7 @@ public Class<? extends EventExecutor> computeIfAbsent(Method key, Function<? sup
4140
}
4241
}
4342
};
43+
*/ // CatRoom - Use hidden class for event executors
4444

4545
public static EventExecutor create(Method m, Class<? extends Event> eventClass) {
4646
Preconditions.checkNotNull(m, "Null method");

0 commit comments

Comments
 (0)