Add events
This commit is contained in:
parent
a0892c56c1
commit
b809790ea3
@ -9,12 +9,16 @@ import me.libraryaddict.disguise.DisguiseTypes.DisguiseSound;
|
|||||||
import me.libraryaddict.disguise.DisguiseTypes.DisguiseType;
|
import me.libraryaddict.disguise.DisguiseTypes.DisguiseType;
|
||||||
import me.libraryaddict.disguise.DisguiseTypes.DisguiseSound.SoundType;
|
import me.libraryaddict.disguise.DisguiseTypes.DisguiseSound.SoundType;
|
||||||
import me.libraryaddict.disguise.DisguiseTypes.MobDisguise;
|
import me.libraryaddict.disguise.DisguiseTypes.MobDisguise;
|
||||||
|
import me.libraryaddict.disguise.Events.DisguisedEvent;
|
||||||
|
import me.libraryaddict.disguise.Events.RedisguisedEvent;
|
||||||
|
import me.libraryaddict.disguise.Events.UndisguisedEvent;
|
||||||
import net.minecraft.server.v1_6_R2.Block;
|
import net.minecraft.server.v1_6_R2.Block;
|
||||||
import net.minecraft.server.v1_6_R2.EntityPlayer;
|
import net.minecraft.server.v1_6_R2.EntityPlayer;
|
||||||
import net.minecraft.server.v1_6_R2.EntityTrackerEntry;
|
import net.minecraft.server.v1_6_R2.EntityTrackerEntry;
|
||||||
import net.minecraft.server.v1_6_R2.World;
|
import net.minecraft.server.v1_6_R2.World;
|
||||||
import net.minecraft.server.v1_6_R2.WorldServer;
|
import net.minecraft.server.v1_6_R2.WorldServer;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.craftbukkit.v1_6_R2.entity.CraftEntity;
|
import org.bukkit.craftbukkit.v1_6_R2.entity.CraftEntity;
|
||||||
import org.bukkit.craftbukkit.v1_6_R2.entity.CraftLivingEntity;
|
import org.bukkit.craftbukkit.v1_6_R2.entity.CraftLivingEntity;
|
||||||
@ -60,11 +64,21 @@ public class DisguiseAPI {
|
|||||||
public static void disguiseToAll(Entity entity, Disguise disguise) {
|
public static void disguiseToAll(Entity entity, Disguise disguise) {
|
||||||
if (disguise == null)
|
if (disguise == null)
|
||||||
return;
|
return;
|
||||||
|
Disguise oldDisguise = getDisguise(entity);
|
||||||
|
if (oldDisguise != null) {
|
||||||
|
RedisguisedEvent event = new RedisguisedEvent(entity, oldDisguise, disguise);
|
||||||
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
|
if (event.isCancelled())
|
||||||
|
return;
|
||||||
|
oldDisguise.getScheduler().cancel();
|
||||||
|
} else {
|
||||||
|
DisguisedEvent event = new DisguisedEvent(entity, disguise);
|
||||||
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
|
if (event.isCancelled())
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (disguise.getWatcher() != null)
|
if (disguise.getWatcher() != null)
|
||||||
disguise = disguise.clone();
|
disguise = disguise.clone();
|
||||||
Disguise oldDisguise = getDisguise(entity);
|
|
||||||
if (oldDisguise != null)
|
|
||||||
oldDisguise.getScheduler().cancel();
|
|
||||||
put(entity, disguise);
|
put(entity, disguise);
|
||||||
disguise.constructWatcher(plugin, entity);
|
disguise.constructWatcher(plugin, entity);
|
||||||
refresh(entity);
|
refresh(entity);
|
||||||
@ -315,6 +329,10 @@ public class DisguiseAPI {
|
|||||||
Disguise disguise = getDisguise(entity);
|
Disguise disguise = getDisguise(entity);
|
||||||
if (disguise == null)
|
if (disguise == null)
|
||||||
return;
|
return;
|
||||||
|
UndisguisedEvent event = new UndisguisedEvent(entity, disguise);
|
||||||
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
|
if (event.isCancelled())
|
||||||
|
return;
|
||||||
disguise.getScheduler().cancel();
|
disguise.getScheduler().cancel();
|
||||||
put(entity, null);
|
put(entity, null);
|
||||||
if (entity.isValid()) {
|
if (entity.isValid()) {
|
||||||
|
46
src/me/libraryaddict/disguise/Events/DisguisedEvent.java
Normal file
46
src/me/libraryaddict/disguise/Events/DisguisedEvent.java
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
package me.libraryaddict.disguise.Events;
|
||||||
|
|
||||||
|
import me.libraryaddict.disguise.DisguiseTypes.Disguise;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Entity;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
|
public class DisguisedEvent extends Event implements Cancellable {
|
||||||
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
private Disguise disguise;
|
||||||
|
private Entity disguised;
|
||||||
|
private boolean isCancelled;
|
||||||
|
|
||||||
|
public DisguisedEvent(Entity entity, Disguise disguise) {
|
||||||
|
this.disguised = entity;
|
||||||
|
this.disguise = disguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Disguise getDisguise() {
|
||||||
|
return disguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Entity getDisguised() {
|
||||||
|
return disguised;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HandlerList getHandlerList() {
|
||||||
|
return handlers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public HandlerList getHandlers() {
|
||||||
|
return handlers;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isCancelled() {
|
||||||
|
return isCancelled;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setCancelled(boolean cancelled) {
|
||||||
|
isCancelled = cancelled;
|
||||||
|
}
|
||||||
|
}
|
52
src/me/libraryaddict/disguise/Events/RedisguisedEvent.java
Normal file
52
src/me/libraryaddict/disguise/Events/RedisguisedEvent.java
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
package me.libraryaddict.disguise.Events;
|
||||||
|
|
||||||
|
import me.libraryaddict.disguise.DisguiseTypes.Disguise;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Entity;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
|
public class RedisguisedEvent extends Event implements Cancellable {
|
||||||
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
private Disguise oldDisguise;
|
||||||
|
private Disguise newDisguise;
|
||||||
|
private Entity disguised;
|
||||||
|
private boolean isCancelled;
|
||||||
|
|
||||||
|
public RedisguisedEvent(Entity entity, Disguise oldDisguise, Disguise newDisguise) {
|
||||||
|
this.disguised = entity;
|
||||||
|
this.oldDisguise = oldDisguise;
|
||||||
|
this.newDisguise = newDisguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Disguise getOldDisguise() {
|
||||||
|
return oldDisguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Disguise getNewDisguise() {
|
||||||
|
return newDisguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Entity getDisguised() {
|
||||||
|
return disguised;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HandlerList getHandlerList() {
|
||||||
|
return handlers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public HandlerList getHandlers() {
|
||||||
|
return handlers;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isCancelled() {
|
||||||
|
return isCancelled;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setCancelled(boolean cancelled) {
|
||||||
|
isCancelled = cancelled;
|
||||||
|
}
|
||||||
|
}
|
46
src/me/libraryaddict/disguise/Events/UndisguisedEvent.java
Normal file
46
src/me/libraryaddict/disguise/Events/UndisguisedEvent.java
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
package me.libraryaddict.disguise.Events;
|
||||||
|
|
||||||
|
import me.libraryaddict.disguise.DisguiseTypes.Disguise;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Entity;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
|
public class UndisguisedEvent extends Event implements Cancellable {
|
||||||
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
private Disguise disguise;
|
||||||
|
private Entity disguised;
|
||||||
|
private boolean isCancelled;
|
||||||
|
|
||||||
|
public UndisguisedEvent(Entity entity, Disguise disguise) {
|
||||||
|
this.disguised = entity;
|
||||||
|
this.disguise = disguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Disguise getDisguise() {
|
||||||
|
return disguise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Entity getDisguised() {
|
||||||
|
return disguised;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HandlerList getHandlerList() {
|
||||||
|
return handlers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public HandlerList getHandlers() {
|
||||||
|
return handlers;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isCancelled() {
|
||||||
|
return isCancelled;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setCancelled(boolean cancelled) {
|
||||||
|
isCancelled = cancelled;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user