mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-28 23:11:54 +08:00
95db9deb3c
实现新的矢量星武器系统,包括武器卡片、子弹行为和粒子效果。主要功能包括: - 添加VectorStarWeapon.gd武器脚本,支持多子弹发射和追踪目标 - 实现VectorStar.gd子弹脚本,包含初始冲刺和后续追踪逻辑 - 添加相关场景资源和配置 - 将新武器添加到公鸡角色的武器库中
20 lines
819 B
GDScript
20 lines
819 B
GDScript
@tool
|
|
extends Weapon
|
|
class_name VectorStarWeapon
|
|
|
|
func update(to: int, origin: Dictionary, _entity: EntityBase):
|
|
origin["atk"] += 2 * to
|
|
origin["forwardtime"] /= 1.05 * to
|
|
origin["mincount"] += 1 * level
|
|
origin["maxcount"] += 1 * level
|
|
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
|