Hand-model the CRI ADX2 (audio) + CRI Mana (movie) SDK surface exercised by the copied audio/movie engine files (AudioManager/Voice/Se/Effect/MoviePlayer). No decomp source exists; signatures mirror the real CRI API as called at the sites (arg counts/types from the call sites). All no-op, cosmetic, off the battle path. Reconciled with the empty CRI stubs already in SdkStubs (CriAtomExAcb/CriAtomExPlayback/CriManaMovieMaterial). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
51 lines
2.3 KiB
C#
51 lines
2.3 KiB
C#
// AUTHORED SHIM (not copied). Third-party SDK surface swept into the copy closure by
|
|
// non-battle files (audio/movie/anti-cheat/analytics/spine). None is on the battle-
|
|
// resolution path. Namespaces must merely exist (anchors); the few types referenced
|
|
// by member get a minimal no-op surface. Members grow only as the compile loop demands.
|
|
|
|
// ---- CriWare audio + movie (CRI types with members live in External/CriShim.cs) ----
|
|
namespace CriWare
|
|
{
|
|
internal class _ShimAnchor { }
|
|
}
|
|
namespace CriWare.CriMana
|
|
{
|
|
public class CriManaMovieMaterial : UnityEngine.MonoBehaviour
|
|
{
|
|
public enum MaxFrameDrop { Disable, One, Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten }
|
|
public MaxFrameDrop maxFrameDrop;
|
|
public Player player { get; } = new Player();
|
|
}
|
|
internal class _ShimAnchor { }
|
|
}
|
|
|
|
// ---- CodeStage anti-cheat obscured prefs (static k/v facade; no persistence headless) ----
|
|
namespace CodeStage.AntiCheat.ObscuredTypes
|
|
{
|
|
public static class ObscuredPrefs
|
|
{
|
|
public static bool HasKey(string key) => false;
|
|
public static void DeleteKey(string key) { }
|
|
public static void DeleteAll() { }
|
|
public static void Save() { }
|
|
public static int GetInt(string key, int defaultValue = 0) => defaultValue;
|
|
public static float GetFloat(string key, float defaultValue = 0f) => defaultValue;
|
|
public static string GetString(string key, string defaultValue = "") => defaultValue;
|
|
public static void SetInt(string key, int value) { }
|
|
public static void SetFloat(string key, float value) { }
|
|
public static void SetString(string key, string value) { }
|
|
}
|
|
}
|
|
|
|
// ---- Spine animation ----
|
|
namespace Spine { public class Bone { } internal class _ShimAnchor { } }
|
|
namespace Spine.Unity { public class SkeletonMecanim { } internal class _ShimAnchor { } }
|
|
|
|
// ---- misc third-party namespaces (anchors) ----
|
|
namespace RedShellUnity { internal class _ShimAnchor { } }
|
|
namespace PlatformSupport.Collections.ObjectModel { internal class _ShimAnchor { } }
|
|
namespace Convention { internal class _ShimAnchor { } }
|
|
namespace com.adjust.sdk { internal class _ShimAnchor { } }
|
|
namespace BestHTTP.Decompression { internal class _ShimAnchor { } }
|
|
namespace BestHTTP.SocketIO.Transports { internal class _ShimAnchor { } }
|