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.

SimonSlime

Members
  • Joined

  • Last visited

Everything posted by SimonSlime

  1. I tried this code now but anything is changed
  2. no , I didn't say the mob doesn't spams, I said it doesn't shoot my custom projectile, it only makes direct attack
  3. I'm trying to make a new mob who shots custom projectiles, I did all, but the mob doesn't shot anythings, here my codes: do you find any mystake? EntityIceball.java package com.simon.simonsores.mobs.entity; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.List; import net.minecraft.block.Block; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.DamageSource; import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; import net.minecraft.world.World; public abstract class EntityIceball extends Entity { private int field_145795_e = -1; private int field_145793_f = -1; private int field_145794_g = -1; private Block field_145796_h; private boolean inGround; public EntityLivingBase shootingEntity; private int ticksAlive; private int ticksInAir; public double accelerationX; public double accelerationY; public double accelerationZ; private static final String __OBFID = "CL_00001717"; public EntityIceball(World par1World) { super(par1World); this.setSize(1.0F, 1.0F); } protected void entityInit() {} /** * Checks if the entity is in range to render by using the past in distance and comparing it to its average edge * length * 64 * renderDistanceWeight Args: distance */ @SideOnly(Side.CLIENT) public boolean isInRangeToRenderDist(double par1) { double d1 = this.boundingBox.getAverageEdgeLength() * 4.0D; d1 *= 64.0D; return par1 < d1 * d1; } public EntityIceball(World par1World, double par2, double par4, double par6, double par8, double par10, double par12) { super(par1World); this.setSize(1.0F, 1.0F); this.setLocationAndAngles(par2, par4, par6, this.rotationYaw, this.rotationPitch); this.setPosition(par2, par4, par6); double d6 = (double)MathHelper.sqrt_double(par8 * par8 + par10 * par10 + par12 * par12); this.accelerationX = par8 / d6 * 0.1D; this.accelerationY = par10 / d6 * 0.1D; this.accelerationZ = par12 / d6 * 0.1D; } public EntityIceball(World par1World, EntityLivingBase par2EntityLivingBase, double par3, double par5, double par7) { super(par1World); this.shootingEntity = par2EntityLivingBase; this.setSize(1.0F, 1.0F); this.setLocationAndAngles(par2EntityLivingBase.posX, par2EntityLivingBase.posY, par2EntityLivingBase.posZ, par2EntityLivingBase.rotationYaw, par2EntityLivingBase.rotationPitch); this.setPosition(this.posX, this.posY, this.posZ); this.yOffset = 0.0F; this.motionX = this.motionY = this.motionZ = 0.0D; par3 += this.rand.nextGaussian() * 0.4D; par5 += this.rand.nextGaussian() * 0.4D; par7 += this.rand.nextGaussian() * 0.4D; double d3 = (double)MathHelper.sqrt_double(par3 * par3 + par5 * par5 + par7 * par7); this.accelerationX = par3 / d3 * 0.1D; this.accelerationY = par5 / d3 * 0.1D; this.accelerationZ = par7 / d3 * 0.1D; } /** * Called to update the entity's position/logic. */ public void onUpdate() { if (!this.worldObj.isRemote && (this.shootingEntity != null && this.shootingEntity.isDead || !this.worldObj.blockExists((int)this.posX, (int)this.posY, (int)this.posZ))) { this.setDead(); } else { super.onUpdate(); if (this.inGround) { if (this.worldObj.getBlock(this.field_145795_e, this.field_145793_f, this.field_145794_g) == this.field_145796_h) { ++this.ticksAlive; if (this.ticksAlive == 600) { this.setDead(); } return; } this.inGround = false; this.motionX *= (double)(this.rand.nextFloat() * 0.2F); this.motionY *= (double)(this.rand.nextFloat() * 0.2F); this.motionZ *= (double)(this.rand.nextFloat() * 0.2F); this.ticksAlive = 0; this.ticksInAir = 0; } else { ++this.ticksInAir; } Vec3 vec3 = this.worldObj.getWorldVec3Pool().getVecFromPool(this.posX, this.posY, this.posZ); Vec3 vec31 = this.worldObj.getWorldVec3Pool().getVecFromPool(this.posX + this.motionX, this.posY + this.motionY, this.posZ + this.motionZ); MovingObjectPosition movingobjectposition = this.worldObj.rayTraceBlocks(vec3, vec31); vec3 = this.worldObj.getWorldVec3Pool().getVecFromPool(this.posX, this.posY, this.posZ); vec31 = this.worldObj.getWorldVec3Pool().getVecFromPool(this.posX + this.motionX, this.posY + this.motionY, this.posZ + this.motionZ); if (movingobjectposition != null) { vec31 = this.worldObj.getWorldVec3Pool().getVecFromPool(movingobjectposition.hitVec.xCoord, movingobjectposition.hitVec.yCoord, movingobjectposition.hitVec.zCoord); } Entity entity = null; List list = this.worldObj.getEntitiesWithinAABBExcludingEntity(this, this.boundingBox.addCoord(this.motionX, this.motionY, this.motionZ).expand(1.0D, 1.0D, 1.0D)); double d0 = 0.0D; for (int i = 0; i < list.size(); ++i) { Entity entity1 = (Entity)list.get(i); if (entity1.canBeCollidedWith() && (!entity1.isEntityEqual(this.shootingEntity) || this.ticksInAir >= 25)) { float f = 0.3F; AxisAlignedBB axisalignedbb = entity1.boundingBox.expand((double)f, (double)f, (double)f); MovingObjectPosition movingobjectposition1 = axisalignedbb.calculateIntercept(vec3, vec31); if (movingobjectposition1 != null) { double d1 = vec3.distanceTo(movingobjectposition1.hitVec); if (d1 < d0 || d0 == 0.0D) { entity = entity1; d0 = d1; } } } } if (entity != null) { movingobjectposition = new MovingObjectPosition(entity); } if (movingobjectposition != null) { this.onImpact(movingobjectposition); } this.posX += this.motionX; this.posY += this.motionY; this.posZ += this.motionZ; float f1 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); this.rotationYaw = (float)(Math.atan2(this.motionZ, this.motionX) * 180.0D / Math.PI) + 90.0F; for (this.rotationPitch = (float)(Math.atan2((double)f1, this.motionY) * 180.0D / Math.PI) - 90.0F; this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) { ; } while (this.rotationPitch - this.prevRotationPitch >= 180.0F) { this.prevRotationPitch += 360.0F; } while (this.rotationYaw - this.prevRotationYaw < -180.0F) { this.prevRotationYaw -= 360.0F; } while (this.rotationYaw - this.prevRotationYaw >= 180.0F) { this.prevRotationYaw += 360.0F; } this.rotationPitch = this.prevRotationPitch + (this.rotationPitch - this.prevRotationPitch) * 0.2F; this.rotationYaw = this.prevRotationYaw + (this.rotationYaw - this.prevRotationYaw) * 0.2F; float f2 = this.getMotionFactor(); if (this.isInWater()) { for (int j = 0; j < 4; ++j) { float f3 = 0.25F; this.worldObj.spawnParticle("bubble", this.posX - this.motionX * (double)f3, this.posY - this.motionY * (double)f3, this.posZ - this.motionZ * (double)f3, this.motionX, this.motionY, this.motionZ); } f2 = 0.8F; } this.motionX += this.accelerationX; this.motionY += this.accelerationY; this.motionZ += this.accelerationZ; this.motionX *= (double)f2; this.motionY *= (double)f2; this.motionZ *= (double)f2; this.worldObj.spawnParticle("snowballpoof", this.posX, this.posY + 0.5D, this.posZ, 0.0D, 0.0D, 0.0D); this.setPosition(this.posX, this.posY, this.posZ); } } /** * Return the motion factor for this projectile. The factor is multiplied by the original motion. */ protected float getMotionFactor() { return 0.95F; } /** * Called when this EntityFireball hits a block or entity. */ protected abstract void onImpact(MovingObjectPosition var1); /** * (abstract) Protected helper method to write subclass entity data to NBT. */ public void writeEntityToNBT(NBTTagCompound par1NBTTagCompound) { par1NBTTagCompound.setShort("xTile", (short)this.field_145795_e); par1NBTTagCompound.setShort("yTile", (short)this.field_145793_f); par1NBTTagCompound.setShort("zTile", (short)this.field_145794_g); par1NBTTagCompound.setByte("inTile", (byte)Block.getIdFromBlock(this.field_145796_h)); par1NBTTagCompound.setByte("inGround", (byte)(this.inGround ? 1 : 0)); par1NBTTagCompound.setTag("direction", this.newDoubleNBTList(new double[] {this.motionX, this.motionY, this.motionZ})); } /** * (abstract) Protected helper method to read subclass entity data from NBT. */ public void readEntityFromNBT(NBTTagCompound par1NBTTagCompound) { this.field_145795_e = par1NBTTagCompound.getShort("xTile"); this.field_145793_f = par1NBTTagCompound.getShort("yTile"); this.field_145794_g = par1NBTTagCompound.getShort("zTile"); this.field_145796_h = Block.getBlockById(par1NBTTagCompound.getByte("inTile") & 255); this.inGround = par1NBTTagCompound.getByte("inGround") == 1; if (par1NBTTagCompound.hasKey("direction", 9)) { NBTTagList nbttaglist = par1NBTTagCompound.getTagList("direction", 6); this.motionX = nbttaglist.func_150309_d(0); this.motionY = nbttaglist.func_150309_d(1); this.motionZ = nbttaglist.func_150309_d(2); } else { this.setDead(); } } /** * Returns true if other Entities should be prevented from moving through this Entity. */ public boolean canBeCollidedWith() { return true; } public float getCollisionBorderSize() { return 1.0F; } /** * Called when the entity is attacked. */ public boolean attackEntityFrom(DamageSource par1DamageSource, float par2) { if (this.isEntityInvulnerable()) { return false; } else { this.setBeenAttacked(); if (par1DamageSource.getEntity() != null) { Vec3 vec3 = par1DamageSource.getEntity().getLookVec(); if (vec3 != null) { this.motionX = vec3.xCoord; this.motionY = vec3.yCoord; this.motionZ = vec3.zCoord; this.accelerationX = this.motionX * 0.1D; this.accelerationY = this.motionY * 0.1D; this.accelerationZ = this.motionZ * 0.1D; } if (par1DamageSource.getEntity() instanceof EntityLivingBase) { this.shootingEntity = (EntityLivingBase)par1DamageSource.getEntity(); } return true; } else { return false; } } } @SideOnly(Side.CLIENT) public float getShadowSize() { return 0.0F; } /** * Gets how bright this entity is. */ public float getBrightness(float par1) { return 1.0F; } @SideOnly(Side.CLIENT) public int getBrightnessForRender(float par1) { return 15728880; } } EntitySmallIceball.java package com.simon.simonsores.mobs.entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.init.Blocks; import net.minecraft.util.DamageSource; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import com.simon.simonsores.mobs.entity.EntityIceball; public class EntitySmallIceball extends EntityIceball { private static final String __OBFID = "CL_00001721"; public EntitySmallIceball(World par1World) { super(par1World); this.setSize(0.3125F, 0.3125F); } public EntitySmallIceball(World par1World, EntityLivingBase par2EntityLivingBase, double par3, double par5, double par7) { super(par1World, par2EntityLivingBase, par3, par5, par7); this.setSize(0.3125F, 0.3125F); } public EntitySmallIceball(World par1World, double par2, double par4, double par6, double par8, double par10, double par12) { super(par1World, par2, par4, par6, par8, par10, par12); this.setSize(0.3125F, 0.3125F); } /** * Called when this EntityFireball hits a block or entity. */ protected void onImpact(MovingObjectPosition par1MovingObjectPosition) { if (!this.worldObj.isRemote) { if (par1MovingObjectPosition.entityHit != null) { par1MovingObjectPosition.entityHit.setFire(0); } } else { int i = par1MovingObjectPosition.blockX; int j = par1MovingObjectPosition.blockY; int k = par1MovingObjectPosition.blockZ; switch (par1MovingObjectPosition.sideHit) { case 0: --j; break; case 1: ++j; break; case 2: --k; break; case 3: ++k; break; case 4: --i; break; case 5: ++i; } if (this.worldObj.isAirBlock(i, j, k)) { this.worldObj.setBlock(i, j, k, Blocks.snow); } } this.setDead(); } /** * Returns true if other Entities should be prevented from moving through this Entity. */ public boolean canBeCollidedWith() { return false; } /** * Called when the entity is attacked. */ public boolean attackEntityFrom(DamageSource par1DamageSource, float par2) { return false; }} RenderIceball.java package com.simon.simonsores.mobs.render; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.entity.Render; import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.entity.Entity; import com.simon.simonsores.mobs.entity.EntityIceball; import net.minecraft.init.Items; import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; @SideOnly(Side.CLIENT) public class RenderIceball extends Render { private static final ResourceLocation textureLocation = new ResourceLocation("simonsoresmod:textures/items/Iceball.png"); private float field_77002_a; private static final String __OBFID = "CL_00000995"; public RenderIceball(float par1) { this.field_77002_a = par1; } /** * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic * (Render<T extends Entity) and this method has signature public void func_76986_a(T entity, double d, double d1, * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that. */ public void doRender(EntityIceball par1EntityIceball, double par2, double par4, double par6, float par8, float par9) { GL11.glPushMatrix(); this.bindEntityTexture(par1EntityIceball); GL11.glTranslatef((float)par2, (float)par4, (float)par6); GL11.glEnable(GL12.GL_RESCALE_NORMAL); float f2 = this.field_77002_a; GL11.glScalef(f2 / 1.0F, f2 / 1.0F, f2 / 1.0F); IIcon iicon = Items.fire_charge.getIconFromDamage(0); Tessellator tessellator = Tessellator.instance; float f3 = iicon.getMinU(); float f4 = iicon.getMaxU(); float f5 = iicon.getMinV(); float f6 = iicon.getMaxV(); float f7 = 1.0F; float f8 = 0.5F; float f9 = 0.25F; GL11.glRotatef(180.0F - this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); GL11.glRotatef(-this.renderManager.playerViewX, 1.0F, 0.0F, 0.0F); tessellator.startDrawingQuads(); tessellator.setNormal(0.0F, 1.0F, 0.0F); tessellator.addVertexWithUV((double)(0.0F - f8), (double)(0.0F - f9), 0.0D, (double)f3, (double)f6); tessellator.addVertexWithUV((double)(f7 - f8), (double)(0.0F - f9), 0.0D, (double)f4, (double)f6); tessellator.addVertexWithUV((double)(f7 - f8), (double)(1.0F - f9), 0.0D, (double)f4, (double)f5); tessellator.addVertexWithUV((double)(0.0F - f8), (double)(1.0F - f9), 0.0D, (double)f3, (double)f5); tessellator.draw(); GL11.glDisable(GL12.GL_RESCALE_NORMAL); GL11.glPopMatrix(); } public void doRender(Entity par1Entity, double par2, double par4, double par6, float par8, float par9) { this.doRender((EntityIceball)par1Entity, par2, par4, par6, par8, par9); } @Override protected ResourceLocation getEntityTexture(Entity entity) { return textureLocation; } } EntityFrost.java (who shot this projectile) package com.simon.simonsores.mobs.entity; import com.simon.simonsores.simonsoresMod; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.monster.EntityMob; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntitySmallFireball; import net.minecraft.entity.projectile.EntitySnowball; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.util.DamageSource; import net.minecraft.util.MathHelper; import net.minecraft.world.World; public class EntityFrost extends EntityMob { /** Random offset used in floating behaviour */ private float heightOffset = 0.5F; /** ticks until heightOffset is randomized */ private int heightOffsetUpdateTime; private int field_70846_g; private static final String __OBFID = "CL_00001682"; public EntityFrost(World par1World) { super(par1World); this.experienceValue = 15; } protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(8.0D); } protected void entityInit() { super.entityInit(); this.dataWatcher.addObject(16, new Byte((byte)0)); } /** * Returns the sound this mob makes while it's alive. */ protected String getLivingSound() { return "mob.blaze.breathe"; } /** * Returns the sound this mob makes when it is hurt. */ protected String getHurtSound() { return "mob.blaze.hit"; } /** * Returns the sound this mob makes on death. */ protected String getDeathSound() { return "mob.blaze.death"; } @SideOnly(Side.CLIENT) public int getBrightnessForRender(float par1) { return 15728880; } /** * Gets how bright this entity is. */ public float getBrightness(float par1) { return 1.0F; } /** * Called frequently so the entity can update its state every tick as required. For example, zombies and skeletons * use this to react to sunlight and start to burn. */ public void onLivingUpdate() { if (!this.worldObj.isRemote) { if (this.isWet()) { this.attackEntityFrom(DamageSource.drown, 1.0F); } --this.heightOffsetUpdateTime; if (this.heightOffsetUpdateTime <= 0) { this.heightOffsetUpdateTime = 100; this.heightOffset = 0.5F + (float)this.rand.nextGaussian() * 3.0F; } if (this.getEntityToAttack() != null && this.getEntityToAttack().posY + (double)this.getEntityToAttack().getEyeHeight() > this.posY + (double)this.getEyeHeight() + (double)this.heightOffset) { this.motionY += (0.30000001192092896D - this.motionY) * 0.30000001192092896D; } } if (this.rand.nextInt(24) == 0) { this.worldObj.playSoundEffect(this.posX + 0.5D, this.posY + 0.5D, this.posZ + 0.5D, "fire.fire", 1.0F + this.rand.nextFloat(), this.rand.nextFloat() * 0.7F + 0.3F); } if (!this.onGround && this.motionY < 0.0D) { this.motionY *= 0.6D; } for (int i = 0; i < 2; ++i) { this.worldObj.spawnParticle("snowshovel", this.posX + (this.rand.nextDouble() - 0.5D) * (double)this.width, this.posY + this.rand.nextDouble() * (double)this.height, this.posZ + (this.rand.nextDouble() - 0.5D) * (double)this.width, 0.0D, 0.0D, 0.0D); } super.onLivingUpdate(); } /** * Basic mob attack. Default to touch of death in EntityCreature. Overridden by each mob to define their attack. */ protected void attackEntity(Entity par1Entity, float par2) { if (this.attackTime <= 0 && par2 < 2.0F && par1Entity.boundingBox.maxY > this.boundingBox.minY && par1Entity.boundingBox.minY < this.boundingBox.maxY) { this.attackTime = 20; this.attackEntityAsMob(par1Entity); } else if (par2 < 30.0F) { double d0 = par1Entity.posX - this.posX; double d1 = par1Entity.boundingBox.minY + (double)(par1Entity.height / 2.0F) - (this.posY + (double)(this.height / 2.0F)); double d2 = par1Entity.posZ - this.posZ; if (this.attackTime == 0) { ++this.field_70846_g; if (this.field_70846_g == 1) { this.attackTime = 60; this.func_70844_e(true); } else if (this.field_70846_g <= 4) { this.attackTime = 6; } else { this.attackTime = 100; this.field_70846_g = 0; this.func_70844_e(false); } if (this.field_70846_g > 1) { float f1 = MathHelper.sqrt_float(par2) * 0.5F; this.worldObj.playAuxSFXAtEntity((EntityPlayer)null, 1009, (int)this.posX, (int)this.posY, (int)this.posZ, 0); for (int i = 0; i < 1; ++i) { EntitySmallIceball entitysmalliceball = new EntitySmallIceball(this.worldObj, this, d0 + this.rand.nextGaussian() * (double)f1, d1, d2 + this.rand.nextGaussian() * (double)f1); entitysmalliceball.posY = this.posY + (double)(this.height / 2.0F) + 0.5D; this.worldObj.spawnEntityInWorld(entitysmalliceball); } } } this.rotationYaw = (float)(Math.atan2(d2, d0) * 180.0D / Math.PI) - 90.0F; this.hasAttacked = true; } } /** * Called when the mob is falling. Calculates and applies fall damage. */ protected void fall(float par1) {} protected Item getDropItem() { return simonsoresMod.FrostRod; } /** * Returns true if the entity is on fire. Used by render to add the fire effect on rendering. */ public boolean isBurning() { return this.func_70845_n(); } /** * Drop 0-2 items of this living's type. @param par1 - Whether this entity has recently been hit by a player. @param * par2 - Level of Looting used to kill this mob. */ protected void dropFewItems(boolean par1, int par2) { if (par1) { int j = this.rand.nextInt(2 + par2); for (int k = 0; k < j; ++k) { this.dropItem(simonsoresMod.FrostRod, 1); } } } public boolean func_70845_n() { return (this.dataWatcher.getWatchableObjectByte(16) & 1) != 0; } public void func_70844_e(boolean par1) { byte b0 = this.dataWatcher.getWatchableObjectByte(16); if (par1) { b0 = (byte)(b0 | 1); } else { b0 &= -2; } this.dataWatcher.updateObject(16, Byte.valueOf(b0)); } /** * Checks to make sure the light is not too bright where the mob is spawning */ protected boolean isValidLightLevel() { return true; } ClientProxy.java package com.simon.simonsores; import com.simon.simonsores.mobs.Frost; import com.simon.simonsores.mobs.entity.EntityFrost; import com.simon.simonsores.mobs.render.RenderFrost; import com.simon.simonsores.mobs.render.RenderIceball; import com.simon.simonsores.mobs.entity.EntityIceball; import cpw.mods.fml.client.registry.RenderingRegistry; public class ClientProxy extends CommonProxy { public void RegisterInformation() { RenderingRegistry.registerEntityRenderingHandler(EntityFrost.class, new RenderFrost(new Frost(), 0)); RenderingRegistry.registerEntityRenderingHandler(EntityIceball.class, new RenderIceball(0.5F)); } }
  4. ok here what I've done: build failed! what went wrong? what I have to do for fix it? I have to install a JDK how it say?
  5. guys I don't know how to do because I don't have the libs folder, in the folder build I have only natives and tmp, so where the jar is saved?
  6. no, for export my mod I only exported in eclipse in a jar file and I put it in the mod folder of minecraft, then I have forgotten some steps? what?
  7. I called it simonsoresMod, here the full log: ash Report ---- // My bad. Time: 13/08/14 3.39 Description: Initializing game java.lang.NoSuchFieldError: rock at com.simon.simonsores.simonsoresMod.<clinit>(simonsoresMod.java:73) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:420) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:209) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:188) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) at cpw.mods.fml.common.Loader.loadMods(Loader.java:489) at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:202) at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467) at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:815) at net.minecraft.client.main.Main.main(SourceFile:103) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:134) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Stacktrace: at com.simon.simonsores.simonsoresMod.<clinit>(simonsoresMod.java:73) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:420) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:209) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:188) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) at cpw.mods.fml.common.Loader.loadMods(Loader.java:489) at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:202) at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467) -- Initialization -- Details: Stacktrace: at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:815) at net.minecraft.client.main.Main.main(SourceFile:103) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:134) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) -- System Details -- Details: Minecraft Version: 1.7.2 Operating System: Windows 7 (x86) version 6.1 Java Version: 1.7.0_55, Oracle Corporation Java VM Version: Java HotSpot Client VM (mixed mode), Oracle Corporation Memory: 50516128 bytes (48 MB) / 151613440 bytes (144 MB) up to 1230569472 bytes (1173 MB) JVM Flags: 2 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx1214M AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 FML: MCP v9.03 FML v7.2.165.1065 Minecraft Forge 10.12.1.1065 9 mods loaded, 9 mods active mcp{9.03} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed FML{7.2.165.1065} [Forge Mod Loader] (forge-1.7.2-10.12.1.1065.jar) Unloaded->Constructed Forge{10.12.1.1065} [Minecraft Forge] (forge-1.7.2-10.12.1.1065.jar) Unloaded->Constructed CodeChickenCore{rc_} [CodeChicken Core] (minecraft.jar) Unloaded->Constructed NotEnoughItems{rc_} [Not Enough Items] (NotEnoughItems-1.7.2-rc2.jar) Unloaded->Constructed bspkrsCore{6.3(1.7.2)} [bspkrsCore] ([1.7.2]bspkrsCore-universal-6.3(1.7.2).jar) Unloaded->Constructed DamageIndicatorsMod{3.1.0} [Damage Indicators] ([1.7.2]DamageIndicatorsMod-3.1.0.jar) Unloaded->Constructed simonsoresMod{1.0} [simonsoresMod] (simonsoresMod.jar) Unloaded Waila{1.5.2_1.7.2} [Waila] (Waila-1.5.2-1.7.2-rc2.jar) Unloaded Launched Version: 1.7.2-Forge10.12.1.1065 LWJGL: 2.9.0 OpenGL: Intel Bear Lake B GL version 1.4.0 - Build 8.14.10.1930, Intel Is Modded: Definitely; Client brand changed to 'fml,forge' Type: Client (map_client.txt) Resource Packs: [] Current Language: Italiano (Italia) Profiler Position: N/A (disabled) Vec3 Pool Size: ~~ERROR~~ NullPointerException: null Anisotropic Filtering: Off (1)
  8. I exported my mod from eclipse in a jar file, I put it in the mod folder of minecraft but when I run it crash: Minecraft Version: 1.7.2 Operating System: Windows 7 (x86) version 6.1 Java Version: 1.7.0_55, Oracle Corporation Java VM Version: Java HotSpot Client VM (mixed mode), Oracle Corporation Memory: 50735584 bytes (48 MB) / 151609344 bytes (144 MB) up to 1230569472 bytes (1173 MB) JVM Flags: 2 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx1214M AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 FML: MCP v9.03 FML v7.2.165.1065 Minecraft Forge 10.12.1.1065 9 mods loaded, 9 mods active mcp{9.03} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed FML{7.2.165.1065} [Forge Mod Loader] (forge-1.7.2-10.12.1.1065.jar) Unloaded->Constructed Forge{10.12.1.1065} [Minecraft Forge] (forge-1.7.2-10.12.1.1065.jar) Unloaded->Constructed CodeChickenCore{rc_} [CodeChicken Core] (minecraft.jar) Unloaded->Constructed NotEnoughItems{rc_} [Not Enough Items] (NotEnoughItems-1.7.2-rc2.jar) Unloaded->Constructed bspkrsCore{6.3(1.7.2)} [bspkrsCore] ([1.7.2]bspkrsCore-universal-6.3(1.7.2).jar) Unloaded->Constructed DamageIndicatorsMod{3.1.0} [Damage Indicators] ([1.7.2]DamageIndicatorsMod-3.1.0.jar) Unloaded->Constructed simonsoresMod{1.0} [simonsoresMod] (simonsoresMod.jar) Unloaded Waila{1.5.2_1.7.2} [Waila] (Waila-1.5.2-1.7.2-rc2.jar) Unloaded Launched Version: 1.7.2-Forge10.12.1.1065 LWJGL: 2.9.0 OpenGL: Intel Bear Lake B GL version 1.4.0 - Build 8.14.10.1930, Intel Is Modded: Definitely; Client brand changed to 'fml,forge' Type: Client (map_client.txt) Resource Packs: [] Current Language: Italiano (Italia) Profiler Position: N/A (disabled) Vec3 Pool Size: ~~ERROR~~ NullPointerException: null Anisotropic Filtering: Off (1) some help?
  9. then it isn't how I have told? dxarm2 (child) -5F, 1F, -27F - dxarm1 (parent) -5F, -8F, -29F = -0F, 9F, 2F (new rotation point dxarm2) or no?
  10. i have this model: // Date: 05/08/2014 00:53:59 // Template version 1.1 // Java generated by Techne // Keep in mind that you still need to fill in some blanks // - ZeuX package com.simon.simonsores.mobs; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.util.MathHelper; public class Amon extends ModelBase { //fields ModelRenderer head; ModelRenderer body1; ModelRenderer dxarm1; ModelRenderer sxarm1; ModelRenderer dxarm2; ModelRenderer sxarm2; ModelRenderer body2; ModelRenderer tail1; ModelRenderer tail2; ModelRenderer tail3; ModelRenderer tail4; ModelRenderer tail5; ModelRenderer tail6; ModelRenderer tail7; ModelRenderer tail8; ModelRenderer dxarm3; ModelRenderer sxarm3; public Amon() { textureWidth = 128; textureHeight = 128; head = new ModelRenderer(this, 96, 0); head.addBox(0F, 0F, 0F, 8, 8, ; head.setRotationPoint(0F, -17F, -31F); head.setTextureSize(128, 128); head.mirror = true; setRotation(head, 0F, 0F, 0F); body1 = new ModelRenderer(this, 92, 17); body1.addBox(0F, 0F, 0F, 10, 16, ; body1.setRotationPoint(-1F, -8F, -30F); body1.setTextureSize(128, 128); body1.mirror = true; setRotation(body1, 0.5948578F, 0F, 0F); dxarm1 = new ModelRenderer(this, 0, 82); dxarm1.addBox(0F, 0F, 0F, 4, 10, 4); dxarm1.setRotationPoint(-5F, -8F, -29F); dxarm1.setTextureSize(128, 128); dxarm1.mirror = true; setRotation(dxarm1, 0.1858931F, 0F, 0F); sxarm1 = new ModelRenderer(this, 0, 99); sxarm1.addBox(0F, 0F, 0F, 4, 10, 4); sxarm1.setRotationPoint(9F, -8F, -29F); sxarm1.setTextureSize(128, 128); sxarm1.mirror = true; setRotation(sxarm1, 0.1858931F, 0F, 0F); dxarm2 = new ModelRenderer(this, 21, 56); dxarm2.addBox(0F, 0F, 0F, 4, 10, 4); dxarm2.setRotationPoint(-5F, 1F, -27F); dxarm2.setTextureSize(128, 128); dxarm2.mirror = true; setRotation(dxarm2, 0F, 0F, 0F); sxarm2 = new ModelRenderer(this, 38, 56); sxarm2.addBox(0F, 0F, 0F, 4, 10, 4); sxarm2.setRotationPoint(9F, 1F, -27F); sxarm2.setTextureSize(128, 128); sxarm2.mirror = true; setRotation(sxarm2, 0F, 0F, 0F); dxarm3 = new ModelRenderer(this, 21, 72); dxarm3.addBox(0F, 0F, 0F, 4, 8, 5); dxarm3.setRotationPoint(-5F, 8F, -27F); dxarm3.setTextureSize(128, 128); dxarm3.mirror = true; setRotation(dxarm3, -0.4461433F, 0F, 0F); sxarm3 = new ModelRenderer(this, 21, 87); sxarm3.addBox(0F, 0F, 0F, 4, 8, 5); sxarm3.setRotationPoint(9F, 8F, -27F); sxarm3.setTextureSize(128, 128); sxarm3.mirror = true; setRotation(sxarm3, -0.4461433F, 0F, 0F); body2 = new ModelRenderer(this, 88, 42); body2.addBox(0F, 0F, 0F, 12, 9, ; body2.setRotationPoint(-2F, 3F, -22F); body2.setTextureSize(128, 128); body2.mirror = true; setRotation(body2, 0.4833219F, 0F, 0F); tail1 = new ModelRenderer(this, 0, 0); tail1.addBox(0F, 0F, 0F, 14, 9, ; tail1.setRotationPoint(-3F, 10F, -19F); tail1.setTextureSize(128, 128); tail1.mirror = true; setRotation(tail1, 0.7435722F, 0F, 0F); tail2 = new ModelRenderer(this, 0, 19); tail2.addBox(0F, 0F, 0F, 14, 8, ; tail2.setRotationPoint(-3F, 16F, -14F); tail2.setTextureSize(128, 128); tail2.mirror = true; setRotation(tail2, 1.003822F, 0F, 0F); tail3 = new ModelRenderer(this, 0, 36); tail3.addBox(0F, 0F, 0F, 14, 10, ; tail3.setRotationPoint(-3F, 20F, -9F); tail3.setTextureSize(128, 128); tail3.mirror = true; setRotation(tail3, 1.301251F, 0F, 0F); tail4 = new ModelRenderer(this, 45, 0); tail4.addBox(0F, 0F, 0F, 12, 10, ; tail4.setRotationPoint(-2F, 23F, 0F); tail4.setTextureSize(128, 128); tail4.mirror = true; setRotation(tail4, 1.59868F, 0F, 0F); tail5 = new ModelRenderer(this, 45, 19); tail5.addBox(0F, 0F, 0F, 10, 10, ; tail5.setRotationPoint(-1F, 23F, 9F); tail5.setTextureSize(128, 128); tail5.mirror = true; setRotation(tail5, 1.59868F, 0F, 0F); tail6 = new ModelRenderer(this, 45, 38); tail6.addBox(0F, 0F, 0F, 8, 10, 6); tail6.setRotationPoint(0F, 22F, 17F); tail6.setTextureSize(128, 128); tail6.mirror = true; setRotation(tail6, 1.59868F, 0F, 0F); tail7 = new ModelRenderer(this, 0, 56); tail7.addBox(0F, 0F, 0F, 6, 10, 4); tail7.setRotationPoint(1F, 21F, 24F); tail7.setTextureSize(128, 128); tail7.mirror = true; setRotation(tail7, 1.59868F, 0F, 0F); tail8 = new ModelRenderer(this, 0, 72); tail8.addBox(0F, 0F, 0F, 4, 5, 2); tail8.setRotationPoint(2F, 20F, 32F); tail8.setTextureSize(128, 128); tail8.mirror = true; setRotation(tail8, 1.59868F, 0F, 0F); } public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) { super.render(par1Entity, par2, par3, par4, par5, par6, par7); setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity); head.render(par7); body1.render(par7); dxarm1.render(par7); sxarm1.render(par7); body2.render(par7); tail1.render(par7); tail2.render(par7); tail3.render(par7); tail4.render(par7); tail5.render(par7); tail6.render(par7); tail7.render(par7); tail8.render(par7); } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } public void setRotationAngles(float par1, float par2, float par3, float par4, float par5, float par6, Entity par7Entity) { super.setRotationAngles(par1, par2, par3, par4, par5, par6, par7Entity); head.rotateAngleY = par4 / 57.29578F; head.rotateAngleX = par5 / 57.29578F; this.dxarm1.rotateAngleX = MathHelper.cos(par1 * 0.6662F) * 1.4F * par2; this.dxarm1.rotateAngleY = 0.0F; this.sxarm1.rotateAngleX = MathHelper.cos(par1 * 0.6662F + (float)Math.PI) * 1.4F * par2; this.sxarm1.rotateAngleY = 0.0F; this.dxarm1.addChild(dxarm2); this.dxarm2.addChild(dxarm3); this.sxarm1.addChild(sxarm2); this.sxarm2.addChild(sxarm3); } } I'm making the arms animation, I just put the addChild the I removed the renders but now I don't understund how to reset the rotation points: if the dxarm1 is -5F, -8F, -29F and dxarm2 is -5F, 1F, -27F Ihave to change dxarm2 in -0F, 9F, 2F or no? and if I change it in this, then for reset the rotation point of dxarm3 that is -5F, 8F, -27F I have to do (-5F, 8F, -27F) - (-0F, 9F, 2F) that is (-5F, -1F, -29F) or no? I tested it in game and the arms are seen as in this picture: http://i1102.photobucket.com/albums/g454/2010simoDK/mmm.png another thing you can see in the picture is the head animation isn't seen good, this because the rotation point of the head is here: http://i1102.photobucket.com/albums/g454/2010simoDK/mmmm.png so also how can I reset the rotation point of the head at the center?
  11. where I can see the codes of all special attacks? example shoot fireballs, lightnings, potion effects, explosions ecc?
  12. maybe can center the fact that the texture is 512 x 380? maybe it's too big?
  13. and in techne the mob appears correct: http://i1102.photobucket.com/albums/g454/2010simoDK/d.png
  14. in the main class of the mod: @EventHandler public void load(FMLInitializationEvent event) { proxy.RegisterInformation(); } }
  15. CLIENT PROXY package com.simon.simonsores; import com.simon.simonsores.mobs.FireDragon; import com.simon.simonsores.mobs.entity.EntityFireDragon; import com.simon.simonsores.mobs.render.RenderFireDragon; import cpw.mods.fml.client.registry.RenderingRegistry; public class ClientProxy extends CommonProxy { public void RegisterInformation() { RenderingRegistry.registerEntityRenderingHandler(EntityFireDragon.class, new RenderFireDragon(new FireDragon(), 0.5F)); } } COMMON PROXY package com.simon.simonsores; public class CommonProxy { public void RegisterInformation() { } } FIREDRAGON.JAVA (model class) package com.simon.simonsores.mobs; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class FireDragon extends ModelBase { //fields ModelRenderer dxfoot; ModelRenderer sxfoot; ModelRenderer finger1; ModelRenderer finger2; ModelRenderer finger3; ModelRenderer finger4; ModelRenderer finger5; ModelRenderer finger6; ModelRenderer dxankle; ModelRenderer dxknee; ModelRenderer sxankle; ModelRenderer sxknee; ModelRenderer body; ModelRenderer dxthigh; ModelRenderer sxthigh; ModelRenderer neck1; ModelRenderer tail1; ModelRenderer tail2; ModelRenderer tail3; ModelRenderer dxshoulder; ModelRenderer dxarm; ModelRenderer dxwrist; ModelRenderer finger7; ModelRenderer finger8; ModelRenderer finger9; ModelRenderer sxshoulder; ModelRenderer sxarm; ModelRenderer sxwrist; ModelRenderer finger10; ModelRenderer finger11; ModelRenderer finger12; ModelRenderer neck2; ModelRenderer neck3; ModelRenderer neck4; ModelRenderer neck5; ModelRenderer head1; ModelRenderer mouth; ModelRenderer head2; ModelRenderer tooth1; ModelRenderer tooth2; ModelRenderer tooth3; ModelRenderer tooth4; ModelRenderer sxwing1; ModelRenderer sxwing2; ModelRenderer dxwing1; ModelRenderer dxwing2; ModelRenderer sxwing1board; ModelRenderer sxwing2board; ModelRenderer dxwing1board; ModelRenderer dxwing2board; ModelRenderer tail4; ModelRenderer tail5; ModelRenderer tail6; ModelRenderer tail7; ModelRenderer tail8; ModelRenderer tail9; public FireDragon() { textureWidth = 512; textureHeight = 380; dxfoot = new ModelRenderer(this, 0, 51); dxfoot.addBox(0F, 0F, 0F, 17, 5, 10); dxfoot.setRotationPoint(-8F, 10F, -19F); dxfoot.setTextureSize(512, 380); dxfoot.mirror = true; setRotation(dxfoot, 0F, 0F, 0F); sxfoot = new ModelRenderer(this, 0, 33); sxfoot.addBox(0F, 0F, 0F, 17, 5, 10); sxfoot.setRotationPoint(-8F, 10F, 8F); sxfoot.setTextureSize(512, 380); sxfoot.mirror = true; setRotation(sxfoot, 0F, 0F, 0F); finger1 = new ModelRenderer(this, 195, 45); finger1.addBox(0F, 0F, 0F, 9, 2, 2); finger1.setRotationPoint(5F, 10F, -18F); finger1.setTextureSize(512, 380); finger1.mirror = true; setRotation(finger1, 0F, 0F, 0.1858931F); finger2 = new ModelRenderer(this, 195, 53); finger2.addBox(0F, 0F, 0F, 9, 2, 2); finger2.setRotationPoint(5F, 10F, -15F); finger2.setTextureSize(512, 380); finger2.mirror = true; setRotation(finger2, 0F, 0F, 0.1858931F); finger3 = new ModelRenderer(this, 195, 60); finger3.addBox(0F, 0F, 0F, 9, 2, 2); finger3.setRotationPoint(5F, 10F, -12F); finger3.setTextureSize(512, 380); finger3.mirror = true; setRotation(finger3, 0F, 0F, 0.1858931F); finger4 = new ModelRenderer(this, 172, 45); finger4.addBox(0F, 0F, 0F, 9, 2, 2); finger4.setRotationPoint(5F, 10F, 9F); finger4.setTextureSize(512, 380); finger4.mirror = true; setRotation(finger4, 0F, 0F, 0.1858931F); finger5 = new ModelRenderer(this, 172, 53); finger5.addBox(0F, 0F, 0F, 9, 2, 2); finger5.setRotationPoint(5F, 10F, 12F); finger5.setTextureSize(512, 380); finger5.mirror = true; setRotation(finger5, 0F, 0F, 0.1858931F); finger6 = new ModelRenderer(this, 172, 61); finger6.addBox(0F, 0F, 0F, 9, 2, 2); finger6.setRotationPoint(5F, 10F, 15F); finger6.setTextureSize(512, 380); finger6.mirror = true; setRotation(finger6, 0F, 0F, 0.1858931F); dxankle = new ModelRenderer(this, 207, 290); dxankle.addBox(0F, 0F, 0F, 8, 16, ; dxankle.setRotationPoint(-6F, -6F, -18F); dxankle.setTextureSize(512, 380); dxankle.mirror = true; setRotation(dxankle, 0F, 0F, 0.0743572F); dxknee = new ModelRenderer(this, 251, 260); dxknee.addBox(0F, 0F, 0F, 9, 16, 10); dxknee.setRotationPoint(-11F, -17F, -19F); dxknee.setTextureSize(512, 380); dxknee.mirror = true; setRotation(dxknee, 0F, 0F, -0.3346075F); sxankle = new ModelRenderer(this, 206, 317); sxankle.addBox(0F, 0F, 0F, 8, 16, ; sxankle.setRotationPoint(-6F, -6F, 9F); sxankle.setTextureSize(512, 380); sxankle.mirror = true; setRotation(sxankle, 0F, 0F, 0.0743572F); sxknee = new ModelRenderer(this, 209, 260); sxknee.addBox(0F, 0F, 0F, 9, 16, 10); sxknee.setRotationPoint(-11F, -17F, 8F); sxknee.setTextureSize(512, 380); sxknee.mirror = true; setRotation(sxknee, 0F, 0F, -0.3346075F); body = new ModelRenderer(this, 220, 0); body.addBox(0F, 0F, 0F, 35, 24, 32); body.setRotationPoint(-24F, -38F, -16F); body.setTextureSize(512, 380); body.mirror = true; setRotation(body, 0F, 0F, -0.2230717F); dxthigh = new ModelRenderer(this, 241, 288); dxthigh.addBox(0F, 0F, 0F, 14, 17, 10); dxthigh.setRotationPoint(-18F, -29F, -19F); dxthigh.setTextureSize(512, 380); dxthigh.mirror = true; setRotation(dxthigh, 0F, 0F, -0.3346075F); sxthigh = new ModelRenderer(this, 241, 319); sxthigh.addBox(0F, 0F, 0F, 14, 17, 10); sxthigh.setRotationPoint(-18F, -29F, 8F); sxthigh.setTextureSize(512, 380); sxthigh.mirror = true; setRotation(sxthigh, 0F, 0F, -0.3346075F); neck1 = new ModelRenderer(this, 116, 197); neck1.addBox(0F, 0F, 0F, 12, 21, 30); neck1.setRotationPoint(7F, -45F, -15F); neck1.setTextureSize(512, 380); neck1.mirror = true; setRotation(neck1, 0F, 0F, -0.3346075F); tail1 = new ModelRenderer(this, 355, 0); tail1.addBox(0F, 0F, 0F, 23, 20, 31); tail1.setRotationPoint(-45F, -30F, -16F); tail1.setTextureSize(512, 380); tail1.mirror = true; setRotation(tail1, 0F, 0F, -0.3346075F); tail2 = new ModelRenderer(this, 223, 57); tail2.addBox(0F, 0F, 0F, 23, 18, 29); tail2.setRotationPoint(-63F, -21F, -15F); tail2.setTextureSize(512, 380); tail2.mirror = true; setRotation(tail2, 0F, 0F, -0.4461433F); tail3 = new ModelRenderer(this, 123, 0); tail3.addBox(0F, 0F, 0F, 20, 16, 27); tail3.setRotationPoint(-79F, -11F, -14F); tail3.setTextureSize(512, 380); tail3.mirror = true; setRotation(tail3, 0F, 0F, -0.5576792F); dxshoulder = new ModelRenderer(this, 81, 0); dxshoulder.addBox(0F, 0F, 0F, 11, 15, ; dxshoulder.setRotationPoint(9F, -32F, -19F); dxshoulder.setTextureSize(512, 380); dxshoulder.mirror = true; setRotation(dxshoulder, 0F, 0F, -0.5948578F); dxarm = new ModelRenderer(this, 53, 0); dxarm.addBox(0F, 0F, 0F, 7, 16, 6); dxarm.setRotationPoint(18F, -22F, -19F); dxarm.setTextureSize(512, 380); dxarm.mirror = true; setRotation(dxarm, 0F, 0F, -0.9666439F); dxwrist = new ModelRenderer(this, 472, 0); dxwrist.addBox(0F, 0F, 0F, 4, 9, 6); dxwrist.setRotationPoint(31F, -13F, -19F); dxwrist.setTextureSize(512, 380); dxwrist.mirror = true; setRotation(dxwrist, 0F, 0F, -1.858931F); finger7 = new ModelRenderer(this, 0, 22); finger7.addBox(0F, 0F, 0F, 2, 5, 2); finger7.setRotationPoint(39F, -16F, -19F); finger7.setTextureSize(512, 380); finger7.mirror = true; setRotation(finger7, 0F, 0.2974289F, -1.858931F); finger8 = new ModelRenderer(this, 11, 22); finger8.addBox(0F, 0F, 0F, 2, 5, 2); finger8.setRotationPoint(39F, -17F, -17F); finger8.setTextureSize(512, 380); finger8.mirror = true; setRotation(finger8, 0F, 0F, -1.858931F); finger9 = new ModelRenderer(this, 60, 55); finger9.addBox(0F, 0F, 0F, 2, 5, 2); finger9.setRotationPoint(39F, -16F, -15F); finger9.setTextureSize(512, 380); finger9.mirror = true; setRotation(finger9, 0F, -0.2974216F, -1.858931F); sxshoulder = new ModelRenderer(this, 82, 25); sxshoulder.addBox(0F, 0F, 0F, 11, 15, ; sxshoulder.setRotationPoint(9F, -32F, 13F); sxshoulder.setTextureSize(512, 380); sxshoulder.mirror = true; setRotation(sxshoulder, 0F, 0F, -0.5948578F); sxarm = new ModelRenderer(this, 24, 0); sxarm.addBox(0F, 0F, 0F, 7, 16, 6); sxarm.setRotationPoint(18F, -22F, 15F); sxarm.setTextureSize(512, 380); sxarm.mirror = true; setRotation(sxarm, 0F, 0F, -0.9666439F); sxwrist = new ModelRenderer(this, 0, 0); sxwrist.addBox(0F, 0F, 0F, 4, 9, 6); sxwrist.setRotationPoint(31F, -13F, 15F); sxwrist.setTextureSize(512, 380); sxwrist.mirror = true; setRotation(sxwrist, 0F, 0F, -1.858931F); finger10 = new ModelRenderer(this, 73, 55); finger10.addBox(0F, 0F, 0F, 2, 5, 2); finger10.setRotationPoint(39F, -16F, 15F); finger10.setTextureSize(512, 380); finger10.mirror = true; setRotation(finger10, 0F, 0.2974289F, -1.858931F); finger11 = new ModelRenderer(this, 86, 55); finger11.addBox(0F, 0F, 0F, 2, 5, 2); finger11.setRotationPoint(39F, -17F, 17F); finger11.setTextureSize(512, 380); finger11.mirror = true; setRotation(finger11, 0F, 0F, -1.858931F); finger12 = new ModelRenderer(this, 100, 55); finger12.addBox(0F, 0F, 0F, 2, 5, 2); finger12.setRotationPoint(39F, -16F, 19F); finger12.setTextureSize(512, 380); finger12.mirror = true; setRotation(finger12, 0F, -0.2974216F, -1.858931F); neck2 = new ModelRenderer(this, 13, 180); neck2.addBox(0F, 0F, 0F, 21, 19, 30); neck2.setRotationPoint(16F, -48F, -15F); neck2.setTextureSize(512, 380); neck2.mirror = true; setRotation(neck2, 0F, 0F, -0.4833219F); neck3 = new ModelRenderer(this, 117, 149); neck3.addBox(0F, 0F, 0F, 21, 16, 30); neck3.setRotationPoint(29F, -52F, -15F); neck3.setTextureSize(512, 380); neck3.mirror = true; setRotation(neck3, 0F, 0F, -0.6320364F); neck4 = new ModelRenderer(this, 114, 107); neck4.addBox(0F, 0F, 0F, 18, 14, 26); neck4.setRotationPoint(44F, -62F, -13F); neck4.setTextureSize(512, 380); neck4.mirror = true; setRotation(neck4, 0F, 0F, -0.3346075F); neck5 = new ModelRenderer(this, 116, 70); neck5.addBox(0F, 0F, 0F, 18, 12, 24); neck5.setRotationPoint(55F, -66F, -12F); neck5.setTextureSize(512, 380); neck5.mirror = true; setRotation(neck5, 0F, 0F, -0.1487144F); head1 = new ModelRenderer(this, 0, 108); head1.addBox(0F, 0F, 0F, 24, 17, 24); head1.setRotationPoint(71F, -73F, -12F); head1.setTextureSize(512, 380); head1.mirror = true; setRotation(head1, 0F, 0F, 0F); mouth = new ModelRenderer(this, 0, 150); mouth.addBox(0F, 0F, 0F, 35, 6, 22); mouth.setRotationPoint(73F, -57F, -11F); mouth.setTextureSize(512, 380); mouth.mirror = true; setRotation(mouth, 0F, 0F, 0.2230717F); head2 = new ModelRenderer(this, 0, 70); head2.addBox(0F, 0F, 0F, 35, 15, 22); head2.setRotationPoint(86F, -72F, -11F); head2.setTextureSize(512, 380); head2.mirror = true; setRotation(head2, 0F, 0F, 0F); tooth1 = new ModelRenderer(this, 99, 108); tooth1.addBox(0F, 0F, 0F, 3, 9, 3); tooth1.setRotationPoint(118F, -62F, -9F); tooth1.setTextureSize(512, 380); tooth1.mirror = true; setRotation(tooth1, 0F, 0F, 0.1858931F); tooth2 = new ModelRenderer(this, 99, 120); tooth2.addBox(0F, 0F, 0F, 3, 9, 3); tooth2.setRotationPoint(118F, -62F, 6F); tooth2.setTextureSize(512, 380); tooth2.mirror = true; setRotation(tooth2, 0F, 0F, 0.1858931F); tooth3 = new ModelRenderer(this, 99, 134); tooth3.addBox(0F, 0F, 0F, 3, 9, 3); tooth3.setRotationPoint(104F, -54F, -10F); tooth3.setTextureSize(512, 380); tooth3.mirror = true; setRotation(tooth3, 0F, 0F, 0.1858931F); tooth4 = new ModelRenderer(this, 0, 180); tooth4.addBox(0F, 0F, 0F, 3, 9, 3); tooth4.setRotationPoint(104F, -54F, 7F); tooth4.setTextureSize(512, 380); tooth4.mirror = true; setRotation(tooth4, 0F, 0F, 0.1858931F); sxwing1 = new ModelRenderer(this, 292, 312); sxwing1.addBox(0F, 0F, 0F, 45, 1, 65); sxwing1.setRotationPoint(-30F, -37F, 22F); sxwing1.setTextureSize(512, 380); sxwing1.mirror = true; setRotation(sxwing1, 0F, 0.1858931F, -0.2230717F); sxwing2 = new ModelRenderer(this, 0, 323); sxwing2.addBox(0F, 0F, 0F, 45, 1, 55); sxwing2.setRotationPoint(-17F, -37F, 66F); sxwing2.setTextureSize(512, 380); sxwing2.mirror = true; setRotation(sxwing2, 0F, -0.2602503F, -0.2230717F); dxwing1 = new ModelRenderer(this, 291, 243); dxwing1.addBox(0F, 0F, 0F, 45, 1, 65); dxwing1.setRotationPoint(-20F, -37F, -86F); dxwing1.setTextureSize(512, 380); dxwing1.mirror = true; setRotation(dxwing1, 0F, -0.185895F, -0.2230717F); dxwing2 = new ModelRenderer(this, 0, 265); dxwing2.addBox(0F, 0F, 0F, 45, 1, 55); dxwing2.setRotationPoint(-34F, -37F, -119F); dxwing2.setTextureSize(512, 380); dxwing2.mirror = true; setRotation(dxwing2, 0F, 0.260246F, -0.2230717F); sxwing1board = new ModelRenderer(this, 375, 172); sxwing1board.addBox(0F, 0F, 0F, 4, 3, 65); sxwing1board.setRotationPoint(12F, -49F, 16F); sxwing1board.setTextureSize(512, 380); sxwing1board.mirror = true; setRotation(sxwing1board, 0F, 0.1858931F, -0.2230717F); sxwing2board = new ModelRenderer(this, 255, 122); sxwing2board.addBox(0F, 0F, 0F, 4, 3, 55); sxwing2board.setRotationPoint(24F, -49F, 78F); sxwing2board.setTextureSize(512, 380); sxwing2board.mirror = true; setRotation(sxwing2board, 0F, -0.2602503F, -0.2230717F); dxwing1board = new ModelRenderer(this, 375, 101); dxwing1board.addBox(0F, 0F, 0F, 4, 3, 65); dxwing1board.setRotationPoint(21F, -48F, -79F); dxwing1board.setTextureSize(512, 380); dxwing1board.mirror = true; setRotation(dxwing1board, 0F, -0.185895F, -0.2230705F); dxwing2board = new ModelRenderer(this, 255, 182); dxwing2board.addBox(0F, 0F, 0F, 4, 3, 55); dxwing2board.setRotationPoint(7F, -48F, -130F); dxwing2board.setTextureSize(512, 380); dxwing2board.mirror = true; setRotation(dxwing2board, 0F, 0.260246F, -0.2230717F); tail4 = new ModelRenderer(this, 329, 57); tail4.addBox(0F, 0F, 0F, 20, 14, 21); tail4.setRotationPoint(-94F, -4F, -11F); tail4.setTextureSize(512, 380); tail4.mirror = true; setRotation(tail4, 0F, 0F, -0.4461433F); tail5 = new ModelRenderer(this, 218, 349); tail5.addBox(0F, 0F, 0F, 20, 12, 17); tail5.setRotationPoint(-109F, 1F, -9F); tail5.setTextureSize(512, 380); tail5.mirror = true; setRotation(tail5, 0F, 0F, -0.2974289F); tail6 = new ModelRenderer(this, 0, 230); tail6.addBox(0F, 0F, 0F, 20, 8, 15); tail6.setRotationPoint(-122F, 3F, -8F); tail6.setTextureSize(512, 380); tail6.mirror = true; setRotation(tail6, 0F, 0F, -0.1115358F); tail7 = new ModelRenderer(this, 413, 53); tail7.addBox(0F, 0F, 0F, 16, 6, 9); tail7.setRotationPoint(-136F, 3F, -5F); tail7.setTextureSize(512, 380); tail7.mirror = true; setRotation(tail7, 0F, 0F, 0F); tail8 = new ModelRenderer(this, 413, 70); tail8.addBox(0F, 0F, 0F, 14, 5, 7); tail8.setRotationPoint(-149F, 1F, -4F); tail8.setTextureSize(512, 380); tail8.mirror = true; setRotation(tail8, 0F, 0F, 0.1487144F); tail9 = new ModelRenderer(this, 72, 231); tail9.addBox(0F, 0F, 0F, 11, 4, 5); tail9.setRotationPoint(-159F, 0F, -3F); tail9.setTextureSize(512, 380); tail9.mirror = true; setRotation(tail9, 0F, 0F, 0.1487144F); } public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) { setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity); dxfoot.render(par7); sxfoot.render(par7); finger1.render(par7); finger2.render(par7); finger3.render(par7); finger4.render(par7); finger5.render(par7); finger6.render(par7); dxankle.render(par7); dxknee.render(par7); sxankle.render(par7); sxknee.render(par7); body.render(par7); dxthigh.render(par7); sxthigh.render(par7); neck1.render(par7); tail1.render(par7); tail2.render(par7); tail3.render(par7); dxshoulder.render(par7); dxarm.render(par7); dxwrist.render(par7); finger7.render(par7); finger8.render(par7); finger9.render(par7); sxshoulder.render(par7); sxarm.render(par7); sxwrist.render(par7); finger10.render(par7); finger11.render(par7); finger12.render(par7); neck2.render(par7); neck3.render(par7); neck4.render(par7); neck5.render(par7); head1.render(par7); mouth.render(par7); head2.render(par7); tooth1.render(par7); tooth2.render(par7); tooth3.render(par7); tooth4.render(par7); sxwing1.render(par7); sxwing2.render(par7); dxwing1.render(par7); dxwing2.render(par7); sxwing1board.render(par7); sxwing2board.render(par7); dxwing1board.render(par7); dxwing2board.render(par7); tail4.render(par7); tail5.render(par7); tail6.render(par7); tail7.render(par7); tail8.render(par7); tail9.render(par7); } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } public void setRotationAngles(float par1, float par2, float par3, float par4, float par5, float par6, Entity par7Entity) { } }
  16. I don't know why but my mob looks like this: http://i1102.photobucket.com/albums/g454/2010simoDK/a.png here my files, I think the path is correct but I didn't find the mistake http://i1102.photobucket.com/albums/g454/2010simoDK/b.png
  17. oh ok,so what line I need to delete to fix it?
  18. then where exactly is the error that makes my mob invisible? sorry, I haven't understand how to continue anyways I saw there aren't 1.7 wuppy's tutorials for entities
  19. I tryed to delete registerEntityEgg(EntityNew.class, 0xfffffff, 0x0033FF); and if I run minecraft there isn't my mob, also can you tell me how to use now the global entity id please?
  20. I have this in my base class: package com.simon.simonsores; @Mod(modid = simonsoresMod.MODID, version = simonsoresMod.VERSION) public class simonsoresMod { public static final String MODID = "simonsoresMod"; public static final String VERSION = "1.0"; @SidedProxy(clientSide = "com.simon.simonsores.ClientProxy", serverSide = "com.simon.simonsores.CommonProxy") public static CommonProxy proxy; public simonsoresMod() { } private static int startEntityId = 300; @EventHandler public void init(FMLInitializationEvent event) { EntityRegistry.findGlobalUniqueEntityId(); EntityRegistry.registerGlobalEntityID(EntityNew.class, "new", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.addSpawn(EntityNew.class, 10, 2, 4, EnumCreatureType.creature); registerEntityEgg(EntityNew.class, 0xfffffff, 0x0033FF); } private void registerEntityEgg(Class<? extends Entity> entity, int primaryColor, int secondaryColor) { int id = getUniqueEntityId(); EntityList.IDtoClassMapping.put(id, entity); EntityList.entityEggs.put(id, new EntityEggInfo(id, primaryColor, secondaryColor)); } private int getUniqueEntityId() { do { startEntityId++; } while(EntityList.getStringFromID(startEntityId) !=null); return startEntityId++; } @EventHandler public void load(FMLInitializationEvent event) { proxy.RenderInformation(); } }
  21. maybe I mistaked in the render class, I don't know: RenderNew.java package com.simon.simonsores.mobs.render; import com.simon.simonsores.mobs.New; import com.simon.simonsores.mobs.entity.EntityNew; import net.minecraft.client.model.ModelBase; import net.minecraft.client.renderer.entity.RenderLiving; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLiving; import net.minecraft.util.ResourceLocation; public class RenderNew extends RenderLiving{ private static final ResourceLocation EntityTexture = new ResourceLocation("simonsoresmod:textures/mobs/New.png"); protected New model; public RenderNew(ModelBase par1ModelBase, float par2) { super(par1ModelBase, par2); model = ((New)mainModel); } public void renderNew(EntityNew entity, double par2, double par4, double par6, float par8, float par9) { super.doRender(entity, par2, par4, par6, par8, par9); } public void doRenderLiving(EntityLiving par1EntityLiving, double par2, double par4, double par6, float par8, float par9) { renderNew((EntityNew)par1EntityLiving, par2, par4, par6, par8, par9); } public void doRender(Entity par1Entity, double par2, double par4, double par6, float par8, float par9) { renderNew((EntityNew)par1Entity, par2, par4, par6, par8, par9); } @Override protected ResourceLocation getEntityTexture(Entity entity) { return EntityTexture; } } ClientProxy.java package com.simon.simonsores; import com.simon.simonsores.mobs.New; import com.simon.simonsores.mobs.entity.EntityNew; import com.simon.simonsores.mobs.render.RenderNew; import cpw.mods.fml.client.registry.RenderingRegistry; public class ClientProxy extends CommonProxy { public void RenderInformation() { RenderingRegistry.registerEntityRenderingHandler(EntityNew.class, new RenderNew(new New(), 0.3F)); } } CommonProxy.java package com.simon.simonsores; public class CommonProxy { public void RenderInformation() { } } if you need more information tell me and I will post them
  22. I fixed it in GameRegistry.addRecipe(new ItemStack(BoronGlass, 7), new Object[] {"XXX","SXS","XXX",'X', Block.blockRegistry.getObject("glass"), 'S', BoronIngot}); and now it works, thanks anyways
  23. I'm going to make reinforced glass but the recipe is wrong but I don't know where I mistake. maybe in the name of "glass"? GameRegistry.addRecipe(new ItemStack(BoronGlass, 7), new Object[] {"XXX","SXS","XXX",'X', Block.blockRegistry.getObject("glass"), 'S', Item.itemRegistry.getObject("BoronIngot")});
  24. ok ok I fixed it! the error was in the main.java. I had written GameRegistry.registerWorldGenerator(gen, 1); and I have changed it with GameRegistry.registerWorldGenerator(new SimonGenerator(), 1); I don't know why I did this stupid mistake but the important thing is that now it works! thank you all!

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.