From 39001a600fcae2bcf27c225df8752d75fb92fef4 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 31 十月 2025 11:18:26 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
---
Main/System/Team/TeamHero.cs | 66 +++++++++++++++++++++++++++-----
1 files changed, 55 insertions(+), 11 deletions(-)
diff --git a/Main/System/Team/TeamHero.cs b/Main/System/Team/TeamHero.cs
index 864c8e6..30065a2 100644
--- a/Main/System/Team/TeamHero.cs
+++ b/Main/System/Team/TeamHero.cs
@@ -1,14 +1,19 @@
using UnityEngine;
-using UnityEngine.PlayerLoop;
public partial class TeamHero
{
public int heroId;
- public HeroConfig heroConfig;
+
+ public HeroCountry Country;
public int SkinID;
public HeroSkinConfig skinConfig;
- public string guid;
+ public string guid;
+ public float modelScale = 1f;
+
+ public int level = 0;
+
+ public string name;
public TeamBase teamBase
{
@@ -16,20 +21,59 @@
}
public int positionNum; //娉ㄦ剰鏈嶅姟绔殑1鍙蜂綅鏄�1锛屽鎴风鍦ㄤ娇鐢ㄦ椂鏄�0锛岄�氫俊鍜岀瓥鍒掓矡閫氱敤1
-// 鎴樺満鏁版嵁
+
+ // 鎴樺満鏁版嵁
public int ObjID = 0;// 鎴樻枟鍗曚綅鍞竴ID
- public int NPCID = 0;// 鎴樻枟NPCID锛屼笉鍚岀殑瀹炰緥ID瀵瑰簲鐨凬PCID鍙兘涓�鏍�
+ public int NPCID = 0;// 鎴樻枟NPCID锛屼笉鍚岀殑瀹炰緥ID瀵瑰簲鐨凬PCID鍙兘涓�鏍� (鐩墠鍙敤鏉ュ尯鍒帺瀹惰窡NPC)
// 鏈嶅姟鍣ㄦ潵鐨勬瀯閫�
public TeamHero(HB424_tagSCTurnFightInit.tagSCTurnFightObj fightObj, TeamBase _teamBase)
{
+ // 鍒ゆ柇涓�涓嬫槸npc杩樻槸鐜╁
heroId = (int)fightObj.HeroID;
- heroConfig = HeroConfig.Get(heroId);
- SkinID = (int)fightObj.SkinID;
- skinConfig = HeroSkinConfig.Get(SkinID);
+ // B4 24 鍥炲悎鎴樻枟鍒濆鍖� #tagSCTurnFightInit
+ // 灏佸寘涓殑 HeroID銆丼kinID 瀛楁涓嶅啀鏄帺瀹堕樀瀹圭嫭鏈夛紝NPC闃靛涔熷彲鑳芥湁鍊硷紝涓�鑸槸鍏宠仈姝﹀皢鐨凬PC鏈夊��
+ // 濡傛灉 HeroID銆丼kinID 涓嶄负绌猴紝鍒欏彲璁や负鏄叧鑱旀灏嗙殑NPC锛屽瑙傜浉鍏抽粯璁ら�氳繃HeroID璇诲彇姝﹀皢鐩稿叧锛屽鍚嶇О
+ // 鐨偆 SkinID 涓嶄负绌烘椂锛屽垯妯″瀷榛樿浣跨敤璇ョ毊鑲�
+ // 濡傛灉 HeroID銆丼kinID 涓虹┖锛� NPCID涓嶄负绌猴紝鍒欒蛋鍘烴PC榛樿瑙勫垯
+
+ // 琛ュ厖 skinid璺焗eroid瑕佷箞鍚屾椂娌℃湁 瑕佷箞鍚屾椂鏈� 濡傛灉杩欎笁涓猧d閮芥病鏈夌殑璇� 閭e氨鏄厤缃弗閲嶉敊璇� 鏃犳硶寮ヨˉ
+
+ if (fightObj.SkinID > 0 && fightObj.HeroID > 0)
+ {
+ // 璧扮帺瀹堕�昏緫
+ var heroConfig = HeroConfig.Get(heroId);
+ if (null == heroConfig)
+ {
+ Debug.LogError("hero config is null, heroId : " + heroId);
+ return;
+ }
+ Country = (HeroCountry)heroConfig.Country;
+ SkinID = (int)fightObj.SkinID;
+ modelScale = 1f;
+ name = heroConfig.Name;
+
+ }
+ else
+ {
+ throw new System.Exception("hero id and skin id are both invalid, npc id is invalid too (all <= 0)");
+ }
+
+ if (fightObj.NPCID > 0)
+ {
+ NPCConfig npcConfig = NPCConfig.Get((int)fightObj.NPCID);
+ if (null != npcConfig)
+ {
+ modelScale = npcConfig.ModelScale;
+ }
+ }
+
+ level = (int)fightObj.LV;
+
+ skinConfig = HeroSkinConfig.Get(SkinID);
teamBase = _teamBase;
ObjID = (int)fightObj.ObjID;
@@ -37,8 +81,8 @@
// HPEx * 1浜� + HP
- curHp = (long)fightObj.HPEx * GeneralDefine.HundredMillion + (long)fightObj.HP;
- maxHp = (long)fightObj.MaxHPEx * GeneralDefine.HundredMillion + (long)fightObj.MaxHP;
+ curHp = (long)fightObj.HPEx * (long)Constants.ExpPointValue + (long)fightObj.HP;
+ maxHp = (long)fightObj.MaxHPEx * (long)Constants.ExpPointValue + (long)fightObj.MaxHP;
rage = (int)fightObj.AngreXP;
positionNum = fightObj.PosNum - 1;
@@ -55,9 +99,9 @@
public TeamHero(HeroInfo heroInfo, int posNum, TeamBase _teamBase)
{
heroId = heroInfo.itemHero.config.ID;
- heroConfig = HeroConfig.Get(heroId);
SkinID = heroInfo.SkinID;
skinConfig = heroInfo.skinConfig;
+ Country = heroInfo.heroCountry;
teamBase = _teamBase;
--
Gitblit v1.8.0