少年修仙传客户端代码仓库
hch
2025-04-03 c154ac0832fe4379a00d3e1cda700e7d2a7383c7
0312 分离宠物和坐骑界面
2个文件已添加
7个文件已修改
125 ■■■■■ 已修改文件
LogicProject/System/pet/PetHorseAwakingModel.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Mount/MountMainWin.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Mount/MountMainWin.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Mount/MountSkinWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Mount/MountWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Pet/PetWin.cs 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Tip/PromoteDetailsWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/TreeGame/MainTreePanel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
LogicProject/System/pet/PetHorseAwakingModel.cs
@@ -63,12 +63,10 @@
    public void AddFuncStateUpdate(PetWin petWin)
    {
        onFuncStateUpdate += petWin.OnFuncStateUpdate;
    }
    public void RemoveFuncStateUpdate(PetWin petWin)
    {
        onFuncStateUpdate -= petWin.OnFuncStateUpdate;
    }
    void OnBeforePlayerDataInitialize()
System/Mount/MountMainWin.cs
New file
@@ -0,0 +1,27 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace vnxbqy.UI
{
    public class MountMainWin : OneLevelWin
    {
        protected override void AddListeners()
        {
            base.AddListeners();
            SetFunctionListener(0, OpenMountWin);
        }
        private void OpenMountWin()
        {
            CloseSubWindows();
            WindowCenter.Instance.Open<MountWin>(true);
            functionOrder = 0;
        }
    }
}
System/Mount/MountMainWin.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4a825c734336c8b46b783d6c93c9ba99
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Mount/MountSkinWin.cs
@@ -69,7 +69,7 @@
            {
                CloseClick();
                if (FuncOpen.Instance.IsFuncOpen(8))
                    WindowCenter.Instance.Open<PetWin>(false, 0);
                    WindowCenter.Instance.Open<MountMainWin>(false, 0);
            });
            m_RideBtton.SetListener(() => {
System/Mount/MountWin.cs
@@ -75,7 +75,7 @@
            ChangeLookLib.SetListener(()=> {
                WindowJumpMgr.Instance.ClearJumpData();
                WindowCenter.Instance.Open<MountSkinWin>();
                WindowCenter.Instance.Close<PetWin>();
                WindowCenter.Instance.Close<MountMainWin>();
            });
            Left.SetListener(()=> {
                m_ShowHorseLV = m_ShowHorseLV - 1;
System/Pet/PetWin.cs
@@ -8,87 +8,20 @@
{
    public class PetWin : OneLevelWin
    {
        Dictionary<int, FunctionButton> m_FunctionButtons = new Dictionary<int, FunctionButton>();
        PetModel petmodel { get { return ModelCenter.Instance.GetModel<PetModel>(); } }
        MountModel mountModel { get { return ModelCenter.Instance.GetModel<MountModel>(); } }
        protected override void BindController()
        {
            base.BindController();
            foreach (var item in m_Group.GetFunctionButtons())
            {
                m_FunctionButtons[item.Key] = item.Value;
            }
        }
        protected override void AddListeners()
        {
            base.AddListeners();
            SetFunctionListener(0, OpenMountWin);
            SetFunctionListener(1, OpenPetWin);
            SetFunctionListener(2, OpenPetHorseAwakingWin);
            SetFunctionListener(0, OpenPetWin);
        }
        protected override void OnPreOpen()
        {
            base.OnPreOpen();
            DisplayButtons();
            PetHorseAwakingModel.Instance.AddFuncStateUpdate(this);
        }
        protected override void OnPreClose()
        {
            PetHorseAwakingModel.Instance.RemoveFuncStateUpdate(this);
            base.OnPreClose();
        }
        protected override void OnActived()
        {
            if (!WindowJumpMgr.Instance.IsJumpState && functionOrder < 2)//是否进行跳转
            {
                if (mountModel.IsHorsePanelState() < petmodel.IsPetPanelRedPointState())
                {
                    functionOrder = 1;
                }
            }
            base.OnActived();
        }
        private void DisplayButtons()
        {
            var isOpen = PetHorseAwakingModel.Instance.IsOpen();
            m_FunctionButtons[2].SetActive(isOpen);
            m_FunctionButtons[2].state = isOpen ? TitleBtnState.Normal : TitleBtnState.Locked;
        }
        private void OpenPetWin()
        {
            CloseSubWindows();
            WindowCenter.Instance.Open<PetAttributeWin>(true);
            functionOrder = 1;
        }
        private void OpenMountWin()
        {
            CloseSubWindows();
            WindowCenter.Instance.Open<MountWin>(true);
            functionOrder = 0;
        }
        private void OpenPetHorseAwakingWin()
        {
            CloseSubWindows();
            WindowCenter.Instance.Open("PetHorseAwakingWin", true);
            functionOrder = 2;
        }
        public void OnFuncStateUpdate()
        {
            DisplayButtons();
        }
    }
System/Tip/PromoteDetailsWin.cs
@@ -86,10 +86,10 @@
                    WindowCenter.Instance.Open<EquipFrameWin>(false, 0);
                    break;
                case RolePromoteModel.PromoteDetailType.Mount:
                    WindowCenter.Instance.Open<PetWin>(false, 0);
                    WindowCenter.Instance.Open<MountMainWin>(false, 0);
                    break;
                case RolePromoteModel.PromoteDetailType.Pet:
                    WindowCenter.Instance.Open<PetWin>(false, 1);
                    WindowCenter.Instance.Open<PetWin>(false, 0);
                    break;
                case RolePromoteModel.PromoteDetailType.RuneMosaic:
                    WindowCenter.Instance.Open<RunePanel>();
System/TreeGame/MainTreePanel.cs
@@ -90,7 +90,7 @@
            });
            petBtn.AddListener(() =>
            {
                WindowCenter.Instance.Open<PetWin>(false, 1);
                WindowCenter.Instance.Open<PetWin>(false, 0);
            });
            lqBtn.AddListener(() =>
            {
@@ -106,7 +106,7 @@
            });
            horseBtn.AddListener(() =>
            {
                WindowCenter.Instance.Open<PetWin>(false, 0);
                WindowCenter.Instance.Open<MountMainWin>(false, 0);
            });
            realmUpgrade.AddListener(() =>
            {
System/WindowJump/WindowJumpMgr.cs
@@ -292,9 +292,11 @@
                break;
            case JumpUIType.PetFunc1:
            case JumpUIType.PetFunc2:
            case JumpUIType.MountType2:
                SetJumpLogic<PetWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.MountType2:
                SetJumpLogic<MountMainWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.PetStone:
                //if (ItemOperateUtility.Instance.useItemModel != null)
                //{