e
This commit is contained in:
parent
35e0bc65da
commit
d5f1d3cde0
@ -1,6 +1,7 @@
|
||||
package ru.dbotthepony.mc.otm.block.entity.cable
|
||||
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.core.Direction
|
||||
import net.minecraft.world.level.Level
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.state.BlockState
|
||||
@ -53,17 +54,11 @@ class EnergyCableBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matte
|
||||
}
|
||||
|
||||
ru.dbotthepony.mc.otm.onceServer {
|
||||
val newState = blockState.setValue(CableBlock.MAPPING_CONNECTION_PROP[blockRotation.side2Dir(side)]!!, true)
|
||||
|
||||
if (newState !== blockState)
|
||||
level?.setBlock(blockPos, newState, Block.UPDATE_CLIENTS)
|
||||
updateBlockState(blockRotation.side2Dir(side), true)
|
||||
}
|
||||
} else {
|
||||
ru.dbotthepony.mc.otm.onceServer {
|
||||
val newState = blockState.setValue(CableBlock.MAPPING_CONNECTION_PROP[blockRotation.side2Dir(side)]!!, false)
|
||||
|
||||
if (newState !== blockState)
|
||||
level?.setBlock(blockPos, newState, Block.UPDATE_CLIENTS)
|
||||
updateBlockState(blockRotation.side2Dir(side), false)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -98,23 +93,24 @@ class EnergyCableBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matte
|
||||
|
||||
override fun onNeighbour(link: Link) {
|
||||
if (link is DirectionLink) {
|
||||
val newState = blockState.setValue(CableBlock.MAPPING_CONNECTION_PROP[link.direction]!!, true)
|
||||
|
||||
if (newState !== blockState && SERVER_IS_LIVE)
|
||||
level?.setBlock(blockPos, newState, Block.UPDATE_CLIENTS)
|
||||
updateBlockState(link.direction, true)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onUnNeighbour(link: Link) {
|
||||
if (link is DirectionLink) {
|
||||
val newState = blockState.setValue(CableBlock.MAPPING_CONNECTION_PROP[link.direction]!!, false)
|
||||
|
||||
if (newState !== blockState && SERVER_IS_LIVE)
|
||||
level?.setBlock(blockPos, newState, Block.UPDATE_CLIENTS)
|
||||
updateBlockState(link.direction, false)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun updateBlockState(side: Direction, status: Boolean) {
|
||||
val newState = blockState.setValue(CableBlock.MAPPING_CONNECTION_PROP[side]!!, status)
|
||||
|
||||
if (newState !== blockState && SERVER_IS_LIVE)
|
||||
level?.setBlock(blockPos, newState, Block.UPDATE_CLIENTS)
|
||||
}
|
||||
|
||||
override val blockRotation: BlockRotation
|
||||
get() = BlockRotation.NORTH
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user