mirror of
https://github.com/TotalFreedomMC/TF-EssentialsX.git
synced 2025-04-27 00:49:44 +00:00
[API] A basic example of a custom event, more to come.
This commit is contained in:
parent
db234b9837
commit
ff8c7b3315
2 changed files with 57 additions and 2 deletions
|
@ -0,0 +1,52 @@
|
|||
package com.earth2me.essentials.api.events;
|
||||
|
||||
import com.earth2me.essentials.User;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
|
||||
|
||||
public class UserToggleGodmodeEvent extends Event implements Cancellable
|
||||
{
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private boolean cancelled;
|
||||
private User user;
|
||||
private boolean enabled;
|
||||
|
||||
/**
|
||||
* Thrown when a user's god mode is toggled.
|
||||
*
|
||||
* @param user - the user whose god mode is toggled.
|
||||
* @param enabled - true if god mode was enabled, false if disabled.
|
||||
*/
|
||||
public UserToggleGodmodeEvent (User user, boolean enabled)
|
||||
{
|
||||
enabled = this.enabled;
|
||||
user = this.user;
|
||||
this.cancelled = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HandlerList getHandlers()
|
||||
{
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList()
|
||||
{
|
||||
return handlers;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCancelled()
|
||||
{
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCancelled(boolean cancelled)
|
||||
{
|
||||
this.cancelled = cancelled;
|
||||
}
|
||||
|
||||
}
|
|
@ -2,6 +2,7 @@ package com.earth2me.essentials.commands;
|
|||
|
||||
import static com.earth2me.essentials.I18n._;
|
||||
import com.earth2me.essentials.User;
|
||||
import com.earth2me.essentials.api.events.UserToggleGodmodeEvent;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
|
@ -35,7 +36,7 @@ public class Commandgod extends EssentialsToggleCommand
|
|||
}
|
||||
}
|
||||
else if (args.length == 2 && user.isAuthorized(othersPermission))
|
||||
{
|
||||
{
|
||||
toggleOtherPlayers(server, user, args);
|
||||
}
|
||||
else
|
||||
|
@ -51,8 +52,10 @@ public class Commandgod extends EssentialsToggleCommand
|
|||
{
|
||||
enabled = !user.isGodModeEnabled();
|
||||
}
|
||||
|
||||
|
||||
user.setGodModeEnabled(enabled);
|
||||
UserToggleGodmodeEvent event = new UserToggleGodmodeEvent(user, enabled);
|
||||
ess.getServer().getPluginManager().callEvent(event);
|
||||
|
||||
if (enabled && user.getHealth() != 0)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue