Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Kikoz

Members
  • Joined

  • Last visited

Everything posted by Kikoz

  1. For example the previous states were four booleans (North,East...) and now I removed those and made a part enum which has 3 parts ( single, left, right ). And now as that changed I would like the already placed blocks in older versions to update in the newer version, Thanks!
  2. Hello, I'm trying to make all of the modded blocks to update their states once, or have a conversion for the blockstates. Meaning I have a saved world with the old blockstates, and now in the newer update on which I'm working the states have been changed to work the same but more effective (lower state count). Basically so players could just update to the newer version and their stuff would not break just update/convert... What would be the best approach for this?
  3. Hi there! I've recently found out that when you have a very thin voxelshape like Block.box(0, 0, 0, 16, 2, 16) The step sound is going to be the block underneath it. Even blocks like carpet, trapdoors, rails have this issue. Is there any workaround for this, so I can have the material sound I need?
  4. Allright managed to get it work by using .setLightLevel((lightLevel) -> 15)
  5. Hi! I created a light emitting block which works when I'm not using optifine. After I run it with optifine the block is not emitting any light. Could someone help me how to solve it? Thanks! public LightModel(Properties properties) { super(Properties.create(Material.WOOD) .sound(SoundType.WOOD) .hardnessAndResistance(3.0f,3.0f) .notSolid() ); this.setDefaultState(this.stateContainer.getBaseState().with(LIT, Boolean.valueOf(true)).with(WATERLOGGED, Boolean.valueOf(false))); } public int getLightValue(BlockState state, IBlockReader world, BlockPos pos) { Boolean i = state.get(LIT); if (i == true) { return 15; } else { return 0; } } public ActionResultType onBlockActivated(BlockState state, World worldIn, BlockPos pos, PlayerEntity player, Hand handIn, BlockRayTraceResult hit) { { if (Screen.hasShiftDown() == true) { state = state.func_235896_a_(LIT); worldIn.setBlockState(pos, state, 10); } else { return ActionResultType.PASS; } } return ActionResultType.func_233537_a_(worldIn.isRemote); }
  6. I'm so sorry, I've figured it out.
  7. Is it possible to allow a custom door to attach to glass panes/ iron bars? If yes, how exactly?
  8. Basically all I want to do is, you have 2 blocks placed next to each other. A Chest and a special block, if you right click on the chest it opens it and if you click on the special block it opens the chest next to it. Is there any way of doing that feature for the special block?
  9. Hello, is there a bookshelf method which makes it work with the Enchantment Table? Thanks!
  10. I just don't get it why it works in 1.16.2 but not in the newest. Thanks for your reply.
  11. Hello! I updated my mappings from 1.16.2 to 1.16.4 and I'm not able to run the client. Any help is welcome, thanks! error: DoubleBlockTypes is not abstract and does not override abstract method getString() in IStringSerializable public enum DoubleBlockTypes implements IStringSerializable ^ Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. 1 error > Task :compileJava FAILED FAILURE: Build failed with an exception. import net.minecraft.util.IStringSerializable; public enum DoubleBlockTypes implements IStringSerializable { TOP("top"), BOTTOM("bottom"); private final String name; DoubleBlockTypes(String name) { this.name = name; } public String func_176610_l() { return this.name; } }
  12. For some reason when I made custom doors by extending DoorBlock villagers are unable to open them.
  13. Hello! I'm trying to make a custom model with glass. The issue is that when I place it next to a wall, then I can see through the wall just like an x-ray. Can someone help me please?
  14. Very much appreciated thanks! Have a great day.
  15. Is there a way to make a door, which can be placed on it self? With the vanila doors it is not possible to do this. Thanks!
  16. As the title says, nothing more to it..
  17. Well I tried, but it still didn't work public static void main(BlockState state, World worldIn, BlockPos pos, Random random) { NonRain(state, worldIn, pos, random); }
  18. I thought .tickrandomly() is calling it
  19. How do I call it then in this class?
  20. I'm just calling it in this class by .tickrandomly() , the Raining method works, the NonRain doesn't.
  21. Hello! I've had this figured out in the 1.14 versions but I can't manage to get it work on 1.15 + I want a block that gets LIT - on when it stops raining and LIT - off when it starts raining. The only part that works is when it starts raining it gets LIT - off, I can't get the part working when it stops raining to change the blockstate. public SpecialFire() { super(Properties.create(Material.IRON) .sound(SoundType.METAL) .hardnessAndResistance(1.25f, 3.5f) .harvestTool(ToolType.PICKAXE) .harvestLevel(1) .tickRandomly() ); } @Override public VoxelShape getShape(BlockState state, IBlockReader blockReader, BlockPos pos, ISelectionContext selectionContext) { switch (state.get(FACING)) { case WEST: return WEST; case EAST: return EAST; case SOUTH: return SOUTH; default: case NORTH: return NORTH; } } public VoxelShape getBoundingBox(BlockState state, BlockPos pos) { switch((state.get(FACING))) { default: case SOUTH: return SOUTH; case NORTH: return NORTH; case EAST: return EAST; case WEST: return WEST; } } public SpecialFire(Block.Properties properties) { super(properties); this.setDefaultState(this.stateContainer.getBaseState().with(LIT, Boolean.valueOf(false)).with(WATERLOGGED, Boolean.valueOf(false)).with(FACING, Direction.NORTH)); } public BlockState getStateForPlacement(BlockItemUseContext context) { return this.getDefaultState().with(LIT, Boolean.valueOf(false)).with(WATERLOGGED, Boolean.valueOf(false)).with(FACING, context.getPlacementHorizontalFacing().rotateY()); } protected void fillStateContainer(StateContainer.Builder<Block, BlockState> builder) { builder.add(LIT, FACING, WATERLOGGED); } public boolean ticksRandomly(BlockState state) { return true; } // this is the part that is not working, but it works in 1.14 public void NonRain(BlockState state, World worldIn, BlockPos pos, Random random) { if (state.get(LIT) == false && (worldIn.rand.nextInt(2) == 1) && (!worldIn.isRainingAt(pos.up()))) { worldIn.setBlockState(pos, state.with(LIT, Boolean.valueOf(true))); } } //this part works fine public void Raining(World worldIn, BlockPos pos) { float f = worldIn.func_226691_t_(pos).func_225486_c(pos); if (!(f < 0.15F)) { BlockState blockstate = worldIn.getBlockState(pos); if (blockstate.get(LIT) == true) { worldIn.setBlockState(pos, blockstate.with(LIT, Boolean.valueOf(false))); } } }

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.