From e37f7e2c018abc3ce93dc793d2379befb20bb330 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期二, 15 一月 2019 16:19:53 +0800
Subject: [PATCH] 5725【1.5】跨服聊天

---
 System/RoleParticulars/RoleParticularModel.cs |   48 ++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 40 insertions(+), 8 deletions(-)

diff --git a/System/RoleParticulars/RoleParticularModel.cs b/System/RoleParticulars/RoleParticularModel.cs
index d78f5a6..611cbf9 100644
--- a/System/RoleParticulars/RoleParticularModel.cs
+++ b/System/RoleParticulars/RoleParticularModel.cs
@@ -79,6 +79,18 @@
             ViewRoleParticulars(_playerId);
         }
 
+        public void ViewCrossServerPlayerEquip(int _playerId)
+        {
+            viewPlayerType = CrossServerUtility.IsCrossServer() ? 5 : 4;
+            ViewRoleParticulars(_playerId);
+        }
+
+        public void ViewCrossPlayerFightPower(int _playerId)
+        {
+            viewPlayerType = CrossServerUtility.IsCrossServer() ? 6 : 7;
+            ViewRoleParticulars(_playerId);
+        }
+
         private void ViewRoleParticulars(int playerID)
         {
             if (viewPlayerType != 2)
@@ -105,14 +117,27 @@
             switch (viewPlayerType)
             {
                 case 4:
-                    CC002_tagCGViewCrossPlayerInfo c002 = new CC002_tagCGViewCrossPlayerInfo();
-                    c002.PlayerID = (uint)playerID;
-                    GameNetSystem.Instance.SendInfo(c002);
+                case 7:
+                    {
+                        CC002_tagCGViewCrossPlayerInfo c002 = new CC002_tagCGViewCrossPlayerInfo();
+                        c002.PlayerID = (uint)playerID;
+                        GameNetSystem.Instance.SendInfo(c002);
+                    }
+                    break;
+                case 5:
+                case 6:
+                    {
+                        CA212_tagCMViewPlayerInfo pak = new CA212_tagCMViewPlayerInfo();
+                        pak.PlayerID = (uint)playerID;
+                        GameNetSystem.Instance.SendToCrossServer(pak);
+                    }
                     break;
                 default:
-                    CA212_tagCMViewPlayerInfo pak = new CA212_tagCMViewPlayerInfo();
-                    pak.PlayerID = (uint)playerID;
-                    GameNetSystem.Instance.SendInfo(pak);
+                    {
+                        CA212_tagCMViewPlayerInfo pak = new CA212_tagCMViewPlayerInfo();
+                        pak.PlayerID = (uint)playerID;
+                        GameNetSystem.Instance.SendInfo(pak);
+                    }
                     break;
             }
         }
@@ -131,7 +156,6 @@
                 viewPlayerDataDic.Add((int)package.PlayerID, viewPlayerData);
             }
 
-            viewPlayerData.CrossPlayer = package.CrossPlayer;
             viewPlayerData.getTime = DateTime.Now;
             viewPlayerData.roleEquipDataDic.Clear();
             viewPlayerData.itemDatas = JsonMapper.ToObject<ItemData[]>(package.ItemData);
@@ -632,12 +656,15 @@
             {
                 case 0:
                 case 4:
+                case 5:
                     if (!WindowCenter.Instance.IsOpen<RoleParticularsWin>())
                     {
                         WindowCenter.Instance.Open<RoleParticularsWin>();
                     }
                     break;
                 case 1:
+                case 6:
+                case 7:
                     if (!WindowCenter.Instance.IsOpen<ViewFuncPowerWin>())
                     {
                         WindowCenter.Instance.Open<ViewFuncPowerWin>();
@@ -664,7 +691,6 @@
             public ItemData[] itemDatas;
             public RolePropData rolePropData;
             public RolePlusData rolePlusData;
-            public int CrossPlayer=0;
 
             public Dictionary<RoleEquipType, ItemData> roleEquipDataDic = new Dictionary<RoleEquipType, ItemData>();
 
@@ -755,6 +781,11 @@
                 }
                 return 0;
             }
+
+            public bool IsCrossServerPlayer()
+            {
+                return rolePropData.ServerGroupID != PlayerDatas.Instance.baseData.ServerGroupId;
+            }
         }
 
         [Serializable]
@@ -786,6 +817,7 @@
             public int FamilyID;
             public ulong FightPower;
             public uint EquipShowSwitch;
+            public int ServerGroupID;
         }
 
         public class RolePlusData

--
Gitblit v1.8.0