blob: fbb4a1cc93c2cd649d6362051dc867573864eef1 [file] [log] [blame] [raw]
package net.glowstone.entity;
import com.google.common.collect.ImmutableBiMap;
import net.glowstone.entity.monster.*;
import net.glowstone.entity.objects.GlowArmorStand;
import net.glowstone.entity.objects.GlowFallingBlock;
import net.glowstone.entity.objects.GlowItem;
import net.glowstone.entity.objects.GlowItemFrame;
import net.glowstone.entity.passive.*;
import org.bukkit.entity.EntityType;
import static org.bukkit.entity.EntityType.*;
public class EntityRegistry {
public static final ImmutableBiMap<EntityType, Class<? extends GlowEntity>> ENTITIES =
ImmutableBiMap.<EntityType, Class<? extends GlowEntity>>builder()
.put(ARMOR_STAND, GlowArmorStand.class)
//TODO: Arrow
.put(BAT, GlowBat.class)
.put(BLAZE, GlowBlaze.class)
//TODO: Boat
.put(CAVE_SPIDER, GlowCaveSpider.class)
.put(CHICKEN, GlowChicken.class)
.put(COW, GlowCow.class)
.put(CREEPER, GlowCreeper.class)
.put(DROPPED_ITEM, GlowItem.class)
//TODO: Egg
//TODO: Ender Crystal
//TODO: Ender Dragon
//TODO: Ender PEarl
//TODO: Ender Signal
.put(ENDERMAN, GlowEnderman.class)
.put(ENDERMITE, GlowEndermite.class)
//TODO: Experience orb
.put(FALLING_BLOCK, GlowFallingBlock.class)
//TODO: Fireball
//TODO: Firework
//TODO: Fishing hook
.put(GHAST, GlowGhast.class)
.put(GIANT, GlowGiant.class)
.put(GUARDIAN, GlowGuardian.class)
.put(HORSE, GlowHorse.class)
.put(IRON_GOLEM, GlowIronGolem.class)
.put(ITEM_FRAME, GlowItemFrame.class)
//TODO: Leash hitch
//TODO: Lightning
.put(MAGMA_CUBE, GlowMagmaCube.class)
//TODO: Minecarts
.put(MUSHROOM_COW, GlowMooshroom.class)
.put(OCELOT, GlowOcelot.class)
//TODO: Painting
.put(PIG, GlowPig.class)
.put(PIG_ZOMBIE, GlowPigZombie.class)
.put(PLAYER, GlowPlayer.class)
.put(POLAR_BEAR, GlowPolarBear.class)
.put(PRIMED_TNT, GlowTNTPrimed.class)
.put(RABBIT, GlowRabbit.class)
.put(SHEEP, GlowSheep.class)
.put(SILVERFISH, GlowSilverfish.class)
.put(SKELETON, GlowSkeleton.class)
.put(SLIME, GlowSlime.class)
//TODO: Fireball
//TODO: Snowball
.put(SNOWMAN, GlowSnowman.class)
.put(SPIDER, GlowSpider.class)
//TODO: Splash potion
.put(SQUID, GlowSquid.class)
//TODO: Experience bottle
.put(VILLAGER, GlowVillager.class)
.put(WEATHER, GlowWeather.class)
.put(WITCH, GlowWitch.class)
//TODO: Wither
//TODO: Wither Skull
.put(WOLF, GlowWolf.class)
.put(ZOMBIE, GlowZombie.class)
.build();
public static Class<? extends GlowEntity> getEntity(short id) {
return ENTITIES.get(fromId(id));
}
}