4d0eb4d4f3
* Change to using SemVer builtin type * Remove SptVersion from config, remove redundant .ToString() * Update test mod, fix watermark string conversion
98 lines
2.3 KiB
C#
98 lines
2.3 KiB
C#
using SPTarkov.Server.Core.Models.Enums;
|
|
using SPTarkov.Server.Core.Models.Logging;
|
|
using Version = SemanticVersioning.Version;
|
|
|
|
namespace SPTarkov.Server.Core.Utils;
|
|
|
|
public static partial class ProgramStatics
|
|
{
|
|
private static bool _debug;
|
|
private static bool _compiled;
|
|
private static bool _mods;
|
|
|
|
public static void Initialize()
|
|
{
|
|
switch (BuildType)
|
|
{
|
|
case EntryType.RELEASE:
|
|
_debug = false;
|
|
_compiled = true;
|
|
_mods = true;
|
|
break;
|
|
case EntryType.BLEEDINGEDGE:
|
|
_debug = true;
|
|
_compiled = true;
|
|
_mods = false;
|
|
break;
|
|
case EntryType.DEBUG:
|
|
case EntryType.BLEEDINGEDGEMODS:
|
|
_debug = true;
|
|
_compiled = true;
|
|
_mods = true;
|
|
break;
|
|
case EntryType.LOCAL:
|
|
default:
|
|
#if DEBUG
|
|
_debug = true;
|
|
#endif
|
|
_compiled = false;
|
|
_mods = true;
|
|
break;
|
|
}
|
|
|
|
#if DEBUG
|
|
Console.WriteLine($"SPTarkov.Server.Core: entrytype: {BuildType}");
|
|
Console.WriteLine($"SPTarkov.Server.Core: debug: {_debug}");
|
|
Console.WriteLine($"SPTarkov.Server.Core: compiled: {_compiled}");
|
|
Console.WriteLine($"SPTarkov.Server.Core: mods: {_mods}");
|
|
#endif
|
|
}
|
|
|
|
// Public Static Getters
|
|
public static EntryType ENTRY_TYPE()
|
|
{
|
|
return BuildType;
|
|
}
|
|
|
|
public static bool DEBUG()
|
|
{
|
|
return _debug;
|
|
}
|
|
|
|
public static bool COMPILED()
|
|
{
|
|
return _compiled;
|
|
}
|
|
|
|
public static bool MODS()
|
|
{
|
|
return _mods;
|
|
}
|
|
|
|
public static Version SPT_VERSION()
|
|
{
|
|
return SptVersion;
|
|
}
|
|
|
|
public static string COMMIT()
|
|
{
|
|
return Commit;
|
|
}
|
|
|
|
public static double BUILD_TIME()
|
|
{
|
|
return BuildTime;
|
|
}
|
|
|
|
public static LogTextColor BUILD_TEXT_COLOR()
|
|
{
|
|
return BuildType switch
|
|
{
|
|
EntryType.RELEASE => LogTextColor.Yellow,
|
|
EntryType.LOCAL or EntryType.DEBUG => LogTextColor.Cyan,
|
|
EntryType.BLEEDINGEDGE or EntryType.BLEEDINGEDGEMODS => LogTextColor.Magenta,
|
|
_ => LogTextColor.Yellow,
|
|
};
|
|
}
|
|
}
|