Merge pull request #7113 from Smilex/issue_7100
Prevent divide by zero. Issue #7100
This commit is contained in:
@@ -63,8 +63,11 @@ namespace OpenRA.Mods.RA.Traits
|
|||||||
return WVec.Zero;
|
return WVec.Zero;
|
||||||
|
|
||||||
var currentDir = FlyStep(Facing);
|
var currentDir = FlyStep(Facing);
|
||||||
|
var length = currentDir.HorizontalLength * repulsionForce.HorizontalLength;
|
||||||
|
if (length == 0)
|
||||||
|
return WVec.Zero;
|
||||||
|
|
||||||
var dot = WVec.Dot(currentDir, repulsionForce) / (currentDir.HorizontalLength * repulsionForce.HorizontalLength);
|
var dot = WVec.Dot(currentDir, repulsionForce) / length;
|
||||||
// avoid stalling the plane
|
// avoid stalling the plane
|
||||||
return dot >= 0 ? repulsionForce : WVec.Zero;
|
return dot >= 0 ? repulsionForce : WVec.Zero;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user