Beispiel #1
0
 public void RPC_GetRoleGirdByType(byte itemType, byte page, RPC.RPCForwardInfo fwd)
 {
     RPC.PackageWriter pkg = new RPC.PackageWriter();
     H_RPCRoot.smInstance.HGet_ComServer(pkg).HGet_UserRoleManager(pkg).RPC_GetRoleGirdByType(pkg, PlayerData.RoleDetail.RoleId, itemType, page);
     pkg.WaitDoCommand(IPlanesServer.Instance.ComConnect, RPC.CommandTargetType.DefaultType, null).OnFarCallFinished = delegate(RPC.PackageProxy _io, bool isTimeOut)
     {
         if (isTimeOut)
         {
             return;
         }
         RPC.PackageWriter retPkg = new RPC.PackageWriter();
         retPkg.SetSinglePkg();
         sbyte result;
         _io.Read(out result);
         retPkg.Write(result);
         if (result == (sbyte)1)
         {
             int count = 0;
             _io.Read(out count);
             retPkg.Write(count);
             for (int i = 0; i < count; i++)
             {
                 CSCommon.Data.ConsignGridData data = new CSCommon.Data.ConsignGridData();
                 _io.Read(data);
                 pkg.Write(data);
             }
         }
         retPkg.DoReturnPlanes2Client(fwd);
     };
 }
Beispiel #2
0
 public void RPC_SendGift(RPC.PackageWriter pkg, System.UInt64 roleId, System.Int32 templateId, System.Int32 count)
 {
     pkg.Write(roleId);
     pkg.Write(templateId);
     pkg.Write(count);
     pkg.SetMethod(28);
 }
Beispiel #3
0
 public void RPC_BuyShopItem(RPC.PackageWriter pkg, System.Byte type, System.Int32 id, System.Int32 count)
 {
     pkg.Write(type);
     pkg.Write(id);
     pkg.Write(count);
     pkg.SetMethod(48);
 }
Beispiel #4
0
 public void ReturnToRoleSelect(RPC.PackageWriter pkg, System.UInt64 planesId, System.UInt64 roleId, System.UInt64 accountId)
 {
     pkg.Write(planesId);
     pkg.Write(roleId);
     pkg.Write(accountId);
     pkg.SetMethod(5);
 }
Beispiel #5
0
 public void RPC_OperateAddSocial(RPC.PackageWriter pkg, System.String otherName, System.Byte type, System.Byte operate)
 {
     pkg.Write(otherName);
     pkg.Write(type);
     pkg.Write(operate);
     pkg.SetMethod(26);
 }
Beispiel #6
0
 public void RPC_OperateGuildAsk(RPC.PackageWriter pkg, System.UInt64 roleId, System.UInt64 messageId, System.Byte operate)
 {
     pkg.Write(roleId);
     pkg.Write(messageId);
     pkg.Write(operate);
     pkg.SetMethod(37);
 }
Beispiel #7
0
 public void RPC_OperateInvite(RPC.PackageWriter pkg, System.UInt64 roleId, System.UInt64 targetId, System.Byte operate)
 {
     pkg.Write(roleId);
     pkg.Write(targetId);
     pkg.Write(operate);
     pkg.SetMethod(42);
 }
Beispiel #8
0
 public void RPC_Whisper(RPC.PackageWriter pkg, System.String targetName, System.String msg, RPC.DataWriter hyperlink)
 {
     pkg.Write(targetName);
     pkg.Write(msg);
     pkg.Write(hyperlink);
     pkg.SetMethod(70);
 }
Beispiel #9
0
 public void ClientTryLogin(RPC.PackageWriter pkg, System.String usr, System.String psw, System.UInt16 planesid)
 {
     pkg.Write(usr);
     pkg.Write(psw);
     pkg.Write(planesid);
     pkg.SetMethod(2);
 }
Beispiel #10
0
 public void RPC_GetRoleGirdByName(RPC.PackageWriter pkg, System.String name, System.Byte findType, System.Byte page)
 {
     pkg.Write(name);
     pkg.Write(findType);
     pkg.Write(page);
     pkg.SetMethod(53);
 }
Beispiel #11
0
 public void RPC_Say(RPC.PackageWriter pkg, System.SByte channel, System.String msg, RPC.DataWriter hyperlink)
 {
     pkg.Write(channel);
     pkg.Write(msg);
     pkg.Write(hyperlink);
     pkg.SetMethod(69);
 }
Beispiel #12
0
        public void RPC_DonateGold(ulong roleId, int gold, Iocp.NetConnection connect, RPC.RPCForwardInfo fwd)
        {
            RPC.PackageWriter retPkg = new RPC.PackageWriter();
            var role = GetRole(roleId);

            if (role == null)
            {
                retPkg.Write((sbyte)CSCommon.eRet_DonateGold.NoRole);
                retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
                return;
            }
            if (role.GuildInstance == null)
            {
                retPkg.Write((sbyte)CSCommon.eRet_DonateGold.RoleNoGuild);
                retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
                return;
            }

            role.GuildInstance.GuildData.GuildGold += (ulong)gold;

            int contribute = (int)gold;//贡献换算公式未定

            AddRoleGuildContribute(role, contribute);
            retPkg.Write((sbyte)CSCommon.eRet_DonateGold.Succeed);
            retPkg.Write(role.RoleData.TodayGuildContribute);
            retPkg.Write(role.RoleData.GuildContribute);
            retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
        }
Beispiel #13
0
        public void RPC_LeaveGuild(ulong roleId, Iocp.NetConnection connect, RPC.RPCForwardInfo fwd)
        {
            RPC.PackageWriter retPkg = new RPC.PackageWriter();
            var role = GetRole(roleId);

            if (role == null)
            {
                retPkg.Write((sbyte)CSCommon.eRet_LeaveGuild.NoRole);
                retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
                return;
            }
            if (role.RoleData.GuildId == 0 || role.GuildInstance == null)
            {
                retPkg.Write((sbyte)CSCommon.eRet_LeaveGuild.RoleNoGuild);
                retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
                return;
            }
            if (role.RoleData.GuildPost == (byte)CSCommon.eGuildPost.BangZhu)
            {
                retPkg.Write((sbyte)CSCommon.eRet_LeaveGuild.RoleIsBangZhu);
                retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
                return;
            }

            retPkg.Write((sbyte)CSCommon.eRet_LeaveGuild.Succeed);
            LeaveGuild(role);
            retPkg.DoReturnCommand2(connect, fwd.ReturnSerialId);
        }
Beispiel #14
0
        public void RPC_InlayGem(UInt16 pos, int id, RPC.RPCForwardInfo fwd)
        {
            RPC.PackageWriter pkg = new RPC.PackageWriter();
            var gem = this.GemBag.FindItemById(id);

            if (gem == null)
            {
                pkg.Write((sbyte)CSCommon.eRet_InlayGem.NoGem);
                pkg.DoReturnPlanes2Client(fwd);
                return;
            }
            if (gem.ItemTemplate.ItemType != (int)CSCommon.eItemType.Gem)
            {
                pkg.Write((sbyte)CSCommon.eRet_InlayGem.NotGem);
                pkg.DoReturnPlanes2Client(fwd);
                return;
            }
            Item item = Item.DangerousCreateItemById(this, id, 1);

            if (this.EquipGemBag.AddItem2Position(pos, item) == false)
            {
                pkg.Write((sbyte)CSCommon.eRet_InlayGem.NoPos);
                pkg.DoReturnPlanes2Client(fwd);
                return;
            }
            this.GemBag.RemoveItemCountByTid(id, 1);
            pkg.Write((sbyte)CSCommon.eRet_InlayGem.Succeed);
            CalcChangeType(eValueType.Gem);
            pkg.DoReturnPlanes2Client(fwd);
        }
Beispiel #15
0
 public void RPC_UpdateRankDataValue(RPC.PackageWriter pkg, System.UInt64 roleId, System.String name, RPC.DataWriter value)
 {
     pkg.Write(roleId);
     pkg.Write(name);
     pkg.Write(value);
     pkg.SetMethod(18);
 }
Beispiel #16
0
 public void TryRegAccount(RPC.PackageWriter pkg, System.String usr, System.String psw, System.String mobileNum)
 {
     pkg.Write(usr);
     pkg.Write(psw);
     pkg.Write(mobileNum);
     pkg.SetMethod(8);
 }
Beispiel #17
0
 public void RPC_OperateTeamInvite(RPC.PackageWriter pkg, System.UInt64 roleId, System.String otherName, System.Byte operate)
 {
     pkg.Write(roleId);
     pkg.Write(otherName);
     pkg.Write(operate);
     pkg.SetMethod(25);
 }
Beispiel #18
0
 public void RegLogServer(RPC.PackageWriter pkg, System.String ListenIp, System.UInt16 ListenPort, System.UInt64 id)
 {
     pkg.Write(ListenIp);
     pkg.Write(ListenPort);
     pkg.Write(id);
     pkg.SetMethod(6);
 }
Beispiel #19
0
 public void RPC_SetGuildPost(RPC.PackageWriter pkg, System.UInt64 roleId, System.UInt64 targetId, System.Byte post)
 {
     pkg.Write(roleId);
     pkg.Write(targetId);
     pkg.Write(post);
     pkg.SetMethod(40);
 }
Beispiel #20
0
 public void RPC_JumpToMap(RPC.PackageWriter pkg, System.UInt16 mapid, System.Single x, System.Single z)
 {
     pkg.Write(mapid);
     pkg.Write(x);
     pkg.Write(z);
     pkg.SetMethod(4);
 }
Beispiel #21
0
 public void RegGateServer(RPC.PackageWriter pkg, System.String ip, System.UInt16 port, System.UInt64 id)
 {
     pkg.Write(ip);
     pkg.Write(port);
     pkg.Write(id);
     pkg.SetMethod(1);
 }
Beispiel #22
0
 public void RPC_AddSocial(RPC.PackageWriter pkg, System.UInt64 roleId, System.String otherName, System.Byte type)
 {
     pkg.Write(roleId);
     pkg.Write(otherName);
     pkg.Write(type);
     pkg.SetMethod(1);
 }
Beispiel #23
0
 public void RPC_AddGiftCount(RPC.PackageWriter pkg, System.UInt64 id, System.Int32 index, System.Int32 count)
 {
     pkg.Write(id);
     pkg.Write(index);
     pkg.Write(count);
     pkg.SetMethod(13);
 }
Beispiel #24
0
 public void RPC_RemoveSocial(RPC.PackageWriter pkg, System.UInt64 roleId, System.UInt64 otherId, System.Byte type)
 {
     pkg.Write(roleId);
     pkg.Write(otherId);
     pkg.Write(type);
     pkg.SetMethod(3);
 }
Beispiel #25
0
 public void DelItem(RPC.PackageWriter pkg, System.UInt64 roleId, System.UInt64 itemId, System.SByte bDestroy)
 {
     pkg.Write(roleId);
     pkg.Write(itemId);
     pkg.Write(bDestroy);
     pkg.SetMethod(10);
 }
Beispiel #26
0
 public void RPC_GetRoleGirdByType(RPC.PackageWriter pkg, System.UInt64 roleId, System.Byte itemType, System.Byte page)
 {
     pkg.Write(roleId);
     pkg.Write(itemType);
     pkg.Write(page);
     pkg.SetMethod(10);
 }
Beispiel #27
0
 public void RPC_UseItem(RPC.PackageWriter pkg, System.Byte bag, System.Int32 itemId, System.Int32 count)
 {
     pkg.Write(bag);
     pkg.Write(itemId);
     pkg.Write(count);
     pkg.SetMethod(43);
 }
Beispiel #28
0
 public void RPC_Visit(RPC.PackageWriter pkg, System.Byte type, System.UInt64 roleId, System.UInt64 otherId)
 {
     pkg.Write(type);
     pkg.Write(roleId);
     pkg.Write(otherId);
     pkg.SetMethod(16);
 }
Beispiel #29
0
 public void RPC_ConsignItem(RPC.PackageWriter pkg, System.UInt64 itemId, System.Int32 stack, System.Int32 price)
 {
     pkg.Write(itemId);
     pkg.Write(stack);
     pkg.Write(price);
     pkg.SetMethod(50);
 }
Beispiel #30
0
        public void RPC_TakeOffFashion(ulong itemId, RPC.RPCForwardInfo fwd)
        {
            RPC.PackageWriter pkg = new RPC.PackageWriter();
            var item = this.FashionBag.FindItemById(itemId);

            if (item == null || item.ItemData == null)
            {
                pkg.Write((sbyte)-1);
                pkg.DoReturnPlanes2Client(fwd);
                return;
            }
            if (item.ItemData.WearState == (byte)CSCommon.eBoolState.False)
            {
                pkg.Write((sbyte)-2);
                pkg.DoReturnPlanes2Client(fwd);
                return;
            }
            if (item.ItemTemplate == null)
            {
                pkg.Write((sbyte)-3);
                pkg.DoReturnPlanes2Client(fwd);
                return;
            }
            var tType = (item.ItemTemplate as CSTable.ItemFashionData).FashionType;

            this.FashionBag.TakeOffFashionByType(tType);

            pkg.Write((sbyte)1);
            pkg.DoReturnPlanes2Client(fwd);
        }