Everything posted by Animefan8888
-
What was isUsableByPlayer changed too 1.10.2
He passed a TileEntity into his constructor didnt he.
-
What was isUsableByPlayer changed too 1.10.2
Your using your container as a variable instead of a TE.
-
[1.10.2] SOLVED Access to MinecraftServer
I think it was moved to FMLCommonHandler...
-
[1.10.2]Animating blocks
Inhave not used them, but tgat does sound about right.
-
[1.10.2]Animating blocks
You need to use an IBakedModel.
-
[1.10.2][CLOSED]Creating Non Existing Blocks
- [1.10.2][CLOSED]Creating Non Existing Blocks
Try DefaultVertexFormat...- How do I begin creating addons for existing mods?
Well i would start off by getting the source code for the mod by decompiling it with mcp if it is not provided already. I would then add the mod as a library in eclipse/your IDE and appling the source code. After doing that you will be able to code using whatever mod you choose. But you will not be able to compile it, you should add it as a dependancy in your @Mod in your main mod file, ad also in your build.gradle.- Bugs with drag and drop and containers
Override removeStackFromSlot(int) in InventoryField also decrItemStack(int, int) and overall anything that doesn't use your ItemStack[] in InventoryField as that is your problem.- 1.10.2 Working With A friend
There is not anything like that to my knowledge the best you could do is link it to something like github and use that to share code.- Bugs with drag and drop and containers
Post your TileEntity and InventoryField- [1.10.2]Generation
Use world.getSeaLevel() if it is supposed to spawn on water.- Bugs with drag and drop and containers
I can't find anything wrong with the code try creating a new Container and just add the players inventory and see if you can drag it around or not.- [1.10.2] Keybind Change Event
I was just saying that he should save it client side if anything. Sadly to accomplish this you would need access to what keybind they are changing , which I can not think of a way to do this without a specific event. You would need to submit a pull request for it.- [1.10.2] Keybind Change Event
Its there for the user of the API to check against, and nothing more. Save it client side and not server side.- [1.10.2]Generation
That might have something to do with this line. int posY = (world.getActualHeight());- [1.10.2] Keybind Change Event
If the KeyEvent gets called when the player is in the Gui you could just check if the current gui is an instance of the KeyBind Changing gui. The problem with that is GuiKeyBindingList doesnt inherit from GuiScreen, so both checking Minecraft#currentScreen and using the KeyboardInputEvent and checking GuiScreenEvent#getGui() don't work. I believe it is actually GuiControls.- [1.10.2] Keybind Change Event
If the KeyEvent gets called when the player is in the Gui you could just check if the current gui is an instance of the KeyBind Changing gui.- [1.8] ice spikes not generating
Not using anything yet. In 1.7.10 that's all I needed to add icespikes to my biome. I did try extending WorldGenerator , basically duplicating the WorldGenIceSpike class so that I could then change the ice spikes but that did not work. Should I implement IWorldGenerator instead for 1.8? package com.glistre.glistremod.worldgen; import java.util.Random; import com.glistre.glistremod.init.BiomeRegistry; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.init.Blocks; import net.minecraft.util.BlockPos; import net.minecraft.util.MathHelper; import net.minecraft.world.World; import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.gen.feature.WorldGenerator; public class WorldGenFreonSpikes extends WorldGenerator { public boolean generate(World worldIn, Random random, BlockPos blockPos) { blockPos = new BlockPos(blockPos.getX(), blockPos.getY(), blockPos.getZ()); while (worldIn.isAirBlock(blockPos) && blockPos.getY() > 2) { blockPos = blockPos.down(); } if (worldIn.getBlockState(blockPos).getBlock() != Blocks.snow) { return false; } else { blockPos = blockPos.up(random.nextInt(4)); int l = random.nextInt(4) + 70; int i1 = l / 4 + random.nextInt(2); if (i1 > 1 && random.nextInt(60) == 0) { blockPos = blockPos.up(random.nextInt(70)); } int j1; int k1; int l1; for (j1 = 0; j1 < l; ++j1) { float f = (1.0F - (float)j1 / (float)l) * (float)i1; k1 = MathHelper.ceiling_float_int(f); for (l1 = -k1; l1 <= k1; ++l1) { float f1 = (float)MathHelper.abs_int(l1) - 0.25F; for (int i2 = -k1; i2 <= k1; ++i2) { float f2 = (float)MathHelper.abs_int(i2) - 0.25F; if ((l1 == 0 && i2 == 0 || f1 * f1 + f2 * f2 <= f * f) && (l1 != -k1 && l1 != k1 && i2 != -k1 && i2 != k1 || random.nextFloat() <= 0.75F)) { Block block1 = worldIn.getBlockState(blockPos.add(l1, j1, i2)).getBlock(); if (block1.getMaterial() == Material.air || block1 == Blocks.dirt || block1 == Blocks.snow || block1 == Blocks.ice) { this.func_175906_a(worldIn, blockPos.add(l1, j1, i2), Blocks.packed_ice); // worldIn.setBlockState(blockPos.add(l1, j1, i2), (IBlockState) Blocks.packed_ice); } if (j1 != 0 && k1 > 1) { block1 = worldIn.getBlockState(blockPos.add(l1, j1, i2)).getBlock(); if (block1.getMaterial() == Material.air || block1 == Blocks.dirt || block1 == Blocks.snow || block1 == Blocks.ice) { this.func_175906_a(worldIn, blockPos.add(l1, -j1, i2), Blocks.packed_ice); // worldIn.setBlock(xcoord + l1, ycoord - j1, zcoord + i2, Blocks.packed_ice); } } } } } } j1 = i1 - 1; if (j1 < 0) { j1 = 0; } else if (j1 > 1) { j1 = 1; } for (int j2 = -j1; j2 <= j1; ++j2) { k1 = -j1; while (k1 <= j1) { BlockPos blockPos1 = blockPos.add(k1, -1, l); // l1 = ycoord - 1; int k2 = 50; if (Math.abs(j2) == 1 && Math.abs(k1) == 1) { k2 = random.nextInt(5); } while (true) { if (blockPos1.getY() > 50) { Block block1 = worldIn.getBlockState(blockPos1).getBlock(); if (block1.getMaterial() == Material.air || block1 == Blocks.dirt || block1 == Blocks.snow || block1 == Blocks.ice || block1 == Blocks.packed_ice) { this.func_175906_a(worldIn, blockPos1, Blocks.packed_ice); // worldIn.setBlockState(pos0, (IBlockState)Blocks.packed_ice); // worldIn.setBlockState(xcoord + j2, l1, zcoord + k1, (IBlockState)Blocks.packed_ice); blockPos1 = blockPos1.down(); --k2; if (k2 <= 0) { blockPos1 = blockPos1.down(random.nextInt(5) + 1); // l1 -= random.nextInt(5) + 1; k2 = random.nextInt(5); } continue; } } ++k1; break; } } } return true; } } } Yes you should have always been implementing IWorldGenerator instead of extending WorldGenerator.- Bugs with drag and drop and containers
Ok just a couple things you do not need to load the Colony from NBT if you already to in the TileEntity, you can just pass along the data by using the syncing strategy from ContainerFurnace. Do you really need all of those getters and setters in the container class? And third if the problem is in the Your Container class then it is probably the way you override transferStackInSlot(), but I do not see a way that would cause a problem.- [1.10.2] Only render block if player holds a specified item
You could override getActualState(...) then return the state that is not visible on the server, and if it is client side use Minecratf.getMinecraft().thePlayer to check if the client side player is holding the item and if so switch the blockstate to the visible one only client side. This will work I assume unless you plan on changing something other than the rending of the block, if you need some psuedocode ask.- Render Item onto Block Model
Is there any documentation on IBakedModels or should I go mess around with them to figure out what they can do?- TileEntitySpecialRenderer does not face the correct direction.
EnumFacing says which way it is facing so after rotating it to face north, check if it is facing a direction lets say south, if it is rotate it again to the correct position.- Bugs with drag and drop and containers
Where do you open the gui?- Render Item onto Block Model
Then from my understanding you will most likely have to use a TESR. Though I myself have not done anything like this. I know that Block JSON's do not take any input so you can not use that. - [1.10.2][CLOSED]Creating Non Existing Blocks
IPS spam blocked by CleanTalk.
Important Information
By using this site, you agree to our Terms of Use.