using NetCore; using NetCore.ContentParse; using NetCore.Protocol.MemoryPack; using NetServerCore.NetLink; using Protocol.Protocol.MemoryPack.MemoryMessage; namespace NetServer.ServerLogic; public class LogicManager : LogicManagerBaisc { private MemoryWrap memoryWrap = new MemoryWrap(); public override void Logic(object data, IConnection iConnection) { InternalMemoryResponese internalMemoryResponese = data as InternalMemoryResponese; MemoryRequest memoryRequest = (MemoryRequest)memoryWrap.Deserialize(internalMemoryResponese.TransitData); GameLogicBasic logicBaisc = (GameLogicBasic)GetLogicBaisc((int)memoryRequest.GameSendType); logicBaisc.GameLogic(memoryRequest, iConnection, internalMemoryResponese); } public void SendResponse (MemoryResponse data, InternalMemoryResponese internalMemoryResponese, IConnection iConnection) { byte[] dataByte = memoryWrap.Serialize(data); InternalMemoryRequst internalMemoryRequst = new InternalMemoryRequst(); internalMemoryRequst.SendType = InternalSendType.Transparent; internalMemoryRequst.ServerType = ServerType.GameServer; internalMemoryRequst.TransitData = dataByte; internalMemoryRequst.ResponeseSendSequence = internalMemoryResponese.sendSequence; internalMemoryRequst.ResponeseClinetConnectionId = internalMemoryResponese.ClinetConnectionId; iConnection.SendData(internalMemoryRequst); } public override void AddConnection(IConnection iConnection) { } public override void RemoveConnection(IConnection iConnection) { } }