Răsfoiți Sursa

Merge branch 'master' of http://192.168.2.10:3000/GFG/Client

hexiaojie 1 an în urmă
părinte
comite
f87b89bc5b
46 a modificat fișierele cu 720 adăugiri și 384 ștergeri
  1. 6 0
      .gitignore
  2. 65 0
      GameClient/Assets/Game/HotUpdate/Data/ShareDataManager.cs
  3. 11 0
      GameClient/Assets/Game/HotUpdate/Data/ShareDataManager.cs.meta
  4. 1 1
      GameClient/Assets/Game/HotUpdate/DressUp/SceneController.cs
  5. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs
  6. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RoleInfo/UI_RoleInfoUI.cs
  7. 8 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Share.meta
  8. 92 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Share/UI_ShareUI.cs
  9. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Share/UI_ShareUI.cs.meta
  10. 16 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ShareSProxy.cs
  11. 11 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ShareSProxy.cs.meta
  12. 5 0
      GameClient/Assets/Game/HotUpdate/Utils/ResPathUtil.cs
  13. 1 1
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs
  14. 13 0
      GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs
  15. 13 4
      GameClient/Assets/Game/HotUpdate/Views/ClothingUpgarde/ClothingUpgradeView.cs
  16. 70 9
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryDialogView.cs
  17. 9 8
      GameClient/Assets/Game/HotUpdate/Views/RoleInfo/GMPanelView.cs
  18. 6 1
      GameClient/Assets/Game/HotUpdate/Views/RoleInfo/RoleInfoView.cs
  19. 8 0
      GameClient/Assets/Game/HotUpdate/Views/Share.meta
  20. 80 0
      GameClient/Assets/Game/HotUpdate/Views/Share/ShareView.cs
  21. 11 0
      GameClient/Assets/Game/HotUpdate/Views/Share/ShareView.cs.meta
  22. 10 7
      GameClient/Assets/Game/HotUpdate/Views/Store/StoreView.cs
  23. 1 0
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelView.cs
  24. 1 1
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingSwitchView.cs
  25. 1 1
      GameClient/Assets/Plugins/Android/baseProjectTemplate.gradle.meta
  26. 1 1
      GameClient/Assets/Plugins/Android/gradleTemplate.properties.meta
  27. 1 1
      GameClient/Assets/Plugins/Android/launcherTemplate.gradle.meta
  28. BIN
      GameClient/Assets/Plugins/Android/libs/douyou-release.aar
  29. 0 32
      GameClient/Assets/Plugins/Android/libs/douyou-release.aar.meta
  30. BIN
      GameClient/Assets/Plugins/Android/libs/douyouTT-release.aar
  31. 0 32
      GameClient/Assets/Plugins/Android/libs/douyouTT-release.aar.meta
  32. 0 249
      GameClient/Assets/Plugins/com/easy/bridge/DouYouMainActivity.java
  33. 0 32
      GameClient/Assets/Plugins/com/easy/bridge/DouYouMainActivity.java.meta
  34. BIN
      GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_atlas0!a.png
  35. BIN
      GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_atlas0.png
  36. BIN
      GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_fui.bytes
  37. BIN
      GameClient/Assets/ResIn/UI/RoleInfo/RoleInfo_fui.bytes
  38. 8 0
      GameClient/Assets/ResIn/UI/Share.meta
  39. BIN
      GameClient/Assets/ResIn/UI/Share/Share_atlas0!a.png
  40. 120 0
      GameClient/Assets/ResIn/UI/Share/Share_atlas0!a.png.meta
  41. BIN
      GameClient/Assets/ResIn/UI/Share/Share_atlas0.png
  42. 120 0
      GameClient/Assets/ResIn/UI/Share/Share_atlas0.png.meta
  43. BIN
      GameClient/Assets/ResIn/UI/Share/Share_fui.bytes
  44. 7 0
      GameClient/Assets/ResIn/UI/Share/Share_fui.bytes.meta
  45. BIN
      GameClient/Assets/ResIn/UI/Store/Store_fui.bytes
  46. 4 4
      GameClient/ProjectSettings/ProjectSettings.asset

+ 6 - 0
.gitignore

@@ -45,3 +45,9 @@
 /GameClient/Assets/StreamingAssets/Bundles.meta
 /GameClient/Assets/StreamingAssets
 /StaticRes
+/GameClient/Assets/Plugins/Android/libs/douyou-release.aar
+/GameClient/Assets/Plugins/Android/libs/douyou-release.aar.meta
+/GameClient/Assets/Plugins/Android/libs/douyouTT-release.aar
+/GameClient/Assets/Plugins/Android/libs/douyouTT-release.aar.meta
+/GameClient/Assets/Plugins/com/easy/bridge/DouYouMainActivity.java
+/GameClient/Assets/Plugins/com/easy/bridge/DouYouMainActivity.java.meta

+ 65 - 0
GameClient/Assets/Game/HotUpdate/Data/ShareDataManager.cs

@@ -0,0 +1,65 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using ET;
+using FairyGUI;
+using UnityEngine;
+
+namespace GFGGame
+{
+    class ShareDataManager : SingletonBase<ShareDataManager>
+    {
+        //当前分享
+        public byte[] imageBytes;
+        public string outputImagePath; // 输出图片的路径
+
+        public void ShareImage(string imageUrl)
+        {
+            // 使用ShareSDK或其他分享插件来分享图片URL
+            // 这里需要根据具体插件的API来实现分享功能
+        }
+        public void CaptureCameraToImage(bool isJump = true)
+        {
+            Timers.inst.StartCoroutine(CaptureCameraImage(isJump));
+        }
+        private IEnumerator CaptureCameraImage(bool isJump = true)
+        {
+            yield return new WaitForEndOfFrame();
+            SetImageTargetPath();
+            Rect rect = new Rect(0, 0, UnityEngine.Screen.width, UnityEngine.Screen.height);
+            Texture2D tex = new Texture2D((int)rect.width, (int)rect.height, TextureFormat.ARGB32, false);//新建一个Texture2D对象
+            tex.ReadPixels(rect, 0, 0);//读取像素,屏幕左下角为0点
+            tex.Apply();//保存像素信息
+
+            // 将Texture2D保存为图片
+            imageBytes = tex.EncodeToPNG();
+
+            // 保存到磁盘
+            File.WriteAllBytes(outputImagePath, imageBytes);
+
+            Debug.Log("Camera capture saved to " + outputImagePath);
+            if(isJump)
+            {
+                ViewManager.Show<ShareView>();
+            }
+        }
+
+        public Texture2D ConvertBytesToTexture(byte[] imageBytes)
+        {
+            // 创建一个新的Texture2D对象
+            Texture2D texture = new Texture2D(UnityEngine.Screen.width, UnityEngine.Screen.height); // 宽度和高度需要根据图片实际尺寸来设置
+            texture.LoadImage(imageBytes); // 加载图片数据
+
+            // 应用纹理设置
+            texture.Apply();
+
+            return texture;
+        }
+
+        private void SetImageTargetPath()
+        {
+            outputImagePath = Application.persistentDataPath + "/share.png";
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Data/ShareDataManager.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f6a4059c0385b7a46a1627f232282213
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 1 - 1
GameClient/Assets/Game/HotUpdate/DressUp/SceneController.cs

@@ -198,7 +198,7 @@ namespace GFGGame
                 value = string.Format("DressUp/{0}", value);
                 string res = value.Split('/')[1];
                 animObj = PrefabManager.Instance.InstantiateSync(ResPathUtil.GetStoryDialogCGPath(value, res));
-                animObj.transform.position = new Vector3(0, -8, 0);
+                animObj.transform.position = new Vector3(0, -9, 0);
                 animObj.transform.localScale = new Vector3(2.5f, 2.5f, 2.5f);
                 //StoryDialogDataManager.Instance.dialogShowDelay = 0.4f;
             }

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs

@@ -23,6 +23,8 @@ namespace UI.CardSynthetic
         public GTextField m_txtShang;
         public GTextField m_txtJue;
         public GTextField m_txtZhi;
+        public GTextField m_skillCountText;
+        public GLoader m_skillIcon;
         public GTextField m_timesText;
         public GButton m_btnBack;
         public GButton m_btnHome;
@@ -92,6 +94,8 @@ namespace UI.CardSynthetic
             m_txtShang = (GTextField)comp.GetChild("txtShang");
             m_txtJue = (GTextField)comp.GetChild("txtJue");
             m_txtZhi = (GTextField)comp.GetChild("txtZhi");
+            m_skillCountText = (GTextField)comp.GetChild("skillCountText");
+            m_skillIcon = (GLoader)comp.GetChild("skillIcon");
             m_timesText = (GTextField)comp.GetChild("timesText");
             m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnHome = (GButton)comp.GetChild("btnHome");
@@ -118,6 +122,8 @@ namespace UI.CardSynthetic
             m_txtShang = null;
             m_txtJue = null;
             m_txtZhi = null;
+            m_skillCountText = null;
+            m_skillIcon = null;
             m_timesText = null;
             m_btnBack = null;
             m_btnHome = null;

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RoleInfo/UI_RoleInfoUI.cs

@@ -32,6 +32,7 @@ namespace UI.RoleInfo
         public GTextField m_txtRoleID;
         public GButton m_btnCopy;
         public GButton m_btnSetting;
+        public GButton m_btnShare;
         public Transition m_Hide;
         public Transition m_Show;
         public const string URL = "ui://374k3dwvd4iw6k";
@@ -106,6 +107,7 @@ namespace UI.RoleInfo
             m_txtRoleID = (GTextField)comp.GetChild("txtRoleID");
             m_btnCopy = (GButton)comp.GetChild("btnCopy");
             m_btnSetting = (GButton)comp.GetChild("btnSetting");
+            m_btnShare = (GButton)comp.GetChild("btnShare");
             m_Hide = comp.GetTransition("Hide");
             m_Show = comp.GetTransition("Show");
         }
@@ -139,6 +141,7 @@ namespace UI.RoleInfo
             m_txtRoleID = null;
             m_btnCopy = null;
             m_btnSetting = null;
+            m_btnShare = null;
             m_Hide = null;
             m_Show = null;
             if(disposeTarget && target != null)

+ 8 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Share.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4554d6a92e869a641b2daa03256f737d
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 92 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Share/UI_ShareUI.cs

@@ -0,0 +1,92 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Share
+{
+    public partial class UI_ShareUI
+    {
+        public GComponent target;
+        public GGraph m_mask;
+        public GImage m_icon;
+        public GLoader m_CRCodeIcon;
+        public GButton m_btnShare;
+        public GButton m_btnShareWX;
+        public GButton m_btnShareWB;
+        public GGroup m_shareGrade;
+        public GButton m_btnClose;
+        public const string URL = "ui://1f45z9smxfki0";
+        public const string PACKAGE_NAME = "Share";
+        public const string RES_NAME = "ShareUI";
+        private static UI_ShareUI _proxy;
+
+        public static UI_ShareUI Create(GObject gObject = null)
+        {
+            var ui = new UI_ShareUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ShareUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ShareUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_mask = (GGraph)comp.GetChild("mask");
+            m_icon = (GImage)comp.GetChild("icon");
+            m_CRCodeIcon = (GLoader)comp.GetChild("CRCodeIcon");
+            m_btnShare = (GButton)comp.GetChild("btnShare");
+            m_btnShareWX = (GButton)comp.GetChild("btnShareWX");
+            m_btnShareWB = (GButton)comp.GetChild("btnShareWB");
+            m_shareGrade = (GGroup)comp.GetChild("shareGrade");
+            m_btnClose = (GButton)comp.GetChild("btnClose");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_mask = null;
+            m_icon = null;
+            m_CRCodeIcon = null;
+            m_btnShare = null;
+            m_btnShareWX = null;
+            m_btnShareWB = null;
+            m_shareGrade = null;
+            m_btnClose = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Share/UI_ShareUI.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 58a30b77ea179a841ad6dac95303100c
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 16 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/ShareSProxy.cs

@@ -0,0 +1,16 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Net;
+using System.Net.Http;
+using ET;
+using FairyGUI;
+using UnityEngine;
+using UnityEngine.Networking;
+
+namespace GFGGame
+{
+    public static class ShareSProxy
+    {
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/ShareSProxy.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f730c26de3b215b49b664f005b74a8d5
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 5 - 0
GameClient/Assets/Game/HotUpdate/Utils/ResPathUtil.cs

@@ -309,5 +309,10 @@ namespace GFGGame
         {
             return $"{LUCKY_BOX_TITLE_PATH}{res}.{extName}";
         }
+        
+        public static string GetEmojiResPath(string dir, string res, string extName = "prefab")
+        {
+            return $"{ANIMATION_DIR_PATH}/{dir}/{res}.{extName}";
+        }
     }
 }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs

@@ -109,7 +109,7 @@ namespace GFGGame
         }
         private void OnBtnGetClick()
         {
-            _ui.m_btnBuy.target.visible = false;
+            //_ui.m_btnBuy.target.visible = false;
             ReqShopBuy(shopId).Coroutine();
         }
         private void UpdateBtn()

+ 13 - 0
GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs

@@ -84,6 +84,8 @@ namespace GFGGame
 
             _valueBarController.OnShown();
             _ui.m_loaBg2.url = ResPathUtil.GetBgImgPath("hc_bj_1");
+            ItemCfg item = ItemCfgArray.Instance.GetCfg(_cardItem.transItem);
+            _ui.m_skillIcon.url = ResPathUtil.GetIconPath(item.res,"png");
             var response = await ClothingSyntheticSProxy.GetCardSyntheticCount(_cardId);
             cardSyntheticCount = response;
             UpdateView();
@@ -161,6 +163,17 @@ namespace GFGGame
             UpdateName(_cardItem.name);
             _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.url = ResPathUtil.GetCardPath(_cardItem.res);
             _ui.m_timesText.text = string.Format("合成次数:{0}/{1}", cardSyntheticCount, _cardItem.syntheticTimes);
+            ItemData itemCount;
+            long count;
+            if (BagDataManager.Instance.GetBagData().TryGetValue(_cardItem.transItem, out itemCount))
+            {
+                count = itemCount.num;
+            }
+            else
+            {
+                count = 0;
+            }
+            _ui.m_skillCountText.text = string.Format("已拥有:{0}", count.ToString());
             UpdateSelectedItemInfo();
         }
 

+ 13 - 4
GameClient/Assets/Game/HotUpdate/Views/ClothingUpgarde/ClothingUpgradeView.cs

@@ -62,12 +62,14 @@ namespace GFGGame
         protected override void AddEventListener()
         {
             base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, Update);
             EventAgent.AddEventListener(ConstMessage.COLLEGE_UPGRADE, Update);
             EventAgent.AddEventListener(ConstMessage.COLLEGE_UPGRADE, LevelUpSuccessTip);
         }
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, Update);
             EventAgent.RemoveEventListener(ConstMessage.COLLEGE_UPGRADE, Update);
             EventAgent.RemoveEventListener(ConstMessage.COLLEGE_UPGRADE, LevelUpSuccessTip);
         }
@@ -144,13 +146,20 @@ namespace GFGGame
                     //item.m_txtCount.SetVar("count", itemData.num.ToString()).FlushVars();
                     ItemData itemCount;
                     long count;
-                    if (BagDataManager.Instance.GetBagData().TryGetValue(collegeBoostNextCfg.consumeArr[i][0], out itemCount))
-                    {
-                        count = itemCount.num;
+                    if(itemCfg.itemType == ConstItemType.DRESS_UP)
+                    { 
+                        count = ItemDataManager.GetItemNum(collegeBoostNextCfg.consumeArr[i][0]);
                     }
                     else
                     {
-                        count = 0;
+                        if (BagDataManager.Instance.GetBagData().TryGetValue(collegeBoostNextCfg.consumeArr[i][0], out itemCount))
+                        {
+                            count = itemCount.num;
+                        }
+                        else
+                        {
+                            count = 0;
+                        }
                     }
                     item.m_txtCount.text = count.ToString() + "/" + collegeBoostNextCfg.consumeArr[i][1].ToString();
                     item.m_QualityType.selectedIndex = itemCfg.rarity - 1;

+ 70 - 9
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryDialogView.cs

@@ -20,6 +20,7 @@ namespace GFGGame
         private GameObject _sceneObject;
         private GameObject _animObject;
         private EffectUI _effectUI1;
+        private EffectUI _effect;
         private DressUpObj _dressUpObj;
         private GameObject _dressUpSceneObj;
         private GameObject _selfHeadImgObj;
@@ -70,6 +71,8 @@ namespace GFGGame
             _isShowLetters = false;
             EffectUIPool.Recycle(_effectUI1);
             _effectUI1 = null;
+            EffectUIPool.Recycle(_effect);
+            _effect = null;
             _onScreenEffectComplete = null;
             _typingEffect = null;
             if (_ui != null)
@@ -157,8 +160,12 @@ namespace GFGGame
             {
                 skipable = true;
             }
-
+            if (MainStoryDataManager.currentLevelCfgId == 100001001 && !InstanceZonesDataManager.CheckLevelPass(MainStoryDataManager.currentLevelCfgId))
+            {
+                skipable = false;
+            }
             _ui.m_btnSkip.visible = skipable;
+
             _ui.m_c1.selectedIndex = 0;
 
             if (_storyStartID == MainStoryDataManager.priorId)
@@ -357,6 +364,7 @@ namespace GFGGame
             _ui.m_dialogName.target.visible = false;
             _ui.m_dialogHead.target.visible = false;
             float delay = 0;
+            bool isWait = false;
             //屏幕效果
             if (_currentStepCfg != null)
             {
@@ -367,11 +375,12 @@ namespace GFGGame
                 }
                 else if (_currentStepCfg.blankScreenDur > 0)
                 {
+                    isWait = true;
                     delay = _currentStepCfg.blankScreenDur;
                     UpdatePic("0");
                 }
             }
-            if (delay > 0)
+            if (delay > 0 && !isWait)
             {
                 //转换成秒
                 delay = delay / 1000f;
@@ -379,6 +388,22 @@ namespace GFGGame
                 Timers.inst.Add(delay, 1, OnScreenEffectComplete);
                 StoryDialogDataManager.Instance.dialogShowDelay = 0.6f;
             }
+            else if (isWait)
+            {
+                if (_autoPlay)
+                {
+                    //转换成秒
+                    delay = delay / 1000f;
+                    _onScreenEffectComplete = OnScreenEffectComplete;
+                    Timers.inst.Add(delay, 1, OnScreenEffectComplete);
+                    StoryDialogDataManager.Instance.dialogShowDelay = 0.6f;
+                }
+                else
+                {
+                    _onScreenEffectComplete = OnScreenEffectComplete;
+                    StoryDialogDataManager.Instance.dialogShowDelay = 0.6f;
+                }
+            }
             else
             {
                 OnScreenEffectComplete();
@@ -414,7 +439,7 @@ namespace GFGGame
             _currentStepCfg = storyDialogCfg;
             UpdateMusic(storyDialogCfg.musicRes);
             UpdateBg(storyDialogCfg.bgRes);
-            UpdatePic(storyDialogCfg.picRes, storyDialogCfg.faceRes);
+            UpdatePic(storyDialogCfg.picRes, storyDialogCfg.faceRes, storyDialogCfg.emojiRes);
 
             UpdateAnim(storyDialogCfg.aniRes);
             UpdateRoleObj(storyDialogCfg.name);
@@ -502,7 +527,7 @@ namespace GFGGame
                 //}
             }
 
-            _ui.m_loaMask.url = ResPathUtil.GetBgImgPath(storyDialogCfg.maskRes);
+            _ui.m_loaMask.url = ResPathUtil.GetSceneBgPath(storyDialogCfg.maskRes);
             _ui.m_btnAutoPlay.enabled = true;
             _ui.m_list.visible = false;
             var content = storyDialogCfg.content.Replace("self", RoleDataManager.roleName);
@@ -792,7 +817,7 @@ namespace GFGGame
             }
         }
 
-        private void UpdatePic(string value, string faceValue = "")
+        private void UpdatePic(string value, string faceValue = "", string emojiValue = "")
         {
             if (IsTeaParty)
             {
@@ -803,13 +828,26 @@ namespace GFGGame
             {
                 SceneController.UpdateDialogPic(value, _sceneObject);
             }
-
             if (faceValue.Length > 0)
             {
                 SceneController.InitPicFace(faceValue, _sceneObject);
             }
+            if (emojiValue.Length > 0)
+            {
+                if(emojiValue != "0")
+                {
+                    SceneController.UpdateDialogPic("0", _sceneObject);
+                }
+                UpdateLiveEmoji(emojiValue);
+            }
+        }
+        private void UpdateLiveEmoji(string EmojiRes)
+        {
+            if (EmojiRes.Length > 0 && !IsTeaParty)
+            {
+                SceneController.UpdateEmojiAni(EmojiRes, ref _animObject);
+            }
         }
-
         private void UpdateAnim(string value)
         {
             if (value.Length > 0 && !IsTeaParty)
@@ -877,9 +915,23 @@ namespace GFGGame
             }
         }
 
-        private void PlayEffect(string[] infos)
+        private void PlayEffect(string[] value)
         {
-
+            if (value.Length > 0)
+            {
+                if (value[0] == "0")
+                {
+                    EffectUIPool.Recycle(_effect);
+                    _effect = null;
+                }
+                else
+                {
+                    EffectUIPool.Recycle(_effect);
+                    _effect = null;
+                    _effect = EffectUIPool.CreateEffectUI(_ui.m_effect, "ui_gyp", value[0]);
+                    _ui.m_effect.visible = true;
+                }
+            }
         }
 
         private void PlayShake(int[] shakeInfoArr)
@@ -1016,6 +1068,15 @@ namespace GFGGame
                         resList.Add(aniRes);
                     }
                 }
+                if (cfg.emojiRes.Length > 0 && cfg.emojiRes != "0")
+                {
+                    string EmojiPath = string.Format("DressUp/{0}", cfg.emojiRes);
+                    string aniRes = ResPathUtil.GetEmojiResPath(EmojiPath, cfg.emojiRes);
+                    if (!resList.Contains(aniRes))
+                    {
+                        resList.Add(aniRes);
+                    }
+                }
             }
 
             ResourceDownloaderOperation downloaderOperation = YooAssets.CreateBundleDownloader(resList.ToArray(), 3, 3);

+ 9 - 8
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/GMPanelView.cs

@@ -447,14 +447,15 @@ namespace GFGGame
 
         private void OnClickShareTest3(EventContext context = null)
         {
-            ShareContent content = new ShareContent();
-            content.SetText("this is a test string.");
-            content.SetImageUrl("https://f1.webshare.mob.com/code/demo/img/1.jpg");
-            content.SetTitle("test title");
-            content.SetSite("Mob-ShareSDK");
-            content.SetComment("test description");
-            content.SetShareType(ContentType.Image);
-            QDShareManager.Instance.ShareContent(PlatformType.WeChat, content);
+            ShareDataManager.Instance.CaptureCameraToImage();
+            //ShareContent content = new ShareContent();
+            //content.SetText("this is a test string.");
+            //content.SetImageUrl("https://f1.webshare.mob.com/code/demo/img/1.jpg");
+            //content.SetTitle("test title");
+            //content.SetSite("Mob-ShareSDK");
+            //content.SetComment("test description");
+            //content.SetShareType(ContentType.Image);
+            //QDShareManager.Instance.ShareContent(PlatformType.WeChat, content);
         }
     }
 }

+ 6 - 1
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/RoleInfoView.cs

@@ -42,6 +42,7 @@ namespace GFGGame
             _ui.m_btnCardGuide.target.onClick.Add(OnBtnCardGuideClick);
             _ui.m_btnTaskArchieveGuide.target.onClick.Add(OnBtnTaskArchieveClick);
 
+            _ui.m_btnShare.onClick.Add(OnBtnShareClick);
             _ui.m_btnSkill.onClick.Add(OnBtnSkillClick);
             _ui.m_btnSetting.onClick.Add(OnBtnSettingClick);
             _ui.m_btnCopy.onClick.Add(OnBtnCopyClick);
@@ -81,7 +82,7 @@ namespace GFGGame
 
             _ui.m_txtSlogan.text = RoleDataManager.slogan;
             UpdateAllInfo();
-
+            _ui.m_btnShare.visible = false;
         }
 
         protected override void OnHide()
@@ -261,6 +262,10 @@ namespace GFGGame
             SettingView.refresh = true;
             ViewManager.Show<SettingView>();
         }
+        private void OnBtnShareClick()
+        {
+            ShareDataManager.Instance.CaptureCameraToImage();
+        }
 
         private void OnBtnCopyClick()
         {

+ 8 - 0
GameClient/Assets/Game/HotUpdate/Views/Share.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2da3cf1fa3088284fa92d341a58769ae
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 80 - 0
GameClient/Assets/Game/HotUpdate/Views/Share/ShareView.cs

@@ -0,0 +1,80 @@
+using ET;
+using FairyGUI;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.EventSystems;
+using System.IO;
+using UnityEngine.Networking;
+using cn.sharesdk.unity3d;
+using UI.Share;
+
+namespace GFGGame
+{
+    public class ShareView : BaseView
+    {
+        private UI_ShareUI _ui;
+        public override void Dispose()
+        {
+            if (_ui != null)
+            {
+                _ui.Dispose();
+            }
+            _ui = null;
+            base.Dispose();
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_ShareUI.PACKAGE_NAME;
+            _ui = UI_ShareUI.Create();
+            this.viewCom = _ui.target;
+            isfullScreen = true;
+            isReturnView = true;
+
+            _ui.m_btnShare.onClick.Add(BtnOnclickShare);
+            _ui.m_btnClose.onClick.Add(this.Hide);
+            _ui.m_btnShareWB.onClick.Add(BtnOnclickShareWb);
+            _ui.m_btnShareWX.onClick.Add(BtnOnClickShareWX);
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+            Texture2D imageText = ShareDataManager.Instance.ConvertBytesToTexture(ShareDataManager.Instance.imageBytes);
+            _ui.m_icon.texture = new NTexture(imageText);
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+        }
+        private void BtnOnclickShare()
+        {
+            ShareDataManager.Instance.CaptureCameraToImage(false);
+            ShareSDKFun(PlatformType.WeChatMoments);
+        }
+        private void BtnOnclickShareWb()
+        {
+            ShareDataManager.Instance.CaptureCameraToImage(false);
+            ShareSDKFun(PlatformType.SinaWeibo);
+        }
+        private void BtnOnClickShareWX()
+        {
+            ShareDataManager.Instance.CaptureCameraToImage(false);
+            ShareSDKFun(PlatformType.WeChat);
+        }
+        private void ShareSDKFun(PlatformType platformType)
+        {
+            QDShareManager.Instance.SubmitPolicyGrantResult();
+            ShareContent content = new ShareContent();
+            content.SetText("万世镜");
+            content.SetImagePath(ShareDataManager.Instance.outputImagePath);
+            content.SetTitle("wsj");
+            content.SetSite("Mob-ShareSDK");
+            content.SetComment("test description");
+            content.SetShareType(ContentType.Image);
+            QDShareManager.Instance.ShareContent(platformType, content);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/Share/ShareView.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b3751be0fe7e15142b39456b660b4e7e
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 10 - 7
GameClient/Assets/Game/HotUpdate/Views/Store/StoreView.cs

@@ -187,15 +187,18 @@ namespace GFGGame
                 //成长基金单独处理
                 if (_storeTabCfgs[index][0] == "成长基金")
                 {
-                    //ActivityOpenCfg activityCfg = ActivityOpenCfgArray.Instance.GetCfg(3002);
-                    //if (RoleDataManager.lvl < activityCfg.level)
+                    ActivityOpenCfg activityCfg = ActivityOpenCfgArray.Instance.GetCfg(3002);
+                    if (RoleDataManager.lvl < activityCfg.level)
                     {
-                        item.visible = false;
+                        if (!RedDotDataManager.Instance.GetGrowthFundRewardRed())
+                        {
+                            item.visible = false;
+                        }
+                    }
+                    else
+                    {
+                        item.visible = true;
                     }
-                    //else
-                    //{
-                    //    item.visible = true;
-                    //}
                 }
                 item.title = _storeTabCfgs[index][0];
                 menu2 = int.Parse(_storeTabCfgs[index][1]);

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelView.cs

@@ -208,6 +208,7 @@ namespace GFGGame
 
                 //}
                 item.m_c1.selectedIndex = TimeTracingDataManager.Instance.GetChapterRewardIDStatus(datas[i].id, datas[i].paramsArr[0]);
+                RedDotController.Instance.SetComRedDot(item.target, TimeTracingDataManager.Instance.GetChapterRewardIDStatus(datas[i].id, datas[i].paramsArr[0]) == 1, "", -10, 25);
                 item.m_icon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(datas[i].bonusArr[0][0]).res, "png");
                 item.m_count.text = datas[i].count.ToString();
                 if (item.target.data == null)

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingSwitchView.cs

@@ -95,7 +95,7 @@ namespace GFGGame
             {
                 listItem.target.onClick.Add(OnClickListChapterItem);
             }
-            RedDotController.Instance.SetComRedDot(listItem.target, TimeTracingDataManager.Instance.GetChapterIDRewardStatus(chapterIdList[index - 1]));
+            RedDotController.Instance.SetComRedDot(listItem.target, TimeTracingDataManager.Instance.GetChapterIDRewardStatus(chapterIdList[index - 1]), "", 0, 65);
             listItem.target.data = new List<int>() { index, suitIdList[index - 1], chapterIdList[index - 1], isLock };
             UI_TimeTracingSwitchItem.ProxyEnd();
         }

+ 1 - 1
GameClient/Assets/Plugins/Android/baseProjectTemplate.gradle.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 66a4560ec1a0dd640b1cb6888270c552
+guid: af9cc692d722e2a4299568439af42567
 DefaultImporter:
   externalObjects: {}
   userData: 

+ 1 - 1
GameClient/Assets/Plugins/Android/gradleTemplate.properties.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: d5ebef3a01aae6b4c993d9268b3c4dee
+guid: 4f713b8861a31a841a13e8666d75549d
 DefaultImporter:
   externalObjects: {}
   userData: 

+ 1 - 1
GameClient/Assets/Plugins/Android/launcherTemplate.gradle.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: af6edf4205bbfba41bc886e3210599d6
+guid: 9c684b72e4e62e54093076fcc306c48f
 DefaultImporter:
   externalObjects: {}
   userData: 

BIN
GameClient/Assets/Plugins/Android/libs/douyou-release.aar


+ 0 - 32
GameClient/Assets/Plugins/Android/libs/douyou-release.aar.meta

@@ -1,32 +0,0 @@
-fileFormatVersion: 2
-guid: 586f79cda14c10f46bfc629a29771d7d
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Android: Android
-    second:
-      enabled: 1
-      settings: {}
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 0
-      settings:
-        DefaultValueInitialized: true
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
GameClient/Assets/Plugins/Android/libs/douyouTT-release.aar


+ 0 - 32
GameClient/Assets/Plugins/Android/libs/douyouTT-release.aar.meta

@@ -1,32 +0,0 @@
-fileFormatVersion: 2
-guid: 3a452077ab5726045aefeac7735faeb6
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Android: Android
-    second:
-      enabled: 1
-      settings: {}
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 0
-      settings:
-        DefaultValueInitialized: true
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 249
GameClient/Assets/Plugins/com/easy/bridge/DouYouMainActivity.java

@@ -1,249 +0,0 @@
-package com.easy.bridge;
-
-import android.os.Bundle;
-
-import android.content.Intent;
-import android.content.res.Configuration;
-
-import com.sdk.douyou.DouYou;
-import com.sdk.douyou.listen.ActiveGameInterface;
-import com.sdk.douyou.listen.EnterGameInterface;
-import com.sdk.douyou.listen.SwitchAccountInterface;
-import com.sdk.douyou.adapter.DouYouSDKListenerAdapter;
-import com.sdk.douyou.listen.DouYouSDKListener;
-import com.sdk.douyou.bean.OrderInfoBean;
-import com.sdk.douyou.bean.RoleInfoBean;
-import com.sdk.douyou.util.LogUtil;
-import com.tencent.bugly.crashreport.CrashReport;
-import com.unity3d.player.UnityPlayer;
-import com.unity3d.player.UnityPlayerActivity;
-
-public class DouYouMainActivity extends UnityPlayerActivity
-{
-    private int uid;
-
-    private Bundle _savedInstanceState;
-
-    @Override protected void onCreate(Bundle savedInstanceState)
-    {
-        _savedInstanceState = savedInstanceState;
-        super.onCreate(savedInstanceState);
-
-        CrashReport.initCrashReport(getApplicationContext(), "766c5bdb0f", false);
-    }
-
-    //初始化douYou Sdk
-    public void initDouYou(String adId) {
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "ReceiveMessage", "SDK 实例化开始");
-        DouYou.getInstance().reportActive(this, adId);
-        DouYou.getInstance().setActivesuccessCallBack(new ActiveGameInterface() {
-            @Override
-            public void Activesuccess() {
-                UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "InitSuccess", "SDK 实例化成功");
-            }
-        });
-
-        DouYou.getInstance().init(this, adId, true, new EnterGameInterface() {
-            @Override
-            public void enter(int resUid, String token) {
-                uid = resUid;
-                // 登录成功后的处理逻辑,可以将 uid 和 token 发送给Unity
-                DouYou.getInstance().showFloatBall(DouYouMainActivity.this);
-                UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "LoginSuccess", resUid + "|gfg|" + token);
-            }
-        }, new SwitchAccountInterface() {
-            @Override
-            public void home() {
-                // 切换账号或退出登录后的处理逻辑,可以通知Unity返回游戏登录界面
-                UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "OutLoginSuccess",  "退出登录成功!");
-            }
-        });
-
-        DouYou.getInstance().onCreate(this, _savedInstanceState);
-
-        //监听支付回调
-        DouYou.getInstance().setSDKListener(new DouYouSDKListenerAdapter(){
-            @Override
-            public void onPayResult(int code, OrderInfoBean params) {
-                // params.getOrderID() 研发ID
-                // params.getXxx() 是DouYou的订单ID
-                switch (code) {
-                    case DouYouSDKListener.CODE_PAY_FAIL: //支付失败
-                        LogUtil.debug("pay fail : " + params.toString());
-                        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "PayFail", code + "|gfg|" + params.toString());
-                        break;
-                    case DouYouSDKListener.CODE_PAY_SUCCESS:  //支付成功
-                        LogUtil.debug("pay success : " + params.toString());
-                        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "PaySuccess", code + "|gfg|" + params.toString());
-                        break;
-                }
-            }
-        });
-    }
-
-    //显示登录界面
-    public void extShowLogin(){
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "ReceiveMessage", "显示登录界面");
-        DouYou.getInstance().showLogin(DouYouMainActivity.this);
-    }
-
-    //角色登录数据上报
-    public void extReportRoleLogin(String id, String level, String nickname, String sid, String serverName){
-        RoleInfoBean roleInfo = new RoleInfoBean();
-        roleInfo.setType(RoleInfoBean.TYPE_ENTER_GAME);
-        roleInfo.setSid(sid);
-        roleInfo.setServerName(serverName);
-        roleInfo.setId(id);
-        roleInfo.setNickname(nickname);
-        roleInfo.setLevel(level);
-       
-        DouYou.getInstance().reportRoleLogin(DouYouMainActivity.this, roleInfo);
-    }
-
-    //角色数据上报
-    public void extReportRole(int logType, String id, String level, String nickname, String sid, String serverName){
-        RoleInfoBean roleInfo = new RoleInfoBean();
-        roleInfo.setType(logType);
-        roleInfo.setSid(sid);
-        roleInfo.setServerName(serverName);
-        roleInfo.setId(id);
-        roleInfo.setNickname(nickname);
-        roleInfo.setLevel(level);
-
-        // 获取当前时间的毫秒级时间戳
-        long currentTimeMillis = System.currentTimeMillis();
-        // 将毫秒级时间戳转换为秒级时间戳
-        long currentTimeSeconds = currentTimeMillis / 1000;
-        if(logType == RoleInfoBean.TYPE_CREATE_ROLE){
-            roleInfo.setRoleCreateTime(currentTimeSeconds + "");
-        }
-        else if(logType == RoleInfoBean.TYPE_LEVEL_UP){
-            roleInfo.setRoleLevelUpTime(currentTimeSeconds + "");
-        }
-
-        DouYou.getInstance().reportRole(DouYouMainActivity.this, roleInfo);
-    }
-
-    //退出登录
-    public void extShowLogout(){
-        DouYou.getInstance().showLogout(DouYouMainActivity.this);
-    }
-
-    //退出app
-    public void extExitApp(){
-        DouYou.getInstance().exit();
-    }
-
-    //cp激励广告订单id  登录后用户uid  角色id
-    public void extOpenGroMoreAD(String cpAdOrderId, String roleId){
-        DouYou.getInstance().openGroMoreAD(cpAdOrderId, Integer.toString(uid), roleId);
-    }
-
-    //调起支付
-    public void extShowSwitchPayment(String orderId, String orderMoney, String productId, String productName, String productDesc, String roleServiceId, String serviceName, String roleId, String roleName, String roleLevel, String other){
-        OrderInfoBean orderInfoBean = new OrderInfoBean();
-        orderInfoBean.setOrderID(orderId);
-        orderInfoBean.setCpOrderMoney(orderMoney);
-        orderInfoBean.setProductId(productId);
-        orderInfoBean.setProductName(productName);
-        orderInfoBean.setProductDesc(productDesc);
-        orderInfoBean.setRoleServiceId(roleServiceId);
-        orderInfoBean.setRoleServiceName(serviceName);
-        orderInfoBean.setRoleId(roleId);
-        orderInfoBean.setRoleName(roleName);
-        orderInfoBean.setRoleLevel(roleLevel);
-        orderInfoBean.setOther(other);
-        
-        DouYou.getInstance().showSwitchPayment(DouYouMainActivity.this, orderInfoBean);
-    }
-
-    @Override
-    protected void onStart() {
-        super.onStart();
-        DouYou.getInstance().onStart(this);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnStart", "onStart finish");
-    }
-
-    @Override
-    protected void onPause() {
-        super.onPause();
-        DouYou.getInstance().onPause(this);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnPause", "onPause finish");
-    }
-
-    @Override
-    protected void onResume() {
-        super.onResume();
-        DouYou.getInstance().onResume(this);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnResume", "onResume finish");
-    }
-
-    @Override
-    protected void onStop() {
-        super.onStop();
-        DouYou.getInstance().onStop(this);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnStop", "onStop finish");
-    }
-
-    @Override
-    protected void onDestroy() {
-        super.onDestroy();
-        DouYou.getInstance().onDestroy(this);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnDestroy", "onDestroy finish");
-    }
-
-    @Override
-    protected void onRestart() {
-        super.onRestart();
-        DouYou.getInstance().onRestart(this);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnRestart", "onRestart finish");
-    }
-
-    @Override
-    public void onBackPressed() {
-        DouYou.getInstance().onBackPressed();
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnBackPressed", "onBackPressed finish");
-    }
-
-    @Override
-    protected void onNewIntent(Intent intent) {
-        super.onNewIntent(intent);
-        DouYou.getInstance().onNewIntent(intent);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnNewIntent", "onNewIntent finish");
-    }
-
-    @Override
-    public void onConfigurationChanged(Configuration newConfig) {
-        super.onConfigurationChanged(newConfig);
-        DouYou.getInstance().onConfigurationChanged(newConfig);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnConfigurationChanged", "onConfigurationChanged finish");
-    }
-
-    @Override
-    protected void onSaveInstanceState(Bundle outState) {
-        super.onSaveInstanceState(outState);
-        DouYou.getInstance().onSaveInstanceState(outState);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnSaveInstanceState", "onSaveInstanceState finish");
-    }
-
-    @Override
-    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
-        super.onActivityResult(requestCode, resultCode, data);
-        DouYou.getInstance().onActivityResult(requestCode, resultCode, data);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnActivityResult", "onActivityResult finish");
-    }
-
-    @Override
-    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
-        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
-        DouYou.getInstance().onRequestPermissionResult(DouYouMainActivity.this,requestCode,permissions,grantResults);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnRequestPermissionResult", "onRequestPermissionsResult finish");
-    }
-
-    @Override
-    public void onWindowFocusChanged(boolean hasFocus) {
-        super.onWindowFocusChanged(hasFocus);
-        DouYou.getInstance().onWindowFocusChanged(hasFocus);
-        UnityPlayer.UnitySendMessage("DouYouSDKGameObject", "SdkOnWindowFocusChanged", "onWindowFocusChanged finish");
-    }
-}

+ 0 - 32
GameClient/Assets/Plugins/com/easy/bridge/DouYouMainActivity.java.meta

@@ -1,32 +0,0 @@
-fileFormatVersion: 2
-guid: d9bab6b10a929ac46bfc239972f59adc
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Android: Android
-    second:
-      enabled: 1
-      settings: {}
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 0
-      settings:
-        DefaultValueInitialized: true
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_atlas0!a.png


BIN
GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_atlas0.png


BIN
GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_fui.bytes


BIN
GameClient/Assets/ResIn/UI/RoleInfo/RoleInfo_fui.bytes


+ 8 - 0
GameClient/Assets/ResIn/UI/Share.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b47b4cfc7ccd16247ab7a56813b70b2a
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Share/Share_atlas0!a.png


+ 120 - 0
GameClient/Assets/ResIn/UI/Share/Share_atlas0!a.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: 4e1413ed958e66b4da9c8767eb6e29d1
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Share/Share_atlas0.png


+ 120 - 0
GameClient/Assets/ResIn/UI/Share/Share_atlas0.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: a8cb1005cb2ed964391d4e22352dca46
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Share/Share_fui.bytes


+ 7 - 0
GameClient/Assets/ResIn/UI/Share/Share_fui.bytes.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 23c14c3fd00db904b8ac96b9d38dcbd5
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Store/Store_fui.bytes


+ 4 - 4
GameClient/ProjectSettings/ProjectSettings.asset

@@ -173,7 +173,7 @@ PlayerSettings:
   overrideDefaultApplicationIdentifier: 1
   AndroidBundleVersionCode: 1
   AndroidMinSdkVersion: 23
-  AndroidTargetSdkVersion: 26
+  AndroidTargetSdkVersion: 0
   AndroidPreferredInstallLocation: 1
   aotOptions: 
   stripEngineCode: 1
@@ -250,9 +250,9 @@ PlayerSettings:
   useCustomMainManifest: 1
   useCustomLauncherManifest: 0
   useCustomMainGradleTemplate: 0
-  useCustomLauncherGradleManifest: 0
-  useCustomBaseGradleTemplate: 0
-  useCustomGradlePropertiesTemplate: 0
+  useCustomLauncherGradleManifest: 1
+  useCustomBaseGradleTemplate: 1
+  useCustomGradlePropertiesTemplate: 1
   useCustomProguardFile: 0
   AndroidTargetArchitectures: 2
   AndroidTargetDevices: 0