
MrNegaBlox
Members-
Posts
74 -
Joined
-
Last visited
Everything posted by MrNegaBlox
-
I think I might know what the problem is. I set up a base block that use a subclass of the original block. and the block where I placed the method was a subclass of that, so I don't know if that really affects anything, but it isn't working. so I don't know
-
I did those methods doing this. @SubscribeEvent public void onBlockAdded(World p_149726_1_, int p_149726_2_, int p_149726_3_, int p_149726_4_) { p_149726_1_.setBlockToAir(p_149726_2_ - 1, p_149726_3_ - 1, p_149726_4_ - 1); } But nothing happened when I placed a block.
-
How do I find all the packages holding the code for minecraft, I used to be able to read it to figure out. Thank you in advance.[sOLVED] Also, how do I get have a block do something when it is placed and/or broken? what is the method in doing so?
-
I did the last method and now it is working... THANK YOU VERY MUCH!
-
This is the stack trace I got and I was wondering how I fix this, it doesn't seem to be about my code, it says a file is missing but I don't know what it is. Is 1.7.10 unstable? [11:09:32] [main/INFO] [GradleStart]: No arguments specified, assuming client. [11:09:32] [main/INFO] [GradleStart]: Extra: [] Exception in thread "main" java.lang.RuntimeException: java.io.FileNotFoundException: C:\Users\[userName]\.gradle\caches\minecraft\assets\indexes\{ASSET_INDEX}.json (The system cannot find the file specified) at com.google.common.base.Throwables.propagate(Throwables.java:160) at GradleStart.setupAssets(GradleStart.java:260) at GradleStart.startClient(GradleStart.java:82) at GradleStart.main(GradleStart.java:56) Caused by: java.io.FileNotFoundException: C:\Users\[userName]\.gradle\caches\minecraft\assets\indexes\{ASSET_INDEX}.json (The system cannot find the file specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(Unknown Source) at java.io.FileReader.<init>(Unknown Source) at GradleStart.loadAssetsIndex(GradleStart.java:266) at GradleStart.setupAssets(GradleStart.java:204) ... 2 more Java HotSpot(TM) Client VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
-
[1.6.4]CCTV/ Track the sight of an entity
MrNegaBlox replied to MrNegaBlox's topic in Modder Support
I tried that. I am not sure If I did it correctly though. Can you check? @ForgeSubscribe public void EntityInteractEvent(Entity target){ if(Minecraft.getMinecraft().thePlayer.getItemInUse() == new ItemStack(new org.X39.mods.minecraft.tecmod.ItemPosseser(532))){ target = Minecraft.getMinecraft().renderViewEntity; } } @ForgeSubscribe public void PlayerInteractEvent(Action action, int x, int y, int z, int face, Result useBlock, Result useItem){ if(Minecraft.getMinecraft().renderViewEntity != Minecraft.getMinecraft().thePlayer){ Minecraft.getMinecraft().thePlayer = (EntityClientPlayerMP) Minecraft.getMinecraft().renderViewEntity; } I added these two methods and so far, nothing happens -
How do you use the FakePlayer Entity? does it make a clone of the player? or does it simulate a player action on something?and how do you spawn one?
-
So I want to make a sort of RC quadracopter or wireless camera. This was done in the witchery mod. I decompiled the mod but I couldn't understand the code. Could someone give me an example or direct me to a tutorial on this sort of things
-
I am making a mod, and I was wondering how you would adding in Redstone Flux compatibility to my mod. I have the Java decompiled, and I want it to work with or without the mod.
-
excuse me, and sorry, but what is this .964, is it an updated version?
-
I've been using every .bat file. When I tried decompiling it asked for but it asks that I change the source and run updatemd5, then I run updatemd5, then it says to decompile, I have the recommended build for forge src. I have been able to decompile before. I also have the most recent JDK. I don't see what I need to do!
-
How do you modify how the arm's positions are or for any part of the body for that matter. What I mean is when you hold an Item. In Galacticraft, you would crouch when you hold a rocket as well as your hand up. I want to make it so that when I hold a gun, it holds it like a bow.
-
I try my best to comprehend what I am reading and copying. So can you please tell me what packet to send?
-
How to I send a packet to the server about a mobs position?
-
Can someone tell me how to packet handle, I haven't used it and the tutorials I am using don't have anything for updating mob location
-
Umm, please specify how? I have never used packet handleing
-
I am still getting teleported, can you tell me whats wrong?
-
[1.6.2] Tile Entity Renderer not rendering
MrNegaBlox replied to MrNegaBlox's topic in Modder Support
Help -
[1.6.2] Tile Entity Renderer not rendering
MrNegaBlox replied to MrNegaBlox's topic in Modder Support
Ok all i really want is just how to texture a tile entity in 1.6.2, as all the tutorials I've seen are outdated. Can you tell me the method? because It seems the one I have been using is invalid -
[1.6.2] Tile Entity Renderer not rendering
MrNegaBlox replied to MrNegaBlox's topic in Modder Support
Please Help ME! I would like it very much -
So I made a custom tile entity renderer and I don't know what I did wrong. Can you please analyze my code and tell me what is wrong? Also, if it is not already obvious, please put the code that is correct? Main Class: package KitchenCraft.MainClass; import KitchenCraft.MainClass.CounterProperties.CounterGuiHandler; import KitchenCraft.MainClass.CounterProperties.CounterTileEnity; import net.minecraft.block.Block; import net.minecraft.block.BlockBreakable; import net.minecraft.block.BlockFurnace; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.entity.RenderSnowball; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemFood; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; import net.minecraft.src.ModLoader; import net.minecraft.world.biome.BiomeGenBase; import net.minecraftforge.common.Configuration; import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.FMLCommonHandler; 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.network.NetworkMod; import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(modid="GummyBah", name="GummyBear", version="1.0.0") @NetworkMod(clientSideRequired=true, serverSideRequired=false) public class Main { public static CreativeTabs tabBlasters = new CreativeTabs("tabBlasters") { public ItemStack getIconItemStack() { return new ItemStack(Item.diamond, 1, 0); } }; // The instance of your mod that Forge uses. @Instance("GummyBah") public static Main instance; // Says where the client and server 'proxy' code is loaded. @SidedProxy(clientSide="KitchenCraft.MainClass.client.ClientProxy", serverSide="KitchenCraft.MainClass.CommonProxy") public static CommonProxy proxy; public Block Counter = new Counter(1408, Material.wood).setUnlocalizedName("KitchenCounterCraftBlock"); @EventHandler public void preInit(FMLPreInitializationEvent event) { Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); config.save(); } @EventHandler public void Init(FMLInitializationEvent event) { proxy.registerRenderers(); NetworkRegistry.instance().registerGuiHandler(this, new CounterGuiHandler()); GameRegistry.registerBlock(Counter, "Counter"); LanguageRegistry.addName(Counter, "Counter"); GameRegistry.registerTileEntity(KitchenCraft.MainClass.CounterProperties.CounterTileEnity.class, "KitchenCounterCraft"); LanguageRegistry.instance().addStringLocalization("carmel", "en_US", "Carmalizer"); LanguageRegistry.instance().addStringLocalization("tabBlasters", "en_US", "Gummy Mod"); proxy.registerRenderers(); } @EventHandler public void postInit(FMLPostInitializationEvent event) { // Stub Method } } Block Class: package KitchenCraft.MainClass; import java.util.Random; import KitchenCraft.MainClass.CounterProperties.CounterTileEnity; import cpw.mods.fml.common.Mod.Instance; import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; public class Counter extends BlockContainer { protected Counter (int id, Material wood) { super(2048, Material.wood); setHardness(2.0F); setResistance(5.0F); setCreativeTab(CreativeTabs.tabDecorations); } @Override public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int metadata, float what, float these, float are) { TileEntity tileEntity = world.getBlockTileEntity(x, y, z); if (tileEntity == null || player.isSneaking()) { return false; } //code to open gui explained later player.openGui(Main.instance, 0, world, x, y, z); return true; } @Override public void breakBlock(World world, int x, int y, int z, int par5, int par6) { dropItems(world, x, y, z); super.breakBlock(world, x, y, z, par5, par6); } private void dropItems(World world, int x, int y, int z){ Random rand = new Random(); TileEntity tileEntity = world.getBlockTileEntity(x, y, z); if (!(tileEntity instanceof IInventory)) { return; } IInventory inventory = (IInventory) tileEntity; for (int i = 0; i < inventory.getSizeInventory(); i++) { ItemStack item = inventory.getStackInSlot(i); if (item != null && item.stackSize > 0) { float rx = rand.nextFloat() * 0.8F + 0.1F; float ry = rand.nextFloat() * 0.8F + 0.1F; float rz = rand.nextFloat() * 0.8F + 0.1F; EntityItem entityItem = new EntityItem(world, x + rx, y + ry, z + rz, new ItemStack(item.itemID, item.stackSize, item.getItemDamage())); if (item.hasTagCompound()) { entityItem.getEntityItem().setTagCompound((NBTTagCompound) item.getTagCompound().copy()); } float factor = 0.05F; entityItem.motionX = rand.nextGaussian() * factor; entityItem.motionY = rand.nextGaussian() * factor + 0.2F; entityItem.motionZ = rand.nextGaussian() * factor; world.spawnEntityInWorld(entityItem); item.stackSize = 0; } } } @Override public TileEntity createNewTileEntity(World world) { return new CounterTileEnity(); } @Override public int getRenderType() { return -1; } //It's not an opaque cube, so you need this. @Override public boolean isOpaqueCube() { return false; } //It's not a normal block, so you need this too. public boolean renderAsNormalBlock() { return false; } } Tile Entity Class: package KitchenCraft.MainClass.CounterProperties; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; public class CounterTileEnity extends TileEntity implements IInventory { private ItemStack[] inv; public CounterTileEnity(){ inv = new ItemStack[9]; } @Override public int getSizeInventory() { return inv.length; } @Override public ItemStack getStackInSlot(int slot) { return inv[slot]; } @Override public void setInventorySlotContents(int slot, ItemStack stack) { inv[slot] = stack; if (stack != null && stack.stackSize > getInventoryStackLimit()) { stack.stackSize = getInventoryStackLimit(); } } @Override public ItemStack decrStackSize(int slot, int amt) { ItemStack stack = getStackInSlot(slot); if (stack != null) { if (stack.stackSize <= amt) { setInventorySlotContents(slot, null); } else { stack = stack.splitStack(amt); if (stack.stackSize == 0) { setInventorySlotContents(slot, null); } } } return stack; } @Override public ItemStack getStackInSlotOnClosing(int slot) { ItemStack stack = getStackInSlot(slot); if (stack != null) { setInventorySlotContents(slot, null); } return stack; } @Override public int getInventoryStackLimit() { return 64; } @Override public boolean isUseableByPlayer(EntityPlayer player) { return worldObj.getBlockTileEntity(xCoord, yCoord, zCoord) == this && player.getDistanceSq(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5) < 64; } @Override public void openChest() {} @Override public void closeChest() {} @Override public void readFromNBT(NBTTagCompound tagCompound) { super.readFromNBT(tagCompound); NBTTagList tagList = tagCompound.getTagList("Inventory"); for (int i = 0; i < tagList.tagCount(); i++) { NBTTagCompound tag = (NBTTagCompound) tagList.tagAt(i); byte slot = tag.getByte("Slot"); if (slot >= 0 && slot < inv.length) { inv[slot] = ItemStack.loadItemStackFromNBT(tag); } } } @Override public void writeToNBT(NBTTagCompound tagCompound) { super.writeToNBT(tagCompound); NBTTagList itemList = new NBTTagList(); for (int i = 0; i < inv.length; i++) { ItemStack stack = inv[i]; if (stack != null) { NBTTagCompound tag = new NBTTagCompound(); tag.setByte("Slot", (byte) i); stack.writeToNBT(tag); itemList.appendTag(tag); } } tagCompound.setTag("Inventory", itemList); } @Override public String getInvName() { return "tco.tileentitytiny"; } @Override public boolean isInvNameLocalized() { // TODO Auto-generated method stub return false; } @Override public boolean isItemValidForSlot(int i, ItemStack itemstack) { // TODO Auto-generated method stub return false; } } Tile Entity Renderer: package KitchenCraft.MainClass.CounterProperties; import org.lwjgl.opengl.GL11; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.entity.Entity; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.ResourceLocation; import net.minecraft.world.World; public class CounterRenderer extends TileEntitySpecialRenderer { //The model of your block private final CounterRender model; public CounterRenderer() { this.model = new CounterRender(); } private void adjustRotatePivotViaMeta(World world, int x, int y, int z) { int meta = world.getBlockMetadata(x, y, z); GL11.glPushMatrix(); GL11.glRotatef(meta * (-90), 0.0F, 0.0F, 1.0F); GL11.glPopMatrix(); } @Override public void renderTileEntityAt(TileEntity te, double x, double y, double z, float scale) { //The PushMatrix tells the renderer to "start" doing something. GL11.glPushMatrix(); //This is setting the initial location. GL11.glTranslatef((float) x + 0.5F, (float) y + 1.5F, (float) z + 0.5F); //This is the texture of your block. It's pathed to be the same place as your other blocks here. //Outdated bindTextureByName("/mods/roads/textures/blocks/TrafficLightPoleRed.png"); //Use in 1.6.2 this ResourceLocation textures = (new ResourceLocation("bettermc:textures/blocks/Counter.png")); //the ':' is very important //binding the textures Minecraft.getMinecraft().renderEngine.func_110577_a(textures);;; //This rotation part is very important! Without it, your model will render upside-down! And for some reason you DO need PushMatrix again! GL11.glPushMatrix(); GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); //A reference to your Model file. Again, very important. //Tell it to stop rendering for both the PushMatrix's GL11.glPopMatrix(); GL11.glPopMatrix(); } //Set the lighting stuff, so it changes it's brightness properly. private void adjustLightFixture(World world, int i, int j, int k, Block block) { Tessellator tess = Tessellator.instance; float brightness = block.getBlockBrightness(world, i, j, k); int skyLight = world.getLightBrightnessForSkyBlocks(i, j, k, 0); int modulousModifier = skyLight % 65536; int divModifier = skyLight / 65536; tess.setColorOpaque_F(brightness, brightness, brightness); OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float) modulousModifier, divModifier); } } Model: // Date: 2/15/2014 11:17:48 AM // Template version 1.1 // Java generated by Techne // Keep in mind that you still need to fill in some blanks // - ZeuX package KitchenCraft.MainClass.CounterProperties; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class CounterRender extends ModelBase { //fields public ModelRenderer Leg1; public ModelRenderer Leg2; public ModelRenderer Leg4; public ModelRenderer Leg3; public ModelRenderer Top; public CounterRender() { textureWidth = 128; textureHeight = 64; Leg1 = new ModelRenderer(this, 0, 0); Leg1.addBox(0F, 0F, 0F, 2, 15, 2); Leg1.setRotationPoint(6F, 9F, 6F); Leg1.setTextureSize(128, 64); Leg1.mirror = true; setRotation(Leg1, 0F, 0F, 0F); Leg2 = new ModelRenderer(this, 0, 0); Leg2.addBox(0F, 0F, 0F, 2, 15, 2); Leg2.setRotationPoint(-8F, 9F, 6F); Leg2.setTextureSize(128, 64); Leg2.mirror = true; setRotation(Leg2, 0F, 0F, 0F); Leg4 = new ModelRenderer(this, 0, 0); Leg4.addBox(0F, 0F, 0F, 2, 15, 2); Leg4.setRotationPoint(-8F, 9F, -8F); Leg4.setTextureSize(128, 64); Leg4.mirror = true; setRotation(Leg4, 0F, 0F, 0F); Leg3 = new ModelRenderer(this, 0, 0); Leg3.addBox(0F, 0F, 0F, 2, 15, 2); Leg3.setRotationPoint(6F, 9F, -8F); Leg3.setTextureSize(128, 64); Leg3.mirror = true; setRotation(Leg3, 0F, 0F, 0F); Top = new ModelRenderer(this, 0, 17); Top.addBox(0F, 0F, 0F, 16, 2, 16); Top.setRotationPoint(-8F, 7F, -8F); Top.setTextureSize(128, 64); Top.mirror = true; setRotation(Top, 0F, 0F, 0F); } public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { super.render(entity, f, f1, f2, f3, f4, f5); setRotationAngles(f, f1, f2, f3, f4, f5, entity); Leg1.render(f5); Leg2.render(f5); Leg4.render(f5); Leg3.render(f5); Top.render(f5); } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity ent) { super.setRotationAngles(f, f1, f2, f3, f4, f5, ent); } } Client Proxy: package KitchenCraft.MainClass.client; import cpw.mods.fml.client.registry.ClientRegistry; import cpw.mods.fml.common.registry.GameRegistry; import KitchenCraft.MainClass.CommonProxy; import KitchenCraft.MainClass.CounterProperties.CounterRenderer; import KitchenCraft.MainClass.CounterProperties.CounterTileEnity; import net.minecraftforge.client.MinecraftForgeClient; public class ClientProxy extends CommonProxy { @Override public void registerRenderers() { ClientRegistry.bindTileEntitySpecialRenderer(CounterTileEnity.class, new CounterRenderer()); } public static void registerTileEntities() { GameRegistry.registerTileEntity(CounterTileEnity.class, "TutorialDeployerAMCFMT"); } } Thank you in advance!
-
Thank you, I don't know much about programming, I learn from tutorials. I was able to learn a bit but. Theres a ton I need to learn
-
PLEASE SPECIFY WHAT TO DO! I WANT TO FINISH MY MOD!
-
Can you please specify what to do to fix it?