public static void DrawRangeCircle(WorldRenderer wr, WPos pos, int range, Color color) { wr.DrawRangeCircleWithContrast( Color.FromArgb(128, color), wr.ScreenPxPosition(pos), range, Color.FromArgb(96, Color.Black)); }
public static void DrawRangeCircle(WorldRenderer wr, WPos pos, int range, Color color) { wr.DrawRangeCircleWithContrast( pos, WRange.FromCells(range), Color.FromArgb(128, color), Color.FromArgb(96, Color.Black) ); }
public void RenderAfterWorld(WorldRenderer wr) { if (self.Owner != self.World.LocalPlayer) return; wr.DrawRangeCircleWithContrast( Color.FromArgb(128, Color.LimeGreen), wr.ScreenPxPosition(self.CenterPosition), self.Info.Traits.Get<DetectCloakedInfo>().Range, Color.FromArgb(96, Color.Black)); }
// Range circle public void RenderAfterWorld(WorldRenderer wr) { // Visible to player and allies if (!ValidRenderPlayer()) return; wr.DrawRangeCircleWithContrast( Color.FromArgb(128, Ready() ? Color.White : Color.Red), wr.ScreenPxPosition(self.CenterPosition), Info.Range, Color.FromArgb(96, Color.Black)); }
public void RenderAfterWorld(WorldRenderer wr) { if (self.Owner != self.World.LocalPlayer) return; wr.DrawRangeCircleWithContrast( self.CenterPosition, self.Info.Traits.Get<CreatesShroudInfo>().Range, Color.FromArgb(128, Color.Cyan), Color.FromArgb(96, Color.Black) ); }
public void RenderAfterWorld(WorldRenderer wr) { if (self.Owner != self.World.LocalPlayer) return; // Hack: Convert world coords to cells var pxRange = self.Trait<AttackBase>().GetMaximumRange().Range / 1024f; wr.DrawRangeCircleWithContrast( Color.FromArgb(128, Color.Yellow), wr.ScreenPxPosition(self.CenterPosition), pxRange, Color.FromArgb(96, Color.Black)); }
public void Render(WorldRenderer wr, World w, ActorInfo ai, WPos centerPosition) { wr.DrawRangeCircleWithContrast( Color.FromArgb(128, Color.Cyan), wr.ScreenPxPosition(centerPosition), ai.Traits.Get<CreatesShroudInfo>().Range, Color.FromArgb(96, Color.Black)); foreach (var a in w.ActorsWithTrait<RenderShroudCircle>()) if (a.Actor.Owner == a.Actor.World.LocalPlayer) a.Trait.RenderAfterWorld(wr); }
public void Render(WorldRenderer wr, World w, ActorInfo ai, WPos centerPosition) { wr.DrawRangeCircleWithContrast( Color.FromArgb(128, Color.Yellow), wr.ScreenPxPosition(centerPosition), ai.Traits.WithInterface<ArmamentInfo>() .Select(a => Rules.Weapons[a.Weapon.ToLowerInvariant()].Range).Max(), Color.FromArgb(96, Color.Black)); foreach (var a in w.ActorsWithTrait<RenderRangeCircle>()) if (a.Actor.Owner == a.Actor.World.LocalPlayer) if (a.Actor.Info.Traits.Get<RenderRangeCircleInfo>().RangeCircleType == RangeCircleType) a.Trait.RenderAfterWorld(wr); }
public void RenderAfterWorld(WorldRenderer wr, World world) { if (!self.IsInWorld || self.Owner != self.World.LocalPlayer) return; if (!self.Trait<PortableChrono>().Info.HasDistanceLimit) return; wr.DrawRangeCircleWithContrast( self.CenterPosition, WRange.FromCells(self.Trait<PortableChrono>().Info.MaxDistance), Color.FromArgb(128, Color.LawnGreen), Color.FromArgb(96, Color.Black) ); }
// Range circle public void RenderBeforeWorld(WorldRenderer wr, Actor self) { // Visible to player and allies if (!self.Owner.IsAlliedWith(self.World.RenderPlayer)) return; wr.DrawRangeCircleWithContrast( Color.FromArgb(128, Ready() ? Color.White : Color.Red), self.CenterLocation.ToFloat2(), Info.Range, Color.FromArgb(96, Color.Black), 1); }