1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-31 16:31:54 +08:00

refactor(ChainGun): 调整武器属性和子弹生成逻辑

修改ChainGun的数值属性和子弹生成方式,新增split参数控制子弹间距
调整BossBar的样式和位置,删除未使用的shader文件
This commit is contained in:
2025-09-23 22:29:22 +08:00
parent 9fa9564093
commit de7dd468fe
7 changed files with 60 additions and 39 deletions
+2 -1
View File
@@ -1,6 +1,7 @@
extends BulletBase
var count: int = 1
var splits: float = 10.0
@onready var anchor: Node2D = $"%anchor"
@@ -9,6 +10,6 @@ func spawn():
for i in BulletBase.generate(ComponentManager.getBullet("PurpleCrystalSmall"), launcher, anchor.global_position, rotation):
i.damage = damage
var dir = Vector2.from_angle(i.rotation).rotated(deg_to_rad(-90))
i.global_position += dir * (count - j * 2) * 20 / 2
i.global_position += dir * (count - j * 2) * splits / 2
func ai():
PresetBulletAI.lockLauncher(self, launcher, true)
+3 -1
View File
@@ -3,9 +3,11 @@ extends Weapon
func update(to, origin, _entity):
origin["atk"] += 2 * to * soulLevel
origin["count"] += 0.25 * to * soulLevel
origin["count"] = 1 * soulLevel
origin["split"] /= 1 + 0.05 * to * soulLevel
return origin
func attack(entity: EntityBase):
for i in BulletBase.generate(ComponentManager.getBullet("ChainGun"), entity, entity.texture.global_position, (get_global_mouse_position() - entity.texture.global_position).angle()):
i.damage = readStore("atk")
i.count = floor(readStore("count"))
i.split = readStore("split")