mirror of
https://github.com/Shiewk/SModeration.git
synced 2026-04-28 05:54:16 +02:00
Add a VanishToggleEvent
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package de.shiewk.smoderation.paper.command;
|
package de.shiewk.smoderation.paper.command;
|
||||||
|
|
||||||
import de.shiewk.smoderation.paper.SModerationPaper;
|
import de.shiewk.smoderation.paper.SModerationPaper;
|
||||||
|
import de.shiewk.smoderation.paper.event.VanishToggleEvent;
|
||||||
import de.shiewk.smoderation.paper.util.PlayerUtil;
|
import de.shiewk.smoderation.paper.util.PlayerUtil;
|
||||||
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
|
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
|
||||||
import it.unimi.dsi.fastutil.objects.ObjectListIterator;
|
import it.unimi.dsi.fastutil.objects.ObjectListIterator;
|
||||||
@@ -63,6 +64,11 @@ public class VanishCommand implements TabExecutor {
|
|||||||
|
|
||||||
public static void toggleVanish(Player player){
|
public static void toggleVanish(Player player){
|
||||||
final boolean newStatus = !isVanished(player);
|
final boolean newStatus = !isVanished(player);
|
||||||
|
VanishToggleEvent event = new VanishToggleEvent(player, newStatus);
|
||||||
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
|
if (event.isCancelled()){
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (newStatus){
|
if (newStatus){
|
||||||
vanishedPlayers.add(player);
|
vanishedPlayers.add(player);
|
||||||
for (CommandSender sender : SModerationPaper.container.collectBroadcastTargets()) {
|
for (CommandSender sender : SModerationPaper.container.collectBroadcastTargets()) {
|
||||||
|
|||||||
+42
@@ -0,0 +1,42 @@
|
|||||||
|
package de.shiewk.smoderation.paper.event;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
import org.bukkit.event.player.PlayerEvent;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
public class VanishToggleEvent extends PlayerEvent implements Cancellable {
|
||||||
|
private static final HandlerList handlerList = new HandlerList();
|
||||||
|
|
||||||
|
private final boolean state;
|
||||||
|
private boolean cancelled;
|
||||||
|
|
||||||
|
public VanishToggleEvent(Player player, boolean state) {
|
||||||
|
super(player);
|
||||||
|
this.state = state;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean getState() {
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public @NotNull HandlerList getHandlers() {
|
||||||
|
return handlerList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HandlerList getHandlerList() {
|
||||||
|
return handlerList;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isCancelled() {
|
||||||
|
return cancelled;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setCancelled(boolean cancelled) {
|
||||||
|
this.cancelled = cancelled;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user