Radar takes into account visibility under fog
This commit is contained in:
@@ -39,14 +39,17 @@ namespace OpenRA.Traits
|
||||
|
||||
public IEnumerable<int2> RadarSignatureCells(Actor self)
|
||||
{
|
||||
foreach (var mod in self.World.Queries.WithTraitMultiple<IRadarVisibilityModifier>())
|
||||
if (!mod.Trait.VisibleOnRadar(self))
|
||||
yield break;
|
||||
|
||||
yield return self.Location;
|
||||
}
|
||||
|
||||
public Color RadarSignatureColor(Actor self)
|
||||
{
|
||||
var mod = self.traits.WithInterface<IRadarSignatureModifier>().FirstOrDefault();
|
||||
if (mod != null)
|
||||
return mod.RadarColorOverride(self);
|
||||
foreach (var mod in self.World.Queries.WithTraitMultiple<IRadarColorModifier>())
|
||||
return mod.Trait.RadarColorOverride(self);
|
||||
|
||||
return self.Owner.Color;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user