Possible ShieldArcAbility tunneling fix

This commit is contained in:
Anuken
2024-09-10 13:16:34 -04:00
parent e56fd3a0d7
commit 4fc48fabb5
2 changed files with 7 additions and 5 deletions

View File

@@ -291,6 +291,8 @@ public class WaveGraph extends Table{
maxHealth = Math.max(maxHealth, healthsum); maxHealth = Math.max(maxHealth, healthsum);
} }
used.orderedItems().sort();
ObjectSet<UnitType> usedCopy = new ObjectSet<>(used); ObjectSet<UnitType> usedCopy = new ObjectSet<>(used);
colors.clear(); colors.clear();

View File

@@ -20,9 +20,9 @@ public class ShieldArcAbility extends Ability{
private static Vec2 paramPos = new Vec2(); private static Vec2 paramPos = new Vec2();
private static final Cons<Bullet> shieldConsumer = b -> { private static final Cons<Bullet> shieldConsumer = b -> {
if(b.team != paramUnit.team && b.type.absorbable && paramField.data > 0 && if(b.team != paramUnit.team && b.type.absorbable && paramField.data > 0 &&
!b.within(paramPos, paramField.radius - paramField.width/2f) && !(b.within(paramPos, paramField.radius - paramField.width/2f) && paramPos.within(b.x - b.deltaX, b.y - b.deltaY, paramField.radius - paramField.width/2f)) &&
Tmp.v1.set(b).add(b.vel).within(paramPos, paramField.radius + paramField.width/2f) && (Tmp.v1.set(b).add(b.deltaX, b.deltaY).within(paramPos, paramField.radius + paramField.width/2f) || b.within(paramPos, paramField.radius + paramField.width/2f)) &&
Angles.within(paramPos.angleTo(b), paramUnit.rotation + paramField.angleOffset, paramField.angle / 2f)){ (Angles.within(paramPos.angleTo(b), paramUnit.rotation + paramField.angleOffset, paramField.angle / 2f) || Angles.within(paramPos.angleTo(b.x + b.deltaX, b.y + b.deltaY), paramUnit.rotation + paramField.angleOffset, paramField.angle / 2f))){
b.absorb(); b.absorb();
Fx.absorb.at(b); Fx.absorb.at(b);