Remove .Owner from melee weapons (#14600)

This commit is contained in:
metalgearsloth
2023-03-12 15:56:05 +11:00
committed by GitHub
parent 5541edbadc
commit e93d5113ad
8 changed files with 96 additions and 89 deletions

View File

@@ -236,7 +236,7 @@ public sealed class MeleeWeaponSystem : SharedMeleeWeaponSystem
return;
}
var hitBloodstreams = new List<BloodstreamComponent>();
var hitBloodstreams = new List<(EntityUid Entity, BloodstreamComponent Component)>();
var bloodQuery = GetEntityQuery<BloodstreamComponent>();
foreach (var entity in args.HitEntities)
@@ -245,7 +245,7 @@ public sealed class MeleeWeaponSystem : SharedMeleeWeaponSystem
continue;
if (bloodQuery.TryGetComponent(entity, out var bloodstream))
hitBloodstreams.Add(bloodstream);
hitBloodstreams.Add((entity, bloodstream));
}
if (!hitBloodstreams.Any())
@@ -256,10 +256,10 @@ public sealed class MeleeWeaponSystem : SharedMeleeWeaponSystem
var solutionToInject = removedSolution.SplitSolution(removedVol * comp.TransferEfficiency);
var volPerBloodstream = solutionToInject.Volume * (1 / hitBloodstreams.Count);
foreach (var bloodstream in hitBloodstreams)
foreach (var (ent, bloodstream) in hitBloodstreams)
{
var individualInjection = solutionToInject.SplitSolution(volPerBloodstream);
_bloodstream.TryAddToChemicals((bloodstream).Owner, individualInjection, bloodstream);
_bloodstream.TryAddToChemicals(ent, individualInjection, bloodstream);
}
}
}