Don't despawn off-grid salv mob corpses (#37169)
This commit is contained in:
@@ -135,11 +135,11 @@ public sealed partial class SalvageSystem
|
||||
if (data.Comp.ActiveEntities != null)
|
||||
{
|
||||
// Handle mobrestrictions getting deleted
|
||||
var query = AllEntityQuery<SalvageMobRestrictionsComponent>();
|
||||
var query = AllEntityQuery<SalvageMobRestrictionsComponent, MobStateComponent>();
|
||||
|
||||
while (query.MoveNext(out var salvUid, out var salvMob))
|
||||
while (query.MoveNext(out var salvUid, out var salvMob, out var salvMobState))
|
||||
{
|
||||
if (data.Comp.ActiveEntities.Contains(salvMob.LinkedEntity))
|
||||
if (data.Comp.ActiveEntities.Contains(salvMob.LinkedEntity) && _mobState.IsAlive(salvUid, salvMobState))
|
||||
{
|
||||
QueueDel(salvUid);
|
||||
}
|
||||
@@ -164,8 +164,7 @@ public sealed partial class SalvageSystem
|
||||
uid = _transform.GetParentUid(uid);
|
||||
if (_mobStateQuery.HasComp(uid))
|
||||
return true;
|
||||
}
|
||||
while (uid != xform.GridUid && uid != EntityUid.Invalid);
|
||||
} while (uid != xform.GridUid && uid != EntityUid.Invalid);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user