1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-28 06:51:54 +08:00
Files
Dog-Lynx-And-HCN/scripts/Contents/Bullets/LGBTBullet.gd
T
fallingshrimp 82853f92d3 fix(LGBTBullet): 修复子弹追踪逻辑并添加丢失目标检测
添加lastDistance和missedTarget变量来检测子弹是否错过目标
当子弹与目标距离增大时标记为missedTarget停止追踪
2025-11-15 20:44:43 +08:00

25 lines
730 B
GDScript

extends BulletBase
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 !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()