mirror of
https://github.com/All-Of-Us-Mods/MiraAPI.git
synced 2026-10-25 12:46:46 +00:00
Add soft-support for Corsac Cosmetics
This commit is contained in:
1 parent
90bf402cbc
commit
0c0157fed2
5 files changed
+59
No files matched your search
@@ -41,6 +41,10 @@ public static class HatsTabPatches
|
||||
[HarmonyPrefix]
|
||||
public static bool OnEnablePrefix(HatsTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableHatsExist)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
__instance.currentHat = HatManager.Instance.GetHatById(DataManager.Player.Customization.Hat);
|
||||
var allHats = HatManager.Instance.GetUnlockedHats().ToImmutableList();
|
||||
|
||||
@@ -66,6 +70,10 @@ public static class HatsTabPatches
|
||||
[HarmonyPrefix]
|
||||
public static void UpdatePrefix(HatsTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableHatsExist)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (sortedHats.Count == 0) return;
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.LeftControl) || Input.GetKeyDown(KeyCode.RightControl) || Input.GetKeyDown(KeyCode.LeftArrow))
|
||||
|
||||
@@ -6,6 +6,7 @@ using Reactor.Utilities.Extensions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MiraAPI.Utilities.Assets;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using Object = UnityEngine.Object;
|
||||
@@ -44,6 +45,10 @@ public static class NameplatesTabPatches
|
||||
[HarmonyPrefix]
|
||||
public static bool OnEnablePrefix(NameplatesTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableNameplatesExist)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
__instance.plateId = HatManager.Instance.GetNamePlateById(DataManager.Player.Customization.namePlate).ProdId;
|
||||
|
||||
if (!SortedNameplates.ContainsKey("Vanilla")) AddRange(DestroyableSingleton<HatManager>.Instance.GetUnlockedNamePlates().Select(x => ("Vanilla", x)));
|
||||
@@ -60,6 +65,10 @@ public static class NameplatesTabPatches
|
||||
|
||||
public static void UpdatePrefix(NameplatesTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableNameplatesExist)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (Input.GetKeyDown(KeyCode.LeftControl) || Input.GetKeyDown(KeyCode.RightControl) || Input.GetKeyDown(KeyCode.LeftArrow))
|
||||
{
|
||||
PreviousPage(__instance);
|
||||
|
||||
@@ -6,6 +6,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Linq;
|
||||
using MiraAPI.Utilities.Assets;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using Object = UnityEngine.Object;
|
||||
@@ -36,6 +37,10 @@ public static class SkinsTabPatches
|
||||
[HarmonyPrefix]
|
||||
public static bool OnEnablePrefix(SkinsTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableSkinsExist)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
__instance.skinId = HatManager.Instance.GetSkinById(DataManager.Player.Customization.Skin).ProdId;
|
||||
var allSkins = HatManager.Instance.GetUnlockedSkins().ToImmutableList();
|
||||
|
||||
@@ -62,6 +67,10 @@ public static class SkinsTabPatches
|
||||
|
||||
public static void UpdatePrefix(SkinsTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableSkinsExist)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (Input.GetKeyDown(KeyCode.LeftControl) || Input.GetKeyDown(KeyCode.RightControl) || Input.GetKeyDown(KeyCode.LeftArrow))
|
||||
{
|
||||
PreviousPage(__instance);
|
||||
|
||||
@@ -5,6 +5,7 @@ using Reactor.Utilities.Extensions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MiraAPI.Utilities.Assets;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using Object = UnityEngine.Object;
|
||||
@@ -44,6 +45,10 @@ public static class VisorsTabPatches
|
||||
[HarmonyPrefix]
|
||||
public static bool OnEnablePrefix(VisorsTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableVisorsExist)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
__instance.visorId = HatManager.Instance.GetVisorById(DataManager.Player.Customization.Visor).ProdId;
|
||||
|
||||
if (!SortedVisors.ContainsKey("Vanilla")) AddRange(DestroyableSingleton<HatManager>.Instance.GetUnlockedVisors().Select(x => ("Vanilla", x)));
|
||||
@@ -60,6 +65,10 @@ public static class VisorsTabPatches
|
||||
|
||||
public static void UpdatePrefix(VisorsTab __instance)
|
||||
{
|
||||
if (!AddressablesLoader.AddressableVisorsExist)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (Input.GetKeyDown(KeyCode.LeftControl) || Input.GetKeyDown(KeyCode.RightControl) || Input.GetKeyDown(KeyCode.LeftArrow))
|
||||
{
|
||||
PreviousPage(__instance);
|
||||
|
||||
@@ -24,6 +24,26 @@ public static class AddressablesLoader
|
||||
private static readonly List<(string, string)> RegisteredNameplateKeys = [];
|
||||
private static readonly List<string> RegisteredSkinKeys = [];
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether hats have been loaded by the addressables system.
|
||||
/// </summary>
|
||||
public static bool AddressableHatsExist { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether visors have been loaded by the addressables system.
|
||||
/// </summary>
|
||||
public static bool AddressableVisorsExist { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether nameplates have been loaded by the addressables system.
|
||||
/// </summary>
|
||||
public static bool AddressableNameplatesExist { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether skins have been loaded by the addressables system.
|
||||
/// </summary>
|
||||
public static bool AddressableSkinsExist { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Registers a specific addressables package to load asynchronously at the start of the game, when possible.
|
||||
/// </summary>
|
||||
@@ -52,6 +72,7 @@ public static class AddressablesLoader
|
||||
return;
|
||||
}
|
||||
|
||||
AddressableHatsExist = true;
|
||||
RegisteredHatKeys.Add(addressablesKey);
|
||||
}
|
||||
|
||||
@@ -67,6 +88,7 @@ public static class AddressablesLoader
|
||||
return;
|
||||
}
|
||||
|
||||
AddressableSkinsExist = true;
|
||||
RegisteredSkinKeys.Add(addressablesKey);
|
||||
}
|
||||
|
||||
@@ -83,6 +105,7 @@ public static class AddressablesLoader
|
||||
return;
|
||||
}
|
||||
|
||||
AddressableNameplatesExist = true;
|
||||
RegisteredNameplateKeys.Add((addressablesKey, groupTitle));
|
||||
}
|
||||
|
||||
@@ -99,6 +122,7 @@ public static class AddressablesLoader
|
||||
return;
|
||||
}
|
||||
|
||||
AddressableVisorsExist = true;
|
||||
RegisteredVisorKeys.Add((addressablesKey, groupTitle));
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user