mirror of
https://github.com/MaSzyna-EU07/StarterNG.git
synced 2026-11-07 22:32:27 +01:00
Three survive: why AppServices is hand-wired, the cp1250 registration trap, and the IsDieselEngine note carried over from Physics.cs.
51 lines
1.1 KiB
C#
51 lines
1.1 KiB
C#
using System;
|
|
using StarterNG.Domain.Sceneries;
|
|
|
|
using StarterNG.Classes;
|
|
|
|
namespace StarterNG.Application;
|
|
|
|
public sealed class AppState
|
|
{
|
|
public event Action? Changed;
|
|
|
|
private Scenery? _currentScenery;
|
|
private Trainset? _currentTrainset;
|
|
private string? _startingVehicleName;
|
|
|
|
public Scenery? CurrentScenery
|
|
{
|
|
get => _currentScenery;
|
|
set
|
|
{
|
|
if (ReferenceEquals(_currentScenery, value)) return;
|
|
_currentScenery = value;
|
|
Changed?.Invoke();
|
|
}
|
|
}
|
|
|
|
public Trainset? CurrentTrainset
|
|
{
|
|
get => _currentTrainset;
|
|
set
|
|
{
|
|
if (ReferenceEquals(_currentTrainset, value)) return;
|
|
_currentTrainset = value;
|
|
Changed?.Invoke();
|
|
}
|
|
}
|
|
|
|
public string? StartingVehicleName
|
|
{
|
|
get => _startingVehicleName;
|
|
set
|
|
{
|
|
if (_startingVehicleName == value) return;
|
|
_startingVehicleName = value;
|
|
Changed?.Invoke();
|
|
}
|
|
}
|
|
|
|
public void NotifyChanged() => Changed?.Invoke();
|
|
}
|