public void generateOrbit(float systemSizelow, float systemSizehigh) { orbit.a = Random.Range(systemSizelow * units.AU, systemSizehigh * units.AU); //Debug.Log(orbit.a); orbit.e = Random.Range(0.00001f, 0.07f); float angle = Random.Range(0, Mathf.PI * 2); orbit.ev = new Vector2(Mathf.Cos(angle) * orbit.e, Mathf.Sin(angle) * orbit.e); //orbit.fromEvA(units.AU, orbit.ev, units.ME*units.G); //Debug.Log(orbit.p / 60 / 60 / 24/365); //orbit.circularInit(orbit.a, units.G * (mass * units.ME + parent.mass * units.ME)); orbit.fromEvA(orbit.a, orbit.ev, units.G * (mass * units.ME + parent.mass * units.ME)); }
public void generate() { generateGhosts(); Kepler test = new Kepler(); test.fromEvA(units.AU, new Vector2(0, 0.0001f), units.G * (units.ME + units.ME * 333333)); Debug.Log(test.r(0).x / units.AU); //Generate the mainstar mainStar = new GameObject(); mainStar.AddComponent <Body>(); mainStar.GetComponent <Body>().generateStar(); //Generate planets planets = new GameObject[planetNum]; for (int i = 0; i < planetNum; i++) { planets[i] = new GameObject(); planets[i].AddComponent <Body>(); planets[i].transform.SetParent(mainStar.transform); Body component = planets[i].GetComponent <Body>(); component.generate(); component.parent = mainStar.GetComponent <Body>(); component.generateOrbit(systemSizelow, systemSizehigh); } //Generate Signals (events) signals = new Signal[signalNum]; for (int i = 0; i < signalNum; i++) { signals[i].generate(); } //Generate NPCs (enemies, shops, stations, one warp gate) //shop = new GameObject(); //shop.AddComponent<Shop>(); //Shop shopcomponent = shop.GetComponent<Shop>(); //shop.transform.localPosition = new Vector2(Random.Range(2f, 4f), Random.Range(-2f, -4f)); //ShopTextController stc = GameObject.Find("ShopPrices").GetComponent<ShopTextController>(); //stc.initThis(); }