Beispiel #1
0
        public static void CalculationOfIndicators(object obj)
        {
            int  id   = (int)obj;
            Race race = _context.Races.Where(s => s.RaceID == id).FirstOrDefault();

            if (race.Cars != null)
            {
                for (int i = 0; i < race.Cars.Count; ++i)
                {
                    //----ДЛЯ БУДУЩЕ МОДИФИКАЦИИ-----

                    //int breakpoint = race.Cars[i].AccelerationInterval + race.Cars[i].DurationOfAcceleration;
                    //if (race.Cars[i].AccelerationInterval >= _timerinterval)
                    //{
                    //    race.Cars[i].Speed += race.Cars[i].Speed * race.Cars[i].DeltaAcceleration/100;
                    //}
                    //if (breakpoint <= _timerinterval)
                    //{
                    //    race.Cars[i].Speed -= race.Cars[i].Speed * race.Cars[i].DeltaAcceleration/100;
                    //    race.Cars[i].AccelerationInterval += race.Cars[i].AccelerationInterval;
                    //}


                    race.Cars[i].Distance = (race.Cars[i].Speed * increasinginterval) / 3600000;
                    if (race.Cars[i].Distance >= race.Distance)
                    {
                        DisposeTimer();
                    }
                }
                increasinginterval += _timerinterval;
                _context.SaveChanges();
            }
        }
Beispiel #2
0
        public ActionResult CreateRace(Race race, string action)
        {
            PathAction.GetSegmentUrl(@Request.Url.Segments[3]);

            if (ModelState.IsValid)
            {
                if (action == "Create")
                {
                    db.Races.Add(race);
                    db.SaveChanges();
                    return(RedirectToAction("CreateRace", new { id = race.RaceID }));
                }
                else if (action == "Start Race")
                {
                    BackgroundThread bct = new BackgroundThread(PathAction.ID, db);
                    return(RedirectToAction("ListOfRaces"));
                }
            }
            return(View(race));
        }