public void DisplayRange(ProjectionManager pm, Cell currentCell, Rotation currentRotation) { pm.ClearProjections(); if (Rotation.Length == 0) { pm.SelectCells(RangeType, currentCell, MinRange, MaxRange, NeedLineOfSight, TargetMustBeEmpty, NeedPathToTarget, true, false, SelectionState.DisplaySkillRange); } else { foreach (RelativeRotation relativeRotation in Rotation) { pm.SelectCells(RangeType, currentCell, MinRange, MaxRange, NeedLineOfSight, TargetMustBeEmpty, NeedPathToTarget, true, false, SelectionState.DisplaySkillRange, relativeRotation, currentRotation); } } pm.ColorProjections(pm.Selection, Color.cyan); pm.EnableProjections(pm.Selection, true); if (NeedLineOfSight) { pm.ColorProjections(pm.NotInLOS, Color.grey); pm.EnableProjections(pm.NotInLOS, true); } }