using Content.Shared.Kitchen; using Content.Shared.Storage; using Robust.Shared.GameStates; namespace Content.Shared.Nutrition.Components; /// /// Indicates that the entity can be butchered. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] public sealed partial class ButcherableComponent : Component { /// /// List of the entities that this entity should spawn after being butchered. /// /// /// Note that spawns one item at a time and decreases the amount until it's zero and then removes the entry. /// [DataField("spawned", required: true), AutoNetworkedField] public List SpawnedEntities = []; /// /// Time required to butcher that entity. /// [DataField, AutoNetworkedField] public float ButcherDelay = 8.0f; /// /// Tool type used to butcher that entity. /// [DataField("butcheringType"), AutoNetworkedField] public ButcheringType Type = ButcheringType.Knife; } public enum ButcheringType : byte { /// /// E.g. goliaths. /// Knife, /// /// E.g. monkeys. /// Spike, /// /// E.g. humans. /// Gibber // TODO }