Skip to content

Commit

Permalink
Working towards adding support for all entity events.
Browse files Browse the repository at this point in the history
  • Loading branch information
EvilSeph committed Apr 25, 2011
1 parent d4fcde3 commit 587a3e9
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 1 deletion.
14 changes: 14 additions & 0 deletions src/main/java/com/cogito/bukkit/dev/DevBukkit.java
Expand Up @@ -45,6 +45,9 @@
import org.bukkit.block.Block;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityInteractEvent;
import org.bukkit.event.entity.ExplosionPrimeEvent;
import org.bukkit.util.config.Configuration;

/**
Expand Down Expand Up @@ -79,7 +82,10 @@ private void initialiseEventAliases() {
eventAliases.put("entityda", EntityDamageEvent.class);
eventAliases.put("entityde", EntityDeathEvent.class);
eventAliases.put("entitye", EntityExplodeEvent.class);
eventAliases.put("entityi", EntityInteractEvent.class);
eventAliases.put("entityt", EntityTargetEvent.class);
eventAliases.put("explosionp", ExplosionPrimeEvent.class);
eventAliases.put("creaturesp",CreatureSpawnEvent.class);
//block event aliases
eventAliases.put("block", BlockEvent.class);
eventAliases.put("blockd", BlockDamageEvent.class);
Expand Down Expand Up @@ -116,13 +122,17 @@ public void onEnable() {
initialiseEventAliases();
setDebugMode(EntityEvent.class,false,false);
setDebugMode(BlockEvent.class,false,false);
setDebugMode(PlayerEvent.class,false,false);

PluginManager pm = getServer().getPluginManager();
//entity events
pm.registerEvent(Event.Type.ENTITY_COMBUST, entityListener, Priority.Normal, this);
pm.registerEvent(Event.Type.ENTITY_DAMAGE, entityListener, Priority.Normal, this);
pm.registerEvent(Event.Type.ENTITY_DEATH, entityListener, Priority.Normal, this);
pm.registerEvent(Event.Type.ENTITY_TARGET, entityListener, Priority.Normal, this);
pm.registerEvent(Event.Type.ENTITY_INTERACT, entityListener, Priority.Normal, this);
pm.registerEvent(Event.Type.EXPLOSION_PRIME, entityListener, Priority.Normal, this);
pm.registerEvent(Event.Type.CREATURE_SPAWN, entityListener, Priority.Normal, this);

//block events
pm.registerEvent(Event.Type.BLOCK_CANBUILD, blockListener, Priority.Normal, this);
Expand Down Expand Up @@ -436,6 +446,10 @@ private String debugString(Event event) {
message += damager.getClass().getSimpleName()+"["+damager.getEntityId()+"]";
}
message += " ("+((EntityDamageEvent) event).getCause()+")";
} else if (e instanceof ExplosionPrimeEvent) {
message += " exploded (" + ((ExplosionPrimeEvent)e).getEntity().getLocation().getX() + ", " + ((ExplosionPrimeEvent)e).getEntity().getLocation().getY() + ", " + ((ExplosionPrimeEvent)e).getEntity().getLocation().getZ() + ")";
} else if (e instanceof EntityInteractEvent) {
message += " interacted with " + ((EntityInteractEvent)e).getBlock() + " at (" + ((EntityInteractEvent)e).getBlock().getX() + ", " + ((EntityInteractEvent)e).getBlock().getY() + ", " + ((EntityInteractEvent)e).getBlock().getZ() + ")";
}
} else if (e instanceof PlayerEvent) {
Player player = ((PlayerEvent) e).getPlayer();
Expand Down
20 changes: 19 additions & 1 deletion src/main/java/com/cogito/bukkit/dev/DevEntityListener.java
@@ -1,14 +1,17 @@
package com.cogito.bukkit.dev;

import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityCombustEvent;
import org.bukkit.event.entity.EntityDamageByBlockEvent;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageByProjectileEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.EntityInteractEvent;
import org.bukkit.event.entity.EntityListener;
import org.bukkit.event.entity.EntityTargetEvent;
import org.bukkit.event.entity.ExplosionPrimeEvent;

/**
* Handle all Player related events
Expand Down Expand Up @@ -39,7 +42,7 @@ public void onEntityDamageByProjectile(EntityDamageByProjectileEvent event) {
plugin.cancelEvent(event);
plugin.godMode(event);
}

public void onEntityCombust(EntityCombustEvent event) {
plugin.debugMessage(event);
plugin.cancelEvent(event);
Expand Down Expand Up @@ -69,4 +72,19 @@ public void onEntityTarget(EntityTargetEvent event) {
plugin.cancelEvent(event);
plugin.godMode(event);
}
public void onEntityInteract(EntityInteractEvent event) {
plugin.debugMessage(event);
plugin.cancelEvent(event);
plugin.godMode(event);
}
public void onExplosionPrime(ExplosionPrimeEvent event) {
plugin.debugMessage(event);
plugin.cancelEvent(event);
plugin.godMode(event);
}
public void onCreatureSpawn(CreatureSpawnEvent event) {
plugin.debugMessage(event);
plugin.cancelEvent(event);
plugin.godMode(event);
}
}

0 comments on commit 587a3e9

Please sign in to comment.