1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-06-28 22:42:31 +08:00

refactor(武器系统): 重构武器能量消耗机制

移除全局武器升级能量消耗倍数,改为各武器独立设置升级能量消耗
调整矢量核心武器的属性计算和初始能量值
为所有武器类型添加升级时的能量消耗增量
This commit is contained in:
2025-09-20 17:30:05 +08:00
parent a809d97464
commit 007f323482
7 changed files with 9 additions and 7 deletions
+3 -4
View File
@@ -22,19 +22,18 @@ storeType = {
"mincount": 1.0 "mincount": 1.0
} }
descriptionTemplate = "发射$mincount~$maxcount个[b]无主的飞星[/b],在$forwardtime秒后向目标冲刺并造成$atk点伤害。" descriptionTemplate = "发射$mincount~$maxcount个[b]无主的飞星[/b],在$forwardtime秒后向目标冲刺并造成$atk点伤害。"
needEnergy = 25.0 needEnergy = 10.0
cooldown = 500.0 cooldown = 500.0
debugRebuild = true
[node name="avatar" parent="container/info" index="0"] [node name="avatar" parent="container/info" index="0"]
texture = ExtResource("3_wfty8") texture = ExtResource("3_wfty8")
[node name="energy" parent="container/info/infos/energyInfo" index="1"] [node name="energy" parent="container/info/infos/energyInfo" index="1"]
text = "25.0" text = "136.0"
[node name="name" parent="container/info" index="2"] [node name="name" parent="container/info" index="2"]
displayName = "矢量核心" displayName = "矢量核心"
quality = 2 quality = 2
[node name="description" parent="container" index="2"] [node name="description" parent="container" index="2"]
text = "[center]发射[color=cyan]5[/color]~[color=cyan]10[/color]个[b]无主的飞星[/b],在[color=cyan]0.75[/color]秒后向目标冲刺并造成[color=cyan]7[/color]点伤害。[/center]" text = "[center]发射[color=cyan]5[/color]→[color=yellow]5[/color]~[color=cyan]10[/color]→[color=yellow]11[/color]个[b]无主的飞星[/b],在[color=cyan]0.75[/color]→[color=yellow]0.71[/color]秒后向目标冲刺并造成[color=cyan]7[/color]→[color=yellow]12[/color]点伤害。[/center]"
+1
View File
@@ -5,6 +5,7 @@ class_name BigLaserWeapon
func update(to: int, origin: Dictionary, _entity: EntityBase): func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 5 * to * soulLevel origin["atk"] += 5 * to * soulLevel
origin["time"] /= 1 + 0.05 * to * soulLevel origin["time"] /= 1 + 0.05 * to * soulLevel
needEnergy += 5
return origin return origin
func attack(entity: EntityBase): func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal") var weaponPos = entity.findWeaponAnchor("normal")
+1
View File
@@ -8,6 +8,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["power"] += 0.05 * to * soulLevel origin["power"] += 0.05 * to * soulLevel
origin["trace"] += 0.25 * to * soulLevel origin["trace"] += 0.25 * to * soulLevel
origin["angle"] /= 1 + 0.05 * to * soulLevel origin["angle"] /= 1 + 0.05 * to * soulLevel
needEnergy += 1
return origin return origin
func attack(entity: EntityBase): func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal") var weaponPos = entity.findWeaponAnchor("normal")
@@ -5,6 +5,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 1 * to * soulLevel origin["atk"] += 1 * to * soulLevel
origin["rate"] += 0.04 * to * soulLevel origin["rate"] += 0.04 * to * soulLevel
origin["count"] += 1 * to * soulLevel origin["count"] += 1 * to * soulLevel
needEnergy += 0.5
return origin return origin
func attack(entity: EntityBase): func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal") var weaponPos = entity.findWeaponAnchor("normal")
+3 -1
View File
@@ -5,7 +5,9 @@ class_name VectorStarWeapon
func update(to: int, origin: Dictionary, _entity: EntityBase): func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 5 * to * soulLevel origin["atk"] += 5 * to * soulLevel
origin["forwardtime"] /= 1 + 0.05 * to * soulLevel origin["forwardtime"] /= 1 + 0.05 * to * soulLevel
origin["maxcount"] += 1 * to * soulLevel origin["mincount"] += 0.5 * to * soulLevel
origin["maxcount"] += 1.5 * to * soulLevel
needEnergy += 2
return origin return origin
func attack(entity: EntityBase): func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal") var weaponPos = entity.findWeaponAnchor("normal")
-1
View File
@@ -79,7 +79,6 @@ func apply(entity: EntityBase):
entity.inventory[ItemStore.ItemType.BEACHBALL] -= costBeachball entity.inventory[ItemStore.ItemType.BEACHBALL] -= costBeachball
updateStore(level, entity) updateStore(level, entity)
costBeachball = floor(GameRule.weaponUpdateCost * costBeachball) costBeachball = floor(GameRule.weaponUpdateCost * costBeachball)
needEnergy = GameRule.weaponUpdateEnergy * needEnergy
rebuildInfo() rebuildInfo()
return allHave return allHave
func updateStore(to: int, entity: EntityBase): func updateStore(to: int, entity: EntityBase):
-1
View File
@@ -21,4 +21,3 @@ static var critRateInfluenceByLuckValue: float = MathTool.percent(2.5) # 幸运
static var penerateRateInfluenceByLuckValue: float = MathTool.percent(3) # 幸运值对穿透率的影响 static var penerateRateInfluenceByLuckValue: float = MathTool.percent(3) # 幸运值对穿透率的影响
static var detainTime: float = 1000 # 血量如果在这个时间内没有改变才会开始播放降低动画 static var detainTime: float = 1000 # 血量如果在这个时间内没有改变才会开始播放降低动画
static var weaponUpdateCost: float = 1.5 # 武器升级后消耗的棒球数量倍数 static var weaponUpdateCost: float = 1.5 # 武器升级后消耗的棒球数量倍数
static var weaponUpdateEnergy: float = 1.01 # 武器升级后消耗的能量倍数