hch
1 天以前 eb25e1a02071883ec7e93c4057ae0f16e8c9a020
515 【挑战】PVP群英榜
5个文件已修改
5个文件已添加
170 ■■■■■ 已修改文件
Main/System/BillboardRank/PlayerRankCell.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/BillboardRank/PlayerRankWin.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/ChallengeTab/QunyingTabHandler.cs 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/ChallengeTab/QunyingTabHandler.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Qunying.meta 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Qunying/QunyingManager.cs 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Qunying/QunyingManager.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Redpoint/MainRedDot.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Utility/EnumHelper.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Utility/UIHelper.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/BillboardRank/PlayerRankCell.cs
@@ -11,6 +11,7 @@
    [SerializeField] AvatarCell avatarCell; // 头像中点击查询玩家详情
    [SerializeField] Text rankText;
    [SerializeField] Text rankValueText;    //排名比较内容
    [SerializeField] Transform valueObj;
    [SerializeField] Text nameText;
    [SerializeField] OfficialTitleCell officialTitleCell;
    [SerializeField] Button queryPlayerBtn; //后续添加点击查看玩家详情
@@ -18,6 +19,16 @@
    // rank 为0 代表玩家自己
    public void Display(int rankType, int rank)
    {
        if (rankType == 10)
        {
            //群英榜
            valueObj.SetActive(false);
        }
        else
        {
            valueObj.SetActive(true);
        }
        RankData rankData = null;
        int viewPlayerId = (int)PlayerDatas.Instance.baseData.PlayerID;
        if (rank != 0)
@@ -67,6 +78,7 @@
                AvatarHelper.TryViewOtherPlayerInfo(viewPlayerId);
            });
        }
    }
}
Main/System/BillboardRank/PlayerRankWin.cs
@@ -17,6 +17,8 @@
    [SerializeField] Text cmpStrText;   //排行榜排名内容,如战力,通过层数等
    [SerializeField] PlayerRankCell myRankCell;
    [SerializeField] Button btnClose;
    [SerializeField] Image rank3BG;
    //数据后续从manager中记录获取
    [HideInInspector] public int groupValue1 = 0;   //一般用于跨服
@@ -54,6 +56,14 @@
        ShowTop3();
        CreateScroller();
        ShowMyRank();
        if (IconConfig.HasKey("Rank3BG_" + rankType))
        {
            rank3BG.SetSprite("Rank3BG_" + rankType);
        }
        else
        {
            rank3BG.SetSprite("Rank3BG_default");
        }
    }
    void CreateScroller()
Main/System/ChallengeTab/QunyingTabHandler.cs
New file
@@ -0,0 +1,66 @@
using System;
using System.Collections.Generic;
public class QunyingTabHandler : BaseChallengeTabHandler
{
    protected override int GetIndex() => 5;
    protected override int GetOpenState() => 0; // 0=FuncID
    protected override int GetFuncId() => (int)FuncOpenEnum.Qunying;
    protected override int GetRedpointId() => MainRedDot.Qunying;
    protected override string GetCountInfo()
    {
        long nowCount = UIHelper.GetMoneyCnt(QunyingManager.challengeMoneyType);
        return UIHelper.AppendColor(nowCount > 0 ? TextColType.Green : TextColType.Red, Language.Get("Qunying1", nowCount));
    }
    protected override Action GetOnClickAction()
    {
        return HandleArenaNavigation;
    }
    private void HandleArenaNavigation()
    {
        if (!FuncOpen.Instance.IsFuncOpen(GetFuncId(), true))
            return;
        UIManager.Instance.CloseWindow<ChallengeTabWin>();
        // BattleField battle = BattleManager.Instance.GetBattleFieldByMapID(32000);
        // if (battle != null)
        // {
        //     ArenaBattleWin battleWin;
        //     if (!UIManager.Instance.IsOpened<ArenaBattleWin>())
        //     {
        //         battleWin = UIManager.Instance.OpenWindow<ArenaBattleWin>();
        //     }
        //     else
        //     {
        //         battleWin = UIManager.Instance.GetUI<ArenaBattleWin>();
        //     }
        //     battleWin.SetBattleField(battle);
        // }
        // else
        // {
        //     UIManager.Instance.OpenWindow<ArenaWin>();
        // }
    }
    protected override void SubscribeToSpecificEvents()
    {
        PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataRefresh;
    }
    protected override void UnsubscribeFromSpecificEvents()
    {
        PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataRefresh;
    }
    private void OnPlayerDataRefresh(PlayerDataType type)
    {
        if (type == PlayerDataType.QunyingWDL)
        {
            Refresh();
        }
    }
}
Main/System/ChallengeTab/QunyingTabHandler.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 23ca017e70c80514785357603b411f95
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Main/System/Qunying.meta
New file
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 238d6b6ac93c28c4a9701aed893a04c1
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData:
  assetBundleName:
  assetBundleVariant:
Main/System/Qunying/QunyingManager.cs
New file
@@ -0,0 +1,37 @@
using System.Collections.Generic;
using UnityEngine;
using LitJson;
using System;
public class QunyingManager : GameSystemManager<QunyingManager>
{
    public const int challengeMoneyType = 56;
    public const int rankType = 10;
    public override void Init()
    {
        DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin += BeforePlayerDataInitializeEventOnRelogin;
        PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh;
    }
    public override void Release()
    {
        DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin -= BeforePlayerDataInitializeEventOnRelogin;
        PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefresh;
    }
    public void BeforePlayerDataInitializeEventOnRelogin()
    {
    }
    private void PlayerDataRefresh(PlayerDataType type)
    {
        UpdateRedPonit();
    }
    public void UpdateRedPonit()
    {
    }
}
Main/System/Qunying/QunyingManager.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 74ba65a50741eb34587acd91742946aa
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Main/System/Redpoint/MainRedDot.cs
@@ -151,6 +151,7 @@
    public const int WarlordPavilionRepoint = 477;//定军阁
    public const int TimeRushRepoint = 478; //轮回殿
    public const int HeroDebutRepoint = 479; //武将登场
    public const int Qunying = 480; //群英榜
    public void Register()
    {
Main/Utility/EnumHelper.cs
@@ -713,6 +713,8 @@
    ChallengeVoucher = 286,//挑战凭证
    DailySpecials = 287, //特惠印绶
    OSGalaScore = 288, //开服庆典积分
    QunyingWDL = 289, //群英问鼎令
    QYScore = 290, //群英积分
    heroSkin = 291, // 用于皮肤商店购买
};
@@ -851,6 +853,7 @@
    FuncPreset = 56, //流派预设
    TimingGift = 57, //时机礼包
    TimeRush = 58, //限时冲刺
    Qunying = 62, //群英榜
    HeroDebut = 63,//武将登场
}
Main/Utility/UIHelper.cs
@@ -1050,6 +1050,7 @@
        {53, PlayerDataType.ChallengeVoucher},
        {54, PlayerDataType.DailySpecials},
        {55, PlayerDataType.OSGalaScore},
        {57, PlayerDataType.QYScore},
        {58, PlayerDataType.heroSkin},
        {99, PlayerDataType.ExAttr11},
    };
@@ -1209,6 +1210,16 @@
                    //开服庆典积分
                    return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.OSGalaScore);
                }
            case 56:
                {
                    //群英挑战令
                    return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.QunyingWDL);
                }
            case 57:
                {
                    //群英积分
                    return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.QYScore);
                }
            case 58:
                {
                    //时装货币