private void OnRemoveGrid(EntityUid uid, SalvageMobRestrictionsGridComponent component, ComponentRemove args) { foreach (EntityUid target in component.MobsToKill) { if (TryComp(target, out BodyComponent? body)) { // Just because. body.Gib(); } else if (TryComp(target, out DamageableComponent? dc)) { _damageableSystem.SetAllDamage(dc, 200); } } }
private void OnRemoveGrid(EntityUid uid, SalvageMobRestrictionsGridComponent component, ComponentRemove args) { var metaQuery = GetEntityQuery <MetaDataComponent>(); var bodyQuery = GetEntityQuery <BodyComponent>(); var damageQuery = GetEntityQuery <DamageableComponent>(); foreach (var target in component.MobsToKill) { if (Deleted(target, metaQuery)) { continue; } if (bodyQuery.TryGetComponent(target, out var body)) { // Just because. body.Gib(); } else if (damageQuery.TryGetComponent(target, out var damageableComponent)) { _damageableSystem.SetAllDamage(damageableComponent, 200); } } }