public void StartSimulation(bool startLoaded = false) { DnaEngine.LoadSysVars(); if (!startLoaded) { SimOpt.SimOpts.TotBorn = 0; } if (!startLoaded) { _shotsManager = new ShotsManager(); _bucketManager = new BucketManager(SimOpt.SimOpts); _robotsManager = new RobotsManager(_bucketManager, _shotsManager); } var standardRadius = SimOpt.SimOpts.FixedBotRadii ? Robot.RobSize / 2.0 : 415.475; _shotsManager.MaxBotShotSeparation = Math.Pow(standardRadius, 2) + Math.Pow(SimOpt.SimOpts.MaxVelocity * 2 + Robot.RobSize / 3.0, 2); if (!startLoaded) { LoadRobots(); } else { Vegs.CoolDown = -SimOpt.SimOpts.RepopCooldown; Vegs.TotalVegs = -1; } _active = true; Main(); }
private DataAccessHelper() { // load connection string var connectionString = NaoCoopApp.Properties.Settings.Default.NaoCoopDbConnectionString; // initialize managers RobotsManager = new RobotsManager(connectionString); OperationsManager = new OperationsManager(connectionString); OperationRobotsManager = new OperationRobotsManager(connectionString); OperationRobotStatesManager = new OperationRobotStatesManager(connectionString); StatesManager = new StatesManager(connectionString); StateTasksManager = new StateTasksManager(connectionString); TasksManager = new TasksManager(connectionString); SettingsManager = new SettingsManager(connectionString); RobotVersionsManager = new RobotVersionsManager(connectionString); RequirementsManager = new RequirementsManager(connectionString); OperationRequirementsManager = new OperationRequirementsManager(connectionString); ExecutionsManager = new ExecutionsManager(connectionString); ExecutionRobotsManager = new ExecutionRobotsManager(connectionString); UsersManager = new UsersManager(connectionString); }