private Star transform(PointF point, int type) { var star = StarGenerator.MakeStarXY( false , (int)((point.X) * mapSize) , (int)((point.Y) * mapSize) ); star.StarNebulaType = type; return(star); }
public void GenerateMap(bool shake = true, bool round = true) { int id = 0; for (int i = 0; i < starsInRow; i++) { for (int j = 0; j < starsInRow; j++) { int x = (i * distanceBetweenSuns) + 2; int y = (j * distanceBetweenSuns) + 2; var isPlayer = id % StarsPerPlayer == 0 ? true : false; Star tempStar = StarGenerator.MakeStarXY(isPlayer, x, y); tempStar.Id = id; if (shake) { ShakePosition(tempStar); } stars.Add(tempStar); starsToShake.Add(tempStar); id++; } } if (Textbox != null) { Textbox.Text = id.ToString() + " - " + stars.Count.ToString() + " generierte Star Location: " + Environment.NewLine; } //needed because stars may be too near to each other when shaking was used during star placement if (shake) { shakeAndCheck(0); } //make a round galaxy. if (round) { MakeRound(); } stars.ForEach(e => Map.addStar(e)); }