summaryrefslogtreecommitdiff
path: root/Thronefall_1_57/Decompile/I2.Loc/BaseSpecializationManager.cs
blob: bb9164048c02f42cf4ba136114dfef6200e8895b (plain)
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
42
43
44
45
46
47
48
49
50
51
52
using System;
using System.Collections.Generic;

namespace I2.Loc;

public class BaseSpecializationManager
{
	public string[] mSpecializations;

	public Dictionary<string, string> mSpecializationsFallbacks;

	public virtual void InitializeSpecializations()
	{
		mSpecializations = new string[12]
		{
			"Any", "PC", "Touch", "Controller", "VR", "XBox", "PS4", "OculusVR", "ViveVR", "GearVR",
			"Android", "IOS"
		};
		mSpecializationsFallbacks = new Dictionary<string, string>(StringComparer.Ordinal)
		{
			{ "XBox", "Controller" },
			{ "PS4", "Controller" },
			{ "OculusVR", "VR" },
			{ "ViveVR", "VR" },
			{ "GearVR", "VR" },
			{ "Android", "Touch" },
			{ "IOS", "Touch" }
		};
	}

	public virtual string GetCurrentSpecialization()
	{
		if (mSpecializations == null)
		{
			InitializeSpecializations();
		}
		return "PC";
	}

	public virtual string GetFallbackSpecialization(string specialization)
	{
		if (mSpecializationsFallbacks == null)
		{
			InitializeSpecializations();
		}
		if (mSpecializationsFallbacks.TryGetValue(specialization, out var value))
		{
			return value;
		}
		return "Any";
	}
}