Package org.bukkit.entity

Examples of org.bukkit.entity.Entity


    public Map<String, Tuple2<Entity, Block>> chairs;

    public void addChair(final Player player, Block block) {

        Entity ar = null;
        if(chairs.containsKey(player.getName()))
            ar = chairs.get(player.getName()).a;
        boolean isNew = false;

        if(ar == null || !ar.isValid() || ar.isDead() || !ar.getLocation().getBlock().equals(block)) {
            if(ar != null && !ar.getLocation().getBlock().equals(block))
                ar.remove();
            ar = block.getWorld().spawnArrow(BlockUtil.getBlockCentre(block).subtract(0, 0.5, 0), new Vector(0,-0.1,0), 0.01f, 0);
            isNew = true;
        }
        if (!chairs.containsKey(player.getName()))
            CraftBookPlugin.inst().wrapPlayer(player).print("mech.chairs.sit");
        // Attach the player to said arrow.
        final Entity far = ar;
        if(ar.isEmpty() && isNew) {
            Bukkit.getScheduler().runTask(CraftBookPlugin.inst(), new Runnable() {
                @Override
                public void run () {
                    far.setPassenger(player);
                }
            });
        } else if (ar.isEmpty()) {
            removeChair(player);
            return;
View Full Code Here


    }

    public void removeChair(final Player player) {

        CraftBookPlugin.inst().wrapPlayer(player).print("mech.chairs.stand");
        final Entity ent = chairs.get(player.getName()).a;
        final Block block = chairs.get(player.getName()).b;
        if(ent != null) {
            player.eject();
            player.teleport(block.getLocation().add(0, 1, 0));
            ent.remove();
            Bukkit.getScheduler().runTaskLater(CraftBookPlugin.inst(), new Runnable() {
                @Override
                public void run () {
                    player.teleport(block.getLocation().add(0, 1, 0));
                    player.setSneaking(false);
View Full Code Here

    }

    public static boolean isSortApplicable(String line, Minecart minecart) {

        if (line.equalsIgnoreCase("All")) return true;
        Entity test = minecart.getPassenger();
        Player player = null;
        if (test instanceof Player) {
            player = (Player) test;
        }

        if ((line.equalsIgnoreCase("Unoccupied") || line.equalsIgnoreCase("Empty")) && minecart.getPassenger() == null)
            return true;

        if (line.equalsIgnoreCase("Storage") && minecart instanceof StorageMinecart) return true;
        else if (line.equalsIgnoreCase("Powered") && minecart instanceof PoweredMinecart) return true;
        else if (line.equalsIgnoreCase("Minecart")) return true;

        if ((line.equalsIgnoreCase("Occupied") || line.equalsIgnoreCase("Full")) && minecart.getPassenger() != null)
            return true;

        if (line.equalsIgnoreCase("Animal") && test instanceof Animals) return true;

        if (line.equalsIgnoreCase("Mob") && test instanceof Monster) return true;

        if ((line.equalsIgnoreCase("Player") || line.equalsIgnoreCase("Ply")) && player != null) return true;

        String[] parts = RegexUtil.COLON_PATTERN.split(line);

        if (parts.length >= 2) if (player != null && parts[0].equalsIgnoreCase("Held")) {
            try {
                int item = Integer.parseInt(parts[1]);
                if (player.getItemInHand().getTypeId() == item) return true;
            } catch (NumberFormatException ignored) {
            }
        } else if (player != null && parts[0].equalsIgnoreCase("Ply")) {
            if (parts[1].equalsIgnoreCase(player.getName())) return true;
        } else if (parts[0].equalsIgnoreCase("Mob")) {
            String testMob = parts[1];
            return test.getType().toString().equalsIgnoreCase(testMob);
        } else if (minecart instanceof StorageMinecart && parts[0].equalsIgnoreCase("Ctns")) {
            StorageMinecart storageCart = (StorageMinecart) minecart;
            Inventory storageInventory = storageCart.getInventory();

            if (parts.length == 4) {
View Full Code Here

        ChangedSign armourSign = null;
        if (right.getType() == Material.WALL_SIGN)
            armourSign = BukkitUtil.toChangedSign(right);

        for (int i = 0; i < amount; i++) {
            Entity ent = BukkitUtil.toSign(getSign()).getWorld().spawn(location, type.getEntityClass());

            if (armourSign != null) { // Apply armor
                if (ent instanceof LivingEntity) {

                    for (int s = 0; s < 4; s++) {
                        String bit = armourSign.getLine(s);

                        ItemStack slot = ItemUtil.makeItemValid(ItemSyntax.getItem(bit));

                        switch (s) {
                            case 0:
                                ((LivingEntity) ent).getEquipment().setHelmet(slot);
                                break;
                            case 1:
                                ((LivingEntity) ent).getEquipment().setChestplate(slot);
                                break;
                            case 2:
                                ((LivingEntity) ent).getEquipment().setLeggings(slot);
                                break;
                            case 3:
                                ((LivingEntity) ent).getEquipment().setBoots(slot);
                                break;
                        }
                    }
                }
            }

            Boolean upwards = null;

            while (effectSign != null) { // Apply effects
                for (int s = 0; s < 4; s++) {
                    String bit = effectSign.getLine(s);
                    if (bit == null || bit.trim().isEmpty()) continue;

                    String[] data = RegexUtil.COLON_PATTERN.split(bit);

                    if (data[0].equalsIgnoreCase("e")) EntityUtil.setEntityData(ent, bit.substring(2));
                    else if (data[0].equalsIgnoreCase("r")) {
                        EntityType rider = EntityType.fromName(data[1].trim());
                        Entity rid = BukkitUtil.toSign(getSign()).getWorld().spawnEntity(location, rider);
                        ent.setPassenger(rid);
                    } else if (data[0].equalsIgnoreCase("p") && ent instanceof LivingEntity) {
                        for (int a = 1; a < data.length; a++) {
                            try {
                                String[] potionBits = RegexUtil.SEMICOLON_PATTERN.split(data[a]);
View Full Code Here

            sp.update();
        } else {
            Location loc = LocationUtil.getCenterOfBlock(LocationUtil.getNextFreeSpace(center, BlockFace.UP));
            // spawn amount of mobs
            for (int i = 0; i < amount; i++) {
                Entity entity = loc.getWorld().spawn(loc, type.getEntityClass());
                if(entity instanceof Skeleton)
                    ((Skeleton) entity).getEquipment().setItemInHand(new ItemStack(Material.BOW, 1));
                EntityUtil.setEntityData(entity, data);
            }
        }
View Full Code Here

        if (event.getEntity() instanceof Player)
        {
            Player attacked = (Player) event.getEntity();
            Player offender = null;
            String message = attacked.getDisplayName();
            Entity attacker;
            switch (event.getCause())
            {
            case ENTITY_ATTACK:
                attacker = event.getDamager();
                if (attacker instanceof Player)
                    offender = (Player) attacker;
                break;
            case PROJECTILE:
            case MAGIC:
                Entity damager = event.getDamager();
                if (damager instanceof Projectile)
                {
                    ((Projectile) damager).getShooter();
                    ProjectileSource source = ((Projectile) damager).getShooter();
                    if (source instanceof Player)
View Full Code Here

    {
        WorldConfig world = CreeperConfig.getWorld(event.getLocation().getWorld());

        if (!FactionHandler.shouldIgnore(event.blockList(), world))
        {
            Entity entity = event.getEntity();
            if (entity == null && !world.isAbove(event.getLocation()))
                return;
            if (world.shouldReplace(entity))
                ExplodedBlockManager.processExplosion(event, CreeperUtils.getReason(entity));
        }
View Full Code Here

      final PacketContainer packet = event.getPacket();
      final Player sendee = event.getPlayer();
     
      // ... fetch the entity ...
      // NOTE: MetaData packets are only sent to players in the same world.
      final Entity entity = packet.getEntityModifier(sendee.getWorld()).read(0);
     
      // Fireworks cannot have potion effects! They also reuse index 8
      // for sending their item stack, causing a crash if we don't bail out now.
      if (entity instanceof Firework) return;
     
View Full Code Here

      throw new TeleporterException(Txt.parse("<b>Could not calculate the location: %s", e.getMessage()));
    }
   
    // eject passengers and unmount before transport
    player.eject();
    Entity vehicle = player.getVehicle();
    if (vehicle != null) vehicle.eject();
   
    // Do the teleport
    TeleportMixinCauseEngine.get().setMixinCausedTeleportIncoming(true);
    player.teleport(location);
    TeleportMixinCauseEngine.get().setMixinCausedTeleportIncoming(false);
View Full Code Here

 
  public static Entity getLiableDamager(EntityDamageEvent event)
  {
    if ( ! (event instanceof EntityDamageByEntityEvent)) return null;
    EntityDamageByEntityEvent edbeEvent = (EntityDamageByEntityEvent)event;
    Entity ret = edbeEvent.getDamager();
    if (ret instanceof Projectile)
    {
      ret = ((Projectile)ret).getShooter();
    }
    return ret;
View Full Code Here

TOP

Related Classes of org.bukkit.entity.Entity

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.