diff --git a/Content.Client/EntryPoint.cs b/Content.Client/EntryPoint.cs index 404e20157d..4468574b25 100644 --- a/Content.Client/EntryPoint.cs +++ b/Content.Client/EntryPoint.cs @@ -123,7 +123,7 @@ namespace Content.Client "Species", "Drink", "Food", - "DrinkFoodContainer", + "FoodContainer", "Stomach", "Hunger", "Thirst", diff --git a/Content.Client/GameObjects/Components/Nutrition/DrinkFoodContainerVisualizer2D.cs b/Content.Client/GameObjects/Components/Nutrition/DrinkFoodContainerVisualizer2D.cs index 93bd7aa745..52a6653924 100644 --- a/Content.Client/GameObjects/Components/Nutrition/DrinkFoodContainerVisualizer2D.cs +++ b/Content.Client/GameObjects/Components/Nutrition/DrinkFoodContainerVisualizer2D.cs @@ -11,11 +11,11 @@ using YamlDotNet.RepresentationModel; namespace Content.Client.GameObjects.Components.Nutrition { [UsedImplicitly] - public sealed class DrinkFoodContainerVisualizer2D : AppearanceVisualizer + public sealed class FoodContainerVisualizer2D : AppearanceVisualizer { private string _baseState; private int _steps; - private DrinkFoodContainerVisualMode _mode; + private FoodContainerVisualMode _mode; public override void LoadData(YamlMappingNode node) { @@ -25,11 +25,11 @@ namespace Content.Client.GameObjects.Components.Nutrition _steps = node.GetNode("steps").AsInt(); try { - _mode = node.GetNode("mode").AsEnum(); + _mode = node.GetNode("mode").AsEnum(); } catch (KeyNotFoundException) { - _mode = DrinkFoodContainerVisualMode.Rounded; + _mode = FoodContainerVisualMode.Rounded; } } @@ -37,12 +37,12 @@ namespace Content.Client.GameObjects.Components.Nutrition { var sprite = component.Owner.GetComponent(); - if (!component.TryGetData(DrinkFoodContainerVisuals.Current, out var current)) + if (!component.TryGetData(FoodContainerVisuals.Current, out var current)) { return; } - if (!component.TryGetData(DrinkFoodContainerVisuals.Capacity, out var capacity)) + if (!component.TryGetData(FoodContainerVisuals.Capacity, out var capacity)) { return; } @@ -51,10 +51,10 @@ namespace Content.Client.GameObjects.Components.Nutrition switch (_mode) { - case DrinkFoodContainerVisualMode.Discrete: + case FoodContainerVisualMode.Discrete: step = Math.Min(_steps - 1, current); break; - case DrinkFoodContainerVisualMode.Rounded: + case FoodContainerVisualMode.Rounded: step = ContentHelpers.RoundToLevels(current, capacity, _steps); break; default: diff --git a/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs b/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs index 88e6b6d95a..f05b227ee8 100644 --- a/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs +++ b/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs @@ -241,7 +241,13 @@ namespace Content.Server.GameObjects.Components.Kitchen return true; } - itemEntity.TryGetComponent(typeof(ItemComponent), out var food); + if (!itemEntity.TryGetComponent(typeof(ItemComponent), out var food)) + { + + _notifyManager.PopupMessage(Owner, eventArgs.User, "That won't work!"); + return false; + } + var ent = food.Owner; //Get the entity of the ItemComponent. _storage.Insert(ent); _uiDirty = true; diff --git a/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs b/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs index baa6e7ac9d..56576b9c36 100644 --- a/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs @@ -1,148 +1,163 @@ -using System; -using System.Linq; +using System; using Content.Server.GameObjects.Components.Chemistry; -using Content.Server.GameObjects.Components.Sound; using Content.Server.GameObjects.EntitySystems; -using Content.Server.Utility; +using Content.Shared.Audio; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Nutrition; using Content.Shared.Interfaces; -using Content.Shared.Maths; using Robust.Server.GameObjects; using Robust.Server.GameObjects.EntitySystems; using Robust.Shared.Audio; using Robust.Shared.GameObjects; -using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Interfaces.Random; using Robust.Shared.IoC; using Robust.Shared.Localization; +using Robust.Shared.Prototypes; +using Robust.Shared.Random; using Robust.Shared.Serialization; -using Robust.Shared.ViewVariables; using Robust.Shared.Utility; +using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Nutrition { [RegisterComponent] - public class DrinkComponent : Component, IAfterInteract, IUse + [ComponentReference(typeof(IAfterInteract))] + public class DrinkComponent : Component, IUse, IAfterInteract, ISolutionChange,IExamine { #pragma warning disable 649 - [Dependency] private readonly ILocalizationManager _localizationManager; + [Dependency] private readonly IPrototypeManager _prototypeManager; + [Dependency] private readonly IRobustRandom _random; + [Dependency] private readonly IEntitySystemManager _entitySystem; #pragma warning restore 649 + + private AudioSystem _audioSystem; public override string Name => "Drink"; + [ViewVariables] private SolutionComponent _contents; - - private AppearanceComponent _appearanceComponent; - [ViewVariables] private string _useSound; [ViewVariables] - private string _finishPrototype; - - public ReagentUnit TransferAmount => _transferAmount; + private bool _defaultToOpened; [ViewVariables] - private ReagentUnit _transferAmount = ReagentUnit.New(2); + public ReagentUnit TransferAmount { get; private set; } = ReagentUnit.New(2); - public ReagentUnit MaxVolume - { - get => _contents.MaxVolume; - set => _contents.MaxVolume = value; - } + [ViewVariables] + public bool Opened => _opened; - private bool _despawnOnFinish; - - private bool _drinking; - - public int UsesLeft() - { - // In case transfer amount exceeds volume left - if (_contents.CurrentVolume == 0) - { - return 0; - } - return Math.Max(1, (int)Math.Ceiling((_contents.CurrentVolume / _transferAmount).Float())); - } + [ViewVariables] + public bool Empty => _contents.CurrentVolume.Float() <= 0; + private AppearanceComponent _appearanceComponent; + private bool _opened = false; + private string _soundCollection; public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - serializer.DataField(ref _useSound, "use_sound", "/Audio/items/drink.ogg"); - // E.g. cola can when done or clear bottle, whatever - // Currently this will enforce it has the same volume but this may change. - TODO: this should be implemented in a separate component - serializer.DataField(ref _despawnOnFinish, "despawn_empty", false); - serializer.DataField(ref _finishPrototype, "spawn_on_finish", null); + serializer.DataField(ref _useSound, "useSound", "/Audio/items/drink.ogg"); + serializer.DataField(ref _defaultToOpened, "isOpen", false); //For things like cups of coffee. + serializer.DataField(ref _soundCollection, "openSounds","canOpenSounds"); } - protected override void Startup() + public override void Initialize() { - base.Startup(); - _contents = Owner.GetComponent(); + base.Initialize(); + Owner.TryGetComponent(out _appearanceComponent); + if(!Owner.TryGetComponent(out _contents)) + { + _contents = Owner.AddComponent(); + } + _contents.Capabilities = SolutionCaps.PourIn | SolutionCaps.PourOut | SolutionCaps.Injectable; - _drinking = false; - Owner.TryGetComponent(out AppearanceComponent appearance); - _appearanceComponent = appearance; - _appearanceComponent?.SetData(SharedFoodComponent.FoodVisuals.MaxUses, MaxVolume.Float()); - _updateAppearance(); + _opened = _defaultToOpened; + UpdateAppearance(); } - private void _updateAppearance() + void ISolutionChange.SolutionChanged(SolutionChangeEventArgs eventArgs) + { + UpdateAppearance(); + } + + + private void UpdateAppearance() { _appearanceComponent?.SetData(SharedFoodComponent.FoodVisuals.Visual, _contents.CurrentVolume.Float()); } - - bool IUse.UseEntity(UseEntityEventArgs eventArgs) + bool IUse.UseEntity(UseEntityEventArgs args) { - UseDrink(eventArgs.User); - - return true; + if (!_opened) + { + //Do the opening stuff like playing the sounds. + var soundCollection = _prototypeManager.Index(_soundCollection); + var file = _random.Pick(soundCollection.PickFiles); + _audioSystem = _entitySystem.GetEntitySystem(); + _audioSystem.Play(file, Owner, AudioParams.Default); + _opened = true; + return false; + } + return TryUseDrink(args.User); } + //Force feeding a drink to someone. void IAfterInteract.AfterInteract(AfterInteractEventArgs eventArgs) { - if (!InteractionChecks.InRangeUnobstructed(eventArgs)) return; - - UseDrink(eventArgs.Target); + TryUseDrink(eventArgs.Target); } - private void UseDrink(IEntity targetEntity) + public void Examine(FormattedMessage message) { - if (targetEntity == null) + if (!Opened) { return; } + var color = Empty ? "gray" : "yellow"; + var openedText = Loc.GetString(Empty ? "Empty" : "Opened"); + message.AddMarkup(Loc.GetString("[color={0}]{1}[/color]", color, openedText)); - if (UsesLeft() == 0 && !_despawnOnFinish) + } + + private bool TryUseDrink(IEntity target) + { + if (target == null) { - targetEntity.PopupMessage(targetEntity, _localizationManager.GetString("Empty")); - return; + return false; } - if (targetEntity.TryGetComponent(out StomachComponent stomachComponent)) + if (!_opened) { - _drinking = true; - var transferAmount = ReagentUnit.Min(_transferAmount, _contents.CurrentVolume); - var split = _contents.SplitSolution(transferAmount); - if (stomachComponent.TryTransferSolution(split)) - { - // When we split Finish gets called which may delete the can so need to use the entity system for sound - if (_useSound != null) - { - var audioSystem = EntitySystem.Get(); - audioSystem.Play(_useSound, Owner, AudioParams.Default.WithVolume(-2f)); - targetEntity.PopupMessage(targetEntity, _localizationManager.GetString("Slurp")); - } - } - else - { - // Add it back in - _contents.TryAddSolution(split); - targetEntity.PopupMessage(targetEntity, _localizationManager.GetString("Can't drink")); - } - _drinking = false; + target.PopupMessage(target, Loc.GetString("Open it first!")); } + + if (_contents.CurrentVolume.Float() <= 0) + { + target.PopupMessage(target, Loc.GetString("It's empty!")); + return false; + } + + if (!target.TryGetComponent(out StomachComponent stomachComponent)) + { + return false; + } + + var transferAmount = ReagentUnit.Min(TransferAmount, _contents.CurrentVolume); + var split = _contents.SplitSolution(transferAmount); + if (stomachComponent.TryTransferSolution(split)) + { + if (_useSound == null) return false; + _audioSystem.Play(_useSound, Owner, AudioParams.Default.WithVolume(-2f)); + target.PopupMessage(target, Loc.GetString("Slurp")); + UpdateAppearance(); + return true; + } + + //Stomach was full or can't handle whatever solution we have. + _contents.TryAddSolution(split); + target.PopupMessage(target, Loc.GetString("You've had enough {0}!", Owner.Name)); + return false; } } } diff --git a/Content.Server/GameObjects/Components/Nutrition/DrinkFoodContainerComponent.cs b/Content.Server/GameObjects/Components/Nutrition/DrinkFoodContainerComponent.cs deleted file mode 100644 index 4c5dae3ba9..0000000000 --- a/Content.Server/GameObjects/Components/Nutrition/DrinkFoodContainerComponent.cs +++ /dev/null @@ -1,191 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using Content.Server.GameObjects.Components.Sound; -using Content.Server.GameObjects.EntitySystems; -using Content.Shared.GameObjects.Components.Nutrition; -using Robust.Server.GameObjects; -using Robust.Server.GameObjects.Components.Container; -using Robust.Server.Interfaces.GameObjects; -using Robust.Shared.GameObjects; -using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.Interfaces.Random; -using Robust.Shared.IoC; -using Robust.Shared.Serialization; -using Robust.Shared.ViewVariables; - -namespace Content.Server.GameObjects.Components.Nutrition -{ - [RegisterComponent] - public sealed class DrinkFoodContainerComponent : SharedDrinkFoodContainerComponent, IMapInit, IUse - { - public override string Name => "DrinkFoodContainer"; - private string _useSound; - private Container _foodContainer; - // Optimisation scabbed from BallisticMagazineComponent to avoid loading entities until needed - [ViewVariables] private readonly Stack _loadedFood = new Stack(); - private AppearanceComponent _appearanceComponent; - [ViewVariables] public int Count => _availableSpawnCount + _loadedFood.Count; - private int _availableSpawnCount; - private Dictionary _prototypes; - private string _finishPrototype; - public int Capacity => _capacity; - private int _capacity; - - public override void ExposeData(ObjectSerializer serializer) - { - base.ExposeData(serializer); - serializer.DataField(ref _useSound, "use_sound", null); - // Is a dictionary for stuff with probabilities (mainly donut box) - serializer.DataField(ref _prototypes, "prototypes", null); - // If you want the final item to be different e.g. trash - serializer.DataField(ref _finishPrototype, "spawn_on_finish", null); - serializer.DataField(ref _availableSpawnCount, "available_spawn_count", 0); - serializer.DataField(ref _capacity, "capacity", 5); - } - - public override void Initialize() - { - base.Initialize(); - Owner.TryGetComponent(out AppearanceComponent appearance); - _appearanceComponent = appearance; - if (_prototypes == null) - { - throw new NullReferenceException(); - } - - if (_prototypes.Sum(x => x.Value) != 100) - { - throw new ArgumentOutOfRangeException(); - } - } - - public void MapInit() - { - _availableSpawnCount = Capacity; - } - - protected override void Startup() - { - base.Startup(); - - _foodContainer = - ContainerManagerComponent.Ensure("food_container", Owner, out var existed); - - if (existed) - { - foreach (var entity in _foodContainer.ContainedEntities) - { - _loadedFood.Push(entity); - } - } - - _updateAppearance(); - _appearanceComponent?.SetData(DrinkFoodContainerVisuals.Capacity, Capacity); - } - - bool IUse.UseEntity(UseEntityEventArgs eventArgs) - { - // TODO: Potentially change this depending upon desired functionality - IEntity item = TakeItem(eventArgs.User); - if (item == null) - { - return false; - } - if (item.TryGetComponent(out ItemComponent itemComponent) && - eventArgs.User.TryGetComponent(out HandsComponent handsComponent)) - { - if (handsComponent.CanPutInHand(itemComponent)) - { - handsComponent.PutInHand(itemComponent); - return true; - } - } - - item.Transform.GridPosition = eventArgs.User.Transform.GridPosition; - return true; - } - - // TODO: Somewhat shitcode - // Tried using .Prob() buuuuuttt trying that for each item wouldn't work. - private string _getProbItem(Dictionary prototypes) - { - if (prototypes.Count == 1) - { - return prototypes.Keys.ToList()[0]; - } - var prob = IoCManager.Resolve(); - var result = prob.Next(0, 100); - var runningTotal = 0; - foreach (var item in prototypes) - { - runningTotal += item.Value; - if (result < runningTotal) - { - return item.Key; - } - - } - throw new Exception(); - } - - public IEntity TakeItem(IEntity user) - { - if (_useSound != null) - { - if (Owner.TryGetComponent(out SoundComponent soundComponent) && _useSound != null) - { - soundComponent.Play(_useSound); - } - } - IEntity item = null; - if (_loadedFood.Count > 0) - { - item = _loadedFood.Pop(); - _foodContainer.Remove(item); - } - - if (_availableSpawnCount > 0) - { - var prototypeName = _getProbItem(_prototypes); - item = Owner.EntityManager.SpawnEntity(prototypeName, Owner.Transform.GridPosition); - _availableSpawnCount -= 1; - - } - - _tryDelete(user); - _updateAppearance(); - - return item; - } - - private void _tryDelete(IEntity user) - { - if (Count <= 0) - { - // Ideally this takes priority to be put into inventory rather than the desired item - if (_finishPrototype != null) - { - var item = Owner.EntityManager.SpawnEntity(_finishPrototype, Owner.Transform.GridPosition); - item.Transform.GridPosition = Owner.Transform.GridPosition; - Owner.Delete(); - if (user.TryGetComponent(out HandsComponent handsComponent) && - item.TryGetComponent(out ItemComponent itemComponent)) - { - if (handsComponent.CanPutInHand(itemComponent)) - { - handsComponent.PutInHand(itemComponent); - } - } - return; - } - Owner.Delete(); - } - } - - private void _updateAppearance() - { - _appearanceComponent?.SetData(DrinkFoodContainerVisuals.Current, Count); - } - } -} diff --git a/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs b/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs index dec7af1f70..927b4873df 100644 --- a/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs @@ -1,12 +1,11 @@ -using System; +using System; using Content.Server.GameObjects.Components.Chemistry; using Content.Server.GameObjects.Components.Sound; using Content.Server.GameObjects.EntitySystems; -using Content.Server.Utility; using Content.Shared.Chemistry; -using Content.Shared.GameObjects.Components.Nutrition; using Content.Shared.Interfaces; -using Robust.Server.GameObjects; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Shared.Audio; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; @@ -17,165 +16,105 @@ using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Nutrition { [RegisterComponent] - public class FoodComponent : Component, IAfterInteract, IUse + [ComponentReference(typeof(IAfterInteract))] + public class FoodComponent : Component, IUse, IAfterInteract { #pragma warning disable 649 - [Dependency] private readonly ILocalizationManager _localizationManager; + [Dependency] private readonly IEntitySystemManager _entitySystem; #pragma warning restore 649 - // Currently the design is similar to drinkcomponent but it's susceptible to change so left as is for now. public override string Name => "Food"; - private AppearanceComponent _appearanceComponent; - [ViewVariables] private string _useSound; [ViewVariables] - private string _finishPrototype; + private string _trashPrototype; [ViewVariables] private SolutionComponent _contents; [ViewVariables] private ReagentUnit _transferAmount; - private Solution _initialContents; // This is just for loading from yaml + public int UsesRemaining => _contents.CurrentVolume == 0 + ? + 0 : Math.Max(1, (int)Math.Ceiling((_contents.CurrentVolume / _transferAmount).Float())); + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - // Default is 1 use restoring 30 - serializer.DataField(ref _initialContents, "contents", null); - serializer.DataField(ref _useSound, "use_sound", "/Audio/items/eatfood.ogg"); - // Default is transfer 30 units - serializer.DataField(ref _transferAmount, "transfer_amount", ReagentUnit.New(5)); - // E.g. empty chip packet when done - serializer.DataField(ref _finishPrototype, "spawn_on_finish", null); + serializer.DataField(ref _useSound, "useSound", "/Audio/items/eatfood.ogg"); + serializer.DataField(ref _transferAmount, "transferAmount", ReagentUnit.New(5)); + serializer.DataField(ref _trashPrototype, "trash", "TrashPlate"); } public override void Initialize() { base.Initialize(); - if (_contents == null) - { - if (Owner.TryGetComponent(out SolutionComponent solutionComponent)) - { - _contents = solutionComponent; - } - else - { - _contents = Owner.AddComponent(); - } - } + _contents = Owner.GetComponent(); - _contents.MaxVolume = _initialContents.TotalVolume; - } - - protected override void Startup() - { - base.Startup(); - if (_initialContents != null) - { - _contents.TryAddSolution(_initialContents, true, true); - } - - _initialContents = null; - if (_contents.CurrentVolume == 0) - { - _contents.TryAddReagent("chem.Nutriment", ReagentUnit.New(5), out _); - } - Owner.TryGetComponent(out AppearanceComponent appearance); - _appearanceComponent = appearance; - // UsesLeft() at the start should match the max, at least currently. - _appearanceComponent?.SetData(SharedFoodComponent.FoodVisuals.MaxUses, UsesLeft()); - _updateAppearance(); - } - - private void _updateAppearance() - { - _appearanceComponent?.SetData(SharedFoodComponent.FoodVisuals.Visual, UsesLeft()); - } - - public int UsesLeft() - { - // In case transfer amount exceeds volume left - if (_contents.CurrentVolume == 0) - { - return 0; - } - return Math.Max(1, (int)Math.Ceiling((_contents.CurrentVolume / _transferAmount).Float())); } bool IUse.UseEntity(UseEntityEventArgs eventArgs) { - UseFood(eventArgs.User); - - return true; + return TryUseFood(eventArgs.User, null); } void IAfterInteract.AfterInteract(AfterInteractEventArgs eventArgs) { - if (!InteractionChecks.InRangeUnobstructed(eventArgs)) return; - - UseFood(eventArgs.Target); + TryUseFood(eventArgs.User, eventArgs.Target); } - void UseFood(IEntity user) + private bool TryUseFood(IEntity user, IEntity target) { if (user == null) { - return; + return false; } - if (UsesLeft() == 0) + if (UsesRemaining <= 0) { - user.PopupMessage(user, _localizationManager.GetString("Empty")); + user.PopupMessage(user, Loc.GetString($"The {Owner.Name} is empty!")); + return false; } - else + + var trueTarget = target ?? user; + + if (trueTarget.TryGetComponent(out StomachComponent stomachComponent)) { - // TODO: Add putting food back in boxes here? - if (user.TryGetComponent(out StomachComponent stomachComponent)) + var transferAmount = ReagentUnit.Min(_transferAmount, _contents.CurrentVolume); + var split = _contents.SplitSolution(transferAmount); + if (stomachComponent.TryTransferSolution(split)) { - var transferAmount = ReagentUnit.Min(_transferAmount, _contents.CurrentVolume); - var split = _contents.SplitSolution(transferAmount); - if (stomachComponent.TryTransferSolution(split)) - { - if (_useSound != null) - { - Owner.GetComponent()?.Play(_useSound); - user.PopupMessage(user, _localizationManager.GetString("Nom")); - } - } - else - { - // Add it back in - _contents.TryAddSolution(split); - user.PopupMessage(user, _localizationManager.GetString("Can't eat")); - } + _entitySystem.GetEntitySystem() + .Play(_useSound, trueTarget, AudioParams.Default.WithVolume(-1f)); + trueTarget.PopupMessage(user, Loc.GetString("Nom")); + } + else + { + _contents.TryAddSolution(split); + trueTarget.PopupMessage(user, Loc.GetString("You can't eat any more!")); } } - if (UsesLeft() > 0) + if (UsesRemaining > 0) { - return; - + return true; } + //We're empty. Become trash. var position = Owner.Transform.GridPosition; Owner.Delete(); - - if (_finishPrototype != null) + var finisher = Owner.EntityManager.SpawnEntity(_trashPrototype, position); + if (user.TryGetComponent(out HandsComponent handsComponent) && finisher.TryGetComponent(out ItemComponent itemComponent)) { - var finisher = Owner.EntityManager.SpawnEntity(_finishPrototype, position); - if (user.TryGetComponent(out HandsComponent handsComponent) && finisher.TryGetComponent(out ItemComponent itemComponent)) + if (handsComponent.CanPutInHand(itemComponent)) { - if (handsComponent.CanPutInHand(itemComponent)) - { - handsComponent.PutInHand(itemComponent); - return; - } + handsComponent.PutInHand(itemComponent); + return true; } - - finisher.Transform.GridPosition = user.Transform.GridPosition; - return; } + finisher.Transform.GridPosition = user.Transform.GridPosition; + return true; + } } } diff --git a/Content.Server/GameObjects/Components/Nutrition/FoodContainerComponent.cs b/Content.Server/GameObjects/Components/Nutrition/FoodContainerComponent.cs new file mode 100644 index 0000000000..efddfcc04b --- /dev/null +++ b/Content.Server/GameObjects/Components/Nutrition/FoodContainerComponent.cs @@ -0,0 +1,99 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Content.Server.GameObjects.EntitySystems; +using Content.Shared.GameObjects.Components.Nutrition; +using Robust.Server.GameObjects; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Interfaces.Random; +using Robust.Shared.IoC; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; + +namespace Content.Server.GameObjects.Components.Nutrition +{ + /// + /// This container acts as a master object for things like Pizza, which holds slices. + /// + /// TODO: Perhaps implement putting food back (pizza boxes) but that really isn't mandatory. + /// This doesn't even need to have an actual Container for right now. + [RegisterComponent] + public sealed class FoodContainer : SharedFoodContainerComponent, IUse + { +#pragma warning disable 649 + [Dependency] private readonly IRobustRandom _random; + [Dependency] private readonly IEntityManager _entityManager; +#pragma warning restore 649 + public override string Name => "FoodContainer"; + + private AppearanceComponent _appearance; + private Dictionary _prototypes; + private uint _capacity; + + public int Capacity => (int)_capacity; + [ViewVariables] + public int Count => _count; + + private int _count = 0; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _prototypes, "prototypes", null); + serializer.DataField(ref _capacity, "capacity", 5); + } + + public override void Initialize() + { + base.Initialize(); + Owner.TryGetComponent(out _appearance); + _count = Capacity; + UpdateAppearance(); + + } + + bool IUse.UseEntity(UseEntityEventArgs eventArgs) + { + + var hands = eventArgs.User.TryGetComponent(out HandsComponent handsComponent); + var itemToSpawn = _entityManager.SpawnEntity(GetRandomPrototype(), Owner.Transform.GridPosition); + handsComponent.PutInHandOrDrop(itemToSpawn.GetComponent()); + _count--; + if (_count < 1) + { + Owner.Delete(); + return false; + } + return true; + + } + + + private string GetRandomPrototype() + { + var defaultProto = _prototypes.Keys.FirstOrDefault(); + if (_prototypes.Count == 1) + { + return defaultProto; + } + var probResult = _random.Next(0, 100); + var total = 0; + foreach (var item in _prototypes) + { + total += item.Value; + if (probResult < total) + { + return item.Key; + } + } + + return defaultProto; + } + + private void UpdateAppearance() + { + _appearance?.SetData(FoodContainerVisuals.Current, Count); + } + } +} diff --git a/Content.Shared/GameObjects/Components/Nutrition/SharedDrinkFoodContainerComponent.cs b/Content.Shared/GameObjects/Components/Nutrition/SharedDrinkFoodContainerComponent.cs index 96fbb796bf..5148a5769d 100644 --- a/Content.Shared/GameObjects/Components/Nutrition/SharedDrinkFoodContainerComponent.cs +++ b/Content.Shared/GameObjects/Components/Nutrition/SharedDrinkFoodContainerComponent.cs @@ -4,12 +4,12 @@ using Robust.Shared.Serialization; namespace Content.Shared.GameObjects.Components.Nutrition { - public abstract class SharedDrinkFoodContainerComponent : Component + public abstract class SharedFoodContainerComponent : Component { } [NetSerializable, Serializable] - public enum DrinkFoodContainerVisualMode + public enum FoodContainerVisualMode { /// /// Discrete: 50 eggs in a carton -> down to 25, will show 12/12 until it gets below max @@ -20,7 +20,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition } [NetSerializable, Serializable] - public enum DrinkFoodContainerVisuals + public enum FoodContainerVisuals { Capacity, Current, diff --git a/Resources/Audio/items/bottle_open1.ogg b/Resources/Audio/items/bottle_open1.ogg new file mode 100644 index 0000000000..ed1065253a Binary files /dev/null and b/Resources/Audio/items/bottle_open1.ogg differ diff --git a/Resources/Audio/items/can_open1.ogg b/Resources/Audio/items/can_open1.ogg new file mode 100644 index 0000000000..5da8d89ff0 Binary files /dev/null and b/Resources/Audio/items/can_open1.ogg differ diff --git a/Resources/Audio/items/can_open2.ogg b/Resources/Audio/items/can_open2.ogg new file mode 100644 index 0000000000..1cf6b1221b Binary files /dev/null and b/Resources/Audio/items/can_open2.ogg differ diff --git a/Resources/Audio/items/can_open3.ogg b/Resources/Audio/items/can_open3.ogg new file mode 100644 index 0000000000..ca29d0661c Binary files /dev/null and b/Resources/Audio/items/can_open3.ogg differ diff --git a/Resources/Prototypes/Entities/Items/Consumables/drinks.yml b/Resources/Prototypes/Entities/Items/Consumables/drinks.yml index bb5562b769..53024b3993 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/drinks.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/drinks.yml @@ -10,8 +10,7 @@ maxVol: 50 - type: Pourable transferAmount: 5 - - type: Drink - despawn_empty: false + - type: Drink - type: Sound - type: Sprite state: icon @@ -33,7 +32,6 @@ maxVol: 50 caps: 16 - type: Drink - despawn_empty: false - type: Pourable transferAmount: 5 - type: TransformableContainer @@ -49,7 +47,7 @@ contents: reagents: - ReagentId: chem.Ale - Quantity: 20 + Quantity: 20 - type: Sprite sprite: Objects/Drinks/aleglass.rsi - type: Icon @@ -67,7 +65,7 @@ reagents: - ReagentId: chem.Antifreeze Quantity: 20 - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/antifreeze.rsi - type: Icon @@ -85,7 +83,7 @@ reagents: - ReagentId: chem.AtomicBomb Quantity: 20 - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/atomicbombglass.rsi - type: Icon @@ -102,8 +100,8 @@ contents: reagents: - ReagentId: chem.B52 - Quantity: 20 - - type: Drink + Quantity: 20 + - type: Drink - type: Sprite sprite: Objects/Drinks/b52glass.rsi - type: Icon @@ -115,7 +113,7 @@ name: Bananahonk glass description: A drink from Clown Heaven. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/bananahonkglass.rsi - type: Icon @@ -127,7 +125,7 @@ # name: Barflask # description: '' # components: -# - type: Drink# +# - type: Drink# # contents: # - water: 1 # - type: Sprite @@ -141,7 +139,7 @@ name: Beepsky smash glass description: Deny drinking this and prepare for THE LAW. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/beepskysmashglass.rsi - type: Icon @@ -153,7 +151,7 @@ name: Beer # Beer it is. Coffee. Beer? COFF-EE? BE-ER? C-O... B-E description: An alcoholic beverage made from malted grains, hops, yeast, and water. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -170,7 +168,7 @@ name: Beer glass description: An alcoholic beverage made from malted grains, hops, yeast, and water. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -187,7 +185,7 @@ name: Berry juice description: A delicious blend of several different kinds of berries. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/berryjuice.rsi - type: Icon @@ -199,7 +197,7 @@ # name: Bigteacup # description: '' # components: -# - type: Drink# +# - type: Drink# # contents: # - water: 1 # - type: Sprite @@ -213,7 +211,7 @@ name: Black russian glass description: For the lactose-intolerant. Still as classy as a White Russian. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/blackrussianglass.rsi - type: Icon @@ -225,7 +223,7 @@ name: Bloody mary glass description: A strange yet pleasurable mixture made of vodka, tomato and lime juice. Tastes like liquid murder components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/bloodymaryglass.rsi - type: Icon @@ -237,7 +235,7 @@ name: Booger description: Ewww... components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/booger.rsi - type: Icon @@ -249,7 +247,7 @@ name: Brave bull glass description: It's just as effective as Dutch-Courage! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/bravebullglass.rsi - type: Icon @@ -261,7 +259,7 @@ # name: Flat mug # description: A mug with an unknown flag emblazoned on it. You feel like tea might be the only beverage that belongs in it. # components: -# - type: Drink# +# - type: Drink# # contents: # - water: 1 # - type: Sprite @@ -275,7 +273,7 @@ name: Brown star description: It's not what it sounds like... components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/brownstar.rsi - type: Icon @@ -287,7 +285,7 @@ name: Cafe latte description: A nice, strong and tasty beverage while you are reading. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/cafe_latte.rsi - type: Icon @@ -299,7 +297,7 @@ name: Pitcher description: A handled glass pitcher. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/carafe.rsi state: icon-10 @@ -317,7 +315,7 @@ name: Carrot juice description: Has a uniquely sweet flavour of concentrated carrots. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/carrotjuice.rsi - type: Icon @@ -329,7 +327,7 @@ name: Changeling sting description: You take a tiny sip and feel a burning sensation... components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/changelingsting.rsi - type: Icon @@ -341,7 +339,7 @@ name: Hot chocolate description: A heated drink consisting melted chocolate and heated milk. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/chocolateglass.rsi - type: Icon @@ -353,7 +351,7 @@ name: Coffee description: Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -370,7 +368,7 @@ name: Cognac glass description: A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -387,7 +385,7 @@ name: Space cola bottle description: Cola. in space components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -404,7 +402,7 @@ name: Cream description: Dairy product composed of the higher-fat layer skimmed from the top of milk before homogenization. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -421,7 +419,7 @@ name: Cuba libre glass description: Rum, mixed with cola. Viva la revolucion. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -438,7 +436,7 @@ name: Blue curacao description: Exotically blue, fruity drink, distilled from oranges. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/curacaoglass.rsi - type: Icon @@ -450,7 +448,7 @@ name: Demons blood description: AHHHH!!!! # AAHHHHHH components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/demonsblood.rsi - type: Icon @@ -462,7 +460,7 @@ name: Inspector's flask description: A metal flask with a leather band and golden badge belonging to the inspector. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/detflask.rsi - type: Icon @@ -474,7 +472,7 @@ name: Devil's kiss description: Creepy time! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/devilskiss.rsi - type: Icon @@ -486,7 +484,7 @@ name: The Doctor's delight description: A gulp a day keeps the MediBot away. That's probably for the best. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/doctorsdelightglass.rsi - type: Icon @@ -498,7 +496,7 @@ name: Driest martini glass description: Only for the experienced. You think you see sand floating in the glass. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/driestmartiniglass.rsi - type: Icon @@ -510,7 +508,7 @@ name: Dr. Gibb description: A delicious blend of 42 different flavours components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/dr_gibb.rsi - type: Icon @@ -522,7 +520,7 @@ name: Dr. Gibb Glass description: A delicious blend of 42 different flavours components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/dr_gibb_glass.rsi - type: Icon @@ -534,7 +532,7 @@ name: Melon liquor description: A relatively sweet and fruity 46 proof liquor. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/emeraldglass.rsi - type: Icon @@ -546,7 +544,7 @@ name: Energy drink description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/energy_drink.rsi - type: Icon @@ -558,7 +556,7 @@ name: Erika surprise description: The surprise is, it's green! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/erikasurprise.rsi - type: Icon @@ -570,7 +568,7 @@ name: Captain's flask description: A metal flask belonging to the captain components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/flask.rsi - type: Icon @@ -582,7 +580,7 @@ name: Flask description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/flask_old.rsi - type: Icon @@ -594,7 +592,7 @@ name: Pan-galactic gargle blaster description: Whoah, this stuff looks volatile! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/gargleblasterglass.rsi - type: Icon @@ -606,7 +604,7 @@ name: Gin fizz glass description: Refreshingly lemony, deliciously dry. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/ginfizzglass.rsi - type: Icon @@ -618,7 +616,7 @@ name: Gin and tonic description: An all time classic, mild cocktail. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/gintonicglass.rsi - type: Icon @@ -630,7 +628,7 @@ name: Goldschlager description: 100 proof cinnamon schnapps, made for alcoholic teen girls on spring break. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/ginvodkaglass.rsi - type: Icon @@ -642,7 +640,7 @@ name: Bilk description: This appears to be beer mixed with milk. Disgusting. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_brown.rsi - type: Icon @@ -654,7 +652,7 @@ name: Hooch description: Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that? components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_brown2.rsi - type: Icon @@ -666,7 +664,7 @@ name: Moonshine description: You've really hit rock bottom now... your liver packed its bags and left last night. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_clear.rsi - type: Icon @@ -678,7 +676,7 @@ name: Lime juice description: The sweet-sour juice of limes. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_green.rsi - type: Icon @@ -690,7 +688,7 @@ name: Orange juice description: Liquid extract of the orange tree fruit, produced by squeezing or reaming oranges. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_orange.rsi - type: Icon @@ -702,7 +700,7 @@ name: Tomato juice description: Juice made from tomatoes, usually used as a beverage, either plain or in cocktails components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_red.rsi - type: Icon @@ -714,7 +712,7 @@ name: Milk description: An opaque white liquid produced by the mammary glands of mammals. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -732,7 +730,7 @@ name: Lemon juice description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/glass_yellow.rsi - type: Icon @@ -744,7 +742,7 @@ name: Goldschlager glass description: 100 proof cinnamon schnapps, made for alcoholic teen girls on spring break. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/goldschlagerglass.rsi - type: Icon @@ -756,7 +754,7 @@ name: Grape juice description: The juice is often sold in stores or fermented and made into wine, brandy, or vinegar. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/grapejuice.rsi - type: Icon @@ -768,7 +766,12 @@ name: Grape soda description: Sweetened drink with a grape flavor and a deep purple color. components: - - type: Drink + - type: Drink + - type: Solution + contents: + reagents: + - ReagentId: chem.Cola + Quantity: 20 - type: Sprite sprite: Objects/Drinks/grapesoda.rsi - type: Icon @@ -780,7 +783,7 @@ name: Briar rose grenadine syrup bottle description: Sweet and tangy, a bar syrup used to add color or flavor to drinks. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/grenadinebottle.rsi - type: Icon @@ -792,7 +795,7 @@ name: Grenadine syrup glass description: Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways? components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/grenadineglass.rsi - type: Icon @@ -804,7 +807,7 @@ name: Grog glass description: Watered-down rum, pirate approved! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/grogglass.rsi - type: Icon @@ -816,7 +819,7 @@ name: Grape soda glass description: Sweetened drink with a grape flavor and a deep purple color. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/gsodaglass.rsi - type: Icon @@ -828,7 +831,7 @@ name: Hell ramen description: The noodles are boiled, the flavors are artificial, just like being back in school. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/hell.rsi - type: Icon @@ -840,7 +843,7 @@ name: Hippies' delight glass description: You just don't get it maaaan. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/hippiesdelightglass.rsi - type: Icon @@ -852,7 +855,7 @@ name: Hot chocolate description: A heated drink consisting melted chocolate and heated milk. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/hot_coco.rsi - type: Icon @@ -864,7 +867,7 @@ name: Coffee description: Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -881,7 +884,7 @@ name: Iced coffee glass description: Coffee and ice, refreshing and cool. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/icedcoffeeglass.rsi - type: Icon @@ -893,7 +896,7 @@ name: Long island iced tea description: The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/icedteaglass.rsi - type: Icon @@ -905,7 +908,7 @@ name: Iced beer glass description: A beer which is so cold the air around it freezes. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/iced_beerglass.rsi - type: Icon @@ -917,7 +920,7 @@ name: Ice glass description: Water frozen into a solid state. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -934,7 +937,7 @@ name: Irish car bomb description: Mmm, tastes like chocolate cake... components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -951,7 +954,7 @@ name: Irish coffee glass description: Coffee, and alcohol. More fun than a Mimosa to drink in the morning. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -968,7 +971,7 @@ name: Irish cream glass description: Whiskey-imbued cream, what else would you expect from the Irish. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -985,7 +988,7 @@ name: Jar description: The hipster's cup components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/jar.rsi - type: Icon @@ -997,7 +1000,7 @@ name: Jar metroid description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/jar_metroid.rsi - type: Icon @@ -1009,7 +1012,7 @@ name: Jar of something description: You can't really tell what this is. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/jar_what.rsi - type: Icon @@ -1021,7 +1024,7 @@ name: Kahlua glass description: A widely known, Mexican coffee-flavoured liqueur. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1038,7 +1041,7 @@ name: Kira special description: Long live the guy who everyone had mistaken for a girl. Baka! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/kiraspecial.rsi - type: Icon @@ -1050,7 +1053,7 @@ name: Lemonade description: Drink using lemon juice, water, and a sweetener such as cane sugar or honey. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/lemonade.rsi - type: Icon @@ -1062,7 +1065,7 @@ name: Lemonade glass description: Drink using lemon juice, water, and a sweetener such as cane sugar or honey. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/lemonadeglass.rsi - type: Icon @@ -1074,7 +1077,7 @@ name: Lemon glass description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/lemonglass.rsi - type: Icon @@ -1086,7 +1089,7 @@ name: Lemon juice description: Used to make lemonade, soft drinks, and cocktails. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/lemonjuice.rsi - type: Icon @@ -1098,7 +1101,7 @@ name: Lemon lime description: A tangy substance made of lime and lemon. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/lemonlime.rsi - type: Icon @@ -1110,7 +1113,7 @@ name: Lime juice description: The sweet-sour juice of limes. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/limejuice.rsi - type: Icon @@ -1122,7 +1125,7 @@ name: Lithium flask description: A flask with a Lithium Atom symbol on it. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/lithiumflask.rsi - type: Icon @@ -1134,7 +1137,7 @@ name: Long island iced tea glass description: The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/longislandicedteaglass.rsi - type: Icon @@ -1146,7 +1149,7 @@ name: Manhattan glass description: The Detective's undercover drink of choice. He never could stomach gin... components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/manhattanglass.rsi - type: Icon @@ -1158,12 +1161,12 @@ name: The manly dorf glass description: Beer and Ale, brought together in a delicious mix. Intended for true men only. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: - ReagentId: chem.ManlyDorf - Quantity: 20 + Quantity: 20 - type: Sprite sprite: Objects/Drinks/manlydorfglass.rsi - type: Icon @@ -1175,7 +1178,7 @@ name: Margarita glass description: On the rocks with salt on the rim. Arriba~! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/margaritaglass.rsi - type: Icon @@ -1187,7 +1190,7 @@ name: Vodka martini glass description: Vodka with Gin. Not quite how 007 enjoyed it, but still delicious. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/martiniglass.rsi - type: Icon @@ -1199,7 +1202,7 @@ name: Mead glass description: A Viking's drink, though a cheap one. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/meadglass.rsi - type: Icon @@ -1211,7 +1214,7 @@ name: Milk jug description: An opaque white liquid produced by the mammary glands of mammals. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1228,7 +1231,7 @@ name: Milkshake description: Sweet, cold beverage that is usually made from milk components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/milkshake.rsi - type: Icon @@ -1240,7 +1243,7 @@ name: Mojito description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/mojito.rsi - type: Icon @@ -1252,7 +1255,7 @@ name: Neurotoxin glass description: A strong neurotoxin that puts the subject into a death-like state. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/neurotoxinglass.rsi - type: Icon @@ -1264,7 +1267,7 @@ name: Nothing description: Absolutely nothing. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/nothing.rsi - type: Icon @@ -1276,7 +1279,7 @@ name: NeoTheology cahors whine description: Fortified dessert wine made from cabernet sauvignon, saperavi and other grapes. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/ntcahors.rsi - type: Icon @@ -1288,7 +1291,7 @@ name: Nuka Cola glass description: Cola, cola never changes. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/nuka_colaglass.rsi - type: Icon @@ -1300,7 +1303,7 @@ name: Orange juice description: Liquid extract of the orange tree fruit, produced by squeezing or reaming oranges. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/orangejuice.rsi - type: Icon @@ -1312,7 +1315,7 @@ name: Patron glass description: Tequila with silver in it, a favorite of alcoholic women in the club scene. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/patronglass.rsi - type: Icon @@ -1324,7 +1327,7 @@ name: Poison berry juice description: A tasty juice blended from various kinds of very deadly and toxic berries. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/poisonberryjuice.rsi - type: Icon @@ -1336,7 +1339,7 @@ name: Manhattan project glass description: A scientist's drink of choice, for pondering ways to blow up the station. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/proj_manhattanglass.rsi - type: Icon @@ -1348,7 +1351,7 @@ name: Poison wine glass description: Is this even wine? Toxic! Hallucinogenic! Probably consumed in boatloads by your superiors! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/pwineglass.rsi - type: Icon @@ -1360,7 +1363,7 @@ name: Rag description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rag.rsi - type: Icon @@ -1372,7 +1375,7 @@ name: Rag lit description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rag_lit.rsi - type: Icon @@ -1384,7 +1387,7 @@ name: Rag small description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rag_small.rsi - type: Icon @@ -1396,7 +1399,7 @@ name: Rag small lit description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rag_small_lit.rsi - type: Icon @@ -1408,7 +1411,7 @@ name: Cup ramen description: Just add 10ml water, self heats! A taste that reminds you of your school years. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/ramen.rsi - type: Icon @@ -1420,7 +1423,7 @@ name: Red mead glass description: The true Viking's drink! Even though it has a strange red color. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/red_meadglass.rsi - type: Icon @@ -1432,7 +1435,7 @@ name: Rewriter description: The secret of the sanctuary of the Libarian... components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rewriter.rsi - type: Icon @@ -1444,7 +1447,7 @@ name: Deadrum glass description: Distilled alcoholic drink made from saltwater. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rumglass.rsi - type: Icon @@ -1456,7 +1459,7 @@ name: Sbiten glass description: A spicy Vodka! Might be a little hot for the little guys! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/sbitenglass.rsi - type: Icon @@ -1468,7 +1471,7 @@ name: Screwdriver glass description: Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/screwdriverglass.rsi - type: Icon @@ -1480,7 +1483,7 @@ name: Sui dream glass description: 'Comprised of: White soda, blue curacao, melon liquor.' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/sdreamglass.rsi - type: Icon @@ -1492,7 +1495,7 @@ name: Blue milkshake description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shake-blue.rsi - type: Icon @@ -1505,7 +1508,7 @@ name: ShakeEmpty description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shake-empty.rsi - type: Icon @@ -1517,7 +1520,7 @@ name: Meat shake description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shake-meat.rsi - type: Icon @@ -1529,7 +1532,7 @@ name: Robo shake description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shake-robo.rsi - type: Icon @@ -1541,7 +1544,7 @@ name: White shake description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shake-white.rsi - type: Icon @@ -1554,7 +1557,7 @@ name: Shaker description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shaker.rsi - type: Icon @@ -1566,7 +1569,7 @@ name: Shiny flask description: A shiny metal flask. It appears to have a Greek symbol inscribed on it. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shinyflask.rsi - type: Icon @@ -1578,7 +1581,7 @@ name: Shot glass description: '' components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/shotglass.rsi - type: Icon @@ -1590,7 +1593,7 @@ name: Silencer glass description: A drink from Mime Heaven. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/silencerglass.rsi - type: Icon @@ -1602,7 +1605,7 @@ name: Singulo description: A blue-space beverage! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/singulo.rsi - type: Icon @@ -1614,7 +1617,7 @@ name: Snow White description: A cold refreshment components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/snowwhite.rsi - type: Icon @@ -1626,7 +1629,7 @@ name: Soda water description: Water containing dissolved carbon dioxide gas. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/sodawater.rsi - type: Icon @@ -1638,7 +1641,7 @@ name: Soy milk description: An opaque white liquid made from soybeans. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/soymilk.rsi - type: Icon @@ -1650,7 +1653,7 @@ name: Soy latte description: A coffee drink made with espresso and steamed soy milk. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/soy_latte.rsi - type: Icon @@ -1662,7 +1665,7 @@ name: Space-up bottle description: Tastes like a hull breach in your mouth. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/space-up_bottle.rsi - type: Icon @@ -1674,7 +1677,7 @@ name: Space-up Glass description: Tastes like a hull breach in your mouth. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/space-up_glass.rsi - type: Icon @@ -1686,7 +1689,7 @@ name: Space Mountain Wind Bottle description: Blows right through you like a space wind. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/space_mountain_wind_bottle.rsi - type: Icon @@ -1698,7 +1701,7 @@ name: Space Mountain Wind Glass description: Blows right through you like a space wind. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/space_mountain_wind_glass.rsi - type: Icon @@ -1710,7 +1713,7 @@ name: Syndicate bomb description: Tastes like terrorism! components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1727,7 +1730,7 @@ name: Teacup description: A plain white porcelain teacup. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1750,7 +1753,7 @@ name: Tea glass description: Tasty black tea. Contains caffeine. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1767,7 +1770,7 @@ name: Teapot # Short and stout description: An elegant teapot. It simply oozes class. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1784,7 +1787,7 @@ name: Tequila glass description: A strong and mildly flavoured, mexican produced spirit. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/tequillaglass.rsi - type: Icon @@ -1796,7 +1799,7 @@ name: Tequila sunrise glass description: Tequila and orange juice. Much like a Screwdriver, only Mexican~ components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/tequillasunriseglass.rsi - type: Icon @@ -1808,7 +1811,7 @@ name: Thirteen Loko Glass description: A potent mixture of caffeine and alcohol. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/thirteen_loko_glass.rsi - type: Icon @@ -1820,7 +1823,7 @@ name: Three mile island glass description: Made for a woman, strong enough for a man. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/threemileislandglass.rsi - type: Icon @@ -1832,7 +1835,7 @@ name: Tomato juice description: Juice made from tomatoes, usually used as a beverage, either plain or in cocktails components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/tomatojuice.rsi - type: Icon @@ -1844,7 +1847,7 @@ name: Tonic water description: A carbonated soft drink in which quinine is dissolved. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/tonic.rsi - type: Icon @@ -1856,7 +1859,7 @@ name: Toxins special glass description: This thing is ON FIRE! CALL THE DAMN SHUTTLE!" components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/toxinsspecialglass.rsi - type: Icon @@ -1868,7 +1871,7 @@ name: Vacuum flask description: Keeping your drinks at the perfect temperature since 1892. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/vacuumflask.rsi - type: Icon @@ -1880,7 +1883,7 @@ name: Vermouth glass description: Aromatized, fortified white wine flavored with various botanicals. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/vermouthglass.rsi - type: Icon @@ -1892,7 +1895,7 @@ name: Vodka tonic glass description: For when a gin and tonic isn't russian enough. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/vodkatonicglass.rsi - type: Icon @@ -1904,7 +1907,7 @@ name: Water jug description: Stay hydrated components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/water.rsi - type: Icon @@ -1916,7 +1919,7 @@ name: Water bottle description: Simple clean water of unknown origin. You think that maybe you dont want to know it. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/waterbottle.rsi - type: Icon @@ -1928,7 +1931,7 @@ name: Watermelon juice description: Delicious juice made from watermelon. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/watermelon.rsi - type: Icon @@ -1940,7 +1943,7 @@ name: Water Cup description: A paper water cup. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/water_cup.rsi state: icon-1 @@ -1958,7 +1961,7 @@ name: Whiskey cola glass description: Whiskey, mixed with cola. Surprisingly refreshing. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1975,7 +1978,7 @@ name: Special blend whiskey glass description: Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: @@ -1992,7 +1995,7 @@ name: Whiskey soda glass description: For the more refined griffon. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/whiskeysodaglass.rsi - type: Icon @@ -2004,7 +2007,7 @@ name: Whiskey soda glass description: For the more refined griffon. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/whiskeysodaglass2.rsi - type: Icon @@ -2016,7 +2019,7 @@ name: White Russian glass description: That's just, like, your opinion, man... components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/whiterussianglass.rsi - type: Icon @@ -2028,7 +2031,7 @@ name: Wine glass description: An premium alchoholic beverage made from distilled grape juice. components: - - type: Solution + - type: Solution maxVol: 20 contents: reagents: diff --git a/Resources/Prototypes/Entities/Items/Consumables/drinks_bottles.yml b/Resources/Prototypes/Entities/Items/Consumables/drinks_bottles.yml index c719d7e7f5..59f424c0dd 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/drinks_bottles.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/drinks_bottles.yml @@ -1,29 +1,42 @@ - type: entity - parent: DrinkBase + parent: BaseItem + id: DrinkBottleBaseFull + abstract: true + components: + - type: Drink + openSounds: bottleOpenSounds + - type: Solution + - type: Sprite + state: icon + - type: Icon + state: icon + +- type: entity + parent: DrinkBottleBaseFull id: DrinkAbsintheBottleFull name: Jailbreaker Verte description: One sip of this and you just know you're gonna have a good time. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/absinthebottle.rsi - type: Icon sprite: Objects/Drinks/absinthebottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkAlcoGreenFull name: Emeraldine Melon Liquor description: A bottle of 46 proof Emeraldine Melon Liquor. Sweet and light. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/alco-green.rsi - type: Icon sprite: Objects/Drinks/alco-green.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkAleBottleFull name: Magm-Ale description: A true dorf's drink of choice. @@ -33,26 +46,26 @@ contents: reagents: - ReagentId: chem.Ale - Quantity: 80 + Quantity: 80 - type: Sprite sprite: Objects/Drinks/alebottle.rsi - type: Icon sprite: Objects/Drinks/alebottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkBottleOfNothingFull name: Bottle of nothing description: A bottle filled with nothing components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/bottleofnothing.rsi - type: Icon sprite: Objects/Drinks/bottleofnothing.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkCognacBottleFull name: Cognac bottle description: A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. You might as well not scream 'SHITCURITY' this time. @@ -62,38 +75,38 @@ contents: reagents: - ReagentId: chem.Cognac - Quantity: 80 + Quantity: 80 - type: Sprite sprite: Objects/Drinks/cognacbottle.rsi - type: Icon sprite: Objects/Drinks/cognacbottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkGinBottleFull name: Griffeater gin bottle description: A bottle of high quality gin, produced in the New London Space Station. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/ginbottle.rsi - type: Icon sprite: Objects/Drinks/ginbottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkGoldschlagerBottleFull name: Goldschlager bottle description: 100 proof cinnamon schnapps, made for alcoholic teen girls on spring break. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/goldschlagerbottle.rsi - type: Icon sprite: Objects/Drinks/goldschlagerbottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkKahluaBottleFull name: Kahlua bottle description: A widely known, Mexican coffee-flavoured liqueur. In production since 1936, HONK @@ -103,74 +116,74 @@ contents: reagents: - ReagentId: chem.H2O - Quantity: 80 + Quantity: 80 - type: Sprite sprite: Objects/Drinks/kahluabottle.rsi - type: Icon sprite: Objects/Drinks/kahluabottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkPatronBottleFull name: Wrapp artiste patron bottle description: Silver laced tequilla, served in space night clubs across the galaxy. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/patronbottle.rsi - type: Icon sprite: Objects/Drinks/patronbottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkPoisonWinebottleFull name: Warlock's velvet bottle description: What a delightful packaging for a surely high quality wine! The vintage must be amazing! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/pwinebottle.rsi - type: Icon sprite: Objects/Drinks/pwinebottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkRumbottleFull name: Captain Pete's cuban spiced rum description: This isn't just rum, oh no. It's practically GRIFF in a bottle. components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/rumbottle.rsi - type: Icon sprite: Objects/Drinks/rumbottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkTequilabottleFull name: Caccavo guaranteed quality tequila bottle description: Made from premium petroleum distillates, pure thalidomide and other fine quality ingredients! components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/tequillabottle.rsi - type: Icon sprite: Objects/Drinks/tequillabottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkVermouthBottleFull name: Goldeneye vermouth bottle description: Sweet, sweet dryness~ components: - - type: Drink + - type: Drink - type: Sprite sprite: Objects/Drinks/vermouthbottle.rsi - type: Icon sprite: Objects/Drinks/vermouthbottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkVodkaBottleFull name: Vodka bottle description: Aah, vodka. Prime choice of drink AND fuel by Russians worldwide. @@ -187,7 +200,7 @@ sprite: Objects/Drinks/vodkabottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkWhiskeyBottleFull name: Uncle Git's special reserve description: A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter. TUNNEL WHISKEY RULES. @@ -204,7 +217,7 @@ sprite: Objects/Drinks/whiskeybottle.rsi - type: entity - parent: DrinkBase + parent: DrinkBottleBaseFull id: DrinkWineBottleFull name: Doublebearded bearded special wine bottle description: A faint aura of unease and asspainery surrounds the bottle. diff --git a/Resources/Prototypes/Entities/Items/Consumables/drinks_cans.yml b/Resources/Prototypes/Entities/Items/Consumables/drinks_cans.yml index ba497f7751..0651a49558 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/drinks_cans.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/drinks_cans.yml @@ -1,230 +1,103 @@ - type: entity - parent: DrinkFoodContainerBase - name: Base can - id: DrinkFoodContainerBaseCan + parent: BaseItem + id: DrinkCanBaseFull abstract: true components: - - type: Sound - - type: DrinkFoodContainer - use_sound: /Audio/items/canopen.ogg - capacity: 1 - -# Below are grouped paired as "unopened" and "opened" -- type: entity - parent: DrinkFoodContainerBaseCan - name: Space cola (unopened) - id: DrinkFoodContainerColaCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkColaCan: 100 - - type: Sprite - sprite: Objects/Drinks/cola.rsi - - type: Icon - sprite: Objects/Drinks/cola.rsi - -- type: entity - parent: DrinkBase - id: DrinkColaCan - name: Space cola - description: A refreshing beverage. - components: + - type: Drink + openSounds: canOpenSounds - type: Solution maxVol: 20 contents: reagents: - ReagentId: chem.Cola Quantity: 20 - - type: Sprite - sprite: Objects/Drinks/cola.rsi - - type: Icon - sprite: Objects/Drinks/cola.rsi - + - type: Pourable + transferAmount: 5 - type: entity - parent: DrinkFoodContainerBaseCan - name: Ice tea can (unopened) - id: DrinkFoodContainerIceTeaCanUnopened + parent: DrinkCanBaseFull + id: DrinkColaCan + name: Space cola + description: A refreshing beverage. components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkIceTeaCan: 100 + - type: Solution - type: Sprite - sprite: Objects/Drinks/ice_tea_can.rsi + sprite: Objects/Drinks/cola.rsi - type: Icon - sprite: Objects/Drinks/ice_tea_can.rsi + sprite: Objects/Drinks/cola.rsi - type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkIceTeaCan name: Ice tea can description: '' components: - - type: Drink - type: Sprite sprite: Objects/Drinks/ice_tea_can.rsi - type: Icon sprite: Objects/Drinks/ice_tea_can.rsi - - type: entity - parent: DrinkFoodContainerBaseCan - name: Lemon-lime can (unopened) - id: DrinkFoodContainerLemonLimeCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkLemonLimeCan: 100 - - type: Sprite - sprite: Objects/Drinks/lemon-lime.rsi - - type: Icon - sprite: Objects/Drinks/lemon-lime.rsi - -- type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkLemonLimeCan name: Lemon-lime can description: You wanted ORANGE. It gave you Lemon Lime. components: - - type: Drink - type: Sprite sprite: Objects/Drinks/lemon-lime.rsi - type: Icon sprite: Objects/Drinks/lemon-lime.rsi - - type: entity - parent: DrinkFoodContainerBaseCan - name: Purple can (unopened) - id: DrinkFoodContainerPurpleCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkPurpleCan: 100 - - type: Sprite - sprite: Objects/Drinks/purple_can.rsi - - type: Icon - sprite: Objects/Drinks/purple_can.rsi - -- type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkPurpleCan name: Purple Can description: '' components: - - type: Drink - type: Sprite sprite: Objects/Drinks/purple_can.rsi - type: Icon sprite: Objects/Drinks/purple_can.rsi - - type: entity - parent: DrinkFoodContainerBaseCan - name: Space mountain wind can (unopened) - id: DrinkFoodContainerSpaceMountainWindCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkSpaceMountainWindCan: 100 - - type: Sprite - sprite: Objects/Drinks/space_mountain_wind.rsi - - type: Icon - sprite: Objects/Drinks/space_mountain_wind.rsi - -- type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkSpaceMountainWindCan name: Space mountain wind can description: Blows right through you like a space wind. components: - - type: Drink - type: Sprite sprite: Objects/Drinks/space_mountain_wind.rsi - type: Icon sprite: Objects/Drinks/space_mountain_wind.rsi - - type: entity - parent: DrinkFoodContainerBaseCan - name: Space-up can (unopened) - id: DrinkFoodContainerSpaceUpCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkSpaceUpCan: 100 - - type: Sprite - sprite: Objects/Drinks/space-up.rsi - - type: Icon - sprite: Objects/Drinks/space-up.rsi - -- type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkSpaceUpCan name: Space-up can description: Tastes like a hull breach in your mouth. components: - - type: Drink - type: Sprite sprite: Objects/Drinks/space-up.rsi - type: Icon sprite: Objects/Drinks/space-up.rsi - - type: entity - parent: DrinkFoodContainerBaseCan - name: Starkist can (unopened) - id: DrinkFoodContaineStarkistCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkStarkistCan: 100 - - type: Sprite - sprite: Objects/Drinks/starkist.rsi - - type: Icon - sprite: Objects/Drinks/starkist.rsi - -- type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkStarkistCan name: Starkist can description: The taste of a star in liquid form. And, a bit of tuna...? components: - - type: Drink - type: Sprite sprite: Objects/Drinks/starkist.rsi - type: Icon sprite: Objects/Drinks/starkist.rsi - - type: entity - parent: DrinkFoodContainerBaseCan - name: Thirteen loko can (unopened) - id: DrinkFoodContaineThirteenLokoCanUnopened - components: - - type: Sound - - type: DrinkFoodContainer - prototypes: - DrinkThirteenLokoCan: 100 - - type: Sprite - sprite: Objects/Drinks/thirteen_loko.rsi - - type: Icon - sprite: Objects/Drinks/thirteen_loko.rsi - -- type: entity - parent: DrinkBase + parent: DrinkCanBaseFull id: DrinkThirteenLokoCan name: Thirteen loko can description: The MBO has advised crew members that consumption of Thirteen Loko may result in seizures, blindness, drunkeness, or even death. Please Drink Responsibly. components: - - type: Drink - type: Sprite sprite: Objects/Drinks/thirteen_loko.rsi - type: Icon diff --git a/Resources/Prototypes/Entities/Items/Consumables/drinks_cups.yml b/Resources/Prototypes/Entities/Items/Consumables/drinks_cups.yml index 0b29b551fa..0fe3d44d46 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/drinks_cups.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/drinks_cups.yml @@ -10,7 +10,6 @@ - type: Pourable transferAmount: 5 - type: Drink - despawn_empty: false - type: Sound - type: Sprite state: icon diff --git a/Resources/Prototypes/Entities/Items/Consumables/food.yml b/Resources/Prototypes/Entities/Items/Consumables/food.yml index 6ef5841454..a6c81d8a5a 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/food.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/food.yml @@ -3,7 +3,6 @@ id: FoodBase abstract: true components: - - type: Food - type: Sound - type: Sprite state: icon @@ -26,11 +25,12 @@ description: Dried raisins components: - type: Food + trash: TrashRaisins + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashRaisins - type: Sprite sprite: Objects/Food/4no_raisins.rsi - type: Icon @@ -42,7 +42,7 @@ id: FoodAesirSalad description: Probably too incredible for mortal men to fully enjoy. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -59,7 +59,7 @@ id: FoodAmanitaPie description: Sweet and tasty poison pie. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -76,11 +76,12 @@ description: Looks curiously toxic components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/amanitajelly.rsi - type: Icon @@ -93,6 +94,7 @@ # description: # components: # - type: Food +# - type: Solution # uses: 1 # - type: Sprite # sprite: Objects/Food/ambrosiavulgariscrushed.rsi @@ -106,11 +108,12 @@ description: A slice of heavenly cake. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/apple_cake_slice.rsi - type: Icon @@ -122,7 +125,7 @@ id: FoodApplePie description: A pie containing sweet sweet love... or apple. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -140,6 +143,7 @@ # description: # components: # - type: Food +# - type: Solution # uses: 1 # - type: Sprite # sprite: Objects/Food/bacon.rsi @@ -152,7 +156,7 @@ id: FoodBadRecipe description: Someone should be demoted from chef for this. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -168,7 +172,7 @@ id: FoodBaguette description: Bon appetit! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -185,11 +189,12 @@ description: components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/breadslice.rsi - type: Icon @@ -202,11 +207,12 @@ description: components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/bananabreadslice.rsi - type: Icon @@ -219,11 +225,12 @@ description: Just like back home, on clown planet! HONK! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/pie.rsi - type: Icon @@ -236,6 +243,7 @@ # description: # components: # - type: Food +# - type: Solution # uses: 1 # - type: Sprite # sprite: Objects/Food/bearmeat.rsi @@ -249,11 +257,12 @@ description: Wait, how do you spell it again..? components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/beetsoup.rsi - type: Icon @@ -266,11 +275,12 @@ description: No black birds, this is a good sign. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/berryclafoutis.rsi - type: Icon @@ -283,11 +293,12 @@ description: A slice of your birthday. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/birthday_cake_slice.rsi - type: Icon @@ -300,11 +311,12 @@ description: A plain dish of noodles, this sucks. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/spaghettiboiled.rsi - type: Icon @@ -317,11 +329,12 @@ description: '' components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/brain_cake_slice.rsi - type: Icon @@ -334,11 +347,12 @@ description: Nougat, love it or hate it. components: - type: Food + trash: TrashCandy + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 20 - spawn_on_finish: TrashCandy - type: Sprite sprite: Objects/Food/candy.rsi - type: Icon @@ -350,7 +364,7 @@ id: FoodCandyCorn description: It's a handful of candy corn. Cannot be stored in a detective's hat, alas. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -367,11 +381,12 @@ description: Carrotty slice of Carrot Cake, carrots are good for your eyes! Also not a lie. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 10 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/carrotcake_slice.rsi - type: Icon @@ -384,11 +399,12 @@ description: Tasty fries from fresh Carrots. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/carrotfries.rsi - type: Icon @@ -401,11 +417,12 @@ description: A legendary egg custard that makes friends out of enemies. Probably too hot for a cat to eat. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 10 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/chawanmushi.rsi - type: Icon @@ -417,7 +434,7 @@ id: FoodCheeseburger description: The cheese adds a good flavor. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -434,11 +451,12 @@ description: Slice of pure cheestisfaction components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/cheesecake_slice.rsi - type: Icon @@ -450,7 +468,7 @@ id: FoodCheeseWedge description: A wedge of delicious Cheddar. The cheese wheel it was cut from can't have gone far. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -467,11 +485,12 @@ description: Bite sized cheesie snacks that will honk all over your mouth components: - type: Food + trash: TrashCheesieHonkers + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashCheesieHonkers - type: Sprite sprite: Objects/Food/cheesie_honkers.rsi - type: Icon @@ -484,11 +503,12 @@ description: Fries. Covered in cheese. Duh. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/cheesyfries.rsi - type: Icon @@ -500,7 +520,7 @@ id: FoodCherryPie description: Taste so good, make a grown man cry. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -517,11 +537,12 @@ description: Commander Riker's What-The-Crisps components: - type: Food + trash: TrashChips + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashChips - type: Sprite sprite: Objects/Food/chips.rsi - type: Icon @@ -533,7 +554,7 @@ id: FoodChocolateBar description: Such sweet, fattening food. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -550,11 +571,12 @@ description: A cake with added chocolate components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/chocolatecake_slice.rsi - type: Icon @@ -566,7 +588,7 @@ id: FoodChocolateEgg description: Such sweet, fattening food. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -582,7 +604,7 @@ id: FoodClownBurger description: This tastes funny... components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -598,7 +620,7 @@ id: FoodClownsTears description: Not very funny. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -615,6 +637,7 @@ # description: # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 3 # - type: Sprite @@ -629,11 +652,12 @@ description: This slush is barely a liquid! components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/coldchili.rsi - type: Icon @@ -646,6 +670,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -659,7 +684,7 @@ name: Cookie!!! description: COOKIE!!! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -675,7 +700,7 @@ name: Cracker description: It's a salted cracker. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -692,11 +717,12 @@ description: A slice of yum! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/creamcheesebreadslice.rsi - type: Icon @@ -709,11 +735,12 @@ description: A sandwich that burns your tongue and then leaves it numb! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/cubancarp.rsi - type: Icon @@ -726,6 +753,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -739,7 +767,7 @@ name: Donk-pocket description: The food of choice for the seasoned traitor. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -755,7 +783,7 @@ name: Donut description: Goes great with Robust Coffee. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -771,7 +799,7 @@ name: Frosted Donut description: Goes great with Robust Coffee. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -787,7 +815,7 @@ name: Egg-blue description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -803,7 +831,7 @@ name: Egg-green description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -819,7 +847,7 @@ name: Egg-mime description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -835,7 +863,7 @@ name: Egg-orange description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -851,7 +879,7 @@ name: Egg-purple description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -867,7 +895,7 @@ name: Egg-rainbow description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -883,7 +911,7 @@ name: Egg-red description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -899,7 +927,7 @@ name: Egg-yellow description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -915,7 +943,7 @@ name: Egg description: An egg! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -932,11 +960,12 @@ description: The only good recipe for eggplant. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/eggplantparm.rsi - type: Icon @@ -949,6 +978,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -963,11 +993,12 @@ description: Viva La Mexico! components: - type: Food + trash: TrashTray + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashTray - type: Sprite sprite: Objects/Food/enchiladas.rsi - type: Icon @@ -980,6 +1011,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -994,6 +1026,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1007,7 +1040,7 @@ name: Fish and chips description: I do say so myself chap. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1023,7 +1056,7 @@ name: Fillet -o- Carp Sandwich description: Almost like a carp is yelling somewhere... Give me back that fillet -o- carp, give me that carp. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1040,6 +1073,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1053,7 +1087,7 @@ name: Fish fingers description: A finger of fish. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1070,6 +1104,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1083,7 +1118,7 @@ name: Fortune cookie description: A true prophecy in each cookie! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1099,7 +1134,7 @@ name: Fried egg description: A fried egg, with a touch of salt and pepper. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1116,11 +1151,12 @@ description: "AKA: French Fries, Freedom Fries, etc." components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/fries.rsi - type: Icon @@ -1133,11 +1169,12 @@ description: A tasty dessert that won't make it through a metal detector. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/gappletart.rsi - type: Icon @@ -1150,11 +1187,12 @@ description: Goes great with Tomato soup! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/toastedsandwich.rsi - type: Icon @@ -1166,7 +1204,7 @@ name: Human-burger description: A bloody burger. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1183,11 +1221,12 @@ description: A proper salad, basic and simple, with little bits of carrot, tomato and apple intermingled. Vegan! components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/herbsalad.rsi - type: Icon @@ -1200,6 +1239,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1214,11 +1254,12 @@ description: A five alarm Texan Chili! components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/hotchili.rsi - type: Icon @@ -1230,7 +1271,7 @@ name: Hotdog description: Unrelated to dogs, maybe. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1247,6 +1288,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1260,7 +1302,7 @@ name: Huge mushroom (slice) description: A slice from a huge mushroom. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1277,11 +1319,12 @@ description: A human meat, on a stick. components: - type: Food + # trash: TODO + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - # spawn_on_finish: TODO - type: Sprite sprite: Objects/Food/kabob.rsi - type: Icon @@ -1293,7 +1336,7 @@ name: Jelly donut description: You jelly? components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1309,7 +1352,7 @@ name: Frosted Jelly Donut description: You jelly? components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1325,7 +1368,7 @@ name: Jelly burger description: Culinary delight..? components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1342,11 +1385,12 @@ description: You wish you had some peanut butter to go with this... components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/jellysandwich.rsi - type: Icon @@ -1359,11 +1403,12 @@ description: A slice of bread covered with delicious jam. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 2 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/jellytoast.rsi - type: Icon @@ -1377,11 +1422,12 @@ description: Delicious meat, on a stick. components: - type: Food + # trash: TODO + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - # spawn_on_finish: TODO - type: Sprite sprite: Objects/Food/kabob.rsi - type: Icon @@ -1394,6 +1440,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1408,6 +1455,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1422,11 +1470,12 @@ description: Just a slice of cake, it is enough for everyone. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/lemoncake_slice.rsi - type: Icon @@ -1439,11 +1488,12 @@ description: Just a slice of cake, it is enough for everyone. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/limecake_slice.rsi - type: Icon @@ -1455,12 +1505,11 @@ name: LiquidFood ration #\improper? description: A prepackaged grey slurry of all the essential nutrients for a spacefarer on the go. Should this be crunchy? components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 40 - spawn_on_finish: TrashLiquidFood - type: Sprite sprite: Objects/Food/liquidfood.rsi - type: Icon @@ -1472,7 +1521,7 @@ name: Loaded baked potato description: Totally baked. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1488,7 +1537,7 @@ name: Meat description: A slab of meat. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1504,7 +1553,7 @@ name: Meatball description: A great meal all round. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1521,11 +1570,12 @@ description: You've got balls kid, BALLS! components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/meatballsoup.rsi - type: Icon @@ -1538,11 +1588,12 @@ description: Now thats a nic'e meatball! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/meatballspaghetti.rsi - type: Icon @@ -1555,11 +1606,12 @@ description: A slice of delicious meatbread. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/meatbreadslice.rsi - type: Icon @@ -1572,11 +1624,12 @@ description: An old barber recipe, very delicious! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 20 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/meatpie.rsi - type: Icon @@ -1588,7 +1641,7 @@ name: Meat pizza (slice) description: A slice of a meaty pizza. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1605,11 +1658,12 @@ description: A piece of hot spicy meat. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/meatsteak.rsi - type: Icon @@ -1622,11 +1676,12 @@ description: The universes best soup! Yum!!! components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/milosoup.rsi - type: Icon @@ -1638,7 +1693,7 @@ name: Mime burger description: Its taste defies language. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1654,7 +1709,7 @@ name: Mint description: It is only wafer thin. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1671,6 +1726,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1684,7 +1740,7 @@ name: Monkey-burger description: The cornerstone of every nutritious breakfast. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1700,7 +1756,7 @@ name: Monkey cube description: Just add water! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1717,11 +1773,12 @@ description: Eeee Eee! components: - type: Food + trash: TrashTray + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 30 - spawn_on_finish: TrashTray - type: Sprite sprite: Objects/Food/monkeysdelight.rsi - type: Icon @@ -1733,7 +1790,7 @@ name: Monkies delight (old) description: '' components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1750,6 +1807,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1764,6 +1822,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1777,7 +1836,7 @@ name: Mushroom pizza slice description: Maybe it is the last slice of pizza in your life. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1794,11 +1853,12 @@ description: A delicious and hearty mushroom soup. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/mushroomsoup.rsi - type: Icon @@ -1812,11 +1872,12 @@ description: The mystery is, why aren't you eating it? components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 1 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/mysterysoup.rsi - type: Icon @@ -1829,11 +1890,12 @@ description: To think, the botanist would've beat you to death with one of these. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/nettlesoup.rsi - type: Icon @@ -1846,6 +1908,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1860,11 +1923,12 @@ description: That's all you can say! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/omelette.rsi - type: Icon @@ -1877,11 +1941,12 @@ description: Just a slice of cake, it is enough for everyone. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/orangecake_slice.rsi - type: Icon @@ -1894,11 +1959,12 @@ description: Spaghetti and crushed tomatoes. Just like your abusive father used to make! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/pastatomato.rsi - type: Icon @@ -1911,6 +1977,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -1924,7 +1991,7 @@ name: Plump helm biscuit description: This is a finely-prepared plump helmet biscuit. The ingredients are exceptionally minced plump helmet, and well-minced dwarven wheat flour. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1940,7 +2007,7 @@ name: Margherita pizza (slice) description: A slice of the classic pizza. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1957,11 +2024,12 @@ description: Just a slice of cake, it is enough for everyone. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/plaincake_slice.rsi - type: Icon @@ -1973,7 +2041,7 @@ name: Plump Pie description: I bet you love stuff made out of plump helmets! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -1990,12 +2058,13 @@ description: Now let's find some cinema. components: - type: Food + trash: TrashPopcorn + - type: Solution transfer_amount: 1 contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashPopcorn - type: Sprite sprite: Objects/Food/popcorn.rsi - type: Icon @@ -2007,7 +2076,7 @@ name: Poppy pretzel description: It's all twisted up! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2024,11 +2093,12 @@ description: A slice of pumpkin pie, with whipped cream on top. Perfection. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/pumpkinpieslice.rsi - type: Icon @@ -2042,6 +2112,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2055,7 +2126,7 @@ name: Roburger description: The lettuce is the only organic component. Beep. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2072,11 +2143,12 @@ description: Waffles from Roffle. Co. components: - type: Food + trash: TrashWaffles + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashWaffles - type: Sprite sprite: Objects/Food/rofflewaffles.rsi - type: Icon @@ -2089,6 +2161,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2103,6 +2176,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2117,11 +2191,12 @@ description: Where's the jam? components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/rpudding.rsi - type: Icon @@ -2134,11 +2209,12 @@ description: A grand creation of meat, cheese, bread, and several leaves of lettuce! Arthur Dent would be proud. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/sandwich.rsi - type: Icon @@ -2151,6 +2227,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2165,6 +2242,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2178,7 +2256,7 @@ name: Sausage # Sanga description: A piece of mixed, long meat. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2195,6 +2273,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2209,6 +2288,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2222,7 +2302,7 @@ name: Scaredy's Private Reserve Beef Jerky description: Beef jerky made from the finest space cows. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2240,11 +2320,12 @@ description: Dope from a soy. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/soydope.rsi - type: Icon @@ -2257,11 +2338,12 @@ description: Not made of people. Honest. components: - type: Food + trash: TrashWaffles + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashWaffles - type: Sprite sprite: Objects/Food/soylent_green.rsi - type: Icon @@ -2275,11 +2357,12 @@ description: Not made of people. Honest. components: - type: Food + trash: TrashWaffles + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashWaffles - type: Sprite sprite: Objects/Food/soylent_yellow.rsi - type: Icon @@ -2292,6 +2375,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2305,7 +2389,7 @@ name: Space twinkie description: Guaranteed to survive longer then you will. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2322,11 +2406,12 @@ description: Jello gelatin, from Alfred Hubbard's cookbook components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/spacylibertyduff.rsi - type: Icon @@ -2338,7 +2423,7 @@ name: Spaghetti description: A bundle of raw spaghetti. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2354,7 +2439,7 @@ name: Spell burger description: This is absolutely Ei Nath. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2370,7 +2455,7 @@ name: Spell burger (old) description: This is absolutely Ei Nath. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2386,7 +2471,7 @@ name: Spesslaw description: A lawyers favourite components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2402,7 +2487,7 @@ name: Stew description: A nice and warm stew. Healthy and strong. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2419,11 +2504,12 @@ description: Even non-vegetarians will LOVE this! components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/stewedsoymeat.rsi - type: Icon @@ -2435,7 +2521,7 @@ name: Stuffing description: Moist, peppery breadcrumbs for filling the body cavities of dead birds. Dig in! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2452,6 +2538,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2466,6 +2553,7 @@ # description: '' # components: # - type: Food +# - type: Solution # uses: 1 # restore_amount: 1 # - type: Sprite @@ -2479,7 +2567,7 @@ name: Super bite burger description: This is a mountain of a burger. FOOD! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2496,11 +2584,12 @@ description: An extremely moist snack cake that tastes just as good after being nuked. components: - type: Food + trash: TrashSyndiCakes + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 8 - spawn_on_finish: TrashSyndiCakes - type: Sprite sprite: Objects/Food/syndi_cakes.rsi - type: Icon @@ -2512,7 +2601,7 @@ name: Taco description: Take a bite! components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2529,11 +2618,12 @@ description: Bread in a tube. Chewy...and surprisingly tasty. components: - type: Food + trash: TrashTastyBread + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashTastyBread - type: Sprite sprite: Objects/Food/tastybread.rsi - type: Icon @@ -2546,11 +2636,12 @@ description: Now if you only had a pepper bar. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 6 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/toastedsandwich.rsi - type: Icon @@ -2562,7 +2653,7 @@ name: Tofu description: We all love tofu. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2579,11 +2670,12 @@ description: A slice of delicious tofubread. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/tofubreadslice.rsi - type: Icon @@ -2595,7 +2687,7 @@ name: Tofu burger description: What.. is that meat? components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2612,11 +2704,12 @@ description: Vegan meat, on a stick. components: - type: Food + # trash: TODO + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - # spawn_on_finish: TODO - type: Sprite sprite: Objects/Food/kabob.rsi - type: Icon @@ -2628,7 +2721,7 @@ name: Tofurkey description: A fake turkey made from tofu. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2644,7 +2737,7 @@ name: Tomato slice description: A slice from a huge tomato components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2661,11 +2754,12 @@ description: Smells like copper. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 4 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/tomatosoup.rsi - type: Icon @@ -2677,7 +2771,7 @@ name: Two bread description: It is very bitter and winy. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2694,11 +2788,12 @@ description: It's just a salad of questionable 'herbs' with meatballs and fried potato slices. Nothing suspicious about it. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/validsalad.rsi - type: Icon @@ -2710,7 +2805,7 @@ name: Vegetable pizza (slice) description: A slice of the most green pizza of all pizzas not containing green ingredients components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2727,11 +2822,12 @@ description: A true vegan meal components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/vegetablesoup.rsi - type: Icon @@ -2744,11 +2840,12 @@ description: Mmm, waffles components: - type: Food + trash: TrashWaffles + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 16 - spawn_on_finish: TrashWaffles - type: Sprite sprite: Objects/Food/waffles.rsi - type: Icon @@ -2760,7 +2857,7 @@ name: Watermelon (slice) description: A slice of watery goodness. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2777,11 +2874,12 @@ description: A savory dish of alien wing wang in soy. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 12 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/wingfangchu.rsi - type: Icon @@ -2794,11 +2892,12 @@ description: I wish this was soup. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 2 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/wishsoup.rsi - type: Icon @@ -2810,7 +2909,7 @@ name: Xenoburger description: Smells caustic. Tastes like heresy. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2827,11 +2926,12 @@ description: A slice of delicious meatbread. Extra Heretical. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 20 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/xenobreadslice.rsi - type: Icon @@ -2843,7 +2943,7 @@ name: Xenomeat description: Yum. components: - - type: Food + - type: Solution contents: reagents: - ReagentId: chem.Nutriment @@ -2860,11 +2960,12 @@ description: A delicious meatpie. Probably heretical. components: - type: Food + trash: TrashPlate + - type: Solution contents: reagents: - ReagentId: chem.Nutriment Quantity: 20 - spawn_on_finish: TrashPlate - type: Sprite sprite: Objects/Food/xenomeatpie.rsi - type: Icon @@ -2877,11 +2978,12 @@ description: Jesus christ. components: - type: Food + trash: TrashSnackBowl + - type: Solution contents: reagents: - ReagentId: chem.Bleach Quantity: 15 - spawn_on_finish: TrashSnackBowl - type: Sprite sprite: Objects/Food/stew.rsi - type: Icon diff --git a/Resources/Prototypes/Entities/Items/Consumables/food_containers.yml b/Resources/Prototypes/Entities/Items/Consumables/food_containers.yml index ffe7dbd729..75337f7035 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/food_containers.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/food_containers.yml @@ -1,10 +1,9 @@ - type: entity parent: BaseItem - id: DrinkFoodContainerBase + id: FoodContainerBase abstract: true components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer - type: Sprite state: icon netsync: false @@ -13,435 +12,414 @@ # Containers - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Apple cake - id: DrinkFoodContainerAppleCake + id: FoodContainerAppleCake components: - - type: DrinkFoodContainer - capacity: 5 - prototypes: + - type: FoodContainer + prototypes: FoodAppleCakeSlice: 100 - spawn_on_finish: TrashTray + trash: TrashTray - type: Sprite - sprite: Objects/DrinkFoodContainers/apple_cake.rsi + sprite: Objects/FoodContainers/apple_cake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/apple_cake.rsi + sprite: Objects/FoodContainers/apple_cake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Banana bread - id: DrinkFoodContainerBananaBread + id: FoodContainerBananaBread components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodBananaBreadSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/bananabread.rsi + sprite: Objects/FoodContainers/bananabread.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/bananabread.rsi + sprite: Objects/FoodContainers/bananabread.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Birthday cake - id: DrinkFoodContainerBirthdayCake + id: FoodContainerBirthdayCake components: - - type: DrinkFoodContainer - capacity: 5 - prototypes: + - type: FoodContainer + prototypes: FoodBirthdayCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/birthdaycake.rsi + sprite: Objects/FoodContainers/birthdaycake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/birthdaycake.rsi + sprite: Objects/FoodContainers/birthdaycake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Brain cake - id: DrinkFoodContainerBrainCake + id: FoodContainerBrainCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodBrainCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/braincake.rsi + sprite: Objects/FoodContainers/braincake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/braincake.rsi + sprite: Objects/FoodContainers/braincake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Bread - id: DrinkFoodContainerBread + id: FoodContainerBread components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodBreadSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/bread.rsi + sprite: Objects/FoodContainers/bread.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/bread.rsi + sprite: Objects/FoodContainers/bread.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Carrot cake - id: DrinkFoodContainerCarrotCake + id: FoodContainerCarrotCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodCarrotCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/carrotcake.rsi + sprite: Objects/FoodContainers/carrotcake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/carrotcake.rsi + sprite: Objects/FoodContainers/carrotcake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Cheesecake - id: DrinkFoodContainerCheeseCake + id: FoodContainerCheeseCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodCheeseCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/cheesecake.rsi + sprite: Objects/FoodContainers/cheesecake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/cheesecake.rsi + sprite: Objects/FoodContainers/cheesecake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Cheese wheel - id: DrinkFoodContainerCheeseWheel + id: FoodContainerCheeseWheel components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodCheeseWedge: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/apple_cake.rsi + sprite: Objects/FoodContainers/apple_cake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/apple_cake.rsi + sprite: Objects/FoodContainers/apple_cake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Chocolate cake - id: DrinkFoodContainerChocolateCake + id: FoodContainerChocolateCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodChocolateCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/chocolatecake.rsi + sprite: Objects/FoodContainers/chocolatecake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/chocolatecake.rsi + sprite: Objects/FoodContainers/chocolatecake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Cream cheese bread - id: DrinkFoodContainerCreamCheeseBread + id: FoodContainerCreamCheeseBread components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodCreamCheeseBreadSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/creamcheesebread.rsi + sprite: Objects/FoodContainers/creamcheesebread.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/creamcheesebread.rsi + sprite: Objects/FoodContainers/creamcheesebread.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Donut box - id: DrinkFoodContainerDonutBox + id: FoodContainerDonutBox components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 6 prototypes: FoodDonut: 70 FoodFrostedDonut: 30 - type: Sprite - sprite: Objects/DrinkFoodContainers/donutbox.rsi + sprite: Objects/FoodContainers/donutbox.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/donutbox.rsi + sprite: Objects/FoodContainers/donutbox.rsi - type: Appearance visuals: - - type: DrinkFoodContainerVisualizer2D + - type: FoodContainerVisualizer2D mode: Discrete base_state: donutbox steps: 7 - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Egg box (shut) - id: DrinkFoodContainerEggBoxShut + id: FoodContainerEggBoxShut components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 1 prototypes: - DrinkFoodContainerEggBox: 100 + FoodContainerEggBox: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/eggbox_shut.rsi + sprite: Objects/FoodContainers/eggbox_shut.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/eggbox_shut.rsi + sprite: Objects/FoodContainers/eggbox_shut.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Egg box - id: DrinkFoodContainerEggBox + id: FoodContainerEggBox components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 12 prototypes: FoodEgg: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/eggbox.rsi + sprite: Objects/FoodContainers/eggbox.rsi state: eggbox-12 - type: Icon - sprite: Objects/DrinkFoodContainers/eggbox.rsi + sprite: Objects/FoodContainers/eggbox.rsi state: eggbox-12 - type: Appearance visuals: - - type: DrinkFoodContainerVisualizer2D + - type: FoodContainerVisualizer2D mode: Discrete base_state: eggbox steps: 13 - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Lemon cake - id: DrinkFoodContainerLemonCake + id: FoodContainerLemonCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodLemonCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/lemoncake.rsi + sprite: Objects/FoodContainers/lemoncake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/lemoncake.rsi + sprite: Objects/FoodContainers/lemoncake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Lime cake - id: DrinkFoodContainerLimeCake + id: FoodContainerLimeCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodLimeCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/limecake.rsi + sprite: Objects/FoodContainers/limecake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/limecake.rsi + sprite: Objects/FoodContainers/limecake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Meat bread - id: DrinkFoodContainerMeatBread + id: FoodContainerMeatBread components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodMeatBreadSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/meatbread.rsi + sprite: Objects/FoodContainers/meatbread.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/meatbread.rsi + sprite: Objects/FoodContainers/meatbread.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Meat pizza - id: DrinkFoodContainerMeatPizza + id: FoodContainerMeatPizza components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 6 prototypes: FoodMeatPizzaSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/meatpizza.rsi + sprite: Objects/FoodContainers/meatpizza.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/meatpizza.rsi + sprite: Objects/FoodContainers/meatpizza.rsi # These two will probably get moved one day - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Monkey cube box - id: DrinkFoodContainerMonkeyCubeBox + id: FoodContainerMonkeyCubeBox components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: - DrinkFoodContainerMonkeyCubeWrap: 100 + FoodContainerMonkeyCubeWrap: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/monkeycubebox.rsi + sprite: Objects/FoodContainers/monkeycubebox.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/monkeycubebox.rsi + sprite: Objects/FoodContainers/monkeycubebox.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Monkey cube wrap - id: DrinkFoodContainerMonkeyCubeWrap + id: FoodContainerMonkeyCubeWrap components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodMonkeyCube: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/monkeycubewrap.rsi + sprite: Objects/FoodContainers/monkeycubewrap.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/monkeycubewrap.rsi + sprite: Objects/FoodContainers/monkeycubewrap.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Mushroom pizza - id: DrinkFoodContainerMushroomPizza + id: FoodContainerMushroomPizza components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 6 prototypes: FoodMushroomPizzaSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/mushroompizza.rsi + sprite: Objects/FoodContainers/mushroompizza.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/mushroompizza.rsi + sprite: Objects/FoodContainers/mushroompizza.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Orange cake - id: DrinkFoodContainerOrangeCake + id: FoodContainerOrangeCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodOrangeCakeSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/orangecake.rsi + sprite: Objects/FoodContainers/orangecake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/orangecake.rsi + sprite: Objects/FoodContainers/orangecake.rsi # TODO: Probably replace it with a stacking thing - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Pizza box stack - id: DrinkFoodContainerPizzaBoxStack + id: FoodContainerPizzaBoxStack components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: - DrinkFoodContainerPizzaBox: 100 + FoodContainerPizzaBox: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/pizzaboxstack.rsi + sprite: Objects/FoodContainers/pizzaboxstack.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/pizzaboxstack.rsi + sprite: Objects/FoodContainers/pizzaboxstack.rsi - type: Appearance visuals: - - type: DrinkFoodContainerVisualizer2D + - type: FoodContainerVisualizer2D mode: Discrete base_state: pizzaboxstack steps: 5 - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Pizza box - id: DrinkFoodContainerPizzaBox + id: FoodContainerPizzaBox components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 1 prototypes: - DrinkFoodContainerMeatPizza: 25 - DrinkFoodContainerMargheritaPizza: 25 - DrinkFoodContainerMushroomPizza: 25 - DrinkFoodContainerVegetablePizza: 25 + FoodContainerMeatPizza: 25 + FoodContainerMargheritaPizza: 25 + FoodContainerMushroomPizza: 25 + FoodContainerVegetablePizza: 25 - type: Sprite - sprite: Objects/DrinkFoodContainers/pizzabox_open.rsi + sprite: Objects/FoodContainers/pizzabox_open.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/pizzabox_open.rsi + sprite: Objects/FoodContainers/pizzabox_open.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Margherita pizza - id: DrinkFoodContainerMargheritaPizza + id: FoodContainerMargheritaPizza components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 6 prototypes: FoodMargheritaPizzaSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/pizzamargherita.rsi + sprite: Objects/FoodContainers/pizzamargherita.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/pizzamargherita.rsi + sprite: Objects/FoodContainers/pizzamargherita.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Plain cake - id: DrinkFoodContainerPlainCake + id: FoodContainerPlainCake components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodPlainCakeSlice: 100 - spawn_on_finish: TrashTray + trash: TrashTray - type: Sprite - sprite: Objects/DrinkFoodContainers/plaincake.rsi + sprite: Objects/FoodContainers/plaincake.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/plaincake.rsi + sprite: Objects/FoodContainers/plaincake.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Pumpkin pie - id: DrinkFoodContainerPumpkinPie + id: FoodContainerPumpkinPie components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodPumpkinPieSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/pumpkinpie.rsi + sprite: Objects/FoodContainers/pumpkinpie.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/pumpkinpie.rsi + sprite: Objects/FoodContainers/pumpkinpie.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Tofu bread - id: DrinkFoodContainerTofuBread + id: FoodContainerTofuBread components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodTofuBreadSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/tofubread.rsi + sprite: Objects/FoodContainers/tofubread.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/tofubread.rsi + sprite: Objects/FoodContainers/tofubread.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Vegetable pizza - id: DrinkFoodContainerVegetablePizza + id: FoodContainerVegetablePizza components: - - type: DrinkFoodContainer + - type: FoodContainer capacity: 6 prototypes: FoodVegetablePizzaSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/vegetablepizza.rsi + sprite: Objects/FoodContainers/vegetablepizza.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/vegetablepizza.rsi + sprite: Objects/FoodContainers/vegetablepizza.rsi - type: entity - parent: DrinkFoodContainerBase + parent: FoodContainerBase name: Xenomeat bread - id: DrinkFoodContainerXenomeatBread + id: FoodContainerXenomeatBread components: - - type: DrinkFoodContainer - capacity: 5 + - type: FoodContainer prototypes: FoodXenomeatBreadSlice: 100 - type: Sprite - sprite: Objects/DrinkFoodContainers/xenomeatbread.rsi + sprite: Objects/FoodContainers/xenomeatbread.rsi - type: Icon - sprite: Objects/DrinkFoodContainers/xenomeatbread.rsi + sprite: Objects/FoodContainers/xenomeatbread.rsi diff --git a/Resources/Prototypes/Entities/Items/Consumables/kitchen_reagent_containers.yml b/Resources/Prototypes/Entities/Items/Consumables/kitchen_reagent_containers.yml index 2d009d083e..016007aa78 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/kitchen_reagent_containers.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/kitchen_reagent_containers.yml @@ -13,7 +13,6 @@ - type: Pourable transferAmount: 5 - type: Drink - despawn_empty: true - type: Sprite sprite: Objects/Food/flour.rsi state: icon diff --git a/Resources/Prototypes/Entities/Items/Consumables/trash_drinks.yml b/Resources/Prototypes/Entities/Items/Consumables/trash_drinks.yml index cdba3d3ad6..325b180225 100644 --- a/Resources/Prototypes/Entities/Items/Consumables/trash_drinks.yml +++ b/Resources/Prototypes/Entities/Items/Consumables/trash_drinks.yml @@ -3,7 +3,7 @@ name: Base empty bottle parent: BaseItem abstract: true - id: DrinkBottleBase + id: DrinkBottleBaseEmpty components: - type: Sound - type: Sprite @@ -15,12 +15,13 @@ - type: Pourable transferAmount: 5 - type: Drink - despawn_empty: false + isOpen: true + # Containers - type: entity name: Jailbreaker Verte bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleAbsinthe components: - type: Sprite @@ -30,7 +31,7 @@ - type: entity name: Alcohol bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleAlcoClear components: - type: Sprite @@ -40,7 +41,7 @@ - type: entity name: Ale bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleAle components: - type: Sprite @@ -50,7 +51,7 @@ - type: entity name: Beer bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleBeer components: - type: Sprite @@ -60,7 +61,7 @@ - type: entity name: Broken bottle - parent: DrinkBottleBase # Can't hold liquids + parent: DrinkBottleBaseEmpty # Can't hold liquids id: DrinkBrokenBottle components: - type: Sprite @@ -70,7 +71,7 @@ - type: entity name: Cognac bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleCognac components: - type: Sprite @@ -80,7 +81,7 @@ - type: entity name: Griffeater gin bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleGin components: - type: Sprite @@ -90,7 +91,7 @@ - type: entity name: Goldschlager bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleGoldschlager components: - type: Sprite @@ -100,7 +101,7 @@ - type: entity name: Kahlua bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleKahlua components: - type: Sprite @@ -110,7 +111,7 @@ - type: entity name: NT Cahors bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleNTCahors components: - type: Sprite @@ -120,7 +121,7 @@ - type: entity name: Patron bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottlePatron components: - type: Sprite @@ -130,7 +131,7 @@ - type: entity name: Poison wine bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottlePoisonWine components: - type: Sprite @@ -140,7 +141,7 @@ - type: entity name: Rum bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleRum components: - type: Sprite @@ -150,7 +151,7 @@ - type: entity name: Tequila bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleTequila components: - type: Sprite @@ -160,7 +161,7 @@ - type: entity name: Vermouth bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleVermouth components: - type: Sprite @@ -170,7 +171,7 @@ - type: entity name: Vodka bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleVodka components: - type: Sprite @@ -180,7 +181,7 @@ - type: entity name: Whiskey bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleWhiskey components: - type: Sprite @@ -190,7 +191,7 @@ - type: entity name: Wine bottle - parent: DrinkBottleBase + parent: DrinkBottleBaseEmpty id: DrinkBottleWine components: - type: Sprite diff --git a/Resources/Prototypes/Kitchen/meal_recipes.yml b/Resources/Prototypes/Kitchen/meal_recipes.yml index 766e0a89bd..ee16015c50 100644 --- a/Resources/Prototypes/Kitchen/meal_recipes.yml +++ b/Resources/Prototypes/Kitchen/meal_recipes.yml @@ -59,7 +59,7 @@ - type: microwaveMealRecipe id: RecipeBread name: Bread Recipe - result: DrinkFoodContainerBread + result: FoodContainerBread time: 15 reagents: chem.Flour: 15 @@ -104,7 +104,7 @@ - type: microwaveMealRecipe id: RecipeCreamCheeseBread name: Cream Cheese Bread Recipe - result: DrinkFoodContainerCreamCheeseBread + result: FoodContainerCreamCheeseBread time: 20 reagents: chem.Flour: 15 @@ -114,7 +114,7 @@ - type: microwaveMealRecipe id: RecipeBananaBread name: Banana Bread Recipe - result: DrinkFoodContainerBananaBread + result: FoodContainerBananaBread time: 25 reagents: chem.Flour: 15 @@ -129,7 +129,7 @@ - type: microwaveMealRecipe id: RecipeMargheritaPizza name: Margherita Pizza Recipe - result: DrinkFoodContainerMargheritaPizza + result: FoodContainerMargheritaPizza time: 30 reagents: chem.Flour: 10 @@ -140,7 +140,7 @@ - type: microwaveMealRecipe id: RecipeMushroomPizza name: Mushroom Pizza Recipe - result: DrinkFoodContainerMushroomPizza + result: FoodContainerMushroomPizza time: 25 reagents: chem.Flour: 10 @@ -150,7 +150,7 @@ - type: microwaveMealRecipe id: RecipeMeatPizza name: Meat Pizza Recipe - result: DrinkFoodContainerMeatPizza + result: FoodContainerMeatPizza time: 30 reagents: chem.Flour: 10 @@ -162,7 +162,7 @@ - type: microwaveMealRecipe id: RecipeVegetablePizza name: Vegetable Pizza Recipe - result: DrinkFoodContainerVegetablePizza + result: FoodContainerVegetablePizza time: 30 reagents: chem.Flour: 10 diff --git a/Resources/Prototypes/SoundCollections/drink_open_sounds.yml b/Resources/Prototypes/SoundCollections/drink_open_sounds.yml new file mode 100644 index 0000000000..0ed88554ff --- /dev/null +++ b/Resources/Prototypes/SoundCollections/drink_open_sounds.yml @@ -0,0 +1,11 @@ +- type: soundCollection + id: canOpenSounds + files: + - /Audio/items/can_open1.ogg + - /Audio/items/can_open2.ogg + - /Audio/items/can_open3.ogg + +- type: soundCollection + id: bottleOpenSounds + files: + - /Audio/items/bottle_open1.ogg diff --git a/Resources/Prototypes/VendingMachines/cola.yml b/Resources/Prototypes/VendingMachines/cola.yml index d3fd4fcd7b..a541949357 100644 --- a/Resources/Prototypes/VendingMachines/cola.yml +++ b/Resources/Prototypes/VendingMachines/cola.yml @@ -5,11 +5,11 @@ animationDuration: 1.1 spriteName: cola startingInventory: - DrinkFoodContainerColaCanUnopened: 10 - DrinkFoodContainerIceTeaCanUnopened: 10 - DrinkFoodContainerLemonLimeCanUnopened: 10 - DrinkFoodContainerPurpleCanUnopened: 10 - DrinkFoodContainerSpaceMountainWindCanUnopened: 10 - DrinkFoodContainerSpaceUpCanUnopened: 10 - DrinkFoodContaineStarkistCanUnopened: 10 - DrinkFoodContaineThirteenLokoCanUnopened: 10 + DrinkColaCan: 10 + DrinkIceTeaCan: 10 + DrinkLemonLimeCan: 10 + DrinkPurpleCan: 10 + DrinkSpaceMountainWindCan: 10 + DrinkSpaceUpCan: 10 + DrinkDrinkFoodContaineStarkistCan: 10 + DrinkFoodContaineThirteenLokoCan: 10 diff --git a/Resources/Textures/Objects/DrinkFoodContainers/apple_cake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/apple_cake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/apple_cake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/apple_cake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/apple_cake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/apple_cake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/apple_cake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/apple_cake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/bananabread.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/bananabread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/bananabread.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/bananabread.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/bananabread.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/bananabread.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/bananabread.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/bananabread.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/birthdaycake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/birthdaycake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/birthdaycake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/birthdaycake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/birthdaycake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/birthdaycake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/birthdaycake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/birthdaycake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/braincake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/braincake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/braincake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/braincake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/braincake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/braincake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/braincake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/braincake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/bread.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/bread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/bread.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/bread.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/bread.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/bread.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/bread.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/bread.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/carrotcake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/carrotcake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/carrotcake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/carrotcake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/carrotcake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/carrotcake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/carrotcake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/carrotcake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/cheesecake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/cheesecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/cheesecake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/cheesecake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/cheesecake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/cheesecake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/cheesecake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/cheesecake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/cheesewheel.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/cheesewheel.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/cheesewheel.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/cheesewheel.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/cheesewheel.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/cheesewheel.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/cheesewheel.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/cheesewheel.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/chocolatecake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/chocolatecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/chocolatecake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/chocolatecake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/chocolatecake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/chocolatecake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/chocolatecake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/chocolatecake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/creamcheesebread.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/creamcheesebread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/creamcheesebread.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/creamcheesebread.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/creamcheesebread.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/creamcheesebread.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/creamcheesebread.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/creamcheesebread.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-0.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-0.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-0.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-0.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-1.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-1.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-1.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-1.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-2.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-2.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-2.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-2.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-3.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-3.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-3.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-3.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-4.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-4.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-4.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-4.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-5.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-5.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-5.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-5.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-6.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-6.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/donutbox-6.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/donutbox-6.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/donutbox.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/donutbox.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/donutbox.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-0.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-0.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-0.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-0.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-1.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-1.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-1.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-1.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-10.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-10.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-10.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-10.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-11.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-11.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-11.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-11.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-12.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-12.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-12.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-12.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-2.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-2.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-2.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-2.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-3.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-3.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-3.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-3.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-4.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-4.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-4.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-4.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-5.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-5.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-5.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-5.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-6.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-6.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-6.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-6.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-7.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-7.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-7.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-7.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-8.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-8.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-8.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-8.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-9.png b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-9.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/eggbox-9.png rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/eggbox-9.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/eggbox.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/eggbox.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox_shut.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/eggbox_shut.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox_shut.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/eggbox_shut.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/eggbox_shut.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/eggbox_shut.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/eggbox_shut.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/eggbox_shut.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/lemoncake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/lemoncake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/lemoncake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/lemoncake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/lemoncake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/lemoncake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/lemoncake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/lemoncake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/limecake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/limecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/limecake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/limecake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/limecake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/limecake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/limecake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/limecake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/meatbread.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/meatbread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/meatbread.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/meatbread.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/meatbread.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/meatbread.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/meatbread.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/meatbread.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/meatpizza.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/meatpizza.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/meatpizza.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/meatpizza.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/meatpizza.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/meatpizza.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/meatpizza.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/meatpizza.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/monkeycubebox.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/monkeycubebox.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/monkeycubebox.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/monkeycubebox.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/monkeycubebox.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/monkeycubebox.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/monkeycubebox.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/monkeycubebox.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/monkeycubewrap.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/monkeycubewrap.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/monkeycubewrap.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/monkeycubewrap.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/monkeycubewrap.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/monkeycubewrap.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/monkeycubewrap.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/monkeycubewrap.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/mushroompizza.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/mushroompizza.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/mushroompizza.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/mushroompizza.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/mushroompizza.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/mushroompizza.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/mushroompizza.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/mushroompizza.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/orangecake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/orangecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/orangecake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/orangecake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/orangecake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/orangecake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/orangecake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/orangecake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzabox_open.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/pizzabox_open.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzabox_open.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/pizzabox_open.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzabox_open.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/pizzabox_open.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzabox_open.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/pizzabox_open.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzabox_tag.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/pizzabox_tag.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzabox_tag.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/pizzabox_tag.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzabox_tag.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/pizzabox_tag.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzabox_tag.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/pizzabox_tag.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-0.png b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-0.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-0.png rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-0.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-1.png b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-1.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-1.png rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-1.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-2.png b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-2.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-2.png rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-2.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-3.png b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-3.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-3.png rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-3.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-4.png b/Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-4.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzaboxstack.rsi/pizzaboxstack-4.png rename to Resources/Textures/Objects/FoodContainers/pizzaboxstack.rsi/pizzaboxstack-4.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzamargherita.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/pizzamargherita.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzamargherita.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/pizzamargherita.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pizzamargherita.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/pizzamargherita.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pizzamargherita.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/pizzamargherita.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/plaincake.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/plaincake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/plaincake.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/plaincake.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/plaincake.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/plaincake.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/plaincake.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/plaincake.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pumpkinpie.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/pumpkinpie.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pumpkinpie.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/pumpkinpie.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/pumpkinpie.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/pumpkinpie.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/pumpkinpie.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/pumpkinpie.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/tofubread.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/tofubread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/tofubread.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/tofubread.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/tofubread.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/tofubread.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/tofubread.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/tofubread.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/vegetablepizza.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/vegetablepizza.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/vegetablepizza.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/vegetablepizza.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/vegetablepizza.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/vegetablepizza.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/vegetablepizza.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/vegetablepizza.rsi/meta.json diff --git a/Resources/Textures/Objects/DrinkFoodContainers/xenomeatbread.rsi/icon.png b/Resources/Textures/Objects/FoodContainers/xenomeatbread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/xenomeatbread.rsi/icon.png rename to Resources/Textures/Objects/FoodContainers/xenomeatbread.rsi/icon.png diff --git a/Resources/Textures/Objects/DrinkFoodContainers/xenomeatbread.rsi/meta.json b/Resources/Textures/Objects/FoodContainers/xenomeatbread.rsi/meta.json similarity index 100% rename from Resources/Textures/Objects/DrinkFoodContainers/xenomeatbread.rsi/meta.json rename to Resources/Textures/Objects/FoodContainers/xenomeatbread.rsi/meta.json