1
1
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:
2025-11-15 20:44:43 +08:00
parent 44e4105ccc
commit 82853f92d3
+8 -1
View File
@@ -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()