mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-12 17:07:55 -04:00
block with entity (diverge from PixLyzerBlockWithEntity)
This commit is contained in:
parent
62de41d806
commit
1498a69e33
@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Minosoft
|
||||
* Copyright (C) 2020-2023 Moritz Zwerger
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* This software is not affiliated with Mojang AB, the original developer of Minecraft.
|
||||
*/
|
||||
|
||||
package de.bixilon.minosoft.data.registries.blocks.types.entity
|
||||
|
||||
import de.bixilon.minosoft.camera.target.targets.BlockTarget
|
||||
import de.bixilon.minosoft.data.container.stack.ItemStack
|
||||
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
||||
import de.bixilon.minosoft.data.entities.entities.player.Hands
|
||||
import de.bixilon.minosoft.data.registries.blocks.entites.BlockEntityType
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.InteractBlockHandler
|
||||
import de.bixilon.minosoft.input.interaction.InteractionResults
|
||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||
|
||||
interface BlockWithEntity<T : BlockEntity> : InteractBlockHandler {
|
||||
val blockEntity: BlockEntityType<T>?
|
||||
|
||||
override fun interact(connection: PlayConnection, target: BlockTarget, hand: Hands, stack: ItemStack?) = InteractionResults.SUCCESS
|
||||
}
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class BannerBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<BannerBlockEntity>(resourceLocation, registries, data) {
|
||||
open class BannerBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<BannerBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<BannerBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): BannerBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class BeaconBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<BeaconBlockEntity>(resourceLocation, registries, data) {
|
||||
open class BeaconBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<BeaconBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<BeaconBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): BeaconBlock {
|
||||
|
@ -19,7 +19,7 @@ import de.bixilon.minosoft.data.registries.blocks.handler.entity.landing.Bouncin
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class BedBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<BedBlockEntity>(resourceLocation, registries, data), BouncingHandler {
|
||||
open class BedBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<BedBlockEntity>(resourceLocation, registries, data), BouncingHandler {
|
||||
override val bounceStrength: Double get() = 0.66f.toDouble()
|
||||
|
||||
companion object : PixLyzerBlockFactory<BedBlock> {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class BeehiveBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<BeehiveBlockEntity>(resourceLocation, registries, data) {
|
||||
open class BeehiveBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<BeehiveBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<BeehiveBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): BeehiveBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class BellBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<BellBlockEntity>(resourceLocation, registries, data) {
|
||||
open class BellBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<BellBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<BellBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): BellBlock {
|
||||
|
@ -38,7 +38,7 @@ import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||
import java.util.*
|
||||
|
||||
open class CampfireBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<CampfireBlockEntity>(resourceLocation, registries, data), LitBlock, RandomDisplayTickable {
|
||||
open class CampfireBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<CampfireBlockEntity>(resourceLocation, registries, data), LitBlock, RandomDisplayTickable {
|
||||
val lavaParticles = data["lava_particles"]?.toBoolean() ?: true
|
||||
|
||||
private val cosySmokeParticle = registries.particleType[CampfireSmokeParticle.CosyFactory]!!
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class ConduitBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<ConduitBlockEntity>(resourceLocation, registries, data) {
|
||||
open class ConduitBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<ConduitBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<ConduitBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): ConduitBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class EnchantingTableBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<EnchantingTableBlockEntity>(resourceLocation, registries, data) {
|
||||
open class EnchantingTableBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<EnchantingTableBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<EnchantingTableBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): EnchantingTableBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class JigsawBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<JigsawBlockEntity>(resourceLocation, registries, data) {
|
||||
open class JigsawBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<JigsawBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<JigsawBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): JigsawBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class LecternBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<LecternBlockEntity>(resourceLocation, registries, data) {
|
||||
open class LecternBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<LecternBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<LecternBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): LecternBlock {
|
||||
|
@ -19,7 +19,7 @@ import de.bixilon.minosoft.data.registries.factory.clazz.MultiClassFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class MobSpawnerBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<MobSpawnerBlockEntity>(resourceLocation, registries, data) {
|
||||
open class MobSpawnerBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<MobSpawnerBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<MobSpawnerBlock>, MultiClassFactory<MobSpawnerBlock> {
|
||||
override val ALIASES: Set<String> = setOf("SpawnerBlock")
|
||||
|
@ -19,7 +19,7 @@ import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
// The block might have an entity, but it is not required
|
||||
open class NoteBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<NoteBlockBlockEntity>(resourceLocation, registries, data) {
|
||||
open class NoteBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<NoteBlockBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<NoteBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): NoteBlock {
|
||||
|
@ -13,13 +13,14 @@
|
||||
|
||||
package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity
|
||||
|
||||
import de.bixilon.kutil.cast.CastUtil.unsafeNull
|
||||
import de.bixilon.minosoft.camera.target.targets.BlockTarget
|
||||
import de.bixilon.minosoft.data.container.stack.ItemStack
|
||||
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
||||
import de.bixilon.minosoft.data.entities.entities.player.Hands
|
||||
import de.bixilon.minosoft.data.registries.blocks.entites.BlockEntityType
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.PixLyzerBlock
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.InteractBlockHandler
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
||||
@ -27,8 +28,8 @@ import de.bixilon.minosoft.input.interaction.InteractionResults
|
||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||
import kotlin.reflect.jvm.javaField
|
||||
|
||||
abstract class BlockWithEntity<T : BlockEntity>(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlock(resourceLocation, registries, data), InteractBlockHandler {
|
||||
val factory: BlockEntityType<T>? = null
|
||||
abstract class PixLyzerBlockWithEntity<T : BlockEntity>(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlock(resourceLocation, registries, data), BlockWithEntity<BlockEntity> {
|
||||
override val blockEntity: BlockEntityType<BlockEntity> = unsafeNull()
|
||||
|
||||
init {
|
||||
FACTORY_FIELD.inject<RegistryItem>(this)
|
||||
@ -37,6 +38,6 @@ abstract class BlockWithEntity<T : BlockEntity>(resourceLocation: ResourceLocati
|
||||
override fun interact(connection: PlayConnection, target: BlockTarget, hand: Hands, stack: ItemStack?) = InteractionResults.SUCCESS
|
||||
|
||||
private companion object {
|
||||
val FACTORY_FIELD = BlockWithEntity<*>::factory.javaField!!
|
||||
val FACTORY_FIELD = PixLyzerBlockWithEntity<*>::blockEntity.javaField!!
|
||||
}
|
||||
}
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class ShulkerBoxBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<ShulkerBoxBlockEntity>(resourceLocation, registries, data) {
|
||||
open class ShulkerBoxBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<ShulkerBoxBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<ShulkerBoxBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): ShulkerBoxBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class SkullBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<SkullBlockEntity>(resourceLocation, registries, data) {
|
||||
open class SkullBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<SkullBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<SkullBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): SkullBlock {
|
||||
|
@ -18,7 +18,7 @@ import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class StructureBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<JukeboxBlockEntity>(resourceLocation, registries, data) {
|
||||
open class StructureBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<JukeboxBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<StructureBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): StructureBlock {
|
||||
|
@ -14,8 +14,8 @@
|
||||
package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.container
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.container.ContainerBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
abstract class ContainerBlock<T : ContainerBlockEntity>(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<T>(resourceLocation, registries, data)
|
||||
abstract class ContainerBlock<T : ContainerBlockEntity>(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<T>(resourceLocation, registries, data)
|
||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.end
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.end.EndGatewayBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class EndGatewayBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<EndGatewayBlockEntity>(resourceLocation, registries, data) {
|
||||
open class EndGatewayBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<EndGatewayBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<EndGatewayBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): EndGatewayBlock {
|
||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.end
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.end.EndPortalBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class EndPortalBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<EndPortalBlockEntity>(resourceLocation, registries, data) {
|
||||
open class EndPortalBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<EndPortalBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<EndPortalBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): EndPortalBlock {
|
||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.redston
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.redstone.CommandBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class CommandBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<CommandBlockEntity>(resourceLocation, registries, data) {
|
||||
open class CommandBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<CommandBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<CommandBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): CommandBlock {
|
||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.redston
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.redstone.DaylightDetectorBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class DaylightDetectorBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<DaylightDetectorBlockEntity>(resourceLocation, registries, data) {
|
||||
open class DaylightDetectorBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<DaylightDetectorBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<DaylightDetectorBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): DaylightDetectorBlock {
|
||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.redston
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.redstone.piston.PistonBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class PistonBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<PistonBlockEntity>(resourceLocation, registries, data) {
|
||||
open class PistonBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<PistonBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<PistonBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): PistonBlock {
|
||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.redston
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.redstone.SculkSensorBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.factory.PixLyzerBlockFactory
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
open class SculkSensorBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<SculkSensorBlockEntity>(resourceLocation, registries, data) {
|
||||
open class SculkSensorBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<SculkSensorBlockEntity>(resourceLocation, registries, data) {
|
||||
|
||||
companion object : PixLyzerBlockFactory<SculkSensorBlock> {
|
||||
override fun build(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>): SculkSensorBlock {
|
||||
|
@ -14,9 +14,9 @@
|
||||
package de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.sign
|
||||
|
||||
import de.bixilon.minosoft.data.entities.block.sign.SignBlockEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.PixLyzerBlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.ResourceLocation
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
|
||||
abstract class SignBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : BlockWithEntity<SignBlockEntity>(resourceLocation, registries, data)
|
||||
abstract class SignBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : PixLyzerBlockWithEntity<SignBlockEntity>(resourceLocation, registries, data)
|
||||
|
||||
|
@ -20,7 +20,7 @@ import de.bixilon.minosoft.data.direction.Directions
|
||||
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
||||
import de.bixilon.minosoft.data.registries.biomes.Biome
|
||||
import de.bixilon.minosoft.data.registries.blocks.state.BlockState
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.world.biome.accessor.BiomeAccessor
|
||||
import de.bixilon.minosoft.data.world.biome.source.BiomeSource
|
||||
import de.bixilon.minosoft.data.world.chunk.ChunkSection
|
||||
@ -99,7 +99,7 @@ class Chunk(
|
||||
if (block.block !is BlockWithEntity<*>) {
|
||||
return null
|
||||
}
|
||||
blockEntity = block.block.factory?.build(connection) ?: return null
|
||||
blockEntity = block.block.blockEntity?.build(connection) ?: return null
|
||||
(this.getOrPut(sectionHeight) ?: return null).blockEntities[x, inSectionHeight, z] = blockEntity
|
||||
|
||||
return blockEntity
|
||||
|
@ -21,7 +21,7 @@ import de.bixilon.minosoft.camera.target.targets.BlockTarget
|
||||
import de.bixilon.minosoft.data.abilities.Gamemodes
|
||||
import de.bixilon.minosoft.data.registries.blocks.shapes.collision.context.EntityCollisionContext
|
||||
import de.bixilon.minosoft.data.registries.blocks.state.BlockState
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.offset.OffsetBlock
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.shape.collision.CollidableBlock
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.shape.outline.OutlinedBlock
|
||||
|
@ -17,7 +17,7 @@ import de.bixilon.kutil.observer.DataObserver.Companion.observe
|
||||
import de.bixilon.minosoft.camera.target.targets.BlockTarget
|
||||
import de.bixilon.minosoft.camera.target.targets.EntityTarget
|
||||
import de.bixilon.minosoft.data.abilities.Gamemodes
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.identified.Namespaces.minecraft
|
||||
import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft
|
||||
import de.bixilon.minosoft.gui.rendering.gui.GUIRenderer
|
||||
|
@ -20,7 +20,7 @@ import de.bixilon.minosoft.data.Axes
|
||||
import de.bixilon.minosoft.data.registries.blocks.shapes.collision.CollisionPredicate
|
||||
import de.bixilon.minosoft.data.registries.blocks.shapes.collision.context.CollisionContext
|
||||
import de.bixilon.minosoft.data.registries.blocks.shapes.collision.context.EntityCollisionContext
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.pixlyzer.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.entity.BlockWithEntity
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.shape.collision.CollidableBlock
|
||||
import de.bixilon.minosoft.data.registries.blocks.types.properties.shape.collision.fixed.FixedCollidable
|
||||
import de.bixilon.minosoft.data.registries.shapes.aabb.AABB
|
||||
|
Loading…
x
Reference in New Issue
Block a user