From cdf768f78864b4a7c3d999bd9c6c2ae3608d058f Mon Sep 17 00:00:00 2001 From: Moritz Zwerger Date: Sat, 18 Nov 2023 18:30:24 +0100 Subject: [PATCH] make all skin parts visible by default, forbid server updating local skin parts --- .../minosoft/data/entities/entities/player/PlayerEntity.kt | 4 ++-- .../data/entities/entities/player/local/LocalPlayerEntity.kt | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/bixilon/minosoft/data/entities/entities/player/PlayerEntity.kt b/src/main/java/de/bixilon/minosoft/data/entities/entities/player/PlayerEntity.kt index baa08fa63..1d1e39eed 100644 --- a/src/main/java/de/bixilon/minosoft/data/entities/entities/player/PlayerEntity.kt +++ b/src/main/java/de/bixilon/minosoft/data/entities/entities/player/PlayerEntity.kt @@ -91,7 +91,7 @@ abstract class PlayerEntity( return field } - val skinParts: MutableSet by observedSet(SkinParts.set()) + val skinParts: MutableSet by observedSet(SkinParts.set(*SkinParts.VALUES)) override val isNameVisible get() = true override val name: ChatComponent? get() = additional.tabDisplayName // minecraft does use the plain name @@ -107,7 +107,7 @@ abstract class PlayerEntity( } init { - data.observe(SKIN_PARTS_DATA) { raw: Any? -> updateSkinParts(raw?.toInt() ?: 0) } + data.observe(SKIN_PARTS_DATA) { raw: Any? -> updateSkinParts(raw?.toInt() ?: 0xFF) } } private var _mainArm by data(MAIN_ARM_DATA, 0x01) diff --git a/src/main/java/de/bixilon/minosoft/data/entities/entities/player/local/LocalPlayerEntity.kt b/src/main/java/de/bixilon/minosoft/data/entities/entities/player/local/LocalPlayerEntity.kt index c9c6fc48d..57f499ec9 100644 --- a/src/main/java/de/bixilon/minosoft/data/entities/entities/player/local/LocalPlayerEntity.kt +++ b/src/main/java/de/bixilon/minosoft/data/entities/entities/player/local/LocalPlayerEntity.kt @@ -113,4 +113,7 @@ class LocalPlayerEntity( override fun createPhysics() = LocalPlayerPhysics(this) override fun physics(): LocalPlayerPhysics = super.physics().unsafeCast() override fun create(renderer: EntitiesRenderer) = LocalPlayerRenderer(renderer, this) + + + override fun updateSkinParts(flags: Int) = Unit // server can not update our own skin parts }