feat: Add dye logger for armor stands

This commit is contained in:
Linnea Gräf
2025-03-15 17:52:35 +01:00
parent ce2e4f48d4
commit 03cf4e465c
5 changed files with 92 additions and 28 deletions

View File

@@ -1,9 +1,11 @@
package moe.nea.firmament.events
import com.mojang.datafixers.util.Pair
import net.minecraft.entity.Entity
import net.minecraft.entity.EquipmentSlot
import net.minecraft.entity.LivingEntity
import net.minecraft.entity.data.DataTracker
import net.minecraft.item.ItemStack
import net.minecraft.network.packet.s2c.play.EntityAttributesS2CPacket
/**
@@ -13,19 +15,24 @@ import net.minecraft.network.packet.s2c.play.EntityAttributesS2CPacket
* *after* the values have been applied to the entity.
*/
sealed class EntityUpdateEvent : FirmamentEvent() {
companion object : FirmamentEventBus<EntityUpdateEvent>()
companion object : FirmamentEventBus<EntityUpdateEvent>()
abstract val entity: Entity
abstract val entity: Entity
data class AttributeUpdate(
override val entity: LivingEntity,
val attributes: List<EntityAttributesS2CPacket.Entry>,
) : EntityUpdateEvent()
data class AttributeUpdate(
override val entity: LivingEntity,
val attributes: List<EntityAttributesS2CPacket.Entry>,
) : EntityUpdateEvent()
data class TrackedDataUpdate(
override val entity: Entity,
val trackedValues: List<DataTracker.SerializedEntry<*>>,
) : EntityUpdateEvent()
data class TrackedDataUpdate(
override val entity: Entity,
val trackedValues: List<DataTracker.SerializedEntry<*>>,
) : EntityUpdateEvent()
// TODO: onEntityPassengersSet, onEntityAttach?, onEntityEquipmentUpdate, onEntityStatusEffect
data class EquipmentUpdate(
override val entity: Entity,
val newEquipment: List<Pair<EquipmentSlot, ItemStack>>,
) : EntityUpdateEvent()
// TODO: onEntityPassengersSet, onEntityAttach?, onEntityStatusEffect
}