mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-28 06:51:54 +08:00
fix(LGBTBullet): 修复子弹追踪逻辑并添加丢失目标检测
添加lastDistance和missedTarget变量来检测子弹是否错过目标 当子弹与目标距离增大时标记为missedTarget停止追踪
This commit is contained in:
@@ -4,14 +4,21 @@ class_name LGBTBullet
|
||||
var tracer: EntityBase = null
|
||||
var maxTraceTime: float = 0
|
||||
var tracePower: float = 0
|
||||
var lastDistance: float = INF
|
||||
var missedTarget: bool = false
|
||||
|
||||
func register():
|
||||
speed = 1
|
||||
func ai():
|
||||
speed *= 1.05
|
||||
speed = clamp(speed, 0, 20)
|
||||
if is_instance_valid(tracer) and timeLived() < maxTraceTime:
|
||||
if !missedTarget and is_instance_valid(tracer) and timeLived() < maxTraceTime:
|
||||
PresetBulletAI.trace(self, tracer.getTrackingAnchor(), tracePower)
|
||||
PresetBulletAI.forward(self, rotation)
|
||||
var currentDistance = position.distance_to(tracer.getTrackingAnchor())
|
||||
if currentDistance > lastDistance:
|
||||
missedTarget = true
|
||||
else:
|
||||
lastDistance = currentDistance
|
||||
func destroy(_b):
|
||||
EffectController.create(ComponentManager.getEffect("LGBTBoom"), position).shot()
|
||||
|
||||
Reference in New Issue
Block a user