Esempio n. 1
0
  private Packet b() {
    if (this.tracker.dead) {
      System.out.println("Fetching addPacket for removed entity");
    }

    if (this.tracker instanceof EntityItem) {
      EntityItem entityitem = (EntityItem) this.tracker;
      Packet21PickupSpawn packet21pickupspawn = new Packet21PickupSpawn(entityitem);

      entityitem.locX = (double) packet21pickupspawn.b / 32.0D;
      entityitem.locY = (double) packet21pickupspawn.c / 32.0D;
      entityitem.locZ = (double) packet21pickupspawn.d / 32.0D;
      return packet21pickupspawn;
    } else if (this.tracker instanceof EntityPlayer) {
      return new Packet20NamedEntitySpawn((EntityHuman) this.tracker);
    } else {
      if (this.tracker instanceof EntityMinecart) {
        EntityMinecart entityminecart = (EntityMinecart) this.tracker;

        if (entityminecart.type == 0) {
          return new Packet23VehicleSpawn(this.tracker, 10);
        }

        if (entityminecart.type == 1) {
          return new Packet23VehicleSpawn(this.tracker, 11);
        }

        if (entityminecart.type == 2) {
          return new Packet23VehicleSpawn(this.tracker, 12);
        }
      }

      if (this.tracker instanceof EntityBoat) {
        return new Packet23VehicleSpawn(this.tracker, 1);
      } else if (!(this.tracker instanceof IAnimal)
          && !(this.tracker instanceof EntityEnderDragon)) {
        if (this.tracker instanceof EntityFishingHook) {
          EntityHuman entityhuman = ((EntityFishingHook) this.tracker).owner;

          return new Packet23VehicleSpawn(
              this.tracker, 90, entityhuman != null ? entityhuman.id : this.tracker.id);
        } else if (this.tracker instanceof EntityArrow) {
          Entity entity = ((EntityArrow) this.tracker).shooter;

          return new Packet23VehicleSpawn(
              this.tracker, 60, entity != null ? entity.id : this.tracker.id);
        } else if (this.tracker instanceof EntitySnowball) {
          return new Packet23VehicleSpawn(this.tracker, 61);
        } else if (this.tracker instanceof EntityPotion) {
          return new Packet23VehicleSpawn(
              this.tracker, 73, ((EntityPotion) this.tracker).getPotionValue());
        } else if (this.tracker instanceof EntityThrownExpBottle) {
          return new Packet23VehicleSpawn(this.tracker, 75);
        } else if (this.tracker instanceof EntityEnderPearl) {
          return new Packet23VehicleSpawn(this.tracker, 65);
        } else if (this.tracker instanceof EntityEnderSignal) {
          return new Packet23VehicleSpawn(this.tracker, 72);
        } else {
          Packet23VehicleSpawn packet23vehiclespawn;

          if (this.tracker instanceof EntitySmallFireball) {
            EntitySmallFireball entitysmallfireball = (EntitySmallFireball) this.tracker;

            packet23vehiclespawn = null;
            if (entitysmallfireball.shooter != null) {
              packet23vehiclespawn =
                  new Packet23VehicleSpawn(this.tracker, 64, entitysmallfireball.shooter.id);
            } else {
              packet23vehiclespawn = new Packet23VehicleSpawn(this.tracker, 64, 0);
            }

            packet23vehiclespawn.e = (int) (entitysmallfireball.dirX * 8000.0D);
            packet23vehiclespawn.f = (int) (entitysmallfireball.dirY * 8000.0D);
            packet23vehiclespawn.g = (int) (entitysmallfireball.dirZ * 8000.0D);
            return packet23vehiclespawn;
          } else if (this.tracker instanceof EntityFireball) {
            EntityFireball entityfireball = (EntityFireball) this.tracker;

            packet23vehiclespawn = null;
            if (entityfireball.shooter != null) {
              packet23vehiclespawn =
                  new Packet23VehicleSpawn(
                      this.tracker, 63, ((EntityFireball) this.tracker).shooter.id);
            } else {
              packet23vehiclespawn = new Packet23VehicleSpawn(this.tracker, 63, 0);
            }

            packet23vehiclespawn.e = (int) (entityfireball.dirX * 8000.0D);
            packet23vehiclespawn.f = (int) (entityfireball.dirY * 8000.0D);
            packet23vehiclespawn.g = (int) (entityfireball.dirZ * 8000.0D);
            return packet23vehiclespawn;
          } else if (this.tracker instanceof EntityEgg) {
            return new Packet23VehicleSpawn(this.tracker, 62);
          } else if (this.tracker instanceof EntityTNTPrimed) {
            return new Packet23VehicleSpawn(this.tracker, 50);
          } else if (this.tracker instanceof EntityEnderCrystal) {
            return new Packet23VehicleSpawn(this.tracker, 51);
          } else if (this.tracker instanceof EntityFallingBlock) {
            EntityFallingBlock entityfallingblock = (EntityFallingBlock) this.tracker;

            return new Packet23VehicleSpawn(
                this.tracker, 70, entityfallingblock.id | entityfallingblock.data << 16);
          } else if (this.tracker instanceof EntityPainting) {
            return new Packet25EntityPainting((EntityPainting) this.tracker);
          } else if (this.tracker instanceof EntityExperienceOrb) {
            return new Packet26AddExpOrb((EntityExperienceOrb) this.tracker);
          } else {
            throw new IllegalArgumentException(
                "Don\'t know how to add " + this.tracker.getClass() + "!");
          }
        }
      } else {
        this.i = MathHelper.d(this.tracker.am() * 256.0F / 360.0F);
        return new Packet24MobSpawn((EntityLiving) this.tracker);
      }
    }
  }