1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-06-01 00:41:54 +08:00

feat(养成系统): 实现局外养成等级机制并调整升级消耗

添加upgradableFieldsLevel字段记录养成等级
修改升级逻辑使用等级计算消耗而非固定倍率
升级时自动增加等级并重新计算下次升级消耗
This commit is contained in:
2026-05-04 09:46:21 +08:00
parent bd85129ecc
commit e377840a16
4 changed files with 15 additions and 6 deletions
+4 -3
View File
@@ -171,8 +171,8 @@ func beforeOpen(_args: Array = []):
upgradeFieldsBox.remove_child(child)
for field in OutGameStorage.upgradableFieldsAdvance:
var fieldShow = ComponentManager.getUIComponent("FieldShow").instantiate() as FieldShow
fieldShow.cost(ItemStore.ItemType.CRYSTAL, 50)
fieldShow.cost(ItemStore.ItemType.DIAMOND, 0)
fieldShow.cost(ItemStore.ItemType.CRYSTAL, 50 * OutGameStorage.upgradableFieldsLevel[fieldShow.field])
fieldShow.cost(ItemStore.ItemType.DIAMOND, OutGameStorage.upgradableFieldsLevel[fieldShow.field] - 1)
fieldShow.upgradable = true
fieldShow.upgradeValue = OutGameStorage.upgradableFieldsAdvance[field]
fieldShow.field = field
@@ -181,11 +181,12 @@ func beforeOpen(_args: Array = []):
fieldShow.upgrade.connect(
func(newValue: float):
OutGameStorage.upgradableFieldsValue[fieldShow.field] = newValue
OutGameStorage.upgradableFieldsLevel[fieldShow.field] += 1
for index in len(fieldShow.costCounts):
if fieldShow.costCounts[index] == 0:
fieldShow.costCounts[index] += 1
else:
fieldShow.costCounts[index] *= GameRule.outGameUpgradeMultipiler
fieldShow.costCounts[index] *= (OutGameStorage.upgradableFieldsLevel[fieldShow.field] + 1) / OutGameStorage.upgradableFieldsLevel[fieldShow.field]
)
upgradeFieldsBox.add_child(fieldShow)