存
This commit is contained in:
Binary file not shown.
@@ -178,8 +178,8 @@ namespace ArachnaeSwarm
|
|||||||
|
|
||||||
protected override void Tick()
|
protected override void Tick()
|
||||||
{
|
{
|
||||||
// 不调用 base.Tick() 来阻止直线运动逻辑
|
// 首先调用base.Tick(),让它处理组件更新(比如拖尾特效)和ticksToImpact
|
||||||
// base.Tick();
|
base.Tick();
|
||||||
|
|
||||||
// 更新目标位置
|
// 更新目标位置
|
||||||
if (intendedTarget.Thing is Pawn pawn && pawn.Spawned && !pawn.Destroyed)
|
if (intendedTarget.Thing is Pawn pawn && pawn.Spawned && !pawn.Destroyed)
|
||||||
@@ -191,16 +191,13 @@ namespace ArachnaeSwarm
|
|||||||
destination = pawn.DrawPos;
|
destination = pawn.DrawPos;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 更新ticksToImpact,这是从基类Projectile复制过来的逻辑
|
// 如果base.Tick()已经处理了撞击,我们就不再继续
|
||||||
ticksToImpact--;
|
if (this.Destroyed)
|
||||||
if (ticksToImpact <= 0)
|
|
||||||
{
|
{
|
||||||
// 时间到了,强制撞击
|
|
||||||
Impact(null);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 更新我们自己的位置
|
// 用我们自己的曲线位置覆盖掉base.Tick()计算的直线位置
|
||||||
exactPositionInt = BPos(this.DistanceCoveredFraction);
|
exactPositionInt = BPos(this.DistanceCoveredFraction);
|
||||||
|
|
||||||
// 检查是否到达终点
|
// 检查是否到达终点
|
||||||
|
|||||||
Reference in New Issue
Block a user