У некоторых item'ов отсутсвуют текстуры

Версия Minecraft
1.12.2
83
3
Доброго времени суток!
Столкнулся с тем, что у ново-созданных item'ов не отображается текстура. Сначала подумал, что где-то при создании item'а напортачил, но после перенаписания класса проблема не решилась. При сравнении рабочего и не рабочего item'ов не нашел отличий.
Пошерстил на форуме, прочитанные методы не помогли (там в основном было отсутствие текстур у всех предметов или криво написанные классы (с кривостью моих классов они не совпали)).

На всякий случай приложил скрин файла текстурок, вдруг ошибка в нем.

Код:
package masterEnotus.witch.items;

import masterEnotus.witch.Witch;
import net.minecraft.item.Item;

public class ItemTincan extends Item {
    public ItemTincan(String name){
        this.setRegistryName(name);
        this.setUnlocalizedName(name);
        this.setCreativeTab(Witch.CTAB);
    }
}
Код:
{
  "parent": "item/generated",
  "textures": {
    "layer0": "witch:items/tincan"
  }
}
Код:
package masterEnotus.witch.items;

import masterEnotus.witch.Witch;
import net.minecraft.item.Item;

public class ItemAxeHead extends Item {
    public ItemAxeHead(String name){
        this.setRegistryName(name);
        this.setUnlocalizedName(name);
        this.setCreativeTab(Witch.CTAB);
    }
}
Код:
{
  "parent": "item/generated",
  "textures": {
    "layer0": "witch:items/axeHead"
  }
}


Не думаю, что ошибка в общих классах, ибо tincan (и остальные) работают исправно


Код:
package masterEnotus.witch.items;

import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.registry.ForgeRegistries;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

import java.util.ArrayList;
import java.util.List;

public class ItemsRegister {

    //public static Item tincan = new ItemTincan("tincan");
    public static List<Item> itemsList = new ArrayList<Item>();

    public static void adding(){
        //Systems
        itemsList.add(new ItemLogo("logo"));

        //Extra


        //Primary
        itemsList.add(new ItemAxeHead("axeHead"));

        //Garbage
        itemsList.add(new ItemTincan("tincan"));
    }

    public static void register(){
        adding();

        for(Item item : itemsList){
            setRegister(item);
        }
    }

    @SideOnly(Side.CLIENT)
    public static void registerRender(){

        for(Item item : itemsList){
            setRender(item);
        }
    }

    private static void setRegister(Item item){
        ForgeRegistries.ITEMS.register(item);
    }

    @SideOnly(Side.CLIENT)
    private static void setRender(Item item){
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(item.getRegistryName(), "inventory"));
    }
}
Код:
package masterEnotus.proxy;

import masterEnotus.witch.Witch;
import masterEnotus.witch.items.ItemsRegister;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.client.model.obj.OBJLoader;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;

public class ClientProxy extends CommonProxy{

    public void registerModel(Item item) {
        ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(item.getRegistryName(), "inventory"));
    }

    @Override
    public void preInit(FMLPreInitializationEvent event) {
        super.preInit(event);
        //OBJLoader.INSTANCE.addDomain(Witch.MODID);
        //registerModel(ItemsRegister.itemsList.get(1));
    }

    @Override
    public void init(FMLInitializationEvent event) {
        super.init(event);
        ItemsRegister.registerRender();
    }

    @Override
    public void postInit(FMLPostInitializationEvent event){
        super.postInit(event);
    }
}
Код:
package masterEnotus.proxy;

import masterEnotus.witch.items.ItemsRegister;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;

public class CommonProxy {
    public void preInit(FMLPreInitializationEvent event) {
        ItemsRegister.register();
    }

    public void init(FMLInitializationEvent event) {

    }

    public void postInit(FMLPostInitializationEvent event) {

    }

}
 

Вложения

  • scr1.png
    scr1.png
    2.6 KB · Просмотры: 1
Решение
Одно название пишется с маленькими буквами, 2 слова уже с нижним подчёркиванием --> ceramic_brick
Java:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "complicatedvanillacraftingrecipes:items/ceramic_brick"
    }
}
Также как и с названием картинок --> ceramic_brick.png
И в классах тоже с маленькими "itemsList.add(new ItemAxeHead("axe_head"));
"
83
3
Господа, вопрос открыт как никак. Для меня задача не стандартная. Укажите, пожалуйста, на ошибку.
(Интересно, форумчане не отвечают, потому что заголовок вопроса кажется тривиальным ньюфаговским?)
 
148
2
6
Одно название пишется с маленькими буквами, 2 слова уже с нижним подчёркиванием --> ceramic_brick
Java:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "complicatedvanillacraftingrecipes:items/ceramic_brick"
    }
}
Также как и с названием картинок --> ceramic_brick.png
И в классах тоже с маленькими "itemsList.add(new ItemAxeHead("axe_head"));
"
 
83
3
Одно название пишется с маленькими буквами, 2 слова уже с нижним подчёркиванием --> ceramic_brick
Java:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "complicatedvanillacraftingrecipes:items/ceramic_brick"
    }
}
Также как и с названием картинок --> ceramic_brick.png
И в классах тоже с маленькими "itemsList.add(new ItemAxeHead("axe_head"));
"
Не люблю подчеркивания:) Однако сведение к нижнему регистру решило задачу. Благодарю!

Кстати, сайт поменялся до неузнаваемости (в лучшую сторону (и под мобилку шикарно адаптирован!)): )
 
3,005
192
592
Не люблю подчеркивания
Обычно, все пробелы заменяются на _

И кстати, обычно в логах пишется, почему не может что-либо добавиться.
Особенно, там пишется путь.
Его просто сравниваешь, с теми, что у тебя в пути и обычно можно с большой вероятностью найти ошибку.
 
Сверху