java类net.minecraft.client.renderer.ItemModelMesher的实例源码

RenderItem.java 文件源码 项目:BaseClient 阅读 19 收藏 0 点赞 0 评论 0
public RenderItem(TextureManager textureManager, ModelManager modelManager)
{
    this.textureManager = textureManager;
    Config.setModelManager(modelManager);

    if (Reflector.ItemModelMesherForge_Constructor.exists())
    {
        this.itemModelMesher = (ItemModelMesher)Reflector.newInstance(Reflector.ItemModelMesherForge_Constructor, new Object[] {modelManager});
    }
    else
    {
        this.itemModelMesher = new ItemModelMesher(modelManager);
    }

    this.registerItems();
}
UItem.java 文件源码 项目:StructPro 阅读 21 收藏 0 点赞 0 评论 0
/**
 * Resolve item state validity
 * @param meta Item metadata
 * @return Is item state valid
 */
@SuppressWarnings({"ConstantConditions"})
public boolean isValidItemState(int meta) {
    if (!isValid()) {
        return false;
    }
    try {
        ItemModelMesher models = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
        TextureAtlasSprite sprite = models.getParticleIcon(item, meta);
        return sprite != null &&
                sprite.getIconName() != null &&
                !sprite.getIconName().equalsIgnoreCase("") &&
                !sprite.getIconName().equalsIgnoreCase("missingno");
    } catch (Throwable ignored) {
        return false;
    }
}
UItem.java 文件源码 项目:StructPro 阅读 21 收藏 0 点赞 0 评论 0
/**
 * Resolve item state validity
 * @param meta Item metadata
 * @return Is item state valid
 */
@SuppressWarnings({"ConstantConditions"})
public boolean isValidItemState(int meta) {
    if (!isValid()) {
        return false;
    }
    try {
        ItemModelMesher models = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
        TextureAtlasSprite sprite = models.getParticleIcon(item, meta);
        return sprite != null &&
                sprite.getIconName() != null &&
                !sprite.getIconName().equalsIgnoreCase("") &&
                !sprite.getIconName().equalsIgnoreCase("missingno");
    } catch (Throwable ignored) {
        return false;
    }
}
UItem.java 文件源码 项目:StructPro 阅读 20 收藏 0 点赞 0 评论 0
/**
 * Resolve item state validity
 * @param meta Item metadata
 * @return Is item state valid
 */
@SuppressWarnings({"ConstantConditions"})
public boolean isValidItemState(int meta) {
    if (!isValid()) {
        return false;
    }
    try {
        ItemModelMesher models = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
        TextureAtlasSprite sprite = models.getParticleIcon(item, meta);
        return sprite != null &&
                sprite.getIconName() != null &&
                !sprite.getIconName().equalsIgnoreCase("") &&
                !sprite.getIconName().equalsIgnoreCase("missingno");
    } catch (Throwable ignored) {
        return false;
    }
}
ModItems.java 文件源码 项目:Tutorial-1.11 阅读 32 收藏 0 点赞 0 评论 0
/**
 * The client-side initializer. Here we handle model registration. Note the @SideOnly annotation. This causes the
 * method to exist only on the client-side, preventing servers from crashing.
 * 
 * This should be called during init, calling during preInit will crash.
 */
@SideOnly(Side.CLIENT)
public static void initClient(ItemModelMesher mesher) {

  // Create a MRL for the model. Note we have two parameters and the second must be "inventory". We can reuse this
  // variable for each item of course, since most Java variables just contain a reference to an object.
  ModelResourceLocation model = new ModelResourceLocation(
      Tutorial.RESOURCE_PREFIX + Names.TUTORIAL_ITEM, "inventory");
  // Here we list all models the item can possibly have. An array will work, or just list each MRL for the final
  // parameters.
  ModelLoader.registerItemVariants(tutorialItem, model);
  // Finally, we associate each MRL (model) with different metadata values for the item. This must be called for each
  // variant! And even if the variants don't depend on metadata, I believe each variant must be registered to a unique
  // meta... In this case, there are no other variants, so we just pass in a metadata of zero.
  mesher.register(tutorialItem, 0, model);

  registerModel(mesher, tutorialPickaxe, Names.PICKAXE);
}
HtmlConversionTypesetter.java 文件源码 项目:Factorization 阅读 15 收藏 0 点赞 0 评论 0
@Override
public void putItem(ItemStack theItem, String link) {
    String imgType = "item";
    String found_icon;
    if (theItem == null) {
        found_icon = "factorization:transparent_item";
    } else {
        ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
        IBakedModel ibm = mesher.getItemModel(theItem);
        if (ibm == null) {
            found_icon = "error";
        } else {
            found_icon = ibm.getParticleTexture().getIconName();
        }
        if (theItem.getItem() instanceof ItemBlock) {
            imgType = "block";
        }
    }
    html("<img class=\"" + imgType + "\" src=\"" + img(found_icon) + "\" />");
    found_icon = null;
    // TODO (and this is crazy!) render the item to a texture
    // Would be good to do this only if it isn't a standard item texture, maybe.
    // Same mechanism could probably be used for docfigures; maybe make an animated gif? Would be rad.
}
ClientProxy.java 文件源码 项目:Alloycraft 阅读 20 收藏 0 点赞 0 评论 0
public static void render() {
    net.minecraft.client.renderer.color.IItemColor colour = new net.minecraft.client.renderer.color.IItemColor() {
       public int getColorFromItemstack(ItemStack stack, int tintIndex) {
        if (stack.getTagCompound() != null) {
            // Checks to make sure all stats are less than or equal too 255
            if (stack.getTagCompound().getInteger("Strength") <= 255 && stack.getTagCompound().getInteger("Durability") <= 255 && stack.getTagCompound().getInteger("Enchantability") <= 255) {
            return new Color(stack.getTagCompound().getInteger("Strength"), stack.getTagCompound().getInteger("Durability"), stack.getTagCompound().getInteger("Enchantability")).getRGB();
        }
        }
            return new Color(255,255,255).getRGB();
        }
   };
    Minecraft.getMinecraft().getItemColors().registerItemColorHandler(colour, new Item[] {AlloycraftItems.alloy, AlloycraftItems.alloysword, AlloycraftItems.alloyaxe, AlloycraftItems.alloyhoe, AlloycraftItems.alloyshovel, AlloycraftItems.alloypickaxe, AlloycraftItems.alloyhelmet, AlloycraftItems.alloychestplate, AlloycraftItems.alloyleggings, AlloycraftItems.alloyboots});
    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    mesher.register(AlloycraftItems.alloy, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloy", "inventory"));
    mesher.register(AlloycraftItems.alloysword, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloysword", "inventory"));
    mesher.register(AlloycraftItems.alloyaxe, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloyaxe", "inventory"));
    mesher.register(AlloycraftItems.alloyhoe, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloyhoe", "inventory"));
    mesher.register(AlloycraftItems.alloyshovel, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloyshovel", "inventory"));
    mesher.register(AlloycraftItems.alloypickaxe, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloypickaxe", "inventory"));
    mesher.register(AlloycraftItems.alloyhelmet, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloyhelm", "inventory"));
    mesher.register(AlloycraftItems.alloychestplate, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloychestplate", "inventory"));
    mesher.register(AlloycraftItems.alloyleggings, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloyleggings", "inventory"));
    mesher.register(AlloycraftItems.alloyboots, 0, new net.minecraft.client.renderer.block.model.ModelResourceLocation(AlloycraftMain.modid + ":" + "alloyboots", "inventory"));
}
ClientProxy.java 文件源码 项目:BucketBlocks 阅读 74 收藏 0 点赞 0 评论 0
@Override
public void registerRenderers(){

    // More info on proxy rendering
    // http://www.minecraftforge.net/forum/index.php?topic=27684.0
    // http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2272349-lessons-from-my-first-mc-1-8-mod

    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

    String name;
    Item item;

    for(Block b : BlockRegistry.blocks){
        item = Item.getItemFromBlock(b);
        name = ModBucketBlocks.TEXTURE_LOCATION + b.getUnlocalizedName().replaceAll("tile.", "");

        mesher.register(item, 0, new ModelResourceLocation(name, "inventory"));
    }
}
ModBlocks.java 文件源码 项目:GearSwapper1.8 阅读 23 收藏 0 点赞 0 评论 0
@SideOnly(Side.CLIENT)
    public static void initModels() {
        woodenGearSwapperBlock.initModel();
        ironGearSwapperBlock.initModel();
        lapisGearSwapperBlock.initModel();
        stoneGearSwapperBlock.initModel();
        glassGearSwapperBlock.initModel();
        if (!Config.customBlockName.isEmpty()) {
            Block b = Block.blockRegistry.getObject(new ResourceLocation(Config.customBlockName));
            if (b != null) {
                ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
                mesher.register(Item.getItemFromBlock(moddedGearSwapperBlock), 0, new ModelResourceLocation(b.getRegistryName(), "inventory"));

//                moddedGearSwapperBlock.initModel();
            }
        }
    }
ClientProxy.java 文件源码 项目:HorseFood 阅读 18 收藏 0 点赞 0 评论 0
@Override
public void registerRenderers(){

    // More info on proxy rendering
    // http://www.minecraftforge.net/forum/index.php?topic=27684.0
    // http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2272349-lessons-from-my-first-mc-1-8-mod

    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

    String name;
    for(Item i : ItemRegistry.items){
        name = TEXTURE_LOCATION + i.getUnlocalizedName().replaceAll("item.", "");

        mesher.register(i, 0, new ModelResourceLocation(name, "inventory"));
    }
}
ModTextures.java 文件源码 项目:wise-plus-mod 阅读 20 收藏 0 点赞 0 评论 0
public static void registerTextures() {
    ItemModelMesher itemModelMesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

    // Items
    registerItem(itemModelMesher, ModItems.TITANIUM_AXE);
    registerItem(itemModelMesher, ModItems.TITANIUM_BOOTS);
    registerItem(itemModelMesher, ModItems.TITANIUM_CHESTPLATE);
    registerItem(itemModelMesher, ModItems.TITANIUM_HELMET);
    registerItem(itemModelMesher, ModItems.TITANIUM_HOE);
    registerItem(itemModelMesher, ModItems.TITANIUM_HORSE_ARMOR);
    registerItem(itemModelMesher, ModItems.TITANIUM_INGOT);
    registerItem(itemModelMesher, ModItems.TITANIUM_LEGGINGS);
    registerItem(itemModelMesher, ModItems.TITANIUM_PICKAXE);
    registerItem(itemModelMesher, ModItems.TITANIUM_SHOVEL);
    registerItem(itemModelMesher, ModItems.TITANIUM_SWORD);

    // Blocks
    registerBlock(itemModelMesher, ModBlocks.TITANIUM_ORE);
    registerBlock(itemModelMesher, ModBlocks.TITANIUM_BLOCK);
}
ModelNullifierBaked.java 文件源码 项目:enderutilities 阅读 20 收藏 0 点赞 0 评论 0
@SuppressWarnings("unchecked")
private void reflectMaps()
{
    if (LOCATIONS == null || SHAPERS == null)
    {
        try
        {
            ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

            Field locs = ReflectionHelper.findField(ItemModelMesherForge.class, "locations");
            LOCATIONS = (Map<IRegistryDelegate<Item>, TIntObjectHashMap<ModelResourceLocation>>) locs.get(mesher);

            Field shapers = ReflectionHelper.findField(ItemModelMesher.class, "field_178092_c", "shapers");
            SHAPERS = (Map<Item, ItemMeshDefinition>) shapers.get(mesher);

            Field models = ReflectionHelper.findField(ModelLoader.class, "stateModels");
            STATE_MODELS = (Map<ModelResourceLocation, IModel>) models.get(MODEL_LOADER);
        }
        catch (Exception e)
        {
            EnderUtilities.logger.warn("ModelNullifierBaked: Failed to reflect model maps", e);
        }
    }
}
ClientProxy.java 文件源码 项目:SamsPowerups 阅读 19 收藏 0 点赞 0 评论 0
private void registerModels() 
{
    //More info on proxy rendering
       //http://www.minecraftforge.net/forum/index.php?topic=27684.0
      //http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2272349-lessons-from-my-first-mc-1-8-mod

       ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

       String name;

       for(Item i : ItemRegistry.items)
       {  
        name = ModSpells.TEXTURE_LOCATION + i.getUnlocalizedName().replaceAll("item.", "");

            mesher.register(i, 0, new ModelResourceLocation( name , "inventory"));   
       }
       /*
       if(ModMain.cfg.respawn_egg)
       {
        for(Object key : EntityList.entityEggs.keySet())
           {
            mesher.register(ItemRegistry.respawn_egg, (Integer)key, new ModelResourceLocation(ModSpells.TEXTURE_LOCATION + "respawn_egg" , "inventory"));    
           }
       }
      */ 
}
ClientProxy.java 文件源码 项目:SamsPowerups 阅读 19 收藏 0 点赞 0 评论 0
@Override
   public void registerRenderers() 
   {  

    //More info on proxy rendering
       //http://www.minecraftforge.net/forum/index.php?topic=27684.0
      //http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2272349-lessons-from-my-first-mc-1-8-mod

       ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

       String name;


       for(Item i : ItemRegistry.items)
       {  
        name = ModArmor.TEXTURE_LOCATION + i.getUnlocalizedName().replaceAll("item.", "");

            mesher.register(i, 0, new ModelResourceLocation( name , "inventory"));   
       } 
}
ClientProxy.java 文件源码 项目:SamsPowerups 阅读 19 收藏 0 点赞 0 评论 0
@Override
   public void registerRenderers() 
   {  
    //More info on proxy rendering
       //http://www.minecraftforge.net/forum/index.php?topic=27684.0
      //http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2272349-lessons-from-my-first-mc-1-8-mod

       ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

       String name;
       Item item;

       for(Block b : BlockRegistry.blocks)
       { 
        item = Item.getItemFromBlock(b);
        name = ModFarmingBlocks.TEXTURE_LOCATION + b.getUnlocalizedName().replaceAll("tile.", "");

            mesher.register(item, 0, new ModelResourceLocation( name , "inventory"));    
       } 
}
ClientProxy.java 文件源码 项目:Combustible-Lemon-Launcher 阅读 26 收藏 0 点赞 0 评论 0
@Override
public void initializeRenderers(){
    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    mesher.register(Item.getItemFromBlock(blockLemonTreePlanks), 0, new ModelResourceLocation(MOD_ID + ":" + BLOCK_LEMON_TREE_PLANKS, "inventory"));
    mesher.register(Item.getItemFromBlock(blockLemonTreeLog), 0, new ModelResourceLocation(MOD_ID + ":" + BLOCK_LEMON_TREE_LOG, "inventory"));
    mesher.register(Item.getItemFromBlock(blockLemonLeavesHarvested), 0, new ModelResourceLocation(MOD_ID + ":" + BLOCK_LEMON_LEAVES_HARVESTED, "inventory"));
    mesher.register(Item.getItemFromBlock(blockLemonLeaves), 0, new ModelResourceLocation(MOD_ID + ":" + BLOCK_LEMON_LEAVES, "inventory"));
    mesher.register(Item.getItemFromBlock(blockLemonTreeSapling), 0, new ModelResourceLocation(MOD_ID + ":" + BLOCK_LEMON_TREE_SAPLING, "inventory"));

    mesher.register(itemLemon, 0, new ModelResourceLocation(MOD_ID + ":" + ITEM_LEMON, "inventory"));
    mesher.register(itemLemonExplosive, 0, new ModelResourceLocation(MOD_ID + ":" + ITEM_LEMON_EXPLOSIVE, "inventory"));
    mesher.register(itemCombustibleLemonLauncher, 0, new ModelResourceLocation(MOD_ID + ":" + ITEM_COMBUSTIBLE_LEMON_LAUNCHER.toLowerCase(), "inventory"));

    MinecraftForge.EVENT_BUS.register(new HoldLikeBowHook());
    MinecraftForge.EVENT_BUS.register(new CLLConfig());
}
GuiComponentItemStackSpinner.java 文件源码 项目:OpenModsLib 阅读 20 收藏 0 点赞 0 评论 0
private void renderItem(ItemStack itemStack) {
    parent.bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);

    final RenderItem itemRenderer = parent.getItemRenderer();
    final ItemModelMesher itemModelMesher = itemRenderer.getItemModelMesher();
    final IBakedModel model = itemModelMesher.getItemModel(stack);

    GlStateManager.disableLighting();
    GlStateManager.enableRescaleNormal();
    GlStateManager.alphaFunc(GL11.GL_GREATER, 0.1F);
    GlStateManager.enableBlend();
    GlStateManager.tryBlendFuncSeparate(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, 1, 0);
    GlStateManager.pushMatrix();
    itemRenderer.renderItem(stack, model);
    GlStateManager.cullFace(CullFace.BACK);
    GlStateManager.popMatrix();
    GlStateManager.disableRescaleNormal();
    GlStateManager.disableBlend();

    GlStateManager.enableLighting();
}
OFTRegistryClient.java 文件源码 项目:OpenFlexiTrack 阅读 18 收藏 0 点赞 0 评论 0
/**
 * Called during Forge's main initialisation stage to register item models.
 */
public static void init(){
    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    mesher.register(OFTRegistry.ties, 0, new ModelResourceLocation(OFT.MODID + ":" + "ties", "inventory"));
    mesher.register(OFTRegistry.rails, 0, new ModelResourceLocation(OFT.MODID + ":" + "rails", "inventory"));
    mesher.register(OFTRegistry.track, 0, new ModelResourceLocation(OFT.MODID + ":" + "track", "inventory"));
    mesher.register(Item.getItemFromBlock(OFTRegistry.surveyFlag), 0, new ModelResourceLocation(OFT.MODID + ":" + "surveyflag", "inventory"));
}
ClientProxy.java 文件源码 项目:Possessed 阅读 19 收藏 0 点赞 0 评论 0
@Override
public void onPostInit() {
    super.onPostInit();
    ItemModelMesher modelMesher = ClientProxy.MINECRAFT.getRenderItem().getItemModelMesher();
    modelMesher.register(ItemRegistry.POSSESSIVE_HELMET, stack -> new ModelResourceLocation(Possessed.MODID + ":possessive_helmet", "inventory"));
    modelMesher.register(ItemRegistry.POSSESSITITE, stack -> new ModelResourceLocation(Possessed.MODID + ":possessitite", "inventory"));
    modelMesher.register(Item.getItemFromBlock(BlockRegistry.POSSESSITITE_ORE), stack -> new ModelResourceLocation(Possessed.MODID + ":possessitite_ore", "inventory"));
}
ModBlocks.java 文件源码 项目:Tutorial-1.11 阅读 26 收藏 0 点赞 0 评论 0
/**
 * The client-side initializer. Here we handle model registration. Don't forget the @SideOnly annotation! This should
 * be called during init.
 */
@SideOnly(Side.CLIENT)
public static void initClient(ItemModelMesher mesher) {

  // We can only register models for Items, so get the item for the block. Maybe you could save a reference to the
  // ItemBlock in init? I haven't tried it, but we likely wouldn't use it anywhere else, so it's not worth doing.
  Item item = Item.getItemFromBlock(tutorialBlock);
  // Everything past this point is identical to registering models for items.
  ModelResourceLocation model = new ModelResourceLocation(
      Tutorial.RESOURCE_PREFIX + Names.TUTORIAL_BLOCK, "inventory");
  ModelLoader.registerItemVariants(item, model);
  mesher.register(item, 0, model);
}
ClientProxy.java 文件源码 项目:Tutorial-1.11 阅读 24 收藏 0 点赞 0 评论 0
@Override
public void init(FMLInitializationEvent event) {

  super.init(event);

  ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

  // Register block models
  ModBlocks.initClient(mesher);
  // Register item models
  ModItems.initClient(mesher);
}
ClientProxy.java 文件源码 项目:ExoMagica 阅读 19 收藏 0 点赞 0 评论 0
@Override
protected void registerItem(Item item, String id) {
    super.registerItem(item, id);

    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    ModelResourceLocation loc = new ModelResourceLocation(item.getRegistryName(), "inventory");
    List<ItemStack> items = new ArrayList<ItemStack>();
    item.getSubItems(item, null, items);
    for(ItemStack stack : items) {
        mesher.register(item, stack.getMetadata(), loc);
    }
}
ClientProxy.java 文件源码 项目:ExoMagica 阅读 20 收藏 0 点赞 0 评论 0
@Override
protected void registerBlock(Block block, ItemBlock itemBlock, String id) {
    super.registerBlock(block, itemBlock, id);

    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    Item item = Item.getItemFromBlock(block);
    ModelResourceLocation loc = new ModelResourceLocation(block.getRegistryName(), "inventory");
    List<ItemStack> items = new ArrayList<ItemStack>();
    block.getSubBlocks(item, null, items);
    for(ItemStack stack : items) {
        mesher.register(item, stack.getMetadata(), loc);
    }
}
ClientProxy.java 文件源码 项目:DungeonDimension 阅读 18 收藏 0 点赞 0 评论 0
@Override
public void init() {
    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    mesher.register(DungeonDimension.creativetp, 0, new ModelResourceLocation(References.MODID + ":creativetp", "inventory"));
    mesher.register(DungeonDimension.corruptionslime, 0, new ModelResourceLocation(References.MODID + ":corruptionslime", "inventory"));
    mesher.register(Item.getItemFromBlock(DungeonDimension.corruption), 0, new ModelResourceLocation(References.MODID + ":corruptionblock", "inventory"));
    mesher.register(Item.getItemFromBlock(DungeonDimension.monumentteleporter), 0, new ModelResourceLocation(References.MODID + ":monumentteleporter", "inventory"));
    mesher.register(Item.getItemFromBlock(DungeonDimension.monumentteleporterbroken), 0, new ModelResourceLocation(References.MODID + ":monumentteleporterbroken", "inventory"));
}
RenderUtil.java 文件源码 项目:Factorization 阅读 24 收藏 0 点赞 0 评论 0
public static TextureAtlasSprite getSprite(ItemStack log) {
    Minecraft mc = Minecraft.getMinecraft();
    Block b = DataUtil.getBlock(log);
    if (b == null) {
        ItemModelMesher itemModelMesher = mc.getRenderItem().getItemModelMesher();
        if (log == null) return itemModelMesher.getItemModel(null).getParticleTexture();
        return itemModelMesher.getParticleIcon(log.getItem());
    }
    IBlockState bs = b.getStateFromMeta(log.getItemDamage());
    return mc.getBlockRendererDispatcher().getBlockModelShapes().getTexture(bs);
}
ClientRenderer.java 文件源码 项目:TaleCraft 阅读 22 收藏 0 点赞 0 评论 0
public void init() {
    // Get the ModelMesher and register ALL item-models
    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();

    init_render_item(mesher);
    init_render_block(mesher);

    init_render_entity();
    init_render_tilentity();
}
ClientRenderer.java 文件源码 项目:TaleCraft 阅读 25 收藏 0 点赞 0 评论 0
private void init_render_item(ItemModelMesher mesher) {
    // items

    for(Item item : TaleCraftItems.ALL_TC_ITEMS){
        if(!(item instanceof ItemBlock))mesher.register(item, 0, new ModelResourceLocation("talecraft:" + item.getUnlocalizedName().replace("item.", ""), "inventory"));
    }
}
AlloycraftBlocks.java 文件源码 项目:Alloycraft 阅读 19 收藏 0 点赞 0 评论 0
public static void initBlocks() {

    GameRegistry.register(forgeoff, new ResourceLocation(AlloycraftMain.modid, "forgeoff"));
    GameRegistry.register(new ItemBlock(forgeoff), new ResourceLocation(AlloycraftMain.modid, "forgeoff"));
    GameRegistry.registerTileEntity(ForgeTileEntity.class, "forgefurnace");
    if (Loader.isModLoaded("Tesla")) {
        GameRegistry.register(forgeteslaoff, new ResourceLocation(AlloycraftMain.modid, "forgeteslaoff"));
        GameRegistry.register(new ItemBlock(forgeteslaoff), new ResourceLocation(AlloycraftMain.modid, "forgeteslaoff"));
        GameRegistry.registerTileEntity(ForgeTeslaTileEntity.class, "forgeteslafurnace");
    }
    if(FMLCommonHandler.instance().getSide() == Side.CLIENT) {
        ItemModelMesher itemRender = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
        itemRender.register(Item.getItemFromBlock(AlloycraftBlocks.forgeoff), 0, new ModelResourceLocation(AlloycraftMain.modid + ":" + "forgeoff", "inventory"));
        if (Loader.isModLoaded("Tesla")) {
            itemRender.register(Item.getItemFromBlock(AlloycraftBlocks.forgeteslaoff), 0, new ModelResourceLocation(AlloycraftMain.modid + ":" + "forgeoff", "inventory"));
        }   
    }
    GameRegistry.addRecipe(new ItemStack(forgeoff, 1), new Object[]{
            "AAA",
            "ABA",
            "DCD",
            'A', Items.IRON_INGOT, 'B', Blocks.IRON_BLOCK, 'C', Blocks.REDSTONE_BLOCK, 'D', Blocks.FURNACE
        });
    GameRegistry.addRecipe(new ItemStack(forgeteslaoff, 1), new Object[]{
            "AAA",
            "ACA",
            "DBD",
            'A', Items.IRON_INGOT, 'B', Blocks.IRON_BLOCK, 'C', Blocks.REDSTONE_BLOCK, 'D', Blocks.FURNACE
        });

}
ClientProxy.java 文件源码 项目:BiomeWand 阅读 22 收藏 0 点赞 0 评论 0
@Override
public void init()
{
    RenderItem ri = Minecraft.getMinecraft().getRenderItem();
    ItemModelMesher imm = ri.getItemModelMesher();

    imm.register( BiomeWandMod.items.wand, 0, new ModelResourceLocation( "sc0_biomewand:wand", "inventory" ) );
    imm.register( BiomeWandMod.items.sample, 0, new ModelResourceLocation( "sc0_biomewand:sample", "inventory" ) );

    MinecraftForge.EVENT_BUS.register( this );
}
ItemTechnology.java 文件源码 项目:CivCraft 阅读 18 收藏 0 点赞 0 评论 0
@Override
public void initModel() {
    String mesherName = CivCraft.instance.meta.modId + ":" + name + "_";
    String[] names = new String[] { mesherName + "none", mesherName + "some", mesherName + "all" };
    ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
    for (int i = 0; i < 3; i++)
        mesher.register(this, i, new ModelResourceLocation(names[i], "inventory"));
    ModelBakery.addVariantName(this, names);
}


问题


面经


文章

微信
公众号

扫码关注公众号