1
0
Fork 0
forked from aly/qstbak
qstbak/Questionable.Model/Questionable.Model/ExpansionData.cs
2025-10-12 13:34:40 +10:00

72 lines
1.8 KiB
C#

using System.Collections.Generic;
using System.Numerics;
namespace Questionable.Model;
public static class ExpansionData
{
public static IReadOnlyDictionary<EExpansionVersion, string> ExpansionFolders = new Dictionary<EExpansionVersion, string>
{
{
EExpansionVersion.ARealmReborn,
"2.x - A Realm Reborn"
},
{
EExpansionVersion.Heavensward,
"3.x - Heavensward"
},
{
EExpansionVersion.Stormblood,
"4.x - Stormblood"
},
{
EExpansionVersion.Shadowbringers,
"5.x - Shadowbringers"
},
{
EExpansionVersion.Endwalker,
"6.x - Endwalker"
},
{
EExpansionVersion.Dawntrail,
"7.x - Dawntrail"
}
};
public static string ToFriendlyString(this EExpansionVersion expansionVersion)
{
if (expansionVersion == EExpansionVersion.ARealmReborn)
{
return "A Realm Reborn";
}
return expansionVersion.ToString();
}
public static string ToAbbreviation(this EExpansionVersion expansionVersion)
{
return expansionVersion switch
{
EExpansionVersion.ARealmReborn => "ARR",
EExpansionVersion.Heavensward => "HW",
EExpansionVersion.Stormblood => "SB",
EExpansionVersion.Shadowbringers => "ShB",
EExpansionVersion.Endwalker => "EW",
EExpansionVersion.Dawntrail => "DT",
_ => "?",
};
}
public static Vector4 GetExpansionColor(this EExpansionVersion expansionVersion)
{
return expansionVersion switch
{
EExpansionVersion.ARealmReborn => new Vector4(0.7f, 0.7f, 0.7f, 1f),
EExpansionVersion.Heavensward => new Vector4(0.4f, 0.6f, 0.9f, 1f),
EExpansionVersion.Stormblood => new Vector4(0.9f, 0.3f, 0.3f, 1f),
EExpansionVersion.Shadowbringers => new Vector4(0.5f, 0.4f, 0.7f, 1f),
EExpansionVersion.Endwalker => new Vector4(0.8f, 0.8f, 0.4f, 1f),
EExpansionVersion.Dawntrail => new Vector4(0.3f, 0.8f, 0.5f, 1f),
_ => new Vector4(0.5f, 0.5f, 0.5f, 1f),
};
}
}