mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-27 22:41:56 +08:00
7d6e396985
新增三种不同变体的爆炸效果资源,包括图片和动画配置 重构爆炸效果实现以支持随机选择不同变体 移除旧的单一爆炸效果资源
29 lines
850 B
GDScript
29 lines
850 B
GDScript
extends BulletBase
|
|
class_name QKSwordBullet
|
|
|
|
var tracer: EntityBase
|
|
var spawnSpeed: float = 1
|
|
|
|
func register():
|
|
spawnSpeed = randf_range(0.25, 1.75)
|
|
animator.speed_scale = spawnSpeed
|
|
lifeTime /= spawnSpeed
|
|
func ai():
|
|
if is_instance_valid(tracer):
|
|
look_at(tracer.getTrackingAnchor())
|
|
if timeLived() > 1000 / spawnSpeed:
|
|
PresetBulletAI.forward(self , rotation) # 前进
|
|
hitbox.disabled = false
|
|
else:
|
|
hitbox.disabled = true
|
|
func succeedToHit(_dmg: float, entity: EntityBase):
|
|
if entity == tracer:
|
|
tryDestroy() # 只需要命中一次目标就不需要继续前进了
|
|
var eff = EffectController.create(
|
|
ComponentManager.getEffect("FooExplosion"),
|
|
entity.texture.global_position
|
|
)
|
|
var varians = randi_range(0, 2)
|
|
eff.texture.sprite_frames = load("res://resources/effects/FooExplosion/%d/%d.tres" % [varians, varians])
|
|
eff.shot()
|