Ejemplo n.º 1
0
  /** (abstract) Protected helper method to read subclass entity data from NBT. */
  public void readEntityFromNBT(NBTTagCompound p_70037_1_) {
    super.readEntityFromNBT(p_70037_1_);

    if (p_70037_1_.func_150297_b("ExplosionPower", 99)) {
      this.explosionStrength = p_70037_1_.getInteger("ExplosionPower");
    }
  }
Ejemplo n.º 2
0
 public void func_70037_a(NBTTagCompound p_70037_1_) {
   super.func_70037_a(p_70037_1_);
   this.func_70938_b(p_70037_1_.func_74762_e("Profession"));
   this.field_70956_bz = p_70037_1_.func_74762_e("Riches");
   if (p_70037_1_.func_150297_b("Offers", 10)) {
     NBTTagCompound var2 = p_70037_1_.func_74775_l("Offers");
     this.field_70963_i = new MerchantRecipeList(var2);
   }
 }
Ejemplo n.º 3
0
  public void readFromNBT(NBTTagCompound p_98270_1_) {
    this.mobID = p_98270_1_.getString("EntityId");
    this.spawnDelay = p_98270_1_.getShort("Delay");

    if (p_98270_1_.func_150297_b("SpawnPotentials", 9)) {
      this.minecartToSpawn = new ArrayList();
      NBTTagList var2 = p_98270_1_.getTagList("SpawnPotentials", 10);

      for (int var3 = 0; var3 < var2.tagCount(); ++var3) {
        this.minecartToSpawn.add(
            new MobSpawnerBaseLogic.WeightedRandomMinecart(var2.getCompoundTagAt(var3)));
      }
    } else {
      this.minecartToSpawn = null;
    }

    if (p_98270_1_.func_150297_b("SpawnData", 10)) {
      this.setRandomMinecart(
          new MobSpawnerBaseLogic.WeightedRandomMinecart(
              p_98270_1_.getCompoundTag("SpawnData"), this.mobID));
    } else {
      this.setRandomMinecart((MobSpawnerBaseLogic.WeightedRandomMinecart) null);
    }

    if (p_98270_1_.func_150297_b("MinSpawnDelay", 99)) {
      this.minSpawnDelay = p_98270_1_.getShort("MinSpawnDelay");
      this.maxSpawnDelay = p_98270_1_.getShort("MaxSpawnDelay");
      this.spawnCount = p_98270_1_.getShort("SpawnCount");
    }

    if (p_98270_1_.func_150297_b("MaxNearbyEntities", 99)) {
      this.maxNearbyEntities = p_98270_1_.getShort("MaxNearbyEntities");
      this.activatingRangeFromPlayer = p_98270_1_.getShort("RequiredPlayerRange");
    }

    if (p_98270_1_.func_150297_b("SpawnRange", 99)) {
      this.spawnRange = p_98270_1_.getShort("SpawnRange");
    }

    if (this.getSpawnerWorld() != null && this.getSpawnerWorld().isClient) {
      this.field_98291_j = null;
    }
  }
Ejemplo n.º 4
0
  public Entity func_98265_a(Entity p_98265_1_) {
    if (this.getRandomMinecart() != null) {
      NBTTagCompound var2 = new NBTTagCompound();
      p_98265_1_.writeToNBTOptional(var2);
      Iterator var3 = this.getRandomMinecart().field_98222_b.func_150296_c().iterator();

      while (var3.hasNext()) {
        String var4 = (String) var3.next();
        NBTBase var5 = this.getRandomMinecart().field_98222_b.getTag(var4);
        var2.setTag(var4, var5.copy());
      }

      p_98265_1_.readFromNBT(var2);

      if (p_98265_1_.worldObj != null) {
        p_98265_1_.worldObj.spawnEntityInWorld(p_98265_1_);
      }

      NBTTagCompound var11;

      for (Entity var10 = p_98265_1_; var2.func_150297_b("Riding", 10); var2 = var11) {
        var11 = var2.getCompoundTag("Riding");
        Entity var12 = EntityList.createEntityByName(var11.getString("id"), p_98265_1_.worldObj);

        if (var12 != null) {
          NBTTagCompound var6 = new NBTTagCompound();
          var12.writeToNBTOptional(var6);
          Iterator var7 = var11.func_150296_c().iterator();

          while (var7.hasNext()) {
            String var8 = (String) var7.next();
            NBTBase var9 = var11.getTag(var8);
            var6.setTag(var8, var9.copy());
          }

          var12.readFromNBT(var6);
          var12.setLocationAndAngles(
              var10.posX, var10.posY, var10.posZ, var10.rotationYaw, var10.rotationPitch);

          if (p_98265_1_.worldObj != null) {
            p_98265_1_.worldObj.spawnEntityInWorld(var12);
          }

          var10.mountEntity(var12);
        }

        var10 = var12;
      }
    } else if (p_98265_1_ instanceof EntityLivingBase && p_98265_1_.worldObj != null) {
      ((EntityLiving) p_98265_1_).onSpawnWithEgg((IEntityLivingData) null);
      this.getSpawnerWorld().spawnEntityInWorld(p_98265_1_);
    }

    return p_98265_1_;
  }
Ejemplo n.º 5
0
  /** (abstract) Protected helper method to read subclass entity data from NBT. */
  public void readEntityFromNBT(NBTTagCompound par1NBTTagCompound) {
    super.readEntityFromNBT(par1NBTTagCompound);
    this.setCanPickUpLoot(par1NBTTagCompound.getBoolean("CanPickUpLoot"));
    this.persistenceRequired = par1NBTTagCompound.getBoolean("PersistenceRequired");

    if (par1NBTTagCompound.func_150297_b("CustomName", 8)
        && par1NBTTagCompound.getString("CustomName").length() > 0) {
      this.setCustomNameTag(par1NBTTagCompound.getString("CustomName"));
    }

    this.setAlwaysRenderNameTag(par1NBTTagCompound.getBoolean("CustomNameVisible"));
    NBTTagList var2;
    int var3;

    if (par1NBTTagCompound.func_150297_b("Equipment", 9)) {
      var2 = par1NBTTagCompound.getTagList("Equipment", 10);

      for (var3 = 0; var3 < this.equipment.length; ++var3) {
        this.equipment[var3] = ItemStack.loadItemStackFromNBT(var2.getCompoundTagAt(var3));
      }
    }

    if (par1NBTTagCompound.func_150297_b("DropChances", 9)) {
      var2 = par1NBTTagCompound.getTagList("DropChances", 5);

      for (var3 = 0; var3 < var2.tagCount(); ++var3) {
        this.equipmentDropChances[var3] = var2.func_150308_e(var3);
      }
    }

    this.isLeashed = par1NBTTagCompound.getBoolean("Leashed");

    if (this.isLeashed && par1NBTTagCompound.func_150297_b("Leash", 10)) {
      this.field_110170_bx = par1NBTTagCompound.getCompoundTag("Leash");
    }
  }
  public void func_145839_a(NBTTagCompound p_145839_1_) {
    super.func_145839_a(p_145839_1_);
    NBTTagList var2 = p_145839_1_.func_150295_c("Items", 10);
    this.field_146022_i = new ItemStack[this.func_70302_i_()];

    for (int var3 = 0; var3 < var2.func_74745_c(); ++var3) {
      NBTTagCompound var4 = var2.func_150305_b(var3);
      int var5 = var4.func_74771_c("Slot") & 255;
      if (var5 >= 0 && var5 < this.field_146022_i.length) {
        this.field_146022_i[var5] = ItemStack.func_77949_a(var4);
      }
    }

    if (p_145839_1_.func_150297_b("CustomName", 8)) {
      this.field_146020_a = p_145839_1_.func_74779_i("CustomName");
    }
  }
Ejemplo n.º 7
0
  public void processCommand(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) {
    if (par2ArrayOfStr.length >= 1) {
      String var3 = par2ArrayOfStr[0];
      double var4 = (double) par1ICommandSender.getCommandSenderPosition().posX + 0.5D;
      double var6 = (double) par1ICommandSender.getCommandSenderPosition().posY;
      double var8 = (double) par1ICommandSender.getCommandSenderPosition().posZ + 0.5D;

      if (par2ArrayOfStr.length >= 4) {
        var4 = func_110666_a(par1ICommandSender, var4, par2ArrayOfStr[1]);
        var6 = func_110666_a(par1ICommandSender, var6, par2ArrayOfStr[2]);
        var8 = func_110666_a(par1ICommandSender, var8, par2ArrayOfStr[3]);
      }

      World var10 = par1ICommandSender.getEntityWorld();

      if (!var10.blockExists((int) var4, (int) var6, (int) var8)) {
        notifyAdmins(par1ICommandSender, "commands.summon.outOfWorld", new Object[0]);
      } else {
        NBTTagCompound var11 = new NBTTagCompound();
        boolean var12 = false;

        if (par2ArrayOfStr.length >= 5) {
          IChatComponent var13 = func_147178_a(par1ICommandSender, par2ArrayOfStr, 4);

          try {
            NBTBase var14 = JsonToNBT.func_150315_a(var13.getUnformattedText());

            if (!(var14 instanceof NBTTagCompound)) {
              notifyAdmins(
                  par1ICommandSender, "commands.summon.tagError", new Object[] {"Not a valid tag"});
              return;
            }

            var11 = (NBTTagCompound) var14;
            var12 = true;
          } catch (NBTException var17) {
            notifyAdmins(
                par1ICommandSender, "commands.summon.tagError", new Object[] {var17.getMessage()});
            return;
          }
        }

        var11.setString("id", var3);
        Entity var18 = EntityList.createEntityFromNBT(var11, var10);

        if (var18 != null) {
          var18.setLocationAndAngles(var4, var6, var8, var18.rotationYaw, var18.rotationPitch);

          if (!var12 && var18 instanceof EntityLiving) {
            ((EntityLiving) var18).onSpawnWithEgg((IEntityLivingData) null);
          }

          var10.spawnEntityInWorld(var18);
          Entity var19 = var18;

          for (NBTTagCompound var15 = var11;
              var15.func_150297_b("Riding", 10);
              var15 = var15.getCompoundTag("Riding")) {
            Entity var16 = EntityList.createEntityFromNBT(var15.getCompoundTag("Riding"), var10);

            if (var16 != null) {
              var16.setLocationAndAngles(var4, var6, var8, var16.rotationYaw, var16.rotationPitch);
              var10.spawnEntityInWorld(var16);
              var19.mountEntity(var16);
            }

            var19 = var16;
          }

          notifyAdmins(par1ICommandSender, "commands.summon.success", new Object[0]);
        } else {
          notifyAdmins(par1ICommandSender, "commands.summon.failed", new Object[0]);
        }
      }
    } else {
      throw new WrongUsageException("commands.summon.usage", new Object[0]);
    }
  }