Je suis entrain de développé une dynamite (comme une tnt mais c'est une entité)
ça marche très bien mais le rendue de l'entité ne ce fait pas (je lance la dynamite, elle explose la ou j'ai visé, mais on ne la vois pas)
(Il n'y a aucune erreu dans eclipse et le jeux ne crash pas)
Ce serait Sympa de m'aider.
Ma classe principale :
Code : Tout sélectionner
package fr.StrangerCube.mod;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import fr.StrangerCube.mod.init.BlockMod;
import fr.StrangerCube.mod.init.EventMod;
import fr.StrangerCube.mod.init.ItemMod;
import fr.StrangerCube.mod.items.starDinamyte.StarEntityDynamite;
import fr.StrangerCube.mod.proxy.CommonProxy;
import fr.StrangerCube.mod.world.WorldRegister;
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@Mod(modid = referance.MOD_ID, name = referance.MOD_NAME)
public class ModServ
{
@Instance(referance.MOD_NAME)
public static ModServ instance;
public static Block blackMachine;
@SidedProxy(clientSide = referance.CLIENT_PROXY, serverSide = referance.SERVER_PROXY)
public static CommonProxy Proxy;
@EventHandler
public void preInit(FMLPreInitializationEvent event)
{
BlockMod.init();
BlockMod.register();
ItemMod.init();
ItemMod.register();
EventMod.init();
WorldRegister.MainRegistry();
}
@EventHandler
public void init(FMLInitializationEvent event)
{
Proxy.registerRenders();
//EntityRegistry.registerModEntity(StarEntityDynamite.class, "StarEntityDynamite", 420, ModServ.instance, 32, 20, false);
}
@EventHandler
public void postInit(FMLPostInitializationEvent event)
{
}
public static final NewCreativeTab ServTab = new NewCreativeTab("ServTab") {
@Override
public Item getTabIconItem()
{
return Item.getItemFromBlock(BlockMod.Star_ore);
}
};
}
Code : Tout sélectionner
package fr.StrangerCube.mod.items.starDinamyte;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.projectile.EntitySnowball;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class StarDynamite extends Item
{
public StarDynamite()
{
this.maxStackSize = 16;
}
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player)
{
if (!player.capabilities.isCreativeMode)
{
}
world.playSoundAtEntity(player, "random.bow", 0.5F, 0.8F / (itemRand.nextFloat() * 0.4F + 0.8F));
if (!world.isRemote)
{
world.spawnEntityInWorld(new StarEntityDynamite(world, player));
}
return stack;
}
}
Code : Tout sélectionner
package fr.StrangerCube.mod.items.starDinamyte;
import cpw.mods.fml.common.registry.IEntityAdditionalSpawnData;
import io.netty.buffer.ByteBuf;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.monster.EntityBlaze;
import net.minecraft.entity.projectile.EntityThrowable;
import net.minecraft.util.DamageSource;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
public class StarEntityDynamite extends EntityThrowable implements IEntityAdditionalSpawnData
{
private int fuseTime = 40;
public StarEntityDynamite(World world)
{
super(world);
}
public StarEntityDynamite(World world, EntityLivingBase thrower)
{
super(world, thrower);
}
public StarEntityDynamite(World world, double x, double y, double z)
{
super(world, x, y, z);
}
protected void onImpact(MovingObjectPosition mop)
{
this.motionX = 0;
this.motionY = 0;
this.motionZ = 0;
if (!this.worldObj.isRemote)
{
}
}
@Override
public void onUpdate()
{
super.onUpdate();
if(this.fuseTime > 0)
{
this.fuseTime --;
}
else if(!this.worldObj.isRemote)
{
this.worldObj.newExplosion(this, this.posX, this.posY, this.posZ, 25.0F, false, true);
this.setDead();
}
}
@Override
public void writeSpawnData(ByteBuf buffer)
{
buffer.writeInt(this.fuseTime);
}
@Override
public void readSpawnData(ByteBuf additionalData)
{
this.fuseTime = additionalData.readInt();
}
}
Code : Tout sélectionner
package fr.StrangerCube.mod.items.starDinamyte;
import net.minecraft.client.renderer.entity.Render;
import net.minecraft.entity.Entity;
import net.minecraft.item.Item;
import net.minecraft.util.ResourceLocation;
public class RenderStarDynamite extends Render
{
private Item Stardynamite;
private int RenderStarDynamite;
private static final String __OBFID = "CL_00001008";
public RenderStarDynamite(Item starDynamite, int RenderStarDynamite)
{
this.Stardynamite = starDynamite;
this.RenderStarDynamite = RenderStarDynamite;
}
public RenderStarDynamite(Item dynamite)
{
this(dynamite, 0);
}
@Override
public void doRender(Entity starDynamite, double x, double y, double z, float dynamite1, float RenderStarDynamite)
{
}
@Override
protected ResourceLocation getEntityTexture(Entity starDynamite)
{
return null;
}
}
