public CIPlayer(Regulus.Remoting.IGhostRequest requester, Guid id, Regulus.Remoting.ReturnValueQueue queue, bool have_return, Regulus.Serialization.ISerializer serializer)
        {
            _Serializer = serializer;

            _Requester   = requester;
            _HaveReturn  = have_return;
            _GhostIdName = id;
            _Queue       = queue;
        }
        public Protocol()
        {
            var types = new Dictionary <Type, Type>();

            types.Add(typeof(Regulus.Project.GameProject1.Data.IAccountCreator), typeof(Regulus.Project.GameProject1.Data.Ghost.CIAccountCreator));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IAccountFinder), typeof(Regulus.Project.GameProject1.Data.Ghost.CIAccountFinder));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IAccountManager), typeof(Regulus.Project.GameProject1.Data.Ghost.CIAccountManager));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IAccountStatus), typeof(Regulus.Project.GameProject1.Data.Ghost.CIAccountStatus));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IBagNotifier), typeof(Regulus.Project.GameProject1.Data.Ghost.CIBagNotifier));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IBattleSkill), typeof(Regulus.Project.GameProject1.Data.Ghost.CIBattleSkill));
            types.Add(typeof(Regulus.Project.GameProject1.Data.ICastSkill), typeof(Regulus.Project.GameProject1.Data.Ghost.CICastSkill));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IDevelopActor), typeof(Regulus.Project.GameProject1.Data.Ghost.CIDevelopActor));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IEmotion), typeof(Regulus.Project.GameProject1.Data.Ghost.CIEmotion));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IEquipmentNotifier), typeof(Regulus.Project.GameProject1.Data.Ghost.CIEquipmentNotifier));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IInventoryController), typeof(Regulus.Project.GameProject1.Data.Ghost.CIInventoryController));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IInventoryNotifier), typeof(Regulus.Project.GameProject1.Data.Ghost.CIInventoryNotifier));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IJumpMap), typeof(Regulus.Project.GameProject1.Data.Ghost.CIJumpMap));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IMakeSkill), typeof(Regulus.Project.GameProject1.Data.Ghost.CIMakeSkill));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IMoveController), typeof(Regulus.Project.GameProject1.Data.Ghost.CIMoveController));
            types.Add(typeof(Regulus.Project.GameProject1.Data.INormalSkill), typeof(Regulus.Project.GameProject1.Data.Ghost.CINormalSkill));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IPlayerProperys), typeof(Regulus.Project.GameProject1.Data.Ghost.CIPlayerProperys));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IGameRecorder), typeof(Regulus.Project.GameProject1.Data.Ghost.CIGameRecorder));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IQuitable), typeof(Regulus.Project.GameProject1.Data.Ghost.CIQuitable));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IStorage), typeof(Regulus.Project.GameProject1.Data.Ghost.CIStorage));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IStorageCompetences), typeof(Regulus.Project.GameProject1.Data.Ghost.CIStorageCompetences));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IVerify), typeof(Regulus.Project.GameProject1.Data.Ghost.CIVerify));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IVersion), typeof(Regulus.Project.GameProject1.Data.Ghost.CIVersion));
            types.Add(typeof(Regulus.Project.GameProject1.Data.IVisible), typeof(Regulus.Project.GameProject1.Data.Ghost.CIVisible));
            _InterfaceProvider = new Regulus.Remote.InterfaceProvider(types);

            var eventClosures = new List <Regulus.Remote.IEventProxyCreator>();

            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IAccountStatus.KickEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.ICastSkill.HitNextsEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IInventoryController.BagItemsEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IInventoryController.EquipItemsEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IInventoryNotifier.AddEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IInventoryNotifier.RemoveEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IMakeSkill.FormulasEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IVisible.EquipEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IVisible.StatusEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IVisible.EnergyEvent());
            eventClosures.Add(new Regulus.Project.GameProject1.Data.Invoker.IVisible.TalkMessageEvent());
            _EventProvider = new Regulus.Remote.EventProvider(eventClosures);

            _Serializer = new Regulus.Serialization.Serializer(new Regulus.Serialization.DescriberBuilder(typeof(AForge.Math.Geometry.GrahamConvexHull), typeof(Regulus.CustomType.Point), typeof(Regulus.CustomType.Polygon), typeof(Regulus.CustomType.Vector2), typeof(Regulus.CustomType.Vector2[]), typeof(Regulus.Project.GameProject1.Data.Account), typeof(Regulus.Project.GameProject1.Data.Account[]), typeof(Regulus.Project.GameProject1.Data.ACCOUNT_REQUEST_RESULT), typeof(Regulus.Project.GameProject1.Data.Account.COMPETENCE), typeof(Regulus.Project.GameProject1.Data.Account.COMPETENCE[]), typeof(Regulus.Project.GameProject1.Data.ACTOR_STATUS_TYPE), typeof(Regulus.Project.GameProject1.Data.ACTOR_STATUS_TYPE[]), typeof(Regulus.Project.GameProject1.Data.ChestLayout), typeof(Regulus.Project.GameProject1.Data.ChestLayout[]), typeof(Regulus.Project.GameProject1.Data.Determination), typeof(Regulus.Project.GameProject1.Data.Effect), typeof(Regulus.Project.GameProject1.Data.Effect[]), typeof(Regulus.Project.GameProject1.Data.EFFECT_TYPE), typeof(Regulus.Project.GameProject1.Data.Energy), typeof(Regulus.Project.GameProject1.Data.Energy.TYPE), typeof(Regulus.Project.GameProject1.Data.EnteranceLayout), typeof(Regulus.Project.GameProject1.Data.EnteranceLayout[]), typeof(Regulus.Project.GameProject1.Data.ENTITY), typeof(Regulus.Project.GameProject1.Data.ENTITY[]), typeof(Regulus.Project.GameProject1.Data.EntityData), typeof(Regulus.Project.GameProject1.Data.EntityData[]), typeof(Regulus.Project.GameProject1.Data.EntityGroupLayout), typeof(Regulus.Project.GameProject1.Data.EntityGroupLayout[]), typeof(Regulus.Project.GameProject1.Data.EntityLayout), typeof(Regulus.Project.GameProject1.Data.EntityLayout[]), typeof(Regulus.Project.GameProject1.Data.EQUIP_PART), typeof(Regulus.Project.GameProject1.Data.EquipStatus), typeof(Regulus.Project.GameProject1.Data.EquipStatus[]), typeof(Regulus.Project.GameProject1.Data.FieldLayout), typeof(Regulus.Project.GameProject1.Data.FieldLayout[]), typeof(Regulus.Project.GameProject1.Data.GamePlayerRecord), typeof(Regulus.Project.GameProject1.Data.Item), typeof(Regulus.Project.GameProject1.Data.Item[]), typeof(Regulus.Project.GameProject1.Data.ITEM_FEATURES), typeof(Regulus.Project.GameProject1.Data.ItemEffect), typeof(Regulus.Project.GameProject1.Data.ItemEffect[]), typeof(Regulus.Project.GameProject1.Data.ItemFormula), typeof(Regulus.Project.GameProject1.Data.ItemFormula[]), typeof(Regulus.Project.GameProject1.Data.ItemFormulaLite), typeof(Regulus.Project.GameProject1.Data.ItemFormulaLite[]), typeof(Regulus.Project.GameProject1.Data.ItemFormulaNeed), typeof(Regulus.Project.GameProject1.Data.ItemFormulaNeed[]), typeof(Regulus.Project.GameProject1.Data.ItemFormulaNeedLite), typeof(Regulus.Project.GameProject1.Data.ItemFormulaNeedLite[]), typeof(Regulus.Project.GameProject1.Data.ItemPrototype), typeof(Regulus.Project.GameProject1.Data.ItemPrototype[]), typeof(Regulus.Project.GameProject1.Data.Location), typeof(Regulus.Project.GameProject1.Data.MazeInfomation), typeof(Regulus.Project.GameProject1.Data.MazeUnitInfomation), typeof(Regulus.Project.GameProject1.Data.MazeUnitInfomation[]), typeof(Regulus.Project.GameProject1.Data.PortalData), typeof(Regulus.Project.GameProject1.Data.ProtalLayout), typeof(Regulus.Project.GameProject1.Data.ProtalLayout[]), typeof(Regulus.Project.GameProject1.Data.RealmInfomation), typeof(Regulus.Project.GameProject1.Data.Resource), typeof(Regulus.Project.GameProject1.Data.ResourceItem), typeof(Regulus.Project.GameProject1.Data.ResourceItem[]), typeof(Regulus.Project.GameProject1.Data.ResourceLayout), typeof(Regulus.Project.GameProject1.Data.ResourceLayout[]), typeof(Regulus.Project.GameProject1.Data.SkillData), typeof(Regulus.Project.GameProject1.Data.SkillData[]), typeof(Regulus.Project.GameProject1.Data.StaticLayout), typeof(Regulus.Project.GameProject1.Data.StaticLayout[]), typeof(Regulus.Project.GameProject1.Data.StrongholdLayout), typeof(Regulus.Project.GameProject1.Data.StrongholdLayout[]), typeof(Regulus.Project.GameProject1.Data.TownInfomation), typeof(Regulus.Project.GameProject1.Data.Translate), typeof(Regulus.Project.GameProject1.Data.Translate[]), typeof(Regulus.Project.GameProject1.Data.VisibleStatus), typeof(Regulus.Project.GameProject1.Data.WallData), typeof(Regulus.Project.GameProject1.Data.WallLayout), typeof(Regulus.Project.GameProject1.Data.WallLayout[]), typeof(Regulus.Project.GameProject1.Game.Data.LEVEL_UNIT), typeof(Regulus.Remote.ClientToServerOpCode), typeof(Regulus.Remote.PackageCallMethod), typeof(Regulus.Remote.PackageErrorMethod), typeof(Regulus.Remote.PackageInvokeEvent), typeof(Regulus.Remote.PackageLoadSoul), typeof(Regulus.Remote.PackageLoadSoulCompile), typeof(Regulus.Remote.PackageProtocolSubmit), typeof(Regulus.Remote.PackageRelease), typeof(Regulus.Remote.PackageReturnValue), typeof(Regulus.Remote.PackageUnloadSoul), typeof(Regulus.Remote.PackageUpdateProperty), typeof(Regulus.Remote.RequestPackage), typeof(Regulus.Remote.ResponsePackage), typeof(Regulus.Remote.ServerToClientOpCode), typeof(System.Action), typeof(System.Boolean), typeof(System.Byte[]), typeof(System.Byte[][]), typeof(System.Char), typeof(System.Char[]), typeof(System.Double), typeof(System.Guid), typeof(System.Int32), typeof(System.Int32[]), typeof(System.Single), typeof(System.String)).Describers);


            _MemberMap = new Regulus.Remote.MemberMap(new System.Reflection.MethodInfo[] { new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountCreator, Regulus.Project.GameProject1.Data.Account> >)((ins, _1) => ins.Create(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountFinder, System.String> >)((ins, _1) => ins.FindAccountByName(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountFinder, System.Guid> >)((ins, _1) => ins.FindAccountById(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountManager, Regulus.Project.GameProject1.Data.Account> >)((ins, _1) => ins.Create(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountManager> >)((ins) => ins.QueryAllAccount())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountManager, System.String> >)((ins, _1) => ins.Delete(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IAccountManager, Regulus.Project.GameProject1.Data.Account> >)((ins, _1) => ins.Update(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IBattleSkill> >)((ins) => ins.Disarm())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.ICastSkill, Regulus.Project.GameProject1.Data.ACTOR_STATUS_TYPE> >)((ins, _1) => ins.Cast(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IDevelopActor, System.Single> >)((ins, _1) => ins.SetBaseView(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IDevelopActor, System.Single> >)((ins, _1) => ins.SetSpeed(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IDevelopActor, System.String, System.Single> >)((ins, _1, _2) => ins.MakeItem(_1, _2))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IDevelopActor, System.String, System.Int32> >)((ins, _1, _2) => ins.CreateItem(_1, _2))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IDevelopActor, System.Single, System.Single> >)((ins, _1, _2) => ins.SetPosition(_1, _2))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IDevelopActor, System.String> >)((ins, _1) => ins.SetRealm(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IEmotion, System.String> >)((ins, _1) => ins.Talk(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IInventoryController> >)((ins) => ins.Refresh())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IInventoryController, System.Guid> >)((ins, _1) => ins.Discard(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IInventoryController, System.Guid> >)((ins, _1) => ins.Equip(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IInventoryController, System.Guid> >)((ins, _1) => ins.Use(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IInventoryController, System.Guid> >)((ins, _1) => ins.Unequip(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IJumpMap> >)((ins) => ins.Ready())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMakeSkill, System.String, System.Int32[]> >)((ins, _1, _2) => ins.Create(_1, _2))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMakeSkill> >)((ins) => ins.Exit())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMakeSkill> >)((ins) => ins.QueryFormula())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.RunForward())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.Forward())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.Backward())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.StopMove())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.TrunLeft())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.TrunRight())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IMoveController> >)((ins) => ins.StopTrun())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.INormalSkill, System.Guid> >)((ins, _1) => ins.Explore(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.INormalSkill> >)((ins) => ins.Battle())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.INormalSkill> >)((ins) => ins.Make())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IGameRecorder, System.Guid> >)((ins, _1) => ins.Load(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IGameRecorder, Regulus.Project.GameProject1.Data.GamePlayerRecord> >)((ins, _1) => ins.Save(_1))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IQuitable> >)((ins) => ins.Quit())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IStorageCompetences> >)((ins) => ins.Query())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IStorageCompetences> >)((ins) => ins.QueryForId())).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IVerify, System.String, System.String> >)((ins, _1, _2) => ins.Login(_1, _2))).Method, new Regulus.Remote.AOT.TypeMethodCatcher((System.Linq.Expressions.Expression <System.Action <Regulus.Project.GameProject1.Data.IVisible> >)((ins) => ins.QueryStatus())).Method }, new System.Reflection.EventInfo[] { typeof(Regulus.Project.GameProject1.Data.IAccountStatus).GetEvent("KickEvent"), typeof(Regulus.Project.GameProject1.Data.ICastSkill).GetEvent("HitNextsEvent"), typeof(Regulus.Project.GameProject1.Data.IInventoryController).GetEvent("BagItemsEvent"), typeof(Regulus.Project.GameProject1.Data.IInventoryController).GetEvent("EquipItemsEvent"), typeof(Regulus.Project.GameProject1.Data.IInventoryNotifier).GetEvent("AddEvent"), typeof(Regulus.Project.GameProject1.Data.IInventoryNotifier).GetEvent("RemoveEvent"), typeof(Regulus.Project.GameProject1.Data.IMakeSkill).GetEvent("FormulasEvent"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetEvent("EquipEvent"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetEvent("StatusEvent"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetEvent("EnergyEvent"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetEvent("TalkMessageEvent") }, new System.Reflection.PropertyInfo[] { typeof(Regulus.Project.GameProject1.Data.ICastSkill).GetProperty("Id"), typeof(Regulus.Project.GameProject1.Data.ICastSkill).GetProperty("Skills"), typeof(Regulus.Project.GameProject1.Data.IJumpMap).GetProperty("Realm"), typeof(Regulus.Project.GameProject1.Data.IPlayerProperys).GetProperty("Realm"), typeof(Regulus.Project.GameProject1.Data.IPlayerProperys).GetProperty("Id"), typeof(Regulus.Project.GameProject1.Data.IPlayerProperys).GetProperty("Strength"), typeof(Regulus.Project.GameProject1.Data.IPlayerProperys).GetProperty("Health"), typeof(Regulus.Project.GameProject1.Data.IVersion).GetProperty("Number"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("EntityType"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("Id"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("Name"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("View"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("Direction"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("Status"), typeof(Regulus.Project.GameProject1.Data.IVisible).GetProperty("Position") }, new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >[] { new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IAccountCreator), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IAccountCreator>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IAccountFinder), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IAccountFinder>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IAccountManager), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IAccountManager>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IAccountStatus), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IAccountStatus>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IBagNotifier), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IBagNotifier>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IBattleSkill), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IBattleSkill>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.ICastSkill), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.ICastSkill>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IDevelopActor), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IDevelopActor>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IEmotion), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IEmotion>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IEquipmentNotifier), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IEquipmentNotifier>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IInventoryController), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IInventoryController>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IInventoryNotifier), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IInventoryNotifier>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IJumpMap), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IJumpMap>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IMakeSkill), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IMakeSkill>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IMoveController), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IMoveController>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.INormalSkill), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.INormalSkill>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IPlayerProperys), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IPlayerProperys>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IGameRecorder), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IGameRecorder>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IQuitable), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IQuitable>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IStorage), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IStorage>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IStorageCompetences), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IStorageCompetences>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IVerify), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IVerify>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IVersion), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IVersion>()), new System.Tuple <System.Type, System.Func <Regulus.Remote.IProvider> >(typeof(Regulus.Project.GameProject1.Data.IVisible), () => new Regulus.Remote.TProvider <Regulus.Project.GameProject1.Data.IVisible>()) });
        }
Example #3
0
        public Provider()
        {
            var types = new Dictionary <Type, Type>();

            types.Add(typeof(Regulus.Project.Chat.Common.IAccount), typeof(Regulus.Project.Chat.Common.Ghost.CIAccount));
            types.Add(typeof(Regulus.Project.Chat.Common.IPlayer), typeof(Regulus.Project.Chat.Common.Ghost.CIPlayer));
            types.Add(typeof(Regulus.Project.Chat.Common.ITalker), typeof(Regulus.Project.Chat.Common.Ghost.CITalker));
            _GPIProvider = new Regulus.Remoting.GPIProvider(types);

            var eventClosures = new List <Regulus.Remoting.IEventProxyCreator>();

            eventClosures.Add(new Regulus.Project.Chat.Common.Event.ITalker.MessageEvent());
            _EventProvider = new Regulus.Remoting.EventProvider(eventClosures);

            _Serializer = new Regulus.Serialization.Serializer(new Regulus.Serialization.DescriberBuilder(typeof(System.Char), typeof(System.Char[]), typeof(System.String), typeof(System.Boolean), typeof(Regulus.Remoting.RequestPackage), typeof(System.Byte[]), typeof(System.Byte), typeof(Regulus.Remoting.ClientToServerOpCode), typeof(Regulus.Remoting.ResponsePackage), typeof(Regulus.Remoting.ServerToClientOpCode), typeof(Regulus.Remoting.PackageUpdateProperty), typeof(System.Guid), typeof(Regulus.Remoting.PackageInvokeEvent), typeof(System.Byte[][]), typeof(Regulus.Remoting.PackageErrorMethod), typeof(Regulus.Remoting.PackageReturnValue), typeof(Regulus.Remoting.PackageLoadSoulCompile), typeof(Regulus.Remoting.PackageLoadSoul), typeof(Regulus.Remoting.PackageUnloadSoul), typeof(Regulus.Remoting.PackageCallMethod), typeof(Regulus.Remoting.PackageRelease)));
        }