示例#1
0
  /** returns a list of items with the same ID, but different meta (eg: dye returns 16 items) */
  @SideOnly(Side.CLIENT)
  public void getSubItems(Item item, CreativeTabs tab, List list) {
    if (tab == CloneCraft.INSTANCE.creativeTabAll || tab == null) {
      list.add(new ItemData().setDirty().save(new ItemStack(item, 1, 0)));

      for (Entry<Integer, Class> entry : CCEntityList.idToClass.entrySet()) {
        int id = entry.getKey();

        if (((EntityLiving.class.isAssignableFrom(entry.getValue())
                || CloneCraftHelper.isValid(CCEntityList.classToString, entry.getValue())))
            && !CloneCraftHelper.isInvalid(CCEntityList.classToString, entry.getValue())) {
          list.add(new ItemData().fill(id).save(new ItemStack(item, 1, 1)));
          list.add(new ItemData().fill(id).save(new ItemStack(item, 1, 2)));
        }
      }
    }
    if (tab == CloneCraft.creativeTab || tab == null) {
      list.add(new ItemStack(item, 1, 0));
      list.add(new ItemData().empty().setDirty().save(new ItemStack(item, 1, 3)));
    }
  }