Remove inaccurate admin log when moving a held item (#32525)

Remove inaccurate admin log when switching held item
This commit is contained in:
Leon Friedrich
2024-10-14 17:05:40 +13:00
committed by GitHub
parent dd6433c44b
commit 30ada26315
5 changed files with 14 additions and 11 deletions

View File

@@ -130,9 +130,9 @@ namespace Content.Client.Hands.Systems
OnPlayerHandsAdded?.Invoke(hands); OnPlayerHandsAdded?.Invoke(hands);
} }
public override void DoDrop(EntityUid uid, Hand hand, bool doDropInteraction = true, HandsComponent? hands = null) public override void DoDrop(EntityUid uid, Hand hand, bool doDropInteraction = true, HandsComponent? hands = null, bool log = true)
{ {
base.DoDrop(uid, hand, doDropInteraction, hands); base.DoDrop(uid, hand, doDropInteraction, hands, log);
if (TryComp(hand.HeldEntity, out SpriteComponent? sprite)) if (TryComp(hand.HeldEntity, out SpriteComponent? sprite))
sprite.RenderOrder = EntityManager.CurrentTick.Value; sprite.RenderOrder = EntityManager.CurrentTick.Value;

View File

@@ -1,4 +1,5 @@
using System.Numerics; using System.Numerics;
using Content.Shared.Database;
using Content.Shared.Hands.Components; using Content.Shared.Hands.Components;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Inventory.VirtualItem; using Content.Shared.Inventory.VirtualItem;
@@ -130,7 +131,7 @@ public abstract partial class SharedHandsSystem
TransformSystem.DropNextTo((entity, itemXform), (uid, userXform)); TransformSystem.DropNextTo((entity, itemXform), (uid, userXform));
return true; return true;
} }
// drop the item with heavy calculations from their hands and place it at the calculated interaction range position // drop the item with heavy calculations from their hands and place it at the calculated interaction range position
// The DoDrop is handle if there's no drop target // The DoDrop is handle if there's no drop target
DoDrop(uid, hand, doDropInteraction: doDropInteraction, handsComp); DoDrop(uid, hand, doDropInteraction: doDropInteraction, handsComp);
@@ -138,7 +139,7 @@ public abstract partial class SharedHandsSystem
// if there's no drop location stop here // if there's no drop location stop here
if (targetDropLocation == null) if (targetDropLocation == null)
return true; return true;
// otherwise, also move dropped item and rotate it properly according to grid/map // otherwise, also move dropped item and rotate it properly according to grid/map
var (itemPos, itemRot) = TransformSystem.GetWorldPositionRotation(entity); var (itemPos, itemRot) = TransformSystem.GetWorldPositionRotation(entity);
var origin = new MapCoordinates(itemPos, itemXform.MapID); var origin = new MapCoordinates(itemPos, itemXform.MapID);
@@ -197,7 +198,7 @@ public abstract partial class SharedHandsSystem
/// <summary> /// <summary>
/// Removes the contents of a hand from its container. Assumes that the removal is allowed. In general, you should not be calling this directly. /// Removes the contents of a hand from its container. Assumes that the removal is allowed. In general, you should not be calling this directly.
/// </summary> /// </summary>
public virtual void DoDrop(EntityUid uid, Hand hand, bool doDropInteraction = true, HandsComponent? handsComp = null) public virtual void DoDrop(EntityUid uid, Hand hand, bool doDropInteraction = true, HandsComponent? handsComp = null, bool log = true)
{ {
if (!Resolve(uid, ref handsComp)) if (!Resolve(uid, ref handsComp))
return; return;
@@ -221,6 +222,9 @@ public abstract partial class SharedHandsSystem
if (doDropInteraction) if (doDropInteraction)
_interactionSystem.DroppedInteraction(uid, entity); _interactionSystem.DroppedInteraction(uid, entity);
if (log)
_adminLogger.Add(LogType.Drop, LogImpact.Low, $"{ToPrettyString(uid):user} dropped {ToPrettyString(entity):entity}");
if (hand == handsComp.ActiveHand) if (hand == handsComp.ActiveHand)
RaiseLocalEvent(entity, new HandDeselectedEvent(uid)); RaiseLocalEvent(entity, new HandDeselectedEvent(uid));
} }

View File

@@ -178,8 +178,8 @@ public abstract partial class SharedHandsSystem : EntitySystem
if (!CanPickupToHand(uid, entity, handsComp.ActiveHand, checkActionBlocker, handsComp)) if (!CanPickupToHand(uid, entity, handsComp.ActiveHand, checkActionBlocker, handsComp))
return false; return false;
DoDrop(uid, hand, false, handsComp); DoDrop(uid, hand, false, handsComp, log:false);
DoPickup(uid, handsComp.ActiveHand, entity, handsComp); DoPickup(uid, handsComp.ActiveHand, entity, handsComp, log: false);
return true; return true;
} }

View File

@@ -220,7 +220,7 @@ public abstract partial class SharedHandsSystem : EntitySystem
/// <summary> /// <summary>
/// Puts an entity into the player's hand, assumes that the insertion is allowed. In general, you should not be calling this function directly. /// Puts an entity into the player's hand, assumes that the insertion is allowed. In general, you should not be calling this function directly.
/// </summary> /// </summary>
public virtual void DoPickup(EntityUid uid, Hand hand, EntityUid entity, HandsComponent? hands = null) public virtual void DoPickup(EntityUid uid, Hand hand, EntityUid entity, HandsComponent? hands = null, bool log = true)
{ {
if (!Resolve(uid, ref hands)) if (!Resolve(uid, ref hands))
return; return;
@@ -235,7 +235,8 @@ public abstract partial class SharedHandsSystem : EntitySystem
return; return;
} }
_adminLogger.Add(LogType.Pickup, LogImpact.Low, $"{ToPrettyString(uid):user} picked up {ToPrettyString(entity):entity}"); if (log)
_adminLogger.Add(LogType.Pickup, LogImpact.Low, $"{ToPrettyString(uid):user} picked up {ToPrettyString(entity):entity}");
Dirty(uid, hands); Dirty(uid, hands);

View File

@@ -1166,8 +1166,6 @@ namespace Content.Shared.Interaction
{ {
var dropMsg = new DroppedEvent(user); var dropMsg = new DroppedEvent(user);
RaiseLocalEvent(item, dropMsg, true); RaiseLocalEvent(item, dropMsg, true);
if (dropMsg.Handled)
_adminLogger.Add(LogType.Drop, LogImpact.Low, $"{ToPrettyString(user):user} dropped {ToPrettyString(item):entity}");
// If the dropper is rotated then use their targetrelativerotation as the drop rotation // If the dropper is rotated then use their targetrelativerotation as the drop rotation
var rotation = Angle.Zero; var rotation = Angle.Zero;