Proper shield arc velocity nullification

This commit is contained in:
Anuken
2026-02-12 12:22:00 -05:00
parent d285dd6855
commit 139d7626b2
2 changed files with 6 additions and 4 deletions

View File

@@ -92,11 +92,13 @@ public class ShieldArcAbility extends Ability{
}else if(paramField.pushUnits && !(!unit.isFlying() && paramUnit.isFlying())){ }else if(paramField.pushUnits && !(!unit.isFlying() && paramUnit.isFlying())){
float reach = paramField.radius + paramField.width; float reach = paramField.radius + paramField.width;
float overlapDst = reach - unit.dst(paramPos.x,paramPos.y); float overlapDst = reach - unit.dst(paramPos.x, paramPos.y);
if(overlapDst > 0){ if(overlapDst > 0){
//stop //only nullify velocity if it's heading towards the shield
unit.vel.setZero(); if(Angles.angleDist(unit.angleTo(paramPos), unit.vel.angle()) < 90f){
unit.vel.setZero();
}
// get out // get out
unit.move(Tmp.v1.set(unit).sub(paramUnit).setLength(overlapDst + 0.01f)); unit.move(Tmp.v1.set(unit).sub(paramUnit).setLength(overlapDst + 0.01f));

View File

@@ -26,4 +26,4 @@ org.gradle.caching=true
org.gradle.internal.http.socketTimeout=100000 org.gradle.internal.http.socketTimeout=100000
org.gradle.internal.http.connectionTimeout=100000 org.gradle.internal.http.connectionTimeout=100000
android.enableR8.fullMode=false android.enableR8.fullMode=false
archash=181f842e5c archash=acf486b6f6