1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-28 15:01:53 +08:00
Files
Dog-Lynx-And-HCN/scripts/Contents/Weapons/VectorStarWeapon.gd
T
fallingshrimp 06fdfd1586 feat(武器系统): 添加灵魂等级机制并重构武器升级逻辑
- 在UI中添加灵魂资源显示和操作按钮
- 修改武器升级公式加入灵魂等级系数
- 实现灵魂的提取和镶嵌功能
- 为武器卡牌添加灵魂等级颜色映射
- 初始化玩家灵魂资源为10个
2025-09-20 07:01:17 +08:00

19 lines
823 B
GDScript

@tool
extends Weapon
class_name VectorStarWeapon
func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 5 * to * soulLevel
origin["forwardtime"] /= 1.05 ** soulLevel * to
origin["maxcount"] += 1 * level * soulLevel
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for i in range(int(randi_range(readStore("mincount"), readStore("maxcount")))):
for j in BulletBase.generate(preload("res://components/Bullets/VectorStar.tscn"), entity, weaponPos, deg_to_rad(randf_range(0, 360))):
var bullet: VectorStar = j
bullet.damage = readStore("atk")
bullet.tracer = EntityTool.findClosetEntity(get_global_mouse_position(), get_tree(), !entity.isPlayer(), entity.isPlayer())
bullet.forwardTime = readStore("forwardtime") * 1000
return true