use integer math to calculate next auto-target scan-time

to combat random desync problem because of rounding problems
This commit is contained in:
Matthias Mailänder
2013-03-11 14:02:28 +01:00
parent 7cbc4a29bf
commit 97d850e481
2 changed files with 3 additions and 5 deletions

View File

@@ -107,9 +107,7 @@ namespace OpenRA.Mods.RA
Actor ChooseTarget(Actor self, float range)
{
var info = self.Info.Traits.Get<AttackBaseInfo>();
nextScanTime = (int)(25 * (info.ScanTimeAverage +
(self.World.SharedRandom.NextFloat() * 2 - 1) * info.ScanTimeSpread));
Log.Write("debug", "Actor {0}; nextScanTime: {1}", self.ActorID, nextScanTime);
nextScanTime = self.World.SharedRandom.Next(info.MinimumScanTimeInterval, info.MaximumScanTimeInterval);
var inRange = self.World.FindUnitsInCircle(self.CenterLocation, (int)(Game.CellSize * range));