diff --git a/SVSim.BattleEngine/Shim/External/SdkStubs.cs b/SVSim.BattleEngine/Shim/External/SdkStubs.cs index 61ced4e..cc3fba7 100644 --- a/SVSim.BattleEngine/Shim/External/SdkStubs.cs +++ b/SVSim.BattleEngine/Shim/External/SdkStubs.cs @@ -38,8 +38,38 @@ namespace CodeStage.AntiCheat.ObscuredTypes } // ---- Spine animation ---- -namespace Spine { public class Bone { } internal class _ShimAnchor { } } -namespace Spine.Unity { public class SkeletonMecanim { } internal class _ShimAnchor { } } +namespace Spine +{ + // Spine runtime — minimal hand shim (cosmetic skeletal animation, off battle path). + public class SkeletonData { } + public class Skin { } + public class Bone + { + public float WorldX, WorldY, WorldRotationX; + public Skeleton Skeleton => null; + } + public class Skeleton + { + public SkeletonData Data => null; + public Skin Skin => null; + public float ScaleX, ScaleY; + public Bone FindBone(string boneName) => null; + public void SetSkin(string skinName) { } + public void SetSkin(Skin newSkin) { } + public void SetSlotsToSetupPose() { } + public void Update(float delta) { } + } + internal class _ShimAnchor { } +} +namespace Spine.Unity +{ + public class SkeletonMecanim : UnityEngine.MonoBehaviour + { + public Spine.Skeleton skeleton => null; + public Spine.Skeleton Skeleton => null; + } + internal class _ShimAnchor { } +} // ---- misc third-party namespaces (anchors) ---- namespace RedShellUnity { internal class _ShimAnchor { } } diff --git a/SVSim.BattleEngine/Shim/View/SettingsUiStubs.cs b/SVSim.BattleEngine/Shim/View/SettingsUiStubs.cs index 0bc3f96..b3e043a 100644 --- a/SVSim.BattleEngine/Shim/View/SettingsUiStubs.cs +++ b/SVSim.BattleEngine/Shim/View/SettingsUiStubs.cs @@ -106,13 +106,30 @@ namespace Wizard.Story namespace BestHTTP.SocketIO { + // BestHTTP SDK types — minimal hand shim (full-surface would pull the whole SocketIO + // closure). Node-server real-time socket path is Phase-2; these are off the battle path. public sealed class Packet { } - public sealed class Socket { } - // SocketManager is a BestHTTP SDK type — minimal hand shim (full-surface would pull - // the whole SocketIO SDK closure). Members filled on demand as the frontier needs them. + public delegate void SocketIOCallback(Socket socket, Packet packet, params object[] args); + public sealed class Socket + { + public string Id => ""; + public Socket On(string eventName, SocketIOCallback callback) => this; + public Socket Off(string eventName) => this; + public Socket Off() => this; + public Socket Emit(string eventName, params object[] args) => this; + } + public class SocketOptions { } public sealed class SocketManager { - public enum States { Initial, Opening, Open, Paused, Reconnecting, Closed } + public enum States { Initial, Opening, Open, Paused, Pausing, Reconnecting, Closed } + public SocketManager(System.Uri uri) { } + public SocketManager(System.Uri uri, SocketOptions options) { } + public States State => States.Closed; + public Socket Socket { get; } = new Socket(); + public Socket this[string nsp] => Socket; + public void Open() { } + public void Close() { } + public void SettingRealtimeNetworkAgent(object agent) { } } }