Mousetrap fixes/tweaks (#8484)
* fixes issues with mousetraps, adds activation popup * sure * me when i scroll up a bit in discord
This commit is contained in:
@@ -1,9 +1,11 @@
|
|||||||
using Content.Server.Damage.Systems;
|
using Content.Server.Damage.Systems;
|
||||||
using Content.Server.Explosion.EntitySystems;
|
using Content.Server.Explosion.EntitySystems;
|
||||||
|
using Content.Server.Popups;
|
||||||
using Content.Shared.Interaction.Events;
|
using Content.Shared.Interaction.Events;
|
||||||
using Content.Shared.Inventory;
|
using Content.Shared.Inventory;
|
||||||
using Content.Shared.Mousetrap;
|
using Content.Shared.Mousetrap;
|
||||||
using Content.Shared.StepTrigger;
|
using Content.Shared.StepTrigger;
|
||||||
|
using Robust.Shared.Player;
|
||||||
|
|
||||||
namespace Content.Server.Mousetrap;
|
namespace Content.Server.Mousetrap;
|
||||||
|
|
||||||
@@ -11,6 +13,7 @@ public sealed class MousetrapSystem : EntitySystem
|
|||||||
{
|
{
|
||||||
[Dependency] private readonly InventorySystem _inventorySystem = default!;
|
[Dependency] private readonly InventorySystem _inventorySystem = default!;
|
||||||
[Dependency] private readonly TriggerSystem _triggerSystem = default!;
|
[Dependency] private readonly TriggerSystem _triggerSystem = default!;
|
||||||
|
[Dependency] private readonly PopupSystem _popupSystem = default!;
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
@@ -23,6 +26,11 @@ public sealed class MousetrapSystem : EntitySystem
|
|||||||
private void OnUseInHand(EntityUid uid, MousetrapComponent component, UseInHandEvent args)
|
private void OnUseInHand(EntityUid uid, MousetrapComponent component, UseInHandEvent args)
|
||||||
{
|
{
|
||||||
component.IsActive = !component.IsActive;
|
component.IsActive = !component.IsActive;
|
||||||
|
_popupSystem.PopupEntity(component.IsActive
|
||||||
|
? Loc.GetString("mousetrap-on-activate")
|
||||||
|
: Loc.GetString("mousetrap-on-deactivate"),
|
||||||
|
uid,
|
||||||
|
Filter.Entities(args.User));
|
||||||
|
|
||||||
UpdateVisuals(uid);
|
UpdateVisuals(uid);
|
||||||
}
|
}
|
||||||
@@ -50,7 +58,7 @@ public sealed class MousetrapSystem : EntitySystem
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (TryComp(args.Tripper, out PhysicsComponent? physics))
|
if (TryComp(args.Tripper, out PhysicsComponent? physics) && physics.Mass != 0)
|
||||||
{
|
{
|
||||||
// The idea here is inverse,
|
// The idea here is inverse,
|
||||||
// Small - big damage,
|
// Small - big damage,
|
||||||
|
|||||||
2
Resources/Locale/en-US/mousetraps/mousetraps.ftl
Normal file
2
Resources/Locale/en-US/mousetraps/mousetraps.ftl
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
mousetrap-on-activate = The mousetrap was activated.
|
||||||
|
mousetrap-on-deactivate = The mousetrap was deactivated.
|
||||||
Reference in New Issue
Block a user