private void OnRefillableDragged(Entity<RefillableSolutionComponent> entity, ref DragDropDraggedEvent args)
{
+ if (!_actionBlocker.CanComplexInteract(args.User))
+ {
+ _popups.PopupEntity(Loc.GetString("mopping-system-no-hands"), args.User, args.User);
+ return;
+ }
+
if (!_solutionContainerSystem.TryGetSolution(entity.Owner, entity.Comp.Solution, out var soln, out var solution) || solution.Volume == FixedPoint2.Zero)
{
_popups.PopupEntity(Loc.GetString("mopping-system-empty", ("used", entity.Owner)), entity, args.User);
using Content.Server.DoAfter;
using Content.Server.Fluids.Components;
using Content.Server.Spreader;
+using Content.Shared.ActionBlocker;
using Content.Shared.Chemistry;
using Content.Shared.Chemistry.Components;
using Content.Shared.Chemistry.Components.SolutionManager;
/// </summary>
public sealed partial class PuddleSystem : SharedPuddleSystem
{
+ [Dependency] private readonly ActionBlockerSystem _actionBlocker = default!;
[Dependency] private readonly IAdminLogManager _adminLogger = default!;
[Dependency] private readonly IGameTiming _timing = default!;
[Dependency] private readonly SharedMapSystem _map = default!;
mopping-system-puddle-space = { CAPITALIZE(THE($used)) } is full of water
mopping-system-puddle-evaporate = { CAPITALIZE(THE($target)) } is evaporating
mopping-system-no-water = { CAPITALIZE(THE($used)) } has no water!
+mopping-system-no-hands = You have no hands!
mopping-system-full = { CAPITALIZE(THE($used)) } is full!
mopping-system-empty = { CAPITALIZE(THE($used)) } is empty!