|
|
|
|
@@ -9,8 +9,6 @@ import java.net.URL;
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.Set;
|
|
|
|
|
import java.util.Arrays;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.jar.JarEntry;
|
|
|
|
|
import java.util.jar.JarFile;
|
|
|
|
|
@@ -24,10 +22,7 @@ import org.bukkit.event.entity.*;
|
|
|
|
|
import org.bukkit.event.player.*;
|
|
|
|
|
import org.bukkit.event.server.*;
|
|
|
|
|
import org.bukkit.event.vehicle.*;
|
|
|
|
|
import org.bukkit.event.world.ChunkLoadEvent;
|
|
|
|
|
import org.bukkit.event.world.ChunkUnloadEvent;
|
|
|
|
|
import org.bukkit.event.world.WorldEvent;
|
|
|
|
|
import org.bukkit.event.world.WorldListener;
|
|
|
|
|
import org.bukkit.event.world.*;
|
|
|
|
|
import org.bukkit.plugin.*;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@@ -161,289 +156,338 @@ public final class JavaPluginLoader implements PluginLoader {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public EventExecutor createExecutor( Event.Type type, Listener listener ) {
|
|
|
|
|
public EventExecutor createExecutor(Event.Type type, Listener listener ) {
|
|
|
|
|
// TODO: remove multiple Listener type and hence casts
|
|
|
|
|
switch (type) {
|
|
|
|
|
// Player Events
|
|
|
|
|
case PLAYER_JOIN:
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerJoin( (PlayerJoinEvent)event );
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerJoin((PlayerJoinEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_QUIT:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerQuit( (PlayerEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerQuit((PlayerEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_RESPAWN:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerRespawn( (PlayerRespawnEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerRespawn((PlayerRespawnEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_KICK:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerKick( (PlayerKickEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerKick((PlayerKickEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_COMMAND_PREPROCESS:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerCommandPreprocess( (PlayerChatEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerCommandPreprocess((PlayerChatEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_CHAT:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerChat( (PlayerChatEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerChat((PlayerChatEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_MOVE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerMove( (PlayerMoveEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerMove((PlayerMoveEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_TELEPORT:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerTeleport( (PlayerMoveEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerTeleport((PlayerMoveEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_INTERACT:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerInteract( (PlayerInteractEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerInteract((PlayerInteractEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_LOGIN:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerLogin( (PlayerLoginEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerLogin((PlayerLoginEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_EGG_THROW:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerEggThrow( (PlayerEggThrowEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerEggThrow((PlayerEggThrowEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_ANIMATION:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerAnimation( (PlayerAnimationEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerAnimation((PlayerAnimationEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case INVENTORY_OPEN:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onInventoryOpen( (PlayerInventoryEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onInventoryOpen((PlayerInventoryEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_ITEM_HELD:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onItemHeldChange( (PlayerItemHeldEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onItemHeldChange((PlayerItemHeldEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_DROP_ITEM:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerDropItem( (PlayerDropItemEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerDropItem((PlayerDropItemEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_PICKUP_ITEM:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerPickupItem( (PlayerPickupItemEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerPickupItem((PlayerPickupItemEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLAYER_TOGGLE_SNEAK:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((PlayerListener)listener).onPlayerToggleSneak( (PlayerToggleSneakEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerToggleSneak((PlayerToggleSneakEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
case PLAYER_BUCKET_EMPTY:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event) {
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerBucketEmpty((PlayerBucketEmptyEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
case PLAYER_BUCKET_FILL:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event) {
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((PlayerListener) listener).onPlayerBucketFill((PlayerBucketFillEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// Block Events
|
|
|
|
|
case BLOCK_PHYSICS:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockPhysics( (BlockPhysicsEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockPhysics((BlockPhysicsEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_CANBUILD:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockCanBuild( (BlockCanBuildEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockCanBuild((BlockCanBuildEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_PLACE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockPlace( (BlockPlaceEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockPlace((BlockPlaceEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_DAMAGE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockDamage( (BlockDamageEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockDamage((BlockDamageEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_FROMTO:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockFlow( (BlockFromToEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockFlow((BlockFromToEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case LEAVES_DECAY:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onLeavesDecay( (LeavesDecayEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onLeavesDecay((LeavesDecayEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case SIGN_CHANGE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onSignChange( (SignChangeEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onSignChange((SignChangeEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_IGNITE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockIgnite( (BlockIgniteEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockIgnite((BlockIgniteEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case REDSTONE_CHANGE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockRedstoneChange( (BlockRedstoneEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockRedstoneChange((BlockRedstoneEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_BURN:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockBurn( (BlockBurnEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockBurn((BlockBurnEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case BLOCK_BREAK:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((BlockListener)listener).onBlockBreak( (BlockBreakEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((BlockListener) listener).onBlockBreak((BlockBreakEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// Server Events
|
|
|
|
|
case PLUGIN_ENABLE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((ServerListener)listener).onPluginEnable( (PluginEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((ServerListener) listener).onPluginEnable((PluginEnableEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case PLUGIN_DISABLE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((ServerListener)listener).onPluginDisable( (PluginEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((ServerListener) listener).onPluginDisable((PluginDisableEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
case SERVER_COMMAND:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((ServerListener)listener).onServerCommand( (ServerCommandEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((ServerListener) listener).onServerCommand((ServerCommandEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// World Events
|
|
|
|
|
case CHUNK_LOAD:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((WorldListener)listener).onChunkLoad( (ChunkLoadEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((WorldListener) listener).onChunkLoad((ChunkLoadEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case CHUNK_UNLOAD:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((WorldListener)listener).onChunkUnload( (ChunkUnloadEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((WorldListener) listener).onChunkUnload((ChunkUnloadEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case WORLD_SAVE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((WorldListener)listener).onWorldSave( (WorldEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((WorldListener) listener).onWorldSave((WorldSaveEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case WORLD_LOAD:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((WorldListener)listener).onWorldLoad( (WorldEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((WorldListener) listener).onWorldLoad((WorldLoadEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// Entity Events
|
|
|
|
|
case ENTITY_DAMAGE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onEntityDamage( (EntityDamageEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onEntityDamage((EntityDamageEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case ENTITY_DEATH:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onEntityDeath( (EntityDeathEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onEntityDeath((EntityDeathEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case ENTITY_COMBUST:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onEntityCombust( (EntityCombustEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onEntityCombust((EntityCombustEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case ENTITY_EXPLODE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onEntityExplode( (EntityExplodeEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onEntityExplode((EntityExplodeEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case EXPLOSION_PRIME:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onExplosionPrime( (ExplosionPrimeEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onExplosionPrime((ExplosionPrimeEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case ENTITY_TARGET:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onEntityTarget( (EntityTargetEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onEntityTarget((EntityTargetEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case CREATURE_SPAWN:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((EntityListener)listener).onCreatureSpawn( (CreatureSpawnEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((EntityListener) listener).onCreatureSpawn((CreatureSpawnEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// Vehicle Events
|
|
|
|
|
case VEHICLE_CREATE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleCreate( (VehicleCreateEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleCreate((VehicleCreateEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_DAMAGE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleDamage( (VehicleDamageEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleDamage((VehicleDamageEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_COLLISION_BLOCK:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleBlockCollision( (VehicleBlockCollisionEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleBlockCollision((VehicleBlockCollisionEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_COLLISION_ENTITY:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleEntityCollision( (VehicleEntityCollisionEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleEntityCollision((VehicleEntityCollisionEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_ENTER:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleEnter( (VehicleEnterEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleEnter((VehicleEnterEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_EXIT:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleExit( (VehicleExitEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleExit((VehicleExitEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_MOVE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleMove( (VehicleMoveEvent)event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleMove((VehicleMoveEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
case VEHICLE_UPDATE:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((VehicleListener)listener).onVehicleUpdate((VehicleEvent)event);
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((VehicleListener) listener).onVehicleUpdate((VehicleUpdateEvent) event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// Custom Events
|
|
|
|
|
case CUSTOM_EVENT:
|
|
|
|
|
return new EventExecutor() { public void execute( Listener listener, Event event ) {
|
|
|
|
|
((CustomEventListener)listener).onCustomEvent( event );
|
|
|
|
|
return new EventExecutor() {
|
|
|
|
|
public void execute(Listener listener, Event event) {
|
|
|
|
|
((CustomEventListener) listener).onCustomEvent(event);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|