Пример #1
0
 public void OnSolverRoot(ForceSolver solver)
 {
     if (_currentlyActiveSolver == solver)
     {
         _currentlyActiveSolver = null;
     }
 }
Пример #2
0
    public void OnSolverManipulate(ForceSolver solver)
    {
        IsManipulatingPlanet = true;

        if (solver == _currentlyActiveSolver)
        {
            return;
        }
        OnSolverAttraction(solver);
    }
Пример #3
0
    public void OnSolverFree(ForceSolver solver)
    {
        IsManipulatingPlanet = false;

        foreach (var planetForceSolver in _planetForceSolvers)
        {
            if (solver == planetForceSolver)
            {
                continue;
            }
            planetForceSolver.EnableForce = true;
        }
    }
Пример #4
0
 public void StartIntro(ForceSolver placementForceSolver, bool skipPlacement = false)
 {
     _placementForceSolver = placementForceSolver;
     DisableForcePull();
     _placementForceSolver.SetToFree.AddListener(OnForcePullFree);
     _platformId = GalaxyExplorerManager.Platform;
     VoManager.PlayClip(Intro_01);
     if (!skipPlacement)
     {
         VoManager.PlayClip(Intro_02);
     }
     OnboardingStage = skipPlacement ? Stage.AfterConfirmation : Stage.Intro;
     EvaluateOnEndOfVoiceOver();
 }
Пример #5
0
        /*
         * @param form The windows form that the particles will be drawn upon.
         */
        public void init(Form1 form, ForceSolver forceSolver)
        {
            form1            = form;
            particles        = new List <Particle>();
            this.forceSolver = forceSolver;

            rnd = new Random();

            //generates all particles with random initial parameters, using the rnd variable:
            for (int i = 0; i < SimConstants.N_PARTICLES; i++)
            {
                particles.Add(new Particle(300, 300, 300, 600.0, rnd));
            }
        }
Пример #6
0
    public void OnSolverAttraction(ForceSolver solver)
    {
        if (_currentlyActiveSolver == solver)
        {
            return;
        }

        if (_currentlyActiveSolver != null)
        {
            _currentlyActiveSolver.ResetToRoot();
        }

        _currentlyActiveSolver = solver;
        foreach (var planetForceSolver in _planetForceSolvers)
        {
            if (solver == planetForceSolver)
            {
                continue;
            }
            planetForceSolver.ResetToRoot();
            planetForceSolver.EnableForce = false;
        }
    }
Пример #7
0
 private void OnForcePullFree(ForceSolver _)
 {
     OnboardingStage = Stage.AfterForcePull;
     AdvanceStateMachine();
 }
Пример #8
0
 private void Awake()
 {
     _confirmationButton = GetComponentInChildren <PlacementConfirmationButton>();
     _forceSolver        = GetComponent <ForceSolver>();
     _placementRing      = GetComponentInChildren <PlacementRing>();
 }