//CHECK FUNCTIONS private bool MoveWillPutUsInRangeOfTower(GameMoveBase ponderedMove, GameState gameState, Entity hero) { if (ponderedMove is IPosition) //Check if we accidentally get into the range of the tower { var enemyTower = gameState.EntitiesEnemy.First(Helpers.Unit.IsTower); if (enemyTower.DistanceTo(ponderedMove as IPosition) < enemyTower.AttackRange) { Log($"Move {GetMoveStringLog(ponderedMove)} will bring us within the range of the tower, please don't"); return(true); //TODO: Something more usefull? } } return(false); }
private string GetMoveStringLog(GameMoveBase move) { return($"[{move.Rating}] {move.GetMoveString()}"); }