void AddAssignment(Unit Unit, UnitAssignment Assignment) { if (_Assignments.ContainsKey(Unit)) { _Assignments[Unit].Add(Assignment); } else { _Assignments.Add(Unit, new List <UnitAssignment> { Assignment }); } }
double ScoreCarrierTile(UnitAssignment Assignment, Tile Tile, Dictionary <Unit, Tile> Deployments) { return(BaseTileScore(Tile) * Assignment.Subject.Configuration.Movement / (1 + Tile.HexCoordinate.Distance(Deployments[Assignment.Object].HexCoordinate))); }
double ScoreDefenseTile(UnitAssignment Assignment, Tile Tile, Dictionary <Unit, Tile> Deployments) { return(BaseTileScore(Tile) / (1 + Tile.HexCoordinate.Distance(Deployments[Assignment.Object].HexCoordinate))); }
void AddAssignment(UnitAssignment Assignment) { AddAssignment(Assignment.Object, Assignment); AddAssignment(Assignment.Subject, Assignment); }