protected override void DispatchMessage(MessageRecievedEvent evt) { switch (evt.Message.FuncId) { case 8000: { var msg = new CheckVersionInMessage(evt.Sender, evt.Message, evt.Data); msg.Coroutine = new Coroutine(item => CheckVersion(item, msg)); msg.Coroutine.MoveNext(); } break; case 8001: { var msg = new CheckVersion2InMessage(evt.Sender, evt.Message, evt.Data); msg.Coroutine = new Coroutine(item => CheckVersion2(item, msg)); msg.Coroutine.MoveNext(); } break; case 8002: { var msg = new CheckVersion3InMessage(evt.Sender, evt.Message, evt.Data); msg.Coroutine = new Coroutine(item => CheckVersion3(item, msg)); msg.Coroutine.MoveNext(); } break; default: break; } }
/// <summary> /// 比之前的版本添加了 /// </summary> public IEnumerator CheckVersion3(Coroutine coroutine, CheckVersion3InMessage msg) { DirectoryCharacterProxy proxy; if (Proxys.TryGetValue(msg.CharacterId, out proxy)) { return(mProxyImpl.CheckVersion3(coroutine, proxy, msg)); } return(null); }