Exemplo n.º 1
0
 public void Observe(MassTestChamberTest master, int timeMs)
 {
     if (master.Simulation.LaserInput)
     {
         ActiveLaserTime += timeMs;
     }
 }
 /// <summary>
 /// Observes the cart and reports damage
 /// </summary>
 public void Observe(MassTestChamberTest master)
 {
     if (master.Simulation.Chamber.Emitter.IsLeakingParticles && !ReportedLostParticles)
     {
         master.PaperLog.AppendWarning("Detecting roaming particles in the test chamber. They were not trapped by the field generator or a focus.\n");
         ReportedLostParticles = true;
     }
 }
Exemplo n.º 3
0
 public void Observe(MassTestChamberTest master, int timeMs)
 {
     if (master.Simulation.FieldGeneratorInput)
     {
         ActiveTime += timeMs;
     }
     if (master.Simulation.Chamber.Central.IsLeakingParticles && !LeakedHighEnergeticParticles)
     {
         master.PaperLog.AppendError("Detecting high energetic particles injú®`Wù‰©ãhö#3ÿG”8q(ú|ûI¯àrFcƒëoÅjÍ1Û(¶jTÃÚŸìæ¥Qç@>›€¡ÖÀ˜G±}zÂZƒëµ&±æL–°ÖxÇÙ7ÕÚÈÑ#UåIJÝ:•RŠnHÑ|µõÏpƒ»¡Z¥Š¦$0xEmergencyProtocol¦ÀªªG­×yRXqÿ°ÊÆ@ƒö5$\n");
         LeakedHighEnergeticParticles = true;
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// Observes the cart and reports damage
 /// </summary>
 public void Observe(MassTestChamberTest master)
 {
     if (_cart.Damaged && !ReportedDamage)
     {
         master.PaperLog.AppendWarning("Detected collision at " + _name + "\n");
         ReportedDamage = true;
     }
     if (_cart.IsBroken && !ReportedBreakdown)
     {
         master.PaperLog.AppendError(_name + " returns error: Motors overheated\n");
         ReportedBreakdown = true;
     }
 }
        public void ObserveUpperBound(MassTestChamberTest master, int timeMs)
        {
            int   temperature = master.Simulation.Chamber.Central.CentralTemperature;
            float centralMass = master.Simulation.Chamber.Central.CollectedMass;

            if (temperature > CentralParticles.MaxTemperature && centralMass > 0.01)
            {
                if (!ReportedExceededTemperature)
                {
                    ReportedExceededTemperature = true;
                    master.PaperLog.AppendWarning("Detected high temperatures in the core. Turn off the laser if the temperature it soo high.\n");
                }
                ExceededTemperatureTime += timeMs;
            }
        }
 public void Observe(MassTestChamberTest master, int timeMs)
 {
     if (master.Simulation.FocusInput)
     {
         if (!master.Simulation.Chamber.FocusCart.FrontPositionReached || master.Simulation.FieldGeneratorInput)
         {
             _unusualActivationTime += timeMs;
             if (_unusualActivationTime > 100 && !ReportedUnusualActivation)
             {
                 master.PaperLog.Append("Focus reports unusual long activation time. Do not expose it for too long to the particles.\n");
                 ReportedUnusualActivation = true;
             }
         }
     }
     if (master.Simulation.FieldGeneratorInput && master.Simulation.Chamber.Central.CollectedMass > 0.1f)
     {
         ExposedLanceTime += timeMs;
     }
 }
Exemplo n.º 7
0
 public TestController(MassTestChamberTest master)
 {
     _master   = master;
     StageTime = new int[8];
 }