Skip to content

Commit ac593c0

Browse files
fix: load the settings fully in main menu
1 parent 97cff39 commit ac593c0

File tree

5 files changed

+10
-5
lines changed

5 files changed

+10
-5
lines changed

COTL_API.Common.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project>
22
<PropertyGroup>
33
<TargetFramework>net472</TargetFramework>
4-
<Version>0.2.9</Version>
4+
<Version>0.3.0</Version>
55
<LangVersion>latest</LangVersion>
66
<DebugType>portable</DebugType>
77
<IsPackable>true</IsPackable>

COTL_API/CustomSkins/CustomSkinManager.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public static partial class CustomSkinManager
3232
internal static readonly Dictionary<string, Skin> TarotSkins = [];
3333
internal static readonly Dictionary<string, Sprite> TarotSprites = [];
3434
internal static readonly Dictionary<string, Sprite> TarotBackSprites = [];
35-
internal static readonly Dictionary<string, SkeletonDataAsset> CustomPlayerSpines = [];
35+
internal static readonly Dictionary<string, SkeletonDataAsset?> CustomPlayerSpines = [];
3636
internal static string SelectedSpine = "";
3737
internal static int NumGenericAtlases;
3838

@@ -539,7 +539,7 @@ public static partial class CustomSkinManager
539539
internal static Dictionary<PlayerType, List<Skin?>?> PlayerSkinOverride { get; set; } = [];
540540
internal static Dictionary<PlayerType, PlayerBleat?> PlayerBleatOverride { get; set; } = [];
541541

542-
public static void AddPlayerSpine(string name, SkeletonDataAsset skeletonDataAsset, List<string> options)
542+
public static void AddPlayerSpine(string name, SkeletonDataAsset? skeletonDataAsset, List<string> options)
543543
{
544544
if (options.Count == 0)
545545
{
@@ -560,7 +560,7 @@ public static void AddPlayerSpine(string name, SkeletonDataAsset skeletonDataAss
560560
public static void ChangeSelectedPlayerSpine(string name)
561561
{
562562
// var splitted = name.Split(['/'], 2);
563-
if (!CustomPlayerSpines.ContainsKey(name)) return;
563+
if (!CustomPlayerSpines.ContainsKey(name) || CustomPlayerSpines[name] == null) return;
564564
SelectedSpine = name;
565565

566566
LogInfo($"Selected Spine: {SelectedSpine}");

COTL_API/CustomSkins/CustomSkinPatches.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,13 +236,15 @@ private static bool PlayerFarming_Start(PlayerFarming __instance)
236236

237237
if (SelectedSpine == "") return true;
238238
if (!CustomPlayerSpines.ContainsKey(SelectedSpine)) return true;
239+
if (CustomPlayerSpines[SelectedSpine] == null) return true;
239240

240241
var selectedSpineSkin = SelectedSpine.Split(['/'], 2)[1];
241242
var runtimeSkeletonAsset = CustomPlayerSpines[SelectedSpine];
242243
PlayerFarming.Instance.Spine.skeletonDataAsset = runtimeSkeletonAsset;
243244
PlayerFarming.Instance.Spine.initialSkinName = selectedSpineSkin;
244245
PlayerFarming.Instance.Spine.Initialize(true);
245246
LogInfo("Loaded Custom Spine " + SelectedSpine + " with skin " + selectedSpineSkin);
247+
246248
return true;
247249
}
248250

COTL_API/Plugin.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ private void Awake()
119119
CustomSkinManager.AddPlayerSkin(new OverridingPlayerSkin("Snake",
120120
() => PlayerFarming.Instance.Spine.Skeleton.Data.FindSkin("Snake")));
121121

122+
//This is to load the dropdown as it needs at least 1 entry
123+
CustomSkinManager.AddPlayerSpine("Placeholder", null, ["Placeholder Selection"]);
124+
122125
LambFleeceSkinSettings = CustomSettingsManager.AddSavedDropdown("API", MyPluginInfo.PLUGIN_GUID,
123126
"Lamb Fleece Skin",
124127
"Lamb",

thunderstore.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ schemaVersion = "0.0.1"
44
[package]
55
namespace = "xhayper"
66
name = "COTL_API"
7-
versionNumber = "0.2.9"
7+
versionNumber = "0.3.0"
88
description = "A library to easily interact with Cult of the Lamb"
99
websiteUrl = "https://cotl-api.vercel.app/"
1010
containsNsfwContent = false

0 commit comments

Comments
 (0)