Skip to content

Commit b668a99

Browse files
committed
Automatic merge of T1.5.1-976-g502cbbef0 and 16 pull requests
- Pull request #799 at dfc715e: Consolidated wind simulation - Pull request #839 at d00beb9: First phase of https://blueprints.launchpad.net/or/+spec/additional-cruise-control-parameters - Pull request #876 at f92de76: docs: add source for documents previously on website to source Documentation folder - Pull request #882 at b3f83ed: Blueprint/train car operations UI window - Pull request #891 at 9a1d6b2: Auto save - Pull request #892 at 1f5ba4c: Signal Function OPP_SIG_ID_TRAINPATH - Pull request #896 at 5866028: First implementation of https://blueprints.launchpad.net/or/+spec/specific-sounds-for-ai-trains - Pull request #900 at c27f32d: DMI updates - Pull request #903 at 3e390b8: Downloading route content (Github, zip) - Pull request #912 at cda1d74: New Triple Valve Features Vol. 2 - Pull request #922 at abe2e52: Autopilot for timetable mode - Pull request #943 at fb1f454: Dynamic Brakes Behavior & Display Improvements - Pull request #945 at f5872fd: Display tractive force instead of compensated out force - Pull request #946 at 66f836c: Advanced track sounds - Pull request #948 at a687981: Fix Cycling Lights - Pull request #949 at c2a5d32: Oil Burning Locomotive
18 parents 03daab9 + 502cbbe + dfc715e + d00beb9 + f92de76 + b3f83ed + 9a1d6b2 + 1f5ba4c + 5866028 + c27f32d + 3e390b8 + cda1d74 + abe2e52 + fb1f454 + f5872fd + 66f836c + a687981 + c2a5d32 commit b668a99

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

Source/Orts.Formats.Msts/SoundManagmentFile.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ public struct CurvePoint
201201

202202
public class VolumeCurve
203203
{
204-
public enum Controls { None, DistanceControlled, SpeedControlled, Variable1Controlled, Variable1_2Controlled, Variable1_3Controlled, Variable1_4Controlled, Variable2Controlled, Variable2BoosterControlled, Variable3Controlled, BrakeCylControlled, CurveForceControlled, AngleofAttackControlled, CarFrictionControlled, WheelRpMControlled, TrackJointControlled, SwitchControlled };
204+
public enum Controls { None, DistanceControlled, SpeedControlled, Variable1Controlled, Variable1_2Controlled, Variable1_3Controlled, Variable1_4Controlled, Variable2Controlled, Variable2BoosterControlled, Variable3Controlled, BrakeCylControlled, CurveForceControlled, AngleofAttackControlled, CarFrictionControlled, WheelRpMControlled, TrackJointControlled, SwitchControlled, TunnelControlled };
205205

206206
public Controls Control = Controls.None;
207207
public float Granularity = 1.0f;
@@ -230,6 +230,7 @@ public VolumeCurve(STFReader stf)
230230
case "wheelrpmcontrolled": Control = Controls.WheelRpMControlled; break;
231231
case "trackjointcontrolled": Control = Controls.TrackJointControlled; break;
232232
case "switchcontrolled": Control = Controls.SwitchControlled; break;
233+
case "tunnelcontrolled": Control = Controls.TunnelControlled; break;
233234
default: STFException.TraceWarning(stf, "Crash expected: Skipped unknown VolumeCurve/Frequencycurve type " + type); stf.SkipRestOfBlock(); return;
234235
}
235236
stf.ParseBlock(new STFReader.TokenProcessor[] {
@@ -351,7 +352,7 @@ public Discrete_Trigger(STFReader f)
351352
public class Variable_Trigger : Trigger
352353
{
353354
public enum Events { Speed_Inc_Past, Speed_Dec_Past, Distance_Inc_Past, Distance_Dec_Past,
354-
Variable1_Inc_Past, Variable1_2_Inc_Past, Variable1_3_Inc_Past, Variable1_4_Inc_Past, Variable1_Dec_Past, Variable1_2_Dec_Past, Variable1_3_Dec_Past, Variable1_4_Dec_Past, Variable2_Inc_Past, Variable2_Dec_Past, Variable3_Inc_Past, Variable3_Dec_Past, BrakeCyl_Inc_Past, BrakeCyl_Dec_Past, CurveForce_Inc_Past, CurveForce_Dec_Past, AngleofAttack_Inc_Past, AngleofAttack_Dec_Past, WheelRpM_Dec_Past, WheelRPM_Inc_Past, TrackJoints_Inc_Past, TrackJoints_Dec_Past, CarOnSwitch_Inc_Past, CarOnSwitch_Dec_Past,
355+
Variable1_Inc_Past, Variable1_2_Inc_Past, Variable1_3_Inc_Past, Variable1_4_Inc_Past, Variable1_Dec_Past, Variable1_2_Dec_Past, Variable1_3_Dec_Past, Variable1_4_Dec_Past, Variable2_Inc_Past, Variable2_Dec_Past, Variable3_Inc_Past, Variable3_Dec_Past, BrakeCyl_Inc_Past, BrakeCyl_Dec_Past, CurveForce_Inc_Past, CurveForce_Dec_Past, AngleofAttack_Inc_Past, AngleofAttack_Dec_Past, WheelRpM_Dec_Past, WheelRPM_Inc_Past, TrackJoints_Inc_Past, TrackJoints_Dec_Past, CarOnSwitch_Inc_Past, CarOnSwitch_Dec_Past, CarInTunnel_Inc_Past, CarInTunnel_Dec_Past,
355356
};
356357

357358
public Events Event;
@@ -405,6 +406,8 @@ public Variable_Trigger(STFReader f)
405406
case "trackjoints_dec_past": Event = Events.TrackJoints_Dec_Past; break;
406407
case "caronswitch_inc_past": Event = Events.CarOnSwitch_Inc_Past; break;
407408
case "caronswitch_dec_past": Event = Events.CarOnSwitch_Dec_Past; break;
409+
case "carintunnel_inc_past": Event = Events.CarInTunnel_Inc_Past; break;
410+
case "carintunnel_dec_past": Event = Events.CarInTunnel_Dec_Past; break;
408411
}
409412

410413

Source/RunActivity/Viewer3D/Sound.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1592,6 +1592,9 @@ private float ReadValue(Orts.Formats.Msts.VolumeCurve.Controls control, MSTSWago
15921592
else
15931593
switchPresent = 0;
15941594
return switchPresent;
1595+
case Orts.Formats.Msts.VolumeCurve.Controls.TunnelControlled:
1596+
var tunnelSize = car.CarTunnelData.numTunnelPaths;
1597+
return tunnelSize;
15951598

15961599
default: return 0;
15971600
}
@@ -2031,6 +2034,7 @@ public override void TryTrigger()
20312034
case Orts.Formats.Msts.Variable_Trigger.Events.WheelRpM_Dec_Past:
20322035
case Orts.Formats.Msts.Variable_Trigger.Events.TrackJoints_Dec_Past:
20332036
case Orts.Formats.Msts.Variable_Trigger.Events.CarOnSwitch_Dec_Past:
2037+
case Orts.Formats.Msts.Variable_Trigger.Events.CarInTunnel_Dec_Past:
20342038
if (newValue < SMS.Threshold)
20352039
{
20362040
Signaled = true;
@@ -2052,6 +2056,7 @@ public override void TryTrigger()
20522056
case Orts.Formats.Msts.Variable_Trigger.Events.WheelRPM_Inc_Past:
20532057
case Orts.Formats.Msts.Variable_Trigger.Events.TrackJoints_Inc_Past:
20542058
case Orts.Formats.Msts.Variable_Trigger.Events.CarOnSwitch_Inc_Past:
2059+
case Orts.Formats.Msts.Variable_Trigger.Events.CarInTunnel_Inc_Past:
20552060
if (newValue > SMS.Threshold)
20562061
{
20572062
Signaled = true;
@@ -2162,6 +2167,14 @@ private float ReadValue()
21622167
else
21632168
switchPresent = 0;
21642169
return switchPresent;
2170+
case Orts.Formats.Msts.Variable_Trigger.Events.CarInTunnel_Dec_Past:
2171+
case Orts.Formats.Msts.Variable_Trigger.Events.CarInTunnel_Inc_Past:
2172+
var inTunnel = 0;
2173+
if (car.CarTunnelData.FrontPositionBeyondStartOfTunnel.HasValue) // Car is in tunnel
2174+
inTunnel = 1;
2175+
else
2176+
inTunnel = 0;
2177+
return inTunnel;
21652178

21662179
default:
21672180
return 0;

0 commit comments

Comments
 (0)