mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-18 01:59:19 +02:00
Added sound of working retarder
This commit is contained in:
23
DynObj.cpp
23
DynObj.cpp
@@ -6064,7 +6064,11 @@ void TDynamicObject::LoadMMediaFile( std::string const &TypeName, std::string co
|
||||
|
||||
m_powertrainsounds.rsEngageSlippery.m_frequencyfactor /= ( 1 + MoverParameters->nmax );
|
||||
}
|
||||
else if( token == "linebreakerclose:" ) {
|
||||
else if (token == "retarder:") {
|
||||
m_powertrainsounds.retarder.deserialize(parser, sound_type::single, sound_parameters::amplitude | sound_parameters::frequency);
|
||||
m_powertrainsounds.retarder.owner(this);
|
||||
}
|
||||
else if( token == "linebreakerclose:" ) {
|
||||
m_powertrainsounds.linebreaker_close.deserialize( parser, sound_type::single );
|
||||
m_powertrainsounds.linebreaker_close.owner( this );
|
||||
}
|
||||
@@ -7297,7 +7301,7 @@ TDynamicObject::powertrain_sounds::position( glm::vec3 const Location ) {
|
||||
&inverter,
|
||||
&motor_relay, &dsbWejscie_na_bezoporow, &motor_parallel, &motor_shuntfield, &rsWentylator,
|
||||
&engine, &engine_ignition, &engine_shutdown, &engine_revving, &engine_turbo, &oil_pump, &fuel_pump, &water_pump, &water_heater, &radiator_fan, &radiator_fan_aux,
|
||||
&transmission, &rsEngageSlippery
|
||||
&transmission, &rsEngageSlippery, &retarder
|
||||
};
|
||||
for( auto sound : enginesounds ) {
|
||||
if( sound->offset() == nullvector ) {
|
||||
@@ -7564,6 +7568,21 @@ TDynamicObject::powertrain_sounds::render( TMoverParameters const &Vehicle, doub
|
||||
rsEngageSlippery.stop();
|
||||
}
|
||||
|
||||
if (Vehicle.hydro_R) {
|
||||
float speed = std::abs(Vehicle.hydro_R_Fill * Vehicle.hydro_R_n);
|
||||
|
||||
retarder
|
||||
.pitch(retarder.m_frequencyoffset + speed * retarder.m_frequencyfactor)
|
||||
.gain(retarder.m_amplitudeoffset + Vehicle.hydro_R_Fill * retarder.m_amplitudefactor);
|
||||
|
||||
if (retarder.gain() > 0.01) {
|
||||
retarder.play(sound_flags::exclusive | sound_flags::looping);
|
||||
}
|
||||
else {
|
||||
retarder.stop();
|
||||
}
|
||||
}
|
||||
|
||||
// motor sounds
|
||||
volume = 0.0;
|
||||
if( false == motors.empty() ) {
|
||||
|
||||
1
DynObj.h
1
DynObj.h
@@ -404,6 +404,7 @@ private:
|
||||
sound_source radiator_fan_aux { sound_placement::engine };
|
||||
sound_source transmission { sound_placement::engine };
|
||||
sound_source rsEngageSlippery { sound_placement::engine }; // moved from cab
|
||||
sound_source retarder { sound_placement::engine };
|
||||
|
||||
void position( glm::vec3 const Location );
|
||||
void render( TMoverParameters const &Vehicle, double const Deltatime );
|
||||
|
||||
Reference in New Issue
Block a user