diff --git a/src/RealTime/Config/RealTimeConfig.cs b/src/RealTime/Config/RealTimeConfig.cs
index b802baf8082f6ada9545cd50b7eff6703a5c8a92..60901c4f2d806d903ef721d3146bf9be7b109020 100755
--- a/src/RealTime/Config/RealTimeConfig.cs
+++ b/src/RealTime/Config/RealTimeConfig.cs
@@ -15,7 +15,7 @@ namespace RealTime.Config
public sealed class RealTimeConfig : IConfiguration
{
/// The storage ID for the configuration objects.
- public const string StorageId = "RealTimeConfiguration";
+ public const string StorageId = "PandemicConfiguration";
private const int LatestVersion = 4;
@@ -110,7 +110,7 @@ namespace RealTime.Config
/// at night. All buildings higher than this value will not switch the lights off.
///
[ConfigItem("1General", "1Other", 4)]
- [ConfigItemSlider(0, 100f, 5f, ValueType = SliderValueType.Default)]
+ [ConfigItemSlider(0, 100, 5, ValueType = SliderValueType.Default)]
public float SwitchOffLightsMaxHeight { get; set; }
/// Gets or sets a value indicating whether a citizen can abandon a journey when being too long in
@@ -161,12 +161,12 @@ namespace RealTime.Config
/// Gets or sets the indoor transmission probability.
[ConfigItem("DiseaseProperties", 1)]
- [ConfigItemSlider(0f, 100f, 1f, ValueType = SliderValueType.Percentage)]
+ [ConfigItemSlider(0, 100, 1, ValueType = SliderValueType.Percentage)]
public uint IndoorDiseaseTransmissionProbability { get; set; }
/// Gets or sets the outdoor transmission probability.
[ConfigItem("DiseaseProperties", 2)]
- [ConfigItemSlider(0f, 100f, 1f, ValueType = SliderValueType.Percentage)]
+ [ConfigItemSlider(0, 100, 1, ValueType = SliderValueType.Percentage)]
public uint OutdoorDiseaseTransmissionProbability { get; set; }
/// Gets or sets the transmission range.
@@ -176,7 +176,7 @@ namespace RealTime.Config
/// Gets or sets the ratio of initial infections.
[ConfigItem("DiseaseProperties", 4)]
- [ConfigItemSlider(0f, 100, 1, ValueType = SliderValueType.Percentage)]
+ [ConfigItemSlider(0, 100, 1, ValueType = SliderValueType.Percentage)]
public float DiseaseStartInfectionRatio { get; set; }
///
diff --git a/src/RealTime/Core/RealTimeMod.cs b/src/RealTime/Core/RealTimeMod.cs
index a7c13078c96e05dca444df2c0a660ac8d6e6f7d1..0ce35c12c065209e6d2d93394cc70739acb07d38 100755
--- a/src/RealTime/Core/RealTimeMod.cs
+++ b/src/RealTime/Core/RealTimeMod.cs
@@ -152,6 +152,8 @@ namespace RealTime.Core
{
CheckCompatibility(compatibility);
}
+
+ configProvider.SaveDefaultConfiguration();
}
///
diff --git a/src/RealTime/Pandemic/PandemicManager.cs b/src/RealTime/Pandemic/PandemicManager.cs
index 940132f3da3747bd65e21f3869707e01bef9d0ba..30cd679793785437a241dcdb2cc6a313f800c5e3 100755
--- a/src/RealTime/Pandemic/PandemicManager.cs
+++ b/src/RealTime/Pandemic/PandemicManager.cs
@@ -124,7 +124,7 @@ namespace RealTime.Pandemic
{
if (activeInfections.ContainsKey(citizenID))
{
- long infectedTime = activeInfections[citizenID] - (currentDateTime.Ticks / 10000);
+ long infectedTime = (currentDateTime.Ticks / 10000) - activeInfections[citizenID];
double infectedTimeInDays = infectedTime / 1000.0 / 3600.0 / 24.0;
if (Config.StartInfection <= infectedTimeInDays && infectedTimeInDays <= Config.EndInfection)
{
@@ -183,7 +183,7 @@ namespace RealTime.Pandemic
if (CitizenProxy.IsSick(ref citizens[citizenID]) && activeInfections.ContainsKey(citizenID))
{
- long infectedTime = activeInfections[citizenID] - (currentDateTime.Ticks / 10000);
+ long infectedTime = (currentDateTime.Ticks / 10000) - activeInfections[citizenID];
double infectedTimeInDays = infectedTime / 1000.0 / 3600.0 / 24.0;
if (infectedTimeInDays > Config.DiseaseDuration)
{
diff --git a/src/RealTime/Simulation/TimeAdjustment.cs b/src/RealTime/Simulation/TimeAdjustment.cs
old mode 100644
new mode 100755
index 184f0cb7f5706f054c1f86ef8e92d43aea5adbbb..b21ffe083b0870f6b2abfec6959cd099458ed607
--- a/src/RealTime/Simulation/TimeAdjustment.cs
+++ b/src/RealTime/Simulation/TimeAdjustment.cs
@@ -1,4 +1,4 @@
-// Copyright (c) dymanoid. All rights reserved.
+// Copyright (c) dymanoid. All rights reserved.
namespace RealTime.Simulation
{
@@ -150,7 +150,7 @@ namespace RealTime.Simulation
var originalDate = sm.m_ThreadingWrapper.simulationTime;
sm.m_timePerFrame = useCustomTimePerFrame
- ? new TimeSpan(24L * 3600L * 10_000_000L / framesPerDay)
+ ? new TimeSpan(24L * 3600L * 400_000_000L / framesPerDay)
: vanillaTimePerFrame;
SetGameDateTime(originalDate);
@@ -164,4 +164,4 @@ namespace RealTime.Simulation
return 1u << (int)(RealtimeSpeed - offset);
}
}
-}
\ No newline at end of file
+}