using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
namespace Content.Shared.Item;
///
/// Handles the changes to the item size when toggled.
///
///
/// You can change the size when activated or not. By default the sizes are copied from the item.
///
[RegisterComponent, NetworkedComponent]
public sealed partial class ItemToggleSizeComponent : Component
{
///
/// Item's size when activated
///
[ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField]
public ProtoId? ActivatedSize = null;
///
/// Item's size when deactivated. If none is mentioned, it uses the item's default size instead.
///
[ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField]
public ProtoId? DeactivatedSize = null;
}
///
/// Raised in order to effect changes upon the MeleeWeaponComponent of the entity.
///
[ByRefEvent]
public record struct ItemToggleSizeUpdateEvent(bool Activated)
{
public bool Activated = Activated;
}