Одинаковая модель мобов

Версия Minecraft
1.10.2
114
2
Добрый день, уважаемые читатели. Такую тему я уже писал, но она забросилась и так не решилась, а она мне очень нужна. Дело в том, что я запутался в модельках. Проще говоря, мои модельки не хотят регистрироваться к мобу, ну как. У меня все получается, но моделька мобов только одна, и эта модель от первого моего моба. Незнаю, в чем проблема. Вот главный класс регистрации мобов:
Java:
public class RPGEntity {

    private static final RPGEntity INSTANCE = new RPGEntity();
    private BitSet availableIndicies;
  
    public static RPGEntity instance() {
        return INSTANCE;
    }
  
    private RPGEntity() {
        availableIndicies = new BitSet(256);
        availableIndicies.set(1, 255);
        for (Object id : EntityList.ID_TO_CLASS.keySet()) {
            availableIndicies.clear((Integer)id);
        }
    }
  
    public static int findGlobalUniqueEntityId() {
        int res = instance().availableIndicies.nextSetBit(10);
        if(res < 0) {
            throw new RuntimeException("No more entity indicies left");
        }
        return res;
    }
  
    public static void registerEntity() {
        createEntity(EntityScavenger.class, "Scavenger", 0xa62323, 0xed1515);
        createEntity(EntityCyclops.class, "Cyclops", 0xed1515, 0xed1515);
        createEntity(EntityTroll.class, "Troll", 0xed1545, 0xed1514);
        createEntity(EntityGrizzly.class, "Grizzly", 0xed1545, 0xed1514);
        createEntity(EntityInhabitant.class, "Inhabitant", 0xed1545, 0xed1514);
    }
  
    public static void createEntity(Class entityClass, String entityName, int solidColor, int spotColor) {
        int randomId = findGlobalUniqueEntityId();
        EntityRegistry.registerModEntity(entityClass, entityName, randomId, PhillipinRPG.modInstance, 64, 1, true, solidColor,spotColor);
        EntityRegistry.addSpawn(EntityScavenger.class, 70, 1, 1, EnumCreatureType.CREATURE, Biomes.DESERT, Biomes.DESERT_HILLS);
        EntityRegistry.addSpawn(EntityCyclops.class, 70, 1, 1, EnumCreatureType.CREATURE, Biomes.BIRCH_FOREST, Biomes.PLAINS);
        EntityRegistry.addSpawn(EntityTroll.class, 40, 1, 2, EnumCreatureType.CREATURE, Biomes.FOREST, Biomes.FOREST_HILLS);
        EntityRegistry.addSpawn(EntityGrizzly.class, 40, 1, 1, EnumCreatureType.CREATURE, Biomes.ICE_PLAINS, Biomes.ICE_MOUNTAINS);
    }
    //=============================== РЕНДЕР ЕНТИТИ ==================================\\ 
     @SideOnly(Side.CLIENT)
        public static void renderRegistry() {
         RenderingRegistry.registerEntityRenderingHandler(EntityScavenger.class, RenderEntityScavenger.SCAVENGER);
         RenderingRegistry.registerEntityRenderingHandler(EntityCyclops.class, RenderEntityCyclops.CYCLOPS);
         RenderingRegistry.registerEntityRenderingHandler(EntityTroll.class, RenderEntityTroll.TROLL);
         RenderingRegistry.registerEntityRenderingHandler(EntityGrizzly.class, RenderEntityGrizzly.Grizzly);
         RenderingRegistry.registerEntityRenderingHandler(EntityInhabitant.class, RenderEntityInhabitant.INHABITANT);
     }
}
 
Последнее редактирование модератором:

CMTV

Основатель
Администратор
1,304
4
601
@Wolfier тебе надо разобраться с тем, что означает static. Много чего есть в интернете на эту тему.

Если коротко, то static означает, что поле или метод класса не зависят от создаваемых экземпляров класса. К ним можно вообще обратиться напрямую, без создания объекта. Иногда такие поля или методы полезны - для выполнения действий и получения переменных, которые не должны меняться. А иногда они вредят, так как постоянны для все экземпляров объекта.
 
2,505
81
397
Что вы пристали к статику? Вы хоть его код читали?

Что ты при присвоил в RenderEntityCyclops.CYCLOPS? Не так, случаем? CYCLOPS = new RenderEntityScavenger.()

Еще ты регаешь один и тот же спавн 5 раз.
 
114
2
Что вы пристали к статику? Вы хоть его код читали?

Что ты при присвоил в RenderEntityCyclops.CYCLOPS? Не так, случаем? CYCLOPS = new RenderEntityScavenger.()

Еще ты регаешь один и тот же спавн 5 раз.
В моем RenderEntityCyclops, так:
Java:
public class RenderEntityCyclops extends RenderLiving<EntityCyclops> {

    private static final ResourceLocation EntityCyclopsTextures = new ResourceLocation(Reference.MOD_ID + ":textures/entity/EntityCyclops.png");

    public static final Factory CYCLOPS = new Factory();

    public RenderEntityCyclops(RenderManager rendermanagerIn) {
        
        super(rendermanagerIn, new Cyclops(), 0.5F);
    }

    @Override
    @Nonnull
    protected ResourceLocation getEntityTexture(@Nonnull EntityCyclops entity) {
        return EntityCyclopsTextures;
    }

    public static class Factory implements IRenderFactory<EntityCyclops> {

        @Override
        public Render<? super EntityCyclops> createRenderFor(RenderManager manager) {
            return new RenderEntityCyclops(manager);
        }

    }
    
}
 
114
2
@Wolfier тебе надо разобраться с тем, что означает static. Много чего есть в интернете на эту тему.

Если коротко, то static означает, что поле или метод класса не зависят от создаваемых экземпляров класса. К ним можно вообще обратиться напрямую, без создания объекта. Иногда такие поля или методы полезны - для выполнения действий и получения переменных, которые не должны меняться. А иногда они вредят, так как постоянны для все экземпляров объекта.
Ну я более менее знаю static, но. Но знанием static я незнаю, как применить.
 
Сверху