-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSettingsLoader.cs
41 lines (37 loc) · 1.55 KB
/
SettingsLoader.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
using UnityEngine;
// ReSharper disable UnusedMember.Global
namespace KerbalDefaults
{
[KSPAddon(KSPAddon.Startup.Instantly, true)]
internal class SettingsLoader : MonoBehaviour
{
public void OnDestroy()
{
var data = UserSettings.ConfigNode;
Settings.SuitName = data.GetValue("suitName");
data.TryGetValue("suitName", ref Settings.SuitName);
var names = data.GetNode("Names");
if (names is object)
{
if( names.HasValue("preserveOriginalNames"))
{
names.TryGetValue("preserveOriginalNames", ref Settings.PreserveOriginalNames);
}
var veteranNames = names.GetNode("VETERANS");
if (veteranNames is null) return;
var jebediah = veteranNames.GetValue("Jebediah");
var bill = veteranNames.GetValue("Bill");
var bob = veteranNames.GetValue("Bob");
var valentina = veteranNames.GetValue("Valentina");
if (string.IsNullOrEmpty(jebediah) == false)
Settings.KerbalNames.Add("Jebediah", jebediah);
if (string.IsNullOrEmpty(bill) == false)
Settings.KerbalNames.Add("Bill", bill);
if (string.IsNullOrEmpty(bob) == false)
Settings.KerbalNames.Add("Bob", bob);
if (string.IsNullOrEmpty(valentina) == false)
Settings.KerbalNames.Add("Valentina", valentina);
}
}
}
}