private static void Dispose() { AtsDebug.LogInfo($"Called: {nameof(Dispose)}()"); AtsSimulationEnvironment.Instance.OnDispose(); AtsSimulationEnvironment.DisposeInstance(); }
private static void Load() { AtsDebug.LogInfo($"Called: {nameof(Load)}()"); AtsSimulationEnvironment.CreateInstance(); AtsSimulationEnvironment.Instance.OnLoad(); }
public void Awake(AtsSimulationEnvironment environment) { DebugForm = new DmDebugForm(); AtsMotorNoise.Startup(); AtsSimulationEnvironment.Instance.MaximumDeltaTime = (1.0 / 15.0) * 1000.0; var moduleAddress = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString("SoundFilesRootPath"); if (!Path.IsPathRooted(moduleAddress)) { moduleAddress = Path.Combine(AtsModule.ModuleDirectoryPath, moduleAddress); } EngineNoise = AtsMotorNoiseImporter.LoadAsset(Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(EngineNoise) + "MotorNoiseTxtFileName")), Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(EngineNoise) + "SoundTxtFileName")), AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(EngineNoise) + "SoundTxtSectionName")); EngineNoise.Volume = 1.0f; GearNoise = AtsMotorNoiseImporter.LoadAsset(Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(GearNoise) + "MotorNoiseTxtFileName")), Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(GearNoise) + "SoundTxtFileName")), AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(GearNoise) + "SoundTxtSectionName")); GearNoise.Volume = 0.0f; TransferGear1Noise = AtsMotorNoiseImporter.LoadAsset(Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TransferGear1Noise) + "MotorNoiseTxtFileName")), Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TransferGear1Noise) + "SoundTxtFileName")), AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TransferGear1Noise) + "SoundTxtSectionName")); TransferGear1Noise.Volume = 0.0f; TransferGear2Noise = AtsMotorNoiseImporter.LoadAsset(Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TransferGear2Noise) + "MotorNoiseTxtFileName")), Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TransferGear2Noise) + "SoundTxtFileName")), AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TransferGear2Noise) + "SoundTxtSectionName")); TransferGear2Noise.Volume = 0.0f; ExhaustNoise = AtsMotorNoiseImporter.LoadAsset(Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(ExhaustNoise) + "MotorNoiseTxtFileName")), Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(ExhaustNoise) + "SoundTxtFileName")), AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(ExhaustNoise) + "SoundTxtSectionName")); ExhaustNoise.Volume = 0.0f; TurbineNoise = AtsMotorNoiseImporter.LoadAsset(Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TurbineNoise) + "MotorNoiseTxtFileName")), Path.Combine(moduleAddress, AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TurbineNoise) + "SoundTxtFileName")), AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsString(nameof(TurbineNoise) + "SoundTxtSectionName")); TurbineNoise.Volume = 1.0f; AtsSimulationEnvironment.Instance.PanelOperations.Add("FwLp", 8); AtsSimulationEnvironment.Instance.PanelOperations.Add("BwLp", 9); AtsSimulationEnvironment.Instance.PanelOperations.Add("ExBLp", 18); FuelController.FuelTable = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64Array("FuelTable"); var notchIdle = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32Array("NotchIdle"); var notchHensoku = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32Array("NotchHensoku"); var notchMission1 = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32Array("NotchMission1"); var notchMission2 = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32Array("NotchMission2"); Tacn.TractionPositionTable = new[] { notchIdle, notchHensoku, notchMission1, notchMission2 }; Transmission.TransitionVelocityPositive = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64Array("TransitionVelocityPositive"); Transmission.TransitionVelocityNegative = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64Array("TransitionVelocityNegative"); Transmission.EngineBrakeEndVelocity = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64("EngineBrakeEndVelocity"); Transmission.TransmissionSyncingStabilizeNotch = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32("TransmissionSyncingStabilizeNotch"); Transmission.TransmissionSyncingReductionConditionNotch = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32("TransmissionSyncingReductionConditionNotch"); Transmission.TransmissionSyncingReductionNotch = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32("TransmissionSyncingReductionNotch"); Transmission.EngineBlowUpRpm = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64("EngineBlowUpRpm"); MaximumRpm = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64("MaximumRpm"); MaximumGear1Rpm = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64("MaximumGear1Rpm"); MaximumGear2Rpm = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64("MaximumGear2Rpm"); MaximumGear2Velocity = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsFp64("MaximumGear2Velocity"); EngineBrakeEnableBrakeNotches = AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsInt32Array("EngineBrakeEnableBrakeNotches"); if (AtsSimulationEnvironment.Instance.PluginParameters.GetParameterAsBoolean("ShowDebugDialog")) { DebugForm.Show(); } }
internal static void CreateInstance() { Instance = new AtsSimulationEnvironment(); }
public static bool IsPressedKey(this AtsSimulationEnvironment self, AtsKey keyType) { return(self.CurrentKeyStates[keyType].IsDown); }
public static bool IsTriggeredKey(this AtsSimulationEnvironment self, AtsKey keyType) { return(self.CurrentKeyStates[keyType].IsDown && self.LastKeyStates[keyType].IsUp); }