Master scenario events list injection (MSELI) allows you to create arbitrary events in the simulation and provide them with execution orders and conditions for their execution during the scenario.
Master scenario events list injection (MSELI) allows you to create arbitrary events in the simulation and provide them with execution orders and conditions for their execution during the scenario.
For instance, an IED detonates in a village after an agent approaches its location, or a dust storm occurs after 5 minutes of the simulation running.
Reference the following examples for your simulation:
// Add functionality to scenariosystem
// Temporary make direct call instead:
Globals.api.worldStateSystem.SetTimeOfDay(new DateTime(2021, 5, 22, 10, 43, 21));
// Add functionality to scenariosystem
// DateTime scenarioStart = Globals.api.scenarioSystem.GetScenarioStartTime();
// Temporary fix:
DateTime scenarioStart = Globals.api.worldStateSystem.GetTimeOfDay();
// Craft some simple timed msels
ScenarioEvent e1 = new ExplosionScenarioEvent(scenarioStart.AddSeconds(5), new RideVector3(1, 2, 3));
// Add functionality to scenario system
Globals.api.scenarioSystem.AddScenarioEvent(e1);
Assets/Ride/Examples/Scenarios/ExampleMSELI.unity
Refer to ExampleMSELI.cs for the simple timed events used in the example scene.