mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-27 22:41:56 +08:00
733e8e5c0b
添加新角色Kernyr及其相关资源文件,包括角色脚本、场景和贴图 添加新子弹类型Yangyi及其相关资源文件,包括子弹脚本、场景和贴图 修改Wave.gd添加Kernyr作为测试波次 调整QKSword.gd和Parrier.gd的数值效果 扩展Bullet.gd的selfRotate方法支持仅旋转贴图
30 lines
878 B
GDScript
30 lines
878 B
GDScript
extends BulletBase
|
|
class_name QKSwordBullet
|
|
|
|
var tracer: EntityBase
|
|
var spawnSpeed: float = 1
|
|
|
|
func register():
|
|
spawnSpeed = randf_range(0.75, 2)
|
|
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()
|
|
CameraManager.shake(300, 500)
|