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/Bullets/BigLaser.gd
T
fallingshrimp 171dbb1131 refactor(BulletBase/EntityBase): 重构子弹和实体属性系统
将子弹的fields属性拆分为独立的speed、damage和penerate变量
为所有子弹和实体添加register方法用于初始化属性
统一攻击冷却时间管理为attackCooldownMap
移除FieldStore中不再使用的Bullet相关枚举和映射
2025-08-29 10:50:22 +08:00

21 lines
760 B
GDScript

extends BulletBase
class_name BigLaser # 这个子弹是玩家的超级武器,耗能高,dps也高
func register():
speed = 0
damage = 35
penerate = 1
func spawn():
CameraManager.shake(5000, 150) # 激光会运行5秒(5000毫秒),期间震屏超高强度
CameraManager.playAnimation("bigLaser")
damage *= launcher.fields[FieldStore.Entity.ATTACK_SPEED]
func ai():
rotation = lerp_angle(rotation, ((get_global_mouse_position() - position).angle()), 0.1)
position = launcher.texture.global_position
func applyDot():
hitbox.disabled = true
await TickTool.millseconds(100 / launcher.fields[FieldStore.Entity.ATTACK_SPEED])
hitbox.disabled = false
await TickTool.millseconds(100 / launcher.fields[FieldStore.Entity.ATTACK_SPEED])
return true