Fix early initialization of Bukkit entities when constructing Entity.

This commit is contained in:
IzzelAliz 2020-08-08 14:33:28 +08:00
parent ce247a2fa5
commit 3158d42a9f

View File

@ -125,7 +125,6 @@ public abstract class LivingEntityMixin extends EntityMixin implements LivingEnt
@Shadow public abstract void setAbsorptionAmount(float amount);
@Shadow public abstract CombatTracker getCombatTracker();
@Shadow private AbstractAttributeMap attributes;
@Shadow public abstract boolean isAlive();
@Shadow public abstract boolean isOnLadder();
@Shadow protected ItemStack activeItemStack;
@Shadow public abstract void onItemPickup(Entity entityIn, int quantity);
@ -237,6 +236,15 @@ public abstract class LivingEntityMixin extends EntityMixin implements LivingEnt
}
}
/**
* @author IzzelAliz
* @reason
*/
@Overwrite
public boolean isAlive() {
return !this.removed && this.dataManager.get(HEALTH) > 0.0F;
}
@Inject(method = "getHealth", cancellable = true, at = @At("HEAD"))
public void arclight$scaledHealth(CallbackInfoReturnable<Float> cir) {
if (this instanceof ServerPlayerEntityBridge) {