diff --git a/doc/VersionSupport.md b/doc/VersionSupport.md index 4d8e050b7..98c654399 100644 --- a/doc/VersionSupport.md +++ b/doc/VersionSupport.md @@ -29,8 +29,7 @@ Versions marked with "lts" are long term supported. They (and the latest one) wi ## April fool -Mojang mostly did not change the version number of them, thus making it impossible to distinct between snapshots and -them. +Mojang mostly did not change the version number of them, thus making it impossible to distinct between snapshots and them. Also it is quite heavy to implement them. They might work, but are not supported at all. ## Snapshots diff --git a/src/main/java/de/bixilon/minosoft/data/direction/Directions.kt b/src/main/java/de/bixilon/minosoft/data/direction/Directions.kt index 87cc3ad85..1bfd7e697 100644 --- a/src/main/java/de/bixilon/minosoft/data/direction/Directions.kt +++ b/src/main/java/de/bixilon/minosoft/data/direction/Directions.kt @@ -34,16 +34,15 @@ import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import kotlin.reflect.jvm.javaField enum class Directions( - @Deprecated("remove") val campfireId: Int, val vector: Vec3i, val index: Vec3i, ) { - DOWN(-1, Vec3i(0, -1, 0), Vec3i(1, -1, 1)), - UP(-1, Vec3i(0, 1, 0), Vec3i(3, -1, 3)), - NORTH(2, Vec3i(0, 0, -1), Vec3i(0, 0, -1)), - SOUTH(0, Vec3i(0, 0, 1), Vec3i(2, 2, -1)), - WEST(1, Vec3i(-1, 0, 0), Vec3i(-1, 3, 2)), - EAST(3, Vec3i(1, 0, 0), Vec3i(-1, 1, 0)), + DOWN(Vec3i(0, -1, 0), Vec3i(1, -1, 1)), + UP(Vec3i(0, 1, 0), Vec3i(3, -1, 3)), + NORTH(Vec3i(0, 0, -1), Vec3i(0, 0, -1)), + SOUTH(Vec3i(0, 0, 1), Vec3i(2, 2, -1)), + WEST(Vec3i(-1, 0, 0), Vec3i(-1, 3, 2)), + EAST(Vec3i(1, 0, 0), Vec3i(-1, 1, 0)), ; val negative = ordinal % 2 == 0 diff --git a/src/main/java/de/bixilon/minosoft/data/entities/block/CampfireBlockEntity.kt b/src/main/java/de/bixilon/minosoft/data/entities/block/CampfireBlockEntity.kt index 89d70829b..1cef29fbe 100644 --- a/src/main/java/de/bixilon/minosoft/data/entities/block/CampfireBlockEntity.kt +++ b/src/main/java/de/bixilon/minosoft/data/entities/block/CampfireBlockEntity.kt @@ -16,6 +16,7 @@ package de.bixilon.minosoft.data.entities.block import de.bixilon.kotlinglm.vec3.Vec3d import de.bixilon.kotlinglm.vec3.Vec3i import de.bixilon.kutil.cast.CastUtil.unsafeCast +import de.bixilon.kutil.exception.Broken import de.bixilon.kutil.primitive.IntUtil.toInt import de.bixilon.kutil.random.RandomUtil.chance import de.bixilon.minosoft.data.container.ItemStackUtil @@ -100,6 +101,15 @@ class CampfireBlockEntity(connection: PlayConnection) : BlockEntity(connection) const val DIRECTION_OFFSET = 0.3125 + private val Directions.campfireId:Int get() = when(this) { + Directions.NORTH -> 2 + Directions.SOUTH -> 0 + Directions.WEST -> 1 + Directions.EAST -> 3 + else -> Broken() + } + + override fun build(connection: PlayConnection): CampfireBlockEntity { return CampfireBlockEntity(connection) }