コード例 #1
0
    public void Start()
    {
        // TODO: This is a stupid hack because this system is half-assed
        foreach (var og in FindObjectsOfType <OrbitGroup>())
        {
            og.Position();
        }

        // TODO: kind of a hacky way to set courses for all these predictive chasers
        foreach (var chaser in FindObjectsOfType <PredictiveChaser>())
        {
            float  tf = 3f;
            float3 p0 = chaser.transform.position;
            float3 v0 = InitialHeading * InitialSpeed;
            float3 pf = FuturePosition(chaser.Target, tf);
            float3 vf = FutureVelocity(chaser.Target, tf);

            chaser.TimeElapsed = 0;
            chaser.Trajectory  = PathSystem.TrajectoryFrom(tf, p0, v0, pf, vf);
        }

        Emitters    = FindObjectsOfType <Emitter>().ToList();
        FreeBodies  = FindObjectsOfType <FreeBody>().ToList();
        Travelers   = FindObjectsOfType <Traveler>().ToList();
        Orbiters    = FindObjectsOfType <Orbiter>().ToList();
        Velocities  = FindObjectsOfType <Velocity>().ToList();
        DeathTimers = FindObjectsOfType <DeathTimer>().ToList();

        Rotators         = FindObjectsOfType <Rotator>();
        Geosynchronouses = FindObjectsOfType <Geosynchronous>();
        OrbitPredictors  = FindObjectsOfType <OrbitPredictor>();
        TargetReflectors = FindObjectsOfType <TargetReflector>();
        LightSources     = FindObjectsOfType <LightSource>();
        NormalizedMasses = FindObjectsOfType <NormalizedMass>();
        SkyHookRockets   = FindObjectsOfType <SkyHookRocket>();
    }