From a092d2f76692c87f5396a4f14ae6ab3c17325413 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 08 八月 2025 09:56:55 +0800
Subject: [PATCH] 125 【战斗】战斗系统 部分战斗代码
---
Main/System/Battle/BattleField/BattleField.cs | 4 ++++
Main/System/Battle/BattleField/BattleRootNode.cs | 2 +-
Main/System/Battle/BattleObject/BattleObjectFactory.cs | 16 +++++++++++-----
Main/System/Main/HomeWin.cs | 6 ++++--
Main/System/Main/MainWin.cs | 19 +++++++++++++++++--
Main/ResModule/ResManager.cs | 3 ++-
Main/System/KnapSack/Logic/ItemLogicUtility.cs | 7 +++++--
7 files changed, 44 insertions(+), 13 deletions(-)
diff --git a/Main/ResModule/ResManager.cs b/Main/ResModule/ResManager.cs
index c80dd4f..e05b672 100644
--- a/Main/ResModule/ResManager.cs
+++ b/Main/ResModule/ResManager.cs
@@ -66,7 +66,8 @@
{typeof(GameObject), "prefab"},
{typeof(Sprite), "png"},
{typeof(Texture2D), "jpg"},
- {typeof(Shader), "shader"},
+ {typeof(Texture), "jpg"},
+ { typeof(Shader), "shader"},
{typeof(TextAsset), "txt"},
{typeof(AudioClip), "wav"},
{typeof(Font), "ttf"},
diff --git a/Main/System/Battle/BattleField/BattleField.cs b/Main/System/Battle/BattleField/BattleField.cs
index b812c99..1335468 100644
--- a/Main/System/Battle/BattleField/BattleField.cs
+++ b/Main/System/Battle/BattleField/BattleField.cs
@@ -111,6 +111,8 @@
{
battleObjMgr.Init(this, redTeamList[redTeamIndex], blueTeamList[blueTeamIndex]);
}
+
+ battleRootNode.SetBackground(ResManager.Instance.LoadAsset<Texture>("Texture/FullScreenBg", "battlebg1"));
}
// 鍦≧un涔嬪墠瑕佽缃畬姣� 瑕佸垱寤篈gent
@@ -169,6 +171,8 @@
operationAgent = new HandModeOperationAgent(this);
break;
}
+
+ Debug.LogError("battleMode is " + battleMode.ToString());
}
public virtual void PlayRecord(RecordAction recordAction)
diff --git a/Main/System/Battle/BattleField/BattleRootNode.cs b/Main/System/Battle/BattleField/BattleRootNode.cs
index fd7a5ec..12f880b 100644
--- a/Main/System/Battle/BattleField/BattleRootNode.cs
+++ b/Main/System/Battle/BattleField/BattleRootNode.cs
@@ -46,7 +46,7 @@
if (imgBackground != null)
{
imgBackground.texture = texture;
- imgBackground.SetNativeSize();
+ // imgBackground.SetNativeSize();
}
}
}
\ No newline at end of file
diff --git a/Main/System/Battle/BattleObject/BattleObjectFactory.cs b/Main/System/Battle/BattleObject/BattleObjectFactory.cs
index 65a1275..60eb472 100644
--- a/Main/System/Battle/BattleObject/BattleObjectFactory.cs
+++ b/Main/System/Battle/BattleObject/BattleObjectFactory.cs
@@ -9,18 +9,24 @@
// 鏈剰鏄鍦ㄨ繖閲屽仛姹犵殑鍐呭鐨� 浣嗘槸鎯充簡涓�涓� 鍒╃敤鏁堢巼鏈夌偣宸� 鏈�澶氬仛涓�涓嬬孩鑹叉柟鐨勭紦瀛� 钃濊壊鏂圭殑鍗虫椂鐢� 鍗虫椂鍒犻櫎 鎴栬�呯紦瀛樹笂涓�娆℃垬鏂楃殑灏辫
// private static int AutoIncrementID = 100000;
+ private static float modelScaleRate => float.Parse(FuncConfigConfig.Get("BattleModelScale").Numerical1);
+
public static BattleObject CreateBattleObject(BattleField _battleField, List<GameObject> posNodeList, TeamHero teamHero, BattleCamp _Camp)
{
HeroSkinConfig skinCfg = teamHero.skinConfig;
GameObject battleGO = ResManager.Instance.LoadAsset<GameObject>("Hero/SpineRes", "Hero_001"/*skinCfg.SpineRes*/);
- SkeletonGraphic skeletonGraphic = battleGO.GetComponentInChildren<SkeletonGraphic>();
- skeletonGraphic.skeletonDataAsset = ResManager.Instance.LoadAsset<SkeletonDataAsset>("Hero/SpineRes/", skinCfg.SpineRes);
- skeletonGraphic.Initialize(true);
+
GameObject goParent = posNodeList[teamHero.positionNum];
BattleObject battleObject = new BattleObject(_battleField);
battleObject.ObjID = teamHero.ObjID;
- battleGO.name = battleObject.ObjID.ToString();
- battleObject.Init(GameObject.Instantiate(battleGO, goParent.transform), teamHero, _Camp);
+
+ GameObject realGO = GameObject.Instantiate(battleGO, goParent.transform);
+ SkeletonGraphic skeletonGraphic = realGO.GetComponentInChildren<SkeletonGraphic>();
+ skeletonGraphic.skeletonDataAsset = ResManager.Instance.LoadAsset<SkeletonDataAsset>("Hero/SpineRes/", skinCfg.SpineRes);
+ skeletonGraphic.Initialize(true);
+ realGO.name = battleObject.ObjID.ToString();
+ realGO.transform.localScale = new Vector3((_Camp == BattleCamp.Red ? 1 : -1f) * modelScaleRate, modelScaleRate, modelScaleRate);
+ battleObject.Init(realGO, teamHero, _Camp);
return battleObject;
}
diff --git a/Main/System/KnapSack/Logic/ItemLogicUtility.cs b/Main/System/KnapSack/Logic/ItemLogicUtility.cs
index e077aa4..9051fbe 100644
--- a/Main/System/KnapSack/Logic/ItemLogicUtility.cs
+++ b/Main/System/KnapSack/Logic/ItemLogicUtility.cs
@@ -374,7 +374,7 @@
/// <param name="needCount 闇�瑕佹暟閲�"></param>
/// <param name="needTips 鏄惁闇�瑕佹彁绀�"></param>
/// <returns></returns>
- public static bool CheckItemCount(PackType packType, int itemId, int needCount, bool needTips)
+ public static bool CheckItemCount(PackType packType, int itemId, int needCount, bool needTips = false)
{
if (needCount <= 0)
{
@@ -395,13 +395,14 @@
// 鏄� 寮瑰嚭鑾峰彇閫斿緞
// 鍚� 鏄剧ず鐗╁搧鏁伴噺涓嶈冻
// SysNotifyMgr.Instance.ShowTip();
+ // YYL TODO
}
}
return isEnough;
}
- public static bool CheckCurrencyCount(int moneyType, ulong needCount, bool needTips)
+ public static bool CheckCurrencyCount(int moneyType, ulong needCount, bool needTips = false)
{
if (needCount <= 0)
{
@@ -418,6 +419,8 @@
// 鏄� 寮瑰嚭鑾峰彇閫斿緞
// 鍚� 鏄剧ず鐗╁搧鏁伴噺涓嶈冻
// SysNotifyMgr.Instance.ShowTip();
+ // YYL TODO
+ Debug.LogError("璐у竵涓嶈冻 " + moneyType);
}
return isEnough;
diff --git a/Main/System/Main/HomeWin.cs b/Main/System/Main/HomeWin.cs
index 8e49695..047a210 100644
--- a/Main/System/Main/HomeWin.cs
+++ b/Main/System/Main/HomeWin.cs
@@ -59,8 +59,8 @@
PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh;
TaskManager.Instance.OnTaskUpdate += UpdateTask;
Refresh();
- var battleWin = UIManager.Instance.OpenWindow<BattleWin>();
- battleWin.SetBattleField(BattleManager.Instance.storyBattleField);
+ // var battleWin = UIManager.Instance.OpenWindow<BattleWin>();
+ // battleWin.SetBattleField(BattleManager.Instance.storyBattleField);
}
protected override void OnOpen()
{
@@ -73,6 +73,8 @@
{
PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefresh;
TaskManager.Instance.OnTaskUpdate -= UpdateTask;
+
+ // 鍏抽棴鐨勬椂鍊欐妸鎴樻枟鐣岄潰涔熺粰鍏充簡 铏界劧鏄湪澶栭潰寮�鐨�
UIManager.Instance.CloseWindow<BattleWin>();
}
diff --git a/Main/System/Main/MainWin.cs b/Main/System/Main/MainWin.cs
index 95327a6..5146ff2 100644
--- a/Main/System/Main/MainWin.cs
+++ b/Main/System/Main/MainWin.cs
@@ -111,10 +111,15 @@
protected override void OnTabButtonClicked(int index)
{
if (index == 0)
- {
+ {
if (currentSubUI != null && currentSubUI.name == "HomeWin")
{
//鎵撳紑涓荤晫闈㈢殑鎯呭喌涓嬪啀鐐瑰嚮鎸夐挳锛屾墽琛屾敾鍑婚�昏緫
+ StoryBattleField storyBattleField = BattleManager.Instance.storyBattleField;
+ if (storyBattleField != null)
+ {
+ storyBattleField.operationAgent.DoNext();
+ }
}
}
SelectBottomTab(index);
@@ -130,10 +135,20 @@
Debug.Log("鎵撳紑瀛愮晫闈� : " + functionOrder);
// 涓诲煄 鍐呮斂 姝﹀皢 鎸戞垬 鍏細
//鏍规嵁绱㈠紩鎵撳紑涓嶅悓鐨勭晫闈�
- switch (functionOrder)
+ switch (functionOrder)
{
case 0:
// 鎵撳紑涓婚〉鐣岄潰
+ if (!UIManager.Instance.IsOpened<BattleWin>())
+ {
+ BattleWin battleWin = UIManager.Instance.OpenWindow<BattleWin>();
+ battleWin.SetBattleField(BattleManager.Instance.storyBattleField);
+ }
+ else
+ {
+ BattleWin battleWin = UIManager.Instance.GetUI<BattleWin>();
+ battleWin.SetBattleField(BattleManager.Instance.storyBattleField);
+ }
currentSubUI = UIManager.Instance.OpenWindow<HomeWin>();
Debug.Log("鎵撳紑涓诲煄鐣岄潰");
break;
--
Gitblit v1.8.0