feat(battle-engine): BestHTTP SocketIO + Spine SDK member shims (1556->1462)

BestHTTP.SocketIO: Socket.On/Off/Emit + SocketIOCallback delegate, SocketManager ctors/
State/Socket/indexer/Open/Close/SettingRealtimeNetworkAgent, SocketOptions. Spine: Skeleton
(Data/Skin/Scale/FindBone/SetSkin/Update), Bone (WorldX/Y/RotationX), SkeletonMecanim
(MonoBehaviour + skeleton). All minimal hand shims (no full-surface -> no SDK closure pull);
node-socket path is Phase-2, off the battle path.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-06-05 22:41:06 -04:00
parent a1c0c2d312
commit 7ac13f73f2
2 changed files with 53 additions and 6 deletions

View File

@@ -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) { }
}
}