
Klarks
Members-
Posts
97 -
Joined
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
Klarks's Achievements

Stone Miner (3/8)
0
Reputation
-
I want to make a copy of the cow but bigger. But when i am trying to summon it in the game there is a error "failed to create entity". Also i dont understand what exactlly .build("big_cow") doing public static final DeferredRegister<EntityType<?>> ENTITY_TYPES = DeferredRegister.create(ForgeRegistries.ENTITY_TYPES, MyMod.MODID); public static final RegistryObject<EntityType<Cow>> BIG_COW = ENTITY_TYPES.register("big_cow", () -> EntityType.Builder.of(Cow::new, MobCategory.CREATURE) .sized(1.5f, 1.5f) .build("big_cow")); public static void register(IEventBus eventBus) { ENTITY_TYPES.register(eventBus); } public MyMod() { IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); MyEntity.register(modEventBus); modEventBus.addListener(this::commonSetup); MinecraftForge.EVENT_BUS.register(this); }
-
How can i change standard entities models? Do i need to use event RenderLivingEvent?
-
Thanks for replying but field_236193_d_ now is private. How can i set it now
-
Someone please
-
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
Thank you for explaining all this to me. -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
Its kinda working now but how can i choose which of a default ones slots i want to use. For example i dont need head slot or i just shouldn't use it as an index in my container? Now i get the facing thing null = hands and armor vertical = hands horizontal = armor -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
My constructor looks like this now. public ItemStackHandler handlerCustom; public IItemHandler handlerDefault; public IItemHandler both; LazyOptional<IItemHandler> optional; public WhoreEntity(EntityType<? extends WhoreEntity> type, World worldIn) { super(type, worldIn); handlerCustom = new ItemStackHandler(1); //1 handlerDefault = super.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY,Direction.EAST).orElseThrow(null); both = new CombinedInvWrapper(handlerCustom, ((IItemHandlerModifiable) handlerDefault)); optional = LazyOptional.of(() -> both); } And my Override getCapability. I dont sure what is facing means @Nonnull @Override public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction side) { if(cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY && side != null) { return (LazyOptional<T>)optional; } return super.getCapability(cap, side); } Did i do that all right? -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
I didnt got 2 things. 1.my handleCustom is a ItemStackHandler, i cant combined it with handlerDefault they are different classes 2. How can i override in the constructor and what is facing public ItemStackHandler handlerCustom; public IItemHandler handlerDefault; public IItemHandler both; LazyOptional<IItemHandler> optional; public MyEntity(EntityType<? extends MyEntity> type, World worldIn) { super(type, worldIn); handlerCustom = new ItemStackHandler(1); //1 handlerDefault = super.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY,Direction.EAST).orElse(null); both = new CombinedInvWrapper(handlerCustom,handlerDefault); optional = LazyOptional.of(() -> both); } -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
I have 4 default slots (head,chest,legs,feet) and 1 my custom slot for anty item -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
Why i need cal super.getCapability? Is new EntityArmorInvWrapper(entity) doing same thing? LivingEntity. it returns handlers which are LazyOptional<IItemHandlerModifiable>[] and they contains same things what i have already created private final net.minecraftforge.common.util.LazyOptional<?>[] handlers = net.minecraftforge.items.wrapper.EntityEquipmentInvWrapper.create(this); public <T> net.minecraftforge.common.util.LazyOptional<T> getCapability(net.minecraftforge.common.capabilities.Capability<T> capability, @Nullable Direction facing) { if (this.isAlive() && capability == net.minecraftforge.items.CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { if (facing == null) return handlers[2].cast(); else if (facing.getAxis().isVertical()) return handlers[0].cast(); else if (facing.getAxis().isHorizontal()) return handlers[1].cast(); } return super.getCapability(capability, facing); EntityEquipmentInvWrapper public static LazyOptional<IItemHandlerModifiable>[] create(LivingEntity entity) { @SuppressWarnings("unchecked") LazyOptional<IItemHandlerModifiable>[] ret = new LazyOptional[3]; ret[0] = LazyOptional.of(() -> new EntityHandsInvWrapper(entity)); ret[1] = LazyOptional.of(() -> new EntityArmorInvWrapper(entity)); ret[2] = LazyOptional.of(() -> new CombinedInvWrapper(ret[0].orElse(null), ret[1].orElse(null))); return ret; } -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
If super.getCapability give me the default handlers so what new EntityArmorInvWrapper(entity) do -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
I created now. public MyEntity(EntityType<? extends MyEntity> type, World worldIn) { super(type, worldIn); handler = getHandler(); optional = create(this); } do i need this? public <T> LazyOptional<T> create(LivingEntity entity) { LazyOptional<IItemHandlerModifiable>[] ret = new LazyOptional[2]; ret[0] = LazyOptional.of(() -> getHandler()); ret[1] = LazyOptional.of(() -> new EntityArmorInvWrapper(entity)); return LazyOptional.of(() -> (T)new CombinedInvWrapper(ret[0].orElse(null), ret[1].orElse(null))); } here i got default handler public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction side) { if(cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { defHandler = (ItemStackHandler) super.getCapability(cap,side).orElse(null); return create(this); } return super.getCapability(cap, side); } public ItemStack func_213803_dV() { return this.getItemStackFromSlot(EquipmentSlotType.CHEST); } Am i going right? -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
I guess i did it. public <T> LazyOptional<T> create(LivingEntity entity) { LazyOptional<IItemHandlerModifiable>[] ret = new LazyOptional[2]; ret[0] = LazyOptional.of(() -> getHandler()); ret[1] = LazyOptional.of(() -> new EntityArmorInvWrapper(entity)); return LazyOptional.of(() -> (T)new CombinedInvWrapper(ret[0].orElse(null), ret[1].orElse(null))); } public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction side) { if(cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { // super.getCapability(cap, side).; return create(this); } return super.getCapability(cap, side); } But how would a slot know if its a default or a custom slot en.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY).ifPresent(h -> { int index = 0; for(int i =8;i < 63;i+=18) { final EquipmentSlotType equipmentslottype = VALID_EQUIPMENT_SLOTS[index]; addSlot(new SlotItemHandler(h,index,8,i){ public int getSlotStackLimit() { return 1; } public boolean isItemValid(ItemStack stack) { return stack.canEquip(equipmentslottype, en); } public boolean canTakeStack(PlayerEntity playerIn) { ItemStack itemstack = this.getStack(); return !itemstack.isEmpty() && !playerIn.isCreative() && EnchantmentHelper.hasBindingCurse(itemstack) ? false : super.canTakeStack(playerIn); } @OnlyIn(Dist.CLIENT) public Pair<ResourceLocation, ResourceLocation> getBackground() { return Pair.of(PlayerContainer.LOCATION_BLOCKS_TEXTURE, MyModContainer.ARMOR_SLOT_TEXTURES[equipmentslottype.getIndex()]); } }); index++; } }); -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
Do i need to return a list of ItemHandlers? -
[1.16.4] what difference between custom slots and EquipmentSlotType
Klarks replied to Klarks's topic in Modder Support
I dont even understand what type of value is this. What LazyOptional do, how it works and how i can get ItemHandler from this.