Ejemplo n.º 1
0
 public void OnDestroy()
 {
     DebugForm.Close();
     AtsMotorNoise.Cleanup();
 }
Ejemplo n.º 2
0
        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();
            }
        }