mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-11 16:36:58 -04:00
fix leaves light properties
This commit is contained in:
parent
726493e9ea
commit
16a8941f55
@ -14,6 +14,8 @@
|
|||||||
package de.bixilon.minosoft.data.registries.blocks.types.wood
|
package de.bixilon.minosoft.data.registries.blocks.types.wood
|
||||||
|
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
|
import de.bixilon.minosoft.data.registries.blocks.light.CustomLightProperties
|
||||||
|
import de.bixilon.minosoft.data.registries.blocks.light.LightProperties
|
||||||
import de.bixilon.minosoft.data.registries.blocks.settings.BlockSettings
|
import de.bixilon.minosoft.data.registries.blocks.settings.BlockSettings
|
||||||
import de.bixilon.minosoft.data.registries.blocks.state.BlockState
|
import de.bixilon.minosoft.data.registries.blocks.state.BlockState
|
||||||
import de.bixilon.minosoft.data.registries.blocks.state.PropertyBlockState
|
import de.bixilon.minosoft.data.registries.blocks.state.PropertyBlockState
|
||||||
@ -21,16 +23,21 @@ import de.bixilon.minosoft.data.registries.blocks.state.builder.BlockStateBuilde
|
|||||||
import de.bixilon.minosoft.data.registries.blocks.state.builder.BlockStateSettings
|
import de.bixilon.minosoft.data.registries.blocks.state.builder.BlockStateSettings
|
||||||
import de.bixilon.minosoft.data.registries.blocks.types.Block
|
import de.bixilon.minosoft.data.registries.blocks.types.Block
|
||||||
import de.bixilon.minosoft.data.registries.blocks.types.fluid.water.WaterloggableBlock
|
import de.bixilon.minosoft.data.registries.blocks.types.fluid.water.WaterloggableBlock
|
||||||
|
import de.bixilon.minosoft.data.registries.blocks.types.properties.LightedBlock
|
||||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.item.BlockWithItem
|
import de.bixilon.minosoft.data.registries.blocks.types.properties.item.BlockWithItem
|
||||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.shape.special.FullBlock
|
import de.bixilon.minosoft.data.registries.blocks.types.properties.shape.special.FullBlock
|
||||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.transparency.TransparentBlock
|
import de.bixilon.minosoft.data.registries.blocks.types.properties.transparency.TransparentBlock
|
||||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.item.items.Item
|
import de.bixilon.minosoft.data.registries.item.items.Item
|
||||||
|
import de.bixilon.minosoft.data.registries.item.items.tool.properties.requirement.ToolRequirement
|
||||||
|
import de.bixilon.minosoft.data.registries.item.items.tool.shears.ShearsItem
|
||||||
import de.bixilon.minosoft.data.registries.item.items.tool.shears.ShearsRequirement
|
import de.bixilon.minosoft.data.registries.item.items.tool.shears.ShearsRequirement
|
||||||
|
import de.bixilon.minosoft.data.registries.item.items.tool.sword.SwordItem
|
||||||
|
import de.bixilon.minosoft.data.registries.item.items.tool.sword.SwordRequirement
|
||||||
import de.bixilon.minosoft.gui.rendering.models.block.state.baked.BakedFace
|
import de.bixilon.minosoft.gui.rendering.models.block.state.baked.BakedFace
|
||||||
import de.bixilon.minosoft.gui.rendering.models.block.state.baked.cull.CustomBlockCulling
|
import de.bixilon.minosoft.gui.rendering.models.block.state.baked.cull.CustomBlockCulling
|
||||||
|
|
||||||
abstract class LeavesBlock(identifier: ResourceLocation, settings: BlockSettings) : Block(identifier, settings), CustomBlockCulling, FullBlock, TransparentBlock, BlockStateBuilder, ShearsRequirement, WaterloggableBlock, BlockWithItem<Item> {
|
abstract class LeavesBlock(identifier: ResourceLocation, settings: BlockSettings) : Block(identifier, settings), CustomBlockCulling, FullBlock, BlockStateBuilder, ToolRequirement, WaterloggableBlock, BlockWithItem<Item>, LightedBlock {
|
||||||
override val hardness get() = 0.2f
|
override val hardness get() = 0.2f
|
||||||
override val item: Item = this::item.inject(identifier)
|
override val item: Item = this::item.inject(identifier)
|
||||||
|
|
||||||
@ -38,7 +45,17 @@ abstract class LeavesBlock(identifier: ResourceLocation, settings: BlockSettings
|
|||||||
return PropertyBlockState(this, settings)
|
return PropertyBlockState(this, settings)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun getLightProperties(blockState: BlockState) = LIGHT_PROPERTIES
|
||||||
|
|
||||||
override fun shouldCull(state: BlockState, face: BakedFace, directions: Directions, neighbour: BlockState): Boolean {
|
override fun shouldCull(state: BlockState, face: BakedFace, directions: Directions, neighbour: BlockState): Boolean {
|
||||||
return neighbour.block != this
|
return neighbour.block != this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun isCorrectTool(item: Item): Boolean {
|
||||||
|
return item is SwordItem || item is ShearsItem
|
||||||
|
}
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
val LIGHT_PROPERTIES = CustomLightProperties(true, false, true)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user