diff --git a/Content.Server/GameObjects/EntitySystems/VerbSystem.cs b/Content.Server/GameObjects/EntitySystems/VerbSystem.cs index b3a311dc56..97feeb17dc 100644 --- a/Content.Server/GameObjects/EntitySystems/VerbSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/VerbSystem.cs @@ -112,6 +112,27 @@ namespace Content.Server.GameObjects.EntitySystems break; } + foreach (var globalVerb in VerbUtility.GetGlobalVerbs(Assembly.GetExecutingAssembly())) + { + if (globalVerb.GetType().ToString() != use.VerbKey) + { + continue; + } + + if (globalVerb.RequireInteractionRange) + { + var distanceSquared = (userEntity.Transform.WorldPosition - entity.Transform.WorldPosition) + .LengthSquared; + if (distanceSquared > VerbUtility.InteractionRangeSquared) + { + break; + } + } + + globalVerb.Activate(userEntity, entity); + break; + } + break; } }