2022-12-19 23:07:23 -05:00
|
|
|
|
using Content.Server.Hands.Systems;
|
2024-01-14 06:18:47 -04:00
|
|
|
|
using Content.Server.Inventory;
|
2022-12-19 23:07:23 -05:00
|
|
|
|
using Content.Shared.Hands;
|
|
|
|
|
|
using Content.Shared.Item;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Content.Server.Item;
|
|
|
|
|
|
|
|
|
|
|
|
public sealed class MultiHandedItemSystem : SharedMultiHandedItemSystem
|
|
|
|
|
|
{
|
2024-01-14 06:18:47 -04:00
|
|
|
|
[Dependency] private readonly VirtualItemSystem _virtualItem = default!;
|
2022-12-19 23:07:23 -05:00
|
|
|
|
|
|
|
|
|
|
protected override void OnEquipped(EntityUid uid, MultiHandedItemComponent component, GotEquippedHandEvent args)
|
|
|
|
|
|
{
|
|
|
|
|
|
for (var i = 0; i < component.HandsNeeded - 1; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
_virtualItem.TrySpawnVirtualItemInHand(uid, args.User);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected override void OnUnequipped(EntityUid uid, MultiHandedItemComponent component, GotUnequippedHandEvent args)
|
|
|
|
|
|
{
|
|
|
|
|
|
_virtualItem.DeleteInHandsMatching(args.User, uid);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|