Use TryParse instead

This commit is contained in:
Noah Pilarski 2022-09-19 02:38:56 -04:00
parent a799eaf0f6
commit d565ac52d1
5 changed files with 10 additions and 14 deletions

View File

@ -185,12 +185,12 @@ namespace NewHorizons.Builder.Props
private static SignalFrequency StringToFrequency(string str)
{
return EnumUtils.IsDefined<SignalFrequency>(str) ? EnumUtils.Parse(str, SignalFrequency.Default) : AddFrequency(str);
return EnumUtils.TryParse<SignalFrequency>(str, out SignalFrequency frequency) ? frequency : AddFrequency(str);
}
public static SignalName StringToSignalName(string str)
{
return EnumUtils.IsDefined<SignalName>(str) ? EnumUtils.Parse(str, SignalName.Default) : AddSignalName(str);
return EnumUtils.TryParse<SignalName>(str, out SignalName name) ? name : AddSignalName(str);
}
}
}

View File

@ -191,9 +191,9 @@ namespace NewHorizons.Builder.ShipLog
if (_entryIdToRawName.ContainsKey(entry._id))
{
var raw = _entryIdToRawName[entry._id];
if (EnumUtils.IsDefined<CuriosityName>(raw))
if (EnumUtils.TryParse<CuriosityName>(raw, out CuriosityName name))
{
entry._curiosity = EnumUtils.Parse<CuriosityName>(raw);
entry._curiosity = name;
}
else
{

View File

@ -41,14 +41,10 @@ namespace NewHorizons.Handlers
try
{
NomaiRemoteCameraPlatform.ID platformID;
if (_customPlatformIDs.TryGetValue(id, out platformID))
if (_customPlatformIDs.TryGetValue(id, out platformID) || EnumUtils.TryParse<NomaiRemoteCameraPlatform.ID>(id, out platformID))
{
return platformID;
}
else if (EnumUtils.IsDefined<NomaiRemoteCameraPlatform.ID>(id))
{
return EnumUtils.Parse<NomaiRemoteCameraPlatform.ID>(id);
}
else
{
return AddCustomPlatformID(id);

View File

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net48</TargetFramework>
<LangVersion>default</LangVersion>
@ -16,7 +16,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="HarmonyX" Version="2.10.0" />
<PackageReference Include="OWML" Version="2.6.0" />
<PackageReference Include="OWML" Version="2.7.0" />
<PackageReference Include="OuterWildsGameLibs" Version="1.1.13.393" />
<Reference Include="../Lib/System.ComponentModel.Annotations.dll" />
</ItemGroup>

View File

@ -35,11 +35,11 @@ namespace NewHorizons.Utility
}
}
try
if (EnumUtils.TryParse<AudioType>(audio, out AudioType type))
{
source._audioLibraryClip = EnumUtils.Parse<AudioType>(audio);
source._audioLibraryClip = type;
}
catch
else
{
var audioClip = SearchUtilities.FindResourceOfTypeAndName<AudioClip>(audio);
if (audioClip == null) Logger.Log($"Couldn't find audio clip {audio}");