Clamp continuous laser bullet position to min zero (#10873)

This prevents the laser from moving behind the unit at the end of the animation.
This commit is contained in:
Iniquit
2025-06-01 11:46:55 -04:00
committed by GitHub
parent 8991af9598
commit 44b25d6e64

View File

@@ -55,13 +55,13 @@ public class ContinuousLaserBulletType extends ContinuousBulletType{
float ellipseLenScl = Mathf.lerp(1 - i / (float)(colors.length), 1f, pointyScaling);
Lines.stroke(stroke);
Lines.lineAngle(b.x, b.y, rot, realLength - frontLength, false);
Lines.lineAngle(b.x, b.y, rot, Math.max(0, realLength - frontLength), false);
//back ellipse
Drawf.flameFront(b.x, b.y, divisions, rot + 180f, backLength, stroke / 2f);
//front ellipse
Tmp.v1.trnsExact(rot, realLength - frontLength);
Tmp.v1.trnsExact(rot, Math.max(0, realLength - frontLength));
Drawf.flameFront(b.x + Tmp.v1.x, b.y + Tmp.v1.y, divisions, rot, frontLength * ellipseLenScl, stroke / 2f);
}