为 RepoForm 添加出售功能,ShopNode 只承载玩家购买组件的逻辑

This commit is contained in:
2026-03-16 17:52:23 +08:00
parent dc2aa59d58
commit 2e54acbc85
33 changed files with 3198 additions and 91 deletions
@@ -1,11 +1,15 @@
using GeometryTD.UI;
namespace GeometryTD.UI
{
public class RepoFormContext : UIContext
{
public string GoldText;
public RepoFormState State;
public bool ShowSellModeButton;
public string SellModeButtonText;
public bool ShowCombineArea;
public bool ShowSellArea;
public CombineAreaContext CombineAreaContext;
public SellAreaContext SellAreaContext;
public CompAreaContext CompAreaContext;
public ParticipantAreaContext ParticipantAreaContext;
}
@@ -0,0 +1,8 @@
namespace GeometryTD.UI
{
public enum RepoFormState
{
Assemble = 0,
Sell = 1
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9110fc764f3044bda40df4a8c02f320b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -11,6 +11,9 @@ namespace GeometryTD.UI
public float EnduranceRate01;
public RepoItemClickActionType ClickActionType;
public TowerCompSlotType ComponentSlotType;
public bool IsSellMode;
public bool IsSellable = true;
public bool IsSellSelected;
public IconAreaContext IconAreaContext;
}
}
@@ -0,0 +1,10 @@
namespace GeometryTD.UI
{
public class SellAreaContext
{
public string TotalPriceText;
public bool CanConfirmSell;
public RepoItemContext[] ComponentItems;
public TowerRepoItemContext[] TowerItems;
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: f153d1a509df4bb69c6d231df5b60db9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: