优化尾焰伤害实现

This commit is contained in:
Light_Quanta 2025-07-14 01:45:24 +08:00
parent cb16663ea8
commit 2585b0aedf
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959

View file

@ -239,19 +239,12 @@ public class Type63Entity extends ContainerMobileVehicleEntity implements GeoEnt
AABB ab = new AABB(getBoundingBox().getCenter(), getBoundingBox().getCenter()).inflate(0.75).move(getShootVector(1).scale(-2)).expandTowards(getShootVector(1).scale(-5));
List<Entity> entities = level().getEntities(EntityTypeTest.forClass(Entity.class), ab,
entity -> entity != this && entity != getFirstPassenger() && entity.getVehicle() == null)
.stream().filter(entity -> entity != this)
.toList();
for (var entity : entities) {
for (var entity : level().getEntities(EntityTypeTest.forClass(Entity.class), ab,
target -> target != this && target != getFirstPassenger() && target.getVehicle() == null)
) {
entity.hurt(ModDamageTypes.causeBurnDamage(entity.level().registryAccess(), player), 30 - 2 * entity.distanceTo(this));
double force = 4 - 0.7 * entity.distanceTo(this);
if (level().isClientSide) {
entity.push(-force * getShootVector(1).x, -force * getShootVector(1).y, -force * getShootVector(1).z);
} else {
entity.push(-force * getShootVector(1).x, -force * getShootVector(1).y, -force * getShootVector(1).z);
}
entity.push(-force * getShootVector(1).x, -force * getShootVector(1).y, -force * getShootVector(1).z);
}
cooldown = 10;