17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-02 22:06:21 +01:00

Merge remote-tracking branch 'jano211/siec-radio' into feat/renderers-cleanup

This commit is contained in:
2026-10-26 16:36:36 +01:00
57 changed files with 23957 additions and 22 deletions

View File

@@ -19,6 +19,7 @@ http://mozilla.org/MPL/2.0/.
#include "vehicle/Driver.h"
#include "utilities/Logs.h"
#include "utilities/utilities.h"
#include "world/catenary_span.h"
#include "Console.h"
#include "scripting/PyInt.h"
#include "utilities/Timer.h"
@@ -199,6 +200,24 @@ bool global_settings::ConfigParseAudio(cParser& Parser, const std::string& token
return true;
}
if (token == "fmradio.enabled")
{
ParseOne(Parser, fmradio_enabled);
return true;
}
if (token == "fmradio.cleansound")
{
ParseOne(Parser, fmradio_cleansound);
return true;
}
if (token == "fmradio.stations")
{
fmradio_stations = Parser.getToken<std::string>(false);
return true;
}
if (token == "sound.volume.vehicle")
{
ParseOneClamped(Parser, VehicleVolume, 0.f, 1.f);
@@ -609,6 +628,20 @@ bool global_settings::ConfigParseSimulation(cParser& Parser, const std::string&
return true;
}
if (token == "catenary.procedural")
{
ParseOne(Parser, CatenaryProcedural);
return true;
}
if (token == "catenary.solidrange")
{
// zasięg rysowania przewodów sieci trakcyjnej jako brył [m]; 0 wyłącza
ParseOne(Parser, CatenarySettings.solid_range);
CatenarySettings.solid_range = std::clamp(CatenarySettings.solid_range, 0.f, 2000.f);
return true;
}
if (token == "splinefidelity")
{
float splinefidelity = 0.f;
@@ -2046,6 +2079,9 @@ global_settings::export_as_text( std::ostream &Output ) const {
export_as_text( Output, "sound.volume.positional", EnvironmentPositionalVolume );
export_as_text( Output, "sound.volume.ambient", EnvironmentAmbientVolume );
export_as_text( Output, "sound.asyncload", AudioAsyncLoad );
export_as_text( Output, "fmradio.enabled", fmradio_enabled );
export_as_text( Output, "fmradio.cleansound", fmradio_cleansound );
export_as_text( Output, "fmradio.stations", fmradio_stations );
export_as_text( Output, "physicslog", WriteLogFlag );
export_as_text( Output, "fullphysics", FullPhysics );
export_as_text( Output, "physics.sleepheld", physics_sleepheld );
@@ -2098,6 +2134,8 @@ global_settings::export_as_text( std::ostream &Output ) const {
export_as_text( Output, "gfx.smoke", Smoke );
export_as_text( Output, "gfx.smoke.fidelity", SmokeFidelity );
export_as_text( Output, "smoothtraction", bSmoothTraction );
export_as_text( Output, "catenary.procedural", CatenaryProcedural );
export_as_text( Output, "catenary.solidrange", CatenarySettings.solid_range );
export_as_text( Output, "splinefidelity", SplineFidelity );
export_as_text( Output, "sleeperdistance", SleeperDistance );
export_as_text( Output, "sleepers3d", ( Sleepers3D.empty() ? std::string{ "none" } : Sleepers3D ) );

View File

@@ -78,6 +78,7 @@ struct global_settings {
// filesystem
bool bLoadTraction{ true };
bool bSmoothTraction{ true };
bool CatenaryProcedural{ true }; // przęsła z dopiskiem "type" rysowane wg typu sieci (lina nośna, wieszaki i Y liczone)
bool CreateSwitchTrackbeds{ true };
std::string szTexturesTGA{ ".tga" }; // lista tekstur od TGA
std::string szTexturesDDS{ ".dds" }; // lista tekstur od DDS
@@ -241,6 +242,10 @@ struct global_settings {
int audio_max_sources = 30;
std::string AudioRenderer;
bool AudioAsyncLoad{ false }; // sound files are decoded by worker threads
// broadcast radio receiver
bool fmradio_enabled{ true }; // allows cab radio receivers to play internet radio streams
bool fmradio_cleansound{ false }; // disables simulation of the receiver speaker
std::string fmradio_stations{ "fmradio.txt" }; // list of stations available to the receivers
// input
float fMouseXScale{ 1.5f };
float fMouseYScale{ 0.2f };