Jump to content

SimonSlime

Members
  • Posts

    31
  • 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!
×
×
  • Create New...

Important Information

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