public void Init(Point point, int nestLevel = 0) { Point = point.GetNewPosition(Direction); Element = Global.Board.GetAt(Point); WallsNearCount = Global.Board.CountNear(Point, Element.WALL); IsFutureBlast = Global.Blasts.IsFutureBlast(Point); IsFutureBlastNextStep = Global.Blasts.IsFutureBlastNextStep(Point); IsBonusFutureBlastNextStep = Global.Blasts.IsBonusFutureBlastNextStep(Point); IsMyFutureBlastToIgnore = Global.Blasts.IsMyFutureBlastToIgnore(Point); IsBonusRCBlastNextStep = Global.Blasts.IsBonusRCNextStep(Point); IsBomb = Global.Board.IsAnyOfAt(Point, Constants.BOMB_ELEMENTS) || IsBombChopper; NearChopper = Global.Choppers.Get(Point); InitSidePoints(); if (nestLevel < Config.NearNestLevel) { NextNearPoint = new NearPoint(Direction); NextNearPoint.Init(Point, nestLevel + 1); } }
private string RatingStr(NearPoint nearPoint) { if (nearPoint.IsCriticalDanger) { return($"*{nearPoint.Rating,2}*"); } if (nearPoint.IsMyFutureBlastToIgnore) { return($"^{nearPoint.Rating,2}^"); } return($" {nearPoint.Rating,2} "); }