Posted September 17, 20178 yr I've overridden hasComparatorInputOverride and getComparatorInputOverride, and it seems to work fine--whenever I update the comparator (such as placing a block next to it) it gives the correct signal. However, the tile entity changes its signal strength over time, and I need this to reflect on the comparator. I tried sending a block update, but it didn't do anything. My current code for triggering block updates is as follows: IBlockState blockState = world.getBlockState(pos); world.notifyBlockUpdate(pos, blockState, blockState, 7); world.notifyNeighborsOfStateChange(pos, blockType, true); I had originally thought that triggering a block update would update all adjacent tiles, but I realised that I was probably wrong, and so I tried updateObservingBlocks. That didn't work either, then I stumbled upon notifyNeighborsOfStateChange. It works for adjacent comparators, but not comparators that get the signal through a solid block. Do I have to run this notifyNeighborsOfStateChange on all adjacent blocks to get the comparator to update, or am I missing a convenience method that does all this for me? EDIT: Wow, I feel dumb. World#updateComparatorOutputLevel does exactly what I need. Maybe this thread will help someone at some point at least >.> Edited September 17, 20178 yr by Aarilight solved
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.