public override void RotateClockwise() { transform.Rotate(Vector3.forward, -90); for (int i = 0; i < _holeLocations.Length; i++) { _holeLocations[i] = DirectionExtensions.RotateClockwise(_holeLocations[i]); } Dictionary <Direction, AbstractTube> temp = new Dictionary <Direction, AbstractTube>(); foreach (Direction dir in _holeDict.Keys) { temp.Add(DirectionExtensions.RotateClockwise(dir), _holeDict[dir]); //Debug.Log(string.Format("Dir: {0} => {1}", dir, DirectionExtensions.RotateClockwise(dir))); } _holeDict = temp; }