private RingSector CreateNewSector(int i) { var availableTypes = MapPoint.GetAvailablePointsType(ascension); var pos = GetSectorPosition(i); int x = Random.Range(0, availableTypes.Count); var inpos = GetSectorPosition(i); byte ring = DefineRing(pos.y); RingSector rs; if (availableTypes[x] != MapMarkerType.Star) { MapPoint centralPoint = MapPoint.CreatePointOfType( pos.x, pos.y, availableTypes[x] ); rs = new RingSector(centralPoint, Environment.GetEnvironment(ascension, pos.y)); AddPoint(centralPoint, true); } else { var e = Environment.GetEnvironment(ascension, pos.y); SunPoint sunpoint = new SunPoint( pos.x, pos.y, e.horizonColor ); rs = new RingSector(sunpoint, e); AddPoint(sunpoint, true); } mapSectors[i] = rs; actionsHash++; return(rs); }