From 30ba2ef747ced774bef177d5273cb5a3429cff49 Mon Sep 17 00:00:00 2001 From: yyl <yyl> Date: 星期二, 01 七月 2025 17:38:55 +0800 Subject: [PATCH] 130 子 【战斗】战斗系统 / 【战斗】战斗系统-客户端 部分战斗逻辑 --- Main/System/Hero/HeroInfo.cs | 57 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 49 insertions(+), 8 deletions(-) diff --git a/Main/System/Hero/HeroInfo.cs b/Main/System/Hero/HeroInfo.cs index fae1795..9e36344 100644 --- a/Main/System/Hero/HeroInfo.cs +++ b/Main/System/Hero/HeroInfo.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using UnityEngine; +using LitJson; public partial class HeroInfo { @@ -11,6 +12,13 @@ { get { + #if UNITY_EDITOR + if (null == itemHero) + { + return 520001; + } + #endif + return itemHero.config.ID; } } @@ -44,9 +52,9 @@ } } - public readonly ItemModel itemHero; + public ItemModel itemHero; - public readonly CB122_tagSCHeroInfo.tagSCHero scHeroInfo; + // public readonly CB122_tagSCHeroInfo.tagSCHero scHeroInfo; // 姝﹀皢閰嶇疆 public HeroConfig heroConfig; @@ -67,12 +75,44 @@ public List<HeroTalentInfo> talentList = new List<HeroTalentInfo>(); - public HeroInfo(CB122_tagSCHeroInfo.tagSCHero _scHeroInfo, ItemModel _itemHero) + public HeroInfo(/*CB122_tagSCHeroInfo.tagSCHero _scHeroInfo, */ItemModel _itemHero) { - scHeroInfo = _scHeroInfo; - itemHero = _itemHero; + // scHeroInfo = _scHeroInfo; + UpdateHero(_itemHero); + - InitConfigs(); + + } + + #if UNITY_EDITOR + public HeroInfo() + { + heroLevel = 1; + heroStar = 1; + breakLevel = 1; + awakeLevel = 1; + SkinIndex = 0; + heroConfig = HeroConfig.Get(heroId); + awakeConfig = HeroAwakeConfig.GetHeroAwakeConfig(heroId, awakeLevel); + breakConfig = HeroBreakConfig.GetHeroBreakConfig(heroId, breakLevel); + qualityAwakeConfig = HeroQualityAwakeConfig.GetQualityAwakeConfig(Quality, awakeLevel); + qualityConfig = HeroQualityConfig.Get(Quality); + qualityBreakConfig = HeroQualityBreakConfig.GetQualityBreakConfig(Quality, awakeLevel); + CalculateProperties(); + } + #endif + + // public HeroInfo Clone() => JsonMapper.ToObject<HeroInfo>(JsonMapper.ToJson(this)); + + // 鍥鹃壌淇℃伅 + public void UpdateSCHero(CB122_tagSCHeroInfo.tagSCHero _scHeroInfo) + { + + } + + public void UpdateHero(ItemModel _itemHero) + { + itemHero = _itemHero; // HeroConfigUtility // 70 # 鑻遍泟绛夌骇 @@ -86,12 +126,15 @@ // 78 # 鑻遍泟浣跨敤鐨勭毊鑲ょ储寮� SkinIndex = itemHero.GetUseData(78)[0]; + // 71 # 鑻遍泟澶╄祴ID鍒楄〃 List<int> talentSkillList = itemHero.GetUseData(71); // 73 # 鑻遍泟澶╄祴ID绛夌骇鍒楄〃锛屽搴�71澶╄祴ID鐨勭瓑绾� List<int> talentLvList = itemHero.GetUseData(73); // 75 # 鑻遍泟澶╄祴娲楃偧閿佸畾绱㈠紩鍒楄〃锛屽搴�71澶╄祴ID绱㈠紩 List<int> talentLockList = itemHero.GetUseData(75); + + InitConfigs(); if (talentLockList.Count != talentLvList.Count || talentLvList.Count != talentSkillList.Count) { @@ -115,8 +158,6 @@ // 77 # 鑻遍泟澶╄祴娲楃偧闅忔満ID鍒楄〃 // 79 # 鑻遍泟瑙夐啋鏃堕殢鏈哄ぉ璧嬮�夐」ID鍒楄〃 // 80 # 涓婚樀鍨嬩笂闃典綅缃� - - } protected void InitConfigs() -- Gitblit v1.8.0