Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (โ‹ฎ) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

hi so i am making a penguin but when i try and make the baby it doesnt work and just shows up as an adult.

here is the model class:

package com.relaxingleg.randomthingsmod.client.models;

import com.mojang.blaze3d.matrix.MatrixStack;
import com.mojang.blaze3d.vertex.IVertexBuilder;
import com.relaxingleg.randomthingsmod.entities.PenguinEntity;
import net.minecraft.client.renderer.entity.model.EntityModel;
import net.minecraft.client.renderer.model.ModelRenderer;
import net.minecraft.util.math.MathHelper;

public class PenguinModel <T extends PenguinEntity> extends EntityModel<T> {
   private final ModelRenderer head;
   private final ModelRenderer left_wing;
   private final ModelRenderer right_wing;
   private final ModelRenderer body;
   private final ModelRenderer left_foot;
   private final ModelRenderer right_foot;

   public PenguinModel() {
      textureWidth = 32;
      textureHeight = 32;

      head = new ModelRenderer(this);
      head.setRotationPoint(0.0F, 19.0F, 0.0F);
      head.setTextureOffset(16, 9).addBox(-1.0F, -1.0F, -3.0F, 2.0F, 1.0F, 1.0F, 0.0F, false);
      head.setTextureOffset(0, 9).addBox(-3.0F, -3.0F, -2.0F, 6.0F, 3.0F, 4.0F, 0.0F, false);
      head.setTextureOffset(0, 16).addBox(-3.0F, -4.0F, -1.0F, 6.0F, 1.0F, 2.0F, 0.0F, false);
      head.setTextureOffset(16, 0).addBox(-2.0F, -4.0F, 1.0F, 4.0F, 1.0F, 1.0F, 0.0F, false);
      head.setTextureOffset(16, 2).addBox(-2.0F, -4.0F, -2.0F, 4.0F, 1.0F, 1.0F, 0.0F, false);

      left_wing = new ModelRenderer(this);
      left_wing.setRotationPoint(3.0F, 19.0F, 0.0F);
      left_wing.setTextureOffset(0, 19).addBox(0.0F, 0.0F, -1.0F, 1.0F, 5.0F, 2.0F, 0.0F, false);

      right_wing = new ModelRenderer(this);
      right_wing.setRotationPoint(-3.0F, 19.0F, 0.0F);
      right_wing.setTextureOffset(16, 16).addBox(-1.0F, 0.0F, -1.0F, 1.0F, 5.0F, 2.0F, 0.0F, false);

      body = new ModelRenderer(this);
      body.setRotationPoint(0.0F, 19.0F, 0.0F);
      body.setTextureOffset(0, 0).addBox(-3.0F, 0, -2.0F, 6.0F, 5.0F, 4.0F, 0.0F, false);

      left_foot = new ModelRenderer(this);
      left_foot.setRotationPoint(1.5F, 24.0F, -2.0F);
      left_foot.setTextureOffset(0, 0).addBox(-0.5F, 0.0F, -1.0F, 1.0F, 0.0F, 1.0F, 0.0F, false);

      right_foot = new ModelRenderer(this);
      right_foot.setRotationPoint(-1.5F, 24.0F, -2.0F);
      right_foot.setTextureOffset(0, 1).addBox(-0.5F, 0.0F, -1.0F, 1.0F, 0.0F, 1.0F, 0.0F, false);
   }

   @Override
   public void setRotationAngles(T entityIn, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
      this.head.rotateAngleX = headPitch * 0.017453292F;
      this.head.rotateAngleY = netHeadYaw * 0.017453292F;
      this.right_foot.rotateAngleX = MathHelper.cos(limbSwing * 0.6662F) * 1.4F * limbSwingAmount;
      this.left_foot.rotateAngleX = MathHelper.cos(limbSwing * 0.6662F + 3.1415927F) * 1.4F * limbSwingAmount;
   }

   @Override
   public void render(MatrixStack matrixStack, IVertexBuilder buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha){
      head.render(matrixStack, buffer, packedLight, packedOverlay);
      left_wing.render(matrixStack, buffer, packedLight, packedOverlay);
      right_wing.render(matrixStack, buffer, packedLight, packedOverlay);
      body.render(matrixStack, buffer, packedLight, packedOverlay);
      left_foot.render(matrixStack, buffer, packedLight, packedOverlay);
      right_foot.render(matrixStack, buffer, packedLight, packedOverlay);
   }
}

The entity class:

package com.relaxingleg.randomthingsmod.entities;

import com.relaxingleg.randomthingsmod.init.ModEntityTypes;
import net.minecraft.entity.*;
import net.minecraft.entity.ai.goal.*;
import net.minecraft.entity.passive.AnimalEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.item.crafting.Ingredient;
import net.minecraft.world.World;

public class PenguinEntity extends AnimalEntity {

    private static final Ingredient TEMPTATION_ITEMS = Ingredient.fromItems(Items.COD, Items.SALMON, Items.TROPICAL_FISH, Items.COOKED_COD, Items.COOKED_SALMON);

    public PenguinEntity(EntityType<? extends AnimalEntity> type, World worldIn) {
        super(type, worldIn);
    }

    @Override
    public AgeableEntity createChild(AgeableEntity ageableEntity) {
        return ModEntityTypes.PENGUIN.get().create(this.world);
    }

    @Override
    protected void registerGoals() {
        super.registerGoals();
        this.goalSelector.addGoal(0, new BreedGoal(this, 1d));
        this.goalSelector.addGoal(1, new TemptGoal(this, 1.1d, TEMPTATION_ITEMS, false));
        this.goalSelector.addGoal(2, new LookAtGoal(this, PlayerEntity.class, 6.0f));
        this.goalSelector.addGoal(3, new SwimGoal(this));
        this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.1d));
        this.goalSelector.addGoal(5, new PanicGoal(this, 1.25d));
        this.goalSelector.addGoal(6, new WaterAvoidingRandomWalkingGoal(this, 1.0d));
        this.goalSelector.addGoal(7, new LookRandomlyGoal(this));
    }

    @Override
    protected void registerAttributes() {
        super.registerAttributes();
        this.getAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(10);
        this.getAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.17d);
    }

    @Override
    public boolean isBreedingItem(ItemStack stack) {
        return TEMPTATION_ITEMS.test(stack);
    }
}

ย 

could someone please tell me what i am doing wrong or what i am missing

if you need any more code just say and i will give it to you

  • Author

i cant find the is child method in any of the vanilla examples could you please tell me what class it should be in and how to use it

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions โ†’ Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.