예제 #1
0
    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));
    }
예제 #2
0
    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();
    }