* Bullets go through open crates

* Bullets don't hit pulled dead bodies

* No glued cuffs

* Missed reflect aspect mark

* vehicles cannot be shot (#18910)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Cleanup

---------

Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
This commit is contained in:
Aviu00
2023-10-25 21:03:10 +09:00
committed by Aviu00
parent 6bd97b4987
commit 9b2850f561
3 changed files with 20 additions and 0 deletions

View File

@@ -9,6 +9,7 @@ using Content.Shared.Damage;
using Content.Shared.Database; using Content.Shared.Database;
using Content.Shared.DoAfter; using Content.Shared.DoAfter;
using Content.Shared.Effects; using Content.Shared.Effects;
using Content.Shared.Glue;
using Content.Shared.Hands; using Content.Shared.Hands;
using Content.Shared.Hands.Components; using Content.Shared.Hands.Components;
using Content.Shared.Hands.EntitySystems; using Content.Shared.Hands.EntitySystems;
@@ -18,6 +19,7 @@ using Content.Shared.Interaction.Components;
using Content.Shared.Interaction.Events; using Content.Shared.Interaction.Events;
using Content.Shared.Inventory.Events; using Content.Shared.Inventory.Events;
using Content.Shared.Item; using Content.Shared.Item;
using Content.Shared.Lube;
using Content.Shared.Mobs.Systems; using Content.Shared.Mobs.Systems;
using Content.Shared.Movement.Events; using Content.Shared.Movement.Events;
using Content.Shared.Physics.Pull; using Content.Shared.Physics.Pull;
@@ -59,6 +61,7 @@ namespace Content.Shared.Cuffs
[Dependency] private readonly SharedPopupSystem _popup = default!; [Dependency] private readonly SharedPopupSystem _popup = default!;
[Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly SharedTransformSystem _transform = default!;
[Dependency] private readonly IGameTiming _gameTiming = default!; // Parkstation-EndOfRoundStats [Dependency] private readonly IGameTiming _gameTiming = default!; // Parkstation-EndOfRoundStats
[Dependency] private readonly MetaDataSystem _metaData = default!; // WD
public override void Initialize() public override void Initialize()
{ {
@@ -453,6 +456,21 @@ namespace Content.Shared.Cuffs
if (!_interaction.InRangeUnobstructed(handcuff, target)) if (!_interaction.InRangeUnobstructed(handcuff, target))
return false; return false;
// WD START
if (TryComp(handcuff, out GluedComponent? glue))
{
_metaData.SetEntityName(handcuff, glue.BeforeGluedEntityName);
RemComp<GluedComponent>(handcuff);
RemComp<UnremoveableComponent>(handcuff);
}
if (TryComp(handcuff, out LubedComponent? lube))
{
_metaData.SetEntityName(handcuff, lube.BeforeLubedEntityName);
RemComp<LubedComponent>(handcuff);
}
// WD END
// Success! // Success!
_hands.TryDrop(user, handcuff); _hands.TryDrop(user, handcuff);

View File

@@ -22,6 +22,7 @@ public abstract partial class SharedEntityStorageComponent : Component
public readonly int MasksToRemove = (int) ( public readonly int MasksToRemove = (int) (
CollisionGroup.MidImpassable | CollisionGroup.MidImpassable |
CollisionGroup.HighImpassable | CollisionGroup.HighImpassable |
CollisionGroup.MobLayer | // WD
CollisionGroup.LowImpassable); CollisionGroup.LowImpassable);
/// <summary> /// <summary>

View File

@@ -102,3 +102,4 @@
tags: tags:
- HighSecDoor - HighSecDoor
# This tag is used to nagivate the Airlock construction graph. It's needed because this construction graph is shared between Airlock, AirlockGlass, and HighSecDoor # This tag is used to nagivate the Airlock construction graph. It's needed because this construction graph is shared between Airlock, AirlockGlass, and HighSecDoor
- type: ReflectAspectMark