diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000000..438fa3c313 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,7 @@ +contact_links: + - name: Report a Security Exploit + url: https://discord.gg/MwDDf6t + about: Please report serious security exploits and vulnerabilities to @PJB3005. (PJB#3482 on discord). + - name: Request a Feature + url: https://hackmd.io/@ss14/docs + about: Submit feature requests on our [discord server](https://discord.gg/ZBFGnb3) or checkout our design documentation on HackMD. diff --git a/.github/ISSUE_TEMPLATE/issue_report.md b/.github/ISSUE_TEMPLATE/issue_report.md new file mode 100644 index 0000000000..0f386a9fc8 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/issue_report.md @@ -0,0 +1,19 @@ +--- +name: Report an Issue +about: "..." +title: '' +labels: '' +assignees: '' + +--- + + + +## Description + + +**Screenshots** + + +**Additional context** + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000000..39483208b5 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,8 @@ + + + +## About the PR + +**Screenshots** + diff --git a/.github/keylabeler.yml b/.github/keylabeler.yml new file mode 100644 index 0000000000..5f669179a7 --- /dev/null +++ b/.github/keylabeler.yml @@ -0,0 +1,47 @@ +# Determines if we search the title (optional). Defaults to true. +matchTitle: false + +# Determines if we search the body (optional). Defaults to true. +matchBody: true + +# Determines if label matching is case sensitive (optional). Defaults to true. +caseSensitive: false + +# Explicit keyword mappings to labels. Form of match:label. Required. +labelMappings: + "[ATMOS]": "Feature: Atmospherics" + "[AUDIO]": "Feature: Audio" + "[CONSTRUCTION]": "Feature: Construction" + "[ENTITIES]": "Feature: Entities" + "[ENTITY]": "Feature: Entities" + "[ENTITY AI]": "Feature: Entity AI" + "[EVENTS]": "Feature: Events" + "[EVENT]": "Feature: Events" + "[INTERACTION]": "Feature: Interaction" + "[MEDICAL]": "Feature: Medical" + "[PHYSICS]": "Feature: Physics" + "[POWER]": "Feature: Power" + "[SPRITES]": "Feature: Sprites" + "[SPRITE]": "Feature: Sprites" + "[UI]": "Feature: UI" + + "[BUG]": "Type: Bug" + "[CLEANUP]": "Type: Cleanup" + "[CLEAN]": "Type: Cleanup" + "[CLEANLINESS]": "Type: Cleanup" + "[DISCUSSION]": "Type: Discussion" + "[DISCUSS]": "Type: Discussion" + "[FEATURE]": "Type: Feature" + "[FEAT]": "Type: Feature" + "[IMPROVEMENT]": "Type: Improvement" + "[IMPROVE]": "Type: Improvement" + "[PERFORMANCE]": "Type: Performance" + "[PERF]": "Type: Performance" + "[REFACTOR]": "Type: Refactor" + + "[HELP WANTED]": "Status: Help Wanted" + "[DO NOT MERGE]": "Status: DO NOT MERGE" + "[DNM]": "Status: DO NOT MERGE" + + "[RESOURCES]": "Resources (No code)" + "[NOCODE]": "Resources (No code)" diff --git a/Content.Client/Arcade/BlockGameMenu.cs b/Content.Client/Arcade/BlockGameMenu.cs index 5c5829205a..6bba80dae5 100644 --- a/Content.Client/Arcade/BlockGameMenu.cs +++ b/Content.Client/Arcade/BlockGameMenu.cs @@ -458,7 +458,7 @@ namespace Content.Client.Arcade return grid; } - protected override void FocusExited() + protected override void KeyboardFocusExited() { if (!IsOpen) return; if(_gameOver) return; diff --git a/Content.Client/Chat/ChatBox.cs b/Content.Client/Chat/ChatBox.cs index 75e65ff87f..60fcab57c2 100644 --- a/Content.Client/Chat/ChatBox.cs +++ b/Content.Client/Chat/ChatBox.cs @@ -23,6 +23,7 @@ namespace Content.Client.Chat public Button LocalButton { get; } public Button OOCButton { get; } public Button AdminButton { get; } + public Button DeadButton { get; } /// /// Default formatting string for the ClientChatConsole. @@ -103,13 +104,23 @@ namespace Content.Client.Chat Visible = false }; + DeadButton = new Button + { + Text = Loc.GetString("Dead"), + Name = "Dead", + ToggleMode = true, + Visible = false + }; + AllButton.OnToggled += OnFilterToggled; LocalButton.OnToggled += OnFilterToggled; OOCButton.OnToggled += OnFilterToggled; AdminButton.OnToggled += OnFilterToggled; + DeadButton.OnToggled += OnFilterToggled; hBox.AddChild(AllButton); hBox.AddChild(LocalButton); + hBox.AddChild(DeadButton); hBox.AddChild(OOCButton); hBox.AddChild(AdminButton); diff --git a/Content.Client/Chat/ChatManager.cs b/Content.Client/Chat/ChatManager.cs index fbbc634249..96910110f8 100644 --- a/Content.Client/Chat/ChatManager.cs +++ b/Content.Client/Chat/ChatManager.cs @@ -1,11 +1,13 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Content.Client.Administration; +using Content.Client.GameObjects.Components.Observer; using Content.Client.Interfaces.Chat; using Content.Shared.Administration; using Content.Shared.Chat; using Robust.Client.Console; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.Interfaces.UserInterface; +using Robust.Client.Player; using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; using Robust.Shared.GameObjects; @@ -25,6 +27,8 @@ namespace Content.Client.Chat { internal sealed class ChatManager : IChatManager, IPostInjectInit { + [Dependency] private IPlayerManager _playerManager = default!; + private struct SpeechBubbleData { public string Message; @@ -61,13 +65,14 @@ namespace Content.Client.Chat private const char MeAlias = '@'; private const char AdminChatAlias = ']'; - private readonly List filteredHistory = new(); + private readonly List _filteredHistory = new(); // Filter Button States private bool _allState; private bool _localState; private bool _oocState; private bool _adminState; + private bool _deadState; // Flag Enums for holding filtered channels private ChatChannel _filteredChannels; @@ -98,8 +103,8 @@ namespace Content.Client.Chat public void Initialize() { - _netManager.RegisterNetMessage(MsgChatMessage.NAME, _onChatMessage); - _netManager.RegisterNetMessage(ChatMaxMsgLengthMessage.NAME, _onMaxLengthReceived); + _netManager.RegisterNetMessage(MsgChatMessage.NAME, OnChatMessage); + _netManager.RegisterNetMessage(ChatMaxMsgLengthMessage.NAME, OnMaxLengthReceived); _speechBubbleRoot = new LayoutContainer(); LayoutContainer.SetAnchorPreset(_speechBubbleRoot, LayoutContainer.LayoutPreset.Wide); @@ -152,24 +157,25 @@ namespace Content.Client.Chat { if (_currentChatBox != null) { - _currentChatBox.TextSubmitted -= _onChatBoxTextSubmitted; - _currentChatBox.FilterToggled -= _onFilterButtonToggled; + _currentChatBox.TextSubmitted -= OnChatBoxTextSubmitted; + _currentChatBox.FilterToggled -= OnFilterButtonToggled; } _currentChatBox = chatBox; if (_currentChatBox != null) { - _currentChatBox.TextSubmitted += _onChatBoxTextSubmitted; - _currentChatBox.FilterToggled += _onFilterButtonToggled; + _currentChatBox.TextSubmitted += OnChatBoxTextSubmitted; + _currentChatBox.FilterToggled += OnFilterButtonToggled; _currentChatBox.AllButton.Pressed = !_allState; _currentChatBox.LocalButton.Pressed = !_localState; _currentChatBox.OOCButton.Pressed = !_oocState; _currentChatBox.AdminButton.Pressed = !_adminState; + _currentChatBox.DeadButton.Pressed = !_deadState; AdminStatusUpdated(); } - RepopulateChat(filteredHistory); + RepopulateChat(_filteredHistory); } public void RemoveSpeechBubble(EntityUid entityUid, SpeechBubble bubble) @@ -224,7 +230,7 @@ namespace Content.Client.Chat _currentChatBox?.AddLine(messageText, message.Channel, color); } - private void _onChatBoxTextSubmitted(ChatBox chatBox, string text) + private void OnChatBoxTextSubmitted(ChatBox chatBox, string text) { DebugTools.Assert(chatBox == _currentChatBox); @@ -295,7 +301,7 @@ namespace Content.Client.Chat } } - private void _onFilterButtonToggled(ChatBox chatBox, BaseButton.ButtonToggledEventArgs e) + private void OnFilterButtonToggled(ChatBox chatBox, BaseButton.ButtonToggledEventArgs e) { switch (e.Button.Name) { @@ -336,6 +342,13 @@ namespace Content.Client.Chat _filteredChannels &= ~ChatChannel.AdminChat; break; } + case "Dead": + _deadState = !_deadState; + if (_deadState) + _filteredChannels |= ChatChannel.Dead; + else + _filteredChannels &= ~ChatChannel.Dead; + break; case "ALL": chatBox.LocalButton.Pressed ^= true; @@ -346,7 +359,7 @@ namespace Content.Client.Chat break; } - RepopulateChat(filteredHistory); + RepopulateChat(_filteredHistory); } private void RepopulateChat(IEnumerable filteredMessages) @@ -364,11 +377,11 @@ namespace Content.Client.Chat } } - private void _onChatMessage(MsgChatMessage msg) + private void OnChatMessage(MsgChatMessage msg) { // Log all incoming chat to repopulate when filter is un-toggled var storedMessage = new StoredChatMessage(msg); - filteredHistory.Add(storedMessage); + _filteredHistory.Add(storedMessage); WriteChatMessage(storedMessage); // Local messages that have an entity attached get a speech bubble. @@ -378,7 +391,13 @@ namespace Content.Client.Chat switch (msg.Channel) { case ChatChannel.Local: + AddSpeechBubble(msg, SpeechBubble.SpeechType.Say); + break; + case ChatChannel.Dead: + if (!_playerManager.LocalPlayer?.ControlledEntity?.HasComponent() ?? true) + break; + AddSpeechBubble(msg, SpeechBubble.SpeechType.Say); break; @@ -388,7 +407,7 @@ namespace Content.Client.Chat } } - private void _onMaxLengthReceived(ChatMaxMsgLengthMessage msg) + private void OnMaxLengthReceived(ChatMaxMsgLengthMessage msg) { _maxMessageLength = msg.MaxMessageLength; } @@ -522,6 +541,18 @@ namespace Content.Client.Chat if (_currentChatBox != null) { _currentChatBox.AdminButton.Visible = _adminMgr.HasFlag(AdminFlags.Admin); + _currentChatBox.DeadButton.Visible = _adminMgr.HasFlag(AdminFlags.Admin); + } + } + + public void ToggleDeadChatButtonVisibility(bool visibility) + { + if (_currentChatBox != null) + { + // If the user is an admin and returned to body, don't set the flag as null + if (!visibility && _adminMgr.HasFlag(AdminFlags.Admin)) + return; + _currentChatBox.DeadButton.Visible = visibility; } } diff --git a/Content.Client/Construction/ConstructionPlacementHijack.cs b/Content.Client/Construction/ConstructionPlacementHijack.cs index ed5003e8e9..678b1c0c22 100644 --- a/Content.Client/Construction/ConstructionPlacementHijack.cs +++ b/Content.Client/Construction/ConstructionPlacementHijack.cs @@ -1,7 +1,9 @@ #nullable enable +using System.Collections.Generic; using Content.Client.GameObjects.Components.Construction; using Content.Client.GameObjects.EntitySystems; using Content.Shared.Construction; +using Robust.Client.Graphics; using Robust.Client.Placement; using Robust.Client.Utility; using Robust.Shared.Interfaces.GameObjects; @@ -49,7 +51,15 @@ namespace Content.Client.Construction { base.StartHijack(manager); - manager.CurrentBaseSprite = _prototype?.Icon.DirFrame0(); + var frame = _prototype?.Icon.DirFrame0(); + if (frame == null) + { + manager.CurrentTextures = null; + } + else + { + manager.CurrentTextures = new List {frame}; + } } } } diff --git a/Content.Client/EntryPoint.cs b/Content.Client/EntryPoint.cs index 0f9752f4d5..23c3612739 100644 --- a/Content.Client/EntryPoint.cs +++ b/Content.Client/EntryPoint.cs @@ -81,7 +81,6 @@ namespace Content.Client prototypes.RegisterIgnore("seed"); // Seeds prototypes are server-only. prototypes.RegisterIgnore("barSign"); prototypes.RegisterIgnore("objective"); - prototypes.RegisterIgnore("dataset"); ClientContentIoC.Register(); diff --git a/Content.Client/GameObjects/Components/AcceptCloningBoundUserInterface.cs b/Content.Client/GameObjects/Components/AcceptCloningBoundUserInterface.cs deleted file mode 100644 index 9b38059110..0000000000 --- a/Content.Client/GameObjects/Components/AcceptCloningBoundUserInterface.cs +++ /dev/null @@ -1,45 +0,0 @@ -using Content.Shared.GameObjects.Components; -using JetBrains.Annotations; -using Robust.Client.GameObjects.Components.UserInterface; - -namespace Content.Client.GameObjects.Components -{ - [UsedImplicitly] - public class AcceptCloningBoundUserInterface : BoundUserInterface - { - - public AcceptCloningBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey) - { - } - - private AcceptCloningWindow _window; - - protected override void Open() - { - base.Open(); - - _window = new AcceptCloningWindow(); - _window.OnClose += Close; - _window.DenyButton.OnPressed += _ => _window.Close(); - _window.ConfirmButton.OnPressed += _ => - { - SendMessage( - new SharedAcceptCloningComponent.UiButtonPressedMessage( - SharedAcceptCloningComponent.UiButton.Accept)); - _window.Close(); - }; - _window.OpenCentered(); - } - - protected override void Dispose(bool disposing) - { - base.Dispose(disposing); - - if (disposing) - { - _window?.Dispose(); - } - } - - } -} diff --git a/Content.Client/GameObjects/Components/Arcade/BlockGameBoundUserInterface.cs b/Content.Client/GameObjects/Components/Arcade/BlockGameBoundUserInterface.cs index 4e27a40d3d..b43a1c763a 100644 --- a/Content.Client/GameObjects/Components/Arcade/BlockGameBoundUserInterface.cs +++ b/Content.Client/GameObjects/Components/Arcade/BlockGameBoundUserInterface.cs @@ -21,7 +21,6 @@ namespace Content.Client.GameObjects.Components.Arcade base.Open(); _menu = new BlockGameMenu(this); - _menu.OnClose += () => SendMessage(new BlockGameMessages.BlockGameUserUnregisterMessage()); _menu.OnClose += Close; _menu.OpenCentered(); } diff --git a/Content.Client/GameObjects/Components/Atmos/Piping/GasFilterVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/Piping/GasFilterVisualizer.cs new file mode 100644 index 0000000000..cc99c6c827 --- /dev/null +++ b/Content.Client/GameObjects/Components/Atmos/Piping/GasFilterVisualizer.cs @@ -0,0 +1,51 @@ +#nullable enable +using Content.Shared.GameObjects.Components.Atmos; +using JetBrains.Annotations; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; +using YamlDotNet.RepresentationModel; + +namespace Content.Client.GameObjects.Components.Atmos +{ + [UsedImplicitly] + public class GasFilterVisualizer : AppearanceVisualizer + { + private string _filterEnabledState = default!; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + var serializer = YamlObjectSerializer.NewReader(node); + serializer.DataField(ref _filterEnabledState, "filterEnabledState", "gasFilterOn"); + } + + public override void InitializeEntity(IEntity entity) + { + base.InitializeEntity(entity); + + if (!entity.TryGetComponent(out var sprite)) return; + + sprite.LayerMapReserveBlank(Layer.FilterEnabled); + var filterEnabledLayer = sprite.LayerMapGet(Layer.FilterEnabled); + sprite.LayerSetState(filterEnabledLayer, _filterEnabledState); + } + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (!component.Owner.TryGetComponent(out var sprite)) return; + if (!component.TryGetData(FilterVisuals.VisualState, out FilterVisualState filterVisualState)) return; + + var filterEnabledLayer = sprite.LayerMapGet(Layer.FilterEnabled); + sprite.LayerSetVisible(filterEnabledLayer, filterVisualState.Enabled); + } + + public enum Layer : byte + { + FilterEnabled, + } + } +} diff --git a/Content.Client/GameObjects/Components/Atmos/PipeVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/Piping/PipeVisualizer.cs similarity index 88% rename from Content.Client/GameObjects/Components/Atmos/PipeVisualizer.cs rename to Content.Client/GameObjects/Components/Atmos/Piping/PipeVisualizer.cs index 2ec10888e2..b0f3de2c2a 100644 --- a/Content.Client/GameObjects/Components/Atmos/PipeVisualizer.cs +++ b/Content.Client/GameObjects/Components/Atmos/Piping/PipeVisualizer.cs @@ -1,4 +1,4 @@ -using System; +using System; using Content.Shared.GameObjects.Components.Atmos; using JetBrains.Annotations; using Robust.Client.GameObjects; @@ -10,6 +10,7 @@ using Robust.Shared.GameObjects.Components.Renderable; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; using Robust.Shared.Log; +using Robust.Shared.Serialization; using Robust.Shared.Utility; using YamlDotNet.RepresentationModel; @@ -18,14 +19,18 @@ namespace Content.Client.GameObjects.Components.Atmos [UsedImplicitly] public class PipeVisualizer : AppearanceVisualizer { + private string _rsiString; + private RSI _pipeRSI; public override void LoadData(YamlMappingNode node) { base.LoadData(node); - var rsiString = node.GetNode("pipeRSI").ToString(); - var rsiPath = SharedSpriteComponent.TextureRoot / rsiString; + var serializer = YamlObjectSerializer.NewReader(node); + serializer.DataField(ref _rsiString, "rsiString", "Constructible/Atmos/pipe.rsi"); + + var rsiPath = SharedSpriteComponent.TextureRoot / _rsiString; try { var resourceCache = IoCManager.Resolve(); @@ -62,7 +67,6 @@ namespace Content.Client.GameObjects.Components.Atmos { var stateId = "pipe"; stateId += pipeVisualState.PipeDirection.PipeDirectionToPipeShape().ToString(); - stateId += (int) pipeVisualState.ConduitLayer; return stateId; } diff --git a/Content.Client/GameObjects/Components/Atmos/PumpVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/Piping/PumpVisualizer.cs similarity index 85% rename from Content.Client/GameObjects/Components/Atmos/PumpVisualizer.cs rename to Content.Client/GameObjects/Components/Atmos/Piping/PumpVisualizer.cs index 2f4f38ccd6..e3ce6d930a 100644 --- a/Content.Client/GameObjects/Components/Atmos/PumpVisualizer.cs +++ b/Content.Client/GameObjects/Components/Atmos/Piping/PumpVisualizer.cs @@ -1,9 +1,9 @@ -using Content.Shared.GameObjects.Components.Atmos; +using Content.Shared.GameObjects.Components.Atmos; using JetBrains.Annotations; using Robust.Client.GameObjects; using Robust.Client.Interfaces.GameObjects.Components; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.Utility; +using Robust.Shared.Serialization; using YamlDotNet.RepresentationModel; namespace Content.Client.GameObjects.Components.Atmos @@ -16,7 +16,9 @@ namespace Content.Client.GameObjects.Components.Atmos public override void LoadData(YamlMappingNode node) { base.LoadData(node); - _pumpEnabledState = node.GetNode("pumpEnabledState").ToString(); + + var serializer = YamlObjectSerializer.NewReader(node); + serializer.DataField(ref _pumpEnabledState, "pumpEnabledState", "pumpPressureOn"); } public override void InitializeEntity(IEntity entity) diff --git a/Content.Client/GameObjects/Components/Atmos/Piping/SiphonVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/Piping/SiphonVisualizer.cs new file mode 100644 index 0000000000..965810bf59 --- /dev/null +++ b/Content.Client/GameObjects/Components/Atmos/Piping/SiphonVisualizer.cs @@ -0,0 +1,51 @@ +using JetBrains.Annotations; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; +using Content.Shared.GameObjects.Components.Atmos; +using YamlDotNet.RepresentationModel; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Client.GameObjects.Components.Atmos +{ + [UsedImplicitly] + public class SiphonVisualizer : AppearanceVisualizer + { + private string _siphonOnState; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + + var serializer = YamlObjectSerializer.NewReader(node); + serializer.DataField(ref _siphonOnState, "siphonOnState", "scrubOn"); + } + + public override void InitializeEntity(IEntity entity) + { + base.InitializeEntity(entity); + + if (!entity.TryGetComponent(out ISpriteComponent sprite)) return; + + sprite.LayerMapReserveBlank(Layer.SiphonEnabled); + var layer = sprite.LayerMapGet(Layer.SiphonEnabled); + sprite.LayerSetState(layer, _siphonOnState); + } + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (!component.Owner.TryGetComponent(out ISpriteComponent sprite)) return; + if (!component.TryGetData(SiphonVisuals.VisualState, out SiphonVisualState siphonVisualState)) return; + + var layer = sprite.LayerMapGet(Layer.SiphonEnabled); + sprite.LayerSetVisible(layer, siphonVisualState.SiphonEnabled); + } + + private enum Layer : byte + { + SiphonEnabled, + } + } +} diff --git a/Content.Client/GameObjects/Components/Atmos/Piping/VentVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/Piping/VentVisualizer.cs new file mode 100644 index 0000000000..7a9cc36e10 --- /dev/null +++ b/Content.Client/GameObjects/Components/Atmos/Piping/VentVisualizer.cs @@ -0,0 +1,51 @@ +using JetBrains.Annotations; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; +using Content.Shared.GameObjects.Components.Atmos; +using YamlDotNet.RepresentationModel; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Client.GameObjects.Components.Atmos +{ + [UsedImplicitly] + public class VentVisualizer : AppearanceVisualizer + { + private string _ventOnstate; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + + var serializer = YamlObjectSerializer.NewReader(node); + serializer.DataField(ref _ventOnstate, "ventOnState", "ventOn"); + } + + public override void InitializeEntity(IEntity entity) + { + base.InitializeEntity(entity); + + if (!entity.TryGetComponent(out ISpriteComponent sprite)) return; + + sprite.LayerMapReserveBlank(Layer.VentEnabled); + var layer = sprite.LayerMapGet(Layer.VentEnabled); + sprite.LayerSetState(layer, _ventOnstate); + } + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (!component.Owner.TryGetComponent(out ISpriteComponent sprite)) return; + if (!component.TryGetData(VentVisuals.VisualState, out VentVisualState ventVisualState)) return; + + var layer = sprite.LayerMapGet(Layer.VentEnabled); + sprite.LayerSetVisible(layer, ventVisualState.VentEnabled); + } + + private enum Layer : byte + { + VentEnabled, + } + } +} diff --git a/Content.Client/GameObjects/Components/Atmos/SiphonVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/SiphonVisualizer.cs deleted file mode 100644 index 8dcee9a7b3..0000000000 --- a/Content.Client/GameObjects/Components/Atmos/SiphonVisualizer.cs +++ /dev/null @@ -1,72 +0,0 @@ -using JetBrains.Annotations; -using Robust.Client.GameObjects; -using Robust.Client.Graphics; -using Robust.Client.Interfaces.GameObjects.Components; -using Robust.Client.Interfaces.ResourceManagement; -using Robust.Client.ResourceManagement; -using Robust.Shared.GameObjects.Components.Renderable; -using Robust.Shared.IoC; -using Robust.Shared.Log; -using Robust.Shared.Utility; -using System; -using Content.Shared.GameObjects.Components.Atmos; -using YamlDotNet.RepresentationModel; -using Robust.Shared.Interfaces.GameObjects; - -namespace Content.Client.GameObjects.Components.Atmos -{ - [UsedImplicitly] - public class SiphonVisualizer : AppearanceVisualizer - { - private RSI _siphonRSI; - - public override void LoadData(YamlMappingNode node) - { - base.LoadData(node); - - var rsiString = node.GetNode("siphonRSI").ToString(); - var rsiPath = SharedSpriteComponent.TextureRoot / rsiString; - try - { - var resourceCache = IoCManager.Resolve(); - var resource = resourceCache.GetResource(rsiPath); - _siphonRSI = resource.RSI; - } - catch (Exception e) - { - Logger.ErrorS("go.siphonvisualizer", "Unable to load RSI '{0}'. Trace:\n{1}", rsiPath, e); - } - } - - public override void InitializeEntity(IEntity entity) - { - base.InitializeEntity(entity); - if (!entity.TryGetComponent(out ISpriteComponent sprite)) return; - sprite.LayerMapReserveBlank(Layer.SiphonBase); - var pipeBaseLayer = sprite.LayerMapGet(Layer.SiphonBase); - sprite.LayerSetRSI(pipeBaseLayer, _siphonRSI); - sprite.LayerSetVisible(pipeBaseLayer, true); - } - - public override void OnChangeData(AppearanceComponent component) - { - base.OnChangeData(component); - - if (!component.Owner.TryGetComponent(out ISpriteComponent sprite)) return; - if (!component.TryGetData(SiphonVisuals.VisualState, out SiphonVisualState siphonVisualState)) return; - - var siphonBaseState = "scrub"; - siphonBaseState += siphonVisualState.SiphonEnabled ? "On" : "Off"; - - var baseSiphonLayer = sprite.LayerMapGet(Layer.SiphonBase); - sprite.LayerSetRSI(baseSiphonLayer, _siphonRSI); - sprite.LayerSetState(baseSiphonLayer, siphonBaseState); - sprite.LayerSetVisible(baseSiphonLayer, true); - } - - private enum Layer : byte - { - SiphonBase, - } - } -} diff --git a/Content.Client/GameObjects/Components/Atmos/VentVisualizer.cs b/Content.Client/GameObjects/Components/Atmos/VentVisualizer.cs deleted file mode 100644 index aee70602d8..0000000000 --- a/Content.Client/GameObjects/Components/Atmos/VentVisualizer.cs +++ /dev/null @@ -1,72 +0,0 @@ -using JetBrains.Annotations; -using Robust.Client.GameObjects; -using Robust.Client.Graphics; -using Robust.Client.Interfaces.GameObjects.Components; -using Robust.Client.Interfaces.ResourceManagement; -using Robust.Client.ResourceManagement; -using Robust.Shared.GameObjects.Components.Renderable; -using Robust.Shared.IoC; -using Robust.Shared.Log; -using Robust.Shared.Utility; -using System; -using Content.Shared.GameObjects.Components.Atmos; -using YamlDotNet.RepresentationModel; -using Robust.Shared.Interfaces.GameObjects; - -namespace Content.Client.GameObjects.Components.Atmos -{ - [UsedImplicitly] - public class VentVisualizer : AppearanceVisualizer - { - private RSI _ventRSI; - - public override void LoadData(YamlMappingNode node) - { - base.LoadData(node); - - var rsiString = node.GetNode("ventRSI").ToString(); - var rsiPath = SharedSpriteComponent.TextureRoot / rsiString; - try - { - var resourceCache = IoCManager.Resolve(); - var resource = resourceCache.GetResource(rsiPath); - _ventRSI = resource.RSI; - } - catch (Exception e) - { - Logger.ErrorS("go.ventvisualizer", "Unable to load RSI '{0}'. Trace:\n{1}", rsiPath, e); - } - } - - public override void InitializeEntity(IEntity entity) - { - base.InitializeEntity(entity); - if (!entity.TryGetComponent(out ISpriteComponent sprite)) return; - sprite.LayerMapReserveBlank(Layer.VentBase); - var pipeBaseLayer = sprite.LayerMapGet(Layer.VentBase); - sprite.LayerSetRSI(pipeBaseLayer, _ventRSI); - sprite.LayerSetVisible(pipeBaseLayer, true); - } - - public override void OnChangeData(AppearanceComponent component) - { - base.OnChangeData(component); - - if (!component.Owner.TryGetComponent(out ISpriteComponent sprite)) return; - if (!component.TryGetData(VentVisuals.VisualState, out VentVisualState ventVisualState)) return; - - var ventBaseState = "vent"; - ventBaseState += ventVisualState.VentEnabled ? "On" : "Off"; - - var baseVentLayer = sprite.LayerMapGet(Layer.VentBase); - sprite.LayerSetRSI(baseVentLayer, _ventRSI); - sprite.LayerSetState(baseVentLayer, ventBaseState); - sprite.LayerSetVisible(baseVentLayer, true); - } - - private enum Layer : byte - { - VentBase, - } - } -} diff --git a/Content.Client/GameObjects/Components/Body/BodyComponent.cs b/Content.Client/GameObjects/Components/Body/BodyComponent.cs index 524513b372..aa23f069f9 100644 --- a/Content.Client/GameObjects/Components/Body/BodyComponent.cs +++ b/Content.Client/GameObjects/Components/Body/BodyComponent.cs @@ -1,6 +1,4 @@ #nullable enable -using Content.Client.GameObjects.Components.Disposal; -using Content.Client.GameObjects.Components.MedicalScanner; using Content.Shared.GameObjects.Components.Body; using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; @@ -11,16 +9,14 @@ namespace Content.Client.GameObjects.Components.Body [ComponentReference(typeof(IBody))] public class BodyComponent : SharedBodyComponent, IDraggable { - public bool CanDrop(CanDropEventArgs eventArgs) + bool IDraggable.CanStartDrag(StartDragDropEventArgs args) { - if (eventArgs.Target.HasComponent() || - eventArgs.Target.HasComponent() || - eventArgs.Target.HasComponent()) - { - return true; - } + return true; + } - return false; + public bool CanDrop(CanDropEventArgs args) + { + return true; } } } diff --git a/Content.Client/GameObjects/Components/Buckle/BuckleComponent.cs b/Content.Client/GameObjects/Components/Buckle/BuckleComponent.cs index a3020c85bc..660d5517a8 100644 --- a/Content.Client/GameObjects/Components/Buckle/BuckleComponent.cs +++ b/Content.Client/GameObjects/Components/Buckle/BuckleComponent.cs @@ -6,6 +6,7 @@ using Robust.Shared.Interfaces.GameObjects; namespace Content.Client.GameObjects.Components.Buckle { [RegisterComponent] + [ComponentReference(typeof(SharedBuckleComponent))] public class BuckleComponent : SharedBuckleComponent { private bool _buckled; diff --git a/Content.Client/GameObjects/Components/Chemistry/ChemMaster/ChemMasterWindow.cs b/Content.Client/GameObjects/Components/Chemistry/ChemMaster/ChemMasterWindow.cs index 0524a87ff7..2e6fd8d51c 100644 --- a/Content.Client/GameObjects/Components/Chemistry/ChemMaster/ChemMasterWindow.cs +++ b/Content.Client/GameObjects/Components/Chemistry/ChemMaster/ChemMasterWindow.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Linq; using Content.Client.UserInterface.Stylesheets; using Content.Shared.Chemistry; @@ -378,7 +378,7 @@ namespace Content.Client.GameObjects.Components.Chemistry.ChemMaster bufferHBox.AddChild(bufferLabel); var bufferVol = new Label { - Text = $"{state.BufferCurrentVolume}/{state.BufferMaxVolume}", + Text = $"{state.BufferCurrentVolume}", StyleClasses = {StyleNano.StyleClassLabelSecondaryColor} }; bufferHBox.AddChild(bufferVol); diff --git a/Content.Client/GameObjects/Components/Chemistry/SolutionContainerComponent.cs b/Content.Client/GameObjects/Components/Chemistry/SolutionContainerComponent.cs index e52a03c747..cb1e8e61d1 100644 --- a/Content.Client/GameObjects/Components/Chemistry/SolutionContainerComponent.cs +++ b/Content.Client/GameObjects/Components/Chemistry/SolutionContainerComponent.cs @@ -1,4 +1,4 @@ -using Content.Shared.Chemistry; +#nullable enable using Content.Shared.GameObjects.Components.Chemistry; using Robust.Shared.GameObjects; @@ -8,22 +8,6 @@ namespace Content.Client.GameObjects.Components.Chemistry [ComponentReference(typeof(SharedSolutionContainerComponent))] public class SolutionContainerComponent : SharedSolutionContainerComponent { - public override bool CanAddSolution(Solution solution) - { - // TODO CLIENT - return false; - } - public override bool TryAddSolution(Solution solution, bool skipReactionCheck = false, bool skipColor = false) - { - // TODO CLIENT - return false; - } - - public override bool TryRemoveReagent(string reagentId, ReagentUnit quantity) - { - // TODO CLIENT - return false; - } } } diff --git a/Content.Client/GameObjects/Components/ClickableComponent.cs b/Content.Client/GameObjects/Components/ClickableComponent.cs index d55c58affe..5bebcc3940 100644 --- a/Content.Client/GameObjects/Components/ClickableComponent.cs +++ b/Content.Client/GameObjects/Components/ClickableComponent.cs @@ -87,6 +87,8 @@ namespace Content.Client.GameObjects.Components { foreach (var layer in sprite.AllLayers) { + if (!layer.Visible) continue; + if (layer.Texture != null) { if (_clickMapManager.IsOccluding(layer.Texture, diff --git a/Content.Client/GameObjects/Components/ClientEntitySpawnerComponent.cs b/Content.Client/GameObjects/Components/ClientEntitySpawnerComponent.cs new file mode 100644 index 0000000000..3ba2796272 --- /dev/null +++ b/Content.Client/GameObjects/Components/ClientEntitySpawnerComponent.cs @@ -0,0 +1,56 @@ +#nullable enable +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; +using System.Collections.Generic; + +namespace Content.Client.GameObjects.Components +{ + /// + /// Spawns a set of entities on the client only, and removes them when this component is removed. + /// + [RegisterComponent] + public class ClientEntitySpawnerComponent : Component + { + public override string Name => "ClientEntitySpawner"; + + private List _prototypes = default!; + + private List _entity = new(); + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _prototypes, "prototypes", new List { "HVDummyWire" }); + } + + public override void Initialize() + { + base.Initialize(); + SpawnEntities(); + } + + public override void OnRemove() + { + RemoveEntities(); + base.OnRemove(); + } + + private void SpawnEntities() + { + foreach (var proto in _prototypes) + { + var entity = Owner.EntityManager.SpawnEntity(proto, Owner.Transform.Coordinates); + _entity.Add(entity); + } + } + + private void RemoveEntities() + { + foreach (var entity in _entity) + { + Owner.EntityManager.DeleteEntity(entity); + } + } + } +} diff --git a/Content.Client/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs b/Content.Client/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs index fd661f6afa..f3a7376cc3 100644 --- a/Content.Client/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs +++ b/Content.Client/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.GameObjects.Components.Disposal; +using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; namespace Content.Client.GameObjects.Components.Disposal @@ -7,5 +8,9 @@ namespace Content.Client.GameObjects.Components.Disposal [ComponentReference(typeof(SharedDisposalMailingUnitComponent))] public class DisposalMailingUnitComponent : SharedDisposalMailingUnitComponent { + public override bool DragDropOn(DragDropEventArgs eventArgs) + { + return false; + } } } diff --git a/Content.Client/GameObjects/Components/Disposal/DisposalUnitComponent.cs b/Content.Client/GameObjects/Components/Disposal/DisposalUnitComponent.cs index 1e28af762d..5451edc71d 100644 --- a/Content.Client/GameObjects/Components/Disposal/DisposalUnitComponent.cs +++ b/Content.Client/GameObjects/Components/Disposal/DisposalUnitComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.GameObjects.Components.Disposal; +using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; namespace Content.Client.GameObjects.Components.Disposal @@ -7,5 +8,9 @@ namespace Content.Client.GameObjects.Components.Disposal [ComponentReference(typeof(SharedDisposalUnitComponent))] public class DisposalUnitComponent : SharedDisposalUnitComponent { + public override bool DragDropOn(DragDropEventArgs eventArgs) + { + return false; + } } } diff --git a/Content.Client/GameObjects/Components/Explosion/ClusterFlashVisualizer.cs b/Content.Client/GameObjects/Components/Explosion/ClusterFlashVisualizer.cs new file mode 100644 index 0000000000..b366a11fd8 --- /dev/null +++ b/Content.Client/GameObjects/Components/Explosion/ClusterFlashVisualizer.cs @@ -0,0 +1,40 @@ +using Content.Shared.GameObjects.Components.Explosion; +using JetBrains.Annotations; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; +using Robust.Shared.Utility; +using YamlDotNet.RepresentationModel; + +namespace Content.Client.GameObjects.Components.Explosion +{ + [UsedImplicitly] + // ReSharper disable once InconsistentNaming + public class ClusterFlashVisualizer : AppearanceVisualizer + { + private string _state; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + if (node.TryGetNode("state", out var state)) + { + _state = state.AsString(); + } + } + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (!component.Owner.TryGetComponent(out var sprite)) + { + return; + } + + if (component.TryGetData(ClusterFlashVisuals.GrenadesCounter, out int grenadesCounter)) + { + sprite.LayerSetState(0, $"{_state}-{grenadesCounter}"); + } + } + } +} diff --git a/Content.Client/GameObjects/Components/HUD/Inventory/ClientInventoryComponent.cs b/Content.Client/GameObjects/Components/HUD/Inventory/ClientInventoryComponent.cs index 97ff7454e5..a7ac7c22ad 100644 --- a/Content.Client/GameObjects/Components/HUD/Inventory/ClientInventoryComponent.cs +++ b/Content.Client/GameObjects/Components/HUD/Inventory/ClientInventoryComponent.cs @@ -4,6 +4,7 @@ using System.Diagnostics.CodeAnalysis; using System.Linq; using Content.Client.GameObjects.Components.Clothing; using Content.Shared.GameObjects.Components.Inventory; +using Content.Shared.GameObjects.Components.Movement; using Content.Shared.Preferences.Appearance; using Robust.Client.GameObjects; using Robust.Client.Interfaces.GameObjects.Components; @@ -78,6 +79,46 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory return item != null && _slots.Values.Any(e => e == item); } + public override float WalkSpeedModifier + { + get + { + var mod = 1f; + foreach (var slot in _slots.Values) + { + if (slot != null) + { + foreach (var modifier in slot.GetAllComponents()) + { + mod *= modifier.WalkSpeedModifier; + } + } + } + + return mod; + } + } + + public override float SprintSpeedModifier + { + get + { + var mod = 1f; + foreach (var slot in _slots.Values) + { + if (slot != null) + { + foreach (var modifier in slot.GetAllComponents()) + { + mod *= modifier.SprintSpeedModifier; + } + } + } + + return mod; + } + } + public override void HandleComponentState(ComponentState? curState, ComponentState? nextState) { base.HandleComponentState(curState, nextState); @@ -117,6 +158,11 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory _slots.Remove(slot); } } + + if (Owner.TryGetComponent(out MovementSpeedModifierComponent? mod)) + { + mod.RefreshMovementSpeedModifiers(); + } } private void _setSlot(Slots slot, IEntity entity) diff --git a/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs b/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs index 135b9ca531..ecacae0d2b 100644 --- a/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs +++ b/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs @@ -30,7 +30,8 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory private ItemSlotButton _hudButtonBelt; private ItemSlotButton _hudButtonBack; private ItemSlotButton _hudButtonId; - private Control _quickButtonsContainer; + private Control _rightQuickButtonsContainer; + private Control _leftQuickButtonsContainer; public HumanInventoryInterfaceController(ClientInventoryComponent owner) : base(owner) { @@ -69,16 +70,26 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory AddButton(out _hudButtonBelt, Slots.BELT, "belt"); AddButton(out _hudButtonId, Slots.IDCARD, "id"); - _quickButtonsContainer = new HBoxContainer + _leftQuickButtonsContainer = new HBoxContainer { Children = { _hudButtonId, - _hudButtonBelt, _hudButtonBack, + _hudButtonBelt, + }, + SeparationOverride = 5 + }; + _rightQuickButtonsContainer = new HBoxContainer + { + Children = + { _hudButtonPocket1, _hudButtonPocket2, - } + // keeps this "balanced" with the left, so the hands will appear perfectly in the center + new Control{CustomMinimumSize = (64, 64)} + }, + SeparationOverride = 5 }; } @@ -161,7 +172,8 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory { base.PlayerAttached(); - GameHud.InventoryQuickButtonContainer.AddChild(_quickButtonsContainer); + GameHud.RightInventoryQuickButtonContainer.AddChild(_rightQuickButtonsContainer); + GameHud.LeftInventoryQuickButtonContainer.AddChild(_leftQuickButtonsContainer); // Update all the buttons to make sure they check out. @@ -183,7 +195,8 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory { base.PlayerDetached(); - GameHud.InventoryQuickButtonContainer.RemoveChild(_quickButtonsContainer); + GameHud.RightInventoryQuickButtonContainer.RemoveChild(_rightQuickButtonsContainer); + GameHud.LeftInventoryQuickButtonContainer.RemoveChild(_leftQuickButtonsContainer); foreach (var (slot, list) in _inventoryButtons) { @@ -197,7 +210,7 @@ namespace Content.Client.GameObjects.Components.HUD.Inventory private class HumanInventoryWindow : SS14Window { private const int ButtonSize = 64; - private const int ButtonSeparation = 2; + private const int ButtonSeparation = 4; private const int RightSeparation = 2; public IReadOnlyDictionary Buttons { get; } diff --git a/Content.Client/GameObjects/Components/MagbootsComponent.cs b/Content.Client/GameObjects/Components/MagbootsComponent.cs new file mode 100644 index 0000000000..4beda719cc --- /dev/null +++ b/Content.Client/GameObjects/Components/MagbootsComponent.cs @@ -0,0 +1,22 @@ +using Content.Shared.GameObjects.Components; +using Robust.Shared.GameObjects; + +#nullable enable + +namespace Content.Client.GameObjects.Components +{ + [RegisterComponent] + public sealed class MagbootsComponent : SharedMagbootsComponent + { + public override bool On { get; set; } + + public override void HandleComponentState(ComponentState? curState, ComponentState? nextState) + { + if (curState is not MagbootsComponentState compState) + return; + + On = compState.On; + OnChanged(); + } + } +} diff --git a/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerComponent.cs b/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerComponent.cs index e48f4cc14b..6ba483832a 100644 --- a/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerComponent.cs +++ b/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.GameObjects.Components.Medical; +using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; namespace Content.Client.GameObjects.Components.MedicalScanner @@ -7,5 +8,9 @@ namespace Content.Client.GameObjects.Components.MedicalScanner [ComponentReference(typeof(SharedMedicalScannerComponent))] public class MedicalScannerComponent : SharedMedicalScannerComponent { + public override bool DragDropOn(DragDropEventArgs eventArgs) + { + return false; + } } } diff --git a/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerVisualizer.cs b/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerVisualizer.cs index 9d0305dbd0..2f3bf92fda 100644 --- a/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerVisualizer.cs +++ b/Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerVisualizer.cs @@ -24,12 +24,12 @@ namespace Content.Client.GameObjects.Components.MedicalScanner { switch (status) { - case Off: return "scanner_off"; - case Open: return "scanner_open"; - case Red: return "scanner_red"; - case Death: return "scanner_death"; - case Green: return "scanner_green"; - case Yellow: return "scanner_yellow"; + case Off: return "closed"; + case Open: return "open"; + case Red: return "closed"; + case Death: return "closed"; + case Green: return "occupied"; + case Yellow: return "closed"; default: throw new ArgumentOutOfRangeException(nameof(status), status, "unknown MedicalScannerStatus"); } @@ -39,12 +39,12 @@ namespace Content.Client.GameObjects.Components.MedicalScanner { switch (status) { - case Off: return "scanner_terminal_off"; - case Open: return "scanner_terminal_blue"; - case Red: return "scanner_terminal_red"; - case Death: return "scanner_terminal_dead"; - case Green: return "scanner_terminal_green"; - case Yellow: return "scanner_terminal_blue"; + case Off: return "off_unlit"; + case Open: return "idle_unlit"; + case Red: return "red_unlit"; + case Death: return "red_unlit"; + case Green: return "idle_unlit"; + case Yellow: return "maint_unlit"; default: throw new ArgumentOutOfRangeException(nameof(status), status, "unknown MedicalScannerStatus"); } diff --git a/Content.Client/GameObjects/Components/Mobs/CameraRecoilComponent.cs b/Content.Client/GameObjects/Components/Mobs/CameraRecoilComponent.cs index 2d4552122b..009f0c98bc 100644 --- a/Content.Client/GameObjects/Components/Mobs/CameraRecoilComponent.cs +++ b/Content.Client/GameObjects/Components/Mobs/CameraRecoilComponent.cs @@ -30,8 +30,7 @@ namespace Content.Client.GameObjects.Components.Mobs private Vector2 _currentKick; private float _lastKickTime; - [ComponentDependency] - private readonly EyeComponent? _eye; + [ComponentDependency] private readonly EyeComponent? _eye = null; // Basically I needed a way to chain this effect for the attack lunge animation. // Sorry! diff --git a/Content.Client/GameObjects/Components/Mobs/ClientActionsComponent.cs b/Content.Client/GameObjects/Components/Mobs/ClientActionsComponent.cs index 2040dcbbf1..0ccaf31299 100644 --- a/Content.Client/GameObjects/Components/Mobs/ClientActionsComponent.cs +++ b/Content.Client/GameObjects/Components/Mobs/ClientActionsComponent.cs @@ -184,8 +184,10 @@ namespace Content.Client.GameObjects.Components.Mobs // only do something for actual target-based actions if (_ui?.SelectingTargetFor?.Action == null || - (_ui.SelectingTargetFor.Action.BehaviorType != BehaviorType.TargetEntity && - _ui.SelectingTargetFor.Action.BehaviorType != BehaviorType.TargetPoint)) return false; + (!_ui.SelectingTargetFor.Action.IsTargetAction)) return false; + + // do nothing if we know it's on cooldown + if (_ui.SelectingTargetFor.IsOnCooldown) return false; var attempt = _ui.SelectingTargetFor.ActionAttempt(); if (attempt == null) @@ -217,6 +219,13 @@ namespace Content.Client.GameObjects.Components.Mobs } return true; } + // we are supposed to target an entity but we didn't click it + case BehaviorType.TargetEntity when args.EntityUid == EntityUid.Invalid: + { + if (attempt.Action.DeselectWhenEntityNotClicked) + _ui.StopTargeting(); + return false; + } default: _ui.StopTargeting(); return false; diff --git a/Content.Client/GameObjects/Components/Mobs/StunnableComponent.cs b/Content.Client/GameObjects/Components/Mobs/StunnableComponent.cs index 8fa3e2949d..11d38ccd70 100644 --- a/Content.Client/GameObjects/Components/Mobs/StunnableComponent.cs +++ b/Content.Client/GameObjects/Components/Mobs/StunnableComponent.cs @@ -12,12 +12,6 @@ namespace Content.Client.GameObjects.Components.Mobs [ComponentReference(typeof(SharedStunnableComponent))] public class StunnableComponent : SharedStunnableComponent { - protected override void OnInteractHand() - { - EntitySystem.Get() - .Play("/Audio/Effects/thudswoosh.ogg", Owner, AudioHelpers.WithVariation(0.25f)); - } - public override void HandleComponentState(ComponentState? curState, ComponentState? nextState) { base.HandleComponentState(curState, nextState); diff --git a/Content.Client/GameObjects/Components/Movement/ClimbableComponent.cs b/Content.Client/GameObjects/Components/Movement/ClimbableComponent.cs index fe92dc1896..311da1407e 100644 --- a/Content.Client/GameObjects/Components/Movement/ClimbableComponent.cs +++ b/Content.Client/GameObjects/Components/Movement/ClimbableComponent.cs @@ -1,5 +1,8 @@ using Content.Shared.GameObjects.Components.Movement; +using Content.Shared.Interfaces.GameObjects.Components; +using Content.Shared.Utility; using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; namespace Content.Client.GameObjects.Components.Movement { @@ -7,6 +10,22 @@ namespace Content.Client.GameObjects.Components.Movement [ComponentReference(typeof(IClimbable))] public class ClimbableComponent : SharedClimbableComponent { - + public override bool CanDragDropOn(DragDropEventArgs eventArgs) + { + if (!base.CanDragDropOn(eventArgs)) + return false; + + var user = eventArgs.User; + var target = eventArgs.Target; + var dragged = eventArgs.Dragged; + bool Ignored(IEntity entity) => entity == target || entity == user || entity == dragged; + + return user.InRangeUnobstructed(target, Range, predicate: Ignored) && user.InRangeUnobstructed(dragged, Range, predicate: Ignored); + } + + public override bool DragDropOn(DragDropEventArgs eventArgs) + { + return false; + } } } diff --git a/Content.Client/GameObjects/Components/Movement/ClimbingComponent.cs b/Content.Client/GameObjects/Components/Movement/ClimbingComponent.cs index 7db57f929e..92a76edd1f 100644 --- a/Content.Client/GameObjects/Components/Movement/ClimbingComponent.cs +++ b/Content.Client/GameObjects/Components/Movement/ClimbingComponent.cs @@ -4,6 +4,7 @@ using Robust.Shared.GameObjects; namespace Content.Client.GameObjects.Components.Movement { [RegisterComponent] + [ComponentReference(typeof(SharedClimbingComponent))] public class ClimbingComponent : SharedClimbingComponent { public override void HandleComponentState(ComponentState curState, ComponentState nextState) diff --git a/Content.Client/GameObjects/Components/Nutrition/BurnStateVisualizer.cs b/Content.Client/GameObjects/Components/Nutrition/BurnStateVisualizer.cs new file mode 100644 index 0000000000..d70adb82d6 --- /dev/null +++ b/Content.Client/GameObjects/Components/Nutrition/BurnStateVisualizer.cs @@ -0,0 +1,66 @@ +using Content.Shared.GameObjects.Components; +using JetBrains.Annotations; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; +using Robust.Shared.Utility; +using YamlDotNet.RepresentationModel; + +namespace Content.Client.GameObjects.Components.Nutrition +{ + [UsedImplicitly] + public class BurnStateVisualizer : AppearanceVisualizer + { + private string _burntIcon = "burnt-icon"; + private string _litIcon = "lit-icon"; + private string _unlitIcon = "icon"; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + + if (node.TryGetNode("unlitIcon", out var unlitIcon)) + { + _unlitIcon = unlitIcon.AsString(); + } + + if (node.TryGetNode("litIcon", out var litIcon)) + { + _litIcon = litIcon.AsString(); + } + + if (node.TryGetNode("burntIcon", out var burntIcon)) + { + _burntIcon = burntIcon.AsString(); + } + } + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (component.TryGetData(SmokingVisuals.Smoking, out var smoking)) + { + SetState(component, smoking); + } + } + + private void SetState(AppearanceComponent component, SharedBurningStates burnState) + { + if (component.Owner.TryGetComponent(out var sprite)) + { + switch (burnState) + { + case SharedBurningStates.Lit: + sprite.LayerSetState(0, _litIcon); + break; + case SharedBurningStates.Burnt: + sprite.LayerSetState(0, _burntIcon); + break; + default: + sprite.LayerSetState(0, _unlitIcon); + break; + } + } + } + } +} \ No newline at end of file diff --git a/Content.Client/GameObjects/Components/Observer/AcceptCloningEui.cs b/Content.Client/GameObjects/Components/Observer/AcceptCloningEui.cs new file mode 100644 index 0000000000..f274871f46 --- /dev/null +++ b/Content.Client/GameObjects/Components/Observer/AcceptCloningEui.cs @@ -0,0 +1,41 @@ +using Content.Client.Eui; +using Content.Shared.GameObjects.Components.Medical; +using Content.Shared.GameObjects.Components.Observer; +using JetBrains.Annotations; + +namespace Content.Client.GameObjects.Components.Observer +{ + [UsedImplicitly] + public class AcceptCloningEui : BaseEui + { + private readonly AcceptCloningWindow _window; + + public AcceptCloningEui() + { + _window = new AcceptCloningWindow(); + + _window.DenyButton.OnPressed += _ => + { + SendMessage(new AcceptCloningChoiceMessage(AcceptCloningUiButton.Deny)); + _window.Close(); + }; + + _window.AcceptButton.OnPressed += _ => + { + SendMessage(new AcceptCloningChoiceMessage(AcceptCloningUiButton.Accept)); + _window.Close(); + }; + } + + public override void Opened() + { + _window.OpenCentered(); + } + + public override void Closed() + { + _window.Close(); + } + + } +} diff --git a/Content.Client/GameObjects/Components/AcceptCloningWindow.cs b/Content.Client/GameObjects/Components/Observer/AcceptCloningWindow.cs similarity index 71% rename from Content.Client/GameObjects/Components/AcceptCloningWindow.cs rename to Content.Client/GameObjects/Components/Observer/AcceptCloningWindow.cs index 1731cc9676..ef1f39b881 100644 --- a/Content.Client/GameObjects/Components/AcceptCloningWindow.cs +++ b/Content.Client/GameObjects/Components/Observer/AcceptCloningWindow.cs @@ -1,14 +1,15 @@ #nullable enable +using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; using Robust.Client.UserInterface.CustomControls; using Robust.Shared.Localization; -namespace Content.Client.GameObjects.Components +namespace Content.Client.GameObjects.Components.Observer { public sealed class AcceptCloningWindow : SS14Window { public readonly Button DenyButton; - public readonly Button ConfirmButton; + public readonly Button AcceptButton; public AcceptCloningWindow() { @@ -23,18 +24,25 @@ namespace Content.Client.GameObjects.Components { Children = { - (new Label + (new Label() { - Text = Loc.GetString("You are being cloned! Transfer your soul to the clone body?") + Text = Loc.GetString("You are being cloned!\nTransfer your soul to the clone body?") }), new HBoxContainer { + Align = BoxContainer.AlignMode.Center, Children = { - (ConfirmButton = new Button + (AcceptButton = new Button { Text = Loc.GetString("Yes"), }), + + (new Control() + { + CustomMinimumSize = (20, 0) + }), + (DenyButton = new Button { Text = Loc.GetString("No"), diff --git a/Content.Client/GameObjects/Components/Observer/GhostComponent.cs b/Content.Client/GameObjects/Components/Observer/GhostComponent.cs index 956dbe6e89..8af023096f 100644 --- a/Content.Client/GameObjects/Components/Observer/GhostComponent.cs +++ b/Content.Client/GameObjects/Components/Observer/GhostComponent.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using Content.Client.Interfaces.Chat; using Content.Client.UserInterface; using Content.Shared.GameObjects.Components.Observer; using Robust.Client.GameObjects; @@ -19,6 +20,7 @@ namespace Content.Client.GameObjects.Components.Observer [Dependency] private readonly IGameHud _gameHud = default!; [Dependency] private readonly IPlayerManager _playerManager = default!; [Dependency] private readonly IComponentManager _componentManager = default!; + [Dependency] private readonly IChatManager _chatManager = default!; public List WarpNames = new(); public Dictionary PlayerNames = new(); @@ -83,6 +85,7 @@ namespace Content.Client.GameObjects.Components.Observer _gameHud.HandsContainer.AddChild(_gui); SetGhostVisibility(true); _isAttached = true; + _chatManager.ToggleDeadChatButtonVisibility(true); break; @@ -90,6 +93,7 @@ namespace Content.Client.GameObjects.Components.Observer _gui!.Parent?.RemoveChild(_gui); SetGhostVisibility(false); _isAttached = false; + _chatManager.ToggleDeadChatButtonVisibility(false); break; } } diff --git a/Content.Client/GameObjects/Components/PlaceableSurfaceComponent.cs b/Content.Client/GameObjects/Components/PlaceableSurfaceComponent.cs index 090c187e2a..ff207ce795 100644 --- a/Content.Client/GameObjects/Components/PlaceableSurfaceComponent.cs +++ b/Content.Client/GameObjects/Components/PlaceableSurfaceComponent.cs @@ -1,6 +1,7 @@ #nullable enable using Content.Shared.GameObjects.Components; using Robust.Shared.GameObjects; +using Robust.Shared.Maths; namespace Content.Client.GameObjects.Components { @@ -9,6 +10,8 @@ namespace Content.Client.GameObjects.Components public class PlaceableSurfaceComponent : SharedPlaceableSurfaceComponent { private bool _isPlaceable; + private bool _placeCentered; + private Vector2 _positionOffset; public override bool IsPlaceable { @@ -22,7 +25,36 @@ namespace Content.Client.GameObjects.Components _isPlaceable = value; - Dirty(); + } + } + + public override bool PlaceCentered + { + get => _placeCentered; + set + { + if (_placeCentered == value) + { + return; + } + + _placeCentered = value; + + } + } + + public override Vector2 PositionOffset + { + get => _positionOffset; + set + { + if (_positionOffset.EqualsApprox(value)) + { + return; + } + + _positionOffset = value; + } } @@ -36,6 +68,8 @@ namespace Content.Client.GameObjects.Components } _isPlaceable = state.IsPlaceable; + _placeCentered = state.PlaceCentered; + _positionOffset = state.PositionOffset; } } } diff --git a/Content.Client/GameObjects/Components/Strap/StrapComponent.cs b/Content.Client/GameObjects/Components/Strap/StrapComponent.cs index 7da4776258..36e086f560 100644 --- a/Content.Client/GameObjects/Components/Strap/StrapComponent.cs +++ b/Content.Client/GameObjects/Components/Strap/StrapComponent.cs @@ -1,5 +1,6 @@ #nullable enable using Content.Shared.GameObjects.Components.Strap; +using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; namespace Content.Client.GameObjects.Components.Strap @@ -8,5 +9,9 @@ namespace Content.Client.GameObjects.Components.Strap [ComponentReference(typeof(SharedStrapComponent))] public class StrapComponent : SharedStrapComponent { + public override bool DragDropOn(DragDropEventArgs eventArgs) + { + return false; + } } } diff --git a/Content.Client/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs b/Content.Client/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs index 503aceaf2d..c3753d94bc 100644 --- a/Content.Client/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs +++ b/Content.Client/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs @@ -6,14 +6,11 @@ using Content.Shared.GameObjects.Components.Suspicion; using Robust.Client.GameObjects; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.Interfaces.Graphics.Overlays; -using Robust.Client.Interfaces.Input; using Robust.Client.Interfaces.ResourceManagement; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.Interfaces.Network; using Robust.Shared.IoC; -using Robust.Shared.Players; -using Robust.Shared.Prototypes; +using Robust.Shared.ViewVariables; namespace Content.Client.GameObjects.Components.Suspicion { @@ -28,6 +25,7 @@ namespace Content.Client.GameObjects.Components.Suspicion private SuspicionGui? _gui; private string? _role; private bool? _antagonist; + private bool _overlayActive; public string? Role { @@ -67,37 +65,8 @@ namespace Content.Client.GameObjects.Components.Suspicion } } - public HashSet Allies { get; } = new(); - - private bool AddAlly(EntityUid ally) - { - if (!Allies.Add(ally)) - { - return false; - } - - if (!_overlayManager.TryGetOverlay(nameof(TraitorOverlay), out var overlay)) - { - return false; - } - - return overlay.AddAlly(ally); - } - - private bool RemoveAlly(EntityUid ally) - { - if (!Allies.Remove(ally)) - { - return false; - } - - if (!_overlayManager.TryGetOverlay(nameof(TraitorOverlay), out var overlay)) - { - return false; - } - - return overlay.RemoveAlly(ally); - } + [ViewVariables] + public List<(string name, EntityUid uid)> Allies { get; } = new(); private void AddTraitorOverlay() { @@ -106,12 +75,18 @@ namespace Content.Client.GameObjects.Components.Suspicion return; } - var overlay = new TraitorOverlay(Owner, Owner.EntityManager, _resourceCache, _eyeManager); + _overlayActive = true; + var overlay = new TraitorOverlay(Owner.EntityManager, _resourceCache, _eyeManager); _overlayManager.AddOverlay(overlay); } private void RemoveTraitorOverlay() { + if (!_overlayActive) + { + return; + } + _overlayManager.RemoveOverlay(nameof(TraitorOverlay)); } @@ -126,6 +101,8 @@ namespace Content.Client.GameObjects.Components.Suspicion Role = state.Role; Antagonist = state.Antagonist; + Allies.Clear(); + Allies.AddRange(state.Allies); } public override void HandleMessage(ComponentMessage message, IComponent? component) @@ -160,36 +137,6 @@ namespace Content.Client.GameObjects.Components.Suspicion } } - public override void HandleNetworkMessage(ComponentMessage message, INetChannel netChannel, ICommonSession? session = null) - { - base.HandleNetworkMessage(message, netChannel, session); - - switch (message) - { - case SuspicionAlliesMessage msg: - { - Allies.Clear(); - - foreach (var uid in msg.Allies) - { - AddAlly(uid); - } - - break; - } - case SuspicionAllyAddedMessage msg: - { - AddAlly(msg.Ally); - break; - } - case SuspicionAllyRemovedMessage msg: - { - RemoveAlly(msg.Ally); - break; - } - } - } - public override void OnRemove() { base.OnRemove(); diff --git a/Content.Client/GameObjects/Components/Suspicion/TraitorOverlay.cs b/Content.Client/GameObjects/Components/Suspicion/TraitorOverlay.cs index 761d654b36..414582fdc9 100644 --- a/Content.Client/GameObjects/Components/Suspicion/TraitorOverlay.cs +++ b/Content.Client/GameObjects/Components/Suspicion/TraitorOverlay.cs @@ -1,14 +1,14 @@ -using System.Collections.Generic; using Content.Shared.GameObjects.EntitySystems; using Robust.Client.Graphics; using Robust.Client.Graphics.Drawing; using Robust.Client.Graphics.Overlays; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.Interfaces.ResourceManagement; +using Robust.Client.Player; using Robust.Client.ResourceManagement; -using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Maths; @@ -18,37 +18,25 @@ namespace Content.Client.GameObjects.Components.Suspicion { private readonly IEntityManager _entityManager; private readonly IEyeManager _eyeManager; + private readonly IPlayerManager _playerManager; public override OverlaySpace Space => OverlaySpace.ScreenSpace; private readonly Font _font; - private readonly IEntity _user; - private readonly HashSet _allies = new(); private readonly string _traitorText = Loc.GetString("Traitor"); public TraitorOverlay( - IEntity user, IEntityManager entityManager, IResourceCache resourceCache, IEyeManager eyeManager) : base(nameof(TraitorOverlay)) { + _playerManager = IoCManager.Resolve(); + _entityManager = entityManager; _eyeManager = eyeManager; _font = new VectorFont(resourceCache.GetResource("/Fonts/NotoSans/NotoSans-Regular.ttf"), 10); - - _user = user; - } - - public bool AddAlly(EntityUid ally) - { - return _allies.Add(ally); - } - - public bool RemoveAlly(EntityUid ally) - { - return _allies.Remove(ally); } protected override void Draw(DrawingHandleBase handle, OverlaySpace currentSpace) @@ -65,23 +53,29 @@ namespace Content.Client.GameObjects.Components.Suspicion { var viewport = _eyeManager.GetWorldViewport(); - foreach (var uid in _allies) + var ent = _playerManager.LocalPlayer?.ControlledEntity; + if (ent == null || ent.TryGetComponent(out SuspicionRoleComponent sus) != true) + { + return; + } + + foreach (var (_, uid) in sus.Allies) { // Otherwise the entity can not exist yet if (!_entityManager.TryGetEntity(uid, out var ally)) { - return; + continue; } if (!ally.TryGetComponent(out IPhysicsComponent physics)) { - return; + continue; } - if (!ExamineSystemShared.InRangeUnOccluded(_user.Transform.MapPosition, ally.Transform.MapPosition, 15, - entity => entity == _user || entity == ally)) + if (!ExamineSystemShared.InRangeUnOccluded(ent.Transform.MapPosition, ally.Transform.MapPosition, 15, + entity => entity == ent || entity == ally)) { - return; + continue; } // all entities have a TransformComponent diff --git a/Content.Client/GameObjects/Components/Watercloset/ToiletVisualizer.cs b/Content.Client/GameObjects/Components/Watercloset/ToiletVisualizer.cs new file mode 100644 index 0000000000..f776b68e75 --- /dev/null +++ b/Content.Client/GameObjects/Components/Watercloset/ToiletVisualizer.cs @@ -0,0 +1,26 @@ +#nullable enable +using Content.Shared.GameObjects.Components.Watercloset; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; + +namespace Content.Client.GameObjects.Components.Watercloset +{ + public class ToiletVisualizer : AppearanceVisualizer + { + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (!component.Owner.TryGetComponent(out ISpriteComponent? sprite)) return; + + if (!component.TryGetData(ToiletVisuals.LidOpen, out bool lidOpen)) lidOpen = false; + if (!component.TryGetData(ToiletVisuals.SeatUp, out bool seatUp)) seatUp = false; + + var state = string.Format("{0}_toilet_{1}", + lidOpen ? "open" : "closed", + seatUp ? "seat_up" : "seat_down"); + + sprite.LayerSetState(0, state); + } + } +} diff --git a/Content.Client/GameObjects/EntitySystems/ChemicalReactionSystem.cs b/Content.Client/GameObjects/EntitySystems/ChemicalReactionSystem.cs new file mode 100644 index 0000000000..f58526eec0 --- /dev/null +++ b/Content.Client/GameObjects/EntitySystems/ChemicalReactionSystem.cs @@ -0,0 +1,9 @@ +using Content.Shared.GameObjects.EntitySystems; + +namespace Content.Client.GameObjects.EntitySystems.NewFolder +{ + public class ChemicalReactionSystem : SharedChemicalReactionSystem + { + + } +} diff --git a/Content.Client/GameObjects/EntitySystems/DoAfter/DoAfterGui.cs b/Content.Client/GameObjects/EntitySystems/DoAfter/DoAfterGui.cs index d0ca66107b..ec1bd55d96 100644 --- a/Content.Client/GameObjects/EntitySystems/DoAfter/DoAfterGui.cs +++ b/Content.Client/GameObjects/EntitySystems/DoAfter/DoAfterGui.cs @@ -149,6 +149,16 @@ namespace Content.Client.GameObjects.EntitySystems.DoAfter if (doAfters.Count == 0) return; + if (_eyeManager.CurrentMap != AttachedEntity.Transform.MapID) + { + Visible = false; + return; + } + else + { + Visible = true; + } + // Set position ready for 2nd+ frames. var screenCoordinates = _eyeManager.CoordinatesToScreen(AttachedEntity.Transform.Coordinates); _playerPosition = new ScreenCoordinates(screenCoordinates.X / UIScale, screenCoordinates.Y / UIScale); diff --git a/Content.Client/GameObjects/EntitySystems/DragDropSystem.cs b/Content.Client/GameObjects/EntitySystems/DragDropSystem.cs index 97c8aa37dd..ab4e1d601c 100644 --- a/Content.Client/GameObjects/EntitySystems/DragDropSystem.cs +++ b/Content.Client/GameObjects/EntitySystems/DragDropSystem.cs @@ -1,24 +1,32 @@ +#nullable enable using System.Collections.Generic; -using System.Linq; using Content.Client.State; using Content.Client.Utility; -using Content.Shared.GameObjects; using Content.Shared.GameObjects.EntitySystemMessages; using Content.Shared.GameObjects.EntitySystems; +using Content.Shared.Interfaces; using Content.Shared.Interfaces.GameObjects.Components; +using Content.Shared.Utility; using JetBrains.Annotations; using Robust.Client.GameObjects; using Robust.Client.GameObjects.EntitySystems; using Robust.Client.Graphics.Shaders; +using Robust.Client.Interfaces.GameObjects.Components; using Robust.Client.Interfaces.Graphics.ClientEye; +using Robust.Client.Interfaces.Input; using Robust.Client.Interfaces.State; +using Robust.Client.Player; +using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Input; using Robust.Shared.Input.Binding; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; +using Robust.Shared.Localization; using Robust.Shared.Log; +using Robust.Shared.Maths; using Robust.Shared.Prototypes; +using DrawDepth = Content.Shared.GameObjects.DrawDepth; namespace Content.Client.GameObjects.EntitySystems { @@ -29,7 +37,9 @@ namespace Content.Client.GameObjects.EntitySystems public class DragDropSystem : EntitySystem { [Dependency] private readonly IStateManager _stateManager = default!; + [Dependency] private readonly IInputManager _inputManager = default!; [Dependency] private readonly IEyeManager _eyeManager = default!; + [Dependency] private readonly IPlayerManager _playerManager = default!; [Dependency] private readonly IPrototypeManager _prototypeManager = default!; // how often to recheck possible targets (prevents calling expensive @@ -45,9 +55,11 @@ namespace Content.Client.GameObjects.EntitySystems private const string ShaderDropTargetOutOfRange = "SelectionOutline"; // entity performing the drag action - private IEntity _dragger; + + private IEntity? _dragger; private readonly List _draggables = new(); - private IEntity _dragShadow; + private IEntity? _dragShadow; + // time since mouse down over the dragged entity private float _mouseDownTime; // how much time since last recheck of all possible targets @@ -58,14 +70,14 @@ namespace Content.Client.GameObjects.EntitySystems // can ignore any events sent to this system private bool _isReplaying; - private DragDropHelper _dragDropHelper; + private DragDropHelper _dragDropHelper = default!; - private ShaderInstance _dropTargetInRangeShader; - private ShaderInstance _dropTargetOutOfRangeShader; - private SharedInteractionSystem _interactionSystem; - private InputSystem _inputSystem; + private ShaderInstance? _dropTargetInRangeShader; + private ShaderInstance? _dropTargetOutOfRangeShader; + private SharedInteractionSystem _interactionSystem = default!; + private InputSystem _inputSystem = default!; - private readonly List _highlightedSprites = new(); + private readonly List _highlightedSprites = new(); public override void Initialize() { @@ -112,7 +124,7 @@ namespace Content.Client.GameObjects.EntitySystems private bool OnUseMouseDown(in PointerInputCmdHandler.PointerInputCmdArgs args) { - var dragger = args.Session.AttachedEntity; + var dragger = args.Session?.AttachedEntity; // cancel any current dragging if there is one (shouldn't be because they would've had to have lifted // the mouse, canceling the drag, but just being cautious) _dragDropHelper.EndDrag(); @@ -130,7 +142,7 @@ namespace Content.Client.GameObjects.EntitySystems var canDrag = false; foreach (var draggable in entity.GetAllComponents()) { - var dragEventArgs = new StartDragDropEventArgs(args.Session.AttachedEntity, entity); + var dragEventArgs = new StartDragDropEventArgs(dragger, entity); if (draggable.CanStartDrag(dragEventArgs)) { _draggables.Add(draggable); @@ -156,7 +168,6 @@ namespace Content.Client.GameObjects.EntitySystems return false; } - private bool OnBeginDrag() { if (_dragDropHelper.Dragged == null || _dragDropHelper.Dragged.Deleted) @@ -183,6 +194,7 @@ namespace Content.Client.GameObjects.EntitySystems } HighlightTargets(); + EntityManager.EventBus.RaiseEvent(EventSource.Local, new OutlineToggleMessage(false)); // drag initiated return true; @@ -209,6 +221,9 @@ namespace Content.Client.GameObjects.EntitySystems var mousePos = _eyeManager.ScreenToMap(_dragDropHelper.MouseScreenPosition); // TODO: would use MapPosition instead if it had a setter, but it has no setter. // is that intentional, or should we add a setter for Transform.MapPosition? + if (_dragShadow == null) + return false; + _dragShadow.Transform.WorldPosition = mousePos.Position; _targetRecheckTime += frameTime; @@ -229,6 +244,7 @@ namespace Content.Client.GameObjects.EntitySystems EntityManager.DeleteEntity(_dragShadow); } + EntityManager.EventBus.RaiseEvent(EventSource.Local, new OutlineToggleMessage(true)); _dragShadow = null; _draggables.Clear(); _dragger = null; @@ -238,7 +254,7 @@ namespace Content.Client.GameObjects.EntitySystems private bool OnUseMouseUp(in PointerInputCmdHandler.PointerInputCmdArgs args) { - if (!_dragDropHelper.IsDragging) + if (_dragDropHelper.IsDragging == false) { // haven't started the drag yet, quick mouseup, definitely treat it as a normal click by // replaying the original cmd @@ -251,40 +267,68 @@ namespace Content.Client.GameObjects.EntitySystems var adjustedInputMsg = new FullInputCmdMessage(args.OriginalMessage.Tick, args.OriginalMessage.SubTick, replayMsg.InputFunctionId, replayMsg.State, replayMsg.Coordinates, replayMsg.ScreenCoordinates, replayMsg.Uid); - _inputSystem.HandleInputCommand(savedValue.Session, EngineKeyFunctions.Use, - adjustedInputMsg, true); + if (savedValue.Session != null) + { + _inputSystem.HandleInputCommand(savedValue.Session, EngineKeyFunctions.Use, adjustedInputMsg, true); + } + _isReplaying = false; } _dragDropHelper.EndDrag(); return false; } - // now when ending the drag, we will not replay the click because - // by this time we've determined the input was actually a drag attempt + if (_dragger == null) + { + _dragDropHelper.EndDrag(); + return false; + } + // now when ending the drag, we will not replay the click because + // by this time we've determined the input was actually a drag attempt + var range = (args.Coordinates.ToMapPos(EntityManager) - _dragger.Transform.MapPosition.Position).Length + 0.01f; // tell the server we are dropping if we are over a valid drop target in range. // We don't use args.EntityUid here because drag interactions generally should // work even if there's something "on top" of the drop target if (!_interactionSystem.InRangeUnobstructed(_dragger, - args.Coordinates, ignoreInsideBlocker: true)) + args.Coordinates, range, ignoreInsideBlocker: true)) { _dragDropHelper.EndDrag(); return false; } var entities = GameScreenBase.GetEntitiesUnderPosition(_stateManager, args.Coordinates); + var outOfRange = false; foreach (var entity in entities) { // check if it's able to be dropped on by current dragged entity var dropArgs = new DragDropEventArgs(_dragger, args.Coordinates, _dragDropHelper.Dragged, entity); + var valid = true; + var anyDragDrop = false; + var dragDropOn = new List(); + + foreach (var comp in entity.GetAllComponents()) + { + anyDragDrop = true; + + if (!comp.CanDragDropOn(dropArgs)) + { + valid = false; + dragDropOn.Add(comp); + } + } + + if (!valid || !anyDragDrop) continue; + if (!dropArgs.InRangeUnobstructed(ignoreInsideBlocker: true)) + { + outOfRange = true; + continue; + } foreach (var draggable in _draggables) { - if (!draggable.CanDrop(dropArgs)) - { - continue; - } + if (!draggable.CanDrop(dropArgs)) continue; // tell the server about the drop attempt RaiseNetworkEvent(new DragDropMessage(args.Coordinates, _dragDropHelper.Dragged.Uid, @@ -292,11 +336,22 @@ namespace Content.Client.GameObjects.EntitySystems draggable.Drop(dropArgs); + // Don't fail if it isn't handled as server may do something with it + foreach (var comp in dragDropOn) + { + if (!comp.DragDropOn(dropArgs)) continue; + } + _dragDropHelper.EndDrag(); return true; } } + if (outOfRange) + { + _playerManager.LocalPlayer?.ControlledEntity?.PopupMessage(Loc.GetString("You can't reach there!")); + } + _dragDropHelper.EndDrag(); return false; } @@ -304,7 +359,9 @@ namespace Content.Client.GameObjects.EntitySystems private void HighlightTargets() { if (_dragDropHelper.Dragged == null || - _dragDropHelper.Dragged.Deleted || _dragShadow == null || _dragShadow.Deleted) + _dragDropHelper.Dragged.Deleted || + _dragShadow == null || + _dragShadow.Deleted) { Logger.Warning("Programming error. Can't highlight drag and drop targets, not currently " + "dragging anything or dragged entity / shadow was deleted."); @@ -319,28 +376,42 @@ namespace Content.Client.GameObjects.EntitySystems // find possible targets on screen even if not reachable // TODO: Duplicated in SpriteSystem - var pvsBounds = _eyeManager.GetWorldViewport().Enlarged(5); - var pvsEntities = EntityManager.GetEntitiesIntersecting(_eyeManager.CurrentMap, pvsBounds, true); + var mousePos = _eyeManager.ScreenToMap(_inputManager.MouseScreenPosition).Position; + var bounds = new Box2(mousePos - 1.5f, mousePos + 1.5f); + var pvsEntities = EntityManager.GetEntitiesIntersecting(_eyeManager.CurrentMap, bounds, true); foreach (var pvsEntity in pvsEntities) { - if (pvsEntity.TryGetComponent(out var inRangeSprite)) + if (!pvsEntity.TryGetComponent(out ISpriteComponent? inRangeSprite)) continue; + + // can't highlight if there's no sprite or it's not visible + if (inRangeSprite.Visible == false) continue; + + var valid = (bool?) null; + // check if it's able to be dropped on by current dragged entity + var dropArgs = new DragDropEventArgs(_dragger, pvsEntity.Transform.Coordinates, _dragDropHelper.Dragged, pvsEntity); + + foreach (var comp in pvsEntity.GetAllComponents()) { - // can't highlight if there's no sprite or it's not visible - if (inRangeSprite.Visible == false) continue; + valid = comp.CanDragDropOn(dropArgs); - // check if it's able to be dropped on by current dragged entity - var canDropArgs = new CanDropEventArgs(_dragger, _dragDropHelper.Dragged, pvsEntity); - var anyValidDraggable = _draggables.Any(draggable => draggable.CanDrop(canDropArgs)); - - if (anyValidDraggable) - { - // highlight depending on whether its in or out of range - var inRange = _interactionSystem.InRangeUnobstructed(_dragger, pvsEntity); - inRangeSprite.PostShader = inRange ? _dropTargetInRangeShader : _dropTargetOutOfRangeShader; - inRangeSprite.RenderOrder = EntityManager.CurrentTick.Value; - _highlightedSprites.Add(inRangeSprite); - } + if (valid.Value) + break; } + + // Can't do anything so no highlight + if (!valid.HasValue) + continue; + + // We'll do a final check given server-side does this before any dragdrop can take place. + if (valid.Value) + { + valid = dropArgs.InRangeUnobstructed(ignoreInsideBlocker: true); + } + + // highlight depending on whether its in or out of range + inRangeSprite.PostShader = valid.Value ? _dropTargetInRangeShader : _dropTargetOutOfRangeShader; + inRangeSprite.RenderOrder = EntityManager.CurrentTick.Value; + _highlightedSprites.Add(inRangeSprite); } } @@ -351,6 +422,7 @@ namespace Content.Client.GameObjects.EntitySystems highlightedSprite.PostShader = null; highlightedSprite.RenderOrder = 0; } + _highlightedSprites.Clear(); } diff --git a/Content.Client/GameObjects/EntitySystems/MeleeWeaponSystem.cs b/Content.Client/GameObjects/EntitySystems/MeleeWeaponSystem.cs index 806e122204..e35c150cd2 100644 --- a/Content.Client/GameObjects/EntitySystems/MeleeWeaponSystem.cs +++ b/Content.Client/GameObjects/EntitySystems/MeleeWeaponSystem.cs @@ -28,6 +28,7 @@ namespace Content.Client.GameObjects.EntitySystems public override void Initialize() { SubscribeNetworkEvent(PlayWeaponArc); + SubscribeNetworkEvent(PlayLunge); } public override void FrameUpdate(float frameTime) @@ -50,39 +51,42 @@ namespace Content.Client.GameObjects.EntitySystems var attacker = EntityManager.GetEntity(msg.Attacker); - var lunge = attacker.EnsureComponent(); - lunge.SetData(msg.Angle); - - var entity = EntityManager.SpawnEntity(weaponArc.Prototype, attacker.Transform.Coordinates); - entity.Transform.LocalRotation = msg.Angle; - - var weaponArcAnimation = entity.GetComponent(); - weaponArcAnimation.SetData(weaponArc, msg.Angle, attacker, msg.ArcFollowAttacker); - - // Due to ISpriteComponent limitations, weapons that don't use an RSI won't have this effect. - if (EntityManager.TryGetEntity(msg.Source, out var source) && msg.TextureEffect && source.TryGetComponent(out ISpriteComponent sourceSprite) - && sourceSprite.BaseRSI?.Path != null) + if (!attacker.Deleted) { - var sys = Get(); - var curTime = _gameTiming.CurTime; - var effect = new EffectSystemMessage + var lunge = attacker.EnsureComponent(); + lunge.SetData(msg.Angle); + + var entity = EntityManager.SpawnEntity(weaponArc.Prototype, attacker.Transform.Coordinates); + entity.Transform.LocalRotation = msg.Angle; + + var weaponArcAnimation = entity.GetComponent(); + weaponArcAnimation.SetData(weaponArc, msg.Angle, attacker, msg.ArcFollowAttacker); + + // Due to ISpriteComponent limitations, weapons that don't use an RSI won't have this effect. + if (EntityManager.TryGetEntity(msg.Source, out var source) && msg.TextureEffect && source.TryGetComponent(out ISpriteComponent sourceSprite) + && sourceSprite.BaseRSI?.Path != null) { - EffectSprite = sourceSprite.BaseRSI.Path.ToString(), - RsiState = sourceSprite.LayerGetState(0).Name, - Coordinates = attacker.Transform.Coordinates, - Color = Vector4.Multiply(new Vector4(255, 255, 255, 125), 1.0f), - ColorDelta = Vector4.Multiply(new Vector4(0, 0, 0, -10), 1.0f), - Velocity = msg.Angle.ToVec(), - Acceleration = msg.Angle.ToVec() * 5f, - Born = curTime, - DeathTime = curTime.Add(TimeSpan.FromMilliseconds(300f)), - }; - sys.CreateEffect(effect); + var sys = Get(); + var curTime = _gameTiming.CurTime; + var effect = new EffectSystemMessage + { + EffectSprite = sourceSprite.BaseRSI.Path.ToString(), + RsiState = sourceSprite.LayerGetState(0).Name, + Coordinates = attacker.Transform.Coordinates, + Color = Vector4.Multiply(new Vector4(255, 255, 255, 125), 1.0f), + ColorDelta = Vector4.Multiply(new Vector4(0, 0, 0, -10), 1.0f), + Velocity = msg.Angle.ToVec(), + Acceleration = msg.Angle.ToVec() * 5f, + Born = curTime, + DeathTime = curTime.Add(TimeSpan.FromMilliseconds(300f)), + }; + sys.CreateEffect(effect); + } } foreach (var uid in msg.Hits) { - if (!EntityManager.TryGetEntity(uid, out var hitEntity)) + if (!EntityManager.TryGetEntity(uid, out var hitEntity) || hitEntity.Deleted) { continue; } @@ -106,5 +110,13 @@ namespace Content.Client.GameObjects.EntitySystems }); } } + + private void PlayLunge(PlayLungeAnimationMessage msg) + { + EntityManager + .GetEntity(msg.Source) + .EnsureComponent() + .SetData(msg.Angle); + } } } diff --git a/Content.Client/GameTicking/ClientGameTicker.cs b/Content.Client/GameTicking/ClientGameTicker.cs index fb9a14ae76..a6bdc2b225 100644 --- a/Content.Client/GameTicking/ClientGameTicker.cs +++ b/Content.Client/GameTicking/ClientGameTicker.cs @@ -3,7 +3,6 @@ using System.Collections.Generic; using Content.Client.Interfaces; using Content.Client.State; using Content.Client.UserInterface; -using Content.Shared; using Content.Shared.GameTicking; using Content.Shared.Network.NetMessages; using Robust.Client.Interfaces.Graphics; @@ -11,6 +10,7 @@ using Robust.Client.Interfaces.State; using Robust.Shared.Interfaces.Network; using Robust.Shared.IoC; using Robust.Shared.Network; +using Robust.Shared.Timing; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; @@ -28,7 +28,7 @@ namespace Content.Client.GameTicking [ViewVariables] public bool IsGameStarted { get; private set; } [ViewVariables] public bool DisallowedLateJoin { get; private set; } [ViewVariables] public string ServerInfoBlob { get; private set; } - [ViewVariables] public DateTime StartTime { get; private set; } + [ViewVariables] public TimeSpan StartTime { get; private set; } [ViewVariables] public bool Paused { get; private set; } [ViewVariables] public Dictionary Status { get; private set; } [ViewVariables] public IReadOnlyList JobsAvailable => _jobsAvailable; diff --git a/Content.Client/IgnoredComponents.cs b/Content.Client/IgnoredComponents.cs index 676c7f33ca..6823e56a43 100644 --- a/Content.Client/IgnoredComponents.cs +++ b/Content.Client/IgnoredComponents.cs @@ -169,6 +169,9 @@ namespace Content.Client "Flammable", "CreamPie", "CreamPied", + "Smoking", + "Matchstick", + "Matchbox", "BlockGameArcade", "KitchenSpike", "Butcherable", @@ -228,7 +231,15 @@ namespace Content.Client "BiologicalSurgeryData", "CargoTelepad", "TraitorDeathMatchRedemption", - "GlassBeaker" + "GlassBeaker", + "SliceableFood", + "DamageOtherOnHit", + "DamageOnLand", + "GasFilter", + "Recyclable", + "SecretStash", + "Toilet", + "ClusterFlash" }; } } diff --git a/Content.Client/Interfaces/Chat/IChatManager.cs b/Content.Client/Interfaces/Chat/IChatManager.cs index 814fc18b75..1036189093 100644 --- a/Content.Client/Interfaces/Chat/IChatManager.cs +++ b/Content.Client/Interfaces/Chat/IChatManager.cs @@ -13,5 +13,7 @@ namespace Content.Client.Interfaces.Chat void SetChatBox(ChatBox chatBox); void RemoveSpeechBubble(EntityUid entityUid, SpeechBubble bubble); + + void ToggleDeadChatButtonVisibility(bool visibility); } } diff --git a/Content.Client/Interfaces/IClientGameTicker.cs b/Content.Client/Interfaces/IClientGameTicker.cs index ecb54004b0..981c9a3448 100644 --- a/Content.Client/Interfaces/IClientGameTicker.cs +++ b/Content.Client/Interfaces/IClientGameTicker.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using Robust.Shared.Network; +using Robust.Shared.Timing; using static Content.Shared.GameTicking.SharedGameTicker; namespace Content.Client.Interfaces @@ -11,7 +12,7 @@ namespace Content.Client.Interfaces string ServerInfoBlob { get; } bool AreWeReady { get; } bool DisallowedLateJoin { get; } - DateTime StartTime { get; } + TimeSpan StartTime { get; } bool Paused { get; } Dictionary Status { get; } IReadOnlyList JobsAvailable { get; } diff --git a/Content.Client/Sandbox/SandboxManager.cs b/Content.Client/Sandbox/SandboxManager.cs index 0f0f727a29..a7a79fe884 100644 --- a/Content.Client/Sandbox/SandboxManager.cs +++ b/Content.Client/Sandbox/SandboxManager.cs @@ -33,10 +33,12 @@ namespace Content.Client.Sandbox public readonly Button ShowMarkersButton; //Shows spawn points public readonly Button ShowBbButton; //Shows bounding boxes public readonly Button MachineLinkingButton; // Enables/disables machine linking mode. + private readonly IGameHud _gameHud; public SandboxWindow() { Resizable = false; + _gameHud = IoCManager.Resolve(); Title = "Sandbox Panel"; @@ -82,6 +84,20 @@ namespace Content.Client.Sandbox MachineLinkingButton = new Button { Text = Loc.GetString("Link machines"), ToggleMode = true }; vBox.AddChild(MachineLinkingButton); } + + + protected override void EnteredTree() + { + base.EnteredTree(); + _gameHud.SandboxButtonDown = true; + } + + protected override void ExitedTree() + { + base.ExitedTree(); + _gameHud.SandboxButtonDown = false; + } + } internal class SandboxManager : SharedSandboxManager, ISandboxManager @@ -197,7 +213,6 @@ namespace Content.Client.Sandbox private void WindowOnOnClose() { _window = null; - _gameHud.SandboxButtonDown = false; _sandboxWindowToggled = false; } diff --git a/Content.Client/State/GameScreenBase.cs b/Content.Client/State/GameScreenBase.cs index 00e836ffd0..3957c5576e 100644 --- a/Content.Client/State/GameScreenBase.cs +++ b/Content.Client/State/GameScreenBase.cs @@ -27,7 +27,7 @@ namespace Content.Client.State // OH GOD. // Ok actually it's fine. // Instantiated dynamically through the StateManager, Dependencies will be resolved. - public partial class GameScreenBase : Robust.Client.State.State + public partial class GameScreenBase : Robust.Client.State.State, IEntityEventSubscriber { [Dependency] protected readonly IClientEntityManager EntityManager = default!; [Dependency] protected readonly IInputManager InputManager = default!; @@ -38,17 +38,29 @@ namespace Content.Client.State [Dependency] protected readonly IMapManager MapManager = default!; [Dependency] protected readonly IUserInterfaceManager UserInterfaceManager = default!; [Dependency] protected readonly IConfigurationManager ConfigurationManager = default!; + [Dependency] private readonly IEntityManager _entityManager = default!; + + private IEventBus _eventBus => _entityManager.EventBus; private IEntity _lastHoveredEntity; + private bool _outlineEnabled = true; + public override void Startup() { InputManager.KeyBindStateChanged += OnKeyBindStateChanged; + _eventBus.SubscribeEvent(EventSource.Local, this, HandleOutlineToggle); } public override void Shutdown() { InputManager.KeyBindStateChanged -= OnKeyBindStateChanged; + _eventBus.UnsubscribeEvent(EventSource.Local, this); + } + + private void HandleOutlineToggle(OutlineToggleMessage message) + { + _outlineEnabled = message.Enabled; } public override void FrameUpdate(FrameEventArgs e) @@ -72,7 +84,7 @@ namespace Content.Client.State } InteractionOutlineComponent outline; - if(!ConfigurationManager.GetCVar(CCVars.OutlineEnabled)) + if(!_outlineEnabled || !ConfigurationManager.GetCVar(CCVars.OutlineEnabled)) { if(entityToClick != null && entityToClick.TryGetComponent(out outline)) { diff --git a/Content.Client/State/LobbyState.cs b/Content.Client/State/LobbyState.cs index 7fcb82826c..866c65c463 100644 --- a/Content.Client/State/LobbyState.cs +++ b/Content.Client/State/LobbyState.cs @@ -13,6 +13,7 @@ using Robust.Client.Player; using Robust.Client.UserInterface.Controls; using Robust.Shared.Input.Binding; using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Interfaces.Timing; using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Prototypes; @@ -35,6 +36,7 @@ namespace Content.Client.State [Dependency] private readonly IPrototypeManager _prototypeManager = default!; [Dependency] private readonly IUserInterfaceManager _userInterfaceManager = default!; [Dependency] private readonly IClientPreferencesManager _preferencesManager = default!; + [Dependency] private readonly IGameTiming _gameTiming = default!; [ViewVariables] private CharacterSetupGui _characterSetup; [ViewVariables] private LobbyGui _lobby; @@ -70,6 +72,12 @@ namespace Content.Client.State _inputManager.SetInputCommand(ContentKeyFunctions.FocusChat, InputCmdHandler.FromDelegate(s => GameScreen.FocusChat(_lobby.Chat))); + _inputManager.SetInputCommand(ContentKeyFunctions.FocusOOC, + InputCmdHandler.FromDelegate(s => GameScreen.FocusOOC(_lobby.Chat))); + + _inputManager.SetInputCommand(ContentKeyFunctions.FocusAdminChat, + InputCmdHandler.FromDelegate(s => GameScreen.FocusAdminChat(_lobby.Chat))); + UpdateLobbyUi(); _lobby.CharacterPreview.CharacterSetupButton.OnPressed += args => @@ -138,10 +146,11 @@ namespace Content.Client.State } else { - var difference = _clientGameTicker.StartTime - DateTime.UtcNow; - if (difference.Ticks < 0) + var difference = _clientGameTicker.StartTime - _gameTiming.CurTime; + var seconds = difference.TotalSeconds; + if (seconds < 0) { - if (difference.TotalSeconds < -5) + if (seconds < -5) { text = Loc.GetString("Right Now?"); } @@ -152,7 +161,7 @@ namespace Content.Client.State } else { - text = $"{(int) Math.Floor(difference.TotalMinutes)}:{difference.Seconds:D2}"; + text = $"{(int) Math.Floor(difference.TotalMinutes / 60)}:{difference.Seconds:D2}"; } } @@ -172,8 +181,10 @@ namespace Content.Client.State _clientGameTicker.Status.Remove(p.Key); } } + UpdatePlayerList(); } + private void LobbyReadyUpdated() => UpdatePlayerList(); private void LobbyStatusUpdated() @@ -218,8 +229,6 @@ namespace Content.Client.State foreach (var session in _playerManager.Sessions.OrderBy(s => s.Name)) { - - var readyState = ""; // Don't show ready state if we're ingame if (!_clientGameTicker.IsGameStarted) @@ -238,6 +247,7 @@ namespace Content.Client.State _ => "", }; } + _lobby.OnlinePlayerList.AddItem(session.Name, readyState); } } diff --git a/Content.Client/State/OutlineToggleMessage.cs b/Content.Client/State/OutlineToggleMessage.cs new file mode 100644 index 0000000000..bef225fda4 --- /dev/null +++ b/Content.Client/State/OutlineToggleMessage.cs @@ -0,0 +1,14 @@ +using Robust.Shared.GameObjects; + +namespace Content.Client.State +{ + public sealed class OutlineToggleMessage : EntitySystemMessage + { + public bool Enabled { get; } + + public OutlineToggleMessage(bool enabled) + { + Enabled = enabled; + } + } +} diff --git a/Content.Client/UserInterface/ActionMenu.cs b/Content.Client/UserInterface/ActionMenu.cs index c51d27ac86..a58263bbd4 100644 --- a/Content.Client/UserInterface/ActionMenu.cs +++ b/Content.Client/UserInterface/ActionMenu.cs @@ -56,6 +56,7 @@ namespace Content.Client.UserInterface private readonly Button _clearButton; private readonly GridContainer _resultsGrid; private readonly TextureRect _dragShadow; + private readonly IGameHud _gameHud; private readonly DragDropHelper _dragDropHelper; @@ -64,6 +65,8 @@ namespace Content.Client.UserInterface _actionsComponent = actionsComponent; _actionsUI = actionsUI; _actionManager = IoCManager.Resolve(); + _gameHud = IoCManager.Resolve(); + Title = Loc.GetString("Actions"); CustomMinimumSize = (300, 300); @@ -143,14 +146,13 @@ namespace Content.Client.UserInterface _dragDropHelper = new DragDropHelper(OnBeginActionDrag, OnContinueActionDrag, OnEndActionDrag); } - protected override void EnteredTree() { base.EnteredTree(); _clearButton.OnPressed += OnClearButtonPressed; _searchBar.OnTextChanged += OnSearchTextChanged; _filterButton.OnItemSelected += OnFilterItemSelected; - + _gameHud.ActionsButtonDown = true; foreach (var actionMenuControl in _resultsGrid.Children) { var actionMenuItem = (actionMenuControl as ActionMenuItem); @@ -167,7 +169,7 @@ namespace Content.Client.UserInterface _clearButton.OnPressed -= OnClearButtonPressed; _searchBar.OnTextChanged -= OnSearchTextChanged; _filterButton.OnItemSelected -= OnFilterItemSelected; - + _gameHud.ActionsButtonDown = false; foreach (var actionMenuControl in _resultsGrid.Children) { var actionMenuItem = (actionMenuControl as ActionMenuItem); @@ -280,6 +282,12 @@ namespace Content.Client.UserInterface _dragDropHelper.EndDrag(); } + private void OnItemFocusExited(ActionMenuItem item) + { + // lost focus, cancel the drag if one is in progress + _dragDropHelper.EndDrag(); + } + private void OnItemPressed(BaseButton.ButtonEventArgs args) { if (args.Button is not ActionMenuItem actionMenuItem) return; @@ -402,8 +410,7 @@ namespace Content.Client.UserInterface ItemTag => action is ItemActionPrototype, NotItemTag => action is ActionPrototype, InstantActionTag => action.BehaviorType == BehaviorType.Instant, - TargetActionTag => action.BehaviorType == BehaviorType.TargetEntity || - action.BehaviorType == BehaviorType.TargetPoint, + TargetActionTag => action.IsTargetAction, ToggleActionTag => action.BehaviorType == BehaviorType.Toggle, _ => action.Filters.Contains(tag) }; @@ -462,10 +469,9 @@ namespace Content.Client.UserInterface _actionList = actions.ToArray(); foreach (var action in _actionList.OrderBy(act => act.Name.ToString())) { - var actionItem = new ActionMenuItem(action); + var actionItem = new ActionMenuItem(action, OnItemFocusExited); _resultsGrid.Children.Add(actionItem); actionItem.SetActionState(_actionsComponent.IsGranted(action)); - actionItem.OnButtonDown += OnItemButtonDown; actionItem.OnButtonUp += OnItemButtonUp; actionItem.OnPressed += OnItemPressed; diff --git a/Content.Client/UserInterface/ActionMenuItem.cs b/Content.Client/UserInterface/ActionMenuItem.cs index d678847c5e..0bfee17b6c 100644 --- a/Content.Client/UserInterface/ActionMenuItem.cs +++ b/Content.Client/UserInterface/ActionMenuItem.cs @@ -1,5 +1,7 @@ #nullable enable +using System; +using Content.Client.GameObjects.Components.Mobs; using Content.Client.UserInterface.Stylesheets; using Content.Shared.Actions; using Robust.Client.UserInterface; @@ -19,8 +21,11 @@ namespace Content.Client.UserInterface public BaseActionPrototype Action { get; private set; } - public ActionMenuItem(BaseActionPrototype action) + private Action _onControlFocusExited; + + public ActionMenuItem(BaseActionPrototype action, Action onControlFocusExited) { + _onControlFocusExited = onControlFocusExited; Action = action; CustomMinimumSize = (64, 64); @@ -38,6 +43,12 @@ namespace Content.Client.UserInterface TooltipSupplier = SupplyTooltip; } + protected override void ControlFocusExited() + { + base.ControlFocusExited(); + _onControlFocusExited.Invoke(this); + } + private Control SupplyTooltip(Control? sender) { return new ActionAlertTooltip(Action.Name, Action.Description, Action.Requires); diff --git a/Content.Client/UserInterface/ActionsUI.cs b/Content.Client/UserInterface/ActionsUI.cs index 1a7f9d7074..c0c6085279 100644 --- a/Content.Client/UserInterface/ActionsUI.cs +++ b/Content.Client/UserInterface/ActionsUI.cs @@ -32,6 +32,7 @@ namespace Content.Client.UserInterface private readonly ActionManager _actionManager; private readonly IEntityManager _entityManager; private readonly IGameTiming _gameTiming; + private readonly IGameHud _gameHud; private readonly ActionSlot[] _slots; @@ -80,13 +81,15 @@ namespace Content.Client.UserInterface _actionManager = IoCManager.Resolve(); _entityManager = IoCManager.Resolve(); _gameTiming = IoCManager.Resolve(); + _gameHud = IoCManager.Resolve(); _menu = new ActionMenu(_actionsComponent, this); + LayoutContainer.SetGrowHorizontal(this, LayoutContainer.GrowDirection.End); LayoutContainer.SetGrowVertical(this, LayoutContainer.GrowDirection.End); LayoutContainer.SetAnchorTop(this, 0f); LayoutContainer.SetAnchorBottom(this, 0.8f); - LayoutContainer.SetMarginLeft(this, 10); - LayoutContainer.SetMarginTop(this, 100); + LayoutContainer.SetMarginLeft(this, 13); + LayoutContainer.SetMarginTop(this, 110); SizeFlagsHorizontal = SizeFlags.None; SizeFlagsVertical = SizeFlags.FillExpand; @@ -208,6 +211,9 @@ namespace Content.Client.UserInterface _lockButton.OnPressed += OnLockPressed; _settingsButton.OnPressed += OnToggleActionsMenu; _loadoutContainer.OnKeyBindDown += OnHotbarPaginate; + _gameHud.ActionsButtonToggled += OnToggleActionsMenuTopButton; + _gameHud.ActionsButtonDown = false; + _gameHud.ActionsButtonVisible = true; } protected override void ExitedTree() @@ -218,6 +224,9 @@ namespace Content.Client.UserInterface _lockButton.OnPressed -= OnLockPressed; _settingsButton.OnPressed -= OnToggleActionsMenu; _loadoutContainer.OnKeyBindDown -= OnHotbarPaginate; + _gameHud.ActionsButtonToggled -= OnToggleActionsMenuTopButton; + _gameHud.ActionsButtonDown = false; + _gameHud.ActionsButtonVisible = false; } protected override Vector2 CalculateMinimumSize() @@ -328,9 +337,9 @@ namespace Content.Client.UserInterface actionSlot.EnableAction(); actionSlot.Cooldown = actionState.Cooldown; - // if we are targeting with an action now on cooldown, stop targeting + // if we are targeting for this action and it's now on cooldown, stop targeting if we're supposed to if (SelectingTargetFor?.Action != null && SelectingTargetFor.Action == action && - actionState.IsOnCooldown(_gameTiming)) + actionState.IsOnCooldown(_gameTiming) && action.DeselectOnCooldown) { StopTargeting(); } @@ -401,10 +410,10 @@ namespace Content.Client.UserInterface // action is currently granted actionSlot.EnableAction(); - // if we are targeting with an action now on cooldown, stop targeting + // if we are targeting with an action now on cooldown, stop targeting if we should if (SelectingTargetFor?.Action != null && SelectingTargetFor.Action == action && SelectingTargetFor.Item == itemEntity && - actionState.IsOnCooldown(_gameTiming)) + actionState.IsOnCooldown(_gameTiming) && action.DeselectOnCooldown) { StopTargeting(); } @@ -496,6 +505,13 @@ namespace Content.Client.UserInterface ToggleActionsMenu(); } + + private void OnToggleActionsMenuTopButton(bool open) + { + if (open == _menu.IsOpen) return; + ToggleActionsMenu(); + } + public void ToggleActionsMenu() { if (_menu.IsOpen) diff --git a/Content.Client/UserInterface/AdminMenu/AdminMenuManager.cs b/Content.Client/UserInterface/AdminMenu/AdminMenuManager.cs index 94b29253cf..c9caaedc71 100644 --- a/Content.Client/UserInterface/AdminMenu/AdminMenuManager.cs +++ b/Content.Client/UserInterface/AdminMenu/AdminMenuManager.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using Content.Client.Administration; using Content.Shared.Input; using Robust.Client.Console; using Robust.Client.Interfaces.Input; @@ -13,6 +14,8 @@ namespace Content.Client.UserInterface.AdminMenu { [Dependency] private readonly INetManager _netManager = default!; [Dependency] private readonly IInputManager _inputManager = default!; + [Dependency] private readonly IGameHud _gameHud = default!; + [Dependency] private readonly IClientAdminManager _clientAdminManager = default!; [Dependency] private readonly IClientConGroupController _clientConGroupController = default!; private SS14Window _window; @@ -26,6 +29,30 @@ namespace Content.Client.UserInterface.AdminMenu _inputManager.SetInputCommand(ContentKeyFunctions.OpenAdminMenu, InputCmdHandler.FromDelegate(session => Toggle())); + + _clientAdminManager.AdminStatusUpdated += () => + { + // when status changes, show the top button if we can open admin menu. + // if we can't or we lost admin status, close it and hide the button. + _gameHud.AdminButtonVisible = CanOpen(); + if (!_gameHud.AdminButtonVisible) + { + Close(); + } + }; + _gameHud.AdminButtonToggled += (open) => + { + if (open) + { + TryOpen(); + } + else + { + Close(); + } + }; + _gameHud.AdminButtonVisible = CanOpen(); + _gameHud.AdminButtonDown = false; } public void ResetWindow() diff --git a/Content.Client/UserInterface/AdminMenu/AdminMenuWindow.cs b/Content.Client/UserInterface/AdminMenu/AdminMenuWindow.cs index b4d9e4b7e6..c166d2e0d0 100644 --- a/Content.Client/UserInterface/AdminMenu/AdminMenuWindow.cs +++ b/Content.Client/UserInterface/AdminMenu/AdminMenuWindow.cs @@ -1,10 +1,11 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; using Content.Client.GameObjects.EntitySystems; using Content.Client.StationEvents; using Content.Shared.Atmos; +using Content.Shared.Roles; using Robust.Client.Console; using Robust.Client.Graphics.Drawing; using Robust.Client.Interfaces.Placement; @@ -30,6 +31,7 @@ namespace Content.Client.UserInterface.AdminMenu public readonly TabContainer MasterTabContainer; public readonly VBoxContainer PlayerList; public readonly Label PlayerCount; + private readonly IGameHud _gameHud; protected override Vector2? CustomSize => (500, 250); @@ -44,7 +46,7 @@ namespace Content.Client.UserInterface.AdminMenu { new SpawnEntitiesCommandButton(), new SpawnTilesCommandButton(), - new StationEventsCommandButton(), + new StationEventsCommandButton() }; private readonly List _debugButtons = new() { @@ -206,6 +208,7 @@ namespace Content.Client.UserInterface.AdminMenu public AdminMenuWindow() //TODO: search for buttons? { + _gameHud = IoCManager.Resolve(); Title = Loc.GetString("Admin Menu"); #region PlayerList @@ -376,6 +379,19 @@ namespace Content.Client.UserInterface.AdminMenu IoCManager.Resolve().RequestEvents(); } + protected override void ExitedTree() + { + base.ExitedTree(); + _gameHud.AdminButtonDown = false; + + } + + protected override void EnteredTree() + { + base.EnteredTree(); + _gameHud.AdminButtonDown = true; + } + #region CommandButtonBaseClass private abstract class CommandButton { diff --git a/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitEui.cs b/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitEui.cs new file mode 100644 index 0000000000..0fa0229392 --- /dev/null +++ b/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitEui.cs @@ -0,0 +1,42 @@ +using Content.Client.Eui; +using Content.Shared.Eui; +using JetBrains.Annotations; +using Robust.Client.UserInterface.CustomControls; +using Robust.Shared.IoC; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Content.Shared.Administration; + +namespace Content.Client.UserInterface.AdminMenu.SetOutfit +{ + [UsedImplicitly] + public sealed class SetOutfitEui : BaseEui + { + private readonly SetOutfitMenu _window; + public SetOutfitEui() + { + _window = new SetOutfitMenu(); + } + + public override void Opened() + { + _window.OpenCentered(); + } + + public override void Closed() + { + base.Closed(); + _window.Close(); + } + + public override void HandleState(EuiStateBase state) + { + var outfitState = (SetOutfitEuiState) state; + _window.TargetEntityId = outfitState.TargetEntityId; + + } + } +} diff --git a/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitMenu.xaml b/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitMenu.xaml new file mode 100644 index 0000000000..ddec212682 --- /dev/null +++ b/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitMenu.xaml @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitMenu.xaml.cs b/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitMenu.xaml.cs new file mode 100644 index 0000000000..0f1fba1fbf --- /dev/null +++ b/Content.Client/UserInterface/AdminMenu/SetOutfit/SetOutfitMenu.xaml.cs @@ -0,0 +1,105 @@ +#nullable enable +using System; +using Content.Shared.Construction; +using Content.Shared.Roles; +using Robust.Client.AutoGenerated; +using Robust.Client.Console; +using Robust.Client.Interfaces.ResourceManagement; +using Robust.Client.UserInterface.Controls; +using Robust.Client.UserInterface.CustomControls; +using Robust.Client.UserInterface.XAML; +using Robust.Client.Utility; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; +using Robust.Shared.Localization; +using Robust.Shared.Maths; +using Robust.Shared.Prototypes; + +namespace Content.Client.UserInterface.AdminMenu.SetOutfit +{ + [GenerateTypedNameReferences] + public partial class SetOutfitMenu : SS14Window + { + [Dependency] private readonly IPrototypeManager _prototypeManager = default!; + [Dependency] private readonly IClientConsole _console = default!; + + public EntityUid? TargetEntityId { get; set; } + protected override Vector2? CustomSize => (250, 320); + + private StartingGearPrototype? _selectedOutfit; + + public SetOutfitMenu() + { + IoCManager.InjectDependencies(this); + RobustXamlLoader.Load(this); + + Title = Loc.GetString("Set Outfit"); + + ConfirmButton.Text = Loc.GetString("Confirm"); + ConfirmButton.OnPressed += ConfirmButtonOnOnPressed; + SearchBar.OnTextChanged += SearchBarOnOnTextChanged; + OutfitList.OnItemSelected += OutfitListOnOnItemSelected; + OutfitList.OnItemDeselected += OutfitListOnOnItemDeselected; + PopulateList(); + } + + private void ConfirmButtonOnOnPressed(BaseButton.ButtonEventArgs obj) + { + if (TargetEntityId == null || _selectedOutfit == null) + return; + var command = $"setoutfit {TargetEntityId} {_selectedOutfit.ID}"; + _console.ProcessCommand(command); + Close(); + } + + private void OutfitListOnOnItemSelected(ItemList.ItemListSelectedEventArgs obj) + { + _selectedOutfit = (StartingGearPrototype) obj.ItemList[obj.ItemIndex].Metadata!; + ConfirmButton.Disabled = false; + } + + private void OutfitListOnOnItemDeselected(ItemList.ItemListDeselectedEventArgs obj) + { + _selectedOutfit = null; + ConfirmButton.Disabled = true; + } + + + private void SearchBarOnOnTextChanged(LineEdit.LineEditEventArgs obj) + { + PopulateByFilter(SearchBar.Text); + } + + private void PopulateList() + { + foreach (var gear in _prototypeManager.EnumeratePrototypes()) + { + OutfitList.Add(GetItem(gear, OutfitList)); + } + } + + private void PopulateByFilter(string filter) + { + OutfitList.Clear(); + foreach (var gear in _prototypeManager.EnumeratePrototypes()) + { + if (!string.IsNullOrEmpty(filter) && + gear.ID.ToLowerInvariant().Contains(filter.Trim().ToLowerInvariant())) + { + OutfitList.Add(GetItem(gear, OutfitList)); + } + } + } + + + private static ItemList.Item GetItem(StartingGearPrototype gear, ItemList itemList) + { + return new(itemList) + { + Metadata = gear, + Text = gear.ID + }; + } + } +} diff --git a/Content.Client/UserInterface/Controls/ActionSlot.cs b/Content.Client/UserInterface/Controls/ActionSlot.cs index 68ea495db6..1ae242f6d5 100644 --- a/Content.Client/UserInterface/Controls/ActionSlot.cs +++ b/Content.Client/UserInterface/Controls/ActionSlot.cs @@ -53,8 +53,10 @@ namespace Content.Client.UserInterface.Controls /// /// Is there an action in the slot that can currently be used? + /// Target-basedActions on cooldown can still be selected / deselected if they've been configured as such /// - public bool CanUseAction => HasAssignment && ActionEnabled && !IsOnCooldown; + public bool CanUseAction => Action != null && ActionEnabled && + (!IsOnCooldown || (Action.IsTargetAction && !Action.DeselectOnCooldown)); /// /// Item the action is provided by, only valid if Action is an ItemActionPrototype. May be null @@ -325,6 +327,14 @@ namespace Content.Client.UserInterface.Controls DrawModeChanged(); } + protected override void ControlFocusExited() + { + // lost focus for some reason, cancel the drag if there is one. + base.ControlFocusExited(); + _actionsUI.DragDropHelper.EndDrag(); + DrawModeChanged(); + } + /// /// Cancel current press without triggering the action /// @@ -340,8 +350,10 @@ namespace Content.Client.UserInterface.Controls /// public void Depress(bool depress) { + // action can still be toggled if it's allowed to stay selected if (!CanUseAction) return; + if (_depressed && !depress) { // fire the action diff --git a/Content.Client/UserInterface/GameHud.cs b/Content.Client/UserInterface/GameHud.cs index 31f12c03f0..5feb17055d 100644 --- a/Content.Client/UserInterface/GameHud.cs +++ b/Content.Client/UserInterface/GameHud.cs @@ -1,17 +1,25 @@ using System; +using System.Transactions; +using Content.Client.UserInterface.Stylesheets; using Content.Client.Utility; using Content.Shared.GameObjects.Components.Mobs; using Content.Shared.Input; using Robust.Client.Graphics; using Robust.Client.Graphics.Drawing; +using Robust.Client.Input; using Robust.Client.Interfaces.Input; using Robust.Client.Interfaces.ResourceManagement; using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; +using Robust.Shared.Input; using Robust.Shared.Input.Binding; using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Maths; +using Robust.Shared.Utility; +using YamlDotNet.Core.Tokens; +using static Robust.Client.Input.Keyboard.Key; +using Control = Robust.Client.UserInterface.Control; namespace Content.Client.UserInterface { @@ -41,6 +49,16 @@ namespace Content.Client.UserInterface bool CraftingButtonVisible { get; set; } Action CraftingButtonToggled { get; set; } + // Actions top button. + bool ActionsButtonDown { get; set; } + bool ActionsButtonVisible { get; set; } + Action ActionsButtonToggled { get; set; } + + // Admin top button. + bool AdminButtonDown { get; set; } + bool AdminButtonVisible { get; set; } + Action AdminButtonToggled { get; set; } + // Sandbox top button. bool SandboxButtonDown { get; set; } bool SandboxButtonVisible { get; set; } @@ -48,7 +66,8 @@ namespace Content.Client.UserInterface Control HandsContainer { get; } Control SuspicionContainer { get; } - Control InventoryQuickButtonContainer { get; } + Control RightInventoryQuickButtonContainer { get; } + Control LeftInventoryQuickButtonContainer { get; } bool CombatPanelVisible { get; set; } bool CombatModeActive { get; set; } @@ -69,6 +88,8 @@ namespace Content.Client.UserInterface private TopButton _buttonCharacterMenu; private TopButton _buttonInventoryMenu; private TopButton _buttonCraftingMenu; + private TopButton _buttonActionsMenu; + private TopButton _buttonAdminMenu; private TopButton _buttonSandboxMenu; private TutorialWindow _tutorialWindow; private TargetingDoll _targetingDoll; @@ -80,7 +101,8 @@ namespace Content.Client.UserInterface public Control HandsContainer { get; private set; } public Control SuspicionContainer { get; private set; } - public Control InventoryQuickButtonContainer { get; private set; } + public Control RightInventoryQuickButtonContainer { get; private set; } + public Control LeftInventoryQuickButtonContainer { get; private set; } public bool CombatPanelVisible { @@ -108,16 +130,18 @@ namespace Content.Client.UserInterface RootControl = new LayoutContainer(); LayoutContainer.SetAnchorPreset(RootControl, LayoutContainer.LayoutPreset.Wide); - var escapeTexture = _resourceCache.GetTexture("/Textures/Interface/hamburger.svg.96dpi.png"); - var characterTexture = _resourceCache.GetTexture("/Textures/Interface/character.svg.96dpi.png"); - var inventoryTexture = _resourceCache.GetTexture("/Textures/Interface/inventory.svg.96dpi.png"); - var craftingTexture = _resourceCache.GetTexture("/Textures/Interface/hammer.svg.96dpi.png"); - var tutorialTexture = _resourceCache.GetTexture("/Textures/Interface/students-cap.svg.96dpi.png"); - var sandboxTexture = _resourceCache.GetTexture("/Textures/Interface/sandbox.svg.96dpi.png"); + var escapeTexture = _resourceCache.GetTexture("/Textures/Interface/hamburger.svg.192dpi.png"); + var characterTexture = _resourceCache.GetTexture("/Textures/Interface/character.svg.192dpi.png"); + var inventoryTexture = _resourceCache.GetTexture("/Textures/Interface/inventory.svg.192dpi.png"); + var craftingTexture = _resourceCache.GetTexture("/Textures/Interface/hammer.svg.192dpi.png"); + var actionsTexture = _resourceCache.GetTexture("/Textures/Interface/fist.svg.192dpi.png"); + var adminTexture = _resourceCache.GetTexture("/Textures/Interface/gavel.svg.192dpi.png"); + var tutorialTexture = _resourceCache.GetTexture("/Textures/Interface/tutorial.svg.192dpi.png"); + var sandboxTexture = _resourceCache.GetTexture("/Textures/Interface/sandbox.svg.192dpi.png"); _topButtonsContainer = new HBoxContainer { - SeparationOverride = 4 + SeparationOverride = 8 }; RootControl.AddChild(_topButtonsContainer); @@ -125,32 +149,29 @@ namespace Content.Client.UserInterface LayoutContainer.SetAnchorAndMarginPreset(_topButtonsContainer, LayoutContainer.LayoutPreset.TopLeft, margin: 10); - // TODO: Pull key names here from the actual key binding config. + // the icon textures here should all have the same image height (32) but different widths, so in order to ensure + // the buttons themselves are consistent widths we set a common custom min size + Vector2 topMinSize = (42, 64); + // Escape - _buttonEscapeMenu = new TopButton(escapeTexture, "Esc") + _buttonEscapeMenu = new TopButton(escapeTexture, EngineKeyFunctions.EscapeMenu, _inputManager) { - ToolTip = Loc.GetString("Open escape menu.") + ToolTip = Loc.GetString("Open escape menu."), + CustomMinimumSize = (70, 64), + StyleClasses = {StyleBase.ButtonOpenRight} }; _topButtonsContainer.AddChild(_buttonEscapeMenu); _buttonEscapeMenu.OnToggled += args => EscapeButtonToggled?.Invoke(args.Pressed); - // Tutorial - _buttonTutorial = new TopButton(tutorialTexture, "F1") - { - ToolTip = Loc.GetString("Open tutorial.") - }; - - _topButtonsContainer.AddChild(_buttonTutorial); - - _buttonTutorial.OnToggled += a => ButtonTutorialOnOnToggled(); - // Character - _buttonCharacterMenu = new TopButton(characterTexture, "C") + _buttonCharacterMenu = new TopButton(characterTexture, ContentKeyFunctions.OpenCharacterMenu, _inputManager) { ToolTip = Loc.GetString("Open character menu."), - Visible = false + CustomMinimumSize = topMinSize, + Visible = false, + StyleClasses = {StyleBase.ButtonSquare} }; _topButtonsContainer.AddChild(_buttonCharacterMenu); @@ -158,10 +179,12 @@ namespace Content.Client.UserInterface _buttonCharacterMenu.OnToggled += args => CharacterButtonToggled?.Invoke(args.Pressed); // Inventory - _buttonInventoryMenu = new TopButton(inventoryTexture, "I") + _buttonInventoryMenu = new TopButton(inventoryTexture, ContentKeyFunctions.OpenInventoryMenu, _inputManager) { ToolTip = Loc.GetString("Open inventory menu."), - Visible = false + CustomMinimumSize = topMinSize, + Visible = false, + StyleClasses = {StyleBase.ButtonSquare} }; _topButtonsContainer.AddChild(_buttonInventoryMenu); @@ -169,27 +192,69 @@ namespace Content.Client.UserInterface _buttonInventoryMenu.OnToggled += args => InventoryButtonToggled?.Invoke(args.Pressed); // Crafting - _buttonCraftingMenu = new TopButton(craftingTexture, "G") + _buttonCraftingMenu = new TopButton(craftingTexture, ContentKeyFunctions.OpenCraftingMenu, _inputManager) { ToolTip = Loc.GetString("Open crafting menu."), - Visible = false + CustomMinimumSize = topMinSize, + Visible = false, + StyleClasses = {StyleBase.ButtonSquare} }; _topButtonsContainer.AddChild(_buttonCraftingMenu); _buttonCraftingMenu.OnToggled += args => CraftingButtonToggled?.Invoke(args.Pressed); + // Actions + _buttonActionsMenu = new TopButton(actionsTexture, ContentKeyFunctions.OpenActionsMenu, _inputManager) + { + ToolTip = Loc.GetString("Open actions menu."), + CustomMinimumSize = topMinSize, + Visible = false, + StyleClasses = {StyleBase.ButtonSquare} + }; + + _topButtonsContainer.AddChild(_buttonActionsMenu); + + _buttonActionsMenu.OnToggled += args => ActionsButtonToggled?.Invoke(args.Pressed); + + // Admin + _buttonAdminMenu = new TopButton(adminTexture, ContentKeyFunctions.OpenAdminMenu, _inputManager) + { + ToolTip = Loc.GetString("Open admin menu."), + CustomMinimumSize = topMinSize, + Visible = false, + StyleClasses = {StyleBase.ButtonSquare} + }; + + _topButtonsContainer.AddChild(_buttonAdminMenu); + + _buttonAdminMenu.OnToggled += args => AdminButtonToggled?.Invoke(args.Pressed); + // Sandbox - _buttonSandboxMenu = new TopButton(sandboxTexture, "B") + _buttonSandboxMenu = new TopButton(sandboxTexture, ContentKeyFunctions.OpenSandboxWindow, _inputManager) { ToolTip = Loc.GetString("Open sandbox menu."), - Visible = false + CustomMinimumSize = topMinSize, + Visible = false, + StyleClasses = {StyleBase.ButtonSquare} }; _topButtonsContainer.AddChild(_buttonSandboxMenu); _buttonSandboxMenu.OnToggled += args => SandboxButtonToggled?.Invoke(args.Pressed); + // Tutorial + _buttonTutorial = new TopButton(tutorialTexture, ContentKeyFunctions.OpenTutorial, _inputManager) + { + ToolTip = Loc.GetString("Open tutorial."), + CustomMinimumSize = topMinSize, + StyleClasses = {StyleBase.ButtonOpenLeft, TopButton.StyleClassRedTopButton}, + }; + + _topButtonsContainer.AddChild(_buttonTutorial); + + _buttonTutorial.OnToggled += a => ButtonTutorialOnOnToggled(); + _tutorialWindow = new TutorialWindow(); _tutorialWindow.OnClose += () => _buttonTutorial.Pressed = false; @@ -197,21 +262,6 @@ namespace Content.Client.UserInterface _inputManager.SetInputCommand(ContentKeyFunctions.OpenTutorial, InputCmdHandler.FromDelegate(s => ButtonTutorialOnOnToggled())); - var inventoryContainer = new HBoxContainer - { - SeparationOverride = 10 - }; - - RootControl.AddChild(inventoryContainer); - - LayoutContainer.SetGrowHorizontal(inventoryContainer, LayoutContainer.GrowDirection.Begin); - LayoutContainer.SetGrowVertical(inventoryContainer, LayoutContainer.GrowDirection.Begin); - LayoutContainer.SetAnchorAndMarginPreset(inventoryContainer, LayoutContainer.LayoutPreset.BottomRight); - - InventoryQuickButtonContainer = new MarginContainer - { - SizeFlagsVertical = Control.SizeFlags.ShrinkEnd - }; _combatPanelContainer = new VBoxContainer { @@ -226,23 +276,40 @@ namespace Content.Client.UserInterface } }; + LayoutContainer.SetGrowHorizontal(_combatPanelContainer, LayoutContainer.GrowDirection.Begin); + LayoutContainer.SetGrowVertical(_combatPanelContainer, LayoutContainer.GrowDirection.Begin); + LayoutContainer.SetAnchorAndMarginPreset(_combatPanelContainer, LayoutContainer.LayoutPreset.BottomRight); + LayoutContainer.SetMarginBottom(_combatPanelContainer, -10f); + RootControl.AddChild(_combatPanelContainer); + _combatModeButton.OnToggled += args => OnCombatModeChanged?.Invoke(args.Pressed); _targetingDoll.OnZoneChanged += args => OnTargetingZoneChanged?.Invoke(args); - inventoryContainer.Children.Add(InventoryQuickButtonContainer); - inventoryContainer.Children.Add(_combatPanelContainer); - + var centerBottomContainer = new HBoxContainer + { + SeparationOverride = 5 + }; + LayoutContainer.SetAnchorAndMarginPreset(centerBottomContainer, LayoutContainer.LayoutPreset.CenterBottom); + LayoutContainer.SetGrowHorizontal(centerBottomContainer, LayoutContainer.GrowDirection.Both); + LayoutContainer.SetGrowVertical(centerBottomContainer, LayoutContainer.GrowDirection.Begin); + LayoutContainer.SetMarginBottom(centerBottomContainer, -10f); + RootControl.AddChild(centerBottomContainer); HandsContainer = new MarginContainer { SizeFlagsVertical = Control.SizeFlags.ShrinkEnd }; - - RootControl.AddChild(HandsContainer); - - LayoutContainer.SetAnchorAndMarginPreset(HandsContainer, LayoutContainer.LayoutPreset.CenterBottom); - LayoutContainer.SetGrowHorizontal(HandsContainer, LayoutContainer.GrowDirection.Both); - LayoutContainer.SetGrowVertical(HandsContainer, LayoutContainer.GrowDirection.Begin); + RightInventoryQuickButtonContainer = new MarginContainer + { + SizeFlagsVertical = Control.SizeFlags.ShrinkEnd + }; + LeftInventoryQuickButtonContainer = new MarginContainer + { + SizeFlagsVertical = Control.SizeFlags.ShrinkEnd + }; + centerBottomContainer.AddChild(LeftInventoryQuickButtonContainer); + centerBottomContainer.AddChild(HandsContainer); + centerBottomContainer.AddChild(RightInventoryQuickButtonContainer); SuspicionContainer = new MarginContainer { @@ -251,13 +318,15 @@ namespace Content.Client.UserInterface RootControl.AddChild(SuspicionContainer); - LayoutContainer.SetAnchorAndMarginPreset(SuspicionContainer, LayoutContainer.LayoutPreset.BottomLeft, margin: 10); + LayoutContainer.SetAnchorAndMarginPreset(SuspicionContainer, LayoutContainer.LayoutPreset.BottomLeft, + margin: 10); LayoutContainer.SetGrowHorizontal(SuspicionContainer, LayoutContainer.GrowDirection.End); LayoutContainer.SetGrowVertical(SuspicionContainer, LayoutContainer.GrowDirection.Begin); } private void ButtonTutorialOnOnToggled() { + _buttonTutorial.StyleClasses.Remove(TopButton.StyleClassRedTopButton); if (_tutorialWindow.IsOpen) { if (!_tutorialWindow.IsAtFront()) @@ -330,6 +399,34 @@ namespace Content.Client.UserInterface public Action CraftingButtonToggled { get; set; } + public bool ActionsButtonDown + { + get => _buttonActionsMenu.Pressed; + set => _buttonActionsMenu.Pressed = value; + } + + public bool ActionsButtonVisible + { + get => _buttonActionsMenu.Visible; + set => _buttonActionsMenu.Visible = value; + } + + public Action ActionsButtonToggled { get; set; } + + public bool AdminButtonDown + { + get => _buttonAdminMenu.Pressed; + set => _buttonAdminMenu.Pressed = value; + } + + public bool AdminButtonVisible + { + get => _buttonAdminMenu.Visible; + set => _buttonAdminMenu.Visible = value; + } + + public Action AdminButtonToggled { get; set; } + public bool SandboxButtonDown { get => _buttonSandboxMenu.Pressed; @@ -344,94 +441,204 @@ namespace Content.Client.UserInterface public Action SandboxButtonToggled { get; set; } - public sealed class TopButton : BaseButton + public sealed class TopButton : ContainerButton { public const string StyleClassLabelTopButton = "topButtonLabel"; + public const string StyleClassRedTopButton = "topButtonLabel"; + private const float CustomTooltipDelay = 0.4f; private static readonly Color ColorNormal = Color.FromHex("#7b7e9e"); + private static readonly Color ColorRedNormal = Color.FromHex("#FEFEFE"); private static readonly Color ColorHovered = Color.FromHex("#9699bb"); + private static readonly Color ColorRedHovered = Color.FromHex("#FFFFFF"); private static readonly Color ColorPressed = Color.FromHex("#789B8C"); + private const float VertPad = 8f; + + private Color NormalColor => HasStyleClass(StyleClassRedTopButton) ? ColorRedNormal : ColorNormal; + private Color HoveredColor => HasStyleClass(StyleClassRedTopButton) ? ColorRedHovered : ColorHovered; + private readonly TextureRect _textureRect; private readonly Label _label; + private readonly BoundKeyFunction _function; + private readonly IInputManager _inputManager; - public TopButton(Texture texture, string keyName) + public TopButton(Texture texture, BoundKeyFunction function, IInputManager inputManager) { - ToggleMode = true; + _function = function; + _inputManager = inputManager; + TooltipDelay = CustomTooltipDelay; - AddChild(new MarginContainer - { - MarginTopOverride = 4, - Children = + AddChild( + new VBoxContainer { - new VBoxContainer + Children = { - Children = + new Control {CustomMinimumSize = (0, VertPad)}, + (_textureRect = new TextureRect { - (_textureRect = new TextureRect - { - Texture = texture, - SizeFlagsHorizontal = SizeFlags.ShrinkCenter, - SizeFlagsVertical = SizeFlags.Expand | SizeFlags.ShrinkCenter, - ModulateSelfOverride = ColorNormal, - CustomMinimumSize = (0, 32), - Stretch = TextureRect.StretchMode.KeepCentered - }), - (_label = new Label - { - Text = keyName, - SizeFlagsHorizontal = SizeFlags.ShrinkCenter, - ModulateSelfOverride = ColorNormal, - StyleClasses = {StyleClassLabelTopButton} - }) - } + TextureScale = (0.5f, 0.5f), + Texture = texture, + SizeFlagsHorizontal = SizeFlags.ShrinkCenter, + SizeFlagsVertical = SizeFlags.Expand | SizeFlags.ShrinkCenter, + ModulateSelfOverride = NormalColor, + Stretch = TextureRect.StretchMode.KeepCentered + }), + new Control {CustomMinimumSize = (0, VertPad)}, + (_label = new Label + { + Text = ShortKeyName(_function), + SizeFlagsHorizontal = SizeFlags.ShrinkCenter, + ModulateSelfOverride = NormalColor, + StyleClasses = {StyleClassLabelTopButton} + }) } } - }); + ); - DrawModeChanged(); + ToggleMode = true; } - protected override Vector2 CalculateMinimumSize() + protected override void EnteredTree() { - var styleSize = ActualStyleBox?.MinimumSize ?? Vector2.Zero; - return (0, 4) + styleSize + base.CalculateMinimumSize(); + _inputManager.OnKeyBindingAdded += OnKeyBindingChanged; + _inputManager.OnKeyBindingRemoved += OnKeyBindingChanged; } - protected override void Draw(DrawingHandleScreen handle) + protected override void ExitedTree() { - ActualStyleBox?.Draw(handle, PixelSizeBox); + _inputManager.OnKeyBindingAdded -= OnKeyBindingChanged; + _inputManager.OnKeyBindingRemoved -= OnKeyBindingChanged; } - private StyleBox ActualStyleBox + + private void OnKeyBindingChanged(IKeyBinding obj) { - get + _label.Text = ShortKeyName(_function); + } + + private string ShortKeyName(BoundKeyFunction keyFunction) + { + // need to use shortened key names so they fit in the buttons. + return TryGetShortKeyName(keyFunction, out var name) ? Loc.GetString(name) : " "; + } + + private bool TryGetShortKeyName(BoundKeyFunction keyFunction, out string name) + { + if (_inputManager.TryGetKeyBinding(keyFunction, out var binding)) { - TryGetStyleProperty(Button.StylePropertyStyleBox, out StyleBox ret); - return ret; + // can't possibly fit a modifier key in the top button, so omit it + var key = binding.BaseKey; + if (binding.Mod1 != Unknown || binding.Mod2 != Unknown || + binding.Mod3 != Unknown) + { + name = null; + return false; + } + + name = null; + name = key switch + { + Apostrophe => "'", + Comma => ",", + Delete => "Del", + Down => "Dwn", + Escape => "Esc", + Equal => "=", + Home => "Hom", + Insert => "Ins", + Left => "Lft", + Menu => "Men", + Minus => "-", + Num0 => "0", + Num1 => "1", + Num2 => "2", + Num3 => "3", + Num4 => "4", + Num5 => "5", + Num6 => "6", + Num7 => "7", + Num8 => "8", + Num9 => "9", + Pause => "||", + Period => ".", + Return => "Ret", + Right => "Rgt", + Slash => "/", + Space => "Spc", + Tab => "Tab", + Tilde => "~", + BackSlash => "\\", + BackSpace => "Bks", + LBracket => "[", + MouseButton4 => "M4", + MouseButton5 => "M5", + MouseButton6 => "M6", + MouseButton7 => "M7", + MouseButton8 => "M8", + MouseButton9 => "M9", + MouseLeft => "ML", + MouseMiddle => "MM", + MouseRight => "MR", + NumpadDecimal => "N.", + NumpadDivide => "N/", + NumpadEnter => "Ent", + NumpadMultiply => "*", + NumpadNum0 => "0", + NumpadNum1 => "1", + NumpadNum2 => "2", + NumpadNum3 => "3", + NumpadNum4 => "4", + NumpadNum5 => "5", + NumpadNum6 => "6", + NumpadNum7 => "7", + NumpadNum8 => "8", + NumpadNum9 => "9", + NumpadSubtract => "N-", + PageDown => "PgD", + PageUp => "PgU", + RBracket => "]", + SemiColon => ";", + _ => DefaultShortKeyName(keyFunction) + }; + return name != null; } + + name = null; + return false; } - protected override void DrawModeChanged() + private string DefaultShortKeyName(BoundKeyFunction keyFunction) { + var name = FormattedMessage.EscapeText(_inputManager.GetKeyFunctionButtonString(keyFunction)); + return name.Length > 3 ? null : name; + } + + protected override void StylePropertiesChanged() + { + // colors of children depend on style, so ensure we update when style is changed + base.StylePropertiesChanged(); + UpdateChildColors(); + } + + private void UpdateChildColors() + { + if (_label == null || _textureRect == null) return; switch (DrawMode) { case DrawModeEnum.Normal: - SetOnlyStylePseudoClass(Button.StylePseudoClassNormal); - _textureRect.ModulateSelfOverride = ColorNormal; - _label.ModulateSelfOverride = ColorNormal; + _textureRect.ModulateSelfOverride = NormalColor; + _label.ModulateSelfOverride = NormalColor; break; case DrawModeEnum.Pressed: - SetOnlyStylePseudoClass(Button.StylePseudoClassPressed); _textureRect.ModulateSelfOverride = ColorPressed; _label.ModulateSelfOverride = ColorPressed; break; case DrawModeEnum.Hover: - SetOnlyStylePseudoClass(Button.StylePseudoClassHover); - _textureRect.ModulateSelfOverride = ColorHovered; - _label.ModulateSelfOverride = ColorHovered; + _textureRect.ModulateSelfOverride = HoveredColor; + _label.ModulateSelfOverride = HoveredColor; break; case DrawModeEnum.Disabled: @@ -439,15 +646,11 @@ namespace Content.Client.UserInterface } } - protected override void LayoutUpdateOverride() - { - var box = ActualStyleBox ?? new StyleBoxEmpty(); - var contentBox = box.GetContentBox(PixelSizeBox); - foreach (var child in Children) - { - FitChildInPixelBox(child, (UIBox2i) contentBox); - } + protected override void DrawModeChanged() + { + base.DrawModeChanged(); + UpdateChildColors(); } } } diff --git a/Content.Client/UserInterface/HandButton.cs b/Content.Client/UserInterface/HandButton.cs index af152d5d6b..c7120a73ef 100644 --- a/Content.Client/UserInterface/HandButton.cs +++ b/Content.Client/UserInterface/HandButton.cs @@ -1,11 +1,15 @@ using Content.Shared.GameObjects.Components.Items; using Robust.Client.Graphics; using Robust.Client.UserInterface.Controls; +using Robust.Shared.Maths; namespace Content.Client.UserInterface { public class HandButton : ItemSlotButton { + private bool _activeHand; + private bool _highlighted; + public HandButton(Texture texture, Texture storageTexture, Texture blockedTexture, HandLocation location) : base(texture, storageTexture) { Location = location; @@ -21,5 +25,23 @@ namespace Content.Client.UserInterface public HandLocation Location { get; } public TextureRect Blocked { get; } + + public void SetActiveHand(bool active) + { + _activeHand = active; + UpdateHighlight(); + } + + public override void Highlight(bool highlight) + { + _highlighted = highlight; + UpdateHighlight(); + } + + private void UpdateHighlight() + { + // always stay highlighted if active + base.Highlight(_activeHand || _highlighted); + } } } diff --git a/Content.Client/UserInterface/HandsGui.cs b/Content.Client/UserInterface/HandsGui.cs index fca20f2b9a..01796984c1 100644 --- a/Content.Client/UserInterface/HandsGui.cs +++ b/Content.Client/UserInterface/HandsGui.cs @@ -1,6 +1,7 @@ using System; using System.Linq; using Content.Client.GameObjects.Components.Items; +using Content.Client.UserInterface.Stylesheets; using Content.Client.Utility; using Content.Shared.GameObjects.Components.Items; using Content.Shared.Input; @@ -21,8 +22,6 @@ namespace Content.Client.UserInterface [Dependency] private readonly IResourceCache _resourceCache = default!; [Dependency] private readonly IItemSlotManager _itemSlotManager = default!; - private readonly TextureRect _activeHandRect; - private readonly Texture _leftHandTexture; private readonly Texture _middleHandTexture; private readonly Texture _rightHandTexture; @@ -52,24 +51,14 @@ namespace Content.Client.UserInterface Children = { (_topPanel = ItemStatusPanel.FromSide(HandLocation.Middle)), - (_handsContainer = new HBoxContainer {SeparationOverride = 0}) + (_handsContainer = new HBoxContainer()) } }), (_leftPanel = ItemStatusPanel.FromSide(HandLocation.Left)) } }); - - var textureHandActive = _resourceCache.GetTexture("/Textures/Interface/Inventory/hand_active.png"); - - // Active hand - _activeHandRect = new TextureRect - { - Texture = textureHandActive, - TextureScale = (2, 2) - }; - _leftHandTexture = _resourceCache.GetTexture("/Textures/Interface/Inventory/hand_l.png"); - _middleHandTexture = _resourceCache.GetTexture("/Textures/Interface/Inventory/hand_middle.png"); + _middleHandTexture = _resourceCache.GetTexture("/Textures/Interface/Inventory/hand_l.png"); _rightHandTexture = _resourceCache.GetTexture("/Textures/Interface/Inventory/hand_r.png"); } @@ -119,13 +108,6 @@ namespace Content.Client.UserInterface button.OnStoragePressed += args => _OnStoragePressed(args, slot); _handsContainer.AddChild(button); - - if (_activeHandRect.Parent == null) - { - button.AddChild(_activeHandRect); - _activeHandRect.SetPositionInParent(1); - } - hand.Button = button; } @@ -135,11 +117,6 @@ namespace Content.Client.UserInterface if (button != null) { - if (button.Children.Contains(_activeHandRect)) - { - button.RemoveChild(_activeHandRect); - } - _handsContainer.RemoveChild(button); } } @@ -186,14 +163,8 @@ namespace Content.Client.UserInterface hand.Button!.Button.Texture = HandTexture(hand.Location); hand.Button!.SetPositionInParent(i); _itemSlotManager.SetItemSlot(hand.Button, hand.Entity); - } - _activeHandRect.Parent?.RemoveChild(_activeHandRect); - component.GetHand(component.ActiveIndex)?.Button?.AddChild(_activeHandRect); - - if (hands.Length > 0) - { - _activeHandRect.SetPositionInParent(1); + hand.Button!.SetActiveHand(component.ActiveIndex == hand.Name); } _leftPanel.SetPositionFirst(); diff --git a/Content.Client/UserInterface/HumanoidProfileEditor.cs b/Content.Client/UserInterface/HumanoidProfileEditor.cs index 4c38b7cbee..58fa5f0431 100644 --- a/Content.Client/UserInterface/HumanoidProfileEditor.cs +++ b/Content.Client/UserInterface/HumanoidProfileEditor.cs @@ -1,4 +1,4 @@ -using Content.Client.GameObjects.Components; +using Content.Client.GameObjects.Components; using Content.Client.GameObjects.Components.Mobs; using Content.Client.Interfaces; using Content.Shared.GameTicking; @@ -21,6 +21,7 @@ using Robust.Shared.Localization.Macros; using System; using System.Collections.Generic; using System.Linq; +using Content.Client.UserInterface.Stylesheets; namespace Content.Client.UserInterface { @@ -43,6 +44,7 @@ namespace Content.Client.UserInterface private readonly Button _sexMaleButton; private readonly OptionButton _genderButton; private readonly OptionButton _clothingButton; + private readonly OptionButton _backpackButton; private readonly HairStylePicker _hairPicker; private readonly FacialHairStylePicker _facialHairPicker; @@ -333,6 +335,33 @@ namespace Content.Client.UserInterface } #endregion Clothing + + #region Backpack + + { + var panel = HighlightedContainer(); + var hBox = new HBoxContainer(); + var backpackLabel = new Label { Text = Loc.GetString("Backpack:") }; + + _backpackButton = new OptionButton(); + + _backpackButton.AddItem(Loc.GetString("Backpack"), (int) BackpackPreference.Backpack); + _backpackButton.AddItem(Loc.GetString("Satchel"), (int) BackpackPreference.Satchel); + _backpackButton.AddItem(Loc.GetString("Duffelbag"), (int) BackpackPreference.Duffelbag); + + _backpackButton.OnItemSelected += args => + { + _backpackButton.SelectId(args.Id); + SetBackpack((BackpackPreference) args.Id); + }; + + hBox.AddChild(backpackLabel); + hBox.AddChild(_backpackButton); + panel.AddChild(hBox); + appearanceVBox.AddChild(panel); + } + + #endregion Clothing } #endregion @@ -669,6 +698,12 @@ namespace Content.Client.UserInterface IsDirty = true; } + private void SetBackpack(BackpackPreference newBackpack) + { + Profile = Profile?.WithBackpackPreference(newBackpack); + IsDirty = true; + } + public void Save() { IsDirty = false; @@ -723,6 +758,11 @@ namespace Content.Client.UserInterface _clothingButton.SelectId((int) Profile.Clothing); } + private void UpdateBackpackControls() + { + _backpackButton.SelectId((int) Profile.Backpack); + } + private void UpdateHairPickers() { _hairPicker.SetData( @@ -754,6 +794,7 @@ namespace Content.Client.UserInterface UpdateSexControls(); UpdateGenderControls(); UpdateClothingControls(); + UpdateBackpackControls(); UpdateAgeEdit(); UpdateHairPickers(); UpdateSaveButton(); @@ -780,12 +821,12 @@ namespace Content.Client.UserInterface private class JobPrioritySelector : Control { public JobPrototype Job { get; } - private readonly OptionButton _optionButton; + private readonly RadioOptions _optionButton; public JobPriority Priority { - get => (JobPriority) _optionButton.SelectedId; - set => _optionButton.SelectId((int) value); + get => (JobPriority) _optionButton.SelectedValue; + set => _optionButton.SelectByValue((int) value); } public event Action PriorityChanged; @@ -793,7 +834,14 @@ namespace Content.Client.UserInterface public JobPrioritySelector(JobPrototype job) { Job = job; - _optionButton = new OptionButton(); + _optionButton = new RadioOptions(RadioOptionsLayout.Horizontal); + + _optionButton.FirstButtonStyle = StyleBase.ButtonOpenRight; + _optionButton.ButtonStyle = StyleBase.ButtonOpenBoth; + _optionButton.LastButtonStyle = StyleBase.ButtonOpenLeft; + + + // Text, Value _optionButton.AddItem(Loc.GetString("High"), (int) JobPriority.High); _optionButton.AddItem(Loc.GetString("Medium"), (int) JobPriority.Medium); _optionButton.AddItem(Loc.GetString("Low"), (int) JobPriority.Low); @@ -801,7 +849,7 @@ namespace Content.Client.UserInterface _optionButton.OnItemSelected += args => { - _optionButton.SelectId(args.Id); + _optionButton.Select(args.Id); PriorityChanged?.Invoke(Priority); }; diff --git a/Content.Client/UserInterface/ItemSlotButton.cs b/Content.Client/UserInterface/ItemSlotButton.cs index 7715c565d9..773a1fb1bc 100644 --- a/Content.Client/UserInterface/ItemSlotButton.cs +++ b/Content.Client/UserInterface/ItemSlotButton.cs @@ -1,4 +1,5 @@ using System; +using Content.Client.UserInterface.Stylesheets; using Robust.Client.Graphics; using Robust.Client.Graphics.Shaders; using Robust.Client.UserInterface; @@ -26,11 +27,11 @@ namespace Content.Client.UserInterface public bool EntityHover => HoverSpriteView.Sprite != null; public bool MouseIsHovering = false; - private readonly ShaderInstance _highlightShader; + + private readonly PanelContainer _highlightRect; public ItemSlotButton(Texture texture, Texture storageTexture) { - _highlightShader = IoCManager.Resolve().Index(HighlightShader).Instance(); CustomMinimumSize = (64, 64); AddChild(Button = new TextureRect @@ -40,6 +41,13 @@ namespace Content.Client.UserInterface MouseFilter = MouseFilterMode.Stop }); + AddChild(_highlightRect = new PanelContainer + { + StyleClasses = { StyleNano.StyleClassHandSlotHighlight }, + CustomMinimumSize = (32, 32), + Visible = false + }); + Button.OnKeyBindDown += OnButtonPressed; AddChild(SpriteView = new SpriteView @@ -102,18 +110,16 @@ namespace Content.Client.UserInterface } } - public void Highlight(bool on) + public virtual void Highlight(bool highlight) { - // I make no claim that this actually looks good but it's a start. - if (on) + if (highlight) { - Button.ShaderOverride = _highlightShader; + _highlightRect.Visible = true; } else { - Button.ShaderOverride = null; + _highlightRect.Visible = false; } - } private void OnButtonPressed(GUIBoundKeyEventArgs args) diff --git a/Content.Client/UserInterface/ItemSlotManager.cs b/Content.Client/UserInterface/ItemSlotManager.cs index 19ccaa4977..cbb7b57375 100644 --- a/Content.Client/UserInterface/ItemSlotManager.cs +++ b/Content.Client/UserInterface/ItemSlotManager.cs @@ -7,6 +7,7 @@ using Robust.Client.GameObjects.EntitySystems; using Robust.Client.Interfaces.GameObjects.Components; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.Interfaces.Input; +using Robust.Client.Interfaces.UserInterface; using Robust.Client.Player; using Robust.Client.UserInterface; using Robust.Shared.Input; @@ -25,6 +26,7 @@ namespace Content.Client.UserInterface [Dependency] private readonly IGameTiming _gameTiming = default!; [Dependency] private readonly IInputManager _inputManager = default!; [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!; + [Dependency] private readonly IUserInterfaceManager _uiMgr = default!; [Dependency] private readonly IEntityManager _entityManager = default!; [Dependency] private readonly IEyeManager _eyeManager = default!; [Dependency] private readonly IMapManager _mapManager = default!; @@ -61,7 +63,7 @@ namespace Content.Client.UserInterface else if (args.Function == ContentKeyFunctions.OpenContextMenu) { _entitySystemManager.GetEntitySystem() - .OpenContextMenu(item, new ScreenCoordinates(args.PointerLocation.Position)); + .OpenContextMenu(item, new ScreenCoordinates(_uiMgr.ScreenToUIPosition(args.PointerLocation))); } else if (args.Function == ContentKeyFunctions.ActivateItemInWorld) { diff --git a/Content.Client/UserInterface/ItemStatusPanel.cs b/Content.Client/UserInterface/ItemStatusPanel.cs index ca91e7ec0e..632a4cacf4 100644 --- a/Content.Client/UserInterface/ItemStatusPanel.cs +++ b/Content.Client/UserInterface/ItemStatusPanel.cs @@ -32,7 +32,7 @@ namespace Content.Client.UserInterface [ViewVariables] private IEntity? _entity; - public ItemStatusPanel(Texture texture, StyleBox.Margin margin) + public ItemStatusPanel(Texture texture, StyleBox.Margin cutout, StyleBox.Margin flat, Label.AlignMode textAlign) { var panel = new StyleBoxTexture { @@ -40,7 +40,8 @@ namespace Content.Client.UserInterface }; panel.SetContentMarginOverride(StyleBox.Margin.Vertical, 4); panel.SetContentMarginOverride(StyleBox.Margin.Horizontal, 6); - panel.SetPatchMargin(margin, 13); + panel.SetPatchMargin(flat, 2); + panel.SetPatchMargin(cutout, 13); AddChild(_panel = new PanelContainer { @@ -57,7 +58,8 @@ namespace Content.Client.UserInterface (_itemNameLabel = new Label { ClipText = true, - StyleClasses = {StyleNano.StyleClassItemStatus} + StyleClasses = {StyleNano.StyleClassItemStatus}, + Align = textAlign }) } } @@ -78,27 +80,35 @@ namespace Content.Client.UserInterface public static ItemStatusPanel FromSide(HandLocation location) { string texture; - StyleBox.Margin margin; + StyleBox.Margin cutOut; + StyleBox.Margin flat; + Label.AlignMode textAlign; switch (location) { case HandLocation.Left: texture = "/Textures/Interface/Nano/item_status_right.svg.96dpi.png"; - margin = StyleBox.Margin.Left | StyleBox.Margin.Top; + cutOut = StyleBox.Margin.Left | StyleBox.Margin.Top; + flat = StyleBox.Margin.Right | StyleBox.Margin.Bottom; + textAlign = Label.AlignMode.Right; break; case HandLocation.Middle: - texture = "/Textures/Interface/Nano/item_status_left.svg.96dpi.png"; - margin = StyleBox.Margin.Right | StyleBox.Margin.Top; + texture = "/Textures/Interface/Nano/item_status_middle.svg.96dpi.png"; + cutOut = StyleBox.Margin.Right | StyleBox.Margin.Top; + flat = StyleBox.Margin.Left | StyleBox.Margin.Bottom; + textAlign = Label.AlignMode.Left; break; case HandLocation.Right: texture = "/Textures/Interface/Nano/item_status_left.svg.96dpi.png"; - margin = StyleBox.Margin.Right | StyleBox.Margin.Top; + cutOut = StyleBox.Margin.Right | StyleBox.Margin.Top; + flat = StyleBox.Margin.Left | StyleBox.Margin.Bottom; + textAlign = Label.AlignMode.Left; break; default: throw new ArgumentOutOfRangeException(nameof(location), location, null); } - return new ItemStatusPanel(ResC.GetTexture(texture), margin); + return new ItemStatusPanel(ResC.GetTexture(texture), cutOut, flat, textAlign); } public void Update(IEntity? entity) diff --git a/Content.Client/UserInterface/Stylesheets/StyleBase.cs b/Content.Client/UserInterface/Stylesheets/StyleBase.cs index 83dd9c26cb..bf62514e8d 100644 --- a/Content.Client/UserInterface/Stylesheets/StyleBase.cs +++ b/Content.Client/UserInterface/Stylesheets/StyleBase.cs @@ -17,6 +17,7 @@ namespace Content.Client.UserInterface.Stylesheets public const string ButtonOpenRight = "OpenRight"; public const string ButtonOpenLeft = "OpenLeft"; public const string ButtonOpenBoth = "OpenBoth"; + public const string ButtonSquare = "ButtonSquare"; public const string ButtonCaution = "Caution"; @@ -28,6 +29,7 @@ namespace Content.Client.UserInterface.Stylesheets protected StyleBoxTexture BaseButtonOpenRight { get; } protected StyleBoxTexture BaseButtonOpenLeft { get; } protected StyleBoxTexture BaseButtonOpenBoth { get; } + protected StyleBoxTexture BaseButtonSquare { get; } protected StyleBase(IResourceCache resCache) { @@ -70,6 +72,15 @@ namespace Content.Client.UserInterface.Stylesheets BaseButtonOpenBoth.SetPadding(StyleBox.Margin.Right, 2); BaseButtonOpenBoth.SetPadding(StyleBox.Margin.Left, 1); + BaseButtonSquare = new StyleBoxTexture(BaseButton) + { + Texture = new AtlasTexture(buttonTex, UIBox2.FromDimensions((10, 0), (3, 24))), + }; + BaseButtonSquare.SetPatchMargin(StyleBox.Margin.Horizontal, 0); + BaseButtonSquare.SetContentMarginOverride(StyleBox.Margin.Horizontal, 8); + BaseButtonSquare.SetPadding(StyleBox.Margin.Right, 2); + BaseButtonSquare.SetPadding(StyleBox.Margin.Left, 1); + BaseRules = new[] { // Default font. diff --git a/Content.Client/UserInterface/Stylesheets/StyleNano.cs b/Content.Client/UserInterface/Stylesheets/StyleNano.cs index 734946b907..4f7e058093 100644 --- a/Content.Client/UserInterface/Stylesheets/StyleNano.cs +++ b/Content.Client/UserInterface/Stylesheets/StyleNano.cs @@ -2,6 +2,7 @@ using Content.Client.GameObjects.EntitySystems; using Content.Client.UserInterface.Controls; using Content.Client.Utility; +using Robust.Client.Graphics; using Robust.Client.Graphics.Drawing; using Robust.Client.Interfaces.ResourceManagement; using Robust.Client.UserInterface; @@ -15,6 +16,8 @@ namespace Content.Client.UserInterface.Stylesheets public sealed class StyleNano : StyleBase { public const string StyleClassBorderedWindowPanel = "BorderedWindowPanel"; + public const string StyleClassInventorySlotBackground = "InventorySlotBackground"; + public const string StyleClassHandSlotHighlight = "HandSlotHighlight"; public const string StyleClassTransparentBorderedWindowPanel = "TransparentBorderedWindowPanel"; public const string StyleClassHotbarPanel = "HotbarPanel"; public const string StyleClassTooltipPanel = "tooltipBox"; @@ -44,7 +47,9 @@ namespace Content.Client.UserInterface.Stylesheets public static readonly Color NanoGold = Color.FromHex("#A88B5E"); public static readonly Color ButtonColorDefault = Color.FromHex("#464966"); + public static readonly Color ButtonColorDefaultRed = Color.FromHex("#D43B3B"); public static readonly Color ButtonColorHovered = Color.FromHex("#575b7f"); + public static readonly Color ButtonColorHoveredRed = Color.FromHex("#DF6B6B"); public static readonly Color ButtonColorPressed = Color.FromHex("#3e6c45"); public static readonly Color ButtonColorDisabled = Color.FromHex("#30313c"); @@ -100,6 +105,21 @@ namespace Content.Client.UserInterface.Stylesheets }; borderedWindowBackground.SetPatchMargin(StyleBox.Margin.All, 2); + var invSlotBgTex = resCache.GetTexture("/Textures/Interface/Inventory/inv_slot_background.png"); + var invSlotBg = new StyleBoxTexture + { + Texture = invSlotBgTex, + }; + invSlotBg.SetPatchMargin(StyleBox.Margin.All, 2); + invSlotBg.SetContentMarginOverride(StyleBox.Margin.All, 0); + + var handSlotHighlightTex = resCache.GetTexture("/Textures/Interface/Inventory/hand_slot_highlight.png"); + var handSlotHighlight = new StyleBoxTexture + { + Texture = handSlotHighlightTex, + }; + handSlotHighlight.SetPatchMargin(StyleBox.Margin.All, 2); + var borderedTransparentWindowBackgroundTex = resCache.GetTexture("/Textures/Interface/Nano/transparent_window_background_bordered.png"); var borderedTransparentWindowBackground = new StyleBoxTexture { @@ -162,6 +182,33 @@ namespace Content.Client.UserInterface.Stylesheets Modulate = ButtonColorPressed }; + var buttonTex = resCache.GetTexture("/Textures/Interface/Nano/button.svg.96dpi.png"); + var topButtonBase = new StyleBoxTexture + { + Texture = buttonTex, + }; + topButtonBase.SetPatchMargin(StyleBox.Margin.All, 10); + topButtonBase.SetPadding(StyleBox.Margin.All, 0); + topButtonBase.SetContentMarginOverride(StyleBox.Margin.All, 0); + + var topButtonOpenRight = new StyleBoxTexture(topButtonBase) + { + Texture = new AtlasTexture(buttonTex, UIBox2.FromDimensions((0, 0), (14, 24))), + }; + topButtonOpenRight.SetPatchMargin(StyleBox.Margin.Right, 0); + + var topButtonOpenLeft = new StyleBoxTexture(topButtonBase) + { + Texture = new AtlasTexture(buttonTex, UIBox2.FromDimensions((10, 0), (14, 24))), + }; + topButtonOpenLeft.SetPatchMargin(StyleBox.Margin.Left, 0); + + var topButtonSquare = new StyleBoxTexture(topButtonBase) + { + Texture = new AtlasTexture(buttonTex, UIBox2.FromDimensions((10, 0), (3, 24))), + }; + topButtonSquare.SetPatchMargin(StyleBox.Margin.Horizontal, 0); + var textureInvertedTriangle = resCache.GetTexture("/Textures/Interface/Nano/inverted_triangle.svg.png"); var lineEditTex = resCache.GetTexture("/Textures/Interface/Nano/lineedit.png"); @@ -355,6 +402,20 @@ namespace Content.Client.UserInterface.Stylesheets { new StyleProperty(PanelContainer.StylePropertyPanel, borderedTransparentWindowBackground), }), + // inventory slot background + new StyleRule( + new SelectorElement(null, new[] {StyleClassInventorySlotBackground}, null, null), + new[] + { + new StyleProperty(PanelContainer.StylePropertyPanel, invSlotBg), + }), + // hand slot highlight + new StyleRule( + new SelectorElement(null, new[] {StyleClassHandSlotHighlight}, null, null), + new[] + { + new StyleProperty(PanelContainer.StylePropertyPanel, handSlotHighlight), + }), // Hotbar background new StyleRule(new SelectorElement(typeof(PanelContainer), new[] {StyleClassHotbarPanel}, null, null), new[] @@ -410,6 +471,10 @@ namespace Content.Client.UserInterface.Stylesheets .Class(ButtonOpenBoth) .Prop(ContainerButton.StylePropertyStyleBox, BaseButtonOpenBoth), + Element().Class(ContainerButton.StyleClassButton) + .Class(ButtonSquare) + .Prop(ContainerButton.StylePropertyStyleBox, BaseButtonSquare), + new StyleRule(new SelectorElement(typeof(Label), new[] { Button.StyleClassButton }, null, null), new[] { new StyleProperty(Label.StylePropertyAlignMode, Label.AlignMode.Center), @@ -808,8 +873,43 @@ namespace Content.Client.UserInterface.Stylesheets }), // Those top menu buttons. - Element() - .Prop(Button.StylePropertyStyleBox, BaseButton), + // these use slight variations on the various BaseButton styles so that the content within them appears centered, + // which is NOT the case for the default BaseButton styles (OpenLeft/OpenRight adds extra padding on one of the sides + // which makes the TopButton icons appear off-center, which we don't want). + new StyleRule( + new SelectorElement(typeof(GameHud.TopButton), new[] {ButtonSquare}, null, null), + new[] + { + new StyleProperty(Button.StylePropertyStyleBox, topButtonSquare), + }), + + new StyleRule( + new SelectorElement(typeof(GameHud.TopButton), new[] {ButtonOpenLeft}, null, null), + new[] + { + new StyleProperty(Button.StylePropertyStyleBox, topButtonOpenLeft), + }), + + new StyleRule( + new SelectorElement(typeof(GameHud.TopButton), new[] {ButtonOpenRight}, null, null), + new[] + { + new StyleProperty(Button.StylePropertyStyleBox, topButtonOpenRight), + }), + + new StyleRule( + new SelectorElement(typeof(GameHud.TopButton), null, null, new[] {Button.StylePseudoClassNormal}), + new[] + { + new StyleProperty(Button.StylePropertyModulateSelf, ButtonColorDefault), + }), + + new StyleRule( + new SelectorElement(typeof(GameHud.TopButton), new[] {GameHud.TopButton.StyleClassRedTopButton}, null, new[] {Button.StylePseudoClassNormal}), + new[] + { + new StyleProperty(Button.StylePropertyModulateSelf, ButtonColorDefaultRed), + }), new StyleRule( new SelectorElement(typeof(GameHud.TopButton), null, null, new[] {Button.StylePseudoClassNormal}), @@ -832,6 +932,13 @@ namespace Content.Client.UserInterface.Stylesheets new StyleProperty(Button.StylePropertyModulateSelf, ButtonColorHovered), }), + new StyleRule( + new SelectorElement(typeof(GameHud.TopButton), new[] {GameHud.TopButton.StyleClassRedTopButton}, null, new[] {Button.StylePseudoClassHover}), + new[] + { + new StyleProperty(Button.StylePropertyModulateSelf, ButtonColorHoveredRed), + }), + new StyleRule( new SelectorElement(typeof(Label), new[] {GameHud.TopButton.StyleClassLabelTopButton}, null, null), new[] diff --git a/Content.Client/UserInterface/Stylesheets/StyleSpace.cs b/Content.Client/UserInterface/Stylesheets/StyleSpace.cs index f0fcc2fd77..b3d9fcb0d7 100644 --- a/Content.Client/UserInterface/Stylesheets/StyleSpace.cs +++ b/Content.Client/UserInterface/Stylesheets/StyleSpace.cs @@ -61,6 +61,10 @@ namespace Content.Client.UserInterface.Stylesheets .Class(ButtonOpenBoth) .Prop(ContainerButton.StylePropertyStyleBox, BaseButtonOpenBoth), + Element().Class(ContainerButton.StyleClassButton) + .Class(ButtonSquare) + .Prop(ContainerButton.StylePropertyStyleBox, BaseButtonSquare), + // Colors for the buttons. Element().Class(ContainerButton.StyleClassButton) .Pseudo(ContainerButton.StylePseudoClassNormal) diff --git a/Content.Client/UserInterface/Suspicion/SuspicionGui.cs b/Content.Client/UserInterface/Suspicion/SuspicionGui.cs index d42d9337d3..d2213379fe 100644 --- a/Content.Client/UserInterface/Suspicion/SuspicionGui.cs +++ b/Content.Client/UserInterface/Suspicion/SuspicionGui.cs @@ -18,7 +18,6 @@ namespace Content.Client.UserInterface.Suspicion public class SuspicionGui : Control { [Dependency] private readonly IPlayerManager _playerManager = default!; - [Dependency] private readonly IEntityManager _entityManager = default!; private readonly VBoxContainer _container; private readonly Button _roleButton; @@ -58,14 +57,11 @@ namespace Content.Client.UserInterface.Suspicion return; } - var allies = string.Join(", ", - role.Allies.Select(uid => _entityManager.GetEntity(uid).Name)); + var allies = string.Join(", ", role.Allies.Select(tuple => tuple.name)); var message = role.Allies.Count switch { 0 => Loc.GetString("You have no allies"), - 1 => Loc.GetString("Your ally is {0}", allies), - var n when n > 2 => Loc.GetString("Your allies are {0}", allies), - _ => throw new ArgumentException($"Invalid number of allies: {role.Allies.Count}") + var n => Loc.GetPluralString("Your ally is {0}", "Your allies are {0}", n, allies), }; role.Owner.PopupMessage(message); diff --git a/Content.IntegrationTests/ContentIntegrationTest.cs b/Content.IntegrationTests/ContentIntegrationTest.cs index e1914cadc2..20b35baf4b 100644 --- a/Content.IntegrationTests/ContentIntegrationTest.cs +++ b/Content.IntegrationTests/ContentIntegrationTest.cs @@ -4,6 +4,7 @@ using Content.Client; using Content.Client.Interfaces.Parallax; using Content.Server; using Content.Server.Interfaces.GameTicking; +using Content.Shared; using NUnit.Framework; using Robust.Server.Interfaces.Maps; using Robust.Server.Interfaces.Timing; @@ -48,7 +49,7 @@ namespace Content.IntegrationTests // Connecting to Discord is a massive waste of time. // Basically just makes the CI logs a mess. - options.CVarOverrides["discord.enabled"] = "true"; + options.CVarOverrides["discord.enabled"] = "false"; return base.StartClient(options); } @@ -76,6 +77,9 @@ namespace Content.IntegrationTests }); }; + // Avoid funny race conditions with the database. + options.CVarOverrides[CCVars.DatabaseSynchronous.Name] = "true"; + return base.StartServer(options); } diff --git a/Content.IntegrationTests/Tests/Destructible/DestructibleTests.cs b/Content.IntegrationTests/Tests/Destructible/DestructibleTests.cs index eb8cc0d241..31c5e1f470 100644 --- a/Content.IntegrationTests/Tests/Destructible/DestructibleTests.cs +++ b/Content.IntegrationTests/Tests/Destructible/DestructibleTests.cs @@ -20,9 +20,15 @@ namespace Content.IntegrationTests.Tests.Destructible [TestOf(typeof(Threshold))] public class DestructibleTests : ContentIntegrationTest { + private static readonly string SpawnedEntityId = "DestructibleTestsSpawnedEntity"; private static readonly string DestructibleEntityId = "DestructibleTestsDestructibleEntity"; + private static readonly string DestructibleDestructionEntityId = "DestructibleTestsDestructibleDestructionEntity"; private static readonly string Prototypes = $@" +- type: entity + id: {SpawnedEntityId} + name: {SpawnedEntityId} + - type: entity id: {DestructibleEntityId} name: {DestructibleEntityId} @@ -35,15 +41,35 @@ namespace Content.IntegrationTests.Tests.Destructible 50: triggersOnce: false behaviors: - - !type:DoActsBehavior - acts: [""Breakage""] - !type:PlaySoundBehavior sound: /Audio/Effects/woodhit.ogg - !type:SpawnEntitiesBehavior spawn: - WoodPlank: + {SpawnedEntityId}: min: 1 max: 1 + - !type:DoActsBehavior + acts: [""Breakage""] + - type: TestThresholdListener + +- type: entity + id: {DestructibleDestructionEntityId} + name: {DestructibleDestructionEntityId} + components: + - type: Damageable + - type: Destructible + thresholds: + 50: + behaviors: + - !type:PlaySoundBehavior + sound: /Audio/Effects/woodhit.ogg + - !type:SpawnEntitiesBehavior + spawn: + {SpawnedEntityId}: + min: 1 + max: 1 + - !type:DoActsBehavior # This must come last as it destroys the entity. + acts: [""Destruction""] - type: TestThresholdListener "; @@ -147,15 +173,15 @@ namespace Content.IntegrationTests.Tests.Destructible // Check that it matches the YAML prototype Assert.That(threshold.Behaviors, Has.Count.EqualTo(3)); - var actsThreshold = (DoActsBehavior) threshold.Behaviors[0]; - var soundThreshold = (PlaySoundBehavior) threshold.Behaviors[1]; - var spawnThreshold = (SpawnEntitiesBehavior) threshold.Behaviors[2]; + var soundThreshold = (PlaySoundBehavior) threshold.Behaviors[0]; + var spawnThreshold = (SpawnEntitiesBehavior) threshold.Behaviors[1]; + var actsThreshold = (DoActsBehavior) threshold.Behaviors[2]; Assert.That(actsThreshold.Acts, Is.EqualTo(ThresholdActs.Breakage)); Assert.That(soundThreshold.Sound, Is.EqualTo("/Audio/Effects/woodhit.ogg")); Assert.That(spawnThreshold.Spawn, Is.Not.Null); Assert.That(spawnThreshold.Spawn.Count, Is.EqualTo(1)); - Assert.That(spawnThreshold.Spawn.Single().Key, Is.EqualTo("WoodPlank")); + Assert.That(spawnThreshold.Spawn.Single().Key, Is.EqualTo(SpawnedEntityId)); Assert.That(spawnThreshold.Spawn.Single().Value.Min, Is.EqualTo(1)); Assert.That(spawnThreshold.Spawn.Single().Value.Max, Is.EqualTo(1)); Assert.That(threshold.Triggered, Is.True); @@ -202,16 +228,16 @@ namespace Content.IntegrationTests.Tests.Destructible // Check that it matches the YAML prototype Assert.That(threshold.Behaviors, Has.Count.EqualTo(3)); - actsThreshold = (DoActsBehavior) threshold.Behaviors[0]; - soundThreshold = (PlaySoundBehavior) threshold.Behaviors[1]; - spawnThreshold = (SpawnEntitiesBehavior) threshold.Behaviors[2]; + soundThreshold = (PlaySoundBehavior) threshold.Behaviors[0]; + spawnThreshold = (SpawnEntitiesBehavior) threshold.Behaviors[1]; + actsThreshold = (DoActsBehavior) threshold.Behaviors[2]; // Check that it matches the YAML prototype Assert.That(actsThreshold.Acts, Is.EqualTo(ThresholdActs.Breakage)); Assert.That(soundThreshold.Sound, Is.EqualTo("/Audio/Effects/woodhit.ogg")); Assert.That(spawnThreshold.Spawn, Is.Not.Null); Assert.That(spawnThreshold.Spawn.Count, Is.EqualTo(1)); - Assert.That(spawnThreshold.Spawn.Single().Key, Is.EqualTo("WoodPlank")); + Assert.That(spawnThreshold.Spawn.Single().Key, Is.EqualTo(SpawnedEntityId)); Assert.That(spawnThreshold.Spawn.Single().Value.Min, Is.EqualTo(1)); Assert.That(spawnThreshold.Spawn.Single().Value.Max, Is.EqualTo(1)); Assert.That(threshold.Triggered, Is.True); @@ -254,16 +280,16 @@ namespace Content.IntegrationTests.Tests.Destructible Assert.That(threshold.Behaviors, Has.Count.EqualTo(3)); - actsThreshold = (DoActsBehavior) threshold.Behaviors[0]; - soundThreshold = (PlaySoundBehavior) threshold.Behaviors[1]; - spawnThreshold = (SpawnEntitiesBehavior) threshold.Behaviors[2]; + soundThreshold = (PlaySoundBehavior) threshold.Behaviors[0]; + spawnThreshold = (SpawnEntitiesBehavior) threshold.Behaviors[1]; + actsThreshold = (DoActsBehavior) threshold.Behaviors[2]; // Check that it matches the YAML prototype Assert.That(actsThreshold.Acts, Is.EqualTo(ThresholdActs.Breakage)); Assert.That(soundThreshold.Sound, Is.EqualTo("/Audio/Effects/woodhit.ogg")); Assert.That(spawnThreshold.Spawn, Is.Not.Null); Assert.That(spawnThreshold.Spawn.Count, Is.EqualTo(1)); - Assert.That(spawnThreshold.Spawn.Single().Key, Is.EqualTo("WoodPlank")); + Assert.That(spawnThreshold.Spawn.Single().Key, Is.EqualTo(SpawnedEntityId)); Assert.That(spawnThreshold.Spawn.Single().Value.Min, Is.EqualTo(1)); Assert.That(spawnThreshold.Spawn.Single().Value.Max, Is.EqualTo(1)); Assert.That(threshold.Triggered, Is.True); @@ -305,5 +331,84 @@ namespace Content.IntegrationTests.Tests.Destructible Assert.That(sThresholdListenerComponent.ThresholdsReached, Is.Empty); }); } + + [Test] + public async Task DestructibleDestructionTest() + { + var server = StartServerDummyTicker(new ServerContentIntegrationOption + { + ExtraPrototypes = Prototypes, + ContentBeforeIoC = () => + { + IoCManager.Resolve().Register(); + } + }); + + await server.WaitIdleAsync(); + + var sEntityManager = server.ResolveDependency(); + var sMapManager = server.ResolveDependency(); + + IEntity sDestructibleEntity = null; + IDamageableComponent sDamageableComponent = null; + DestructibleComponent sDestructibleComponent = null; + TestThresholdListenerComponent sThresholdListenerComponent = null; + + await server.WaitPost(() => + { + var mapId = new MapId(1); + var coordinates = new MapCoordinates(0, 0, mapId); + sMapManager.CreateMap(mapId); + + sDestructibleEntity = sEntityManager.SpawnEntity(DestructibleDestructionEntityId, coordinates); + sDamageableComponent = sDestructibleEntity.GetComponent(); + sDestructibleComponent = sDestructibleEntity.GetComponent(); + sThresholdListenerComponent = sDestructibleEntity.GetComponent(); + }); + + await server.WaitAssertion(() => + { + var coordinates = sDestructibleEntity.Transform.Coordinates; + + Assert.DoesNotThrow(() => + { + Assert.True(sDamageableComponent.ChangeDamage(DamageClass.Brute, 50, true)); + }); + + Assert.That(sThresholdListenerComponent.ThresholdsReached.Count, Is.EqualTo(1)); + + var threshold = sThresholdListenerComponent.ThresholdsReached[0].Threshold; + + Assert.That(threshold.Triggered, Is.True); + Assert.That(threshold.Behaviors.Count, Is.EqualTo(3)); + + var spawnEntitiesBehavior = (SpawnEntitiesBehavior) threshold.Behaviors.Single(b => b is SpawnEntitiesBehavior); + + Assert.That(spawnEntitiesBehavior.Spawn.Count, Is.EqualTo(1)); + Assert.That(spawnEntitiesBehavior.Spawn.Keys.Single(), Is.EqualTo(SpawnedEntityId)); + Assert.That(spawnEntitiesBehavior.Spawn.Values.Single(), Is.EqualTo(new MinMax {Min = 1, Max = 1})); + + var entitiesInRange = sEntityManager.GetEntitiesInRange(coordinates, 2); + var found = false; + + foreach (var entity in entitiesInRange) + { + if (entity.Prototype == null) + { + continue; + } + + if (entity.Prototype.Name != SpawnedEntityId) + { + continue; + } + + found = true; + break; + } + + Assert.That(found, Is.True); + }); + } } } diff --git a/Content.IntegrationTests/Tests/SaveLoadSaveTest.cs b/Content.IntegrationTests/Tests/SaveLoadSaveTest.cs index d130e3f821..23ab959a3e 100644 --- a/Content.IntegrationTests/Tests/SaveLoadSaveTest.cs +++ b/Content.IntegrationTests/Tests/SaveLoadSaveTest.cs @@ -54,17 +54,21 @@ namespace Content.IntegrationTests.Tests } Assert.Multiple(() => { - Assert.That(one, Is.EqualTo(two)); + Assert.That(two, Is.EqualTo(one)); var failed = TestContext.CurrentContext.Result.Assertions.FirstOrDefault(); if (failed != null) { - var path1 = Path.Combine(userData.RootDir!,rp1.ToRelativeSystemPath()); - var path2 = Path.Combine(userData.RootDir!,rp2.ToRelativeSystemPath()); - TestContext.AddTestAttachment(path1); - TestContext.AddTestAttachment(path2); + var oneTmp = Path.GetTempFileName(); + var twoTmp = Path.GetTempFileName(); + + File.WriteAllText(oneTmp, one); + File.WriteAllText(twoTmp, two); + + TestContext.AddTestAttachment(oneTmp, "First save file"); + TestContext.AddTestAttachment(twoTmp, "Second save file"); TestContext.Error.WriteLine("Complete output:"); - TestContext.Error.WriteLine(path1); - TestContext.Error.WriteLine(path2); + TestContext.Error.WriteLine(oneTmp); + TestContext.Error.WriteLine(twoTmp); } }); } diff --git a/Content.IntegrationTests/Tests/StationEvents/StationEventsSystemTest.cs b/Content.IntegrationTests/Tests/StationEvents/StationEventsSystemTest.cs index 04b60218c7..cce62afc06 100644 --- a/Content.IntegrationTests/Tests/StationEvents/StationEventsSystemTest.cs +++ b/Content.IntegrationTests/Tests/StationEvents/StationEventsSystemTest.cs @@ -1,4 +1,4 @@ -using System.Threading.Tasks; +using System.Threading.Tasks; using Content.Server.GameObjects.EntitySystems.StationEvents; using NUnit.Framework; using Robust.Shared.GameObjects.Systems; @@ -17,23 +17,27 @@ namespace Content.IntegrationTests.Tests.StationEvents server.Assert(() => { - // Idle each event once + // Idle each event var stationEventsSystem = EntitySystem.Get(); var dummyFrameTime = (float) IoCManager.Resolve().TickPeriod.TotalSeconds; foreach (var stationEvent in stationEventsSystem.StationEvents) { + stationEvent.Announce(); + stationEvent.Update(dummyFrameTime); stationEvent.Startup(); stationEvent.Update(dummyFrameTime); + stationEvent.Running = false; stationEvent.Shutdown(); - Assert.That(stationEvent.Occurrences == 1); + // Due to timings some events might startup twice when in reality they wouldn't. + Assert.That(stationEvent.Occurrences > 0); } stationEventsSystem.Reset(); foreach (var stationEvent in stationEventsSystem.StationEvents) { - Assert.That(stationEvent.Occurrences == 0); + Assert.That(stationEvent.Occurrences, Is.EqualTo(0)); } }); diff --git a/Content.Server.Database/Migrations/Postgres/20210103151756_BackpackPreference.Designer.cs b/Content.Server.Database/Migrations/Postgres/20210103151756_BackpackPreference.Designer.cs new file mode 100644 index 0000000000..1a66e59863 --- /dev/null +++ b/Content.Server.Database/Migrations/Postgres/20210103151756_BackpackPreference.Designer.cs @@ -0,0 +1,575 @@ +// +using System; +using System.Net; +using Content.Server.Database; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +namespace Content.Server.Database.Migrations.Postgres +{ + [DbContext(typeof(PostgresServerDbContext))] + [Migration("20210103151756_BackpackPreference")] + partial class BackpackPreference + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseIdentityByDefaultColumns() + .HasAnnotation("Relational:MaxIdentifierLength", 63) + .HasAnnotation("ProductVersion", "5.0.0"); + + modelBuilder.Entity("Content.Server.Database.Admin", b => + { + b.Property("UserId") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("user_id"); + + b.Property("AdminRankId") + .HasColumnType("integer") + .HasColumnName("admin_rank_id"); + + b.Property("Title") + .HasColumnType("text") + .HasColumnName("title"); + + b.HasKey("UserId"); + + b.HasIndex("AdminRankId"); + + b.ToTable("admin"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminFlag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("admin_flag_id") + .UseIdentityByDefaultColumn(); + + b.Property("AdminId") + .HasColumnType("uuid") + .HasColumnName("admin_id"); + + b.Property("Flag") + .IsRequired() + .HasColumnType("text") + .HasColumnName("flag"); + + b.Property("Negative") + .HasColumnType("boolean") + .HasColumnName("negative"); + + b.HasKey("Id"); + + b.HasIndex("AdminId"); + + b.HasIndex("Flag", "AdminId") + .IsUnique(); + + b.ToTable("admin_flag"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRank", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("admin_rank_id") + .UseIdentityByDefaultColumn(); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name"); + + b.HasKey("Id"); + + b.ToTable("admin_rank"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRankFlag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("admin_rank_flag_id") + .UseIdentityByDefaultColumn(); + + b.Property("AdminRankId") + .HasColumnType("integer") + .HasColumnName("admin_rank_id"); + + b.Property("Flag") + .IsRequired() + .HasColumnType("text") + .HasColumnName("flag"); + + b.HasKey("Id"); + + b.HasIndex("AdminRankId"); + + b.HasIndex("Flag", "AdminRankId") + .IsUnique(); + + b.ToTable("admin_rank_flag"); + }); + + modelBuilder.Entity("Content.Server.Database.Antag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("antag_id") + .UseIdentityByDefaultColumn(); + + b.Property("AntagName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("antag_name"); + + b.Property("ProfileId") + .HasColumnType("integer") + .HasColumnName("profile_id"); + + b.HasKey("Id"); + + b.HasIndex("ProfileId", "AntagName") + .IsUnique(); + + b.ToTable("antag"); + }); + + modelBuilder.Entity("Content.Server.Database.AssignedUserId", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("assigned_user_id_id") + .UseIdentityByDefaultColumn(); + + b.Property("UserId") + .HasColumnType("uuid") + .HasColumnName("user_id"); + + b.Property("UserName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("user_name"); + + b.HasKey("Id"); + + b.HasIndex("UserId") + .IsUnique(); + + b.HasIndex("UserName") + .IsUnique(); + + b.ToTable("assigned_user_id"); + }); + + modelBuilder.Entity("Content.Server.Database.Job", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("job_id") + .UseIdentityByDefaultColumn(); + + b.Property("JobName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("job_name"); + + b.Property("Priority") + .HasColumnType("integer") + .HasColumnName("priority"); + + b.Property("ProfileId") + .HasColumnType("integer") + .HasColumnName("profile_id"); + + b.HasKey("Id"); + + b.HasIndex("ProfileId"); + + b.ToTable("job"); + }); + + modelBuilder.Entity("Content.Server.Database.PostgresConnectionLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("connection_log_id") + .UseIdentityByDefaultColumn(); + + b.Property("Address") + .IsRequired() + .HasColumnType("inet") + .HasColumnName("address"); + + b.Property("Time") + .HasColumnType("timestamp with time zone") + .HasColumnName("time"); + + b.Property("UserId") + .HasColumnType("uuid") + .HasColumnName("user_id"); + + b.Property("UserName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("user_name"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("connection_log"); + + b.HasCheckConstraint("AddressNotIPv6MappedIPv4", "NOT inet '::ffff:0.0.0.0/96' >>= address"); + }); + + modelBuilder.Entity("Content.Server.Database.PostgresPlayer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("player_id") + .UseIdentityByDefaultColumn(); + + b.Property("FirstSeenTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("first_seen_time"); + + b.Property("LastSeenAddress") + .IsRequired() + .HasColumnType("inet") + .HasColumnName("last_seen_address"); + + b.Property("LastSeenTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("last_seen_time"); + + b.Property("LastSeenUserName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("last_seen_user_name"); + + b.Property("UserId") + .HasColumnType("uuid") + .HasColumnName("user_id"); + + b.HasKey("Id"); + + b.HasIndex("LastSeenUserName"); + + b.HasIndex("UserId") + .IsUnique(); + + b.ToTable("player"); + + b.HasCheckConstraint("LastSeenAddressNotIPv6MappedIPv4", "NOT inet '::ffff:0.0.0.0/96' >>= last_seen_address"); + }); + + modelBuilder.Entity("Content.Server.Database.PostgresServerBan", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("server_ban_id") + .UseIdentityByDefaultColumn(); + + b.Property?>("Address") + .HasColumnType("inet") + .HasColumnName("address"); + + b.Property("BanTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("ban_time"); + + b.Property("BanningAdmin") + .HasColumnType("uuid") + .HasColumnName("banning_admin"); + + b.Property("ExpirationTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("expiration_time"); + + b.Property("Reason") + .IsRequired() + .HasColumnType("text") + .HasColumnName("reason"); + + b.Property("UserId") + .HasColumnType("uuid") + .HasColumnName("user_id"); + + b.HasKey("Id"); + + b.HasIndex("Address"); + + b.HasIndex("UserId"); + + b.ToTable("server_ban"); + + b.HasCheckConstraint("AddressNotIPv6MappedIPv4", "NOT inet '::ffff:0.0.0.0/96' >>= address"); + + b.HasCheckConstraint("HaveEitherAddressOrUserId", "address IS NOT NULL OR user_id IS NOT NULL"); + }); + + modelBuilder.Entity("Content.Server.Database.PostgresServerUnban", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("unban_id") + .UseIdentityByDefaultColumn(); + + b.Property("BanId") + .HasColumnType("integer") + .HasColumnName("ban_id"); + + b.Property("UnbanTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("unban_time"); + + b.Property("UnbanningAdmin") + .HasColumnType("uuid") + .HasColumnName("unbanning_admin"); + + b.HasKey("Id"); + + b.HasIndex("BanId") + .IsUnique(); + + b.ToTable("server_unban"); + }); + + modelBuilder.Entity("Content.Server.Database.Preference", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("preference_id") + .UseIdentityByDefaultColumn(); + + b.Property("SelectedCharacterSlot") + .HasColumnType("integer") + .HasColumnName("selected_character_slot"); + + b.Property("UserId") + .HasColumnType("uuid") + .HasColumnName("user_id"); + + b.HasKey("Id"); + + b.HasIndex("UserId") + .IsUnique(); + + b.ToTable("preference"); + }); + + modelBuilder.Entity("Content.Server.Database.Profile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("profile_id") + .UseIdentityByDefaultColumn(); + + b.Property("Age") + .HasColumnType("integer") + .HasColumnName("age"); + + b.Property("Backpack") + .IsRequired() + .HasColumnType("text") + .HasColumnName("backpack"); + + b.Property("CharacterName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("char_name"); + + b.Property("Clothing") + .IsRequired() + .HasColumnType("text") + .HasColumnName("clothing"); + + b.Property("EyeColor") + .IsRequired() + .HasColumnType("text") + .HasColumnName("eye_color"); + + b.Property("FacialHairColor") + .IsRequired() + .HasColumnType("text") + .HasColumnName("facial_hair_color"); + + b.Property("FacialHairName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("facial_hair_name"); + + b.Property("Gender") + .IsRequired() + .HasColumnType("text") + .HasColumnName("gender"); + + b.Property("HairColor") + .IsRequired() + .HasColumnType("text") + .HasColumnName("hair_color"); + + b.Property("HairName") + .IsRequired() + .HasColumnType("text") + .HasColumnName("hair_name"); + + b.Property("PreferenceId") + .HasColumnType("integer") + .HasColumnName("preference_id"); + + b.Property("PreferenceUnavailable") + .HasColumnType("integer") + .HasColumnName("pref_unavailable"); + + b.Property("Sex") + .IsRequired() + .HasColumnType("text") + .HasColumnName("sex"); + + b.Property("SkinColor") + .IsRequired() + .HasColumnType("text") + .HasColumnName("skin_color"); + + b.Property("Slot") + .HasColumnType("integer") + .HasColumnName("slot"); + + b.HasKey("Id"); + + b.HasIndex("PreferenceId"); + + b.HasIndex("Slot", "PreferenceId") + .IsUnique(); + + b.ToTable("profile"); + }); + + modelBuilder.Entity("Content.Server.Database.Admin", b => + { + b.HasOne("Content.Server.Database.AdminRank", "AdminRank") + .WithMany("Admins") + .HasForeignKey("AdminRankId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("AdminRank"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminFlag", b => + { + b.HasOne("Content.Server.Database.Admin", "Admin") + .WithMany("Flags") + .HasForeignKey("AdminId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Admin"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRankFlag", b => + { + b.HasOne("Content.Server.Database.AdminRank", "Rank") + .WithMany("Flags") + .HasForeignKey("AdminRankId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Rank"); + }); + + modelBuilder.Entity("Content.Server.Database.Antag", b => + { + b.HasOne("Content.Server.Database.Profile", "Profile") + .WithMany("Antags") + .HasForeignKey("ProfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Profile"); + }); + + modelBuilder.Entity("Content.Server.Database.Job", b => + { + b.HasOne("Content.Server.Database.Profile", "Profile") + .WithMany("Jobs") + .HasForeignKey("ProfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Profile"); + }); + + modelBuilder.Entity("Content.Server.Database.PostgresServerUnban", b => + { + b.HasOne("Content.Server.Database.PostgresServerBan", "Ban") + .WithOne("Unban") + .HasForeignKey("Content.Server.Database.PostgresServerUnban", "BanId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Ban"); + }); + + modelBuilder.Entity("Content.Server.Database.Profile", b => + { + b.HasOne("Content.Server.Database.Preference", "Preference") + .WithMany("Profiles") + .HasForeignKey("PreferenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Preference"); + }); + + modelBuilder.Entity("Content.Server.Database.Admin", b => + { + b.Navigation("Flags"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRank", b => + { + b.Navigation("Admins"); + + b.Navigation("Flags"); + }); + + modelBuilder.Entity("Content.Server.Database.PostgresServerBan", b => + { + b.Navigation("Unban"); + }); + + modelBuilder.Entity("Content.Server.Database.Preference", b => + { + b.Navigation("Profiles"); + }); + + modelBuilder.Entity("Content.Server.Database.Profile", b => + { + b.Navigation("Antags"); + + b.Navigation("Jobs"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Content.Server.Database/Migrations/Postgres/20210103151756_BackpackPreference.cs b/Content.Server.Database/Migrations/Postgres/20210103151756_BackpackPreference.cs new file mode 100644 index 0000000000..0c5a7356bb --- /dev/null +++ b/Content.Server.Database/Migrations/Postgres/20210103151756_BackpackPreference.cs @@ -0,0 +1,24 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +namespace Content.Server.Database.Migrations.Postgres +{ + public partial class BackpackPreference : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "backpack", + table: "profile", + type: "text", + nullable: false, + defaultValue: ""); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "backpack", + table: "profile"); + } + } +} diff --git a/Content.Server.Database/Migrations/Postgres/PostgresServerDbContextModelSnapshot.cs b/Content.Server.Database/Migrations/Postgres/PostgresServerDbContextModelSnapshot.cs index 589940e4a6..b7a48063b5 100644 --- a/Content.Server.Database/Migrations/Postgres/PostgresServerDbContextModelSnapshot.cs +++ b/Content.Server.Database/Migrations/Postgres/PostgresServerDbContextModelSnapshot.cs @@ -386,6 +386,11 @@ namespace Content.Server.Database.Migrations.Postgres .HasColumnType("integer") .HasColumnName("age"); + b.Property("Backpack") + .IsRequired() + .HasColumnType("text") + .HasColumnName("backpack"); + b.Property("CharacterName") .IsRequired() .HasColumnType("text") diff --git a/Content.Server.Database/Migrations/Sqlite/20210103151752_BackpackPreference.Designer.cs b/Content.Server.Database/Migrations/Sqlite/20210103151752_BackpackPreference.Designer.cs new file mode 100644 index 0000000000..661cfbc318 --- /dev/null +++ b/Content.Server.Database/Migrations/Sqlite/20210103151752_BackpackPreference.Designer.cs @@ -0,0 +1,542 @@ +// +using System; +using Content.Server.Database; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +namespace Content.Server.Database.Migrations.Sqlite +{ + [DbContext(typeof(SqliteServerDbContext))] + [Migration("20210103151752_BackpackPreference")] + partial class BackpackPreference + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "5.0.0"); + + modelBuilder.Entity("Content.Server.Database.Admin", b => + { + b.Property("UserId") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT") + .HasColumnName("user_id"); + + b.Property("AdminRankId") + .HasColumnType("INTEGER") + .HasColumnName("admin_rank_id"); + + b.Property("Title") + .HasColumnType("TEXT") + .HasColumnName("title"); + + b.HasKey("UserId"); + + b.HasIndex("AdminRankId"); + + b.ToTable("admin"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminFlag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("admin_flag_id"); + + b.Property("AdminId") + .HasColumnType("TEXT") + .HasColumnName("admin_id"); + + b.Property("Flag") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("flag"); + + b.Property("Negative") + .HasColumnType("INTEGER") + .HasColumnName("negative"); + + b.HasKey("Id"); + + b.HasIndex("AdminId"); + + b.HasIndex("Flag", "AdminId") + .IsUnique(); + + b.ToTable("admin_flag"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRank", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("admin_rank_id"); + + b.Property("Name") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("name"); + + b.HasKey("Id"); + + b.ToTable("admin_rank"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRankFlag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("admin_rank_flag_id"); + + b.Property("AdminRankId") + .HasColumnType("INTEGER") + .HasColumnName("admin_rank_id"); + + b.Property("Flag") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("flag"); + + b.HasKey("Id"); + + b.HasIndex("AdminRankId"); + + b.HasIndex("Flag", "AdminRankId") + .IsUnique(); + + b.ToTable("admin_rank_flag"); + }); + + modelBuilder.Entity("Content.Server.Database.Antag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("antag_id"); + + b.Property("AntagName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("antag_name"); + + b.Property("ProfileId") + .HasColumnType("INTEGER") + .HasColumnName("profile_id"); + + b.HasKey("Id"); + + b.HasIndex("ProfileId", "AntagName") + .IsUnique(); + + b.ToTable("antag"); + }); + + modelBuilder.Entity("Content.Server.Database.AssignedUserId", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("assigned_user_id_id"); + + b.Property("UserId") + .HasColumnType("TEXT") + .HasColumnName("user_id"); + + b.Property("UserName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("user_name"); + + b.HasKey("Id"); + + b.HasIndex("UserId") + .IsUnique(); + + b.HasIndex("UserName") + .IsUnique(); + + b.ToTable("assigned_user_id"); + }); + + modelBuilder.Entity("Content.Server.Database.Job", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("job_id"); + + b.Property("JobName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("job_name"); + + b.Property("Priority") + .HasColumnType("INTEGER") + .HasColumnName("priority"); + + b.Property("ProfileId") + .HasColumnType("INTEGER") + .HasColumnName("profile_id"); + + b.HasKey("Id"); + + b.HasIndex("ProfileId"); + + b.ToTable("job"); + }); + + modelBuilder.Entity("Content.Server.Database.Preference", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("preference_id"); + + b.Property("SelectedCharacterSlot") + .HasColumnType("INTEGER") + .HasColumnName("selected_character_slot"); + + b.Property("UserId") + .HasColumnType("TEXT") + .HasColumnName("user_id"); + + b.HasKey("Id"); + + b.HasIndex("UserId") + .IsUnique(); + + b.ToTable("preference"); + }); + + modelBuilder.Entity("Content.Server.Database.Profile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("profile_id"); + + b.Property("Age") + .HasColumnType("INTEGER") + .HasColumnName("age"); + + b.Property("Backpack") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("backpack"); + + b.Property("CharacterName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("char_name"); + + b.Property("Clothing") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("clothing"); + + b.Property("EyeColor") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("eye_color"); + + b.Property("FacialHairColor") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("facial_hair_color"); + + b.Property("FacialHairName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("facial_hair_name"); + + b.Property("Gender") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("gender"); + + b.Property("HairColor") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("hair_color"); + + b.Property("HairName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("hair_name"); + + b.Property("PreferenceId") + .HasColumnType("INTEGER") + .HasColumnName("preference_id"); + + b.Property("PreferenceUnavailable") + .HasColumnType("INTEGER") + .HasColumnName("pref_unavailable"); + + b.Property("Sex") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("sex"); + + b.Property("SkinColor") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("skin_color"); + + b.Property("Slot") + .HasColumnType("INTEGER") + .HasColumnName("slot"); + + b.HasKey("Id"); + + b.HasIndex("PreferenceId"); + + b.HasIndex("Slot", "PreferenceId") + .IsUnique(); + + b.ToTable("profile"); + }); + + modelBuilder.Entity("Content.Server.Database.SqliteConnectionLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("connection_log_id"); + + b.Property("Address") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("address"); + + b.Property("Time") + .HasColumnType("TEXT") + .HasColumnName("time"); + + b.Property("UserId") + .HasColumnType("TEXT") + .HasColumnName("user_id"); + + b.Property("UserName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("user_name"); + + b.HasKey("Id"); + + b.ToTable("connection_log"); + }); + + modelBuilder.Entity("Content.Server.Database.SqlitePlayer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("player_id"); + + b.Property("FirstSeenTime") + .HasColumnType("TEXT") + .HasColumnName("first_seen_time"); + + b.Property("LastSeenAddress") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("last_seen_address"); + + b.Property("LastSeenTime") + .HasColumnType("TEXT") + .HasColumnName("last_seen_time"); + + b.Property("LastSeenUserName") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("last_seen_user_name"); + + b.Property("UserId") + .HasColumnType("TEXT") + .HasColumnName("user_id"); + + b.HasKey("Id"); + + b.HasIndex("LastSeenUserName"); + + b.ToTable("player"); + }); + + modelBuilder.Entity("Content.Server.Database.SqliteServerBan", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("ban_id"); + + b.Property("Address") + .HasColumnType("TEXT") + .HasColumnName("address"); + + b.Property("BanTime") + .HasColumnType("TEXT") + .HasColumnName("ban_time"); + + b.Property("BanningAdmin") + .HasColumnType("TEXT") + .HasColumnName("banning_admin"); + + b.Property("ExpirationTime") + .HasColumnType("TEXT") + .HasColumnName("expiration_time"); + + b.Property("Reason") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("reason"); + + b.Property("UserId") + .HasColumnType("TEXT") + .HasColumnName("user_id"); + + b.HasKey("Id"); + + b.ToTable("ban"); + }); + + modelBuilder.Entity("Content.Server.Database.SqliteServerUnban", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER") + .HasColumnName("unban_id"); + + b.Property("BanId") + .HasColumnType("INTEGER") + .HasColumnName("ban_id"); + + b.Property("UnbanTime") + .HasColumnType("TEXT") + .HasColumnName("unban_time"); + + b.Property("UnbanningAdmin") + .HasColumnType("TEXT") + .HasColumnName("unbanning_admin"); + + b.HasKey("Id"); + + b.HasIndex("BanId") + .IsUnique(); + + b.ToTable("unban"); + }); + + modelBuilder.Entity("Content.Server.Database.Admin", b => + { + b.HasOne("Content.Server.Database.AdminRank", "AdminRank") + .WithMany("Admins") + .HasForeignKey("AdminRankId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("AdminRank"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminFlag", b => + { + b.HasOne("Content.Server.Database.Admin", "Admin") + .WithMany("Flags") + .HasForeignKey("AdminId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Admin"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRankFlag", b => + { + b.HasOne("Content.Server.Database.AdminRank", "Rank") + .WithMany("Flags") + .HasForeignKey("AdminRankId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Rank"); + }); + + modelBuilder.Entity("Content.Server.Database.Antag", b => + { + b.HasOne("Content.Server.Database.Profile", "Profile") + .WithMany("Antags") + .HasForeignKey("ProfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Profile"); + }); + + modelBuilder.Entity("Content.Server.Database.Job", b => + { + b.HasOne("Content.Server.Database.Profile", "Profile") + .WithMany("Jobs") + .HasForeignKey("ProfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Profile"); + }); + + modelBuilder.Entity("Content.Server.Database.Profile", b => + { + b.HasOne("Content.Server.Database.Preference", "Preference") + .WithMany("Profiles") + .HasForeignKey("PreferenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Preference"); + }); + + modelBuilder.Entity("Content.Server.Database.SqliteServerUnban", b => + { + b.HasOne("Content.Server.Database.SqliteServerBan", "Ban") + .WithOne("Unban") + .HasForeignKey("Content.Server.Database.SqliteServerUnban", "BanId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Ban"); + }); + + modelBuilder.Entity("Content.Server.Database.Admin", b => + { + b.Navigation("Flags"); + }); + + modelBuilder.Entity("Content.Server.Database.AdminRank", b => + { + b.Navigation("Admins"); + + b.Navigation("Flags"); + }); + + modelBuilder.Entity("Content.Server.Database.Preference", b => + { + b.Navigation("Profiles"); + }); + + modelBuilder.Entity("Content.Server.Database.Profile", b => + { + b.Navigation("Antags"); + + b.Navigation("Jobs"); + }); + + modelBuilder.Entity("Content.Server.Database.SqliteServerBan", b => + { + b.Navigation("Unban"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Content.Server.Database/Migrations/Sqlite/20210103151752_BackpackPreference.cs b/Content.Server.Database/Migrations/Sqlite/20210103151752_BackpackPreference.cs new file mode 100644 index 0000000000..ff907ca1f2 --- /dev/null +++ b/Content.Server.Database/Migrations/Sqlite/20210103151752_BackpackPreference.cs @@ -0,0 +1,24 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +namespace Content.Server.Database.Migrations.Sqlite +{ + public partial class BackpackPreference : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "backpack", + table: "profile", + type: "TEXT", + nullable: false, + defaultValue: ""); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "backpack", + table: "profile"); + } + } +} diff --git a/Content.Server.Database/Migrations/Sqlite/SqliteServerDbContextModelSnapshot.cs b/Content.Server.Database/Migrations/Sqlite/SqliteServerDbContextModelSnapshot.cs index f6c1eb5e3a..8e93f4acbf 100644 --- a/Content.Server.Database/Migrations/Sqlite/SqliteServerDbContextModelSnapshot.cs +++ b/Content.Server.Database/Migrations/Sqlite/SqliteServerDbContextModelSnapshot.cs @@ -223,6 +223,11 @@ namespace Content.Server.Database.Migrations.Sqlite .HasColumnType("INTEGER") .HasColumnName("age"); + b.Property("Backpack") + .IsRequired() + .HasColumnType("TEXT") + .HasColumnName("backpack"); + b.Property("CharacterName") .IsRequired() .HasColumnType("TEXT") diff --git a/Content.Server.Database/Model.cs b/Content.Server.Database/Model.cs index e5d365b602..ed5c51e8c6 100644 --- a/Content.Server.Database/Model.cs +++ b/Content.Server.Database/Model.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; @@ -99,6 +99,7 @@ namespace Content.Server.Database [Column("eye_color")] public string EyeColor { get; set; } = null!; [Column("skin_color")] public string SkinColor { get; set; } = null!; [Column("clothing")] public string Clothing { get; set; } = null!; + [Column("backpack")] public string Backpack { get; set; } = null!; public List Jobs { get; } = new(); public List Antags { get; } = new(); diff --git a/Content.Server/AI/Operators/AiOperator.cs b/Content.Server/AI/Operators/AiOperator.cs index 94c809eabd..4714998040 100644 --- a/Content.Server/AI/Operators/AiOperator.cs +++ b/Content.Server/AI/Operators/AiOperator.cs @@ -5,38 +5,36 @@ namespace Content.Server.AI.Operators { public abstract class AiOperator { - public bool HasStartup => _hasStartup; - private bool _hasStartup = false; - private bool _hasShutdown = false; + public bool HasStartup { get; private set; } + + public bool HasShutdown { get; private set; } /// /// Called once when the AiLogicProcessor starts this action /// - public virtual bool TryStartup() + /// true if it hasn't started up previously + public virtual bool Startup() { // If we've already startup then no point continuing // This signals to the override that it's already startup // Should probably throw but it made some code elsewhere marginally easier - if (_hasStartup) - { + if (HasStartup) return false; - } - - _hasStartup = true; + + HasStartup = true; return true; } /// /// Called once when the AiLogicProcessor is done with this action if the outcome is successful or fails. /// - public virtual void Shutdown(Outcome outcome) + public virtual bool Shutdown(Outcome outcome) { - if (_hasShutdown) - { - throw new InvalidOperationException("AiOperator has already shutdown"); - } + if (HasShutdown) + return false; - _hasShutdown = true; + HasShutdown = true; + return true; } /// @@ -53,4 +51,4 @@ namespace Content.Server.AI.Operators Continuing, Failed, } -} \ No newline at end of file +} diff --git a/Content.Server/AI/Operators/Combat/Melee/SwingMeleeWeaponOperator.cs b/Content.Server/AI/Operators/Combat/Melee/SwingMeleeWeaponOperator.cs index 69db28af24..90a174ea34 100644 --- a/Content.Server/AI/Operators/Combat/Melee/SwingMeleeWeaponOperator.cs +++ b/Content.Server/AI/Operators/Combat/Melee/SwingMeleeWeaponOperator.cs @@ -22,9 +22,9 @@ namespace Content.Server.AI.Operators.Combat.Melee _burstTime = burstTime; } - public override bool TryStartup() + public override bool Startup() { - if (!base.TryStartup()) + if (!base.Startup()) { return true; } @@ -42,13 +42,17 @@ namespace Content.Server.AI.Operators.Combat.Melee return true; } - public override void Shutdown(Outcome outcome) + public override bool Shutdown(Outcome outcome) { - base.Shutdown(outcome); + if (!base.Shutdown(outcome)) + return false; + if (_owner.TryGetComponent(out CombatModeComponent combatModeComponent)) { combatModeComponent.IsInCombatMode = false; } + + return true; } public override Outcome Execute(float frameTime) diff --git a/Content.Server/AI/Operators/Combat/Melee/UnarmedCombatOperator.cs b/Content.Server/AI/Operators/Combat/Melee/UnarmedCombatOperator.cs index 3d00db189d..a614b34c21 100644 --- a/Content.Server/AI/Operators/Combat/Melee/UnarmedCombatOperator.cs +++ b/Content.Server/AI/Operators/Combat/Melee/UnarmedCombatOperator.cs @@ -22,9 +22,9 @@ namespace Content.Server.AI.Operators.Combat.Melee _burstTime = burstTime; } - public override bool TryStartup() + public override bool Startup() { - if (!base.TryStartup()) + if (!base.Startup()) { return true; } @@ -51,13 +51,17 @@ namespace Content.Server.AI.Operators.Combat.Melee return true; } - public override void Shutdown(Outcome outcome) + public override bool Shutdown(Outcome outcome) { - base.Shutdown(outcome); + if (!base.Shutdown(outcome)) + return false; + if (_owner.TryGetComponent(out CombatModeComponent combatModeComponent)) { combatModeComponent.IsInCombatMode = false; } + + return true; } public override Outcome Execute(float frameTime) diff --git a/Content.Server/AI/Operators/Inventory/CloseStorageOperator.cs b/Content.Server/AI/Operators/Inventory/CloseStorageOperator.cs index fd4567ffba..0b3208588d 100644 --- a/Content.Server/AI/Operators/Inventory/CloseStorageOperator.cs +++ b/Content.Server/AI/Operators/Inventory/CloseStorageOperator.cs @@ -21,9 +21,9 @@ namespace Content.Server.AI.Operators.Inventory _owner = owner; } - public override bool TryStartup() + public override bool Startup() { - if (!base.TryStartup()) + if (!base.Startup()) { return true; } @@ -40,12 +40,15 @@ namespace Content.Server.AI.Operators.Inventory return _target != null; } - public override void Shutdown(Outcome outcome) + public override bool Shutdown(Outcome outcome) { - base.Shutdown(outcome); + if (!base.Shutdown(outcome)) + return false; + var blackboard = UtilityAiHelpers.GetBlackboard(_owner); blackboard?.GetState().SetValue(null); + return true; } public override Outcome Execute(float frameTime) diff --git a/Content.Server/AI/Operators/Movement/MoveToEntityOperator.cs b/Content.Server/AI/Operators/Movement/MoveToEntityOperator.cs index 0b84e525fa..0327b8b9da 100644 --- a/Content.Server/AI/Operators/Movement/MoveToEntityOperator.cs +++ b/Content.Server/AI/Operators/Movement/MoveToEntityOperator.cs @@ -32,9 +32,9 @@ namespace Content.Server.AI.Operators.Movement _requiresInRangeUnobstructed = requiresInRangeUnobstructed; } - public override bool TryStartup() + public override bool Startup() { - if (!base.TryStartup()) + if (!base.Startup()) { return true; } @@ -45,11 +45,14 @@ namespace Content.Server.AI.Operators.Movement return true; } - public override void Shutdown(Outcome outcome) + public override bool Shutdown(Outcome outcome) { - base.Shutdown(outcome); + if (!base.Shutdown(outcome)) + return false; + var steering = EntitySystem.Get(); steering.Unregister(_owner); + return true; } public override Outcome Execute(float frameTime) diff --git a/Content.Server/AI/Operators/Movement/MoveToGridOperator.cs b/Content.Server/AI/Operators/Movement/MoveToGridOperator.cs index c86923d3ec..19f8ef465a 100644 --- a/Content.Server/AI/Operators/Movement/MoveToGridOperator.cs +++ b/Content.Server/AI/Operators/Movement/MoveToGridOperator.cs @@ -21,9 +21,9 @@ namespace Content.Server.AI.Operators.Movement DesiredRange = desiredRange; } - public override bool TryStartup() + public override bool Startup() { - if (!base.TryStartup()) + if (!base.Startup()) { return true; } @@ -34,11 +34,14 @@ namespace Content.Server.AI.Operators.Movement return true; } - public override void Shutdown(Outcome outcome) + public override bool Shutdown(Outcome outcome) { - base.Shutdown(outcome); + if (!base.Shutdown(outcome)) + return false; + var steering = EntitySystem.Get(); steering.Unregister(_owner); + return true; } public override Outcome Execute(float frameTime) diff --git a/Content.Server/AI/Operators/Sequences/SequenceOperator.cs b/Content.Server/AI/Operators/Sequences/SequenceOperator.cs index 0b103ffdb3..5446a9f5cc 100644 --- a/Content.Server/AI/Operators/Sequences/SequenceOperator.cs +++ b/Content.Server/AI/Operators/Sequences/SequenceOperator.cs @@ -17,9 +17,9 @@ namespace Content.Server.AI.Operators.Sequences { return Outcome.Success; } - + var op = Sequence.Peek(); - op.TryStartup(); + op.Startup(); var outcome = op.Execute(frameTime); switch (outcome) @@ -35,10 +35,10 @@ namespace Content.Server.AI.Operators.Sequences op.Shutdown(outcome); Sequence.Clear(); return Outcome.Failed; - + default: throw new ArgumentOutOfRangeException(); } } } -} \ No newline at end of file +} diff --git a/Content.Server/AI/Utility/Actions/UtilityAction.cs b/Content.Server/AI/Utility/Actions/UtilityAction.cs index b79fa0955a..3fbf978cfc 100644 --- a/Content.Server/AI/Utility/Actions/UtilityAction.cs +++ b/Content.Server/AI/Utility/Actions/UtilityAction.cs @@ -62,7 +62,7 @@ namespace Content.Server.AI.Utility.Actions { Owner = owner; } - + public virtual void Shutdown() {} /// @@ -78,7 +78,7 @@ namespace Content.Server.AI.Utility.Actions return Outcome.Success; } - op.TryStartup(); + op.Startup(); var outcome = op.Execute(frameTime); switch (outcome) @@ -116,7 +116,7 @@ namespace Content.Server.AI.Utility.Actions // Overall structure is based on Building a better centaur // Ideally we should early-out each action as cheaply as possible if it's not valid, thus // the finalScore can only go down over time. - + var finalScore = 1.0f; var minThreshold = min / Bonus; context.GetState().SetValue(considerations.Count); diff --git a/Content.Server/AI/Utility/AiLogic/UtilityAI.cs b/Content.Server/AI/Utility/AiLogic/UtilityAI.cs index 305e8ebfca..df0284deed 100644 --- a/Content.Server/AI/Utility/AiLogic/UtilityAI.cs +++ b/Content.Server/AI/Utility/AiLogic/UtilityAI.cs @@ -137,6 +137,8 @@ namespace Content.Server.AI.Utility.AiLogic { var currentOp = CurrentAction?.ActionOperators.Peek(); currentOp?.Shutdown(Outcome.Failed); + CurrentAction?.Shutdown(); + CurrentAction = null; } public void MobStateChanged(MobStateChangedMessage message) diff --git a/Content.Server/Actions/DisarmAction.cs b/Content.Server/Actions/DisarmAction.cs new file mode 100644 index 0000000000..e166f02577 --- /dev/null +++ b/Content.Server/Actions/DisarmAction.cs @@ -0,0 +1,89 @@ +#nullable enable +using System; +using System.Linq; +using Content.Server.GameObjects.Components.GUI; +using Content.Server.GameObjects.Components.Mobs; +using Content.Server.GameObjects.Components.Pulling; +using Content.Server.GameObjects.EntitySystems; +using Content.Server.Interfaces.GameObjects; +using Content.Server.Utility; +using Content.Shared.Actions; +using Content.Shared.Audio; +using Content.Shared.GameObjects.Components.Mobs; +using Content.Shared.GameObjects.Components.Pulling; +using Content.Shared.GameObjects.EntitySystems.ActionBlocker; +using Content.Shared.Interfaces; +using Content.Shared.Utility; +using JetBrains.Annotations; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Server.Interfaces.Player; +using Robust.Shared.Audio; +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.Maths; +using Robust.Shared.Random; +using Robust.Shared.Serialization; + +namespace Content.Server.Actions +{ + [UsedImplicitly] + public class DisarmAction : ITargetEntityAction + { + private float _failProb; + private float _pushProb; + private float _cooldown; + + public void ExposeData(ObjectSerializer serializer) + { + serializer.DataField(ref _failProb, "failProb", 0.4f); + serializer.DataField(ref _pushProb, "pushProb", 0.4f); + serializer.DataField(ref _cooldown, "cooldown", 1.5f); + } + + public void DoTargetEntityAction(TargetEntityActionEventArgs args) + { + var disarmedActs = args.Target.GetAllComponents().ToArray(); + + if (disarmedActs.Length == 0 || !args.Performer.InRangeUnobstructed(args.Target)) return; + if (!args.Performer.TryGetComponent(out var actions)) return; + if (args.Target == args.Performer || !args.Performer.CanAttack()) return; + + var random = IoCManager.Resolve(); + var audio = EntitySystem.Get(); + var system = EntitySystem.Get(); + + var angle = new Angle(args.Target.Transform.MapPosition.Position - args.Performer.Transform.MapPosition.Position); + + actions.Cooldown(ActionType.Disarm, Cooldowns.SecondsFromNow(_cooldown)); + + if (random.Prob(_failProb)) + { + audio.PlayFromEntity("/Audio/Weapons/punchmiss.ogg", args.Performer, + AudioHelpers.WithVariation(0.025f)); + args.Performer.PopupMessageOtherClients(Loc.GetString("{0} fails to disarm {1}!", args.Performer.Name, args.Target.Name)); + args.Performer.PopupMessageCursor(Loc.GetString("You fail to disarm {0}!", args.Target.Name)); + system.SendLunge(angle, args.Performer); + return; + } + + system.SendAnimation("disarm", angle, args.Performer, args.Performer, new []{ args.Target }); + + var eventArgs = new DisarmedActEventArgs() {Target = args.Target, Source = args.Performer, PushProbability = _pushProb}; + + // Sort by priority. + Array.Sort(disarmedActs, (a, b) => a.Priority.CompareTo(b.Priority)); + + foreach (var disarmedAct in disarmedActs) + { + if (disarmedAct.Disarmed(eventArgs)) + return; + } + + audio.PlayFromEntity("/Audio/Effects/thudswoosh.ogg", args.Performer, + AudioHelpers.WithVariation(0.025f)); + } + } +} diff --git a/Content.Server/Administration/Commands/AGhost.cs b/Content.Server/Administration/Commands/AGhost.cs index 89c71d0346..eddc879dde 100644 --- a/Content.Server/Administration/Commands/AGhost.cs +++ b/Content.Server/Administration/Commands/AGhost.cs @@ -1,4 +1,6 @@ -using Content.Server.GameObjects.Components.Observer; +using Content.Server.Commands.Observer; +using Content.Server.GameObjects.Components.Observer; +using Content.Server.Interfaces.GameTicking; using Content.Server.Players; using Content.Shared.Administration; using Robust.Server.Interfaces.Console; @@ -23,14 +25,15 @@ namespace Content.Server.Administration.Commands return; } - var mind = player.ContentData().Mind; + var mind = player.ContentData()?.Mind; + if (mind == null) { shell.SendText(player, "You can't ghost here!"); return; } - if (mind.VisitingEntity != null && mind.VisitingEntity.Prototype.ID == "AdminObserver") + if (mind.VisitingEntity != null && mind.VisitingEntity.Prototype?.ID == "AdminObserver") { var visiting = mind.VisitingEntity; mind.UnVisit(); @@ -38,13 +41,22 @@ namespace Content.Server.Administration.Commands } else { - var canReturn = mind.CurrentEntity != null && !mind.CurrentEntity.HasComponent(); - var entityManager = IoCManager.Resolve(); - var ghost = entityManager.SpawnEntity("AdminObserver", player.AttachedEntity.Transform.MapPosition); - if(canReturn) + var canReturn = mind.CurrentEntity != null; + var ghost = IoCManager.Resolve() + .SpawnEntity("AdminObserver", player.AttachedEntity?.Transform.Coordinates + ?? IoCManager.Resolve().GetObserverSpawnPoint()); + + if (canReturn) + { + ghost.Name = mind.CharacterName; mind.Visit(ghost); + } else + { + ghost.Name = player.Name; mind.TransferTo(ghost); + } + ghost.GetComponent().CanReturnToBody = canReturn; } } diff --git a/Content.Server/Administration/Commands/DSay.cs b/Content.Server/Administration/Commands/DSay.cs new file mode 100644 index 0000000000..40bf93b5b5 --- /dev/null +++ b/Content.Server/Administration/Commands/DSay.cs @@ -0,0 +1,40 @@ +using Content.Server.Interfaces.Chat; +using Content.Shared.Administration; +using Robust.Server.Interfaces.Console; +using Robust.Server.Interfaces.Player; +using Robust.Shared.IoC; +using Robust.Shared.Localization; + +namespace Content.Server.Administration.Commands +{ + [AdminCommand(AdminFlags.Admin)] + class DSay : IClientCommand + { + public string Command => "dsay"; + + public string Description => Loc.GetString("Sends a message to deadchat as an admin"); + + public string Help => Loc.GetString($"Usage: {Command} "); + + public void Execute(IConsoleShell shell, IPlayerSession player, string[] args) + { + if (player == null) + { + shell.SendText((IPlayerSession) null, "Only players can use this command"); + return; + } + + if (args.Length < 1) + return; + + var message = string.Join(" ", args).Trim(); + if (string.IsNullOrEmpty(message)) + return; + + var chat = IoCManager.Resolve(); + + chat.SendAdminDeadChat(player, message); + + } + } +} diff --git a/Content.Server/Administration/Commands/SetOutfitCommand.cs b/Content.Server/Administration/Commands/SetOutfitCommand.cs new file mode 100644 index 0000000000..f6e0b2b064 --- /dev/null +++ b/Content.Server/Administration/Commands/SetOutfitCommand.cs @@ -0,0 +1,85 @@ +using Content.Server.Eui; +using Content.Server.GameObjects.Components.GUI; +using Content.Server.GameObjects.Components.Items.Storage; +using Content.Shared.Administration; +using Content.Shared.Roles; +using Robust.Server.Interfaces.Console; +using Robust.Server.Interfaces.Player; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; +using Robust.Shared.Localization; +using Robust.Shared.Prototypes; + +namespace Content.Server.Administration.Commands +{ + [AdminCommand(AdminFlags.Admin)] + class SetOutfitCommand : IClientCommand + { + public string Command => "setoutfit"; + + public string Description => Loc.GetString("Sets the outfit of the specified entity. The entity must have an InventoryComponent"); + + public string Help => Loc.GetString("Usage: {0} | {0} ", Command); + + public void Execute(IConsoleShell shell, IPlayerSession player, string[] args) + { + if (args.Length < 1) + { + shell.SendText(player, Loc.GetString("Wrong number of arguments.")); + return; + } + + if (!int.TryParse(args[0], out var entityUid)) + { + shell.SendText(player, Loc.GetString("EntityUid must be a number.")); + return; + } + + var entityManager = IoCManager.Resolve(); + + var eUid = new EntityUid(entityUid); + + if (!eUid.IsValid() || !entityManager.EntityExists(eUid)) + { + shell.SendText(player, Loc.GetString("Invalid entity ID.")); + return; + } + + var target = entityManager.GetEntity(eUid); + + if (!target.TryGetComponent(out var inventoryComponent)) + { + shell.SendText(player, Loc.GetString("Target entity does not have an inventory!")); + return; + } + + if (args.Length == 1) + { + var eui = IoCManager.Resolve(); + var ui = new SetOutfitEui(target); + eui.OpenEui(ui, player); + return; + } + + var prototypeManager = IoCManager.Resolve(); + if (!prototypeManager.TryIndex(args[1], out var startingGear)) + { + shell.SendText(player, Loc.GetString("Invalid outfit id")); + return; + } + + foreach (var slot in inventoryComponent.Slots) + { + inventoryComponent.ForceUnequip(slot); + var gearStr = startingGear.GetGear(slot, null); + if (gearStr != "") + { + var equipmentEntity = entityManager.SpawnEntity(gearStr, target.Transform.Coordinates); + inventoryComponent.Equip(slot, equipmentEntity.GetComponent(), false); + } + } + + } + } +} diff --git a/Content.Server/Cargo/CargoOrderDataManager.cs b/Content.Server/Cargo/CargoOrderDataManager.cs deleted file mode 100644 index 8665b597ed..0000000000 --- a/Content.Server/Cargo/CargoOrderDataManager.cs +++ /dev/null @@ -1,104 +0,0 @@ -using System.Collections.Generic; -using Content.Server.GameObjects.Components.Cargo; -using Content.Shared.Prototypes.Cargo; - -namespace Content.Server.Cargo -{ - public class CargoOrderDataManager : ICargoOrderDataManager - { - private readonly Dictionary _accounts = new(); - private readonly List _components = new(); - - public CargoOrderDataManager() - { - CreateAccount(0); - } - - public void CreateAccount(int id) - { - _accounts.Add(id, new CargoOrderDatabase(id)); - } - - public bool TryGetAccount(int id, out CargoOrderDatabase account) - { - if (_accounts.TryGetValue(id, out var _account)) - { - account = _account; - return true; - } - account = null; - return false; - } - - /// - /// Adds an order to the database. - /// - /// The person who requested the item. - /// The reason the product was requested. - /// The ID of the product requested. - /// The amount of the products requested. - /// The ID of the bank account paying for the order. - /// Whether the order will be bought when the orders are processed. - public virtual void AddOrder(int id, string requester, string reason, string productId, int amount, int payingAccountId) - { - if (amount < 1 || !TryGetAccount(id, out var account)) - return; - account.AddOrder(requester, reason, productId, amount, payingAccountId); - SyncComponentsWithId(id); - } - - public void RemoveOrder(int id, int orderNumber) - { - if (!TryGetAccount(id, out var account)) - return; - account.RemoveOrder(orderNumber); - SyncComponentsWithId(id); - } - - public void ApproveOrder(int id, int orderNumber) - { - if (!TryGetAccount(id, out var account)) - return; - account.ApproveOrder(orderNumber); - SyncComponentsWithId(id); - } - - private void SyncComponentsWithId(int id) - { - foreach (var component in _components) - { - if (!component.ConnectedToDatabase || component.Database.Id != id) - continue; - component.Dirty(); - } - } - - public List RemoveAndGetApprovedFrom(CargoOrderDatabase database) - { - var approvedOrders = database.SpliceApproved(); - SyncComponentsWithId(database.Id); - return approvedOrders; - } - - public void AddComponent(CargoOrderDatabaseComponent component) - { - if (_components.Contains(component)) - return; - _components.Add(component); - component.Database = _accounts[0]; - } - - public List GetOrdersFromAccount(int accountId) - { - if (!TryGetAccount(accountId, out var account)) - return null; - return account.GetOrders(); - } - - public (int CurrentCapacity, int MaxCapacity) GetCapacity(int id) - { - TryGetAccount(id, out var account); - return (account.CurrentOrderSize, account.MaxOrderSize); - } - } -} diff --git a/Content.Server/Cargo/ICargoOrderDataManager.cs b/Content.Server/Cargo/ICargoOrderDataManager.cs deleted file mode 100644 index 118a4e1f9d..0000000000 --- a/Content.Server/Cargo/ICargoOrderDataManager.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.Collections.Generic; -using Content.Server.GameObjects.Components.Cargo; -using Content.Shared.Prototypes.Cargo; - -namespace Content.Server.Cargo -{ - public interface ICargoOrderDataManager - { - bool TryGetAccount(int id, out CargoOrderDatabase account); - void AddOrder(int id, string requester, string reason, string productId, int amount, int payingAccountId); - void RemoveOrder(int id, int orderNumber); - void ApproveOrder(int id, int orderNumber); - void AddComponent(CargoOrderDatabaseComponent component); - List GetOrdersFromAccount(int accountId); - List RemoveAndGetApprovedFrom(CargoOrderDatabase database); - (int CurrentCapacity, int MaxCapacity) GetCapacity(int id); - } -} diff --git a/Content.Server/Chat/ChatManager.cs b/Content.Server/Chat/ChatManager.cs index 7e291f5cef..e1b614f017 100644 --- a/Content.Server/Chat/ChatManager.cs +++ b/Content.Server/Chat/ChatManager.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using Content.Server.Administration; using Content.Server.GameObjects.Components.GUI; @@ -52,7 +52,7 @@ namespace Content.Server.Chat public void Initialize() { _netManager.RegisterNetMessage(MsgChatMessage.NAME); - _netManager.RegisterNetMessage(ChatMaxMsgLengthMessage.NAME, _onMaxLengthRequest); + _netManager.RegisterNetMessage(ChatMaxMsgLengthMessage.NAME, OnMaxLengthRequest); // Tell all the connected players the chat's character limit var msg = _netManager.CreateNetMessage(); @@ -71,12 +71,12 @@ namespace Content.Server.Chat _netManager.ServerSendToAll(msg); } - public void DispatchStationAnnouncement(string message) + public void DispatchStationAnnouncement(string message, string sender = "CentComm") { var msg = _netManager.CreateNetMessage(); msg.Channel = ChatChannel.Radio; msg.Message = message; - msg.MessageWrap = "Centcom Announcement:\n{0}"; + msg.MessageWrap = $"{sender} Announcement:\n{{0}}"; _netManager.ServerSendToAll(msg); } @@ -212,9 +212,7 @@ namespace Content.Server.Chat return; } - var clients = _playerManager - .GetPlayersBy(x => x.AttachedEntity != null && x.AttachedEntity.HasComponent()) - .Select(p => p.ConnectedClient); + var clients = GetDeadChatClients(); var msg = _netManager.CreateNetMessage(); msg.Channel = ChatChannel.Dead; @@ -224,6 +222,32 @@ namespace Content.Server.Chat _netManager.ServerSendToMany(msg, clients.ToList()); } + public void SendAdminDeadChat(IPlayerSession player, string message) + { + // Check if message exceeds the character limit + if (message.Length > MaxMessageLength) + { + DispatchServerMessage(player, Loc.GetString(MaxLengthExceededMessage, MaxMessageLength)); + return; + } + + var clients = GetDeadChatClients(); + + var msg = _netManager.CreateNetMessage(); + msg.Channel = ChatChannel.Dead; + msg.Message = message; + msg.MessageWrap = $"{Loc.GetString("ADMIN")}:(${player.ConnectedClient.UserName}): {{0}}"; + _netManager.ServerSendToMany(msg, clients.ToList()); + } + + private IEnumerable GetDeadChatClients() + { + return _playerManager + .GetPlayersBy(x => x.AttachedEntity != null && x.AttachedEntity.HasComponent()) + .Select(p => p.ConnectedClient) + .Union(_adminManager.ActiveAdmins.Select(p => p.ConnectedClient)); + } + public void SendAdminChat(IPlayerSession player, string message) { // Check if message exceeds the character limit @@ -265,7 +289,7 @@ namespace Content.Server.Chat _netManager.ServerSendToAll(msg); } - private void _onMaxLengthRequest(ChatMaxMsgLengthMessage msg) + private void OnMaxLengthRequest(ChatMaxMsgLengthMessage msg) { var response = _netManager.CreateNetMessage(); response.MaxMessageLength = MaxMessageLength; diff --git a/Content.Server/Chemistry/ReactionEffects/ExplosionReactionEffect.cs b/Content.Server/Chemistry/ReactionEffects/ExplosionReactionEffect.cs index f552652678..d9cb1b4b3c 100644 --- a/Content.Server/Chemistry/ReactionEffects/ExplosionReactionEffect.cs +++ b/Content.Server/Chemistry/ReactionEffects/ExplosionReactionEffect.cs @@ -1,4 +1,4 @@ -using System; +using System; using Content.Server.Explosions; using Content.Server.GameObjects.Components.Chemistry; using Content.Server.Interfaces.Chemistry; diff --git a/Content.Server/Commands/Chat/SuicideCommand.cs b/Content.Server/Commands/Chat/SuicideCommand.cs index d27e555cfd..aa73ff4913 100644 --- a/Content.Server/Commands/Chat/SuicideCommand.cs +++ b/Content.Server/Commands/Chat/SuicideCommand.cs @@ -38,7 +38,7 @@ namespace Content.Server.Commands.Chat var kind = suicide.Suicide(target, chat); if (kind != SuicideKind.Special) { - damageableComponent.ChangeDamage(kind switch + damageableComponent.SetDamage(kind switch { SuicideKind.Blunt => DamageType.Blunt, SuicideKind.Slash => DamageType.Slash, @@ -52,8 +52,7 @@ namespace Content.Server.Commands.Chat SuicideKind.Bloodloss => DamageType.Bloodloss, _ => DamageType.Blunt }, - 500, - true, source); + 200, source); } } @@ -119,7 +118,7 @@ namespace Content.Server.Commands.Chat var selfMessage = Loc.GetString("You attempt to bite your own tongue!"); owner.PopupMessage(selfMessage); - dmgComponent.ChangeDamage(DamageType.Piercing, 500, true, owner); + dmgComponent.SetDamage(DamageType.Piercing, 200, owner); // Prevent the player from returning to the body. Yes, this is an ugly hack. var ghost = new Ghost(){CanReturn = false}; diff --git a/Content.Server/Commands/GameTicking/MappingCommand.cs b/Content.Server/Commands/GameTicking/MappingCommand.cs index 8b82ca4fc8..abf94258b5 100644 --- a/Content.Server/Commands/GameTicking/MappingCommand.cs +++ b/Content.Server/Commands/GameTicking/MappingCommand.cs @@ -57,11 +57,11 @@ namespace Content.Server.Commands.GameTicking } shell.ExecuteCommand(player, $"addmap {mapId} false"); - shell.ExecuteCommand(player, $"loadbp {mapId} \"{CommandParsing.Escape(mapName)}\""); + shell.ExecuteCommand(player, $"loadbp {mapId} \"{CommandParsing.Escape(mapName)}\" true"); shell.ExecuteCommand(player, "aghost"); shell.ExecuteCommand(player, $"tp 0 0 {mapId}"); - var newGrid = mapManager.GetAllGrids().OrderByDescending(g => g.Index).First(); + var newGrid = mapManager.GetAllGrids().OrderByDescending(g => (int) g.Index).First(); var pauseManager = IoCManager.Resolve(); pauseManager.SetMapPaused(newGrid.ParentMapId, true); diff --git a/Content.Server/Commands/MakeSentientCommand.cs b/Content.Server/Commands/MakeSentientCommand.cs new file mode 100644 index 0000000000..53197b3908 --- /dev/null +++ b/Content.Server/Commands/MakeSentientCommand.cs @@ -0,0 +1,52 @@ +#nullable enable +using Content.Server.Administration; +using Content.Server.GameObjects.Components.Mobs; +using Content.Server.GameObjects.Components.Movement; +using Content.Shared.Administration; +using Robust.Server.Interfaces.Console; +using Robust.Server.Interfaces.Player; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; + +namespace Content.Server.Commands +{ + [AdminCommand(AdminFlags.Fun)] + public class MakeSentientCommand : IClientCommand + { + public string Command => "makesentient"; + public string Description => "Makes an entity sentient (able to be controlled by a player)"; + public string Help => "makesentient "; + + public void Execute(IConsoleShell shell, IPlayerSession? player, string[] args) + { + if (args.Length != 1) + { + shell.SendText(player, "Wrong number of arguments."); + return; + } + + if (!int.TryParse(args[0], out var id)) + { + shell.SendText(player, "Invalid argument."); + return; + } + + var entId = new EntityUid(id); + + var entityManager = IoCManager.Resolve(); + + if (!entityManager.TryGetEntity(entId, out var entity) || entity.Deleted) + { + shell.SendText(player, "Invalid entity specified!"); + return; + } + + if(entity.HasComponent()) + entity.RemoveComponent(); + + entity.EnsureComponent(); + entity.EnsureComponent(); + } + } +} diff --git a/Content.Server/Commands/Observer/Ghost.cs b/Content.Server/Commands/Observer/Ghost.cs index 2e1dcd027c..6aa887dd47 100644 --- a/Content.Server/Commands/Observer/Ghost.cs +++ b/Content.Server/Commands/Observer/Ghost.cs @@ -31,7 +31,7 @@ namespace Content.Server.Commands.Observer return; } - var mind = player!.ContentData()?.Mind; + var mind = player.ContentData()?.Mind; if (mind == null) { shell?.SendText(player, "You have no Mind, you can't ghost."); diff --git a/Content.Server/Commands/SetAnchorCommand.cs b/Content.Server/Commands/SetAnchorCommand.cs new file mode 100644 index 0000000000..532458d55e --- /dev/null +++ b/Content.Server/Commands/SetAnchorCommand.cs @@ -0,0 +1,58 @@ +#nullable enable +using Content.Server.Administration; +using Content.Shared.Administration; +using Robust.Server.Interfaces.Console; +using Robust.Server.Interfaces.Player; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; + +namespace Content.Server.Commands +{ + [AdminCommand(AdminFlags.Debug)] + public class SetAnchorCommand : IClientCommand + { + public string Command => "setanchor"; + public string Description => "Sets the anchoring state of an entity."; + public string Help => "setanchor "; + public void Execute(IConsoleShell shell, IPlayerSession? player, string[] args) + { + if (args.Length == 0 || args.Length > 2) + { + shell.SendText(player, "Invalid number of argument!"); + return; + } + + if (!int.TryParse(args[0], out var id)) + { + shell.SendText(player, "Invalid argument specified!"); + return; + } + + var entId = new EntityUid(id); + + var entityManager = IoCManager.Resolve(); + + if (!entityManager.TryGetEntity(entId, out var entity) || entity.Deleted || !entity.TryGetComponent(out PhysicsComponent? physics)) + { + shell.SendText(player, "Invalid entity specified!"); + return; + } + + if (args.Length == 2) + { + if (!bool.TryParse(args[1], out var value)) + { + shell.SendText(player, "Invalid argument specified!"); + return; + } + + physics.Anchored = value; + return; + } + + physics.Anchored = !physics.Anchored; + } + } +} diff --git a/Content.Server/Commands/StationEvents/StationEventCommand.cs b/Content.Server/Commands/StationEvents/StationEventCommand.cs index 2dbcb806fa..95c8b910fd 100644 --- a/Content.Server/Commands/StationEvents/StationEventCommand.cs +++ b/Content.Server/Commands/StationEvents/StationEventCommand.cs @@ -14,7 +14,9 @@ namespace Content.Server.Commands.StationEvents { public string Command => "events"; public string Description => "Provides admin control to station events"; - public string Help => $"events >\n{ListHelp}\n{PauseHelp}\n{ResumeHelp}\n{RunHelp}"; + public string Help => $"events >\n{RunningHelp}\n{ListHelp}\n{PauseHelp}\n{ResumeHelp}\n{RunHelp}"; + + private const string RunningHelp = "running: return the current running event"; private const string ListHelp = "list: return all event names that can be run"; @@ -38,6 +40,9 @@ namespace Content.Server.Commands.StationEvents case "list": List(shell, player); break; + case "running": + Running(shell, player); + break; // Didn't use a "toggle" so it's explicit case "pause": Pause(shell, player); @@ -74,6 +79,19 @@ namespace Content.Server.Commands.StationEvents shell.SendText(player, resultText); } + private void Running(IConsoleShell shell, IPlayerSession? player) + { + var eventName = EntitySystem.Get().CurrentEvent?.Name; + if (!string.IsNullOrEmpty(eventName)) + { + shell.SendText(player, eventName); + } + else + { + shell.SendText(player, Loc.GetString("No station event running")); + } + } + private void List(IConsoleShell shell, IPlayerSession? player) { var resultText = "Random\n" + EntitySystem.Get().GetEventNames(); diff --git a/Content.Server/Construction/Conditions/ToiletLidClosed.cs b/Content.Server/Construction/Conditions/ToiletLidClosed.cs new file mode 100644 index 0000000000..a1ad695bf6 --- /dev/null +++ b/Content.Server/Construction/Conditions/ToiletLidClosed.cs @@ -0,0 +1,35 @@ +#nullable enable +using System.Threading.Tasks; +using Content.Server.GameObjects.Components.Watercloset; +using Content.Shared.Construction; +using JetBrains.Annotations; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Localization; +using Robust.Shared.Serialization; +using Robust.Shared.Utility; + +namespace Content.Server.Construction.Conditions +{ + [UsedImplicitly] + public class ToiletLidClosed : IEdgeCondition + { + public async Task Condition(IEntity entity) + { + if (!entity.TryGetComponent(out ToiletComponent? toilet)) return false; + return !toilet.LidOpen; + } + + public bool DoExamine(IEntity entity, FormattedMessage message, bool inExamineRange) + { + if (!entity.TryGetComponent(out ToiletComponent? toilet)) return false; + if (!toilet.LidOpen) return false; + + message.AddMarkup(Loc.GetString("Use a [color=yellow]crowbar[/color] to close the lid.\n")); + return true; + } + + public void ExposeData(ObjectSerializer serializer) + { + } + } +} diff --git a/Content.Server/Database/ServerDbBase.cs b/Content.Server/Database/ServerDbBase.cs index 929532fc21..0d95804350 100644 --- a/Content.Server/Database/ServerDbBase.cs +++ b/Content.Server/Database/ServerDbBase.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -140,6 +140,10 @@ namespace Content.Server.Database if (Enum.TryParse(profile.Clothing, true, out var clothingVal)) clothing = clothingVal; + var backpack = BackpackPreference.Backpack; + if (Enum.TryParse(profile.Backpack, true, out var backpackVal)) + backpack = backpackVal; + var gender = sex == Sex.Male ? Gender.Male : Gender.Female; if (Enum.TryParse(profile.Gender, true, out var genderVal)) gender = genderVal; @@ -159,6 +163,7 @@ namespace Content.Server.Database Color.FromHex(profile.SkinColor) ), clothing, + backpack, jobs, (PreferenceUnavailableMode) profile.PreferenceUnavailable, antags.ToList() @@ -182,6 +187,7 @@ namespace Content.Server.Database EyeColor = appearance.EyeColor.ToHex(), SkinColor = appearance.SkinColor.ToHex(), Clothing = humanoid.Clothing.ToString(), + Backpack = humanoid.Backpack.ToString(), Slot = slot, PreferenceUnavailable = (DbPreferenceUnavailableMode) humanoid.PreferenceUnavailable }; diff --git a/Content.Server/Database/ServerDbSqlite.cs b/Content.Server/Database/ServerDbSqlite.cs index a51484a288..9e726240e0 100644 --- a/Content.Server/Database/ServerDbSqlite.cs +++ b/Content.Server/Database/ServerDbSqlite.cs @@ -1,5 +1,4 @@ using System; -using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Net; @@ -7,7 +6,10 @@ using System.Threading; using System.Threading.Tasks; using Content.Server.Preferences; using Content.Server.Utility; +using Content.Shared; using Microsoft.EntityFrameworkCore; +using Robust.Shared.Interfaces.Configuration; +using Robust.Shared.IoC; using Robust.Shared.Network; #nullable enable @@ -32,7 +34,15 @@ namespace Content.Server.Database { _prefsCtx = new SqliteServerDbContext(options); - _dbReadyTask = Task.Run(() => _prefsCtx.Database.Migrate()); + if (IoCManager.Resolve().GetCVar(CCVars.DatabaseSynchronous)) + { + _prefsCtx.Database.Migrate(); + _dbReadyTask = Task.CompletedTask; + } + else + { + _dbReadyTask = Task.Run(() => _prefsCtx.Database.Migrate()); + } } public override async Task GetServerBanAsync(IPAddress? address, NetUserId? userId) diff --git a/Content.Server/Explosions/ExplosionHelper.cs b/Content.Server/Explosions/ExplosionHelper.cs index fd7abd3a90..5479db7b3a 100644 --- a/Content.Server/Explosions/ExplosionHelper.cs +++ b/Content.Server/Explosions/ExplosionHelper.cs @@ -1,20 +1,33 @@ -using System; +using System; +using System.Collections.Generic; using System.Linq; +using Content.Server.GameObjects.Components.Atmos; +using Content.Server.GameObjects.Components.Explosion; +using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.Components.Mobs; using Content.Shared.GameObjects.EntitySystems; using Content.Shared.Maps; +using Content.Shared.Physics; +using Content.Shared.Utility; +using Microsoft.Extensions.Logging; using Robust.Server.GameObjects.EntitySystems; using Robust.Server.Interfaces.GameObjects; using Robust.Server.Interfaces.Player; +using Robust.Shared.Containers; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.EntitySystemMessages; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Map; using Robust.Shared.Interfaces.Random; using Robust.Shared.Interfaces.Timing; using Robust.Shared.IoC; +using Robust.Shared.Log; using Robust.Shared.Map; using Robust.Shared.Maths; +using Robust.Shared.Physics; using Robust.Shared.Random; +using Robust.Shared.Timing; namespace Content.Server.Explosions { @@ -26,129 +39,211 @@ namespace Content.Server.Explosions /// private static readonly Vector2 EpicenterDistance = (0.1f, 0.1f); - public static void SpawnExplosion(this EntityCoordinates coords, int devastationRange, int heavyImpactRange, int lightImpactRange, int flashRange) + /// + /// Chance of a tile breaking if the severity is Light and Heavy + /// + private static readonly float LightBreakChance = 0.3f; + private static readonly float HeavyBreakChance = 0.8f; + + private static bool IgnoreExplosivePassable(IEntity e) => (e.GetComponent().CollisionLayer & (int) CollisionGroup.ExplosivePassable) != 0; + + private static ExplosionSeverity CalculateSeverity(float distance, float devastationRange, float heaveyRange) { - var tileDefinitionManager = IoCManager.Resolve(); + if (distance < devastationRange) + { + return ExplosionSeverity.Destruction; + } + else if (distance < heaveyRange) + { + return ExplosionSeverity.Heavy; + } + else + { + return ExplosionSeverity.Light; + } + } + + /// + /// Damage entities inside the range. The damage depends on a discrete + /// damage bracket [light, heavy, devastation] and the distance from the epicenter + /// + /// + /// A dictionary of coordinates relative to the parents of every grid of entities that survived the explosion, + /// have an airtight component and are currently blocking air. Like a wall. + /// + private static void DamageEntitiesInRange(EntityCoordinates epicenter, Box2 boundingBox, + float devastationRange, + float heaveyRange, + float maxRange, + MapId mapId) + { + var entityManager = IoCManager.Resolve(); var serverEntityManager = IoCManager.Resolve(); var entitySystemManager = IoCManager.Resolve(); - var mapManager = IoCManager.Resolve(); - var robustRandom = IoCManager.Resolve(); - var entityManager = IoCManager.Resolve(); - var maxRange = MathHelper.Max(devastationRange, heavyImpactRange, lightImpactRange, 0f); - //Entity damage calculation - var entitiesAll = serverEntityManager.GetEntitiesInRange(coords, maxRange).ToList(); + var exAct = entitySystemManager.GetEntitySystem(); - foreach (var entity in entitiesAll) + var entitiesInRange = serverEntityManager.GetEntitiesInRange(mapId, boundingBox, 0).ToList(); + + var impassableEntities = new List>(); + var nonImpassableEntities = new List>(); + + // The entities are paired with their distance to the epicenter + // and splitted into two lists based on if they are Impassable or not + foreach (var entity in entitiesInRange) { - if (entity.Deleted) - continue; - if (!entity.Transform.IsMapTransform) - continue; - - if (!entity.Transform.Coordinates.TryDistance(entityManager, coords, out var distance)) + if (entity.Deleted || !entity.Transform.IsMapTransform) { continue; } - ExplosionSeverity severity; - if (distance < devastationRange) + if (!entity.Transform.Coordinates.TryDistance(entityManager, epicenter, out var distance) || distance > maxRange) { - severity = ExplosionSeverity.Destruction; + continue; } - else if (distance < heavyImpactRange) + + if (!entity.TryGetComponent(out IPhysicsComponent body) || body.PhysicsShapes.Count < 1) { - severity = ExplosionSeverity.Heavy; + continue; } - else if (distance < lightImpactRange) + + if ((body.CollisionLayer & (int) CollisionGroup.Impassable) != 0) { - severity = ExplosionSeverity.Light; + impassableEntities.Add(Tuple.Create(entity, distance)); } else + { + nonImpassableEntities.Add(Tuple.Create(entity, distance)); + } + } + + // The Impassable entities are sorted in descending order + // Entities closer to the epicenter are first + impassableEntities.Sort((x, y) => x.Item2.CompareTo(y.Item2)); + + // Impassable entities are handled first. If they are damaged enough, they are destroyed and they may + // be able to spawn a new entity. I.e Wall -> Girder. + // Girder has a layer ExplosivePassable, and the predicate make it so the entities with this layer are ignored + var epicenterMapPos = epicenter.ToMap(entityManager); + foreach (var (entity, distance) in impassableEntities) + { + if (!entity.InRangeUnobstructed(epicenterMapPos, maxRange, ignoreInsideBlocker: true, predicate: IgnoreExplosivePassable)) { continue; } - var exAct = entitySystemManager.GetEntitySystem(); - //exAct.HandleExplosion(Owner, entity, severity); - exAct.HandleExplosion(coords, entity, severity); + exAct.HandleExplosion(epicenter, entity, CalculateSeverity(distance, devastationRange, heaveyRange)); } - //Tile damage calculation mockup - //TODO: make it into some sort of actual damage component or whatever the boys think is appropriate - if (mapManager.TryGetGrid(coords.GetGridId(entityManager), out var mapGrid)) + // Impassable entities were handled first so NonImpassable entities have a bigger chance to get hit. As now + // there are probably more ExplosivePassable entities around + foreach (var (entity, distance) in nonImpassableEntities) { - var circle = new Circle(coords.ToMapPos(entityManager), maxRange); - var tiles = mapGrid?.GetTilesIntersecting(circle); - foreach (var tile in tiles) + if (!entity.InRangeUnobstructed(epicenterMapPos, maxRange, ignoreInsideBlocker: true, predicate: IgnoreExplosivePassable)) { - var tileLoc = mapGrid.GridTileToLocal(tile.GridIndices); - var tileDef = (ContentTileDefinition) tileDefinitionManager[tile.Tile.TypeId]; - var baseTurfs = tileDef.BaseTurfs; - if (baseTurfs.Count == 0) - { - continue; - } + continue; + } + exAct.HandleExplosion(epicenter, entity, CalculateSeverity(distance, devastationRange, heaveyRange)); + } + } - if (!tileLoc.TryDistance(entityManager, coords, out var distance)) - { - continue; - } + /// + /// Damage tiles inside the range. The type of tile can change depending on a discrete + /// damage bracket [light, heavy, devastation], the distance from the epicenter and + /// a probabilty bracket [, , 1.0]. + /// + /// + private static void DamageTilesInRange(EntityCoordinates epicenter, + GridId gridId, + Box2 boundingBox, + float devastationRange, + float heaveyRange, + float maxRange) + { + var mapManager = IoCManager.Resolve(); + if (!mapManager.TryGetGrid(gridId, out var mapGrid)) + { + return; + } - var zeroTile = new Tile(tileDefinitionManager[baseTurfs[0]].TileId); - var previousTile = new Tile(tileDefinitionManager[baseTurfs[^1]].TileId); + var entityManager = IoCManager.Resolve(); + if (!entityManager.TryGetEntity(mapGrid.GridEntityId, out var grid)) + { + return; + } - switch (distance) - { - case var d when d < devastationRange: - mapGrid.SetTile(tileLoc, zeroTile); - break; - case var d when d < heavyImpactRange - && !previousTile.IsEmpty - && robustRandom.Prob(0.8f): + var robustRandom = IoCManager.Resolve(); + var tileDefinitionManager = IoCManager.Resolve(); + + var tilesInGridAndCircle = mapGrid.GetTilesIntersecting(boundingBox); + + var epicenterMapPos = epicenter.ToMap(entityManager); + foreach (var tile in tilesInGridAndCircle) + { + var tileLoc = mapGrid.GridTileToLocal(tile.GridIndices); + if (!tileLoc.TryDistance(entityManager, epicenter, out var distance) || distance > maxRange) + { + continue; + } + + if (tile.IsBlockedTurf(false)) + { + continue; + } + + if (!tileLoc.ToMap(entityManager).InRangeUnobstructed(epicenterMapPos, maxRange, ignoreInsideBlocker: false, predicate: IgnoreExplosivePassable)) + { + continue; + } + + var tileDef = (ContentTileDefinition) tileDefinitionManager[tile.Tile.TypeId]; + var baseTurfs = tileDef.BaseTurfs; + if (baseTurfs.Count == 0) + { + continue; + } + + var zeroTile = new Tile(tileDefinitionManager[baseTurfs[0]].TileId); + var previousTile = new Tile(tileDefinitionManager[baseTurfs[^1]].TileId); + + var severity = CalculateSeverity(distance, devastationRange, heaveyRange); + + switch (severity) + { + case ExplosionSeverity.Light: + if (!previousTile.IsEmpty && robustRandom.Prob(LightBreakChance)) + { mapGrid.SetTile(tileLoc, previousTile); - break; - case var d when d < lightImpactRange - && !previousTile.IsEmpty - && robustRandom.Prob(0.5f): + } + break; + case ExplosionSeverity.Heavy: + if (!previousTile.IsEmpty && robustRandom.Prob(HeavyBreakChance)) + { mapGrid.SetTile(tileLoc, previousTile); - break; - } + } + break; + case ExplosionSeverity.Destruction: + mapGrid.SetTile(tileLoc, zeroTile); + break; } } + } - //Effects and sounds - var time = IoCManager.Resolve().CurTime; - var message = new EffectSystemMessage - { - EffectSprite = "Effects/explosion.rsi", - RsiState = "explosionfast", - Born = time, - DeathTime = time + TimeSpan.FromSeconds(5), - Size = new Vector2(flashRange / 2, flashRange / 2), - Coordinates = coords, - //Rotated from east facing - Rotation = 0f, - ColorDelta = new Vector4(0, 0, 0, -1500f), - Color = Vector4.Multiply(new Vector4(255, 255, 255, 750), 0.5f), - Shaded = false - }; - entitySystemManager.GetEntitySystem().CreateParticle(message); - entitySystemManager.GetEntitySystem().PlayAtCoords("/Audio/Effects/explosion.ogg", coords); - - // Knock back cameras of all players in the area. - + private static void CameraShakeInRange(EntityCoordinates epicenter, float maxRange) + { var playerManager = IoCManager.Resolve(); - foreach (var player in playerManager.GetAllPlayers()) + var players = playerManager.GetPlayersInRange(epicenter, (int) Math.Ceiling(maxRange)); + foreach (var player in players) { - if (player.AttachedEntity == null - || player.AttachedEntity.Transform.MapID != mapGrid.ParentMapId - || !player.AttachedEntity.TryGetComponent(out CameraRecoilComponent recoil)) + if (player.AttachedEntity == null || !player.AttachedEntity.TryGetComponent(out CameraRecoilComponent recoil)) { continue; } + var entityManager = IoCManager.Resolve(); + var playerPos = player.AttachedEntity.Transform.WorldPosition; - var delta = coords.ToMapPos(entityManager) - playerPos; + var delta = epicenter.ToMapPos(entityManager) - playerPos; + //Change if zero. Will result in a NaN later breaking camera shake if not changed if (delta.EqualsApprox((0.0f, 0.0f))) delta = EpicenterDistance; @@ -163,10 +258,75 @@ namespace Content.Server.Explosions } } - public static void SpawnExplosion(this IEntity entity, int devastationRange, int heavyImpactRange, - int lightImpactRange, int flashRange) + private static void FlashInRange(EntityCoordinates epicenter, float flashrange) { - entity.Transform.Coordinates.SpawnExplosion(devastationRange, heavyImpactRange, lightImpactRange, flashRange); + if (flashrange > 0) + { + var entitySystemManager = IoCManager.Resolve(); + var time = IoCManager.Resolve().CurTime; + var message = new EffectSystemMessage + { + EffectSprite = "Effects/explosion.rsi", + RsiState = "explosionfast", + Born = time, + DeathTime = time + TimeSpan.FromSeconds(5), + Size = new Vector2(flashrange / 2, flashrange / 2), + Coordinates = epicenter, + Rotation = 0f, + ColorDelta = new Vector4(0, 0, 0, -1500f), + Color = Vector4.Multiply(new Vector4(255, 255, 255, 750), 0.5f), + Shaded = false + }; + entitySystemManager.GetEntitySystem().CreateParticle(message); + } + } + + private static void Detonate(IEntity source, int devastationRange, int heavyImpactRange, int lightImpactRange, int flashRange) + { + var mapId = source.Transform.MapID; + if (mapId == MapId.Nullspace) + { + return; + } + + var maxRange = MathHelper.Max(devastationRange, heavyImpactRange, lightImpactRange, 0); + + while(source.TryGetContainer(out var cont)) + { + source = cont.Owner; + } + var epicenter = source.Transform.Coordinates; + + var entityManager = IoCManager.Resolve(); + var mapManager = IoCManager.Resolve(); + + var epicenterMapPos = epicenter.ToMapPos(entityManager); + var boundingBox = new Box2(epicenterMapPos - new Vector2(maxRange, maxRange), epicenterMapPos + new Vector2(maxRange, maxRange)); + + DamageEntitiesInRange(epicenter, boundingBox, devastationRange, heavyImpactRange, maxRange, mapId); + + var mapGridsNear = mapManager.FindGridsIntersecting(mapId, boundingBox); + + foreach (var gridId in mapGridsNear) + { + DamageTilesInRange(epicenter, gridId.Index, boundingBox, devastationRange, heavyImpactRange, maxRange); + } + + CameraShakeInRange(epicenter, maxRange); + FlashInRange(epicenter, flashRange); + } + + public static void SpawnExplosion(this IEntity entity, int devastationRange = 0, int heavyImpactRange = 0, int lightImpactRange = 0, int flashRange = 0) + { + // If you want to directly set off the explosive + if (!entity.Deleted && entity.TryGetComponent(out ExplosiveComponent explosive) && !explosive.Exploding) + { + explosive.Explosion(); + } + else + { + Detonate(entity, devastationRange, heavyImpactRange, lightImpactRange, flashRange); + } } } } diff --git a/Content.Server/GameObjects/Components/Access/IdCardComponent.cs b/Content.Server/GameObjects/Components/Access/IdCardComponent.cs index 2bd23e5cdd..fca076ed8b 100644 --- a/Content.Server/GameObjects/Components/Access/IdCardComponent.cs +++ b/Content.Server/GameObjects/Components/Access/IdCardComponent.cs @@ -67,7 +67,7 @@ namespace Content.Server.GameObjects.Components.Access public override void Initialize() { base.Initialize(); - _ownerOriginalName = Owner.Name; + _ownerOriginalName ??= Owner.Name; UpdateEntityName(); } @@ -77,6 +77,7 @@ namespace Content.Server.GameObjects.Components.Access serializer.DataField(ref _fullName, "fullName", string.Empty); serializer.DataField(ref _jobTitle, "jobTitle", string.Empty); + serializer.DataField(ref _ownerOriginalName, "originalOwnerName", null); } } } diff --git a/Content.Server/GameObjects/Components/Arcade/BlockGameArcadeComponent.cs b/Content.Server/GameObjects/Components/Arcade/BlockGameArcadeComponent.cs index 8045d71ffb..db6db84d8b 100644 --- a/Content.Server/GameObjects/Components/Arcade/BlockGameArcadeComponent.cs +++ b/Content.Server/GameObjects/Components/Arcade/BlockGameArcadeComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -7,7 +7,6 @@ using Content.Server.GameObjects.EntitySystems; using Content.Server.Utility; using Content.Shared.Arcade; using Content.Shared.GameObjects; -using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; using Content.Shared.Interfaces.GameObjects.Components; using Robust.Server.GameObjects.Components.UserInterface; @@ -16,6 +15,7 @@ using Robust.Server.Interfaces.Player; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.ComponentDependencies; using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Random; using Robust.Shared.IoC; using Robust.Shared.Maths; @@ -42,6 +42,17 @@ namespace Content.Server.GameObjects.Components.Arcade private IPlayerSession? _player; private readonly List _spectators = new(); + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PowerChangedMessage powerChanged: + OnPowerStateChanged(powerChanged); + break; + } + } + public void Activate(ActivateEventArgs eventArgs) { if(!eventArgs.User.TryGetComponent(out IActorComponent? actor)) @@ -108,16 +119,12 @@ namespace Content.Server.GameObjects.Components.Arcade if (UserInterface != null) { UserInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; - } - - if (_powerReceiverComponent != null) - { - _powerReceiverComponent.OnPowerStateChanged += OnPowerStateChanged; + UserInterface.OnClosed += UnRegisterPlayerSession; } _game = new BlockGame(this); } - private void OnPowerStateChanged(object? sender, PowerStateEventArgs e) + private void OnPowerStateChanged(PowerChangedMessage e) { if (e.Powered) return; @@ -130,9 +137,6 @@ namespace Content.Server.GameObjects.Components.Arcade { switch (obj.Message) { - case BlockGameMessages.BlockGameUserUnregisterMessage unregisterMessage: - UnRegisterPlayerSession(obj.Session); - break; case BlockGameMessages.BlockGamePlayerActionMessage playerActionMessage: if (obj.Session != _player) break; diff --git a/Content.Server/GameObjects/Components/Arcade/SpaceVillainArcadeComponent.cs b/Content.Server/GameObjects/Components/Arcade/SpaceVillainArcadeComponent.cs index 99c46516e8..ce09402f32 100644 --- a/Content.Server/GameObjects/Components/Arcade/SpaceVillainArcadeComponent.cs +++ b/Content.Server/GameObjects/Components/Arcade/SpaceVillainArcadeComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System.Collections.Generic; using Content.Server.GameObjects.Components.Power.ApcNetComponents; using Content.Server.GameObjects.Components.VendingMachines; @@ -100,14 +100,20 @@ namespace Content.Server.GameObjects.Components.Arcade { UserInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; } + } - if (_powerReceiverComponent != null) + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) { - _powerReceiverComponent.OnPowerStateChanged += OnOnPowerStateChanged; + case PowerChangedMessage powerChanged: + OnOnPowerStateChanged(powerChanged); + break; } } - private void OnOnPowerStateChanged(object? sender, PowerStateEventArgs e) + private void OnOnPowerStateChanged(PowerChangedMessage e) { if(e.Powered) return; diff --git a/Content.Server/GameObjects/Components/Atmos/FlammableComponent.cs b/Content.Server/GameObjects/Components/Atmos/FlammableComponent.cs index c3b6f7bbb1..4fdca8dc5f 100644 --- a/Content.Server/GameObjects/Components/Atmos/FlammableComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/FlammableComponent.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using Content.Server.Atmos; using Content.Server.GameObjects.Components.Mobs; @@ -218,7 +218,7 @@ namespace Content.Server.GameObjects.Components.Atmos { switch (reagent.ID) { - case "chem.H2O": + case "chem.Water": Extinguish(); AdjustFireStacks(-1.5f); return ReagentUnit.Zero; diff --git a/Content.Server/GameObjects/Components/Atmos/GasCanisterComponent.cs b/Content.Server/GameObjects/Components/Atmos/GasCanisterComponent.cs index 348ba46956..215d33fa1f 100644 --- a/Content.Server/GameObjects/Components/Atmos/GasCanisterComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/GasCanisterComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using Content.Server.Atmos; using Content.Server.GameObjects.Components.Atmos.Piping; @@ -92,7 +92,6 @@ namespace Content.Server.GameObjects.Components.Atmos if (Owner.TryGetComponent(out var physics)) { AnchorUpdate(); - physics.AnchoredChanged += AnchorUpdate; } if (UserInterface != null) { @@ -107,15 +106,22 @@ namespace Content.Server.GameObjects.Components.Atmos UpdateAppearance(); } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case AnchoredChangedMessage: + AnchorUpdate(); + break; + } + } + #region Connector port methods public override void OnRemove() { base.OnRemove(); - if (Owner.TryGetComponent(out var physics)) - { - physics.AnchoredChanged -= AnchorUpdate; - } if (UserInterface != null) { UserInterface.OnReceiveMessage -= OnUiReceiveMessage; diff --git a/Content.Server/GameObjects/Components/Atmos/Piping/GasCanisterPortComponent.cs b/Content.Server/GameObjects/Components/Atmos/Piping/GasCanisterPortComponent.cs index 39e0289d47..cdc701d36d 100644 --- a/Content.Server/GameObjects/Components/Atmos/Piping/GasCanisterPortComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/Piping/GasCanisterPortComponent.cs @@ -1,7 +1,9 @@ -using Content.Server.GameObjects.Components.NodeContainer; +#nullable enable +using Content.Server.GameObjects.Components.NodeContainer; using Content.Server.GameObjects.Components.NodeContainer.Nodes; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.Transform; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Log; using Robust.Shared.ViewVariables; using System.Linq; @@ -9,46 +11,34 @@ using System.Linq; namespace Content.Server.GameObjects.Components.Atmos.Piping { [RegisterComponent] - public class GasCanisterPortComponent : PipeNetDeviceComponent + public class GasCanisterPortComponent : Component { public override string Name => "GasCanisterPort"; [ViewVariables] - public GasCanisterComponent ConnectedCanister { get; private set; } + public GasCanisterComponent? ConnectedCanister { get; private set; } [ViewVariables] public bool ConnectedToCanister => ConnectedCanister != null; [ViewVariables] - private PipeNode _gasPort; + private PipeNode? _gasPort; public override void Initialize() { base.Initialize(); - if (!Owner.TryGetComponent(out var container)) - { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(GasCanisterPortComponent)} on entity {Owner.Uid} did not have a {nameof(NodeContainerComponent)}."); - return; - } - _gasPort = container.Nodes.OfType().FirstOrDefault(); - if (_gasPort == null) - { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(GasCanisterPortComponent)} on entity {Owner.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); - return; - } + Owner.EnsureComponentWarn(); + SetGasPort(); if (Owner.TryGetComponent(out var snapGrid)) { - var anchoredCanister = snapGrid.GetLocal() - .Select(entity => entity.TryGetComponent(out var canister) ? canister : null) - .Where(canister => canister != null) - .Where(canister => canister.Anchored) - .Where(canister => !canister.ConnectedToPort) - .FirstOrDefault(); - if (anchoredCanister != null) + var entities = snapGrid.GetLocal(); + foreach (var entity in entities) { - anchoredCanister.TryConnectToPort(); + if (entity.TryGetComponent(out var canister) && canister.Anchored && !canister.ConnectedToPort) + { + canister.TryConnectToPort(); + break; + } } } } @@ -59,10 +49,24 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping ConnectedCanister?.DisconnectFromPort(); } - public override void Update() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - ConnectedCanister?.Air.Share(_gasPort.Air, 1); - ConnectedCanister?.AirWasUpdated(); + base.HandleMessage(message, component); + switch (message) + { + case PipeNetUpdateMessage: + Update(); + break; + } + } + + public void Update() + { + if (_gasPort == null || ConnectedCanister == null) + return; + + ConnectedCanister.Air.Share(_gasPort.Air, 1); + ConnectedCanister.AirWasUpdated(); } public void ConnectGasCanister(GasCanisterComponent gasCanister) @@ -74,5 +78,20 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping { ConnectedCanister = null; } + + private void SetGasPort() + { + if (!Owner.TryGetComponent(out var container)) + { + Logger.Error($"{typeof(GasCanisterPortComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} did not have a {nameof(NodeContainerComponent)}."); + return; + } + _gasPort = container.Nodes.OfType().FirstOrDefault(); + if (_gasPort == null) + { + Logger.Error($"{typeof(GasCanisterPortComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); + return; + } + } } } diff --git a/Content.Server/GameObjects/Components/Atmos/Piping/GasFilterComponent.cs b/Content.Server/GameObjects/Components/Atmos/Piping/GasFilterComponent.cs new file mode 100644 index 0000000000..8a6cd18f1d --- /dev/null +++ b/Content.Server/GameObjects/Components/Atmos/Piping/GasFilterComponent.cs @@ -0,0 +1,179 @@ +#nullable enable +using Content.Server.Atmos; +using Content.Server.GameObjects.Components.NodeContainer; +using Content.Server.GameObjects.Components.NodeContainer.Nodes; +using Content.Shared.Atmos; +using Content.Shared.GameObjects.Components.Atmos; +using Robust.Server.GameObjects; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.ComponentDependencies; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Log; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; +using System; +using System.Linq; + +namespace Content.Server.GameObjects.Components.Atmos.Piping.Filters +{ + [RegisterComponent] + public class GasFilterComponent : Component + { + public override string Name => "GasFilter"; + + /// + /// If the filter is currently filtering. + /// + [ViewVariables(VVAccess.ReadWrite)] + public bool FilterEnabled + { + get => _filterEnabled; + set + { + _filterEnabled = value; + UpdateAppearance(); + } + } + private bool _filterEnabled; + + [ViewVariables(VVAccess.ReadWrite)] + public Gas GasToFilter + { + get => _gasToFilter; + set + { + _gasToFilter = value; + UpdateAppearance(); + } + } + private Gas _gasToFilter; + + [ViewVariables(VVAccess.ReadWrite)] + public int VolumeFilterRate + { + get => _volumeFilterRate; + set => _volumeFilterRate = Math.Clamp(value, 0, MaxVolumeFilterRate); + } + private int _volumeFilterRate; + + [ViewVariables(VVAccess.ReadWrite)] + public int MaxVolumeFilterRate + { + get => _maxVolumeFilterRate; + set => Math.Max(value, 0); + } + private int _maxVolumeFilterRate; + + [ViewVariables] + private PipeDirection _initialInletDirection; + + /// + /// The direction the filtered-out gas goes. + /// + [ViewVariables] + private PipeDirection _initialFilterOutletDirection; + + /// + /// The direction the rest of the gas goes. + /// + [ViewVariables] + private PipeDirection _initialOutletDirection; + + [ViewVariables] + private PipeNode? _inletPipe; + + [ViewVariables] + private PipeNode? _filterOutletPipe; + + [ViewVariables] + private PipeNode? _outletPipe; + + [ComponentDependency] + private readonly AppearanceComponent? _appearance = default; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _volumeFilterRate, "startingVolumePumpRate", 0); + serializer.DataField(ref _maxVolumeFilterRate, "maxVolumePumpRate", 100); + serializer.DataField(ref _gasToFilter, "gasToFilter", Gas.Phoron); + serializer.DataField(ref _initialInletDirection, "inletDirection", PipeDirection.None); + serializer.DataField(ref _initialFilterOutletDirection, "filterOutletDirection", PipeDirection.None); + serializer.DataField(ref _initialOutletDirection, "outletDirection", PipeDirection.None); + } + + public override void Initialize() + { + base.Initialize(); + Owner.EnsureComponent(); + SetPipes(); + UpdateAppearance(); + } + + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PipeNetUpdateMessage: + Update(); + break; + } + } + + public void Update() + { + if (!FilterEnabled) + return; + + if (_inletPipe == null || _inletPipe.Air == null || + _filterOutletPipe == null || _filterOutletPipe.Air == null || + _outletPipe == null || _outletPipe.Air == null) + return; + + FilterGas(_inletPipe.Air, _filterOutletPipe.Air, _outletPipe.Air); + } + + private void FilterGas(GasMixture inletGas, GasMixture filterOutletGas, GasMixture outletGas) + { + var volumeRatio = Math.Clamp(VolumeFilterRate / inletGas.Volume, 0, 1); + var gas = inletGas.RemoveRatio(volumeRatio); + + var molesToSeperate = gas.GetMoles(GasToFilter); + gas.SetMoles(GasToFilter, 0); + filterOutletGas.AdjustMoles(GasToFilter, molesToSeperate); + + outletGas.Merge(gas); + } + + private void UpdateAppearance() + { + _appearance?.SetData(FilterVisuals.VisualState, new FilterVisualState(FilterEnabled)); + } + + private void SetPipes() + { + _inletPipe = null; + _filterOutletPipe = null; + _outletPipe = null; + + if (!Owner.TryGetComponent(out var container)) + { + Logger.Error($"{typeof(GasFilterComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} did not have a {nameof(NodeContainerComponent)}."); + return; + } + + var pipeNodes = container.Nodes.OfType(); + + _inletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _initialInletDirection).FirstOrDefault(); + _filterOutletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _initialFilterOutletDirection).FirstOrDefault(); + _outletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _initialOutletDirection).FirstOrDefault(); + + if (_inletPipe == null || _filterOutletPipe == null || _outletPipe == null) + { + Logger.Error($"{typeof(GasFilterComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); + return; + } + } + } +} diff --git a/Content.Server/GameObjects/Components/Atmos/Piping/PipeNetDeviceComponent.cs b/Content.Server/GameObjects/Components/Atmos/Piping/PipeNetDeviceComponent.cs index 3f41f36f37..0b2b94d92f 100644 --- a/Content.Server/GameObjects/Components/Atmos/Piping/PipeNetDeviceComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/Piping/PipeNetDeviceComponent.cs @@ -1,4 +1,5 @@ -using Content.Server.Atmos; +#nullable enable +using Content.Server.Atmos; using Content.Server.GameObjects.EntitySystems; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; @@ -9,11 +10,14 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping /// Adds itself to a to be updated by. /// TODO: Make compatible with unanchoring/anchoring. Currently assumes that the Owner does not move. /// - public abstract class PipeNetDeviceComponent : Component + [RegisterComponent] + public class PipeNetDeviceComponent : Component { - public abstract void Update(); + public override string Name => "PipeNetDevice"; - protected IGridAtmosphereComponent JoinedGridAtmos { get; private set; } + private IGridAtmosphereComponent? JoinedGridAtmos { get; set; } + + private PipeNetUpdateMessage _cachedUpdateMessage = new(); public override void Initialize() { @@ -27,6 +31,11 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping LeaveGridAtmos(); } + public void Update() + { + SendMessage(_cachedUpdateMessage); + } + private void JoinGridAtmos() { var gridAtmos = EntitySystem.Get() @@ -41,4 +50,9 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping JoinedGridAtmos = null; } } + + public class PipeNetUpdateMessage : ComponentMessage + { + + } } diff --git a/Content.Server/GameObjects/Components/Atmos/Piping/Pumps/BasePumpComponent.cs b/Content.Server/GameObjects/Components/Atmos/Piping/Pumps/BasePumpComponent.cs index d3521e9c8a..a4c3d6a8e9 100644 --- a/Content.Server/GameObjects/Components/Atmos/Piping/Pumps/BasePumpComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/Piping/Pumps/BasePumpComponent.cs @@ -1,11 +1,12 @@ -using System.Linq; +#nullable enable +using System.Linq; using Content.Server.Atmos; using Content.Server.GameObjects.Components.NodeContainer; using Content.Server.GameObjects.Components.NodeContainer.Nodes; using Content.Shared.GameObjects.Components.Atmos; using Robust.Server.GameObjects; using Robust.Shared.GameObjects; -using Robust.Shared.GameObjects.Components.Transform; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Log; using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; @@ -15,7 +16,7 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping.Pumps /// /// Transfer gas from one to another. /// - public abstract class BasePumpComponent : PipeNetDeviceComponent + public abstract class BasePumpComponent : Component { /// /// If the pump is currently pumping. @@ -33,87 +34,88 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping.Pumps private bool _pumpEnabled; /// - /// Needs to be same as that of a on this entity. + /// Needs to be same as that of a on this entity. /// [ViewVariables] - private PipeDirection _inletDirection; + private PipeDirection _initialInletDirection; /// - /// Needs to be same as that of a on this entity. + /// Needs to be same as that of a on this entity. /// [ViewVariables] - private PipeDirection _outletDirection; + private PipeDirection _initialOutletDirection; [ViewVariables] - private PipeNode _inletPipe; + private PipeNode? _inletPipe; [ViewVariables] - private PipeNode _outletPipe; + private PipeNode? _outletPipe; - private AppearanceComponent _appearance; + private AppearanceComponent? _appearance; public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - serializer.DataField(ref _inletDirection, "inletDirection", PipeDirection.None); - serializer.DataField(ref _outletDirection, "outletDirection", PipeDirection.None); + serializer.DataField(ref _initialInletDirection, "inletDirection", PipeDirection.None); + serializer.DataField(ref _initialOutletDirection, "outletDirection", PipeDirection.None); serializer.DataField(ref _pumpEnabled, "pumpEnabled", false); } public override void Initialize() { base.Initialize(); - UpdatePipes(); - Owner.EntityManager.EventBus.SubscribeEvent(EventSource.Local, this, RotateEvent); + Owner.EnsureComponentWarn(); + SetPipes(); Owner.TryGetComponent(out _appearance); UpdateAppearance(); } - public override void Update() + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PipeNetUpdateMessage: + Update(); + break; + } + } + + public void Update() { if (!PumpEnabled) return; + if (_inletPipe == null || _outletPipe == null) + return; + PumpGas(_inletPipe.Air, _outletPipe.Air); } protected abstract void PumpGas(GasMixture inletGas, GasMixture outletGas); - private void RotateEvent(RotateEvent ev) - { - if (ev.Sender != Owner || ev.NewRotation == ev.OldRotation) - return; - - var diff = ev.NewRotation - ev.OldRotation; - _inletDirection = _inletDirection.RotatePipeDirection(diff); - _outletDirection = _outletDirection.RotatePipeDirection(diff); - UpdatePipes(); - } - private void UpdateAppearance() { if (_inletPipe == null || _outletPipe == null) return; - _appearance?.SetData(PumpVisuals.VisualState, new PumpVisualState(_inletDirection, _outletDirection, _inletPipe.ConduitLayer, _outletPipe.ConduitLayer, PumpEnabled)); + _appearance?.SetData(PumpVisuals.VisualState, new PumpVisualState(_initialInletDirection, _initialOutletDirection, PumpEnabled)); } - private void UpdatePipes() + private void SetPipes() { _inletPipe = null; _outletPipe = null; if (!Owner.TryGetComponent(out var container)) { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(BasePumpComponent)} on entity {Owner.Uid} did not have a {nameof(NodeContainerComponent)}."); + Logger.Error($"{typeof(BasePumpComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} did not have a {nameof(NodeContainerComponent)}."); return; } var pipeNodes = container.Nodes.OfType(); - _inletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _inletDirection).FirstOrDefault(); - _outletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _outletDirection).FirstOrDefault(); - if (_inletPipe == null | _outletPipe == null) + _inletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _initialInletDirection).FirstOrDefault(); + _outletPipe = pipeNodes.Where(pipe => pipe.PipeDirection == _initialOutletDirection).FirstOrDefault(); + if (_inletPipe == null || _outletPipe == null) { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(BasePumpComponent)} on entity {Owner.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); + Logger.Error($"{typeof(BasePumpComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); return; } } diff --git a/Content.Server/GameObjects/Components/Atmos/Piping/Scrubbers/BaseSiphonComponent.cs b/Content.Server/GameObjects/Components/Atmos/Piping/Scrubbers/BaseSiphonComponent.cs index 77acc61780..fe30881d58 100644 --- a/Content.Server/GameObjects/Components/Atmos/Piping/Scrubbers/BaseSiphonComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/Piping/Scrubbers/BaseSiphonComponent.cs @@ -1,13 +1,14 @@ -using System.Linq; +#nullable enable +using System.Linq; using Content.Server.Atmos; using Content.Server.GameObjects.Components.NodeContainer; using Content.Server.GameObjects.Components.NodeContainer.Nodes; using Content.Server.GameObjects.EntitySystems; using Content.Shared.GameObjects.Components.Atmos; using Robust.Server.GameObjects; +using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.IoC; using Robust.Shared.Log; using Robust.Shared.ViewVariables; @@ -16,13 +17,13 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping.Scrubbers /// /// Transfers gas from the tile it is on to a . /// - public abstract class BaseSiphonComponent : PipeNetDeviceComponent + public abstract class BaseSiphonComponent : Component { [ViewVariables] - private PipeNode _scrubberOutlet; + private PipeNode? _scrubberOutlet; - private AtmosphereSystem _atmosSystem; + private AtmosphereSystem? _atmosSystem; [ViewVariables(VVAccess.ReadWrite)] public bool SiphonEnabled @@ -36,43 +37,60 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping.Scrubbers } private bool _siphonEnabled = true; - private AppearanceComponent _appearance; + private AppearanceComponent? _appearance; public override void Initialize() { base.Initialize(); + Owner.EnsureComponentWarn(); _atmosSystem = EntitySystem.Get(); - if (!Owner.TryGetComponent(out var container)) - { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(BaseSiphonComponent)} on entity {Owner.Uid} did not have a {nameof(NodeContainerComponent)}."); - return; - } - _scrubberOutlet = container.Nodes.OfType().FirstOrDefault(); - if (_scrubberOutlet == null) - { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(BaseSiphonComponent)} on entity {Owner.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); - return; - } + SetOutlet(); Owner.TryGetComponent(out _appearance); UpdateAppearance(); } - public override void Update() + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PipeNetUpdateMessage: + Update(); + break; + } + } + + public void Update() { if (!SiphonEnabled) return; var tileAtmos = Owner.Transform.Coordinates.GetTileAtmosphere(Owner.EntityManager); - if (tileAtmos == null) + + if (_scrubberOutlet == null || tileAtmos == null || tileAtmos.Air == null) return; + ScrubGas(tileAtmos.Air, _scrubberOutlet.Air); tileAtmos.Invalidate(); } protected abstract void ScrubGas(GasMixture inletGas, GasMixture outletGas); + private void SetOutlet() + { + if (!Owner.TryGetComponent(out var container)) + { + Logger.Error($"{typeof(BaseSiphonComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} did not have a {nameof(NodeContainerComponent)}."); + return; + } + _scrubberOutlet = container.Nodes.OfType().FirstOrDefault(); + if (_scrubberOutlet == null) + { + Logger.Error($"{typeof(BaseSiphonComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); + return; + } + } + private void UpdateAppearance() { _appearance?.SetData(SiphonVisuals.VisualState, new SiphonVisualState(SiphonEnabled)); diff --git a/Content.Server/GameObjects/Components/Atmos/Piping/Vents/BaseVentComponent.cs b/Content.Server/GameObjects/Components/Atmos/Piping/Vents/BaseVentComponent.cs index 8c0ba7f833..db4508959b 100644 --- a/Content.Server/GameObjects/Components/Atmos/Piping/Vents/BaseVentComponent.cs +++ b/Content.Server/GameObjects/Components/Atmos/Piping/Vents/BaseVentComponent.cs @@ -1,13 +1,14 @@ -using System.Linq; +#nullable enable +using System.Linq; using Content.Server.Atmos; using Content.Server.GameObjects.Components.NodeContainer; using Content.Server.GameObjects.Components.NodeContainer.Nodes; using Content.Server.GameObjects.EntitySystems; using Content.Shared.GameObjects.Components.Atmos; using Robust.Server.GameObjects; +using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.IoC; using Robust.Shared.Log; using Robust.Shared.ViewVariables; @@ -16,13 +17,13 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping.Vents /// /// Transfers gas from a to the tile it is on. /// - public abstract class BaseVentComponent : PipeNetDeviceComponent + public abstract class BaseVentComponent : Component { [ViewVariables] - private PipeNode _ventInlet; + private PipeNode? _ventInlet; - private AtmosphereSystem _atmosSystem; + private AtmosphereSystem? _atmosSystem; [ViewVariables(VVAccess.ReadWrite)] public bool VentEnabled @@ -36,43 +37,60 @@ namespace Content.Server.GameObjects.Components.Atmos.Piping.Vents } private bool _ventEnabled = true; - private AppearanceComponent _appearance; + private AppearanceComponent? _appearance; public override void Initialize() { base.Initialize(); + Owner.EnsureComponentWarn(); _atmosSystem = EntitySystem.Get(); - if (!Owner.TryGetComponent(out var container)) - { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(BaseVentComponent)} on entity {Owner.Uid} did not have a {nameof(NodeContainerComponent)}."); - return; - } - _ventInlet = container.Nodes.OfType().FirstOrDefault(); - if (_ventInlet == null) - { - JoinedGridAtmos?.RemovePipeNetDevice(this); - Logger.Error($"{typeof(BaseVentComponent)} on entity {Owner.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); - return; - } + SetInlet(); Owner.TryGetComponent(out _appearance); UpdateAppearance(); } - public override void Update() + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PipeNetUpdateMessage: + Update(); + break; + } + } + + public void Update() { if (!VentEnabled) return; var tileAtmos = Owner.Transform.Coordinates.GetTileAtmosphere(Owner.EntityManager); - if (tileAtmos == null) + + if (_ventInlet == null || tileAtmos == null || tileAtmos.Air == null) return; + VentGas(_ventInlet.Air, tileAtmos.Air); tileAtmos.Invalidate(); } protected abstract void VentGas(GasMixture inletGas, GasMixture outletGas); + private void SetInlet() + { + if (!Owner.TryGetComponent(out var container)) + { + Logger.Error($"{typeof(BaseVentComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} did not have a {nameof(NodeContainerComponent)}."); + return; + } + _ventInlet = container.Nodes.OfType().FirstOrDefault(); + if (_ventInlet == null) + { + Logger.Error($"{typeof(BaseVentComponent)} on {Owner?.Prototype?.ID}, Uid {Owner?.Uid} could not find compatible {nameof(PipeNode)}s on its {nameof(NodeContainerComponent)}."); + return; + } + } + private void UpdateAppearance() { _appearance?.SetData(VentVisuals.VisualState, new VentVisualState(VentEnabled)); diff --git a/Content.Server/GameObjects/Components/BarSign/BarSignComponent.cs b/Content.Server/GameObjects/Components/BarSign/BarSignComponent.cs index 16827c0dc6..bc18f218e0 100644 --- a/Content.Server/GameObjects/Components/BarSign/BarSignComponent.cs +++ b/Content.Server/GameObjects/Components/BarSign/BarSignComponent.cs @@ -1,9 +1,10 @@ -#nullable enable +#nullable enable using System.Linq; using Content.Server.GameObjects.Components.Power.ApcNetComponents; using Robust.Server.GameObjects; 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.Localization; @@ -81,25 +82,21 @@ namespace Content.Server.GameObjects.Components.BarSign { base.Initialize(); - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += PowerOnOnPowerStateChanged; - } - UpdateSignInfo(); } - public override void OnRemove() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged -= PowerOnOnPowerStateChanged; + case PowerChangedMessage powerChanged: + PowerOnOnPowerStateChanged(powerChanged); + break; } - - base.OnRemove(); } - private void PowerOnOnPowerStateChanged(object? sender, PowerStateEventArgs e) + private void PowerOnOnPowerStateChanged(PowerChangedMessage e) { UpdateSignInfo(); } diff --git a/Content.Server/GameObjects/Components/Body/Behavior/StomachBehavior.cs b/Content.Server/GameObjects/Components/Body/Behavior/StomachBehavior.cs index 0f1dd177c7..30107dbd03 100644 --- a/Content.Server/GameObjects/Components/Body/Behavior/StomachBehavior.cs +++ b/Content.Server/GameObjects/Components/Body/Behavior/StomachBehavior.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System.Collections.Generic; using System.Linq; using Content.Server.GameObjects.Components.Chemistry; @@ -147,7 +147,7 @@ namespace Content.Server.GameObjects.Components.Body.Behavior } // Add solution to _stomachContents - solutionComponent.TryAddSolution(solution, false, true); + solutionComponent.TryAddSolution(solution); // Add each reagent to _reagentDeltas. Used to track how long each reagent has been in the stomach foreach (var reagent in solution.Contents) { diff --git a/Content.Server/GameObjects/Components/Body/BodyComponent.cs b/Content.Server/GameObjects/Components/Body/BodyComponent.cs index 71637b13ea..000832af1d 100644 --- a/Content.Server/GameObjects/Components/Body/BodyComponent.cs +++ b/Content.Server/GameObjects/Components/Body/BodyComponent.cs @@ -1,15 +1,20 @@ #nullable enable using System; using Content.Server.Commands.Observer; +using Content.Shared.Audio; using Content.Shared.GameObjects.Components.Body; using Content.Shared.GameObjects.Components.Body.Part; using Content.Shared.GameObjects.Components.Damage; using Content.Shared.GameObjects.Components.Mobs.State; using Content.Shared.GameObjects.Components.Movement; +using Content.Shared.Utility; using Robust.Server.GameObjects.Components.Container; +using Robust.Server.GameObjects.EntitySystems; using Robust.Server.Interfaces.Console; using Robust.Server.Interfaces.Player; +using Robust.Shared.Audio; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Systems; using Robust.Shared.IoC; using Robust.Shared.Log; using Robust.Shared.Players; @@ -41,6 +46,7 @@ namespace Content.Server.GameObjects.Components.Body base.OnRemovePart(slot, part); _partContainer.ForceRemove(part.Owner); + part.Owner.RandomOffset(0.25f); } public override void Initialize() @@ -88,5 +94,29 @@ namespace Content.Server.GameObjects.Components.Body new Ghost().Execute(shell, (IPlayerSession) session, Array.Empty()); } } + + public override void Gib(bool gibParts = false) + { + base.Gib(gibParts); + + EntitySystem.Get() + .PlayAtCoords(AudioHelpers.GetRandomFileFromSoundCollection("gib"), Owner.Transform.Coordinates, + AudioHelpers.WithVariation(0.025f)); + + if (Owner.TryGetComponent(out ContainerManagerComponent? container)) + { + foreach (var cont in container.GetAllContainers()) + { + foreach (var ent in cont.ContainedEntities) + { + cont.ForceRemove(ent); + ent.Transform.Coordinates = Owner.Transform.Coordinates; + ent.RandomOffset(0.25f); + } + } + } + + Owner.Delete(); + } } } diff --git a/Content.Server/GameObjects/Components/Body/Circulatory/BloodstreamComponent.cs b/Content.Server/GameObjects/Components/Body/Circulatory/BloodstreamComponent.cs index b38b2db3a7..e915c526ce 100644 --- a/Content.Server/GameObjects/Components/Body/Circulatory/BloodstreamComponent.cs +++ b/Content.Server/GameObjects/Components/Body/Circulatory/BloodstreamComponent.cs @@ -68,7 +68,7 @@ namespace Content.Server.GameObjects.Components.Body.Circulatory return false; } - _internalSolution.TryAddSolution(solution, false, true); + _internalSolution.TryAddSolution(solution); return true; } diff --git a/Content.Server/GameObjects/Components/Body/Part/BodyPartComponent.cs b/Content.Server/GameObjects/Components/Body/Part/BodyPartComponent.cs index 450d400c40..44c7cc5a7e 100644 --- a/Content.Server/GameObjects/Components/Body/Part/BodyPartComponent.cs +++ b/Content.Server/GameObjects/Components/Body/Part/BodyPartComponent.cs @@ -11,6 +11,7 @@ using Content.Shared.GameObjects.Components.Body.Surgery; using Content.Shared.GameObjects.Verbs; using Content.Shared.Interfaces; using Content.Shared.Interfaces.GameObjects.Components; +using Content.Shared.Utility; using Robust.Server.Console; using Robust.Server.GameObjects; using Robust.Server.GameObjects.Components.Container; @@ -57,6 +58,7 @@ namespace Content.Server.GameObjects.Components.Body.Part base.OnRemoveMechanism(mechanism); _mechanismContainer.Remove(mechanism.Owner); + mechanism.Owner.RandomOffset(0.25f); } public override void Initialize() diff --git a/Content.Server/GameObjects/Components/Buckle/BuckleComponent.cs b/Content.Server/GameObjects/Components/Buckle/BuckleComponent.cs index f6f4c640f5..61f1539e22 100644 --- a/Content.Server/GameObjects/Components/Buckle/BuckleComponent.cs +++ b/Content.Server/GameObjects/Components/Buckle/BuckleComponent.cs @@ -33,6 +33,7 @@ using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Buckle { [RegisterComponent] + [ComponentReference(typeof(SharedBuckleComponent))] public class BuckleComponent : SharedBuckleComponent, IInteractHand { [Dependency] private readonly IGameTiming _gameTiming = default!; @@ -44,11 +45,6 @@ namespace Content.Server.GameObjects.Components.Buckle private int _size; - /// - /// The range from which this entity can buckle to a . - /// - [ViewVariables] - private float _range; /// /// The amount of time that must pass for this entity to /// be able to unbuckle after recently buckling. @@ -184,7 +180,7 @@ namespace Content.Server.GameObjects.Components.Buckle var component = strap; bool Ignored(IEntity entity) => entity == Owner || entity == user || entity == component.Owner; - if (!Owner.InRangeUnobstructed(strap, _range, predicate: Ignored, popup: true)) + if (!Owner.InRangeUnobstructed(strap, Range, predicate: Ignored, popup: true)) { return false; } @@ -319,7 +315,7 @@ namespace Content.Server.GameObjects.Components.Buckle return false; } - if (!user.InRangeUnobstructed(oldBuckledTo, _range, popup: true)) + if (!user.InRangeUnobstructed(oldBuckledTo, Range, popup: true)) { return false; } @@ -385,7 +381,6 @@ namespace Content.Server.GameObjects.Components.Buckle base.ExposeData(serializer); serializer.DataField(ref _size, "size", 100); - serializer.DataField(ref _range, "range", SharedInteractionSystem.InteractionRange / 1.4f); var seconds = 0.25f; serializer.DataField(ref seconds, "cooldown", 0.25f); diff --git a/Content.Server/GameObjects/Components/Cargo/CargoConsoleComponent.cs b/Content.Server/GameObjects/Components/Cargo/CargoConsoleComponent.cs index b48ebd83bb..db36c2a884 100644 --- a/Content.Server/GameObjects/Components/Cargo/CargoConsoleComponent.cs +++ b/Content.Server/GameObjects/Components/Cargo/CargoConsoleComponent.cs @@ -26,7 +26,6 @@ namespace Content.Server.GameObjects.Components.Cargo [ComponentReference(typeof(IActivate))] public class CargoConsoleComponent : SharedCargoConsoleComponent, IActivate { - [Dependency] private readonly ICargoOrderDataManager _cargoOrderDataManager = default!; [Dependency] private readonly IMapManager _mapManager = default!; [ViewVariables] @@ -88,7 +87,7 @@ namespace Content.Server.GameObjects.Components.Cargo { if (UserInterface != null) { - UserInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; + UserInterface.OnReceiveMessage -= UserInterfaceOnOnReceiveMessage; } base.OnRemove(); @@ -125,12 +124,12 @@ namespace Content.Server.GameObjects.Components.Cargo break; } - _cargoOrderDataManager.AddOrder(orders.Database.Id, msg.Requester, msg.Reason, msg.ProductId, msg.Amount, _bankAccount.Id); + _cargoConsoleSystem.AddOrder(orders.Database.Id, msg.Requester, msg.Reason, msg.ProductId, msg.Amount, _bankAccount.Id); break; } case CargoConsoleRemoveOrderMessage msg: { - _cargoOrderDataManager.RemoveOrder(orders.Database.Id, msg.OrderNumber); + _cargoConsoleSystem.RemoveOrder(orders.Database.Id, msg.OrderNumber); break; } case CargoConsoleApproveOrderMessage msg: @@ -145,12 +144,12 @@ namespace Content.Server.GameObjects.Components.Cargo PrototypeManager.TryIndex(order.ProductId, out CargoProductPrototype product); if (product == null!) break; - var capacity = _cargoOrderDataManager.GetCapacity(orders.Database.Id); + var capacity = _cargoConsoleSystem.GetCapacity(orders.Database.Id); if (capacity.CurrentCapacity == capacity.MaxCapacity) break; if (!_cargoConsoleSystem.ChangeBalance(_bankAccount.Id, (-product.PointCost) * order.Amount)) break; - _cargoOrderDataManager.ApproveOrder(orders.Database.Id, msg.OrderNumber); + _cargoConsoleSystem.ApproveOrder(orders.Database.Id, msg.OrderNumber); UpdateUIState(); break; } @@ -165,7 +164,7 @@ namespace Content.Server.GameObjects.Components.Cargo var indices = Owner.Transform.Coordinates.ToVector2i(Owner.EntityManager, _mapManager); var offsets = new Vector2i[] { new Vector2i(0, 1), new Vector2i(1, 1), new Vector2i(1, 0), new Vector2i(1, -1), new Vector2i(0, -1), new Vector2i(-1, -1), new Vector2i(-1, 0), new Vector2i(-1, 1), }; - var adjacentEntities = new List>(); //Probably better than IEnumerable.concat + var adjacentEntities = new List>(); //Probably better than IEnumerable.concat foreach (var offset in offsets) { adjacentEntities.Add((indices+offset).GetEntitiesInTileFast(Owner.Transform.GridID)); @@ -186,7 +185,7 @@ namespace Content.Server.GameObjects.Components.Cargo { if (cargoTelepad.TryGetComponent(out var telepadComponent)) { - var approvedOrders = _cargoOrderDataManager.RemoveAndGetApprovedFrom(orders.Database); + var approvedOrders = _cargoConsoleSystem.RemoveAndGetApprovedOrders(orders.Database.Id); orders.Database.ClearOrderCapacity(); foreach (var order in approvedOrders) { @@ -226,7 +225,7 @@ namespace Content.Server.GameObjects.Components.Cargo var id = _bankAccount.Id; var name = _bankAccount.Name; var balance = _bankAccount.Balance; - var capacity = _cargoOrderDataManager.GetCapacity(id); + var capacity = _cargoConsoleSystem.GetCapacity(id); UserInterface?.SetState(new CargoConsoleInterfaceState(_requestOnly, id, name, balance, capacity)); } } diff --git a/Content.Server/GameObjects/Components/Cargo/CargoOrderDatabaseComponent.cs b/Content.Server/GameObjects/Components/Cargo/CargoOrderDatabaseComponent.cs index 09fff675c2..54c5c7e091 100644 --- a/Content.Server/GameObjects/Components/Cargo/CargoOrderDatabaseComponent.cs +++ b/Content.Server/GameObjects/Components/Cargo/CargoOrderDatabaseComponent.cs @@ -1,6 +1,8 @@ -using Content.Server.Cargo; +using Content.Server.Cargo; +using Content.Server.GameObjects.EntitySystems; using Content.Shared.GameObjects.Components.Cargo; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Systems; using Robust.Shared.IoC; namespace Content.Server.GameObjects.Components.Cargo @@ -8,8 +10,6 @@ namespace Content.Server.GameObjects.Components.Cargo [RegisterComponent] public class CargoOrderDatabaseComponent : SharedCargoOrderDatabaseComponent { - [Dependency] private readonly ICargoOrderDataManager _cargoOrderDataManager = default!; - public CargoOrderDatabase Database { get; set; } public bool ConnectedToDatabase => Database != null; @@ -17,7 +17,7 @@ namespace Content.Server.GameObjects.Components.Cargo { base.Initialize(); - _cargoOrderDataManager.AddComponent(this); + Database = EntitySystem.Get().StationOrderDatabase; } public override ComponentState GetComponentState() diff --git a/Content.Server/GameObjects/Components/Cargo/CargoTelepadComponent.cs b/Content.Server/GameObjects/Components/Cargo/CargoTelepadComponent.cs index 83f20b12ee..a261a92626 100644 --- a/Content.Server/GameObjects/Components/Cargo/CargoTelepadComponent.cs +++ b/Content.Server/GameObjects/Components/Cargo/CargoTelepadComponent.cs @@ -8,6 +8,7 @@ using Robust.Shared.Audio; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.Timers; using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.GameObjects; using System.Collections.Generic; namespace Content.Server.GameObjects.Components.Cargo @@ -25,22 +26,15 @@ namespace Content.Server.GameObjects.Components.Cargo private List _teleportQueue = new List(); private CargoTelepadState _currentState = CargoTelepadState.Unpowered; - - public override void OnAdd() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - base.OnAdd(); - - var receiver = Owner.EnsureComponent(); - receiver.OnPowerStateChanged += PowerUpdate; - } - - public override void OnRemove() - { - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged -= PowerUpdate; + case PowerChangedMessage powerChanged: + PowerUpdate(powerChanged); + break; } - base.OnRemove(); } public void QueueTeleport(CargoProductPrototype product) @@ -49,7 +43,7 @@ namespace Content.Server.GameObjects.Components.Cargo TeleportLoop(); } - private void PowerUpdate(object? sender, PowerStateEventArgs args) + private void PowerUpdate(PowerChangedMessage args) { if (args.Powered && _currentState == CargoTelepadState.Unpowered) { _currentState = CargoTelepadState.Idle; diff --git a/Content.Server/GameObjects/Components/Chemistry/ChemMasterComponent.cs b/Content.Server/GameObjects/Components/Chemistry/ChemMasterComponent.cs index 293b4fa0da..7d5d0625ab 100644 --- a/Content.Server/GameObjects/Components/Chemistry/ChemMasterComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/ChemMasterComponent.cs @@ -1,12 +1,10 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; -using System.Linq; using System.Threading.Tasks; using Content.Server.GameObjects.Components.GUI; using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.Components.Power.ApcNetComponents; -using Content.Server.GameObjects.EntitySystems; using Content.Server.Interfaces.GameObjects.Components.Items; using Content.Server.Utility; using Content.Shared.Chemistry; @@ -26,7 +24,6 @@ using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Localization; -using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Chemistry @@ -43,27 +40,15 @@ namespace Content.Server.GameObjects.Components.Chemistry public class ChemMasterComponent : SharedChemMasterComponent, IActivate, IInteractUsing, ISolutionChange { [ViewVariables] private ContainerSlot _beakerContainer = default!; - [ViewVariables] private string _packPrototypeId = ""; [ViewVariables] private bool HasBeaker => _beakerContainer.ContainedEntity != null; [ViewVariables] private bool _bufferModeTransfer = true; [ViewVariables] private bool Powered => !Owner.TryGetComponent(out PowerReceiverComponent? receiver) || receiver.Powered; - [ViewVariables] private readonly SolutionContainerComponent BufferSolution = new(); + [ViewVariables] private readonly Solution BufferSolution = new(); [ViewVariables] private BoundUserInterface? UserInterface => Owner.GetUIOrNull(ChemMasterUiKey.Key); - /// - /// Shows the serializer how to save/load this components yaml prototype. - /// - /// Yaml serializer - public override void ExposeData(ObjectSerializer serializer) - { - base.ExposeData(serializer); - - serializer.DataField(ref _packPrototypeId, "pack", string.Empty); - } - /// /// Called once per instance of this component. Gets references to any other components needed /// by this component and initializes it's UI and other data. @@ -80,19 +65,24 @@ namespace Content.Server.GameObjects.Components.Chemistry _beakerContainer = ContainerManagerComponent.Ensure($"{Name}-reagentContainerContainer", Owner); - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += OnPowerChanged; - } - //BufferSolution = Owner.BufferSolution - BufferSolution.Solution = new Solution(); - BufferSolution.MaxVolume = ReagentUnit.New(1000); + BufferSolution.RemoveAllSolution(); UpdateUserInterface(); } - private void OnPowerChanged(object? sender, PowerStateEventArgs e) + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PowerChangedMessage powerChanged: + OnPowerChanged(powerChanged); + break; + } + } + + private void OnPowerChanged(PowerChangedMessage e) { UpdateUserInterface(); } @@ -176,12 +166,12 @@ namespace Content.Server.GameObjects.Components.Chemistry if (beaker == null) { return new ChemMasterBoundUserInterfaceState(Powered, false, ReagentUnit.New(0), ReagentUnit.New(0), - "", Owner.Name, new List(), BufferSolution.ReagentList.ToList(), _bufferModeTransfer, BufferSolution.CurrentVolume, BufferSolution.MaxVolume); + "", Owner.Name, new List(), BufferSolution.Contents, _bufferModeTransfer, BufferSolution.TotalVolume); } var solution = beaker.GetComponent(); return new ChemMasterBoundUserInterfaceState(Powered, true, solution.CurrentVolume, solution.MaxVolume, - beaker.Name, Owner.Name, solution.ReagentList.ToList(), BufferSolution.ReagentList.ToList(), _bufferModeTransfer, BufferSolution.CurrentVolume, BufferSolution.MaxVolume); + beaker.Name, Owner.Name, solution.ReagentList, BufferSolution.Contents, _bufferModeTransfer, BufferSolution.TotalVolume); } private void UpdateUserInterface() @@ -216,12 +206,12 @@ namespace Content.Server.GameObjects.Components.Chemistry var beakerSolution = beaker.GetComponent(); if (isBuffer) { - foreach (var reagent in BufferSolution.Solution.Contents) + foreach (var reagent in BufferSolution.Contents) { if (reagent.ReagentId == id) { ReagentUnit actualAmount; - if (amount == ReagentUnit.New(-1)) + if (amount == ReagentUnit.New(-1)) //amount is ReagentUnit.New(-1) when the client sends a message requesting to remove all solution from the container { actualAmount = ReagentUnit.Min(reagent.Quantity, beakerSolution.EmptyVolume); } @@ -231,7 +221,7 @@ namespace Content.Server.GameObjects.Components.Chemistry } - BufferSolution.Solution.RemoveReagent(id, actualAmount); + BufferSolution.RemoveReagent(id, actualAmount); if (_bufferModeTransfer) { beakerSolution.TryAddReagent(id, actualAmount, out var _); @@ -251,14 +241,14 @@ namespace Content.Server.GameObjects.Components.Chemistry ReagentUnit actualAmount; if (amount == ReagentUnit.New(-1)) { - actualAmount = ReagentUnit.Min(reagent.Quantity, BufferSolution.EmptyVolume); + actualAmount = reagent.Quantity; } else { - actualAmount = ReagentUnit.Min(reagent.Quantity, amount, BufferSolution.EmptyVolume); + actualAmount = ReagentUnit.Min(reagent.Quantity, amount); } beakerSolution.TryRemoveReagent(id, actualAmount); - BufferSolution.Solution.AddReagent(id, actualAmount); + BufferSolution.AddReagent(id, actualAmount); break; } } @@ -269,12 +259,12 @@ namespace Content.Server.GameObjects.Components.Chemistry private void TryCreatePackage(IEntity user, UiAction action, int pillAmount, int bottleAmount) { - if (BufferSolution.CurrentVolume == 0) + if (BufferSolution.TotalVolume == 0) return; if (action == UiAction.CreateBottles) { - var individualVolume = BufferSolution.CurrentVolume / ReagentUnit.New(bottleAmount); + var individualVolume = BufferSolution.TotalVolume / ReagentUnit.New(bottleAmount); if (individualVolume < ReagentUnit.New(1)) return; @@ -283,7 +273,7 @@ namespace Content.Server.GameObjects.Components.Chemistry { var bottle = Owner.EntityManager.SpawnEntity("bottle", Owner.Transform.Coordinates); - var bufferSolution = BufferSolution.Solution.SplitSolution(actualVolume); + var bufferSolution = BufferSolution.SplitSolution(actualVolume); bottle.TryGetComponent(out var bottleSolution); bottleSolution?.TryAddSolution(bufferSolution); @@ -308,7 +298,7 @@ namespace Content.Server.GameObjects.Components.Chemistry } else //Pills { - var individualVolume = BufferSolution.CurrentVolume / ReagentUnit.New(pillAmount); + var individualVolume = BufferSolution.TotalVolume / ReagentUnit.New(pillAmount); if (individualVolume < ReagentUnit.New(1)) return; @@ -317,7 +307,7 @@ namespace Content.Server.GameObjects.Components.Chemistry { var pill = Owner.EntityManager.SpawnEntity("pill", Owner.Transform.Coordinates); - var bufferSolution = BufferSolution.Solution.SplitSolution(actualVolume); + var bufferSolution = BufferSolution.SplitSolution(actualVolume); pill.TryGetComponent(out var pillSolution); pillSolution?.TryAddSolution(bufferSolution); diff --git a/Content.Server/GameObjects/Components/Chemistry/InjectorComponent.cs b/Content.Server/GameObjects/Components/Chemistry/InjectorComponent.cs index 2f59c9fad5..76fc2f8b29 100644 --- a/Content.Server/GameObjects/Components/Chemistry/InjectorComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/InjectorComponent.cs @@ -4,6 +4,7 @@ using System.Threading.Tasks; using Content.Server.GameObjects.Components.Body.Circulatory; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Chemistry; +using Content.Shared.GameObjects.EntitySystems; using Content.Shared.Interfaces; using Content.Shared.Interfaces.GameObjects.Components; using Content.Shared.Utility; @@ -23,7 +24,7 @@ namespace Content.Server.GameObjects.Components.Chemistry /// containers, and can directly inject into a mobs bloodstream. /// [RegisterComponent] - public class InjectorComponent : SharedInjectorComponent, IAfterInteract, IUse + public class InjectorComponent : SharedInjectorComponent, IAfterInteract, IUse, ISolutionChange { [Dependency] private readonly IPrototypeManager _prototypeManager = default!; @@ -71,6 +72,8 @@ namespace Content.Server.GameObjects.Components.Chemistry // Set _toggleState based on prototype _toggleState = _injectOnly ? InjectorToggleMode.Inject : InjectorToggleMode.Draw; + + Dirty(); } /// @@ -280,6 +283,11 @@ namespace Content.Server.GameObjects.Components.Chemistry Dirty(); } + public void SolutionChanged(SolutionChangeEventArgs eventArgs) + { + Dirty(); + } + public override ComponentState GetComponentState() { Owner.TryGetComponent(out SolutionContainerComponent? solution); diff --git a/Content.Server/GameObjects/Components/Chemistry/PillComponent.cs b/Content.Server/GameObjects/Components/Chemistry/PillComponent.cs index 638257ac8a..9c1bd88881 100644 --- a/Content.Server/GameObjects/Components/Chemistry/PillComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/PillComponent.cs @@ -2,7 +2,7 @@ using System.Threading.Tasks; using Content.Server.GameObjects.Components.Body.Behavior; using Content.Server.GameObjects.Components.Nutrition; -using Content.Server.GameObjects.Components.Utensil; +using Content.Server.GameObjects.Components.Culinary; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Body; using Content.Shared.Interfaces; @@ -21,7 +21,6 @@ using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Chemistry { [RegisterComponent] - [ComponentReference(typeof(IAfterInteract))] public class PillComponent : FoodComponent, IUse, IAfterInteract { [Dependency] private readonly IEntitySystemManager _entitySystem = default!; diff --git a/Content.Server/GameObjects/Components/Chemistry/ReagentDispenserComponent.cs b/Content.Server/GameObjects/Components/Chemistry/ReagentDispenserComponent.cs index e27612606c..51f2bdb46d 100644 --- a/Content.Server/GameObjects/Components/Chemistry/ReagentDispenserComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/ReagentDispenserComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Linq; using System.Threading.Tasks; @@ -83,15 +83,21 @@ namespace Content.Server.GameObjects.Components.Chemistry _beakerContainer = ContainerManagerComponent.Ensure($"{Name}-reagentContainerContainer", Owner); - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += OnPowerChanged; - } - InitializeFromPrototype(); UpdateUserInterface(); } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PowerChangedMessage powerChanged: + OnPowerChanged(powerChanged); + break; + } + } + /// /// Checks to see if the pack defined in this components yaml prototype /// exists. If so, it fills the reagent inventory list. @@ -111,7 +117,7 @@ namespace Content.Server.GameObjects.Components.Chemistry } } - private void OnPowerChanged(object? sender, PowerStateEventArgs e) + private void OnPowerChanged(PowerChangedMessage e) { UpdateUserInterface(); } diff --git a/Content.Server/GameObjects/Components/Chemistry/RehydratableComponent.cs b/Content.Server/GameObjects/Components/Chemistry/RehydratableComponent.cs index 2dff3ccaf9..59d95f2054 100644 --- a/Content.Server/GameObjects/Components/Chemistry/RehydratableComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/RehydratableComponent.cs @@ -1,8 +1,9 @@ -#nullable enable -using Content.Server.GameObjects.EntitySystems; +#nullable enable using Content.Server.Utility; using Content.Shared.Chemistry; +using Content.Shared.GameObjects.EntitySystems; using Content.Shared.Interfaces.GameObjects.Components; +using Content.Shared.Utility; using Robust.Shared.GameObjects; using Robust.Shared.Localization; using Robust.Shared.Serialization; @@ -31,7 +32,7 @@ namespace Content.Server.GameObjects.Components.Chemistry public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - serializer.DataField(ref _catalystPrototype, "catalyst", "chem.H2O"); + serializer.DataField(ref _catalystPrototype, "catalyst", "chem.Water"); serializer.DataField(ref _targetPrototype, "target", null); } @@ -67,7 +68,8 @@ namespace Content.Server.GameObjects.Components.Chemistry Owner.PopupMessageEveryone(Loc.GetString("{0:TheName} expands!", Owner)); if (!string.IsNullOrEmpty(_targetPrototype)) { - Owner.EntityManager.SpawnEntity(_targetPrototype, Owner.Transform.Coordinates); + var ent = Owner.EntityManager.SpawnEntity(_targetPrototype, Owner.Transform.Coordinates); + ent.Transform.AttachToGridOrMap(); } Owner.Delete(); } diff --git a/Content.Server/GameObjects/Components/Chemistry/SolutionContainerComponent.cs b/Content.Server/GameObjects/Components/Chemistry/SolutionContainerComponent.cs index d2d72ac1fd..79a003913e 100644 --- a/Content.Server/GameObjects/Components/Chemistry/SolutionContainerComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/SolutionContainerComponent.cs @@ -1,170 +1,19 @@ -using System.Collections.Generic; -using System.Linq; -using Content.Server.Chemistry; +#nullable enable using Content.Server.GameObjects.Components.GUI; -using Content.Server.GameObjects.EntitySystems; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Chemistry; -using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; using Content.Shared.GameObjects.Verbs; -using Content.Shared.Utility; -using Robust.Server.GameObjects; -using Robust.Server.GameObjects.EntitySystems; using Robust.Shared.GameObjects; -using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.IoC; using Robust.Shared.Localization; -using Robust.Shared.Maths; -using Robust.Shared.Prototypes; -using Robust.Shared.Serialization; -using Robust.Shared.Utility; -using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Chemistry { - /// - /// ECS component that manages a liquid solution of reagents. - /// [RegisterComponent] [ComponentReference(typeof(SharedSolutionContainerComponent))] - public class SolutionContainerComponent : SharedSolutionContainerComponent, IExamine + public class SolutionContainerComponent : SharedSolutionContainerComponent { - [Dependency] private readonly IPrototypeManager _prototypeManager = default!; - [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!; - - private IEnumerable _reactions; - private string _fillInitState; - private int _fillInitSteps; - private string _fillPathString = "Objects/Specific/Chemistry/fillings.rsi"; - private ResourcePath _fillPath; - private SpriteSpecifier _fillSprite; - private AudioSystem _audioSystem; - private ChemistrySystem _chemistrySystem; - private SpriteComponent _spriteComponent; - - /// - /// The volume without reagents remaining in the container. - /// - [ViewVariables] - public ReagentUnit EmptyVolume => MaxVolume - CurrentVolume; - - public IReadOnlyList ReagentList => Solution.Contents; - public bool CanExamineContents => (Capabilities & SolutionContainerCaps.NoExamine) == 0; - public bool CanUseWithChemDispenser => (Capabilities & SolutionContainerCaps.FitsInDispenser) != 0; - public bool CanAddSolutions => (Capabilities & SolutionContainerCaps.AddTo) != 0; - public bool CanRemoveSolutions => (Capabilities & SolutionContainerCaps.RemoveFrom) != 0; - - /// - public override void ExposeData(ObjectSerializer serializer) - { - base.ExposeData(serializer); - - serializer.DataField(this, x => x.MaxVolume, "maxVol", ReagentUnit.New(0)); - serializer.DataField(this, x => x.Solution, "contents", new Solution()); - serializer.DataField(this, x => x.Capabilities, "caps", SolutionContainerCaps.AddTo | SolutionContainerCaps.RemoveFrom); - serializer.DataField(ref _fillInitState, "fillingState", string.Empty); - serializer.DataField(ref _fillInitSteps, "fillingSteps", 7); - } - - public override void Initialize() - { - base.Initialize(); - _audioSystem = EntitySystem.Get(); - _chemistrySystem = _entitySystemManager.GetEntitySystem(); - _reactions = _prototypeManager.EnumeratePrototypes(); - } - - protected override void Startup() - { - base.Startup(); - RecalculateColor(); - if (!string.IsNullOrEmpty(_fillInitState)) - { - _spriteComponent = Owner.GetComponent(); - _fillPath = new ResourcePath(_fillPathString); - _fillSprite = new SpriteSpecifier.Rsi(_fillPath, _fillInitState + (_fillInitSteps - 1)); - _spriteComponent.AddLayerWithSprite(_fillSprite); - UpdateFillIcon(); - } - } - - public void RemoveAllSolution() - { - Solution.RemoveAllSolution(); - OnSolutionChanged(false); - } - - public override bool TryRemoveReagent(string reagentId, ReagentUnit quantity) - { - if (!ContainsReagent(reagentId, out var currentQuantity)) - { - return false; - } - - Solution.RemoveReagent(reagentId, quantity); - OnSolutionChanged(false); - return true; - } - - /// - /// Attempt to remove the specified quantity from this solution - /// - /// Quantity of this solution to remove - /// Whether or not the solution was successfully removed - public bool TryRemoveSolution(ReagentUnit quantity) - { - if (CurrentVolume == 0) - { - return false; - } - - Solution.RemoveSolution(quantity); - OnSolutionChanged(false); - return true; - } - - public Solution SplitSolution(ReagentUnit quantity) - { - var solutionSplit = Solution.SplitSolution(quantity); - OnSolutionChanged(false); - return solutionSplit; - } - - protected void RecalculateColor() - { - if (Solution.TotalVolume == 0) - { - SubstanceColor = Color.Transparent; - return; - } - - Color mixColor = default; - var runningTotalQuantity = ReagentUnit.New(0); - - foreach (var reagent in Solution) - { - runningTotalQuantity += reagent.Quantity; - - if (!_prototypeManager.TryIndex(reagent.ReagentId, out ReagentPrototype proto)) - { - continue; - } - - if (mixColor == default) - { - mixColor = proto.SubstanceColor; - continue; - } - - var interpolateValue = (1 / runningTotalQuantity.Float()) * reagent.Quantity.Float(); - mixColor = Color.InterpolateBetween(mixColor, proto.SubstanceColor, interpolateValue); - } - - SubstanceColor = mixColor; - } - /// /// Transfers solution from the held container to the target container. /// @@ -221,43 +70,6 @@ namespace Content.Server.GameObjects.Components.Chemistry } } - void IExamine.Examine(FormattedMessage message, bool inDetailsRange) - { - if (!CanExamineContents) - { - return; - } - - if (ReagentList.Count == 0) - { - message.AddText(Loc.GetString("It's empty.")); - } - else if (ReagentList.Count == 1) - { - var reagent = ReagentList[0]; - - if (_prototypeManager.TryIndex(reagent.ReagentId, out ReagentPrototype proto)) - { - message.AddMarkup( - Loc.GetString("It contains a [color={0}]{1}[/color] substance.", - proto.GetSubstanceTextColor().ToHexNoAlpha(), - Loc.GetString(proto.PhysicalDescription))); - } - } - else - { - var reagent = ReagentList.Max(); - - if (_prototypeManager.TryIndex(reagent.ReagentId, out ReagentPrototype proto)) - { - message.AddMarkup( - Loc.GetString("It contains a [color={0}]{1}[/color] mixture of substances.", - SubstanceColor.ToHexNoAlpha(), - Loc.GetString(proto.PhysicalDescription))); - } - } - } - /// /// Transfers solution from a target container to the held container. /// @@ -314,207 +126,5 @@ namespace Content.Server.GameObjects.Components.Chemistry handSolutionComp.TryAddSolution(transferSolution); } } - - private void CheckForReaction() - { - bool checkForNewReaction = false; - while (true) - { - //TODO: make a hashmap at startup and then look up reagents in the contents for a reaction - //Check the solution for every reaction - foreach (var reaction in _reactions) - { - if (SolutionValidReaction(reaction, out var unitReactions)) - { - PerformReaction(reaction, unitReactions); - checkForNewReaction = true; - break; - } - } - - //Check for a new reaction if a reaction occurs, run loop again. - if (checkForNewReaction) - { - checkForNewReaction = false; - continue; - } - return; - } - } - - public bool TryAddReagent(string reagentId, ReagentUnit quantity, out ReagentUnit acceptedQuantity, bool skipReactionCheck = false, bool skipColor = false) - { - var toAcceptQuantity = MaxVolume - Solution.TotalVolume; - if (quantity > toAcceptQuantity) - { - acceptedQuantity = toAcceptQuantity; - if (acceptedQuantity == 0) return false; - } - else - { - acceptedQuantity = quantity; - } - - Solution.AddReagent(reagentId, acceptedQuantity); - if (!skipColor) { - RecalculateColor(); - } - if(!skipReactionCheck) - CheckForReaction(); - OnSolutionChanged(skipColor); - return true; - } - - public override bool CanAddSolution(Solution solution) - { - return solution.TotalVolume <= (MaxVolume - Solution.TotalVolume); - } - - public override bool TryAddSolution(Solution solution, bool skipReactionCheck = false, bool skipColor = false) - { - if (!CanAddSolution(solution)) - return false; - - Solution.AddSolution(solution); - if (!skipColor) { - RecalculateColor(); - } - if(!skipReactionCheck) - CheckForReaction(); - OnSolutionChanged(skipColor); - return true; - } - - /// - /// Checks if a solution has the reactants required to cause a specified reaction. - /// - /// The solution to check for reaction conditions. - /// The reaction whose reactants will be checked for in the solution. - /// The number of times the reaction can occur with the given solution. - /// - private bool SolutionValidReaction(ReactionPrototype reaction, out ReagentUnit unitReactions) - { - unitReactions = ReagentUnit.MaxValue; //Set to some impossibly large number initially - foreach (var reactant in reaction.Reactants) - { - if (!ContainsReagent(reactant.Key, out ReagentUnit reagentQuantity)) - { - return false; - } - var currentUnitReactions = reagentQuantity / reactant.Value.Amount; - if (currentUnitReactions < unitReactions) - { - unitReactions = currentUnitReactions; - } - } - - if (unitReactions == 0) - { - return false; - } - else - { - return true; - } - } - - /// - /// Perform a reaction on a solution. This assumes all reaction criteria have already been checked and are met. - /// - /// Solution to be reacted. - /// Reaction to occur. - /// The number of times to cause this reaction. - private void PerformReaction(ReactionPrototype reaction, ReagentUnit unitReactions) - { - //Remove non-catalysts - foreach (var reactant in reaction.Reactants) - { - if (!reactant.Value.Catalyst) - { - var amountToRemove = unitReactions * reactant.Value.Amount; - TryRemoveReagent(reactant.Key, amountToRemove); - } - } - - // Add products - foreach (var product in reaction.Products) - { - TryAddReagent(product.Key, product.Value * unitReactions, out var acceptedQuantity, true); - } - - // Trigger reaction effects - foreach (var effect in reaction.Effects) - { - effect.React(Owner, unitReactions.Double()); - } - - // Play reaction sound client-side - _audioSystem.PlayAtCoords("/Audio/Effects/Chemistry/bubbles.ogg", Owner.Transform.Coordinates); - } - - /// - /// Check if the solution contains the specified reagent. - /// - /// The reagent to check for. - /// Output the quantity of the reagent if it is contained, 0 if it isn't. - /// Return true if the solution contains the reagent. - public bool ContainsReagent(string reagentId, out ReagentUnit quantity) - { - foreach (var reagent in Solution.Contents) - { - if (reagent.ReagentId == reagentId) - { - quantity = reagent.Quantity; - return true; - } - } - - quantity = ReagentUnit.New(0); - return false; - } - - public string GetMajorReagentId() - { - if (Solution.Contents.Count == 0) - { - return ""; - } - - var majorReagent = Solution.Contents.OrderByDescending(reagent => reagent.Quantity).First();; - return majorReagent.ReagentId; - } - - protected void UpdateFillIcon() - { - if (string.IsNullOrEmpty(_fillInitState)) - { - return; - } - - var percentage = (CurrentVolume / MaxVolume).Double(); - var level = ContentHelpers.RoundToLevels(percentage * 100, 100, _fillInitSteps); - - //Transformed glass uses special fancy sprites so we don't bother - if (level == 0 || (Owner.TryGetComponent(out var transformComp) && transformComp.Transformed)) - { - _spriteComponent.LayerSetColor(1, Color.Transparent); - return; - } - - _fillSprite = new SpriteSpecifier.Rsi(_fillPath, _fillInitState + level); - _spriteComponent.LayerSetSprite(1, _fillSprite); - _spriteComponent.LayerSetColor(1, SubstanceColor); - } - - protected virtual void OnSolutionChanged(bool skipColor) - { - if (!skipColor) - { - RecalculateColor(); - } - - UpdateFillIcon(); - _chemistrySystem.HandleSolutionChange(Owner); - } } } diff --git a/Content.Server/GameObjects/Components/Chemistry/TransformableContainerComponent.cs b/Content.Server/GameObjects/Components/Chemistry/TransformableContainerComponent.cs index 1eff6c49b2..5fad172db7 100644 --- a/Content.Server/GameObjects/Components/Chemistry/TransformableContainerComponent.cs +++ b/Content.Server/GameObjects/Components/Chemistry/TransformableContainerComponent.cs @@ -1,6 +1,6 @@ -#nullable enable -using Content.Server.GameObjects.EntitySystems; +#nullable enable using Content.Shared.Chemistry; +using Content.Shared.GameObjects.EntitySystems; using Robust.Server.GameObjects; using Robust.Shared.GameObjects; using Robust.Shared.IoC; @@ -71,7 +71,7 @@ namespace Content.Server.GameObjects.Components.Chemistry } //the biggest reagent in the solution decides the appearance - var reagentId = solution.GetMajorReagentId(); + var reagentId = solution.Solution.GetPrimaryReagentId(); //If biggest reagent didn't changed - don't change anything at all if (_currentReagent != null && _currentReagent.ID == reagentId) diff --git a/Content.Server/GameObjects/Components/Command/CommunicationsConsoleComponent.cs b/Content.Server/GameObjects/Components/Command/CommunicationsConsoleComponent.cs index 2e3f6f6f48..858a10d3e3 100644 --- a/Content.Server/GameObjects/Components/Command/CommunicationsConsoleComponent.cs +++ b/Content.Server/GameObjects/Components/Command/CommunicationsConsoleComponent.cs @@ -9,6 +9,7 @@ using Robust.Server.Interfaces.GameObjects; using Robust.Server.Interfaces.Player; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Interfaces.Timing; using Robust.Shared.IoC; using Robust.Shared.ViewVariables; diff --git a/Content.Server/GameObjects/Components/ComputerComponent.cs b/Content.Server/GameObjects/Components/ComputerComponent.cs index c1f3df3890..f22a6fc094 100644 --- a/Content.Server/GameObjects/Components/ComputerComponent.cs +++ b/Content.Server/GameObjects/Components/ComputerComponent.cs @@ -1,10 +1,11 @@ -using Content.Server.GameObjects.Components.Power.ApcNetComponents; +using Content.Server.GameObjects.Components.Power.ApcNetComponents; using Content.Shared.GameObjects.Components; using JetBrains.Annotations; 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.Log; using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; @@ -29,8 +30,6 @@ namespace Content.Server.GameObjects.Components if (Owner.TryGetComponent(out PowerReceiverComponent powerReceiver)) { - powerReceiver.OnPowerStateChanged += PowerReceiverOnOnPowerStateChanged; - if (Owner.TryGetComponent(out AppearanceComponent appearance)) { appearance.SetData(ComputerVisuals.Powered, powerReceiver.Powered); @@ -45,17 +44,18 @@ namespace Content.Server.GameObjects.Components CreateComputerBoard(); } - public override void OnRemove() + public override void HandleMessage(ComponentMessage message, IComponent component) { - if (Owner.TryGetComponent(out PowerReceiverComponent powerReceiver)) + base.HandleMessage(message, component); + switch (message) { - powerReceiver.OnPowerStateChanged -= PowerReceiverOnOnPowerStateChanged; + case PowerChangedMessage powerChanged: + PowerReceiverOnOnPowerStateChanged(powerChanged); + break; } - - base.OnRemove(); } - private void PowerReceiverOnOnPowerStateChanged(object sender, PowerStateEventArgs e) + private void PowerReceiverOnOnPowerStateChanged(PowerChangedMessage e) { if (Owner.TryGetComponent(out AppearanceComponent appearance)) { diff --git a/Content.Server/GameObjects/Components/Conveyor/ConveyorComponent.cs b/Content.Server/GameObjects/Components/Conveyor/ConveyorComponent.cs index d6441ae935..af7e06a591 100644 --- a/Content.Server/GameObjects/Components/Conveyor/ConveyorComponent.cs +++ b/Content.Server/GameObjects/Components/Conveyor/ConveyorComponent.cs @@ -57,25 +57,18 @@ namespace Content.Server.GameObjects.Components.Conveyor } } - public override void OnAdd() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - base.OnAdd(); - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged += OnPowerChanged; + case PowerChangedMessage powerChanged: + OnPowerChanged(powerChanged); + break; } } - public override void OnRemove() - { - base.OnRemove(); - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged -= OnPowerChanged; - } - } - - private void OnPowerChanged(object? sender, PowerStateEventArgs e) + private void OnPowerChanged(PowerChangedMessage e) { UpdateAppearance(); } diff --git a/Content.Server/GameObjects/Components/Culinary/SliceableFoodComponent.cs b/Content.Server/GameObjects/Components/Culinary/SliceableFoodComponent.cs new file mode 100644 index 0000000000..24fafff61e --- /dev/null +++ b/Content.Server/GameObjects/Components/Culinary/SliceableFoodComponent.cs @@ -0,0 +1,92 @@ +using System.Threading.Tasks; +using Content.Shared.Chemistry; +using Content.Shared.Interfaces.GameObjects.Components; +using Content.Shared.GameObjects.EntitySystems; +using Content.Server.GameObjects.Components.Nutrition; +using Content.Server.GameObjects.Components.Chemistry; +using Content.Server.GameObjects.Components.GUI; +using Content.Server.GameObjects.Components.Items.Storage; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Shared.GameObjects.Systems; +using Robust.Shared.GameObjects; +using Robust.Shared.Containers; +using Robust.Shared.Serialization; +using Robust.Shared.Localization; +using Robust.Shared.ViewVariables; +using Robust.Shared.Utility; +using Robust.Shared.Audio; + +namespace Content.Server.GameObjects.Components.Culinary +{ + [RegisterComponent] + class SliceableFoodComponent : Component, IInteractUsing, IExamine + { + public override string Name => "SliceableFood"; + + int IInteractUsing.Priority => 1; // take priority over eating with utensils + + [ViewVariables(VVAccess.ReadWrite)] private string _slice; + private ushort _totalCount; + [ViewVariables(VVAccess.ReadWrite)] private string _sound; + + [ViewVariables(VVAccess.ReadWrite)] public ushort Count; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _slice, "slice", string.Empty); + serializer.DataField(ref _sound, "sound", "/Audio/Items/Culinary/chop.ogg"); + serializer.DataField(ref _totalCount, "count", 5); + } + + public override void Initialize() + { + base.Initialize(); + Count = _totalCount; + Owner.EnsureComponent(); + Owner.EnsureComponent(); + } + + async Task IInteractUsing.InteractUsing(InteractUsingEventArgs eventArgs) + { + if (string.IsNullOrEmpty(_slice)) + { + return false; + } + if (!Owner.TryGetComponent(out SolutionContainerComponent solution)) + { + return false; + } + if (!eventArgs.Using.TryGetComponent(out UtensilComponent utensil) || !utensil.HasType(UtensilType.Knife)) + { + return false; + } + + var itemToSpawn = Owner.EntityManager.SpawnEntity(_slice, Owner.Transform.Coordinates); + if (eventArgs.User.TryGetComponent(out HandsComponent handsComponent)) + { + if (ContainerHelpers.IsInContainer(Owner)) + { + handsComponent.PutInHandOrDrop(itemToSpawn.GetComponent()); + } + } + + EntitySystem.Get().PlayAtCoords(_sound, Owner.Transform.Coordinates, + AudioParams.Default.WithVolume(-2)); + + Count--; + if (Count < 1) + { + Owner.Delete(); + return true; + } + solution.TryRemoveReagent("chem.Nutriment", solution.CurrentVolume / ReagentUnit.New(Count + 1)); + return true; + } + + public void Examine(FormattedMessage message, bool inDetailsRange) + { + message.AddMarkup(Loc.GetString($"There are { Count } slices remaining.")); + } + } +} diff --git a/Content.Server/GameObjects/Components/Utensil/UtensilComponent.cs b/Content.Server/GameObjects/Components/Culinary/UtensilComponent.cs similarity index 76% rename from Content.Server/GameObjects/Components/Utensil/UtensilComponent.cs rename to Content.Server/GameObjects/Components/Culinary/UtensilComponent.cs index 870931026e..d6c8629c6b 100644 --- a/Content.Server/GameObjects/Components/Utensil/UtensilComponent.cs +++ b/Content.Server/GameObjects/Components/Culinary/UtensilComponent.cs @@ -1,13 +1,14 @@ -using System; +#nullable enable +using System; using System.Collections.Generic; using System.Threading.Tasks; using Content.Server.GameObjects.Components.Nutrition; -using Content.Shared.GameObjects.Components.Utensil; using Content.Shared.Interfaces.GameObjects.Components; using Content.Shared.Utility; 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; @@ -15,24 +16,25 @@ using Robust.Shared.Random; using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; -namespace Content.Server.GameObjects.Components.Utensil +namespace Content.Server.GameObjects.Components.Culinary { [RegisterComponent] - public class UtensilComponent : SharedUtensilComponent, IAfterInteract + public class UtensilComponent : Component, IAfterInteract { - [Dependency] private readonly IEntitySystemManager _entitySystem = default!; - [Dependency] private readonly IRobustRandom _random = default!; + public override string Name => "Utensil"; - protected UtensilType _types = UtensilType.None; + private UtensilType _types = UtensilType.None; [ViewVariables] - public override UtensilType Types + public UtensilType Types { get => _types; set { + if (_types.Equals(value)) + return; + _types = value; - Dirty(); } } @@ -47,7 +49,7 @@ namespace Content.Server.GameObjects.Components.Utensil /// The sound to be played if the utensil breaks. /// [ViewVariables] - private string _breakSound; + private string? _breakSound; public void AddType(UtensilType type) { @@ -61,7 +63,7 @@ namespace Content.Server.GameObjects.Components.Utensil public bool HasType(UtensilType type) { - return _types.HasFlag(type); + return (_types & type) != 0; } public void RemoveType(UtensilType type) @@ -71,9 +73,9 @@ namespace Content.Server.GameObjects.Components.Utensil internal void TryBreak(IEntity user) { - if (_random.Prob(_breakChance)) + if (_breakSound != null && IoCManager.Resolve().Prob(_breakChance)) { - _entitySystem.GetEntitySystem() + EntitySystem.Get() .PlayFromEntity(_breakSound, user, AudioParams.Default.WithVolume(-2f)); Owner.Delete(); } @@ -110,14 +112,9 @@ namespace Content.Server.GameObjects.Components.Utensil TryUseUtensil(eventArgs.User, eventArgs.Target); } - private void TryUseUtensil(IEntity user, IEntity target) + private void TryUseUtensil(IEntity user, IEntity? target) { - if (user == null || target == null) - { - return; - } - - if (!target.TryGetComponent(out FoodComponent food)) + if (target == null || !target.TryGetComponent(out FoodComponent? food)) { return; } @@ -130,4 +127,13 @@ namespace Content.Server.GameObjects.Components.Utensil food.TryUseFood(user, null, this); } } + + [Flags] + public enum UtensilType : byte + { + None = 0, + Fork = 1, + Spoon = 1 << 1, + Knife = 1 << 2 + } } diff --git a/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/GibBehavior.cs b/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/GibBehavior.cs new file mode 100644 index 0000000000..c388666c24 --- /dev/null +++ b/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/GibBehavior.cs @@ -0,0 +1,27 @@ +using Content.Server.GameObjects.EntitySystems; +using Content.Shared.GameObjects.Components.Body; +using JetBrains.Annotations; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Server.GameObjects.Components.Destructible.Thresholds.Behavior +{ + [UsedImplicitly] + public class GibBehavior : IThresholdBehavior + { + private bool _recursive = true; + + public void ExposeData(ObjectSerializer serializer) + { + serializer.DataField(ref _recursive, "recursive", true); + } + + public void Trigger(IEntity owner, DestructibleSystem system) + { + if (owner.TryGetComponent(out IBody body)) + { + body.Gib(_recursive); + } + } + } +} diff --git a/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/IThresholdBehavior.cs b/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/IThresholdBehavior.cs index d857d45bbd..d4a6e86e56 100644 --- a/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/IThresholdBehavior.cs +++ b/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/IThresholdBehavior.cs @@ -6,6 +6,14 @@ namespace Content.Server.GameObjects.Components.Destructible.Thresholds.Behavior { public interface IThresholdBehavior : IExposeData { + /// + /// Triggers this behavior. + /// + /// The entity that owns this behavior. + /// + /// An instance of to pull dependencies + /// and other systems from. + /// void Trigger(IEntity owner, DestructibleSystem system); } } diff --git a/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/SpillBehavior.cs b/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/SpillBehavior.cs new file mode 100644 index 0000000000..53ac16d632 --- /dev/null +++ b/Content.Server/GameObjects/Components/Destructible/Thresholds/Behavior/SpillBehavior.cs @@ -0,0 +1,24 @@ +#nullable enable +using Content.Server.GameObjects.Components.Chemistry; +using Content.Server.GameObjects.Components.Fluids; +using Content.Server.GameObjects.EntitySystems; +using JetBrains.Annotations; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Server.GameObjects.Components.Destructible.Thresholds.Behavior +{ + [UsedImplicitly] + public class SpillBehavior : IThresholdBehavior + { + public void ExposeData(ObjectSerializer serializer) { } + + public void Trigger(IEntity owner, DestructibleSystem system) + { + if (!owner.TryGetComponent(out SolutionContainerComponent? solutionContainer)) + return; + + solutionContainer.Solution.SpillAt(owner.Transform.Coordinates, "PuddleSmear", false); + } + } +} diff --git a/Content.Server/GameObjects/Components/Destructible/Thresholds/Threshold.cs b/Content.Server/GameObjects/Components/Destructible/Thresholds/Threshold.cs index 72bce9159e..e0e402f5df 100644 --- a/Content.Server/GameObjects/Components/Destructible/Thresholds/Threshold.cs +++ b/Content.Server/GameObjects/Components/Destructible/Thresholds/Threshold.cs @@ -11,10 +11,12 @@ namespace Content.Server.GameObjects.Components.Destructible.Thresholds { public class Threshold : IExposeData { + private List _behaviors = new(); + /// /// Whether or not this threshold has already been triggered. /// - [ViewVariables] public bool Triggered; + [ViewVariables] public bool Triggered { get; private set; } /// /// Whether or not this threshold only triggers once. @@ -22,18 +24,18 @@ namespace Content.Server.GameObjects.Components.Destructible.Thresholds /// and then damaged to reach this threshold once again. /// It will not repeatedly trigger as damage rises beyond that. /// - [ViewVariables] public bool TriggersOnce; + [ViewVariables] public bool TriggersOnce { get; set; } /// /// Behaviors to activate once this threshold is triggered. /// - [ViewVariables] public List Behaviors = new(); + [ViewVariables] public IReadOnlyList Behaviors => _behaviors; public void ExposeData(ObjectSerializer serializer) { - serializer.DataField(ref Triggered, "triggered", false); - serializer.DataField(ref TriggersOnce, "triggersOnce", false); - serializer.DataField(ref Behaviors, "behaviors", new List()); + serializer.DataField(this, x => x.Triggered, "triggered", false); + serializer.DataField(this, x => x.TriggersOnce, "triggersOnce", false); + serializer.DataField(ref _behaviors, "behaviors", new List()); } /// @@ -50,6 +52,10 @@ namespace Content.Server.GameObjects.Components.Destructible.Thresholds foreach (var behavior in Behaviors) { + // The owner has been deleted. We stop execution of behaviors here. + if (owner.Deleted) + return; + behavior.Trigger(owner, system); } } diff --git a/Content.Server/GameObjects/Components/Disposal/DisposalEntryComponent.cs b/Content.Server/GameObjects/Components/Disposal/DisposalEntryComponent.cs index b8fe213197..21a2409908 100644 --- a/Content.Server/GameObjects/Components/Disposal/DisposalEntryComponent.cs +++ b/Content.Server/GameObjects/Components/Disposal/DisposalEntryComponent.cs @@ -23,7 +23,7 @@ namespace Content.Server.GameObjects.Components.Disposal var holder = Owner.EntityManager.SpawnEntity(HolderPrototypeId, Owner.Transform.MapPosition); var holderComponent = holder.GetComponent(); - foreach (var entity in from.ContainedEntities) + foreach (var entity in from.ContainedEntities.ToArray()) { holderComponent.TryInsert(entity); } diff --git a/Content.Server/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs b/Content.Server/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs index 83069957b0..072c584b04 100644 --- a/Content.Server/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs +++ b/Content.Server/GameObjects/Components/Disposal/DisposalMailingUnitComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -10,13 +10,11 @@ using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.Components.Power.ApcNetComponents; using Content.Server.GameObjects.EntitySystems.DeviceNetwork; using Content.Server.GameObjects.EntitySystems.DoAfter; -using Content.Server.Interfaces; using Content.Server.Interfaces.GameObjects.Components.Items; using Content.Server.Utility; using Content.Shared.GameObjects.Components; using Content.Shared.GameObjects.Components.Body; using Content.Shared.GameObjects.Components.Disposal; -using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; using Content.Shared.GameObjects.Verbs; using Content.Shared.Interfaces; @@ -47,7 +45,7 @@ namespace Content.Server.GameObjects.Components.Disposal [ComponentReference(typeof(SharedDisposalMailingUnitComponent))] [ComponentReference(typeof(IActivate))] [ComponentReference(typeof(IInteractUsing))] - public class DisposalMailingUnitComponent : SharedDisposalMailingUnitComponent, IInteractHand, IActivate, IInteractUsing, IDragDropOn + public class DisposalMailingUnitComponent : SharedDisposalMailingUnitComponent, IInteractHand, IActivate, IInteractUsing { [Dependency] private readonly IGameTiming _gameTiming = default!; @@ -145,7 +143,7 @@ namespace Content.Server.GameObjects.Components.Disposal /// private (PressureState State, string Localized) _locState; - public bool CanInsert(IEntity entity) + public override bool CanInsert(IEntity entity) { if (!Anchored) { @@ -547,7 +545,7 @@ namespace Content.Server.GameObjects.Components.Disposal UpdateInterface(); } - private void PowerStateChanged(object? sender, PowerStateEventArgs args) + private void PowerStateChanged(PowerChangedMessage args) { if (!args.Powered) { @@ -614,32 +612,12 @@ namespace Content.Server.GameObjects.Components.Disposal Logger.WarningS("VitalComponentMissing", $"Disposal unit {Owner.Uid} is missing an anchorable component"); } - if (Owner.TryGetComponent(out IPhysicsComponent? physics)) - { - physics.AnchoredChanged += UpdateVisualState; - } - - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += PowerStateChanged; - } - UpdateTargetList(); UpdateVisualState(); } public override void OnRemove() { - if (Owner.TryGetComponent(out IPhysicsComponent? physics)) - { - physics.AnchoredChanged -= UpdateVisualState; - } - - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged -= PowerStateChanged; - } - if (_container != null) { foreach (var entity in _container.ContainedEntities.ToArray()) @@ -680,6 +658,14 @@ namespace Content.Server.GameObjects.Components.Disposal _lastExitAttempt = _gameTiming.CurTime; Remove(msg.Entity); break; + + case AnchoredChangedMessage: + UpdateVisualState(); + break; + + case PowerChangedMessage powerChanged: + PowerStateChanged(powerChanged); + break; } } @@ -775,12 +761,12 @@ namespace Content.Server.GameObjects.Components.Disposal return TryDrop(eventArgs.User, eventArgs.Using); } - bool IDragDropOn.CanDragDropOn(DragDropEventArgs eventArgs) + public override bool CanDragDropOn(DragDropEventArgs eventArgs) { return CanInsert(eventArgs.Dragged); } - bool IDragDropOn.DragDropOn(DragDropEventArgs eventArgs) + public override bool DragDropOn(DragDropEventArgs eventArgs) { _ = TryInsert(eventArgs.Dragged, eventArgs.User); return true; diff --git a/Content.Server/GameObjects/Components/Disposal/DisposalTubeComponent.cs b/Content.Server/GameObjects/Components/Disposal/DisposalTubeComponent.cs index 03342d9db9..853d4bab77 100644 --- a/Content.Server/GameObjects/Components/Disposal/DisposalTubeComponent.cs +++ b/Content.Server/GameObjects/Components/Disposal/DisposalTubeComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Linq; using Content.Shared.GameObjects.Components.Disposal; @@ -231,10 +231,6 @@ namespace Content.Server.GameObjects.Components.Disposal Contents = ContainerManagerComponent.Ensure(Name, Owner); Owner.EnsureComponent(); - - var physics = Owner.EnsureComponent(); - - physics.AnchoredChanged += AnchoredChanged; } protected override void Startup() @@ -254,9 +250,6 @@ namespace Content.Server.GameObjects.Components.Disposal { base.OnRemove(); - var physics = Owner.EnsureComponent(); - physics.AnchoredChanged -= AnchoredChanged; - Disconnect(); } @@ -275,6 +268,10 @@ namespace Content.Server.GameObjects.Components.Disposal _lastClang = _gameTiming.CurTime; EntitySystem.Get().PlayAtCoords(_clangSound, Owner.Transform.Coordinates); break; + + case AnchoredChangedMessage: + AnchoredChanged(); + break; } } diff --git a/Content.Server/GameObjects/Components/Disposal/DisposalUnitComponent.cs b/Content.Server/GameObjects/Components/Disposal/DisposalUnitComponent.cs index f366eebe37..d1612da8e5 100644 --- a/Content.Server/GameObjects/Components/Disposal/DisposalUnitComponent.cs +++ b/Content.Server/GameObjects/Components/Disposal/DisposalUnitComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -6,20 +6,17 @@ using System.Threading; using System.Threading.Tasks; using Content.Server.Atmos; using Content.Server.GameObjects.Components.GUI; -using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.Components.Power.ApcNetComponents; +using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.EntitySystems; using Content.Server.GameObjects.EntitySystems.DoAfter; using Content.Server.Interfaces; using Content.Server.Interfaces.GameObjects.Components.Items; using Content.Server.Utility; +using Content.Shared.GameObjects.Components.Disposal; using Content.Shared.Atmos; using Content.Shared.GameObjects.Components.Body; -using Content.Shared.GameObjects.Components.Damage; -using Content.Shared.GameObjects.Components.Disposal; -using Content.Shared.GameObjects.Components.Items; using Content.Shared.GameObjects.Components.Mobs.State; -using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; using Content.Shared.GameObjects.Verbs; using Content.Shared.Interfaces; @@ -51,7 +48,7 @@ namespace Content.Server.GameObjects.Components.Disposal [ComponentReference(typeof(SharedDisposalUnitComponent))] [ComponentReference(typeof(IActivate))] [ComponentReference(typeof(IInteractUsing))] - public class DisposalUnitComponent : SharedDisposalUnitComponent, IInteractHand, IActivate, IInteractUsing, IDragDropOn, IThrowCollide, IGasMixtureHolder + public class DisposalUnitComponent : SharedDisposalUnitComponent, IInteractHand, IActivate, IInteractUsing, IThrowCollide, IGasMixtureHolder { [Dependency] private readonly IGameTiming _gameTiming = default!; @@ -137,17 +134,16 @@ namespace Content.Server.GameObjects.Components.Disposal public GasMixture Air { get; set; } = default!; - public bool CanInsert(IEntity entity) + public override bool CanInsert(IEntity entity) { - if (!Anchored) - { + if (!base.CanInsert(entity)) return false; - } if (!entity.TryGetComponent(out IPhysicsComponent? physics) || !physics.CanCollide) { - if (!(entity.TryGetComponent(out IMobStateComponent? state) && state.IsDead())) { + if (entity.TryGetComponent(out IMobStateComponent? state) && state.IsDead()) + { return false; } } @@ -287,10 +283,6 @@ namespace Content.Server.GameObjects.Components.Disposal } var entryComponent = entry.GetComponent(); - foreach (var entity in _container.ContainedEntities.ToList()) - { - _container.Remove(entity); - } if (Owner.Transform.Coordinates.TryGetTileAtmosphere(out var tileAtmos) && tileAtmos.Air != null && @@ -504,7 +496,7 @@ namespace Content.Server.GameObjects.Components.Disposal UpdateInterface(); } - private void PowerStateChanged(object? sender, PowerStateEventArgs args) + private void PowerStateChanged(PowerChangedMessage args) { if (!args.Powered) { @@ -569,31 +561,11 @@ namespace Content.Server.GameObjects.Components.Disposal Logger.WarningS("VitalComponentMissing", $"Disposal unit {Owner.Uid} is missing an anchorable component"); } - if (Owner.TryGetComponent(out IPhysicsComponent? physics)) - { - physics.AnchoredChanged += UpdateVisualState; - } - - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += PowerStateChanged; - } - UpdateVisualState(); } public override void OnRemove() { - if (Owner.TryGetComponent(out IPhysicsComponent? physics)) - { - physics.AnchoredChanged -= UpdateVisualState; - } - - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged -= PowerStateChanged; - } - foreach (var entity in _container.ContainedEntities.ToArray()) { _container.ForceRemove(entity); @@ -626,6 +598,14 @@ namespace Content.Server.GameObjects.Components.Disposal _lastExitAttempt = _gameTiming.CurTime; Remove(msg.Entity); break; + + case AnchoredChangedMessage: + UpdateVisualState(); + break; + + case PowerChangedMessage powerChanged: + PowerStateChanged(powerChanged); + break; } } @@ -692,12 +672,14 @@ namespace Content.Server.GameObjects.Components.Disposal return TryDrop(eventArgs.User, eventArgs.Using); } - bool IDragDropOn.CanDragDropOn(DragDropEventArgs eventArgs) + public override bool CanDragDropOn(DragDropEventArgs eventArgs) { + // Base is redundant given this already calls the base CanInsert + // If that changes then update this return CanInsert(eventArgs.Dragged); } - bool IDragDropOn.DragDropOn(DragDropEventArgs eventArgs) + public override bool DragDropOn(DragDropEventArgs eventArgs) { _ = TryInsert(eventArgs.Dragged, eventArgs.User); return true; diff --git a/Content.Server/GameObjects/Components/Doors/AirlockComponent.cs b/Content.Server/GameObjects/Components/Doors/AirlockComponent.cs index 6f77b8bee5..e0750db8fb 100644 --- a/Content.Server/GameObjects/Components/Doors/AirlockComponent.cs +++ b/Content.Server/GameObjects/Components/Doors/AirlockComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Threading; using System.Threading.Tasks; @@ -15,6 +15,7 @@ using Robust.Server.Interfaces.GameObjects; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.Timers; using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Localization; using Robust.Shared.Maths; using Robust.Shared.ViewVariables; @@ -191,8 +192,6 @@ namespace Content.Server.GameObjects.Components.Doors if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) { - receiver.OnPowerStateChanged += PowerDeviceOnOnPowerStateChanged; - if (Owner.TryGetComponent(out AppearanceComponent? appearance)) { @@ -201,17 +200,18 @@ namespace Content.Server.GameObjects.Components.Doors } } - public override void OnRemove() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged -= PowerDeviceOnOnPowerStateChanged; + case PowerChangedMessage powerChanged: + PowerDeviceOnOnPowerStateChanged(powerChanged); + break; } - - base.OnRemove(); } - private void PowerDeviceOnOnPowerStateChanged(object? sender, PowerStateEventArgs e) + private void PowerDeviceOnOnPowerStateChanged(PowerChangedMessage e) { if (Owner.TryGetComponent(out AppearanceComponent? appearance)) { diff --git a/Content.Server/GameObjects/Components/Explosion/ClusterFlashComponent.cs b/Content.Server/GameObjects/Components/Explosion/ClusterFlashComponent.cs new file mode 100644 index 0000000000..bd2f90f054 --- /dev/null +++ b/Content.Server/GameObjects/Components/Explosion/ClusterFlashComponent.cs @@ -0,0 +1,181 @@ +#nullable enable +using Content.Shared.Interfaces.GameObjects.Components; +using Content.Server.GameObjects.Components.Explosion; +using Robust.Shared.GameObjects; +using System.Threading.Tasks; +using Robust.Server.GameObjects.Components.Container; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; +using System; +using System.Diagnostics.CodeAnalysis; +using Content.Server.GameObjects.Components.Trigger.TimerTrigger; +using Content.Server.Throw; +using Robust.Server.GameObjects; +using Content.Shared.GameObjects.Components.Explosion; +using Robust.Shared.GameObjects.Components.Timers; +using Robust.Shared.Interfaces.Random; +using Robust.Shared.IoC; +using Robust.Shared.Map; +using Robust.Shared.Maths; +using Robust.Shared.Random; +using Robust.Shared.ViewVariables; + +namespace Content.Server.GameObjects.Components.Explosives +{ + [RegisterComponent] + public sealed class ClusterFlashComponent : Component, IInteractUsing, IUse + { + public override string Name => "ClusterFlash"; + + private Container _grenadesContainer = default!; + + /// + /// What we fill our prototype with if we want to pre-spawn with grenades. + /// + [ViewVariables] + private string? _fillPrototype; + + /// + /// If we have a pre-fill how many more can we spawn. + /// + private int _unspawnedCount; + + /// + /// Maximum grenades in the container. + /// + [ViewVariables] + private int _maxGrenades; + + /// + /// How long until our grenades are shot out and armed. + /// + [ViewVariables(VVAccess.ReadWrite)] + private float _delay; + + /// + /// Max distance grenades can be thrown. + /// + [ViewVariables(VVAccess.ReadWrite)] + private float _throwDistance; + + /// + /// This is the end. + /// + private bool _countDown; + + async Task IInteractUsing.InteractUsing(InteractUsingEventArgs args) + { + if (_grenadesContainer.ContainedEntities.Count >= _maxGrenades || !args.Using.HasComponent()) + return false; + + _grenadesContainer.Insert(args.Using); + UpdateAppearance(); + return true; + } + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(ref _fillPrototype, "fillPrototype", null); + serializer.DataField(ref _maxGrenades, "maxGrenadesCount", 3); + serializer.DataField(ref _delay, "delay", 1.0f); + serializer.DataField(ref _throwDistance, "distance", 3.0f); + } + + public override void Initialize() + { + base.Initialize(); + + _grenadesContainer = ContainerManagerComponent.Ensure("cluster-flash", Owner); + + } + + protected override void Startup() + { + base.Startup(); + + if (_fillPrototype != null) + { + _unspawnedCount = Math.Max(0, _maxGrenades - _grenadesContainer.ContainedEntities.Count); + UpdateAppearance(); + } + } + + bool IUse.UseEntity(UseEntityEventArgs eventArgs) + { + if (_countDown || (_grenadesContainer.ContainedEntities.Count + _unspawnedCount) <= 0) + return false; + Owner.SpawnTimer((int) (_delay * 1000), () => + { + if (Owner.Deleted) + return; + _countDown = true; + var random = IoCManager.Resolve(); + var delay = 20; + var grenadesInserted = _grenadesContainer.ContainedEntities.Count + _unspawnedCount; + var thrownCount = 0; + var segmentAngle = (int) (360 / grenadesInserted); + while (TryGetGrenade(out var grenade)) + { + var angleMin = segmentAngle * thrownCount; + var angleMax = segmentAngle * (thrownCount + 1); + var angle = Angle.FromDegrees(random.Next(angleMin, angleMax)); + var distance = (float)random.NextFloat() * _throwDistance; + var target = new EntityCoordinates(Owner.Uid, angle.ToVec().Normalized * distance); + + grenade.Throw(0.5f, target, grenade.Transform.Coordinates); + + grenade.SpawnTimer(delay, () => + { + if (grenade.Deleted) + return; + + if (grenade.TryGetComponent(out OnUseTimerTriggerComponent? useTimer)) + { + useTimer.Trigger(eventArgs.User); + } + }); + + delay += random.Next(550, 900); + thrownCount++; + } + + Owner.Delete(); + }); + return true; + } + + private bool TryGetGrenade([NotNullWhen(true)] out IEntity? grenade) + { + grenade = null; + + if (_unspawnedCount > 0) + { + _unspawnedCount--; + grenade = Owner.EntityManager.SpawnEntity(_fillPrototype, Owner.Transform.Coordinates); + return true; + } + + if (_grenadesContainer.ContainedEntities.Count > 0) + { + grenade = _grenadesContainer.ContainedEntities[0]; + + // This shouldn't happen but you never know. + if (!_grenadesContainer.Remove(grenade)) + return false; + + return true; + } + + return false; + } + + private void UpdateAppearance() + { + if (!Owner.TryGetComponent(out AppearanceComponent? appearance)) return; + + appearance.SetData(ClusterFlashVisuals.GrenadesCounter, _grenadesContainer.ContainedEntities.Count + _unspawnedCount); + } + } +} diff --git a/Content.Server/GameObjects/Components/Explosion/ExplosiveComponent.cs b/Content.Server/GameObjects/Components/Explosion/ExplosiveComponent.cs index 69d0c14772..8b8ab5227a 100644 --- a/Content.Server/GameObjects/Components/Explosion/ExplosiveComponent.cs +++ b/Content.Server/GameObjects/Components/Explosion/ExplosiveComponent.cs @@ -1,4 +1,4 @@ -using Content.Server.Explosions; +using Content.Server.Explosions; using Content.Server.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems; using Robust.Shared.GameObjects; @@ -16,7 +16,7 @@ namespace Content.Server.GameObjects.Components.Explosion public int LightImpactRange = 0; public int FlashRange = 0; - private bool _beingExploded = false; + public bool Exploding { get; private set; } = false; public override void ExposeData(ObjectSerializer serializer) { @@ -30,14 +30,17 @@ namespace Content.Server.GameObjects.Components.Explosion public bool Explosion() { - //Prevent adjacent explosives from infinitely blowing each other up. - if (_beingExploded) return true; - _beingExploded = true; - - Owner.SpawnExplosion(DevastationRange, HeavyImpactRange, LightImpactRange, FlashRange); - - Owner.Delete(); - return true; + if (Exploding) + { + return false; + } + else + { + Exploding = true; + Owner.SpawnExplosion(DevastationRange, HeavyImpactRange, LightImpactRange, FlashRange); + Owner.Delete(); + return true; + } } bool ITimerTrigger.Trigger(TimerTriggerEventArgs eventArgs) diff --git a/Content.Server/GameObjects/Components/Explosion/FlashExplosiveComponent.cs b/Content.Server/GameObjects/Components/Explosion/FlashExplosiveComponent.cs index a6fa3dbcc1..47355f5942 100644 --- a/Content.Server/GameObjects/Components/Explosion/FlashExplosiveComponent.cs +++ b/Content.Server/GameObjects/Components/Explosion/FlashExplosiveComponent.cs @@ -19,7 +19,9 @@ namespace Content.Server.GameObjects.Components.Explosion public override string Name => "FlashExplosive"; private float _range; + private float _duration; + private string _sound; private bool _deleteOnFlash; diff --git a/Content.Server/GameObjects/Components/Fluids/PuddleComponent.cs b/Content.Server/GameObjects/Components/Fluids/PuddleComponent.cs index d3f3275c53..9221cd60a0 100644 --- a/Content.Server/GameObjects/Components/Fluids/PuddleComponent.cs +++ b/Content.Server/GameObjects/Components/Fluids/PuddleComponent.cs @@ -286,7 +286,7 @@ namespace Content.Server.GameObjects.Components.Fluids Color newColor; if (_recolor) { - newColor = _contents.SubstanceColor.WithAlpha(cappedScale); + newColor = _contents.Color.WithAlpha(cappedScale); } else { diff --git a/Content.Server/GameObjects/Components/Fluids/SprayComponent.cs b/Content.Server/GameObjects/Components/Fluids/SprayComponent.cs index 71f09c780e..8a45830637 100644 --- a/Content.Server/GameObjects/Components/Fluids/SprayComponent.cs +++ b/Content.Server/GameObjects/Components/Fluids/SprayComponent.cs @@ -161,7 +161,7 @@ namespace Content.Server.GameObjects.Components.Fluids if (vapor.TryGetComponent(out AppearanceComponent appearance)) // Vapor sprite should face down. { appearance.SetData(VaporVisuals.Rotation, -Angle.South + rotation); - appearance.SetData(VaporVisuals.Color, contents.SubstanceColor.WithAlpha(1f)); + appearance.SetData(VaporVisuals.Color, contents.Color.WithAlpha(1f)); appearance.SetData(VaporVisuals.State, true); } diff --git a/Content.Server/GameObjects/Components/GUI/HandsComponent.cs b/Content.Server/GameObjects/Components/GUI/HandsComponent.cs index 9d1aa7cef9..0182636f77 100644 --- a/Content.Server/GameObjects/Components/GUI/HandsComponent.cs +++ b/Content.Server/GameObjects/Components/GUI/HandsComponent.cs @@ -4,22 +4,31 @@ using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using System.Linq; using Content.Server.GameObjects.Components.Items.Storage; +using Content.Server.GameObjects.Components.Pulling; using Content.Server.GameObjects.EntitySystems.Click; +using Content.Server.Interfaces.GameObjects; using Content.Server.Interfaces.GameObjects.Components.Items; +using Content.Server.Utility; +using Content.Shared.Audio; using Content.Shared.GameObjects.Components.Body.Part; using Content.Shared.GameObjects.Components.Items; +using Content.Shared.GameObjects.Components.Pulling; using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; +using Content.Shared.Interfaces; using Content.Shared.Physics.Pull; using Robust.Server.GameObjects; using Robust.Server.GameObjects.Components.Container; using Robust.Server.GameObjects.EntitySystemMessages; +using Robust.Server.GameObjects.EntitySystems; using Robust.Shared.Containers; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; +using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Network; using Robust.Shared.IoC; +using Robust.Shared.Localization; using Robust.Shared.Log; using Robust.Shared.Maths; using Robust.Shared.Players; @@ -32,7 +41,7 @@ namespace Content.Server.GameObjects.Components.GUI [ComponentReference(typeof(IHandsComponent))] [ComponentReference(typeof(ISharedHandsComponent))] [ComponentReference(typeof(SharedHandsComponent))] - public class HandsComponent : SharedHandsComponent, IHandsComponent, IBodyPartAdded, IBodyPartRemoved + public class HandsComponent : SharedHandsComponent, IHandsComponent, IBodyPartAdded, IBodyPartRemoved, IDisarmedAct { [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!; @@ -718,6 +727,43 @@ namespace Content.Server.GameObjects.Components.GUI RemoveHand(args.Slot); } + + bool IDisarmedAct.Disarmed(DisarmedActEventArgs eventArgs) + { + if (BreakPulls()) + return false; + + var source = eventArgs.Source; + + EntitySystem.Get().PlayFromEntity("/Audio/Effects/thudswoosh.ogg", source, + AudioHelpers.WithVariation(0.025f)); + + if (ActiveHand != null && Drop(ActiveHand, false)) + { + source.PopupMessageOtherClients(Loc.GetString("{0} disarms {1}!", source.Name, eventArgs.Target.Name)); + source.PopupMessageCursor(Loc.GetString("You disarm {0}!", eventArgs.Target.Name)); + } + else + { + source.PopupMessageOtherClients(Loc.GetString("{0} shoves {1}!", source.Name, eventArgs.Target.Name)); + source.PopupMessageCursor(Loc.GetString("You shove {0}!", eventArgs.Target.Name)); + } + + return true; + } + + // We want this to be the last disarm act to run. + int IDisarmedAct.Priority => int.MaxValue; + + private bool BreakPulls() + { + // What is this API?? + if (!Owner.TryGetComponent(out SharedPullerComponent? puller) + || puller.Pulling == null || !puller.Pulling.TryGetComponent(out PullableComponent? pullable)) + return false; + + return pullable.TryStopPull(); + } } public class Hand : IDisposable diff --git a/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs b/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs index 2ef74a187e..3527e9fcfb 100644 --- a/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs +++ b/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs @@ -1,16 +1,23 @@ using System; using System.Collections.Generic; using System.Linq; +using Content.Server.Administration.Commands; using Content.Server.GameObjects.Components.Items.Clothing; using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.EntitySystems.Click; using Content.Server.Interfaces.GameObjects; using Content.Shared.GameObjects.Components.Inventory; +using Content.Shared.GameObjects.Components.Movement; using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; using Content.Shared.GameObjects.EntitySystems.EffectBlocker; +using Content.Shared.GameObjects.Verbs; using Content.Shared.Interfaces; +using Robust.Server.Console; using Robust.Server.GameObjects.Components.Container; +using Robust.Server.Interfaces.Console; +using Robust.Server.Interfaces.GameObjects; +using Robust.Server.Player; using Robust.Shared.Containers; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; @@ -32,8 +39,7 @@ namespace Content.Server.GameObjects.Components.GUI { [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!; - [ViewVariables] - private readonly Dictionary _slotContainers = new(); + [ViewVariables] private readonly Dictionary _slotContainers = new(); private KeyValuePair? _hoverEntity; @@ -100,9 +106,49 @@ namespace Content.Server.GameObjects.Components.GUI } } + public override float WalkSpeedModifier + { + get + { + var mod = 1f; + foreach (var slot in _slotContainers.Values) + { + if (slot.ContainedEntity != null) + { + foreach (var modifier in slot.ContainedEntity.GetAllComponents()) + { + mod *= modifier.WalkSpeedModifier; + } + } + } + + return mod; + } + } + + public override float SprintSpeedModifier + { + get + { + var mod = 1f; + foreach (var slot in _slotContainers.Values) + { + if (slot.ContainedEntity != null) + { + foreach (var modifier in slot.ContainedEntity.GetAllComponents()) + { + mod *= modifier.SprintSpeedModifier; + } + } + } + + return mod; + } + } + bool IEffectBlocker.CanSlip() { - if(Owner.TryGetComponent(out InventoryComponent inventoryComponent) && + if (Owner.TryGetComponent(out InventoryComponent inventoryComponent) && inventoryComponent.TryGetSlotItem(EquipmentSlotDefines.Slots.SHOES, out ItemComponent shoes) ) { @@ -160,7 +206,7 @@ namespace Content.Server.GameObjects.Components.GUI return GetSlotItem(slot); } - public IEnumerable LookupItems() where T: Component + public IEnumerable LookupItems() where T : Component { return _slotContainers.Values.SelectMany(x => x.ContainedEntities.Select(e => e.GetComponentOrNull())) .Where(x => x != null); @@ -180,6 +226,7 @@ namespace Content.Server.GameObjects.Components.GUI containedEntity = null; Dirty(); } + return containedEntity?.GetComponent(); } @@ -225,12 +272,16 @@ namespace Content.Server.GameObjects.Components.GUI Dirty(); + UpdateMovementSpeed(); + return true; } - public bool Equip(Slots slot, ItemComponent item, bool mobCheck = true) => Equip(slot, item, mobCheck, out var _); + public bool Equip(Slots slot, ItemComponent item, bool mobCheck = true) => + Equip(slot, item, mobCheck, out var _); - public bool Equip(Slots slot, IEntity entity, bool mobCheck = true) => Equip(slot, entity.GetComponent(), mobCheck); + public bool Equip(Slots slot, IEntity entity, bool mobCheck = true) => + Equip(slot, entity.GetComponent(), mobCheck); /// /// Checks whether an item can be put in the specified slot. @@ -273,9 +324,11 @@ namespace Content.Server.GameObjects.Components.GUI return pass && _slotContainers[slot].CanInsert(item.Owner); } - public bool CanEquip(Slots slot, ItemComponent item, bool mobCheck = true) => CanEquip(slot, item, mobCheck, out var _); + public bool CanEquip(Slots slot, ItemComponent item, bool mobCheck = true) => + CanEquip(slot, item, mobCheck, out var _); - public bool CanEquip(Slots slot, IEntity entity, bool mobCheck = true) => CanEquip(slot, entity.GetComponent(), mobCheck); + public bool CanEquip(Slots slot, IEntity entity, bool mobCheck = true) => + CanEquip(slot, entity.GetComponent(), mobCheck); /// /// Drops the item in a slot. @@ -307,9 +360,19 @@ namespace Content.Server.GameObjects.Components.GUI Dirty(); + UpdateMovementSpeed(); + return true; } + private void UpdateMovementSpeed() + { + if (Owner.TryGetComponent(out MovementSpeedModifierComponent mod)) + { + mod.RefreshMovementSpeedModifiers(); + } + } + public void ForceUnequip(Slots slot) { var inventorySlot = _slotContainers[slot]; @@ -445,7 +508,7 @@ namespace Content.Server.GameObjects.Components.GUI var activeHand = hands.GetActiveHand; if (activeHand != null && activeHand.Owner.TryGetComponent(out ItemComponent clothing)) { - hands.Drop(hands.ActiveHand, doDropInteraction:false); + hands.Drop(hands.ActiveHand, doDropInteraction: false); if (!Equip(msg.Inventoryslot, clothing, true, out var reason)) { hands.PutInHand(clothing); @@ -454,6 +517,7 @@ namespace Content.Server.GameObjects.Components.GUI Owner.PopupMessageCursor(reason); } } + break; } case ClientInventoryUpdate.Use: @@ -466,14 +530,15 @@ namespace Content.Server.GameObjects.Components.GUI { if (activeHand != null) { - await interactionSystem.Interaction(Owner, activeHand.Owner, itemContainedInSlot.Owner, - new EntityCoordinates()); + await interactionSystem.Interaction(Owner, activeHand.Owner, itemContainedInSlot.Owner, + new EntityCoordinates()); } else if (Unequip(msg.Inventoryslot)) { hands.PutInHand(itemContainedInSlot); } } + break; } case ClientInventoryUpdate.Hover: @@ -483,7 +548,9 @@ namespace Content.Server.GameObjects.Components.GUI if (activeHand != null && GetSlotItem(msg.Inventoryslot) == null) { var canEquip = CanEquip(msg.Inventoryslot, activeHand, true, out var reason); - _hoverEntity = new KeyValuePair(msg.Inventoryslot, (activeHand.Owner.Uid, canEquip)); + _hoverEntity = + new KeyValuePair(msg.Inventoryslot, + (activeHand.Owner.Uid, canEquip)); Dirty(); } @@ -511,7 +578,8 @@ namespace Content.Server.GameObjects.Components.GUI } /// - public override void HandleNetworkMessage(ComponentMessage message, INetChannel netChannel, ICommonSession session = null) + public override void HandleNetworkMessage(ComponentMessage message, INetChannel netChannel, + ICommonSession session = null) { base.HandleNetworkMessage(message, netChannel, session); @@ -590,5 +658,45 @@ namespace Content.Server.GameObjects.Components.GUI return false; } + + [Verb] + private sealed class SetOutfitVerb : Verb + { + public override bool RequireInteractionRange => false; + public override bool BlockedByContainers => false; + + protected override void GetData(IEntity user, InventoryComponent component, VerbData data) + { + data.Visibility = VerbVisibility.Invisible; + if (!CanCommand(user)) + return; + + data.Visibility = VerbVisibility.Visible; + data.Text = Loc.GetString("Set Outfit"); + data.CategoryData = VerbCategories.Debug; + } + + protected override void Activate(IEntity user, InventoryComponent component) + { + if (!CanCommand(user)) + return; + + var target = component.Owner; + + var entityId = target.Uid.ToString(); + + var command = new SetOutfitCommand(); + var shell = IoCManager.Resolve(); + var args = new string[] {entityId}; + command.Execute(shell, user.PlayerSession(), args); + } + + private static bool CanCommand(IEntity user) + { + var groupController = IoCManager.Resolve(); + return user.TryGetComponent(out var player) && + groupController.CanCommand(player.playerSession, "setoutfit"); + } + } } } diff --git a/Content.Server/GameObjects/Components/Interactable/HandheldLightComponent.cs b/Content.Server/GameObjects/Components/Interactable/HandheldLightComponent.cs index 430d0e785d..3c080701cb 100644 --- a/Content.Server/GameObjects/Components/Interactable/HandheldLightComponent.cs +++ b/Content.Server/GameObjects/Components/Interactable/HandheldLightComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System.Threading.Tasks; using Content.Server.GameObjects.Components.Atmos; using Content.Server.GameObjects.Components.GUI; @@ -38,7 +38,7 @@ namespace Content.Server.GameObjects.Components.Interactable [RegisterComponent] internal sealed class HandheldLightComponent : SharedHandheldLightComponent, IUse, IExamine, IInteractUsing { - [ViewVariables(VVAccess.ReadWrite)] public float Wattage { get; set; } = 10f; + [ViewVariables(VVAccess.ReadWrite)] public float Wattage { get; set; } [ViewVariables] private PowerCellSlotComponent _cellSlot = default!; private PowerCellComponent? Cell => _cellSlot.Cell; @@ -64,7 +64,7 @@ namespace Content.Server.GameObjects.Components.Interactable public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - serializer.DataField(this, x => x.Wattage, "wattage", 10f); + serializer.DataField(this, x => x.Wattage, "wattage", 3f); serializer.DataField(ref TurnOnSound, "turnOnSound", "/Audio/Items/flashlight_toggle.ogg"); serializer.DataField(ref TurnOnFailSound, "turnOnFailSound", "/Audio/Machines/button.ogg"); serializer.DataField(ref TurnOffSound, "turnOffSound", "/Audio/Items/flashlight_toggle.ogg"); @@ -80,6 +80,12 @@ namespace Content.Server.GameObjects.Components.Interactable Dirty(); } + public override void OnRemove() + { + base.OnRemove(); + Owner.EntityManager.EventBus.QueueEvent(EventSource.Local, new DeactivateHandheldLightMessage(this)); + } + async Task IInteractUsing.InteractUsing(InteractUsingEventArgs eventArgs) { if (!ActionBlockerSystem.CanInteract(eventArgs.User)) return false; @@ -125,6 +131,7 @@ namespace Content.Server.GameObjects.Components.Interactable SetState(false); Activated = false; UpdateLightAction(); + Owner.EntityManager.EventBus.QueueEvent(EventSource.Local, new DeactivateHandheldLightMessage(this)); if (makeNoise) { @@ -163,6 +170,7 @@ namespace Content.Server.GameObjects.Components.Interactable Activated = true; UpdateLightAction(); SetState(true); + Owner.EntityManager.EventBus.QueueEvent(EventSource.Local, new ActivateHandheldLightMessage(this)); if (TurnOnSound != null) EntitySystem.Get().PlayFromEntity(TurnOnSound, Owner); return true; @@ -283,4 +291,24 @@ namespace Content.Server.GameObjects.Components.Interactable return lightComponent.ToggleStatus(args.Performer); } } + + internal sealed class ActivateHandheldLightMessage : EntitySystemMessage + { + public HandheldLightComponent Component { get; } + + public ActivateHandheldLightMessage(HandheldLightComponent component) + { + Component = component; + } + } + + internal sealed class DeactivateHandheldLightMessage : EntitySystemMessage + { + public HandheldLightComponent Component { get; } + + public DeactivateHandheldLightMessage(HandheldLightComponent component) + { + Component = component; + } + } } diff --git a/Content.Server/GameObjects/Components/Interactable/MatchboxComponent.cs b/Content.Server/GameObjects/Components/Interactable/MatchboxComponent.cs new file mode 100644 index 0000000000..d7a883fbb3 --- /dev/null +++ b/Content.Server/GameObjects/Components/Interactable/MatchboxComponent.cs @@ -0,0 +1,29 @@ +using System.Threading.Tasks; +using Content.Shared.GameObjects.Components; +using Content.Shared.Interfaces.GameObjects.Components; +using Robust.Shared.GameObjects; + +namespace Content.Server.GameObjects.Components.Interactable +{ + // TODO make changes in icons when different threshold reached + // e.g. different icons for 10% 50% 100% + [RegisterComponent] + public class MatchboxComponent : Component, IInteractUsing + { + public override string Name => "Matchbox"; + + public int Priority => 1; + + public async Task InteractUsing(InteractUsingEventArgs eventArgs) + { + if (eventArgs.Using.TryGetComponent(out var matchstick) + && matchstick.CurrentState == SharedBurningStates.Unlit) + { + matchstick.Ignite(eventArgs.User); + return true; + } + + return false; + } + } +} \ No newline at end of file diff --git a/Content.Server/GameObjects/Components/Interactable/MatchstickComponent.cs b/Content.Server/GameObjects/Components/Interactable/MatchstickComponent.cs new file mode 100644 index 0000000000..3bf112b9ff --- /dev/null +++ b/Content.Server/GameObjects/Components/Interactable/MatchstickComponent.cs @@ -0,0 +1,105 @@ +#nullable enable +using System.Threading.Tasks; +using Content.Shared.Audio; +using Content.Shared.GameObjects.Components; +using Content.Shared.Interfaces.GameObjects.Components; +using Robust.Server.GameObjects; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.ComponentDependencies; +using Robust.Shared.GameObjects.Components.Timers; +using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; + +namespace Content.Server.GameObjects.Components.Interactable +{ + [RegisterComponent] + [ComponentReference(typeof(IHotItem))] + public class MatchstickComponent : Component, IHotItem, IInteractUsing + { + public override string Name => "Matchstick"; + + private SharedBurningStates _currentState = SharedBurningStates.Unlit; + + /// + /// How long will matchstick last in seconds. + /// + [ViewVariables(VVAccess.ReadOnly)] private int _duration; + + /// + /// Sound played when you ignite the matchstick. + /// + private string? _igniteSound; + + /// + /// Point light component. Gives matches a glow in dark effect. + /// + [ComponentDependency] + private readonly PointLightComponent? _pointLightComponent = default!; + + /// + /// Current state to matchstick. Can be Unlit, Lit or Burnt. + /// + [ViewVariables] + public SharedBurningStates CurrentState + { + get => _currentState; + private set + { + _currentState = value; + + if (_pointLightComponent != null) + { + _pointLightComponent.Enabled = _currentState == SharedBurningStates.Lit; + } + + if (Owner.TryGetComponent(out AppearanceComponent? appearance)) + { + appearance.SetData(SmokingVisuals.Smoking, _currentState); + } + } + } + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(ref _duration, "duration", 10); + serializer.DataField(ref _igniteSound, "igniteSound", null); + } + + bool IHotItem.IsCurrentlyHot() + { + return CurrentState == SharedBurningStates.Lit; + } + + public void Ignite(IEntity user) + { + // Play Sound + if (!string.IsNullOrEmpty(_igniteSound)) + { + EntitySystem.Get().PlayFromEntity(_igniteSound, Owner, + AudioHelpers.WithVariation(0.125f).WithVolume(-0.125f)); + } + + // Change state + CurrentState = SharedBurningStates.Lit; + Owner.SpawnTimer(_duration * 1000, () => CurrentState = SharedBurningStates.Burnt); + } + + public async Task InteractUsing(InteractUsingEventArgs eventArgs) + { + if (eventArgs.Target.TryGetComponent(out var hotItem) + && hotItem.IsCurrentlyHot() + && CurrentState == SharedBurningStates.Unlit) + { + Ignite(eventArgs.User); + return true; + } + + return false; + } + } +} \ No newline at end of file diff --git a/Content.Server/GameObjects/Components/Interactable/ToolComponent.cs b/Content.Server/GameObjects/Components/Interactable/ToolComponent.cs index 19e16ae678..49047e4897 100644 --- a/Content.Server/GameObjects/Components/Interactable/ToolComponent.cs +++ b/Content.Server/GameObjects/Components/Interactable/ToolComponent.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Threading.Tasks; using Content.Server.GameObjects.EntitySystems.DoAfter; diff --git a/Content.Server/GameObjects/Components/Interactable/WelderComponent.cs b/Content.Server/GameObjects/Components/Interactable/WelderComponent.cs index 175c174aec..21776ab4e8 100644 --- a/Content.Server/GameObjects/Components/Interactable/WelderComponent.cs +++ b/Content.Server/GameObjects/Components/Interactable/WelderComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Threading.Tasks; using Content.Server.Atmos; @@ -28,7 +28,8 @@ namespace Content.Server.GameObjects.Components.Interactable [RegisterComponent] [ComponentReference(typeof(ToolComponent))] [ComponentReference(typeof(IToolComponent))] - public class WelderComponent : ToolComponent, IExamine, IUse, ISuicideAct, ISolutionChange + [ComponentReference(typeof(IHotItem))] + public class WelderComponent : ToolComponent, IExamine, IUse, ISuicideAct, ISolutionChange, IHotItem { [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!; @@ -73,6 +74,11 @@ namespace Content.Server.GameObjects.Components.Interactable } } + bool IHotItem.IsCurrentlyHot() + { + return WelderLit; + } + public override void Initialize() { base.Initialize(); @@ -285,5 +291,7 @@ namespace Content.Server.GameObjects.Components.Interactable { Dirty(); } + + } } diff --git a/Content.Server/GameObjects/Components/Items/Storage/EntityStorageComponent.cs b/Content.Server/GameObjects/Components/Items/Storage/EntityStorageComponent.cs index 632bfd4402..7d1bc4a495 100644 --- a/Content.Server/GameObjects/Components/Items/Storage/EntityStorageComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Storage/EntityStorageComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Linq; using System.Threading; @@ -470,7 +470,8 @@ namespace Content.Server.GameObjects.Components.Items.Storage return; } - foreach (var entity in Contents.ContainedEntities) + var containedEntities = Contents.ContainedEntities.ToList(); + foreach (var entity in containedEntities) { var exActs = entity.GetAllComponents().ToArray(); foreach (var exAct in exActs) diff --git a/Content.Server/GameObjects/Components/Items/Storage/SecretStashComponent.cs b/Content.Server/GameObjects/Components/Items/Storage/SecretStashComponent.cs new file mode 100644 index 0000000000..b2255dee11 --- /dev/null +++ b/Content.Server/GameObjects/Components/Items/Storage/SecretStashComponent.cs @@ -0,0 +1,119 @@ +#nullable enable +using Content.Server.GameObjects.Components.GUI; +using Content.Server.Interfaces.GameObjects.Components.Items; +using Content.Shared.GameObjects.EntitySystems; +using Content.Shared.Interfaces; +using Robust.Server.GameObjects.Components.Container; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Localization; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; + +namespace Content.Server.GameObjects.Components.Items.Storage +{ + /// + /// Logic for secret single slot stash, like plant pot or toilet cistern + /// + [RegisterComponent] + public class SecretStashComponent : Component, IDestroyAct + { + public override string Name => "SecretStash"; + + [ViewVariables] private int _maxItemSize; + [ViewVariables] private string _secretPartName = ""; + + [ViewVariables] private ContainerSlot _itemContainer = default!; + + public override void Initialize() + { + base.Initialize(); + _itemContainer = ContainerManagerComponent.Ensure("stash", Owner, out _); + } + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _maxItemSize, "maxItemSize", (int) ReferenceSizes.Pocket); + serializer.DataField(ref _secretPartName, "secretPartName", Loc.GetString("{0:theName}")); + } + + /// + /// Tries to hide item inside secret stash from hands of user + /// + /// + /// + /// True if item was hidden inside stash + public bool TryHideItem(IEntity user, IEntity itemToHide) + { + if (_itemContainer.ContainedEntity != null) + { + Owner.PopupMessage(user, Loc.GetString("There's already something in here?!")); + return false; + } + + if (!itemToHide.TryGetComponent(out ItemComponent? item)) + return false; + + if (item.Size > _maxItemSize) + { + Owner.PopupMessage(user, + Loc.GetString("{0:TheName} is too big to fit in {1}!", itemToHide, _secretPartName)); + return false; + } + + if (!user.TryGetComponent(out IHandsComponent? hands)) + return false; + + if (!hands.Drop(itemToHide, _itemContainer)) + return false; + + Owner.PopupMessage(user, Loc.GetString("You hide {0:theName} in {1}.", itemToHide, _secretPartName)); + return true; + } + + /// + /// Try get item and place it in users hand + /// If user can't take it by hands, will drop item from container + /// + /// + /// True if user recieved item + public bool TryGetItem(IEntity user) + { + if (_itemContainer.ContainedEntity == null) + return false; + + Owner.PopupMessage(user, Loc.GetString("There was something inside {0}!", _secretPartName)); + + if (user.TryGetComponent(out HandsComponent? hands)) + { + if (!_itemContainer.ContainedEntity.TryGetComponent(out ItemComponent? item)) + return false; + hands.PutInHandOrDrop(item); + } + else if (_itemContainer.Remove(_itemContainer.ContainedEntity)) + { + _itemContainer.ContainedEntity.Transform.Coordinates = Owner.Transform.Coordinates; + } + + return true; + } + + /// + /// Is there something inside secret stash item container? + /// + /// + public bool HasItemInside() + { + return _itemContainer.ContainedEntity != null; + } + + public void OnDestroy(DestructionEventArgs eventArgs) + { + // drop item inside + if (_itemContainer.ContainedEntity != null) + { + _itemContainer.ContainedEntity.Transform.Coordinates = Owner.Transform.Coordinates; + } + } + } +} diff --git a/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs b/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs index 3a6d29b0a4..fda487377c 100644 --- a/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs @@ -1,10 +1,11 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Content.Server.GameObjects.Components.GUI; using Content.Server.Interfaces.GameObjects.Components.Items; +using Content.Shared.Audio; using Content.Shared.GameObjects.Components.Storage; using Content.Shared.GameObjects.EntitySystems; using Content.Shared.Interfaces; @@ -13,14 +14,15 @@ using Content.Shared.Utility; using Robust.Server.GameObjects; using Robust.Server.GameObjects.Components.Container; using Robust.Server.GameObjects.EntitySystemMessages; +using Robust.Server.GameObjects.EntitySystems; using Robust.Server.Interfaces.Player; using Robust.Server.Player; +using Robust.Shared.Audio; using Robust.Shared.Enums; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.Interfaces.Map; using Robust.Shared.Interfaces.Network; -using Robust.Shared.IoC; using Robust.Shared.Log; using Robust.Shared.Players; using Robust.Shared.Serialization; @@ -39,6 +41,7 @@ namespace Content.Server.GameObjects.Components.Items.Storage private const string LoggerName = "Storage"; private Container? _storage; + private readonly Dictionary _sizeCache = new(); private bool _occludesLight; private bool _storageInitialCalculated; @@ -46,6 +49,8 @@ namespace Content.Server.GameObjects.Components.Items.Storage private int _storageCapacityMax; public readonly HashSet SubscribedSessions = new(); + public string? StorageSoundCollection { get; set; } + [ViewVariables] public override IReadOnlyList? StoredEntities => _storage?.ContainedEntities; @@ -135,11 +140,17 @@ namespace Content.Server.GameObjects.Components.Items.Storage return; } + PlaySoundCollection(StorageSoundCollection); EnsureInitialCalculated(); Logger.DebugS(LoggerName, $"Storage (UID {Owner.Uid}) had entity (UID {message.Entity.Uid}) inserted into it."); - _storageUsed += message.Entity.GetComponent().Size; + var size = 0; + if (message.Entity.TryGetComponent(out StorableComponent? storable)) + size = storable.Size; + + _storageUsed += size; + _sizeCache[message.Entity] = size; UpdateClientInventories(); } @@ -155,15 +166,15 @@ namespace Content.Server.GameObjects.Components.Items.Storage Logger.DebugS(LoggerName, $"Storage (UID {Owner}) had entity (UID {message.Entity}) removed from it."); - if (!message.Entity.TryGetComponent(out StorableComponent? storable)) + if (!_sizeCache.TryGetValue(message.Entity, out var size)) { - Logger.WarningS(LoggerName, $"Removed entity {message.Entity} without a StorableComponent from storage {Owner} at {Owner.Transform.MapPosition}"); + Logger.WarningS(LoggerName, $"Removed entity {message.Entity} without a cached size from storage {Owner} at {Owner.Transform.MapPosition}"); RecalculateStorageUsed(); return; } - _storageUsed -= storable.Size; + _storageUsed -= size; UpdateClientInventories(); } @@ -207,6 +218,7 @@ namespace Content.Server.GameObjects.Components.Items.Storage /// The entity to open the UI for public void OpenStorageUI(IEntity entity) { + PlaySoundCollection(StorageSoundCollection); EnsureInitialCalculated(); var userSession = entity.GetComponent().playerSession; @@ -331,6 +343,7 @@ namespace Content.Server.GameObjects.Components.Items.Storage serializer.DataField(ref _storageCapacityMax, "capacity", 10000); serializer.DataField(ref _occludesLight, "occludesLight", true); + serializer.DataField(this, x => x.StorageSoundCollection, "storageSoundCollection", string.Empty); //serializer.DataField(ref StorageUsed, "used", 0); } @@ -494,5 +507,17 @@ namespace Content.Server.GameObjects.Components.Items.Storage } } } + + protected void PlaySoundCollection(string? name) + { + if (string.IsNullOrEmpty(name)) + { + return; + } + + var file = AudioHelpers.GetRandomFileFromSoundCollection(name); + EntitySystem.Get() + .PlayFromEntity(file, Owner, AudioParams.Default); + } } } diff --git a/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs b/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs index 2baf98a183..60aca373e1 100644 --- a/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs +++ b/Content.Server/GameObjects/Components/Kitchen/MicrowaveComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -7,7 +7,6 @@ using Content.Server.GameObjects.Components.Chemistry; using Content.Server.GameObjects.Components.GUI; using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.Components.Power.ApcNetComponents; -using Content.Server.GameObjects.EntitySystems; using Content.Server.Interfaces.Chat; using Content.Server.Interfaces.GameObjects; using Content.Server.Utility; @@ -15,6 +14,7 @@ using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Body; using Content.Shared.GameObjects.Components.Body.Part; using Content.Shared.GameObjects.Components.Power; +using Content.Shared.GameObjects.EntitySystems; using Content.Shared.Interfaces; using Content.Shared.Interfaces.GameObjects.Components; using Content.Shared.Kitchen; @@ -32,7 +32,6 @@ using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Serialization; -using Robust.Shared.Timers; using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Kitchen @@ -441,7 +440,7 @@ namespace Content.Server.GameObjects.Components.Kitchen foreach (var reagent in recipe.IngredientsReagents) { - if (!solution.ContainsReagent(reagent.Key, out var amount)) + if (!solution.Solution.ContainsReagent(reagent.Key, out var amount)) { return MicrowaveSuccessState.RecipeFail; } diff --git a/Content.Server/GameObjects/Components/Kitchen/ReagentGrinderComponent.cs b/Content.Server/GameObjects/Components/Kitchen/ReagentGrinderComponent.cs index c0b9cd6fc1..0205237afe 100644 --- a/Content.Server/GameObjects/Components/Kitchen/ReagentGrinderComponent.cs +++ b/Content.Server/GameObjects/Components/Kitchen/ReagentGrinderComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Linq; using System.Threading.Tasks; @@ -95,14 +95,20 @@ namespace Content.Server.GameObjects.Components.Kitchen UserInterface.OnReceiveMessage += UserInterfaceOnReceiveMessage; } - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += OnPowerStateChanged; - } - _audioSystem = EntitySystem.Get(); } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PowerChangedMessage powerChanged: + OnPowerStateChanged(powerChanged); + break; + } + } + public override void OnRemove() { base.OnRemove(); @@ -110,11 +116,6 @@ namespace Content.Server.GameObjects.Components.Kitchen { UserInterface.OnReceiveMessage -= UserInterfaceOnReceiveMessage; } - - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged -= OnPowerStateChanged; - } } private void UserInterfaceOnReceiveMessage(ServerBoundUserInterfaceMessage message) @@ -166,7 +167,7 @@ namespace Content.Server.GameObjects.Components.Kitchen } } - private void OnPowerStateChanged(object? sender, PowerStateEventArgs e) + private void OnPowerStateChanged(PowerChangedMessage e) { _uiDirty = true; } diff --git a/Content.Server/GameObjects/Components/MagbootsComponent.cs b/Content.Server/GameObjects/Components/MagbootsComponent.cs new file mode 100644 index 0000000000..49e6eb25f1 --- /dev/null +++ b/Content.Server/GameObjects/Components/MagbootsComponent.cs @@ -0,0 +1,157 @@ +#nullable enable +using Content.Server.GameObjects.Components.Atmos; +using Content.Server.GameObjects.Components.GUI; +using Content.Server.GameObjects.Components.Items.Storage; +using Content.Server.GameObjects.Components.Mobs; +using Content.Shared.Actions; +using Content.Shared.Alert; +using Content.Shared.GameObjects.Components; +using Content.Shared.GameObjects.Components.Mobs; +using Content.Shared.GameObjects.EntitySystems.ActionBlocker; +using Content.Shared.GameObjects.Verbs; +using Content.Shared.Interfaces.GameObjects.Components; +using JetBrains.Annotations; +using Robust.Server.GameObjects; +using Robust.Shared.Containers; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.ComponentDependencies; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Localization; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; +using static Content.Shared.GameObjects.Components.Inventory.EquipmentSlotDefines; + +namespace Content.Server.GameObjects.Components +{ + [RegisterComponent] + [ComponentReference(typeof(IActivate))] + public sealed class MagbootsComponent : SharedMagbootsComponent, IUnequipped, IEquipped, IUse, IActivate + { + [ComponentDependency] private ItemComponent? _item = null; + [ComponentDependency] private ItemActionsComponent? _itemActions = null; + [ComponentDependency] private SpriteComponent? _sprite = null; + private bool _on; + + [ViewVariables] + public override bool On + { + get => _on; + set + { + _on = value; + + UpdateContainer(); + _itemActions?.Toggle(ItemActionType.ToggleMagboots, On); + if (_item != null) + _item.EquippedPrefix = On ? "on" : null; + _sprite?.LayerSetState(0, On ? "icon-on" : "icon"); + OnChanged(); + Dirty(); + } + } + + public void Toggle(IEntity user) + { + On = !On; + } + + void IUnequipped.Unequipped(UnequippedEventArgs eventArgs) + { + if (On && eventArgs.Slot == Slots.SHOES) + { + if (eventArgs.User.TryGetComponent(out MovedByPressureComponent? movedByPressure)) + { + movedByPressure.Enabled = true; + } + + if (eventArgs.User.TryGetComponent(out ServerAlertsComponent? alerts)) + { + alerts.ClearAlert(AlertType.Magboots); + } + } + } + + void IEquipped.Equipped(EquippedEventArgs eventArgs) + { + UpdateContainer(); + } + + private void UpdateContainer() + { + if (!Owner.TryGetContainer(out var container)) + return; + + if (container.Owner.TryGetComponent(out InventoryComponent? inventoryComponent) + && inventoryComponent.GetSlotItem(Slots.SHOES)?.Owner == Owner) + { + if (container.Owner.TryGetComponent(out MovedByPressureComponent? movedByPressure)) + { + movedByPressure.Enabled = false; + } + + if (container.Owner.TryGetComponent(out ServerAlertsComponent? alerts)) + { + if (On) + { + alerts.ShowAlert(AlertType.Magboots); + } + else + { + alerts.ClearAlert(AlertType.Magboots); + } + } + } + } + + bool IUse.UseEntity(UseEntityEventArgs eventArgs) + { + Toggle(eventArgs.User); + return true; + } + + void IActivate.Activate(ActivateEventArgs eventArgs) + { + Toggle(eventArgs.User); + } + + public override ComponentState GetComponentState() + { + return new MagbootsComponentState(On); + } + + [UsedImplicitly] + public sealed class ToggleMagbootsVerb : Verb + { + protected override void GetData(IEntity user, MagbootsComponent component, VerbData data) + { + if (!ActionBlockerSystem.CanInteract(user)) + { + data.Visibility = VerbVisibility.Invisible; + return; + } + + data.Text = Loc.GetString("Toggle Magboots"); + } + + protected override void Activate(IEntity user, MagbootsComponent component) + { + component.Toggle(user); + } + } + } + + [UsedImplicitly] + public sealed class ToggleMagbootsAction : IToggleItemAction + { + public void ExposeData(ObjectSerializer serializer) { } + + public bool DoToggleAction(ToggleItemActionEventArgs args) + { + if (!args.Item.TryGetComponent(out var magboots)) + return false; + + magboots.Toggle(args.Performer); + return true; + } + } +} diff --git a/Content.Server/GameObjects/Components/Medical/CloningPodComponent.cs b/Content.Server/GameObjects/Components/Medical/CloningPodComponent.cs index eea9446d34..dc56625e60 100644 --- a/Content.Server/GameObjects/Components/Medical/CloningPodComponent.cs +++ b/Content.Server/GameObjects/Components/Medical/CloningPodComponent.cs @@ -1,5 +1,6 @@ #nullable enable using System; +using Content.Server.Eui; using Content.Server.GameObjects.Components.Mobs; using Content.Server.GameObjects.Components.Observer; using Content.Server.GameObjects.Components.Power.ApcNetComponents; @@ -35,6 +36,7 @@ namespace Content.Server.GameObjects.Components.Medical { [Dependency] private readonly IServerPreferencesManager _prefsManager = null!; [Dependency] private readonly IPlayerManager _playerManager = null!; + [Dependency] private readonly EuiManager _euiManager = null!; [ViewVariables] private bool Powered => !Owner.TryGetComponent(out PowerReceiverComponent? receiver) || receiver.Powered; @@ -179,9 +181,11 @@ namespace Content.Server.GameObjects.Components.Medical _bodyContainer.Insert(mob); _capturedMind = mind; - Owner.EntityManager.EventBus.RaiseEvent(EventSource.Local, - new CloningStartedMessage(_capturedMind)); _status = CloningPodStatus.NoMind; + + var acceptMessage = new AcceptCloningEui(mob); + _euiManager.OpenEui(acceptMessage, client); + UpdateAppearance(); break; @@ -201,17 +205,6 @@ namespace Content.Server.GameObjects.Components.Medical } } - public class CloningStartedMessage : EntitySystemMessage - { - public CloningStartedMessage(Mind capturedMind) - { - CapturedMind = capturedMind; - } - - public Mind CapturedMind { get; } - } - - private HumanoidCharacterProfile GetPlayerProfileAsync(NetUserId userId) { return (HumanoidCharacterProfile) _prefsManager.GetPreferences(userId).SelectedCharacter; diff --git a/Content.Server/GameObjects/Components/Medical/MedicalScannerComponent.cs b/Content.Server/GameObjects/Components/Medical/MedicalScannerComponent.cs index 8013453635..45fe55e65f 100644 --- a/Content.Server/GameObjects/Components/Medical/MedicalScannerComponent.cs +++ b/Content.Server/GameObjects/Components/Medical/MedicalScannerComponent.cs @@ -35,10 +35,9 @@ namespace Content.Server.GameObjects.Components.Medical [RegisterComponent] [ComponentReference(typeof(IActivate))] [ComponentReference(typeof(SharedMedicalScannerComponent))] - public class MedicalScannerComponent : SharedMedicalScannerComponent, IActivate, IDragDropOn, IDestroyAct + public class MedicalScannerComponent : SharedMedicalScannerComponent, IActivate, IDestroyAct { [Dependency] private readonly IGameTiming _gameTiming = default!; - [Dependency] private readonly IPlayerManager _playerManager = null!; private static readonly TimeSpan InternalOpenAttemptDelay = TimeSpan.FromSeconds(0.5); private TimeSpan _lastInternalOpenAttempt; @@ -280,16 +279,11 @@ namespace Content.Server.GameObjects.Components.Medical { //TODO: Show a 'ERROR: Body is completely devoid of soul' if no Mind owns the entity. var cloningSystem = EntitySystem.Get(); - cloningSystem.AddToDnaScans(_playerManager - .GetPlayersBy(playerSession => - { - var mindOwnedMob = playerSession.ContentData()?.Mind?.OwnedEntity; - return mindOwnedMob != null && mindOwnedMob == - _bodyContainer.ContainedEntity; - }).Single() - .ContentData() - ?.Mind); + if (!_bodyContainer.ContainedEntity.TryGetComponent(out MindComponent? mind) || !mind.HasMind) + break; + + cloningSystem.AddToDnaScans(mind.Mind); } break; @@ -298,12 +292,7 @@ namespace Content.Server.GameObjects.Components.Medical } } - public bool CanDragDropOn(DragDropEventArgs eventArgs) - { - return eventArgs.Dragged.HasComponent(); - } - - public bool DragDropOn(DragDropEventArgs eventArgs) + public override bool DragDropOn(DragDropEventArgs eventArgs) { _bodyContainer.Insert(eventArgs.Dragged); return true; diff --git a/Content.Server/GameObjects/Components/Mobs/MindComponent.cs b/Content.Server/GameObjects/Components/Mobs/MindComponent.cs index 027abe368e..649bee206f 100644 --- a/Content.Server/GameObjects/Components/Mobs/MindComponent.cs +++ b/Content.Server/GameObjects/Components/Mobs/MindComponent.cs @@ -1,6 +1,8 @@ #nullable enable +using Content.Server.Commands.Observer; using Content.Server.GameObjects.Components.Medical; using Content.Server.GameObjects.Components.Observer; +using Content.Server.GameTicking; using Content.Server.Interfaces.GameTicking; using Content.Server.Mobs; using Content.Server.Utility; @@ -17,6 +19,7 @@ using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Map; using Robust.Shared.Serialization; +using Robust.Shared.Timers; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; @@ -28,7 +31,6 @@ namespace Content.Server.GameObjects.Components.Mobs [RegisterComponent] public class MindComponent : Component, IExamine { - private bool _showExamineInfo; /// public override string Name => "Mind"; @@ -49,53 +51,13 @@ namespace Content.Server.GameObjects.Components.Mobs /// Whether examining should show information about the mind or not. /// [ViewVariables(VVAccess.ReadWrite)] - public bool ShowExamineInfo - { - get => _showExamineInfo; - set => _showExamineInfo = value; - } + public bool ShowExamineInfo { get; set; } - [ViewVariables] - private BoundUserInterface? UserInterface => - Owner.GetUIOrNull(SharedAcceptCloningComponent.AcceptCloningUiKey.Key); - - - public override void Initialize() - { - base.Initialize(); - Owner.EntityManager.EventBus.SubscribeEvent( - EventSource.Local, this, - HandleCloningStartedMessage); - - if (UserInterface != null) - { - UserInterface.OnReceiveMessage += OnUiAcceptCloningMessage; - } - } - - private void HandleCloningStartedMessage(CloningPodComponent.CloningStartedMessage ev) - { - if (ev.CapturedMind == Mind) - { - UserInterface?.Open(Mind.Session); - } - } - - private void OnUiAcceptCloningMessage(ServerBoundUserInterfaceMessage obj) - { - if (obj.Message is not SharedAcceptCloningComponent.UiButtonPressedMessage) return; - if (Mind != null) - { - Owner.EntityManager.EventBus.RaiseEvent(EventSource.Local, new GhostComponent.GhostReturnMessage(Mind)); - } - } - - public override void OnRemove() - { - base.OnRemove(); - Owner.EntityManager.EventBus.UnsubscribeEvent(EventSource.Local, this); - if (UserInterface != null) UserInterface.OnReceiveMessage -= OnUiAcceptCloningMessage; - } + /// + /// Whether the mind will be put on a ghost after this component is shutdown. + /// + [ViewVariables(VVAccess.ReadWrite)] + public bool GhostOnShutdown { get; set; } /// /// Don't call this unless you know what the hell you're doing. @@ -121,6 +83,10 @@ namespace Content.Server.GameObjects.Components.Mobs { base.Shutdown(); + // Let's not create ghosts if not in the middle of the round. + if (IoCManager.Resolve().RunLevel != GameRunLevel.InRound) + return; + if (HasMind) { var visiting = Mind?.VisitingEntity; @@ -133,10 +99,11 @@ namespace Content.Server.GameObjects.Components.Mobs Mind!.TransferTo(visiting); } - else + else if(GhostOnShutdown) { var spawnPosition = Owner.Transform.Coordinates; - Owner.SpawnTimer(0, () => + // Use a regular timer here because the entity has probably been deleted. + Timer.Spawn(0, () => { // Async this so that we don't throw if the grid we're on is being deleted. var mapMan = IoCManager.Resolve(); @@ -164,7 +131,8 @@ namespace Content.Server.GameObjects.Components.Mobs public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - serializer.DataField(ref _showExamineInfo, "show_examine_info", false); + serializer.DataField(this, x => x.ShowExamineInfo, "showExamineInfo", false); + serializer.DataField(this, x => x.GhostOnShutdown, "ghostOnShutdown", true); } public void Examine(FormattedMessage message, bool inDetailsRange) diff --git a/Content.Server/GameObjects/Components/Mobs/StunnableComponent.cs b/Content.Server/GameObjects/Components/Mobs/StunnableComponent.cs index 9f3ec4def6..6d9970f114 100644 --- a/Content.Server/GameObjects/Components/Mobs/StunnableComponent.cs +++ b/Content.Server/GameObjects/Components/Mobs/StunnableComponent.cs @@ -1,15 +1,23 @@ using Content.Server.GameObjects.EntitySystems; +using Content.Server.Interfaces.GameObjects; +using Content.Server.Utility; using Content.Shared.Alert; +using Content.Shared.Audio; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Mobs; using Content.Shared.GameObjects.Components.Movement; +using Content.Shared.Interfaces; using Content.Shared.Interfaces.GameObjects.Components; using NFluidsynth; +using Robust.Server.GameObjects.EntitySystems; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.Timers; using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.Random; using Robust.Shared.Interfaces.Timing; using Robust.Shared.IoC; +using Robust.Shared.Localization; +using Robust.Shared.Random; using Robust.Shared.Timers; using Logger = Robust.Shared.Log.Logger; @@ -17,7 +25,7 @@ namespace Content.Server.GameObjects.Components.Mobs { [RegisterComponent] [ComponentReference(typeof(SharedStunnableComponent))] - public class StunnableComponent : SharedStunnableComponent + public class StunnableComponent : SharedStunnableComponent, IDisarmedAct { [Dependency] private readonly IGameTiming _gameTiming = default!; @@ -108,10 +116,34 @@ namespace Content.Server.GameObjects.Components.Mobs } } + protected override void OnInteractHand() + { + EntitySystem.Get() + .PlayFromEntity("/Audio/Effects/thudswoosh.ogg", Owner, AudioHelpers.WithVariation(0.05f)); + } + public override ComponentState GetComponentState() { return new StunnableComponentState(StunnedTimer, KnockdownTimer, SlowdownTimer, WalkModifierOverride, RunModifierOverride); } + + bool IDisarmedAct.Disarmed(DisarmedActEventArgs eventArgs) + { + if (!IoCManager.Resolve().Prob(eventArgs.PushProbability)) + return false; + + Paralyze(4f); + + var source = eventArgs.Source; + + EntitySystem.Get().PlayFromEntity("/Audio/Effects/thudswoosh.ogg", source, + AudioHelpers.WithVariation(0.025f)); + + source.PopupMessageOtherClients(Loc.GetString("{0} pushes {1}!", source.Name, eventArgs.Target.Name)); + source.PopupMessageCursor(Loc.GetString("You push {0}!", eventArgs.Target.Name)); + + return true; + } } } diff --git a/Content.Server/GameObjects/Components/Morgue/CrematoriumEntityStorageComponent.cs b/Content.Server/GameObjects/Components/Morgue/CrematoriumEntityStorageComponent.cs index 0ba0ddd75d..1f22c0a91d 100644 --- a/Content.Server/GameObjects/Components/Morgue/CrematoriumEntityStorageComponent.cs +++ b/Content.Server/GameObjects/Components/Morgue/CrematoriumEntityStorageComponent.cs @@ -1,5 +1,9 @@ #nullable enable using Content.Server.GameObjects.Components.Items.Storage; +using Content.Server.Interfaces.Chat; +using Content.Server.Interfaces.GameObjects; +using Content.Server.Utility; +using Content.Shared.GameObjects.Components.Body; using Content.Shared.GameObjects.Components.Morgue; using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; @@ -11,9 +15,14 @@ using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Localization; -using Robust.Shared.Timers; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; +using System.Threading; +using Content.Server.Interfaces.GameTicking; +using Content.Server.Players; +using Robust.Server.Player; +using Robust.Shared.GameObjects.Components.Timers; +using Robust.Shared.IoC; namespace Content.Server.GameObjects.Components.Morgue { @@ -22,7 +31,7 @@ namespace Content.Server.GameObjects.Components.Morgue [ComponentReference(typeof(EntityStorageComponent))] [ComponentReference(typeof(IActivate))] [ComponentReference(typeof(IStorageComponent))] - public class CrematoriumEntityStorageComponent : MorgueEntityStorageComponent, IExamine + public class CrematoriumEntityStorageComponent : MorgueEntityStorageComponent, IExamine, ISuicideAct { public override string Name => "CrematoriumEntityStorage"; @@ -32,6 +41,8 @@ namespace Content.Server.GameObjects.Components.Morgue [ViewVariables(VVAccess.ReadWrite)] private int _burnMilis = 3000; + private CancellationTokenSource? _cremateCancelToken; + void IExamine.Examine(FormattedMessage message, bool inDetailsRange) { if (Appearance == null) return; @@ -64,16 +75,30 @@ namespace Content.Server.GameObjects.Components.Morgue return base.CanOpen(user, silent); } - public void Cremate() + public void TryCremate() { if (Cooking) return; if (Open) return; + Cremate(); + } + + public void Cremate() + { + if (Open) + CloseStorage(); + Appearance?.SetData(CrematoriumVisuals.Burning, true); Cooking = true; - Timer.Spawn(_burnMilis, () => + _cremateCancelToken?.Cancel(); + + _cremateCancelToken = new CancellationTokenSource(); + Owner.SpawnTimer(_burnMilis, () => { + if (Owner.Deleted) + return; + Appearance?.SetData(CrematoriumVisuals.Burning, false); Cooking = false; @@ -93,7 +118,34 @@ namespace Content.Server.GameObjects.Components.Morgue TryOpenStorage(Owner); EntitySystem.Get().PlayFromEntity("/Audio/Machines/ding.ogg", Owner); - }); + }, _cremateCancelToken.Token); + } + + public SuicideKind Suicide(IEntity victim, IChatManager chat) + { + var mind = victim.PlayerSession()?.ContentData()?.Mind; + + if (mind != null) + { + IoCManager.Resolve().OnGhostAttempt(mind, false); + mind.OwnedEntity.PopupMessage(Loc.GetString("You cremate yourself!")); + } + + victim.PopupMessageOtherClients(Loc.GetString("{0:theName} is cremating {0:themself}!", victim)); + EntitySystem.Get().Down(victim, false, false, true); + + if (CanInsert(victim)) + { + Insert(victim); + } + else + { + victim.Delete(); + } + + Cremate(); + + return SuicideKind.Heat; } [Verb] @@ -113,7 +165,7 @@ namespace Content.Server.GameObjects.Components.Morgue /// protected override void Activate(IEntity user, CrematoriumEntityStorageComponent component) { - component.Cremate(); + component.TryCremate(); } } } diff --git a/Content.Server/GameObjects/Components/Movement/ClimbableComponent.cs b/Content.Server/GameObjects/Components/Movement/ClimbableComponent.cs index 97f9d4e21d..0b6e78f4f7 100644 --- a/Content.Server/GameObjects/Components/Movement/ClimbableComponent.cs +++ b/Content.Server/GameObjects/Components/Movement/ClimbableComponent.cs @@ -27,41 +27,36 @@ namespace Content.Server.GameObjects.Components.Movement { [RegisterComponent] [ComponentReference(typeof(IClimbable))] - public class ClimbableComponent : SharedClimbableComponent, IDragDropOn + public class ClimbableComponent : SharedClimbableComponent { - /// - /// The range from which this entity can be climbed. - /// - [ViewVariables] - private float _range; - /// /// The time it takes to climb onto the entity. /// [ViewVariables] private float _climbDelay; - private DoAfterSystem _doAfterSystem; - public override void Initialize() { base.Initialize(); - Owner.EnsureComponentWarn(out PhysicsComponent _); - - _doAfterSystem = EntitySystem.Get(); + if (!Owner.EnsureComponent(out PhysicsComponent _)) + { + Logger.Warning($"Entity {Owner.Name} at {Owner.Transform.MapPosition} didn't have a {nameof(PhysicsComponent)}"); + } } public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - serializer.DataField(ref _range, "range", SharedInteractionSystem.InteractionRange / 1.4f); serializer.DataField(ref _climbDelay, "delay", 0.8f); } - bool IDragDropOn.CanDragDropOn(DragDropEventArgs eventArgs) + public override bool CanDragDropOn(DragDropEventArgs eventArgs) { + if (!base.CanDragDropOn(eventArgs)) + return false; + string reason; bool canVault; @@ -105,7 +100,7 @@ namespace Content.Server.GameObjects.Components.Movement return false; } - if (!user.InRangeUnobstructed(target, _range)) + if (!user.InRangeUnobstructed(target, Range)) { reason = Loc.GetString("You can't reach there!"); return false; @@ -139,8 +134,8 @@ namespace Content.Server.GameObjects.Components.Movement bool Ignored(IEntity entity) => entity == target || entity == user || entity == dragged; - if (!user.InRangeUnobstructed(target, _range, predicate: Ignored) || - !user.InRangeUnobstructed(dragged, _range, predicate: Ignored)) + if (!user.InRangeUnobstructed(target, Range, predicate: Ignored) || + !user.InRangeUnobstructed(dragged, Range, predicate: Ignored)) { reason = Loc.GetString("You can't reach there!"); return false; @@ -150,7 +145,7 @@ namespace Content.Server.GameObjects.Components.Movement return true; } - bool IDragDropOn.DragDropOn(DragDropEventArgs eventArgs) + public override bool DragDropOn(DragDropEventArgs eventArgs) { if (eventArgs.User == eventArgs.Dragged) { @@ -174,7 +169,7 @@ namespace Content.Server.GameObjects.Components.Movement BreakOnStun = true }; - var result = await _doAfterSystem.DoAfter(doAfterEventArgs); + var result = await EntitySystem.Get().DoAfter(doAfterEventArgs); if (result != DoAfterStatus.Cancelled && entityToMove.TryGetComponent(out IPhysicsComponent body) && body.PhysicsShapes.Count >= 1) { @@ -219,7 +214,7 @@ namespace Content.Server.GameObjects.Components.Movement BreakOnStun = true }; - var result = await _doAfterSystem.DoAfter(doAfterEventArgs); + var result = await EntitySystem.Get().DoAfter(doAfterEventArgs); if (result != DoAfterStatus.Cancelled && user.TryGetComponent(out IPhysicsComponent body) && body.PhysicsShapes.Count >= 1) { diff --git a/Content.Server/GameObjects/Components/Movement/ClimbingComponent.cs b/Content.Server/GameObjects/Components/Movement/ClimbingComponent.cs index 8c3a5e84e2..a924f93d96 100644 --- a/Content.Server/GameObjects/Components/Movement/ClimbingComponent.cs +++ b/Content.Server/GameObjects/Components/Movement/ClimbingComponent.cs @@ -9,6 +9,7 @@ using Robust.Shared.Maths; namespace Content.Server.GameObjects.Components.Movement { [RegisterComponent] + [ComponentReference(typeof(SharedClimbingComponent))] public class ClimbingComponent : SharedClimbingComponent { private bool _isClimbing; diff --git a/Content.Server/GameObjects/Components/NodeContainer/NodeContainerComponent.cs b/Content.Server/GameObjects/Components/NodeContainer/NodeContainerComponent.cs index 73d75455f6..adf31160cf 100644 --- a/Content.Server/GameObjects/Components/NodeContainer/NodeContainerComponent.cs +++ b/Content.Server/GameObjects/Components/NodeContainer/NodeContainerComponent.cs @@ -1,7 +1,13 @@ -using System.Collections.Generic; +using System.Collections.Generic; +using Content.Server.GameObjects.Components.NodeContainer.NodeGroups; using Content.Server.GameObjects.Components.NodeContainer.Nodes; +using Content.Shared.GameObjects.EntitySystems; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Localization; using Robust.Shared.Serialization; +using Robust.Shared.Utility; using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.NodeContainer @@ -10,18 +16,20 @@ namespace Content.Server.GameObjects.Components.NodeContainer /// Creates and maintains a set of s. /// [RegisterComponent] - public class NodeContainerComponent : Component + public class NodeContainerComponent : Component, IExamine { public override string Name => "NodeContainer"; [ViewVariables] public IReadOnlyList Nodes => _nodes; private List _nodes = new(); + private bool _examinable; public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); serializer.DataField(ref _nodes, "nodes", new List()); + serializer.DataField(ref _examinable, "examinable", false); } public override void Initialize() @@ -42,6 +50,17 @@ namespace Content.Server.GameObjects.Components.NodeContainer } } + public override void HandleMessage(ComponentMessage message, IComponent component) + { + base.HandleMessage(message, component); + switch (message) + { + case AnchoredChangedMessage: + AnchorUpdate(); + break; + } + } + public override void OnRemove() { foreach (var node in _nodes) @@ -50,5 +69,42 @@ namespace Content.Server.GameObjects.Components.NodeContainer } base.OnRemove(); } + + private void AnchorUpdate() + { + foreach (var node in Nodes) + { + node.AnchorUpdate(); + } + } + + public void Examine(FormattedMessage message, bool inDetailsRange) + { + if (!_examinable || !inDetailsRange) return; + + for (var i = 0; i < Nodes.Count; i++) + { + var node = Nodes[i]; + if (node == null) continue; + switch (node.NodeGroupID) + { + case NodeGroupID.HVPower: + message.AddMarkup( + Loc.GetString("It has a connector for [color=orange]HV cables[/color].")); + break; + case NodeGroupID.MVPower: + message.AddMarkup( + Loc.GetString("It has a connector for [color=yellow]MV cables[/color].")); + break; + case NodeGroupID.Apc: + message.AddMarkup( + Loc.GetString("It has a connector for [color=green]APC cables[/color].")); + break; + } + + if(i != Nodes.Count - 1) + message.AddMarkup("\n"); + } + } } } diff --git a/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/ApcNetNodeGroup.cs b/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/ApcNetNodeGroup.cs index 93da4c630c..703f159162 100644 --- a/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/ApcNetNodeGroup.cs +++ b/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/ApcNetNodeGroup.cs @@ -1,14 +1,18 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using System.Diagnostics; using System.Linq; using Content.Server.GameObjects.Components.Power; using Content.Server.GameObjects.Components.Power.ApcNetComponents; +using Robust.Shared.Utility; using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups { public interface IApcNet { + bool Powered { get; } + void AddApc(ApcComponent apc); void RemoveApc(ApcComponent apc); @@ -17,7 +21,7 @@ namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups void RemovePowerProvider(PowerProviderComponent provider); - void UpdatePowerProviderReceivers(PowerProviderComponent provider); + void UpdatePowerProviderReceivers(PowerProviderComponent provider, int oldLoad, int newLoad); void Update(float frameTime); } @@ -29,11 +33,19 @@ namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups private readonly Dictionary _apcBatteries = new(); [ViewVariables] - private readonly Dictionary> _providerReceivers = new(); + private readonly List _providers = new(); + + [ViewVariables] + public bool Powered { get => _powered; private set => SetPowered(value); } + private bool _powered = false; //Debug property [ViewVariables] - private int TotalReceivers => _providerReceivers.SelectMany(kvp => kvp.Value).Count(); + private int TotalReceivers => _providers.SelectMany(provider => provider.LinkedReceivers).Count(); + + [ViewVariables] + private int TotalPowerReceiverLoad { get => _totalPowerReceiverLoad; set => SetTotalPowerReceiverLoad(value); } + private int _totalPowerReceiverLoad = 0; public static readonly IApcNet NullNet = new NullApcNet(); @@ -57,80 +69,106 @@ namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups public void RemoveApc(ApcComponent apc) { _apcBatteries.Remove(apc); - if (!_apcBatteries.Any()) - { - foreach (var receiver in _providerReceivers.SelectMany(kvp => kvp.Value)) - { - receiver.HasApcPower = false; - } - } } public void AddPowerProvider(PowerProviderComponent provider) { - _providerReceivers.Add(provider, provider.LinkedReceivers.ToList()); + _providers.Add(provider); + + foreach (var receiver in provider.LinkedReceivers) + { + TotalPowerReceiverLoad += receiver.Load; + } } public void RemovePowerProvider(PowerProviderComponent provider) { - _providerReceivers.Remove(provider); + _providers.Remove(provider); + + foreach (var receiver in provider.LinkedReceivers) + { + TotalPowerReceiverLoad -= receiver.Load; + } } - public void UpdatePowerProviderReceivers(PowerProviderComponent provider) + public void UpdatePowerProviderReceivers(PowerProviderComponent provider, int oldLoad, int newLoad) { - Debug.Assert(_providerReceivers.ContainsKey(provider)); - _providerReceivers[provider] = provider.LinkedReceivers.ToList(); + DebugTools.Assert(_providers.Contains(provider)); + TotalPowerReceiverLoad -= oldLoad; + TotalPowerReceiverLoad += newLoad; } public void Update(float frameTime) { - var totalCharge = 0.0; - var totalMaxCharge = 0; - foreach (var (apc, battery) in _apcBatteries) + var remainingPowerNeeded = TotalPowerReceiverLoad * frameTime; + + foreach (var apcBatteryPair in _apcBatteries) { + var apc = apcBatteryPair.Key; + if (!apc.MainBreakerEnabled) continue; - totalCharge += battery.CurrentCharge; - totalMaxCharge += battery.MaxCharge; + var battery = apcBatteryPair.Value; + + if (battery.CurrentCharge < remainingPowerNeeded) + { + remainingPowerNeeded -= battery.CurrentCharge; + battery.CurrentCharge = 0; + } + else + { + battery.UseCharge(remainingPowerNeeded); + remainingPowerNeeded = 0; + } + + if (remainingPowerNeeded == 0) + break; } - foreach (var (_, receivers) in _providerReceivers) - { - foreach (var receiver in receivers) - { - if (!receiver.NeedsPower || receiver.PowerDisabled) - continue; + Powered = remainingPowerNeeded == 0; + } - receiver.HasApcPower = TryUsePower(receiver.Load * frameTime); + private void SetPowered(bool powered) + { + if (powered != Powered) + { + _powered = powered; + PoweredChanged(); + } + } + + private void PoweredChanged() + { + foreach (var provider in _providers) + { + foreach (var receiver in provider.LinkedReceivers) + { + receiver.ApcPowerChanged(); } } } - private bool TryUsePower(float neededCharge) + private void SetTotalPowerReceiverLoad(int totalPowerReceiverLoad) { - foreach (var (apc, battery) in _apcBatteries) - { - if (!apc.MainBreakerEnabled) - continue; - - if (battery.TryUseCharge(neededCharge)) //simplification - all power needed must come from one battery - { - return true; - } - } - return false; + DebugTools.Assert(totalPowerReceiverLoad >= 0, $"Expected load equal to or greater than 0, was {totalPowerReceiverLoad}"); + _totalPowerReceiverLoad = totalPowerReceiverLoad; } #endregion private class NullApcNet : IApcNet { + /// + /// It is important that this returns false, so s with a have no power. + /// + public bool Powered => false; + public void AddApc(ApcComponent apc) { } public void AddPowerProvider(PowerProviderComponent provider) { } public void RemoveApc(ApcComponent apc) { } public void RemovePowerProvider(PowerProviderComponent provider) { } - public void UpdatePowerProviderReceivers(PowerProviderComponent provider) { } + public void UpdatePowerProviderReceivers(PowerProviderComponent provider, int oldLoad, int newLoad) { } public void Update(float frameTime) { } } } diff --git a/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/PowerNetNodeGroup.cs b/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/PowerNetNodeGroup.cs index 6e6486b79e..59ff48ef1b 100644 --- a/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/PowerNetNodeGroup.cs +++ b/Content.Server/GameObjects/Components/NodeContainer/NodeGroups/PowerNetNodeGroup.cs @@ -29,6 +29,8 @@ namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups [NodeGroup(NodeGroupID.HVPower, NodeGroupID.MVPower)] public class PowerNetNodeGroup : BaseNetConnectorNodeGroup, IPowerNet { + private static readonly Priority[] CachedPriorities = (Priority[]) Enum.GetValues(typeof(Priority)); + [Dependency] private readonly IPowerNetManager _powerNetManager = default!; [ViewVariables] @@ -121,7 +123,7 @@ namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups public void UpdateConsumerReceivedPower() { var remainingSupply = _totalSupply; - foreach (Priority priority in Enum.GetValues(typeof(Priority))) + foreach (var priority in CachedPriorities) { var categoryPowerDemand = _drawByPriority[priority]; if (remainingSupply >= categoryPowerDemand) //can fully power all in category diff --git a/Content.Server/GameObjects/Components/NodeContainer/Nodes/AdjacentNode.cs b/Content.Server/GameObjects/Components/NodeContainer/Nodes/AdjacentNode.cs index 3bb66265ea..3badc4fe7f 100644 --- a/Content.Server/GameObjects/Components/NodeContainer/Nodes/AdjacentNode.cs +++ b/Content.Server/GameObjects/Components/NodeContainer/Nodes/AdjacentNode.cs @@ -1,5 +1,4 @@ -using System.Collections.Generic; -using System.Linq; +using System.Collections.Generic; using Robust.Shared.GameObjects.Components.Transform; namespace Content.Server.GameObjects.Components.NodeContainer.Nodes @@ -11,13 +10,25 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes { protected override IEnumerable GetReachableNodes() { - return Owner.GetComponent() - .GetCardinalNeighborCells() - .SelectMany(sgc => sgc.GetLocal()) - .Select(entity => entity.TryGetComponent(out var container) ? container : null) - .Where(container => container != null) - .SelectMany(container => container.Nodes) - .Where(node => node != null && node != this); + var cells = Owner.GetComponent() + .GetCardinalNeighborCells(); + + foreach (var cell in cells) + { + foreach (var entity in cell.GetLocal()) + { + if (entity.TryGetComponent(out var container)) + { + foreach (var node in container.Nodes) + { + if (node != null && node != this) + { + yield return node; + } + } + } + } + } } } } diff --git a/Content.Server/GameObjects/Components/NodeContainer/Nodes/Node.cs b/Content.Server/GameObjects/Components/NodeContainer/Nodes/Node.cs index 6e2420da7a..09c45000df 100644 --- a/Content.Server/GameObjects/Components/NodeContainer/Nodes/Node.cs +++ b/Content.Server/GameObjects/Components/NodeContainer/Nodes/Node.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Diagnostics; using System.Linq; using Content.Server.GameObjects.Components.NodeContainer.NodeGroups; @@ -66,17 +66,29 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes if (Owner.TryGetComponent(out var physics)) { AnchorUpdate(); - physics.AnchoredChanged += AnchorUpdate; + } + } + + public void AnchorUpdate() + { + if (Anchored) + { + if (_needsGroup) + { + TryAssignGroupIfNeeded(); + CombineGroupWithReachable(); + } + } + else + { + NodeGroup.RemoveNode(this); + ClearNodeGroup(); } } public void OnContainerRemove() { _deleting = true; - if (Owner.TryGetComponent(out var physics)) - { - physics.AnchoredChanged -= AnchorUpdate; - } NodeGroup.RemoveNode(this); } @@ -153,22 +165,5 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes { return _nodeGroupFactory.MakeNodeGroup(this); } - - private void AnchorUpdate() - { - if (Anchored) - { - if (_needsGroup) - { - TryAssignGroupIfNeeded(); - CombineGroupWithReachable(); - } - } - else - { - NodeGroup.RemoveNode(this); - ClearNodeGroup(); - } - } } } diff --git a/Content.Server/GameObjects/Components/NodeContainer/Nodes/PipeNode.cs b/Content.Server/GameObjects/Components/NodeContainer/Nodes/PipeNode.cs index 46ed4f00c4..6991d99fa7 100644 --- a/Content.Server/GameObjects/Components/NodeContainer/Nodes/PipeNode.cs +++ b/Content.Server/GameObjects/Components/NodeContainer/Nodes/PipeNode.cs @@ -1,6 +1,4 @@ -using System; using System.Collections.Generic; -using System.Linq; using Content.Server.Atmos; using Content.Server.GameObjects.Components.NodeContainer.NodeGroups; using Content.Server.Interfaces; @@ -24,12 +22,6 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes public PipeDirection PipeDirection { get => _pipeDirection; set => SetPipeDirection(value); } private PipeDirection _pipeDirection; - /// - /// Controls what visuals are applied in . - /// - public ConduitLayer ConduitLayer => _conduitLayer; - private ConduitLayer _conduitLayer; - [ViewVariables] private IPipeNet _pipeNet = PipeNet.NullNet; @@ -71,7 +63,6 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes base.ExposeData(serializer); serializer.DataField(ref _pipeDirection, "pipeDirection", PipeDirection.None); serializer.DataField(this, x => x.LocalAir, "gasMixture", new GasMixture(DefaultVolume)); - serializer.DataField(ref _conduitLayer, "conduitLayer", ConduitLayer.Two); } public override void Initialize(IEntity owner) @@ -107,17 +98,30 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes var ownNeededConnection = pipeDirection; var theirNeededConnection = ownNeededConnection.GetOpposite(); - if (!_pipeDirection.HasFlag(ownNeededConnection)) + if (!_pipeDirection.HasDirection(ownNeededConnection)) { continue; } - var pipeNodesInDirection = Owner.GetComponent() - .GetInDir(pipeDirection.ToDirection()) - .Select(entity => entity.TryGetComponent(out var container) ? container : null) - .Where(container => container != null) - .SelectMany(container => container.Nodes) - .OfType() - .Where(pipeNode => pipeNode._pipeDirection.HasFlag(theirNeededConnection)); + + var pipeNodesInDirection = new List(); + + var entities = Owner.GetComponent() + .GetInDir(pipeDirection.ToDirection()); + + foreach (var entity in entities) + { + if (entity.TryGetComponent(out var container)) + { + foreach (var node in container.Nodes) + { + if (node is PipeNode pipeNode && pipeNode._pipeDirection.HasDirection(theirNeededConnection)) + { + pipeNodesInDirection.Add(pipeNode); + } + } + } + } + foreach (var pipeNode in pipeNodesInDirection) { yield return pipeNode; @@ -127,7 +131,7 @@ namespace Content.Server.GameObjects.Components.NodeContainer.Nodes private void UpdateAppearance() { - _appearance?.SetData(PipeVisuals.VisualState, new PipeVisualState(PipeDirection, ConduitLayer)); + _appearance?.SetData(PipeVisuals.VisualState, new PipeVisualState(PipeDirection)); } private void SetPipeDirection(PipeDirection pipeDirection) diff --git a/Content.Server/GameObjects/Components/Nutrition/CreamPiedComponent.cs b/Content.Server/GameObjects/Components/Nutrition/CreamPiedComponent.cs index 1e1188efa9..4261cdbdb5 100644 --- a/Content.Server/GameObjects/Components/Nutrition/CreamPiedComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/CreamPiedComponent.cs @@ -1,4 +1,4 @@ -using Content.Server.GameObjects.Components.Mobs; +using Content.Server.GameObjects.Components.Mobs; using Content.Server.Utility; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Nutrition; @@ -42,7 +42,7 @@ namespace Content.Server.GameObjects.Components.Nutrition switch (reagent.ID) { case "chem.SpaceCleaner": - case "chem.H2O": + case "chem.Water": Wash(); break; } diff --git a/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs b/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs index 0507646acb..6ea6074a46 100644 --- a/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/DrinkComponent.cs @@ -30,7 +30,6 @@ using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Nutrition { [RegisterComponent] - [ComponentReference(typeof(IAfterInteract))] public class DrinkComponent : Component, IUse, IAfterInteract, ISolutionChange, IExamine, ILand { [Dependency] private readonly IPrototypeManager _prototypeManager = default!; diff --git a/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs b/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs index bea683e309..94fef359b0 100644 --- a/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/FoodComponent.cs @@ -7,12 +7,9 @@ using Content.Server.GameObjects.Components.Body.Behavior; using Content.Server.GameObjects.Components.Chemistry; using Content.Server.GameObjects.Components.GUI; using Content.Server.GameObjects.Components.Items.Storage; -using Content.Server.GameObjects.Components.Utensil; +using Content.Server.GameObjects.Components.Culinary; using Content.Shared.Chemistry; using Content.Shared.GameObjects.Components.Body; -using Content.Shared.GameObjects.Components.Body.Behavior; -using Content.Shared.GameObjects.Components.Body.Mechanism; -using Content.Shared.GameObjects.Components.Utensil; using Content.Shared.Interfaces; using Content.Shared.Interfaces.GameObjects.Components; using Content.Shared.Utility; @@ -29,7 +26,6 @@ using Robust.Shared.ViewVariables; namespace Content.Server.GameObjects.Components.Nutrition { [RegisterComponent] - [ComponentReference(typeof(IAfterInteract))] public class FoodComponent : Component, IUse, IAfterInteract { [Dependency] private readonly IEntitySystemManager _entitySystem = default!; diff --git a/Content.Server/GameObjects/Components/Nutrition/HungerComponent.cs b/Content.Server/GameObjects/Components/Nutrition/HungerComponent.cs index 8a434ca6f8..2c24a5dbb7 100644 --- a/Content.Server/GameObjects/Components/Nutrition/HungerComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/HungerComponent.cs @@ -178,14 +178,7 @@ namespace Content.Server.GameObjects.Components.Nutrition public void OnUpdate(float frametime) { _currentHunger -= frametime * ActualDecayRate; - var calculatedHungerThreshold = GetHungerThreshold(_currentHunger); - // _trySound(calculatedThreshold); - if (calculatedHungerThreshold != _currentHungerThreshold) - { - _currentHungerThreshold = calculatedHungerThreshold; - HungerThresholdEffect(); - Dirty(); - } + UpdateCurrentThreshold(); if (_currentHungerThreshold != HungerThreshold.Dead) return; @@ -202,11 +195,22 @@ namespace Content.Server.GameObjects.Components.Nutrition } } + private void UpdateCurrentThreshold() + { + var calculatedHungerThreshold = GetHungerThreshold(_currentHunger); + // _trySound(calculatedThreshold); + if (calculatedHungerThreshold != _currentHungerThreshold) + { + _currentHungerThreshold = calculatedHungerThreshold; + HungerThresholdEffect(); + Dirty(); + } + } + public void ResetFood() { - _currentHungerThreshold = HungerThreshold.Okay; - _currentHunger = HungerThresholds[_currentHungerThreshold]; - HungerThresholdEffect(); + _currentHunger = HungerThresholds[HungerThreshold.Okay]; + UpdateCurrentThreshold(); } public override ComponentState GetComponentState() diff --git a/Content.Server/GameObjects/Components/Nutrition/SmokingComponent.cs b/Content.Server/GameObjects/Components/Nutrition/SmokingComponent.cs new file mode 100644 index 0000000000..ad650d2906 --- /dev/null +++ b/Content.Server/GameObjects/Components/Nutrition/SmokingComponent.cs @@ -0,0 +1,107 @@ +#nullable enable +using System.Threading.Tasks; +using Content.Server.GameObjects.Components.Items.Clothing; +using Content.Shared.GameObjects.Components; +using Content.Shared.Interfaces.GameObjects.Components; +using Robust.Server.GameObjects; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.ComponentDependencies; +using Robust.Shared.GameObjects.Components.Timers; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; + +namespace Content.Server.GameObjects.Components.Nutrition +{ + /// + /// This item acts as a representation for smokable consumables. + /// + /// To smoke a cigar, you need: + /// + /// a hot item (implements IHotItem interface) + /// that's a alight. + /// for the target cigar be Unlit. Lit cigars are already lit and butt's don't have any "fuel" left. + /// + /// TODO: Add reagents that interact when smoking + /// TODO: Allow suicide via excessive Smoking + /// + [RegisterComponent] + public class SmokingComponent : Component, IInteractUsing, IHotItem + { + public override string Name => "Smoking"; + + private SharedBurningStates _currentState = SharedBurningStates.Unlit; + + [ComponentDependency] private readonly ClothingComponent? _clothingComponent = default!; + [ComponentDependency] private readonly AppearanceComponent? _appearanceComponent = default!; + + /// + /// Duration represents how long will this item last. + /// Generally it ticks down whether it's time-based + /// or consumption-based. + /// + [ViewVariables] private int _duration; + + /// + /// What is the temperature of the cigar? + /// + /// For a regular cigar, the temp approaches around 400°C or 580°C + /// dependant on where you measure. + /// + [ViewVariables] private float _temperature; + + [ViewVariables] + private SharedBurningStates CurrentState + { + get => _currentState; + set + { + _currentState = value; + + if (_clothingComponent != null) + { + switch (_currentState) + { + case SharedBurningStates.Lit: + _clothingComponent.EquippedPrefix = "lit"; + _clothingComponent.ClothingEquippedPrefix = "lit"; + break; + default: + _clothingComponent.EquippedPrefix = "unlit"; + _clothingComponent.ClothingEquippedPrefix = "unlit"; + break; + } + } + + _appearanceComponent?.SetData(SmokingVisuals.Smoking, _currentState); + } + } + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _duration, "duration", 30); + serializer.DataField(ref _temperature, "temperature", 673.15f); + } + + public async Task InteractUsing(InteractUsingEventArgs eventArgs) + { + if (eventArgs.Using.TryGetComponent(out IHotItem? lighter) + && lighter.IsCurrentlyHot() + && CurrentState == SharedBurningStates.Unlit + ) + { + CurrentState = SharedBurningStates.Lit; + // TODO More complex handling of cigar consumption + Owner.SpawnTimer(_duration * 1000, () => CurrentState = SharedBurningStates.Burnt); + return true; + } + + return false; + } + + bool IHotItem.IsCurrentlyHot() + { + return _currentState == SharedBurningStates.Lit; + } + } +} \ No newline at end of file diff --git a/Content.Server/GameObjects/Components/Nutrition/ThirstComponent.cs b/Content.Server/GameObjects/Components/Nutrition/ThirstComponent.cs index b6a7b031ce..2c4fc1e90a 100644 --- a/Content.Server/GameObjects/Components/Nutrition/ThirstComponent.cs +++ b/Content.Server/GameObjects/Components/Nutrition/ThirstComponent.cs @@ -4,7 +4,6 @@ using Content.Server.GameObjects.Components.Mobs; using Content.Shared.Alert; using Content.Shared.Damage; using Content.Shared.GameObjects.Components.Damage; -using Content.Shared.GameObjects.Components.Mobs; using Content.Shared.GameObjects.Components.Mobs.State; using Content.Shared.GameObjects.Components.Movement; using Content.Shared.GameObjects.Components.Nutrition; @@ -175,14 +174,7 @@ namespace Content.Server.GameObjects.Components.Nutrition public void OnUpdate(float frametime) { _currentThirst -= frametime * ActualDecayRate; - var calculatedThirstThreshold = GetThirstThreshold(_currentThirst); - // _trySound(calculatedThreshold); - if (calculatedThirstThreshold != _currentThirstThreshold) - { - _currentThirstThreshold = calculatedThirstThreshold; - ThirstThresholdEffect(); - Dirty(); - } + UpdateCurrentThreshold(); if (_currentThirstThreshold != ThirstThreshold.Dead) return; @@ -199,11 +191,22 @@ namespace Content.Server.GameObjects.Components.Nutrition } } + private void UpdateCurrentThreshold() + { + var calculatedThirstThreshold = GetThirstThreshold(_currentThirst); + // _trySound(calculatedThreshold); + if (calculatedThirstThreshold != _currentThirstThreshold) + { + _currentThirstThreshold = calculatedThirstThreshold; + ThirstThresholdEffect(); + Dirty(); + } + } + public void ResetThirst() { - _currentThirstThreshold = ThirstThreshold.Okay; - _currentThirst = ThirstThresholds[_currentThirstThreshold]; - ThirstThresholdEffect(); + _currentThirst = ThirstThresholds[ThirstThreshold.Okay]; + UpdateCurrentThreshold(); } public override ComponentState GetComponentState() diff --git a/Content.Server/GameObjects/Components/Observer/AcceptCloningEui.cs b/Content.Server/GameObjects/Components/Observer/AcceptCloningEui.cs new file mode 100644 index 0000000000..fda157ed76 --- /dev/null +++ b/Content.Server/GameObjects/Components/Observer/AcceptCloningEui.cs @@ -0,0 +1,38 @@ +#nullable enable +using Content.Server.Eui; +using Content.Server.GameObjects.Components.Mobs; +using Content.Server.Players; +using Content.Shared.Eui; +using Content.Shared.GameObjects.Components.Observer; +using Robust.Server.Interfaces.Player; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Log; + +namespace Content.Server.GameObjects.Components.Observer +{ + public class AcceptCloningEui : BaseEui + { + private readonly IEntity _newMob; + + public AcceptCloningEui(IEntity newMob) + { + _newMob = newMob; + } + + public override void HandleMessage(EuiMessageBase msg) + { + base.HandleMessage(msg); + + if (msg is not AcceptCloningChoiceMessage choice + || choice.Button == AcceptCloningUiButton.Deny + || _newMob.Deleted) + { + Close(); + return; + } + + Player.ContentData()?.Mind?.TransferTo(_newMob); + Close(); + } + } +} diff --git a/Content.Server/GameObjects/Components/PA/ParticleAcceleratorControlBoxComponent.cs b/Content.Server/GameObjects/Components/PA/ParticleAcceleratorControlBoxComponent.cs index 542878fc98..d490417fa0 100644 --- a/Content.Server/GameObjects/Components/PA/ParticleAcceleratorControlBoxComponent.cs +++ b/Content.Server/GameObjects/Components/PA/ParticleAcceleratorControlBoxComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Diagnostics; @@ -16,6 +16,7 @@ using Robust.Server.GameObjects; using Robust.Server.GameObjects.Components.UserInterface; using Robust.Server.Interfaces.GameObjects; using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Localization; using Robust.Shared.Log; using Robust.Shared.Maths; @@ -119,11 +120,20 @@ namespace Content.Server.GameObjects.Components.PA Logger.Error("ParticleAcceleratorControlBox was created without PowerReceiverComponent"); return; } - - _powerReceiverComponent.OnPowerStateChanged += OnPowerStateChanged; _powerReceiverComponent.Load = 250; } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PowerChangedMessage powerChanged: + OnPowerStateChanged(powerChanged); + break; + } + } + protected override void Startup() { base.Startup(); @@ -133,7 +143,7 @@ namespace Content.Server.GameObjects.Components.PA // This is the power state for the PA control box itself. // Keep in mind that the PA itself can keep firing as long as the HV cable under the power box has... power. - private void OnPowerStateChanged(object? sender, PowerStateEventArgs e) + private void OnPowerStateChanged(PowerChangedMessage e) { UpdateAppearance(); diff --git a/Content.Server/GameObjects/Components/PA/ParticleAcceleratorPartComponent.cs b/Content.Server/GameObjects/Components/PA/ParticleAcceleratorPartComponent.cs index 3f078cd71f..6c549c050b 100644 --- a/Content.Server/GameObjects/Components/PA/ParticleAcceleratorPartComponent.cs +++ b/Content.Server/GameObjects/Components/PA/ParticleAcceleratorPartComponent.cs @@ -1,8 +1,9 @@ -#nullable enable +#nullable enable using Content.Server.Utility; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.Components.Transform; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Log; using Robust.Shared.ViewVariables; @@ -10,7 +11,6 @@ namespace Content.Server.GameObjects.Components.PA { public abstract class ParticleAcceleratorPartComponent : Component { - [ViewVariables] private PhysicsComponent? _collidableComponent; [ViewVariables] public ParticleAcceleratorControlBoxComponent? Master; [ViewVariables] protected SnapGridComponent? SnapGrid; @@ -18,14 +18,6 @@ namespace Content.Server.GameObjects.Components.PA { base.Initialize(); // FIXME: this has to be an entity system, full stop. - if (!Owner.TryGetComponent(out _collidableComponent)) - { - Logger.Error("ParticleAcceleratorPartComponent created with no CollidableComponent"); - } - else - { - _collidableComponent.AnchoredChanged += OnAnchorChanged; - } if (!Owner.TryGetComponent(out SnapGrid)) { @@ -33,6 +25,17 @@ namespace Content.Server.GameObjects.Components.PA } } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case AnchoredChangedMessage: + OnAnchorChanged(); + break; + } + } + public void OnAnchorChanged() { RescanIfPossible(); diff --git a/Content.Server/GameObjects/Components/PDA/PDAComponent.cs b/Content.Server/GameObjects/Components/PDA/PDAComponent.cs index c5ed36ede8..efd7c1da4b 100644 --- a/Content.Server/GameObjects/Components/PDA/PDAComponent.cs +++ b/Content.Server/GameObjects/Components/PDA/PDAComponent.cs @@ -36,7 +36,7 @@ namespace Content.Server.GameObjects.Components.PDA [RegisterComponent] [ComponentReference(typeof(IActivate))] [ComponentReference(typeof(IAccess))] - public class PDAComponent : SharedPDAComponent, IInteractUsing, IActivate, IUse, IAccess + public class PDAComponent : SharedPDAComponent, IInteractUsing, IActivate, IUse, IAccess, IMapInit { [Dependency] private readonly IPDAUplinkManager _uplinkManager = default!; [Dependency] private readonly IEntityManager _entityManager = default!; @@ -86,6 +86,11 @@ namespace Content.Server.GameObjects.Components.PDA UserInterface.OnReceiveMessage += UserInterfaceOnReceiveMessage; } + UpdatePDAAppearance(); + } + + public void MapInit() + { if (!string.IsNullOrEmpty(_startingIdCard)) { var idCard = _entityManager.SpawnEntity(_startingIdCard, Owner.Transform.Coordinates); @@ -99,8 +104,6 @@ namespace Content.Server.GameObjects.Components.PDA var pen = _entityManager.SpawnEntity(_startingPen, Owner.Transform.Coordinates); _penSlot.Insert(pen); } - - UpdatePDAAppearance(); } private void UserInterfaceOnReceiveMessage(ServerBoundUserInterfaceMessage message) @@ -434,6 +437,7 @@ namespace Content.Server.GameObjects.Components.PDA } ISet IAccess.Tags => _accessSet; + bool IAccess.IsReadOnly => true; void IAccess.SetTags(IEnumerable newTags) diff --git a/Content.Server/GameObjects/Components/PlaceableSurfaceComponent.cs b/Content.Server/GameObjects/Components/PlaceableSurfaceComponent.cs index 34e40e69d5..1230842be4 100644 --- a/Content.Server/GameObjects/Components/PlaceableSurfaceComponent.cs +++ b/Content.Server/GameObjects/Components/PlaceableSurfaceComponent.cs @@ -1,8 +1,9 @@ -using System.Threading.Tasks; +using System.Threading.Tasks; using Content.Server.GameObjects.Components.GUI; using Content.Shared.GameObjects.Components; using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; +using Robust.Shared.Maths; using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; @@ -13,6 +14,8 @@ namespace Content.Server.GameObjects.Components public class PlaceableSurfaceComponent : SharedPlaceableSurfaceComponent, IInteractUsing { private bool _isPlaceable; + private bool _placeCentered; + private Vector2 _positionOffset; [ViewVariables(VVAccess.ReadWrite)] public override bool IsPlaceable @@ -31,6 +34,42 @@ namespace Content.Server.GameObjects.Components } } + [ViewVariables(VVAccess.ReadWrite)] + public override bool PlaceCentered + { + get => _placeCentered; + set + { + if (_placeCentered == value) + { + return; + } + + _placeCentered = value; + + Dirty(); + + } + } + + [ViewVariables(VVAccess.ReadWrite)] + public override Vector2 PositionOffset + { + get => _positionOffset; + set + { + if (_positionOffset.EqualsApprox(value)) + { + return; + } + + _positionOffset = value; + + Dirty(); + + } + } + [ViewVariables] int IInteractUsing.Priority => -10; @@ -39,11 +78,13 @@ namespace Content.Server.GameObjects.Components base.ExposeData(serializer); serializer.DataField(ref _isPlaceable, "IsPlaceable", true); + serializer.DataField(ref _placeCentered, "placeCentered", false); + serializer.DataField(ref _positionOffset, "positionOffset", Vector2.Zero); } public override ComponentState GetComponentState() { - return new PlaceableSurfaceComponentState(_isPlaceable); + return new PlaceableSurfaceComponentState(_isPlaceable,_placeCentered,_positionOffset); } public async Task InteractUsing(InteractUsingEventArgs eventArgs) @@ -56,7 +97,10 @@ namespace Content.Server.GameObjects.Components return false; } handComponent.Drop(eventArgs.Using); - eventArgs.Using.Transform.WorldPosition = eventArgs.ClickLocation.Position; + if (_placeCentered) + eventArgs.Using.Transform.WorldPosition = eventArgs.Target.Transform.WorldPosition + _positionOffset; + else + eventArgs.Using.Transform.WorldPosition = eventArgs.ClickLocation.Position; return true; } } diff --git a/Content.Server/GameObjects/Components/PottedPlantHideComponent.cs b/Content.Server/GameObjects/Components/PottedPlantHideComponent.cs index cc924cffd4..288fa0242d 100644 --- a/Content.Server/GameObjects/Components/PottedPlantHideComponent.cs +++ b/Content.Server/GameObjects/Components/PottedPlantHideComponent.cs @@ -17,74 +17,33 @@ namespace Content.Server.GameObjects.Components [RegisterComponent] public class PottedPlantHideComponent : Component, IInteractUsing, IInteractHand { - private const int MaxItemSize = (int) ReferenceSizes.Pocket; - public override string Name => "PottedPlantHide"; - [ViewVariables] private ContainerSlot _itemContainer; + [ViewVariables] private SecretStashComponent _secretStash = default!; public override void Initialize() { base.Initialize(); - - _itemContainer = - ContainerManagerComponent.Ensure("potted_plant_hide", Owner, out _); + _secretStash = Owner.EnsureComponent(); } async Task IInteractUsing.InteractUsing(InteractUsingEventArgs eventArgs) { - if (_itemContainer.ContainedEntity != null) - { - Rustle(); - - Owner.PopupMessage(eventArgs.User, Loc.GetString("There's already something in here?!")); - return false; - } - - var size = eventArgs.Using.GetComponent().Size; - - // TODO: use proper text macro system for this. - - if (size > MaxItemSize) - { - Owner.PopupMessage(eventArgs.User, - Loc.GetString("{0:TheName} is too big to fit in the plant!", eventArgs.Using)); - return false; - } - - var handsComponent = eventArgs.User.GetComponent(); - - if (!handsComponent.Drop(eventArgs.Using, _itemContainer)) - { - return false; - } - - Owner.PopupMessage(eventArgs.User, Loc.GetString("You hide {0:theName} in the plant.", eventArgs.Using)); Rustle(); - return true; + return _secretStash.TryHideItem(eventArgs.User, eventArgs.Using); } bool IInteractHand.InteractHand(InteractHandEventArgs eventArgs) { Rustle(); - if (_itemContainer.ContainedEntity == null) + var gotItem = _secretStash.TryGetItem(eventArgs.User); + if (!gotItem) { Owner.PopupMessage(eventArgs.User, Loc.GetString("You root around in the roots.")); - return true; } - Owner.PopupMessage(eventArgs.User, Loc.GetString("There was something in there!")); - if (eventArgs.User.TryGetComponent(out HandsComponent hands)) - { - hands.PutInHandOrDrop(_itemContainer.ContainedEntity.GetComponent()); - } - else if (_itemContainer.Remove(_itemContainer.ContainedEntity)) - { - _itemContainer.ContainedEntity.Transform.Coordinates = Owner.Transform.Coordinates; - } - - return true; + return gotItem; } private void Rustle() diff --git a/Content.Server/GameObjects/Components/Power/AME/AMEControllerComponent.cs b/Content.Server/GameObjects/Components/Power/AME/AMEControllerComponent.cs index eb6bf1e9fc..c42007437d 100644 --- a/Content.Server/GameObjects/Components/Power/AME/AMEControllerComponent.cs +++ b/Content.Server/GameObjects/Components/Power/AME/AMEControllerComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System.Linq; using System.Threading.Tasks; using Content.Server.GameObjects.Components.GUI; @@ -59,11 +59,6 @@ namespace Content.Server.GameObjects.Components.Power.AME Owner.TryGetComponent(out _appearance); - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged += OnPowerChanged; - } - Owner.TryGetComponent(out _powerSupplier); _injecting = false; @@ -71,6 +66,17 @@ namespace Content.Server.GameObjects.Components.Power.AME _jarSlot = ContainerManagerComponent.Ensure($"{Name}-fuelJarContainer", Owner); } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case PowerChangedMessage powerChanged: + OnPowerChanged(powerChanged); + break; + } + } + internal void OnUpdate(float frameTime) { if(!_injecting) @@ -127,7 +133,7 @@ namespace Content.Server.GameObjects.Components.Power.AME } } - private void OnPowerChanged(object? sender, PowerStateEventArgs e) + private void OnPowerChanged(PowerChangedMessage e) { UpdateUserInterface(); } diff --git a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerProviderComponent.cs b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerProviderComponent.cs index 3e3549fd10..f1c14043dd 100644 --- a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerProviderComponent.cs +++ b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerProviderComponent.cs @@ -1,6 +1,6 @@ -using System; +using System; using System.Collections.Generic; -using System.Linq; +using System.Diagnostics; using Content.Server.GameObjects.Components.NodeContainer.NodeGroups; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; @@ -18,7 +18,11 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents void RemoveReceiver(PowerReceiverComponent receiver); + void UpdateReceiverLoad(int oldLoad, int newLoad); + public IEntity ProviderOwner { get; } + + public bool HasApcPower { get; } } [RegisterComponent] @@ -28,6 +32,9 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents public IEntity ProviderOwner => Owner; + [ViewVariables] + public bool HasApcPower => Net.Powered; + /// /// The max distance this can transmit power to s from. /// @@ -49,14 +56,23 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents public void AddReceiver(PowerReceiverComponent receiver) { + var oldLoad = GetTotalLoad(); _linkedReceivers.Add(receiver); - Net.UpdatePowerProviderReceivers(this); + var newLoad = oldLoad + receiver.Load; + Net.UpdatePowerProviderReceivers(this, oldLoad, newLoad); } public void RemoveReceiver(PowerReceiverComponent receiver) { + var oldLoad = GetTotalLoad(); _linkedReceivers.Remove(receiver); - Net.UpdatePowerProviderReceivers(this); + var newLoad = oldLoad - receiver.Load; + Net.UpdatePowerProviderReceivers(this, oldLoad, newLoad); + } + + public void UpdateReceiverLoad(int oldLoad, int newLoad) + { + Net.UpdatePowerProviderReceivers(this, oldLoad, newLoad); } public override void ExposeData(ObjectSerializer serializer) @@ -82,8 +98,6 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents { receiver.ClearProvider(); } - _linkedReceivers = new List(); - Net.UpdatePowerProviderReceivers(this); foreach (var receiver in receivers) { receiver.TryFindAndSetProvider(); @@ -95,12 +109,21 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents { var nearbyEntities = Owner.EntityManager .GetEntitiesInRange(Owner, PowerTransferRange); - return nearbyEntities.Select(entity => entity.TryGetComponent(out var receiver) ? receiver : null) - .Where(receiver => receiver != null) - .Where(receiver => receiver.Connectable) - .Where(receiver => receiver.NeedsProvider) - .Where(receiver => receiver.Owner.Transform.Coordinates.TryDistance(Owner.EntityManager, Owner.Transform.Coordinates, out var distance) && distance < Math.Min(PowerTransferRange, receiver.PowerReceptionRange)) - .ToList(); + + var receivers = new List(); + + foreach (var entity in nearbyEntities) + { + if (entity.TryGetComponent(out var receiver) && + receiver.Connectable && + receiver.NeedsProvider && + receiver.Owner.Transform.Coordinates.TryDistance(Owner.EntityManager, Owner.Transform.Coordinates, out var distance) && + distance < Math.Min(PowerTransferRange, receiver.PowerReceptionRange)) + { + receivers.Add(receiver); + } + } + return receivers; } protected override void AddSelfToNet(IApcNet apcNet) @@ -115,19 +138,40 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents private void SetPowerTransferRange(int newPowerTransferRange) { - foreach (var receiver in _linkedReceivers.ToArray()) + var receivers = _linkedReceivers.ToArray(); + + foreach (var receiver in receivers) { receiver.ClearProvider(); } _powerTransferRange = newPowerTransferRange; - _linkedReceivers = FindAvailableReceivers(); - Net.UpdatePowerProviderReceivers(this); + + foreach (var receiver in receivers) + { + receiver.TryFindAndSetProvider(); + } + } + + private int GetTotalLoad() + { + var load = 0; + foreach (var receiver in _linkedReceivers) + { + load += receiver.Load; + } + return load; } private class NullPowerProvider : IPowerProvider { + /// + /// It is important that this returns false, so s with a have no power. + /// + public bool HasApcPower => false; + public void AddReceiver(PowerReceiverComponent receiver) { } public void RemoveReceiver(PowerReceiverComponent receiver) { } + public void UpdateReceiverLoad(int oldLoad, int newLoad) { } public IEntity ProviderOwner => default; } } diff --git a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverComponent.cs b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverComponent.cs index c84c416a04..c20495e5b1 100644 --- a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverComponent.cs +++ b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using Content.Server.GameObjects.Components.NodeContainer.NodeGroups; using Content.Shared.GameObjects.Components.Power; @@ -8,6 +8,7 @@ using Robust.Server.Interfaces.GameObjects; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.ComponentDependencies; using Robust.Shared.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Serialization; @@ -28,14 +29,14 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents public override string Name => "PowerReceiver"; - public event EventHandler? OnPowerStateChanged; - [ViewVariables] public bool Powered => (HasApcPower || !NeedsPower) && !PowerDisabled; + /// + /// If this is being powered by an Apc. + /// [ViewVariables] - public bool HasApcPower { get => _hasApcPower; set => SetHasApcPower(value); } - private bool _hasApcPower; + public bool HasApcPower { get; private set; } /// /// The max distance from a that this can receive power from. @@ -98,16 +99,11 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents if (_physicsComponent != null) { AnchorUpdate(); - _physicsComponent.AnchoredChanged += AnchorUpdate; } } - public override void OnRemove() + public override void OnRemove() { - if (_physicsComponent != null) - { - _physicsComponent.AnchoredChanged -= AnchorUpdate; - } _provider.RemoveReceiver(this); base.OnRemove(); } @@ -120,6 +116,25 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents } } + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) + { + case AnchoredChangedMessage: + AnchorUpdate(); + break; + } + } + + public void ApcPowerChanged() + { + var oldPowered = Powered; + HasApcPower = Provider.HasApcPower; + if (Powered != oldPowered) + OnNewPowerState(); + } + private bool TryFindAvailableProvider(out IPowerProvider foundProvider) { var nearbyEntities = _serverEntityManager @@ -151,7 +166,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents _provider.RemoveReceiver(this); _provider = PowerProviderComponent.NullProvider; NeedsProvider = true; - HasApcPower = false; + ApcPowerChanged(); } private void SetProvider(IPowerProvider newProvider) @@ -160,16 +175,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents _provider = newProvider; newProvider.AddReceiver(this); NeedsProvider = false; - } - - private void SetHasApcPower(bool newHasApcPower) - { - var oldPowered = Powered; - _hasApcPower = newHasApcPower; - if (oldPowered != Powered) - { - OnNewPowerState(); - } + ApcPowerChanged(); } private void SetPowerReceptionRange(int newPowerReceptionRange) @@ -181,6 +187,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents private void SetLoad(int newLoad) { + Provider.UpdateReceiverLoad(Load, newLoad); _load = newLoad; } @@ -206,7 +213,8 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents private void OnNewPowerState() { - OnPowerStateChanged?.Invoke(this, new PowerStateEventArgs(Powered)); + SendMessage(new PowerChangedMessage(Powered)); + if (Owner.TryGetComponent(out var appearance)) { appearance.SetData(PowerDeviceVisuals.Powered, Powered); @@ -227,21 +235,21 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents ClearProvider(); } } + /// ///Adds some markup to the examine text of whatever object is using this component to tell you if it's powered or not, even if it doesn't have an icon state to do this for you. /// - public void Examine(FormattedMessage message, bool inDetailsRange) { message.AddMarkup(Loc.GetString("It appears to be {0}.", Powered ? "[color=darkgreen]powered[/color]" : "[color=darkred]un-powered[/color]")); } } - public class PowerStateEventArgs : EventArgs + public class PowerChangedMessage : ComponentMessage { public readonly bool Powered; - public PowerStateEventArgs(bool powered) + public PowerChangedMessage(bool powered) { Powered = powered; } diff --git a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/BaseCharger.cs b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/BaseCharger.cs index 9cc926434d..09d6046037 100644 --- a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/BaseCharger.cs +++ b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/BaseCharger.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Threading.Tasks; using Content.Server.GameObjects.Components.GUI; @@ -53,19 +53,21 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece Owner.EnsureComponent(); _container = ContainerManagerComponent.Ensure($"{Name}-powerCellContainer", Owner); // Default state in the visualizer is OFF, so when this gets powered on during initialization it will generally show empty - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) + } + + public override void HandleMessage(ComponentMessage message, IComponent? component) + { + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged += PowerUpdate; + case PowerChangedMessage powerChanged: + PowerUpdate(powerChanged); + break; } } public override void OnRemove() { - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) - { - receiver.OnPowerStateChanged -= PowerUpdate; - } - _heldBattery = null; base.OnRemove(); @@ -114,7 +116,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece UpdateStatus(); } - private void PowerUpdate(object? sender, PowerStateEventArgs eventArgs) + private void PowerUpdate(PowerChangedMessage eventArgs) { UpdateStatus(); } diff --git a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/EmergencyLightComponent.cs b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/EmergencyLightComponent.cs index d52173e7d2..bf3044366b 100644 --- a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/EmergencyLightComponent.cs +++ b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/EmergencyLightComponent.cs @@ -1,8 +1,9 @@ -using System; +using System; using System.Collections.Generic; using Content.Shared.GameObjects.EntitySystems; using Robust.Server.GameObjects; using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Localization; using Robust.Shared.Serialization; using Robust.Shared.Utility; @@ -32,7 +33,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece } } - private EmergencyLightState _state = EmergencyLightState.Charging; + private EmergencyLightState _state = EmergencyLightState.Empty; [ViewVariables(VVAccess.ReadWrite)] private float _wattage; @@ -52,7 +53,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece /// /// For attaching UpdateState() to events. /// - public void UpdateState(object sender, EventArgs e) + public void UpdateState(PowerChangedMessage e) { UpdateState(); } @@ -136,24 +137,15 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece } } - public override void Initialize() + public override void HandleMessage(ComponentMessage message, IComponent component) { - base.Initialize(); - - Owner.EnsureComponentWarn(out PowerReceiverComponent receiver); - - receiver.OnPowerStateChanged += UpdateState; - State = EmergencyLightState.Charging; - } - - public override void OnRemove() - { - if (Owner.TryGetComponent(out PowerReceiverComponent receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged -= UpdateState; + case PowerChangedMessage powerChanged: + UpdateState(powerChanged); + break; } - - base.OnRemove(); } void IExamine.Examine(FormattedMessage message, bool inDetailsRange) diff --git a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/LightBulbComponent.cs b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/LightBulbComponent.cs index ed4748fbf1..b7d72b392b 100644 --- a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/LightBulbComponent.cs +++ b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/LightBulbComponent.cs @@ -1,5 +1,6 @@ -using System; +using System; using Content.Shared.Audio; +using Content.Shared.GameObjects.EntitySystems; using Content.Shared.Interfaces.GameObjects.Components; using Robust.Server.GameObjects; using Robust.Server.GameObjects.EntitySystems; @@ -32,7 +33,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece /// Component that represents a light bulb. Can be broken, or burned, which turns them mostly useless. /// [RegisterComponent] - public class LightBulbComponent : Component, ILand + public class LightBulbComponent : Component, ILand, IBreakAct { [Dependency] private readonly IPrototypeManager _prototypeManager = default!; [Dependency] private readonly IRobustRandom _random = default!; @@ -121,15 +122,18 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece public void Land(LandEventArgs eventArgs) { - if (State == LightBulbState.Broken) - return; - var soundCollection = _prototypeManager.Index("glassbreak"); + var soundCollection = _prototypeManager.Index("GlassBreak"); var file = _random.Pick(soundCollection.PickFiles); EntitySystem.Get().PlayFromEntity(file, Owner); State = LightBulbState.Broken; } + + public void OnBreak(BreakageEventArgs eventArgs) + { + State = LightBulbState.Broken; + } } } diff --git a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/PoweredLightComponent.cs b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/PoweredLightComponent.cs index 224e288001..48f167d4fa 100644 --- a/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/PoweredLightComponent.cs +++ b/Content.Server/GameObjects/Components/Power/ApcNetComponents/PowerReceiverUsers/PoweredLightComponent.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Threading.Tasks; using Content.Server.GameObjects.Components.GUI; using Content.Server.GameObjects.Components.Items.Storage; @@ -209,19 +209,18 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerRece { base.Initialize(); - Owner.EnsureComponent().OnPowerStateChanged += UpdateLight; - _lightBulbContainer = ContainerManagerComponent.Ensure("light_bulb", Owner); } - public override void OnRemove() + public override void HandleMessage(ComponentMessage message, IComponent component) { - if (Owner.TryGetComponent(out PowerReceiverComponent receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged -= UpdateLight; + case PowerChangedMessage: + UpdateLight(); + break; } - - base.OnRemove(); } void IMapInit.MapInit() diff --git a/Content.Server/GameObjects/Components/Power/PowerNetComponents/RadiationCollectorComponent.cs b/Content.Server/GameObjects/Components/Power/PowerNetComponents/RadiationCollectorComponent.cs index 51d378b5d0..b6b63ffc2c 100644 --- a/Content.Server/GameObjects/Components/Power/PowerNetComponents/RadiationCollectorComponent.cs +++ b/Content.Server/GameObjects/Components/Power/PowerNetComponents/RadiationCollectorComponent.cs @@ -9,6 +9,7 @@ using Content.Shared.Interfaces.GameObjects.Components; using Robust.Server.GameObjects; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Timing; using Robust.Shared.IoC; using Robust.Shared.Localization; @@ -36,7 +37,17 @@ namespace Content.Server.GameObjects.Components.Power.PowerNetComponents Logger.Error("RadiationCollectorComponent created with no CollidableComponent"); return; } - _collidableComponent.AnchoredChanged += OnAnchoredChanged; + } + + public override void HandleMessage(ComponentMessage message, IComponent component) + { + base.HandleMessage(message, component); + switch (message) + { + case AnchoredChangedMessage: + OnAnchoredChanged(); + break; + } } private void OnAnchoredChanged() diff --git a/Content.Server/GameObjects/Components/Projectiles/ThrownItemComponent.cs b/Content.Server/GameObjects/Components/Projectiles/ThrownItemComponent.cs index 8caf6ca3c6..fb5f23ca4b 100644 --- a/Content.Server/GameObjects/Components/Projectiles/ThrownItemComponent.cs +++ b/Content.Server/GameObjects/Components/Projectiles/ThrownItemComponent.cs @@ -34,7 +34,7 @@ namespace Content.Server.GameObjects.Components.Projectiles void ICollideBehavior.CollideWith(IEntity entity) { - if (!_shouldCollide) return; + if (!_shouldCollide || entity.Deleted) return; if (entity.TryGetComponent(out PhysicsComponent collid)) { if (!collid.Hard) // ignore non hard @@ -45,16 +45,12 @@ namespace Content.Server.GameObjects.Components.Projectiles // Raise an event. EntitySystem.Get().ThrowCollideInteraction(User, Owner, entity, Owner.Transform.Coordinates); } - if (entity.TryGetComponent(out IDamageableComponent damage)) - { - damage.ChangeDamage(DamageType.Blunt, 10, false, Owner); - } // Stop colliding with mobs, this mimics not having enough velocity to do damage // after impacting the first object. // For realism this should actually be changed when the velocity of the object is less than a threshold. // This would allow ricochets off walls, and weird gravity effects from slowing the object. - if (Owner.TryGetComponent(out IPhysicsComponent body) && body.PhysicsShapes.Count >= 1) + if (!Owner.Deleted && Owner.TryGetComponent(out IPhysicsComponent body) && body.PhysicsShapes.Count >= 1) { _shouldCollide = false; } diff --git a/Content.Server/GameObjects/Components/Recycling/RecyclableComponent.cs b/Content.Server/GameObjects/Components/Recycling/RecyclableComponent.cs new file mode 100644 index 0000000000..ccd69fb4b6 --- /dev/null +++ b/Content.Server/GameObjects/Components/Recycling/RecyclableComponent.cs @@ -0,0 +1,52 @@ +#nullable enable +using System; +using Robust.Shared.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Server.GameObjects.Components.Recycling +{ + [RegisterComponent] + public class RecyclableComponent : Component + { + /// + /// The prototype that will be spawned on recycle. + /// + private string? _prototype; + + /// + /// The amount of things that will be spawned on recycle. + /// + private int _amount; + + /// + /// Whether this is "safe" to recycle or not. + /// If this is false, the recycler's safety must be disabled to recycle it. + /// + private bool _safe; + public override string Name => "Recyclable"; + + public bool Safe => _safe; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref _prototype, "prototype", null); + serializer.DataField(ref _safe, "safe", true); + serializer.DataField(ref _amount, "amount", 1); + } + + public void Recycle(float efficiency = 1f) + { + if(!string.IsNullOrEmpty(_prototype)) + { + for (var i = 0; i < Math.Max(_amount * efficiency, 1); i++) + { + Owner.EntityManager.SpawnEntity(_prototype, Owner.Transform.Coordinates); + } + + } + + Owner.Delete(); + } + } +} diff --git a/Content.Server/GameObjects/Components/Recycling/RecyclerComponent.cs b/Content.Server/GameObjects/Components/Recycling/RecyclerComponent.cs index 64485491b5..dc0acb8636 100644 --- a/Content.Server/GameObjects/Components/Recycling/RecyclerComponent.cs +++ b/Content.Server/GameObjects/Components/Recycling/RecyclerComponent.cs @@ -1,19 +1,27 @@ #nullable enable using System.Collections.Generic; -using System.Diagnostics.CodeAnalysis; using Content.Server.GameObjects.Components.Conveyor; using Content.Server.GameObjects.Components.Items.Storage; using Content.Server.GameObjects.Components.Power.ApcNetComponents; -using Content.Shared.Construction; +using Content.Server.Interfaces.Chat; +using Content.Server.Interfaces.GameObjects; +using Content.Server.Interfaces.GameTicking; +using Content.Server.Players; +using Content.Server.Utility; using Content.Shared.GameObjects.Components.Body; +using Content.Shared.GameObjects.Components.Damage; using Content.Shared.GameObjects.Components.Recycling; +using Content.Shared.Interfaces; using Content.Shared.Physics; using Robust.Server.GameObjects; +using Robust.Server.Player; using Robust.Shared.Containers; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.Components.Map; using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; +using Robust.Shared.Localization; using Robust.Shared.Maths; using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; @@ -22,7 +30,7 @@ namespace Content.Server.GameObjects.Components.Recycling { // TODO: Add sound and safe beep [RegisterComponent] - public class RecyclerComponent : Component, ICollideBehavior + public class RecyclerComponent : Component, ICollideBehavior, ISuicideAct { public override string Name => "Recycler"; @@ -31,14 +39,14 @@ namespace Content.Server.GameObjects.Components.Recycling /// /// Whether or not sentient beings will be recycled /// - [ViewVariables] + [ViewVariables(VVAccess.ReadWrite)] private bool _safe; /// /// The percentage of material that will be recovered /// - [ViewVariables] - private int _efficiency; // TODO + [ViewVariables(VVAccess.ReadWrite)] + private float _efficiency; private bool Powered => !Owner.TryGetComponent(out PowerReceiverComponent? receiver) || @@ -62,18 +70,10 @@ namespace Content.Server.GameObjects.Components.Recycling private bool CanGib(IEntity entity) { + // We suppose this entity has a Recyclable component. return entity.HasComponent() && !_safe && Powered; } - private bool CanRecycle(IEntity entity, [NotNullWhen(true)] out ConstructionPrototype? prototype) - { - prototype = null; - - // TODO CONSTRUCTION fix this - - return Powered; - } - private void Recycle(IEntity entity) { if (!_intersecting.Contains(entity)) @@ -82,21 +82,19 @@ namespace Content.Server.GameObjects.Components.Recycling } // TODO: Prevent collision with recycled items + + // Can only recycle things that are recyclable... And also check the safety of the thing to recycle. + if (!entity.TryGetComponent(out RecyclableComponent? recyclable) || !recyclable.Safe && _safe) return; + + // Mobs are a special case! if (CanGib(entity)) { - entity.Delete(); // TODO: Gib + entity.GetComponent().Gib(true); Bloodstain(); return; } - if (!CanRecycle(entity, out var prototype)) - { - return; - } - - // TODO CONSTRUCTION fix this - - entity.Delete(); + recyclable.Recycle(_efficiency); } private bool CanRun() @@ -179,12 +177,34 @@ namespace Content.Server.GameObjects.Components.Recycling base.ExposeData(serializer); serializer.DataField(ref _safe, "safe", true); - serializer.DataField(ref _efficiency, "efficiency", 25); + serializer.DataField(ref _efficiency, "efficiency", 0.25f); } void ICollideBehavior.CollideWith(IEntity collidedWith) { Recycle(collidedWith); } + + public SuicideKind Suicide(IEntity victim, IChatManager chat) + { + var mind = victim.PlayerSession()?.ContentData()?.Mind; + + if (mind != null) + { + IoCManager.Resolve().OnGhostAttempt(mind, false); + mind.OwnedEntity.PopupMessage(Loc.GetString("You recycle yourself!")); + } + + victim.PopupMessageOtherClients(Loc.GetString("{0:theName} tries to recycle {0:themself}!", victim)); + + if (victim.TryGetComponent(out var body)) + { + body.Gib(true); + } + + Bloodstain(); + + return SuicideKind.Bloodloss; + } } } diff --git a/Content.Server/GameObjects/Components/Singularity/ContainmentFieldGeneratorComponent.cs b/Content.Server/GameObjects/Components/Singularity/ContainmentFieldGeneratorComponent.cs index 62423d18bc..d06732e2ee 100644 --- a/Content.Server/GameObjects/Components/Singularity/ContainmentFieldGeneratorComponent.cs +++ b/Content.Server/GameObjects/Components/Singularity/ContainmentFieldGeneratorComponent.cs @@ -7,6 +7,7 @@ using Content.Server.Utility; using Content.Shared.Physics; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; +using Robust.Shared.GameObjects.ComponentDependencies; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Physics; using Robust.Shared.IoC; @@ -14,6 +15,7 @@ using Robust.Shared.Log; using Robust.Shared.Maths; using Robust.Shared.Physics; using Robust.Shared.ViewVariables; +using Robust.Server.GameObjects; namespace Content.Server.GameObjects.Components.Singularity { @@ -63,7 +65,8 @@ namespace Content.Server.GameObjects.Components.Singularity } } - private PhysicsComponent? _collidableComponent; + [ComponentDependency] private readonly PhysicsComponent? _collidableComponent = default; + [ComponentDependency] private readonly PointLightComponent? _pointLightComponent = default; private Tuple? _connection1; private Tuple? _connection2; @@ -71,18 +74,17 @@ namespace Content.Server.GameObjects.Components.Singularity public bool CanRepell(IEntity toRepell) => _connection1?.Item2?.CanRepell(toRepell) == true || _connection2?.Item2?.CanRepell(toRepell) == true; - public override void Initialize() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - base.Initialize(); - if (!Owner.TryGetComponent(out _collidableComponent)) + base.HandleMessage(message, component); + switch (message) { - Logger.Error("ContainmentFieldGeneratorComponent created with no CollidableComponent"); - return; + case AnchoredChangedMessage: + OnAnchoredChanged(); + break; } - _collidableComponent.AnchoredChanged += OnAnchoredChanged; } - private void OnAnchoredChanged() { if(_collidableComponent?.Anchored == true) @@ -159,7 +161,7 @@ namespace Content.Server.GameObjects.Components.Singularity { Logger.Error("When trying to connect two Containmentfieldgenerators, the second one already had two connection but the check didn't catch it"); } - + UpdateConnectionLights(); return true; } @@ -171,9 +173,12 @@ namespace Content.Server.GameObjects.Components.Singularity if (_connection1?.Item2 == connection) { _connection1 = null; - }else if (_connection2?.Item2 == connection) + UpdateConnectionLights(); + } + else if (_connection2?.Item2 == connection) { _connection2 = null; + UpdateConnectionLights(); } else if(connection != null) { @@ -189,6 +194,15 @@ namespace Content.Server.GameObjects.Components.Singularity } } + public void UpdateConnectionLights() + { + if (_pointLightComponent != null) + { + bool hasAnyConnection = (_connection1 != null) || (_connection2 != null); + _pointLightComponent.Enabled = hasAnyConnection; + } + } + public override void OnRemove() { _connection1?.Item2.Dispose(); diff --git a/Content.Server/GameObjects/Components/Singularity/EmitterComponent.cs b/Content.Server/GameObjects/Components/Singularity/EmitterComponent.cs index c396bb74a5..1707e94086 100644 --- a/Content.Server/GameObjects/Components/Singularity/EmitterComponent.cs +++ b/Content.Server/GameObjects/Components/Singularity/EmitterComponent.cs @@ -16,6 +16,7 @@ using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.ComponentDependencies; using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Random; using Robust.Shared.IoC; using Robust.Shared.Localization; @@ -43,7 +44,6 @@ namespace Content.Server.GameObjects.Components.Singularity private CancellationTokenSource? _timerCancel; - private PhysicsComponent _collidableComponent = default!; private PowerConsumerComponent _powerConsumer = default!; // whether the power switch is in "on" @@ -79,19 +79,11 @@ namespace Content.Server.GameObjects.Components.Singularity { base.Initialize(); - if (!Owner.TryGetComponent(out _collidableComponent!)) - { - Logger.Error($"EmitterComponent {Owner} created with no CollidableComponent"); - return; - } - if (!Owner.TryGetComponent(out _powerConsumer!)) { Logger.Error($"EmitterComponent {Owner} created with no PowerConsumerComponent"); return; } - - _collidableComponent.AnchoredChanged += OnAnchoredChanged; _powerConsumer.OnReceivedPowerChanged += OnReceivedPowerChanged; } @@ -112,9 +104,20 @@ namespace Content.Server.GameObjects.Components.Singularity } } - private void OnAnchoredChanged() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - if (_collidableComponent.Anchored) + base.HandleMessage(message, component); + switch (message) + { + case AnchoredChangedMessage anchoredChanged: + OnAnchoredChanged(anchoredChanged); + break; + } + } + + private void OnAnchoredChanged(AnchoredChangedMessage anchoredChanged) + { + if (anchoredChanged.Anchored) Owner.SnapToGrid(); } diff --git a/Content.Server/GameObjects/Components/Singularity/SingularityComponent.cs b/Content.Server/GameObjects/Components/Singularity/SingularityComponent.cs index a84fad68ac..a21601b660 100644 --- a/Content.Server/GameObjects/Components/Singularity/SingularityComponent.cs +++ b/Content.Server/GameObjects/Components/Singularity/SingularityComponent.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using Content.Server.GameObjects.Components.StationEvents; +using Content.Server.GameObjects.Components.Observer; using Content.Shared.GameObjects; using Content.Shared.Physics; using Robust.Server.GameObjects; @@ -159,7 +160,7 @@ namespace Content.Server.GameObjects.Components.Singularity } private readonly List _previousPulledEntities = new(); - public void PullUpdate() + public void CleanupPulledEntities() { foreach (var previousPulledEntity in _previousPulledEntities) { @@ -169,11 +170,16 @@ namespace Content.Server.GameObjects.Components.Singularity controller.StopPull(); } _previousPulledEntities.Clear(); + } + public void PullUpdate() + { + CleanupPulledEntities(); var entitiesToPull = Owner.EntityManager.GetEntitiesInRange(Owner.Transform.Coordinates, Level * 10); foreach (var entity in entitiesToPull) { if (!entity.TryGetComponent(out var collidableComponent)) continue; + if (entity.HasComponent()) continue; var controller = collidableComponent.EnsureController(); if(Owner.Transform.Coordinates.EntityId != entity.Transform.Coordinates.EntityId) continue; var vec = (Owner.Transform.Coordinates - entity.Transform.Coordinates).Position; @@ -215,6 +221,7 @@ namespace Content.Server.GameObjects.Components.Singularity { _playingSound?.Stop(); _audioSystem.PlayAtCoords("/Audio/Effects/singularity_collapse.ogg", Owner.Transform.Coordinates); + CleanupPulledEntities(); base.OnRemove(); } } diff --git a/Content.Server/GameObjects/Components/Stack/StackComponent.cs b/Content.Server/GameObjects/Components/Stack/StackComponent.cs index ffe054a9fa..5dbc8026f9 100644 --- a/Content.Server/GameObjects/Components/Stack/StackComponent.cs +++ b/Content.Server/GameObjects/Components/Stack/StackComponent.cs @@ -9,10 +9,8 @@ using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.Timers; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Map; -using Robust.Shared.Timers; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; @@ -86,42 +84,40 @@ namespace Content.Server.GameObjects.Components.Stack public async Task InteractUsing(InteractUsingEventArgs eventArgs) { - if (eventArgs.Using.TryGetComponent(out var stack)) + if (!eventArgs.Using.TryGetComponent(out var stack)) + return false; + + if (!stack.StackType.Equals(StackType)) { - if (!stack.StackType.Equals(StackType)) - { - return false; - } - - var toTransfer = Math.Min(Count, stack.AvailableSpace); - Count -= toTransfer; - stack.Add(toTransfer); - - var popupPos = eventArgs.ClickLocation; - if (popupPos == EntityCoordinates.Invalid) - { - popupPos = eventArgs.User.Transform.Coordinates; - } - - - if (toTransfer > 0) - { - popupPos.PopupMessage(eventArgs.User, $"+{toTransfer}"); - - if (stack.AvailableSpace == 0) - { - Owner.SpawnTimer(300, () => popupPos.PopupMessage(eventArgs.User, "Stack is now full.")); - } - - return true; - } - else if (toTransfer == 0 && stack.AvailableSpace == 0) - { - popupPos.PopupMessage(eventArgs.User, "Stack is already full."); - } + return false; } - return false; + var toTransfer = Math.Min(Count, stack.AvailableSpace); + Count -= toTransfer; + stack.Add(toTransfer); + + var popupPos = eventArgs.ClickLocation; + if (popupPos == EntityCoordinates.Invalid) + { + popupPos = eventArgs.User.Transform.Coordinates; + } + + + if (toTransfer > 0) + { + popupPos.PopupMessage(eventArgs.User, $"+{toTransfer}"); + + if (stack.AvailableSpace == 0) + { + eventArgs.Using.SpawnTimer(300, () => popupPos.PopupMessage(eventArgs.User, "Stack is now full.")); + } + } + else if (toTransfer == 0 && stack.AvailableSpace == 0) + { + popupPos.PopupMessage(eventArgs.User, "Stack is already full."); + } + + return true; } void IExamine.Examine(FormattedMessage message, bool inDetailsRange) diff --git a/Content.Server/GameObjects/Components/Strap/StrapComponent.cs b/Content.Server/GameObjects/Components/Strap/StrapComponent.cs index 253a299ca7..2642207c28 100644 --- a/Content.Server/GameObjects/Components/Strap/StrapComponent.cs +++ b/Content.Server/GameObjects/Components/Strap/StrapComponent.cs @@ -207,14 +207,13 @@ namespace Content.Server.GameObjects.Components.Strap parent = parent.Parent; } - var range = SharedInteractionSystem.InteractionRange / 2; - - if (!user.InRangeUnobstructed(component, range)) + if (!user.InRangeUnobstructed(component, buckle.Range)) { return; } data.Visibility = VerbVisibility.Visible; + data.IconTexture = buckle.BuckledTo == null ? "/Textures/Interface/VerbIcons/buckle.svg.96dpi.png" : "/Textures/Interface/VerbIcons/unbuckle.svg.96dpi.png"; data.Text = Loc.GetString(buckle.BuckledTo == null ? "Buckle" : "Unbuckle"); } @@ -228,5 +227,11 @@ namespace Content.Server.GameObjects.Components.Strap buckle.ToggleBuckle(user, component.Owner); } } + + public override bool DragDropOn(DragDropEventArgs eventArgs) + { + if (!eventArgs.Dragged.TryGetComponent(out BuckleComponent? buckleComponent)) return false; + return buckleComponent.TryBuckle(eventArgs.User, Owner); + } } } diff --git a/Content.Server/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs b/Content.Server/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs index 06ea81e88e..641080e643 100644 --- a/Content.Server/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs +++ b/Content.Server/GameObjects/Components/Suspicion/SuspicionRoleComponent.cs @@ -1,4 +1,5 @@ #nullable enable +using System; using System.Collections.Generic; using System.Linq; using Content.Server.GameObjects.Components.Mobs; @@ -6,12 +7,10 @@ using Content.Server.GameObjects.EntitySystems; using Content.Server.Mobs; using Content.Server.Mobs.Roles; using Content.Server.Mobs.Roles.Suspicion; -using Content.Shared.GameObjects.Components.Damage; using Content.Shared.GameObjects.Components.Mobs.State; using Content.Shared.GameObjects.Components.Suspicion; using Content.Shared.GameObjects.EntitySystems; using Robust.Server.GameObjects; -using Robust.Server.Interfaces.GameObjects; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; @@ -25,6 +24,7 @@ namespace Content.Server.GameObjects.Components.Suspicion public class SuspicionRoleComponent : SharedSuspicionRoleComponent, IExamine { private Role? _role; + [ViewVariables] private readonly HashSet _allies = new(); [ViewVariables] @@ -67,16 +67,12 @@ namespace Content.Server.GameObjects.Components.Suspicion public bool IsInnocent() { - return Owner.TryGetComponent(out MindComponent? mind) && - mind.HasMind && - mind.Mind!.HasRole(); + return !IsTraitor(); } public bool IsTraitor() { - return Owner.TryGetComponent(out MindComponent? mind) && - mind.HasMind && - mind.Mind!.HasRole(); + return Role?.Antagonist ?? false; } public void SyncRoles() @@ -98,36 +94,13 @@ namespace Content.Server.GameObjects.Components.Suspicion } _allies.Add(ally); - - if (KnowsAllies && Owner.TryGetComponent(out IActorComponent? actor)) - { - var channel = actor.playerSession.ConnectedClient; - DebugTools.AssertNotNull(channel); - - var message = new SuspicionAllyAddedMessage(ally.Owner.Uid); - - SendNetworkMessage(message, channel); - } } public bool RemoveAlly(SuspicionRoleComponent ally) { - if (ally == this) - { - return false; - } - if (_allies.Remove(ally)) { - if (KnowsAllies && Owner.TryGetComponent(out IActorComponent? actor)) - { - var channel = actor.playerSession.ConnectedClient; - DebugTools.AssertNotNull(channel); - - var message = new SuspicionAllyRemovedMessage(ally.Owner.Uid); - - SendNetworkMessage(message, channel); - } + Dirty(); return true; } @@ -139,46 +112,16 @@ namespace Content.Server.GameObjects.Components.Suspicion { _allies.Clear(); - foreach (var ally in allies) - { - if (ally == this) - { - continue; - } + _allies.UnionWith(allies.Where(a => a != this)); - _allies.Add(ally); - } - - if (!KnowsAllies || - !Owner.TryGetComponent(out IActorComponent? actor)) - { - return; - } - - var channel = actor.playerSession.ConnectedClient; - DebugTools.AssertNotNull(channel); - - var message = new SuspicionAlliesMessage(_allies.Select(role => role.Owner.Uid)); - - SendNetworkMessage(message, channel); + Dirty(); } public void ClearAllies() { _allies.Clear(); - if (!KnowsAllies || - !Owner.TryGetComponent(out IActorComponent? actor)) - { - return; - } - - var channel = actor.playerSession.ConnectedClient; - DebugTools.AssertNotNull(channel); - - var message = new SuspicionAlliesClearedMessage(); - - SendNetworkMessage(message, channel); + Dirty(); } void IExamine.Examine(FormattedMessage message, bool inDetailsRange) @@ -199,39 +142,28 @@ namespace Content.Server.GameObjects.Components.Suspicion message.AddMarkup(tooltip); } - public override void OnRemove() - { - Role = null; - base.OnRemove(); - } - public override ComponentState GetComponentState() { return Role == null - ? new SuspicionRoleComponentState(null, null) - : new SuspicionRoleComponentState(Role?.Name, Role?.Antagonist); + ? new SuspicionRoleComponentState(null, null, Array.Empty<(string, EntityUid)>()) + : new SuspicionRoleComponentState(Role?.Name, Role?.Antagonist, + _allies.Select(a => (a.Role!.Mind.CharacterName, a.Owner.Uid)).ToArray()); } public override void HandleMessage(ComponentMessage message, IComponent? component) { base.HandleMessage(message, component); - if (message is not RoleMessage msg || - msg.Role is not SuspicionRole role) - { - return; - } - switch (message) { - case PlayerAttachedMsg _: - case PlayerDetachedMsg _: + case PlayerAttachedMsg: + case PlayerDetachedMsg: SyncRoles(); break; - case RoleAddedMessage _: + case RoleAddedMessage {Role: SuspicionRole role}: Role = role; break; - case RoleRemovedMessage _: + case RoleRemovedMessage {Role: SuspicionRole}: Role = null; break; } diff --git a/Content.Server/GameObjects/Components/Trigger/TimerTrigger/OnUseTimerTriggerComponent.cs b/Content.Server/GameObjects/Components/Trigger/TimerTrigger/OnUseTimerTriggerComponent.cs index 800fc03f9e..e65cbfac74 100644 --- a/Content.Server/GameObjects/Components/Trigger/TimerTrigger/OnUseTimerTriggerComponent.cs +++ b/Content.Server/GameObjects/Components/Trigger/TimerTrigger/OnUseTimerTriggerComponent.cs @@ -1,11 +1,12 @@ -using System; +#nullable enable +using System; using Content.Server.GameObjects.EntitySystems; using Content.Shared.GameObjects.Components.Trigger; using Content.Shared.Interfaces.GameObjects.Components; using Robust.Server.GameObjects; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; -using Robust.Shared.IoC; using Robust.Shared.Serialization; namespace Content.Server.GameObjects.Components.Trigger.TimerTrigger @@ -13,11 +14,9 @@ namespace Content.Server.GameObjects.Components.Trigger.TimerTrigger [RegisterComponent] public class OnUseTimerTriggerComponent : Component, IUse { - [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!; - public override string Name => "OnUseTimerTrigger"; - private float _delay = 0f; + private float _delay; public override void ExposeData(ObjectSerializer serializer) { @@ -26,13 +25,17 @@ namespace Content.Server.GameObjects.Components.Trigger.TimerTrigger serializer.DataField(ref _delay, "delay", 0f); } + public void Trigger(IEntity user) + { + if (Owner.TryGetComponent(out AppearanceComponent? appearance)) + appearance.SetData(TriggerVisuals.VisualState, TriggerVisualState.Primed); + + EntitySystem.Get().HandleTimerTrigger(TimeSpan.FromSeconds(_delay), user, Owner); + } + bool IUse.UseEntity(UseEntityEventArgs eventArgs) { - var triggerSystem = _entitySystemManager.GetEntitySystem(); - if (Owner.TryGetComponent(out var appearance)) { - appearance.SetData(TriggerVisuals.VisualState, TriggerVisualState.Primed); - } - triggerSystem.HandleTimerTrigger(TimeSpan.FromSeconds(_delay), eventArgs.User, Owner); + Trigger(eventArgs.User); return true; } } diff --git a/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs b/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs index 64f2fea849..0f40ce414a 100644 --- a/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs +++ b/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -119,24 +119,24 @@ namespace Content.Server.GameObjects.Components.VendingMachines if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) { - receiver.OnPowerStateChanged += UpdatePower; TrySetVisualState(receiver.Powered ? VendingMachineVisualState.Normal : VendingMachineVisualState.Off); } InitializeFromPrototype(); } - public override void OnRemove() + public override void HandleMessage(ComponentMessage message, IComponent? component) { - if (Owner.TryGetComponent(out PowerReceiverComponent? receiver)) + base.HandleMessage(message, component); + switch (message) { - receiver.OnPowerStateChanged -= UpdatePower; + case PowerChangedMessage powerChanged: + UpdatePower(powerChanged); + break; } - - base.OnRemove(); } - private void UpdatePower(object? sender, PowerStateEventArgs args) + private void UpdatePower(PowerChangedMessage args) { var state = args.Powered ? VendingMachineVisualState.Normal : VendingMachineVisualState.Off; TrySetVisualState(state); diff --git a/Content.Server/GameObjects/Components/Watercloset/ToiletComponent.cs b/Content.Server/GameObjects/Components/Watercloset/ToiletComponent.cs new file mode 100644 index 0000000000..e2f0ff1376 --- /dev/null +++ b/Content.Server/GameObjects/Components/Watercloset/ToiletComponent.cs @@ -0,0 +1,174 @@ +#nullable enable +using Content.Server.GameObjects.Components.Interactable; +using Content.Server.GameObjects.Components.Items.Storage; +using Content.Server.GameObjects.Components.Strap; +using Content.Server.Interfaces.Chat; +using Content.Server.Interfaces.GameObjects; +using Content.Server.Utility; +using Content.Shared.Audio; +using Content.Shared.GameObjects.Components.Body; +using Content.Shared.GameObjects.Components.Body.Part; +using Content.Shared.GameObjects.Components.Interactable; +using Content.Shared.GameObjects.Components.Watercloset; +using Content.Shared.GameObjects.EntitySystems; +using Content.Shared.Interfaces; +using Content.Shared.Interfaces.GameObjects.Components; +using Robust.Server.GameObjects; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Server.Interfaces.GameObjects; +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.Random; +using Robust.Shared.Utility; +using Robust.Shared.ViewVariables; +using System.Threading.Tasks; + +namespace Content.Server.GameObjects.Components.Watercloset +{ + [RegisterComponent] + public class ToiletComponent : Component, IInteractUsing, + IInteractHand, IMapInit, IExamine, ISuicideAct + { + public sealed override string Name => "Toilet"; + + private const float PryLidTime = 1f; + + private bool _isPrying = false; + + [ViewVariables] public bool LidOpen { get; private set; } + [ViewVariables] public bool IsSeatUp { get; private set; } + + [ViewVariables] private SecretStashComponent _secretStash = default!; + + public override void Initialize() + { + base.Initialize(); + _secretStash = Owner.EnsureComponent(); + } + + public void MapInit() + { + // roll is toilet seat will be up or down + var random = IoCManager.Resolve(); + IsSeatUp = random.Prob(0.5f); + UpdateSprite(); + } + + public async Task InteractUsing(InteractUsingEventArgs eventArgs) + { + // are player trying place or lift of cistern lid? + if (eventArgs.Using.TryGetComponent(out ToolComponent? tool) + && tool!.HasQuality(ToolQuality.Prying)) + { + // check if someone is already prying this toilet + if (_isPrying) + return false; + _isPrying = true; + + if (!await tool.UseTool(eventArgs.User, Owner, PryLidTime, ToolQuality.Prying)) + { + _isPrying = false; + return false; + } + + _isPrying = false; + + // all cool - toggle lid + LidOpen = !LidOpen; + UpdateSprite(); + + return true; + } + // maybe player trying to hide something inside cistern? + else if (LidOpen) + { + return _secretStash.TryHideItem(eventArgs.User, eventArgs.Using); + } + + return false; + } + + public bool InteractHand(InteractHandEventArgs eventArgs) + { + // trying get something from stash? + if (LidOpen) + { + var gotItem = _secretStash.TryGetItem(eventArgs.User); + + if (gotItem) + return true; + } + + // just want to up/down seat? + // check that nobody seats on seat right now + if (Owner.TryGetComponent(out StrapComponent? strap)) + { + if (strap.BuckledEntities.Count != 0) + return false; + } + + ToggleToiletSeat(); + return true; + } + + public void Examine(FormattedMessage message, bool inDetailsRange) + { + if (inDetailsRange && LidOpen) + { + if (_secretStash.HasItemInside()) + { + message.AddMarkup(Loc.GetString("There is [color=darkgreen]something[/color] inside cistern!")); + } + } + } + + public void ToggleToiletSeat() + { + IsSeatUp = !IsSeatUp; + EntitySystem.Get() + .PlayFromEntity("/Audio/Effects/toilet_seat_down.ogg", Owner, AudioHelpers.WithVariation(0.05f)); + + UpdateSprite(); + } + + private void UpdateSprite() + { + if (Owner.TryGetComponent(out AppearanceComponent? appearance)) + { + appearance.SetData(ToiletVisuals.LidOpen, LidOpen); + appearance.SetData(ToiletVisuals.SeatUp, IsSeatUp); + } + } + + public SuicideKind Suicide(IEntity victim, IChatManager chat) + { + // check that victim even have head + if (victim.TryGetComponent(out var body) && + body.GetPartsOfType(BodyPartType.Head).Count != 0) + { + var othersMessage = Loc.GetString("{0:theName} sticks their head into {1:theName} and flushes it!", victim, Owner); + victim.PopupMessageOtherClients(othersMessage); + + var selfMessage = Loc.GetString("You stick your head into {0:theName} and flush it!", Owner); + victim.PopupMessage(selfMessage); + + return SuicideKind.Asphyxiation; + } + else + { + var othersMessage = Loc.GetString("{0:theName} bashes themselves with {1:theName}!", victim, Owner); + victim.PopupMessageOtherClients(othersMessage); + + var selfMessage = Loc.GetString("You bash yourself with {0:theName}!", Owner); + victim.PopupMessage(selfMessage); + + return SuicideKind.Blunt; + } + } + + } +} diff --git a/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs b/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs index 7630debec0..6fd87d0236 100644 --- a/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs +++ b/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using Content.Server.GameObjects.EntitySystems; @@ -65,7 +65,7 @@ namespace Content.Server.GameObjects.Components.Weapon.Melee serializer.DataField(this, x => x.Arc, "arc", "default"); serializer.DataField(this, x => x.ClickArc, "clickArc", "punch"); serializer.DataField(this, x => x._hitSound, "hitSound", "/Audio/Weapons/genhit1.ogg"); - serializer.DataField(this, x => x._missSound, "hitSound", "/Audio/Weapons/punchmiss.ogg"); + serializer.DataField(this, x => x._missSound, "missSound", "/Audio/Weapons/punchmiss.ogg"); serializer.DataField(this, x => x.ArcCooldownTime, "arcCooldownTime", 1f); serializer.DataField(this, x => x.CooldownTime, "cooldownTime", 1f); serializer.DataField(this, x => x.DamageType, "damageType", DamageType.Blunt); diff --git a/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerBatteryBarrelComponent.cs b/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerBatteryBarrelComponent.cs index 639ceae889..c6a7d7a178 100644 --- a/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerBatteryBarrelComponent.cs +++ b/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerBatteryBarrelComponent.cs @@ -8,7 +8,6 @@ using Content.Server.GameObjects.Components.Projectiles; using Content.Shared.Damage; using Content.Shared.GameObjects; using Content.Shared.GameObjects.Components.Weapons.Ranged.Barrels; -using Content.Shared.GameObjects.EntitySystems; using Content.Shared.GameObjects.EntitySystems.ActionBlocker; using Content.Shared.GameObjects.Verbs; using Content.Shared.Interfaces.GameObjects.Components; @@ -39,7 +38,7 @@ namespace Content.Server.GameObjects.Components.Weapon.Ranged.Barrels [ViewVariables] private string _ammoPrototype; [ViewVariables] public IEntity PowerCellEntity => _powerCellContainer.ContainedEntity; - public BatteryComponent PowerCell => _powerCellContainer.ContainedEntity.GetComponent(); + public BatteryComponent PowerCell => _powerCellContainer.ContainedEntity?.GetComponent(); private ContainerSlot _powerCellContainer; private ContainerSlot _ammoContainer; private string _powerCellPrototype; diff --git a/Content.Server/GameObjects/EntitySystems/AI/AiSystem.cs b/Content.Server/GameObjects/EntitySystems/AI/AiSystem.cs index 5a7e6bb994..36b56d93f3 100644 --- a/Content.Server/GameObjects/EntitySystems/AI/AiSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/AI/AiSystem.cs @@ -110,17 +110,18 @@ namespace Content.Server.GameObjects.EntitySystems.AI foreach (var processor in _awakeAi) { - if (count >= maxUpdates) - { - break; - } - - if (processor.SelfEntity.Deleted) + if (processor.SelfEntity.Deleted || + !processor.SelfEntity.HasComponent()) { toRemove.Add(processor); continue; } + if (count >= maxUpdates) + { + break; + } + processor.Update(frameTime); count++; } diff --git a/Content.Server/GameObjects/EntitySystems/AI/Pathfinding/PathfindingSystem.cs b/Content.Server/GameObjects/EntitySystems/AI/Pathfinding/PathfindingSystem.cs index 0c86d38db0..4c39b8b4fe 100644 --- a/Content.Server/GameObjects/EntitySystems/AI/Pathfinding/PathfindingSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/AI/Pathfinding/PathfindingSystem.cs @@ -306,7 +306,8 @@ namespace Content.Server.GameObjects.EntitySystems.AI.Pathfinding // If we've moved to space or the likes then remove us. if (moveEvent.Sender.Deleted || !moveEvent.Sender.TryGetComponent(out IPhysicsComponent physics) || - !PathfindingNode.IsRelevant(moveEvent.Sender, physics)) + !PathfindingNode.IsRelevant(moveEvent.Sender, physics) || + moveEvent.NewPosition.GetGridId(EntityManager) == GridId.Invalid) { HandleEntityRemove(moveEvent.Sender); return; diff --git a/Content.Server/GameObjects/EntitySystems/CargoConsoleSystem.cs b/Content.Server/GameObjects/EntitySystems/CargoConsoleSystem.cs index a12412a57d..ad6ffad73c 100644 --- a/Content.Server/GameObjects/EntitySystems/CargoConsoleSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/CargoConsoleSystem.cs @@ -1,10 +1,13 @@ -using System.Collections.Generic; -using Content.Server.Cargo; +using System.Collections.Generic; using Robust.Shared.GameObjects.Systems; +using Content.Shared.Prototypes.Cargo; +using Content.Shared.GameTicking; +using Content.Server.Cargo; +using Content.Server.GameObjects.Components.Cargo; namespace Content.Server.GameObjects.EntitySystems { - public class CargoConsoleSystem : EntitySystem + public class CargoConsoleSystem : EntitySystem, IResettingEntitySystem { /// /// How much time to wait (in seconds) before increasing bank accounts balance. @@ -23,6 +26,8 @@ namespace Content.Server.GameObjects.EntitySystems /// Stores all bank accounts. /// private readonly Dictionary _accountsDict = new(); + + private readonly Dictionary _databasesDict = new(); /// /// Used to assign IDs to bank accounts. Incremental counter. /// @@ -36,9 +41,12 @@ namespace Content.Server.GameObjects.EntitySystems /// public CargoBankAccount StationAccount => GetBankAccount(0); + public CargoOrderDatabase StationOrderDatabase => GetOrderDatabase(0); + public override void Initialize() { CreateBankAccount("Orbital Monitor IV Station", 100000); + CreateOrderDatabase(0); } public override void Update(float frameTime) @@ -56,6 +64,15 @@ namespace Content.Server.GameObjects.EntitySystems } } + public void Reset() + { + _accountsDict.Clear(); + _databasesDict.Clear(); + _timer = 0; + _accountIndex = 0; + Initialize(); + } + /// /// Creates a new bank account. /// @@ -66,6 +83,11 @@ namespace Content.Server.GameObjects.EntitySystems _accountIndex += 1; } + public void CreateOrderDatabase(int id) + { + _databasesDict.Add(id, new CargoOrderDatabase(id)); + } + /// /// Returns the bank account associated with the given ID. /// @@ -74,6 +96,11 @@ namespace Content.Server.GameObjects.EntitySystems return _accountsDict[id]; } + public CargoOrderDatabase GetOrderDatabase(int id) + { + return _databasesDict[id]; + } + /// /// Returns whether the account exists, eventually passing the account in the out parameter. /// @@ -82,6 +109,11 @@ namespace Content.Server.GameObjects.EntitySystems return _accountsDict.TryGetValue(id, out account); } + public bool TryGetOrderDatabase(int id, out CargoOrderDatabase database) + { + return _databasesDict.TryGetValue(id, out database); + } + /// /// Attempts to change the given account's balance. /// Returns false if there's no account associated with the given ID @@ -102,5 +134,58 @@ namespace Content.Server.GameObjects.EntitySystems account.Balance += amount; return true; } + + public bool AddOrder(int id, string requester, string reason, string productId, int amount, int payingAccountId) + { + if (amount < 1 || !TryGetOrderDatabase(id, out var database)) + return false; + database.AddOrder(requester, reason, productId, amount, payingAccountId); + SyncComponentsWithId(id); + return true; + } + + public bool RemoveOrder(int id, int orderNumber) + { + if (!TryGetOrderDatabase(id, out var database)) + return false; + database.RemoveOrder(orderNumber); + SyncComponentsWithId(id); + return true; + } + + public bool ApproveOrder(int id, int orderNumber) + { + if (!TryGetOrderDatabase(id, out var database)) + return false; + database.ApproveOrder(orderNumber); + SyncComponentsWithId(id); + return true; + } + + public List RemoveAndGetApprovedOrders(int id) + { + if (!TryGetOrderDatabase(id, out var database)) + return new List(); + var approvedOrders = database.SpliceApproved(); + SyncComponentsWithId(id); + return approvedOrders; + } + + public (int CurrentCapacity, int MaxCapacity) GetCapacity(int id) + { + if (!TryGetOrderDatabase(id, out var database)) + return (0,0); + return (database.CurrentOrderSize, database.MaxOrderSize); + } + + private void SyncComponentsWithId(int id) + { + foreach (var comp in ComponentManager.EntityQuery()) + { + if (!comp.ConnectedToDatabase || comp.Database.Id != id) + continue; + comp.Dirty(); + } + } } } diff --git a/Content.Server/GameObjects/EntitySystems/ChemicalReactionSystem.cs b/Content.Server/GameObjects/EntitySystems/ChemicalReactionSystem.cs new file mode 100644 index 0000000000..5d4ad7c567 --- /dev/null +++ b/Content.Server/GameObjects/EntitySystems/ChemicalReactionSystem.cs @@ -0,0 +1,19 @@ +#nullable enable +using Content.Shared.Chemistry; +using Content.Shared.GameObjects.EntitySystems; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Shared.Interfaces.GameObjects; + +namespace Content.Server.GameObjects.EntitySystems.NewFolder +{ + public class ChemicalReactionSystem : SharedChemicalReactionSystem + { + protected override void OnReaction(ReactionPrototype reaction, IEntity owner, ReagentUnit unitReactions) + { + base.OnReaction(reaction, owner, unitReactions); + + if (reaction.Sound != null) + Get().PlayAtCoords(reaction.Sound, owner.Transform.Coordinates); + } + } +} diff --git a/Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs b/Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs index 08119c5363..dde99dbddd 100644 --- a/Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs @@ -71,6 +71,7 @@ namespace Content.Server.GameObjects.EntitySystems.Click var interactionArgs = new DragDropEventArgs(performer, msg.DropLocation, dropped, target); // must be in range of both the target and the object they are drag / dropping + // Client also does this check but ya know we gotta validate it. if (!interactionArgs.InRangeUnobstructed(ignoreInsideBlocker: true, popup: true)) return; // trigger dragdrops on the dropped entity @@ -401,7 +402,7 @@ namespace Content.Server.GameObjects.EntitySystems.Click /// /// We didn't click on any entity, try doing an AfterInteract on the click location /// - private void InteractAfter(IEntity user, IEntity weapon, EntityCoordinates clickLocation, bool canReach) + private async void InteractAfter(IEntity user, IEntity weapon, EntityCoordinates clickLocation, bool canReach) { var message = new AfterInteractMessage(user, weapon, null, clickLocation, canReach); RaiseLocalEvent(message); @@ -411,11 +412,11 @@ namespace Content.Server.GameObjects.EntitySystems.Click } var afterInteracts = weapon.GetAllComponents().ToList(); - var afterInteractEventArgs = new AfterInteractEventArgs { User = user, ClickLocation = clickLocation, CanReach = canReach }; + var afterInteractEventArgs = new AfterInteractEventArgs(user, clickLocation, null, canReach); foreach (var afterInteract in afterInteracts) { - afterInteract.AfterInteract(afterInteractEventArgs); + await afterInteract.AfterInteract(afterInteractEventArgs); } } @@ -460,10 +461,7 @@ namespace Content.Server.GameObjects.EntitySystems.Click // If we aren't directly attacking the nearby object, lets see if our item has an after attack we can do var afterAttacks = weapon.GetAllComponents().ToList(); - var afterAttackEventArgs = new AfterInteractEventArgs - { - User = user, ClickLocation = clickLocation, Target = attacked, CanReach = true - }; + var afterAttackEventArgs = new AfterInteractEventArgs(user, clickLocation, attacked, canReach: true); foreach (var afterAttack in afterAttacks) { @@ -804,7 +802,7 @@ namespace Content.Server.GameObjects.EntitySystems.Click /// Will have two behaviors, either "uses" the weapon at range on the entity if it is capable of accepting that action /// Or it will use the weapon itself on the position clicked, regardless of what was there /// - public void RangedInteraction(IEntity user, IEntity weapon, IEntity attacked, EntityCoordinates clickLocation) + public async void RangedInteraction(IEntity user, IEntity weapon, IEntity attacked, EntityCoordinates clickLocation) { var rangedMsg = new RangedInteractMessage(user, weapon, attacked, clickLocation); RaiseLocalEvent(rangedMsg); @@ -833,15 +831,12 @@ namespace Content.Server.GameObjects.EntitySystems.Click return; var afterAttacks = weapon.GetAllComponents().ToList(); - var afterAttackEventArgs = new AfterInteractEventArgs - { - User = user, ClickLocation = clickLocation, Target = attacked, CanReach = false - }; + var afterAttackEventArgs = new AfterInteractEventArgs(user, clickLocation, attacked, canReach: false); //See if we have a ranged attack interaction foreach (var afterAttack in afterAttacks) { - afterAttack.AfterInteract(afterAttackEventArgs); + await afterAttack.AfterInteract(afterAttackEventArgs); } } diff --git a/Content.Server/GameObjects/EntitySystems/EmergencyLightSystem.cs b/Content.Server/GameObjects/EntitySystems/EmergencyLightSystem.cs index df30d568ed..0b9c65c9f0 100644 --- a/Content.Server/GameObjects/EntitySystems/EmergencyLightSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/EmergencyLightSystem.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using Content.Server.GameObjects.Components.Power.ApcNetComponents.PowerReceiverUsers; using JetBrains.Annotations; @@ -9,7 +9,7 @@ namespace Content.Server.GameObjects.EntitySystems [UsedImplicitly] internal sealed class EmergencyLightSystem : EntitySystem { - private readonly List _activeLights = new(); + private readonly HashSet _activeLights = new(); public override void Initialize() { @@ -21,19 +21,13 @@ namespace Content.Server.GameObjects.EntitySystems { switch (message.State) { + case EmergencyLightComponent.EmergencyLightState.On: case EmergencyLightComponent.EmergencyLightState.Charging: - if (_activeLights.Contains(message.Component)) - _activeLights.Add(message.Component); - + _activeLights.Add(message.Component); break; case EmergencyLightComponent.EmergencyLightState.Full: case EmergencyLightComponent.EmergencyLightState.Empty: _activeLights.Remove(message.Component); - break; - case EmergencyLightComponent.EmergencyLightState.On: - if (!_activeLights.Contains(message.Component)) - _activeLights.Add(message.Component); - break; default: throw new ArgumentOutOfRangeException(); @@ -42,10 +36,9 @@ namespace Content.Server.GameObjects.EntitySystems public override void Update(float frameTime) { - for (var i = _activeLights.Count - 1; i >= 0; i--) + foreach (var activeLight in _activeLights) { - var comp = _activeLights[i]; - comp.OnUpdate(frameTime); + activeLight.OnUpdate(frameTime); } } } diff --git a/Content.Server/GameObjects/EntitySystems/HandHeldLightSystem.cs b/Content.Server/GameObjects/EntitySystems/HandHeldLightSystem.cs index 3947f882a7..6ccfa9d180 100644 --- a/Content.Server/GameObjects/EntitySystems/HandHeldLightSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/HandHeldLightSystem.cs @@ -1,3 +1,5 @@ +using System.Collections.Generic; +using System.Linq; using Content.Server.GameObjects.Components.Interactable; using JetBrains.Annotations; using Robust.Shared.GameObjects.Systems; @@ -7,11 +9,41 @@ namespace Content.Server.GameObjects.EntitySystems [UsedImplicitly] internal sealed class HandHeldLightSystem : EntitySystem { + // TODO: Ideally you'd be able to subscribe to power stuff to get events at certain percentages.. or something? + // But for now this will be better anyway. + private HashSet _activeLights = new(); + + public override void Initialize() + { + base.Initialize(); + SubscribeLocalEvent(HandleActivate); + SubscribeLocalEvent(HandleDeactivate); + } + + public override void Shutdown() + { + base.Shutdown(); + _activeLights.Clear(); + UnsubscribeLocalEvent(); + UnsubscribeLocalEvent(); + } + + private void HandleActivate(ActivateHandheldLightMessage message) + { + _activeLights.Add(message.Component); + } + + private void HandleDeactivate(DeactivateHandheldLightMessage message) + { + _activeLights.Remove(message.Component); + } + public override void Update(float frameTime) { - foreach (var comp in ComponentManager.EntityQuery(false)) + foreach (var handheld in _activeLights.ToArray()) { - comp.OnUpdate(frameTime); + if (handheld.Deleted || handheld.Paused) continue; + handheld.OnUpdate(frameTime); } } } diff --git a/Content.Server/GameObjects/EntitySystems/HandsSystem.cs b/Content.Server/GameObjects/EntitySystems/HandsSystem.cs index c3f7f22c14..471f9d369c 100644 --- a/Content.Server/GameObjects/EntitySystems/HandsSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/HandsSystem.cs @@ -19,6 +19,7 @@ using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; using Robust.Shared.Localization; using Robust.Shared.Map; +using Robust.Shared.Maths; using Robust.Shared.Players; using static Content.Shared.GameObjects.Components.Inventory.EquipmentSlotDefines; @@ -115,16 +116,23 @@ namespace Content.Server.GameObjects.EntitySystems if (!ent.TryGetComponent(out HandsComponent handsComp)) return false; - if (handsComp.GetActiveHand == null) + if (handsComp.ActiveHand == null || handsComp.GetActiveHand == null) return false; - var entCoords = ent.Transform.Coordinates.Position; - var entToDesiredDropCoords = coords.Position - entCoords; - var targetLength = Math.Min(entToDesiredDropCoords.Length, SharedInteractionSystem.InteractionRange - 0.001f); // InteractionRange is reduced due to InRange not dealing with floating point error - var newCoords = coords.WithPosition(entToDesiredDropCoords.Normalized * targetLength + entCoords).ToMap(EntityManager); - var rayLength = Get().UnobstructedDistance(ent.Transform.MapPosition, newCoords, ignoredEnt: ent); + var entMap = ent.Transform.MapPosition; + var targetPos = coords.ToMapPos(EntityManager); + var dropVector = targetPos - entMap.Position; + var targetVector = Vector2.Zero; - handsComp.Drop(handsComp.ActiveHand, coords.WithPosition(entCoords + entToDesiredDropCoords.Normalized * rayLength)); + if (dropVector != Vector2.Zero) + { + var targetLength = MathF.Min(dropVector.Length, SharedInteractionSystem.InteractionRange - 0.001f); // InteractionRange is reduced due to InRange not dealing with floating point error + var newCoords = coords.WithPosition(dropVector.Normalized * targetLength + entMap.Position).ToMap(EntityManager); + var rayLength = Get().UnobstructedDistance(entMap, newCoords, ignoredEnt: ent); + targetVector = dropVector.Normalized * rayLength; + } + + handsComp.Drop(handsComp.ActiveHand, coords.WithPosition(entMap.Position + targetVector)); return true; } diff --git a/Content.Server/GameObjects/EntitySystems/MeleeWeaponSystem.cs b/Content.Server/GameObjects/EntitySystems/MeleeWeaponSystem.cs index b8d470975c..edeb316154 100644 --- a/Content.Server/GameObjects/EntitySystems/MeleeWeaponSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/MeleeWeaponSystem.cs @@ -14,5 +14,10 @@ namespace Content.Server.GameObjects.EntitySystems RaiseNetworkEvent(new MeleeWeaponSystemMessages.PlayMeleeWeaponAnimationMessage(arc, angle, attacker.Uid, source.Uid, hits.Select(e => e.Uid).ToList(), textureEffect, arcFollowAttacker)); } + + public void SendLunge(Angle angle, IEntity source) + { + RaiseNetworkEvent(new MeleeWeaponSystemMessages.PlayLungeAnimationMessage(angle, source.Uid)); + } } } diff --git a/Content.Server/GameObjects/EntitySystems/MoverSystem.cs b/Content.Server/GameObjects/EntitySystems/MoverSystem.cs index 4801729395..f2cce28e84 100644 --- a/Content.Server/GameObjects/EntitySystems/MoverSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/MoverSystem.cs @@ -14,6 +14,7 @@ using Content.Shared.Physics; using JetBrains.Annotations; using Robust.Server.GameObjects; using Robust.Server.GameObjects.EntitySystems; +using Robust.Server.Interfaces.GameObjects; using Robust.Server.Interfaces.Timing; using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.Components.Transform; @@ -45,8 +46,6 @@ namespace Content.Server.GameObjects.EntitySystems public override void Initialize() { base.Initialize(); - - SubscribeLocalEvent(PlayerAttached); SubscribeLocalEvent(PlayerDetached); _audioSystem = EntitySystemManager.GetEntitySystem(); @@ -64,21 +63,8 @@ namespace Content.Server.GameObjects.EntitySystems } } - private static void PlayerAttached(PlayerAttachSystemMessage ev) - { - if (!ev.Entity.HasComponent()) - { - ev.Entity.AddComponent(); - } - } - private void PlayerDetached(PlayerDetachedSystemMessage ev) { - if (ev.Entity.HasComponent()) - { - ev.Entity.RemoveComponent(); - } - if (ev.Entity.TryGetComponent(out IPhysicsComponent? physics) && physics.TryGetController(out MoverController controller) && !ev.Entity.IsWeightless()) diff --git a/Content.Server/GameObjects/EntitySystems/RoundEndSystem.cs b/Content.Server/GameObjects/EntitySystems/RoundEndSystem.cs index df1c5520db..69fecf41f2 100644 --- a/Content.Server/GameObjects/EntitySystems/RoundEndSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/RoundEndSystem.cs @@ -3,6 +3,7 @@ using System.Threading; using Content.Server.Interfaces.Chat; using Content.Server.Interfaces.GameTicking; using Content.Shared.GameTicking; +using Robust.Server.GameObjects.EntitySystems; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.Timing; using Robust.Shared.IoC; @@ -48,6 +49,10 @@ namespace Content.Server.GameObjects.EntitySystems IsRoundEndCountdownStarted = true; + _chatManager.DispatchStationAnnouncement(Loc.GetString("An emergency shuttle has been sent. ETA: {0} minutes.", RoundEndCountdownTime.Minutes), Loc.GetString("Station")); + + Get().PlayGlobal("/Audio/Announcements/shuttlecalled.ogg"); + ExpectedCountdownEnd = _gameTiming.CurTime + RoundEndCountdownTime; Timer.Spawn(RoundEndCountdownTime, EndRound, _roundEndCancellationTokenSource.Token); OnRoundEndCountdownStarted?.Invoke(); @@ -60,6 +65,10 @@ namespace Content.Server.GameObjects.EntitySystems IsRoundEndCountdownStarted = false; + _chatManager.DispatchStationAnnouncement(Loc.GetString("The emergency shuttle has been recalled."), Loc.GetString("Station")); + + Get().PlayGlobal("/Audio/Announcements/shuttlerecalled.ogg"); + _roundEndCancellationTokenSource.Cancel(); _roundEndCancellationTokenSource = new CancellationTokenSource(); diff --git a/Content.Server/GameObjects/EntitySystems/StationEvents/StationEventSystem.cs b/Content.Server/GameObjects/EntitySystems/StationEvents/StationEventSystem.cs index 5cef4092a4..0d5e79c6d8 100644 --- a/Content.Server/GameObjects/EntitySystems/StationEvents/StationEventSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/StationEvents/StationEventSystem.cs @@ -1,10 +1,11 @@ +#nullable enable using System; using System.Collections.Generic; using System.Linq; using System.Text; using Content.Server.GameTicking; -using Content.Server.Interfaces.GameTicking; using Content.Server.StationEvents; +using Content.Server.Interfaces.GameTicking; using Content.Shared; using Content.Shared.GameTicking; using Content.Shared.Network.NetMessages; @@ -34,7 +35,7 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents [Dependency] private readonly IGameTiming _gameTiming = default!; [Dependency] private readonly IRobustRandom _random = default!; - public StationEvent CurrentEvent { get; private set; } + public StationEvent? CurrentEvent { get; private set; } public IReadOnlyCollection StationEvents => _stationEvents; private readonly List _stationEvents = new(); @@ -105,7 +106,7 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents CurrentEvent?.Shutdown(); CurrentEvent = stationEvent; - stationEvent.Startup(); + stationEvent.Announce(); return Loc.GetString("Running event ") + stationEvent.Name; } @@ -114,13 +115,12 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents } /// - /// Randomly run a valid event immediately, ignoring earlieststart + /// Randomly run a valid event immediately, ignoring earlieststart /// /// public string RunRandomEvent() { - var availableEvents = AvailableEvents(true); - var randomEvent = FindEvent(availableEvents); + var randomEvent = PickRandomEvent(); if (randomEvent == null) { @@ -134,6 +134,15 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents return Loc.GetString("Running ") + randomEvent.Name; } + /// + /// Randomly picks a valid event. + /// + public StationEvent? PickRandomEvent() + { + var availableEvents = AvailableEvents(true); + return FindEvent(availableEvents); + } + /// /// Admins can stop the currently running event (if applicable) and reset the timer /// @@ -199,7 +208,7 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents { base.Update(frameTime); - if (!Enabled) + if (!Enabled && CurrentEvent == null) { return; } @@ -246,7 +255,7 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents else { CurrentEvent = stationEvent; - CurrentEvent.Startup(); + CurrentEvent.Announce(); } } @@ -263,7 +272,7 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents /// Pick a random event from the available events at this time, also considering their weightings. /// /// - private StationEvent FindEvent(List availableEvents) + private StationEvent? FindEvent(List availableEvents) { if (availableEvents.Count == 0) { @@ -347,13 +356,13 @@ namespace Content.Server.GameObjects.EntitySystems.StationEvents public override void Shutdown() { - base.Shutdown(); CurrentEvent?.Shutdown(); + base.Shutdown(); } public void Reset() { - if (CurrentEvent != null && CurrentEvent.Running) + if (CurrentEvent?.Running == true) { CurrentEvent.Shutdown(); CurrentEvent = null; diff --git a/Content.Server/GameObjects/EntitySystems/SuspicionRoleSystem.cs b/Content.Server/GameObjects/EntitySystems/SuspicionRoleSystem.cs index fb7fef8e65..7bfb191404 100644 --- a/Content.Server/GameObjects/EntitySystems/SuspicionRoleSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/SuspicionRoleSystem.cs @@ -1,12 +1,13 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Content.Server.GameObjects.Components.Suspicion; +using Content.Shared.GameTicking; using JetBrains.Annotations; using Robust.Shared.GameObjects.Systems; namespace Content.Server.GameObjects.EntitySystems { [UsedImplicitly] - public class SuspicionRoleSystem : EntitySystem + public class SuspicionRoleSystem : EntitySystem, IResettingEntitySystem { private readonly HashSet _traitors = new(); @@ -47,5 +48,10 @@ namespace Content.Server.GameObjects.EntitySystems _traitors.Clear(); base.Shutdown(); } + + public void Reset() + { + _traitors.Clear(); + } } } diff --git a/Content.Server/GameTicking/GamePreset.cs b/Content.Server/GameTicking/GamePreset.cs index b9716c1d08..1d0d14cc42 100644 --- a/Content.Server/GameTicking/GamePreset.cs +++ b/Content.Server/GameTicking/GamePreset.cs @@ -69,7 +69,7 @@ namespace Content.Server.GameTicking if (playerEntity.TryGetComponent(out IDamageableComponent? damageable)) { //todo: what if they dont breathe lol - damageable.ChangeDamage(DamageType.Asphyxiation, 100, true); + damageable.SetDamage(DamageType.Asphyxiation, 200, playerEntity); } } else diff --git a/Content.Server/GameTicking/GamePresets/PresetTraitor.cs b/Content.Server/GameTicking/GamePresets/PresetTraitor.cs index 834cba7b38..5b4ebc7879 100644 --- a/Content.Server/GameTicking/GamePresets/PresetTraitor.cs +++ b/Content.Server/GameTicking/GamePresets/PresetTraitor.cs @@ -10,10 +10,10 @@ using Content.Server.Interfaces.GameTicking; using Content.Server.Mobs.Roles.Traitor; using Content.Server.Objectives.Interfaces; using Content.Server.Players; -using Content.Server.Prototypes; using Content.Shared; using Content.Shared.GameObjects.Components.Inventory; using Content.Shared.GameObjects.Components.PDA; +using Content.Shared.Prototypes; using Robust.Server.Interfaces.Player; using Robust.Shared.Interfaces.Configuration; using Robust.Shared.Interfaces.Random; diff --git a/Content.Server/GameTicking/GameRules/RuleSuspicion.cs b/Content.Server/GameTicking/GameRules/RuleSuspicion.cs index e2b46d4f23..610748cd5e 100644 --- a/Content.Server/GameTicking/GameRules/RuleSuspicion.cs +++ b/Content.Server/GameTicking/GameRules/RuleSuspicion.cs @@ -7,7 +7,6 @@ using Content.Server.Interfaces.GameTicking; using Content.Server.Mobs.Roles.Suspicion; using Content.Server.Players; using Content.Shared; -using Content.Shared.GameObjects.Components.Damage; using Content.Shared.GameObjects.Components.Mobs.State; using Robust.Server.GameObjects.EntitySystems; using Robust.Server.Interfaces.Player; @@ -22,8 +21,7 @@ using Timer = Robust.Shared.Timers.Timer; namespace Content.Server.GameTicking.GameRules { /// - /// Simple GameRule that will do a free-for-all death match. - /// Kill everybody else to win. + /// Simple GameRule that will do a TTT-like gamemode with traitors. /// public sealed class RuleSuspicion : GameRule, IEntityEventSubscriber { diff --git a/Content.Server/GameTicking/GameTicker.cs b/Content.Server/GameTicking/GameTicker.cs index f219fc7c56..9d7800bb1f 100644 --- a/Content.Server/GameTicking/GameTicker.cs +++ b/Content.Server/GameTicking/GameTicker.cs @@ -2,7 +2,6 @@ using System.Collections.Generic; using System.Linq; using System.Threading; -using Content.Server.Administration; using Content.Server.GameObjects.Components.Access; using Content.Server.GameObjects.Components.GUI; using Content.Server.GameObjects.Components.Items.Storage; @@ -31,7 +30,6 @@ using Robust.Server.Interfaces.Maps; using Robust.Server.Interfaces.Player; using Robust.Server.Player; using Robust.Server.ServerStatus; -using Robust.Server.Interfaces.Console; using Robust.Shared.Enums; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.Configuration; @@ -70,7 +68,7 @@ namespace Content.Server.GameTicking public const float PresetFailedCooldownIncrease = 30f; private const string PlayerPrototypeName = "HumanMob_Content"; private const string ObserverPrototypeName = "MobObserver"; - private static TimeSpan _roundStartTimeSpan; + private TimeSpan _roundStartTimeSpan; [ViewVariables] private readonly List _gameRules = new(); [ViewVariables] private readonly List _manifest = new(); @@ -82,9 +80,9 @@ namespace Content.Server.GameTicking [ViewVariables] private Type _presetType; - [ViewVariables] private DateTime _pauseTime; + [ViewVariables] private TimeSpan _pauseTime; [ViewVariables] private bool _roundStartCountdownHasNotStartedYetDueToNoPlayers; - private DateTime _roundStartTimeUtc; + [ViewVariables] private TimeSpan _roundStartTime; [ViewVariables] private GameRunLevel _runLevel; [ViewVariables(VVAccess.ReadWrite)] private EntityCoordinates _spawnPoint; @@ -177,7 +175,7 @@ namespace Content.Server.GameTicking if (RunLevel != GameRunLevel.PreRoundLobby || Paused || - _roundStartTimeUtc > DateTime.UtcNow || + _roundStartTime > _gameTiming.CurTime || _roundStartCountdownHasNotStartedYetDueToNoPlayers) { return; @@ -211,10 +209,12 @@ namespace Content.Server.GameTicking } else { + Preset = null; + if (PlayerManager.PlayerCount == 0) _roundStartCountdownHasNotStartedYetDueToNoPlayers = true; else - _roundStartTimeUtc = DateTime.UtcNow + LobbyDuration; + _roundStartTime = _gameTiming.CurTime + LobbyDuration; _sendStatusToAll(); @@ -529,10 +529,10 @@ namespace Content.Server.GameTicking return false; } - _roundStartTimeUtc += time; + _roundStartTime += time; var lobbyCountdownMessage = _netManager.CreateNetMessage(); - lobbyCountdownMessage.StartTime = _roundStartTimeUtc; + lobbyCountdownMessage.StartTime = _roundStartTime; lobbyCountdownMessage.Paused = Paused; _netManager.ServerSendToAll(lobbyCountdownMessage); @@ -552,15 +552,15 @@ namespace Content.Server.GameTicking if (pause) { - _pauseTime = DateTime.UtcNow; + _pauseTime = _gameTiming.CurTime; } else if (_pauseTime != default) { - _roundStartTimeUtc += DateTime.UtcNow - _pauseTime; + _roundStartTime += _gameTiming.CurTime - _pauseTime; } var lobbyCountdownMessage = _netManager.CreateNetMessage(); - lobbyCountdownMessage.StartTime = _roundStartTimeUtc; + lobbyCountdownMessage.StartTime = _roundStartTime; lobbyCountdownMessage.Paused = Paused; _netManager.ServerSendToAll(lobbyCountdownMessage); @@ -681,6 +681,19 @@ namespace Content.Server.GameTicking /// private void _resettingCleanup() { + // Move everybody currently in the server to lobby. + foreach (var player in PlayerManager.GetAllPlayers()) + { + _playerJoinLobby(player); + } + + // Delete the minds of everybody. + // TODO: Maybe move this into a separate manager? + foreach (var unCastData in PlayerManager.GetAllPlayerData()) + { + unCastData.ContentData()?.WipeMind(); + } + // Delete all entities. foreach (var entity in _entityManager.GetEntities().ToList()) { @@ -691,13 +704,6 @@ namespace Content.Server.GameTicking _mapManager.Restart(); - // Delete the minds of everybody. - // TODO: Maybe move this into a separate manager? - foreach (var unCastData in PlayerManager.GetAllPlayerData()) - { - unCastData.ContentData()?.WipeMind(); - } - // Clear up any game rules. foreach (var rule in _gameRules) { @@ -706,12 +712,6 @@ namespace Content.Server.GameTicking _gameRules.Clear(); - // Move everybody currently in the server to lobby. - foreach (var player in PlayerManager.GetAllPlayers()) - { - _playerJoinLobby(player); - } - foreach (var system in _entitySystemManager.AllSystems) { if (system is IResettingEntitySystem resetting) @@ -763,7 +763,7 @@ namespace Content.Server.GameTicking if (LobbyEnabled && _roundStartCountdownHasNotStartedYetDueToNoPlayers) { _roundStartCountdownHasNotStartedYetDueToNoPlayers = false; - _roundStartTimeUtc = DateTime.UtcNow + LobbyDuration; + _roundStartTime = _gameTiming.CurTime + LobbyDuration; } break; @@ -1017,7 +1017,7 @@ namespace Content.Server.GameTicking _playersInLobby.TryGetValue(session, out var status); var msg = _netManager.CreateNetMessage(); msg.IsRoundStarted = RunLevel != GameRunLevel.PreRoundLobby; - msg.StartTime = _roundStartTimeUtc; + msg.StartTime = _roundStartTime; msg.YouAreReady = status == PlayerStatus.Ready; msg.Paused = Paused; return msg; diff --git a/Content.Server/GlobalVerbs/MakeSentientVerb.cs b/Content.Server/GlobalVerbs/MakeSentientVerb.cs new file mode 100644 index 0000000000..5206e89264 --- /dev/null +++ b/Content.Server/GlobalVerbs/MakeSentientVerb.cs @@ -0,0 +1,49 @@ +using Content.Server.Commands; +using Content.Server.GameObjects.Components.Mobs; +using Content.Shared.GameObjects.Verbs; +using Robust.Server.Console; +using Robust.Server.Interfaces.Console; +using Robust.Server.Interfaces.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; +using Robust.Shared.Localization; + +namespace Content.Server.GlobalVerbs +{ + [GlobalVerb] + public class MakeSentientVerb : GlobalVerb + { + public override bool RequireInteractionRange => false; + public override bool BlockedByContainers => false; + + public override void GetData(IEntity user, IEntity target, VerbData data) + { + data.Visibility = VerbVisibility.Invisible; + + var groupController = IoCManager.Resolve(); + + if (user == target || target.HasComponent()) + return; + + var player = user.GetComponent().playerSession; + if (groupController.CanCommand(player, "makesentient")) + { + data.Visibility = VerbVisibility.Visible; + data.Text = Loc.GetString("Make Sentient"); + data.CategoryData = VerbCategories.Debug; + } + } + + public override void Activate(IEntity user, IEntity target) + { + var groupController = IoCManager.Resolve(); + + var player = user.GetComponent().playerSession; + if (!groupController.CanCommand(player, "makesentient")) + return; + + new MakeSentientCommand().Execute(IoCManager.Resolve(), player, + new[] {target.Uid.ToString()}); + } + } +} diff --git a/Content.Server/GlobalVerbs/SetAnchorVerb.cs b/Content.Server/GlobalVerbs/SetAnchorVerb.cs new file mode 100644 index 0000000000..1fa2246d7d --- /dev/null +++ b/Content.Server/GlobalVerbs/SetAnchorVerb.cs @@ -0,0 +1,56 @@ +#nullable enable +using Content.Server.GameObjects.Components.Nutrition; +using Content.Shared.GameObjects.Components.Damage; +using Content.Shared.GameObjects.Verbs; +using Robust.Server.Console; +using Robust.Server.Interfaces.GameObjects; +using Robust.Shared.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; + +namespace Content.Server.GlobalVerbs +{ + [GlobalVerb] + public class SetAnchorVerb : GlobalVerb + { + public override bool RequireInteractionRange => false; + public override bool BlockedByContainers => false; + + public override void GetData(IEntity user, IEntity target, VerbData data) + { + data.CategoryData = VerbCategories.Debug; + data.Visibility = VerbVisibility.Invisible; + + var groupController = IoCManager.Resolve(); + + if (user.TryGetComponent(out var player)) + { + if (!target.TryGetComponent(out PhysicsComponent? physics)) + { + return; + } + + if (groupController.CanCommand(player.playerSession, "setanchor")) + { + data.Text = physics.Anchored ? "Unanchor" : "Anchor"; + data.Visibility = VerbVisibility.Visible; + } + } + } + + public override void Activate(IEntity user, IEntity target) + { + if (user.TryGetComponent(out var player)) + { + var groupController = IoCManager.Resolve(); + if (!groupController.CanCommand(player.playerSession, "setanchor")) + return; + + if (target.TryGetComponent(out PhysicsComponent? physics)) + { + physics.Anchored = !physics.Anchored; + } + } + } + } +} diff --git a/Content.Server/IgnoredComponents.cs b/Content.Server/IgnoredComponents.cs index 0be2eccd08..2a06e313f4 100644 --- a/Content.Server/IgnoredComponents.cs +++ b/Content.Server/IgnoredComponents.cs @@ -1,4 +1,4 @@ -namespace Content.Server +namespace Content.Server { public static class IgnoredComponents @@ -18,6 +18,7 @@ "Clickable", "RadiatingLight", "Icon", + "ClientEntitySpawner" }; } diff --git a/Content.Server/Interfaces/Chat/IChatManager.cs b/Content.Server/Interfaces/Chat/IChatManager.cs index 5dfcdbc458..0edfff50cd 100644 --- a/Content.Server/Interfaces/Chat/IChatManager.cs +++ b/Content.Server/Interfaces/Chat/IChatManager.cs @@ -1,4 +1,4 @@ -using Robust.Server.Interfaces.Player; +using Robust.Server.Interfaces.Player; using Robust.Shared.Interfaces.GameObjects; namespace Content.Server.Interfaces.Chat @@ -16,7 +16,8 @@ namespace Content.Server.Interfaces.Chat /// Station announcement to every player /// /// - void DispatchStationAnnouncement(string message); + /// + void DispatchStationAnnouncement(string message, string sender = "CentComm"); void DispatchServerMessage(IPlayerSession player, string message); @@ -26,6 +27,7 @@ namespace Content.Server.Interfaces.Chat void SendOOC(IPlayerSession player, string message); void SendAdminChat(IPlayerSession player, string message); void SendDeadChat(IPlayerSession player, string message); + void SendAdminDeadChat(IPlayerSession player, string message); void SendHookOOC(string sender, string message); diff --git a/Content.Server/Interfaces/GameObjects/IDisarmedAct.cs b/Content.Server/Interfaces/GameObjects/IDisarmedAct.cs new file mode 100644 index 0000000000..b1198b39d8 --- /dev/null +++ b/Content.Server/Interfaces/GameObjects/IDisarmedAct.cs @@ -0,0 +1,42 @@ +using System; +using Robust.Shared.Interfaces.GameObjects; + +namespace Content.Server.Interfaces.GameObjects +{ + /// + /// Implements behavior when an entity is disarmed. + /// + public interface IDisarmedAct + { + /// + /// Behavior when the entity is disarmed. + /// Return true to prevent the default disarm behavior, + /// or rest of IDisarmedAct behaviors that come after this one from happening. + /// + bool Disarmed(DisarmedActEventArgs eventArgs); + + /// + /// Priority for this disarm act. + /// Used to determine act execution order. + /// + int Priority => 0; + } + + public class DisarmedActEventArgs : EventArgs + { + /// + /// The entity being disarmed. + /// + public IEntity Target { get; init; } + + /// + /// The entity performing the disarm. + /// + public IEntity Source { get; init; } + + /// + /// Probability for push/knockdown. + /// + public float PushProbability { get; init; } + } +} diff --git a/Content.Server/Mobs/MindHelpers.cs b/Content.Server/Mobs/MindHelpers.cs new file mode 100644 index 0000000000..017de12ff5 --- /dev/null +++ b/Content.Server/Mobs/MindHelpers.cs @@ -0,0 +1,20 @@ +using Content.Server.Interfaces.GameTicking; +using Content.Server.Players; +using Robust.Server.Player; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; + +namespace Content.Server.Mobs +{ + internal static class MindHelpers + { + internal static void SendToGhost(this IEntity entity, bool canReturn=false) + { + var mind = entity.PlayerSession()?.ContentData()?.Mind; + + if (mind == null) return; + + IoCManager.Resolve().OnGhostAttempt(mind, canReturn); + } + } +} diff --git a/Content.Server/ServerContentIoC.cs b/Content.Server/ServerContentIoC.cs index 09a1f2d17c..89469b58ce 100644 --- a/Content.Server/ServerContentIoC.cs +++ b/Content.Server/ServerContentIoC.cs @@ -1,4 +1,4 @@ -using Content.Server.Administration; +using Content.Server.Administration; using Content.Server.AI.Utility.Considerations; using Content.Server.AI.WorldState; using Content.Server.Cargo; @@ -38,7 +38,6 @@ namespace Content.Server IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); - IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); diff --git a/Content.Server/SetOutfitEui.cs b/Content.Server/SetOutfitEui.cs new file mode 100644 index 0000000000..3acbe72e23 --- /dev/null +++ b/Content.Server/SetOutfitEui.cs @@ -0,0 +1,55 @@ +using Content.Server.Administration; +using Content.Server.Database; +using Content.Server.Eui; +using Content.Shared.Administration; +using Content.Shared.Eui; +using JetBrains.Annotations; +using Robust.Server.Interfaces.Player; +using Robust.Shared.IoC; +using System; +using Robust.Shared.Interfaces.GameObjects; + +namespace Content.Server +{ + [UsedImplicitly] + public sealed class SetOutfitEui : BaseEui + { + [Dependency] private readonly IAdminManager _adminManager = default!; + private readonly IEntity _target; + public SetOutfitEui(IEntity entity) + { + _target = entity; + IoCManager.InjectDependencies(this); + } + + public override void Opened() + { + base.Opened(); + + StateDirty(); + _adminManager.OnPermsChanged += AdminManagerOnPermsChanged; + } + + public override EuiStateBase GetNewState() + { + return new SetOutfitEuiState + { + TargetEntityId = _target.Uid + }; + } + + private void AdminManagerOnPermsChanged(AdminPermsChangedEventArgs obj) + { + // Close UI if user loses +FUN. + if (obj.Player == Player && !UserAdminFlagCheck(AdminFlags.Fun)) + { + Close(); + } + } + private bool UserAdminFlagCheck(AdminFlags flags) + { + return _adminManager.HasAdminFlag(Player, flags); + } + + } +} diff --git a/Content.Server/StationEvents/FalseAlarm.cs b/Content.Server/StationEvents/FalseAlarm.cs new file mode 100644 index 0000000000..70db0cc7bb --- /dev/null +++ b/Content.Server/StationEvents/FalseAlarm.cs @@ -0,0 +1,30 @@ +#nullable enable +using JetBrains.Annotations; +using Content.Server.GameObjects.EntitySystems.StationEvents; +using Robust.Shared.GameObjects.Systems; + +namespace Content.Server.StationEvents +{ + [UsedImplicitly] + public sealed class FalseAlarm : StationEvent + { + public override string Name => "FalseAlarm"; + public override float Weight => WeightHigh; + protected override float EndAfter => 1.0f; + public override int? MaxOccurrences => 5; + + public override void Announce() + { + var stationEventSystem = EntitySystem.Get(); + var randomEvent = stationEventSystem.PickRandomEvent(); + + if (randomEvent != null) + { + StartAnnouncement = randomEvent.StartAnnouncement; + StartAudio = randomEvent.StartAudio; + } + + base.Announce(); + } + } +} diff --git a/Content.Server/StationEvents/PowerGridCheck.cs b/Content.Server/StationEvents/PowerGridCheck.cs index eb422b0d5a..31b000b2e7 100644 --- a/Content.Server/StationEvents/PowerGridCheck.cs +++ b/Content.Server/StationEvents/PowerGridCheck.cs @@ -1,4 +1,5 @@ -using System.Collections.Generic; +#nullable enable +using System.Collections.Generic; using System.Threading; using Content.Server.GameObjects.Components.Power.ApcNetComponents; using JetBrains.Annotations; @@ -16,59 +17,54 @@ namespace Content.Server.StationEvents public sealed class PowerGridCheck : StationEvent { public override string Name => "PowerGridCheck"; - - public override StationEventWeight Weight => StationEventWeight.Normal; - - public override int? MaxOccurrences => 2; - - protected override string StartAnnouncement => Loc.GetString( + public override float Weight => WeightNormal; + public override int? MaxOccurrences => 3; + public override string StartAnnouncement => Loc.GetString( "Abnormal activity detected in the station's powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration."); - protected override string EndAnnouncement => Loc.GetString( "Power has been restored to the station. We apologize for the inconvenience."); + public override string? StartAudio => "/Audio/Announcements/power_off.ogg"; - private float _elapsedTime; - private int _failDuration; + // If you need EndAudio it's down below. Not set here because we can't play it at the normal time without spamming sounds. - /// - /// So we don't overlap the announcement with power-down sounds we'll delay it a few seconds. - /// - private bool _announced; + protected override float StartAfter => 12.0f; - private CancellationTokenSource _announceCancelToken; + private CancellationTokenSource? _announceCancelToken; private readonly List _powered = new(); + public override void Announce() + { + base.Announce(); + EndAfter = IoCManager.Resolve().Next(60, 120); + } + public override void Startup() { - base.Startup(); - - _announced = false; - _elapsedTime = 0.0f; - _failDuration = IoCManager.Resolve().Next(60, 120); var componentManager = IoCManager.Resolve(); - foreach (PowerReceiverComponent component in componentManager.EntityQuery()) + foreach (var component in componentManager.EntityQuery()) { component.PowerDisabled = true; _powered.Add(component.Owner); } + + base.Startup(); } public override void Shutdown() { - base.Shutdown(); - foreach (var entity in _powered) { if (entity.Deleted) continue; - if (entity.TryGetComponent(out PowerReceiverComponent powerReceiverComponent)) + if (entity.TryGetComponent(out PowerReceiverComponent? powerReceiverComponent)) { powerReceiverComponent.PowerDisabled = false; } } + // Can't use the default EndAudio _announceCancelToken?.Cancel(); _announceCancelToken = new CancellationTokenSource(); Timer.Spawn(3000, () => @@ -76,29 +72,8 @@ namespace Content.Server.StationEvents EntitySystem.Get().PlayGlobal("/Audio/Announcements/power_on.ogg"); }, _announceCancelToken.Token); _powered.Clear(); - } - public override void Update(float frameTime) - { - if (!Running) - { - return; - } - - if (!_announced && _elapsedTime > 3.0f) - { - EntitySystem.Get().PlayGlobal("/Audio/Announcements/power_off.ogg"); - _announced = true; - } - - _elapsedTime += frameTime; - - if (_elapsedTime < _failDuration) - { - return; - } - - Running = false; + base.Shutdown(); } } } diff --git a/Content.Server/StationEvents/RadiationStorm.cs b/Content.Server/StationEvents/RadiationStorm.cs index 5b6a8f6fda..ee88eb47cb 100644 --- a/Content.Server/StationEvents/RadiationStorm.cs +++ b/Content.Server/StationEvents/RadiationStorm.cs @@ -1,12 +1,11 @@ +#nullable enable +using JetBrains.Annotations; using Content.Server.GameObjects.Components.Mobs; using Content.Server.GameObjects.Components.StationEvents; using Content.Server.Interfaces.GameTicking; using Content.Shared.GameObjects.Components.Mobs; using Content.Shared.Utility; -using JetBrains.Annotations; -using Robust.Server.GameObjects.EntitySystems; using Robust.Server.Interfaces.Timing; -using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Map; using Robust.Shared.Interfaces.Random; @@ -26,24 +25,14 @@ namespace Content.Server.StationEvents [Dependency] private IRobustRandom _robustRandom = default!; public override string Name => "RadiationStorm"; - - protected override string StartAnnouncement => Loc.GetString( + public override string StartAnnouncement => Loc.GetString( "High levels of radiation detected near the station. Evacuate any areas containing abnormal green energy fields."); - protected override string EndAnnouncement => Loc.GetString( "The radiation threat has passed. Please return to your workplaces."); + public override string StartAudio => "/Audio/Announcements/radiation.ogg"; + protected override float StartAfter => 10.0f; - /// - /// How long until the radiation storm starts - /// - private const float StartupTime = 5; - - /// - /// How long the radiation storm has been running for - /// - private float _timeElapsed; - - private int _pulsesRemaining; + // Event specific details private float _timeUntilPulse; private const float MinPulseDelay = 0.2f; private const float MaxPulseDelay = 0.8f; @@ -53,15 +42,15 @@ namespace Content.Server.StationEvents _timeUntilPulse = _robustRandom.NextFloat() * (MaxPulseDelay - MinPulseDelay) + MinPulseDelay; } + public override void Announce() + { + base.Announce(); + EndAfter = _robustRandom.Next(30, 80) + StartAfter; // We want to be forgiving about the radstorm. + } + public override void Startup() { - base.Startup(); - EntitySystem.Get().PlayGlobal("/Audio/Announcements/radiation.ogg"); - IoCManager.InjectDependencies(this); - ResetTimeUntilPulse(); - _timeElapsed = 0.0f; - _pulsesRemaining = _robustRandom.Next(30, 100); var componentManager = IoCManager.Resolve(); @@ -69,42 +58,26 @@ namespace Content.Server.StationEvents { overlay.AddOverlay(SharedOverlayID.RadiationPulseOverlay); } + + base.Startup(); } public override void Shutdown() { - base.Shutdown(); - - // IOC uninject? - _entityManager = null; - _robustRandom = null; - var componentManager = IoCManager.Resolve(); foreach (var overlay in componentManager.EntityQuery()) { overlay.RemoveOverlay(SharedOverlayID.RadiationPulseOverlay); } + base.Shutdown(); } public override void Update(float frameTime) { - _timeElapsed += frameTime; + base.Update(frameTime); - if (_pulsesRemaining == 0) - { - Running = false; - } - - if (!Running) - { - return; - } - - if (_timeElapsed < StartupTime) - { - return; - } + if (!Started || !Running) return; _timeUntilPulse -= frameTime; @@ -129,7 +102,6 @@ namespace Content.Server.StationEvents var pulse = _entityManager.SpawnEntity("RadiationPulse", coordinates); pulse.GetComponent().DoPulse(); ResetTimeUntilPulse(); - _pulsesRemaining -= 1; } private bool TryFindRandomGrid(IMapGrid mapGrid, out EntityCoordinates coordinates) diff --git a/Content.Server/StationEvents/StationEvent.cs b/Content.Server/StationEvents/StationEvent.cs index 244cd2a3ff..b4deed65ac 100644 --- a/Content.Server/StationEvents/StationEvent.cs +++ b/Content.Server/StationEvents/StationEvent.cs @@ -1,76 +1,135 @@ +#nullable enable using Content.Server.Interfaces.Chat; +using Robust.Shared.GameObjects.Systems; +using Robust.Server.GameObjects.EntitySystems; +using Robust.Shared.Audio; using Robust.Shared.IoC; namespace Content.Server.StationEvents { public abstract class StationEvent { + public const float WeightVeryLow = 0.0f; + public const float WeightLow = 5.0f; + public const float WeightNormal = 10.0f; + public const float WeightHigh = 15.0f; + public const float WeightVeryHigh = 20.0f; + /// - /// If the event has started and is currently running + /// If the event has started and is currently running. /// - public bool Running { get; protected set; } - + public bool Running { get; set; } + /// - /// Human-readable name for the event + /// Human-readable name for the event. /// public abstract string Name { get; } - public virtual StationEventWeight Weight { get; } = StationEventWeight.Normal; + /// + /// The weight this event has in the random-selection process. + /// + public virtual float Weight => WeightNormal; /// - /// What should be said in chat when the event starts (if anything). + /// What should be said in chat when the event starts (if anything). /// - protected virtual string StartAnnouncement { get; } = null; + public virtual string? StartAnnouncement { get; set; } = null; /// - /// What should be said in chat when the event end (if anything). + /// What should be said in chat when the event ends (if anything). /// - protected virtual string EndAnnouncement { get; } = null; + protected virtual string? EndAnnouncement { get; } = null; /// - /// In minutes, when is the first time this event can start + /// Starting audio of the event. + /// + public virtual string? StartAudio { get; set; } = null; + + /// + /// Ending audio of the event. + /// + public virtual string? EndAudio { get; } = null; + + /// + /// In minutes, when is the first round time this event can start /// - /// public virtual int EarliestStart { get; } = 5; /// - /// How many players need to be present on station for the event to run + /// When in the lifetime to call Start(). /// - /// To avoid running deadly events with low-pop + protected virtual float StartAfter { get; } = 0.0f; + + /// + /// When in the lifetime the event should end. + /// + protected virtual float EndAfter { get; set; } = 0.0f; + + /// + /// How long has the event existed. Do not change this. + /// + private float Elapsed { get; set; } = 0.0f; + + /// + /// How many players need to be present on station for the event to run + /// + /// + /// To avoid running deadly events with low-pop + /// public virtual int MinimumPlayers { get; } = 0; /// - /// How many times this event has run this round + /// How many times this event has run this round /// public int Occurrences { get; set; } = 0; /// - /// How many times this even can occur in a single round + /// How many times this even can occur in a single round /// public virtual int? MaxOccurrences { get; } = null; /// - /// Called once when the station event starts + /// Has the startup time elapsed? + /// + protected bool Started { get; set; } = false; + + /// + /// Has this event commenced (announcement may or may not be used)? + /// + private bool Announced { get; set; } = false; + + /// + /// Called once to setup the event after StartAfter has elapsed. /// public virtual void Startup() { - Running = true; + Started = true; Occurrences += 1; + } + + /// + /// Called once as soon as an event is active. + /// Can also be used for some initial setup. + /// + public virtual void Announce() + { if (StartAnnouncement != null) { var chatManager = IoCManager.Resolve(); chatManager.DispatchStationAnnouncement(StartAnnouncement); } + + if (StartAudio != null) + { + EntitySystem.Get().PlayGlobal(StartAudio, AudioParams.Default.WithVolume(-10f)); + } + + Announced = true; + Running = true; } /// - /// Called every tick when this event is active - /// - /// - public abstract void Update(float frameTime); - - /// - /// Called once when the station event ends + /// Called once when the station event ends for any reason. /// public virtual void Shutdown() { @@ -79,15 +138,34 @@ namespace Content.Server.StationEvents var chatManager = IoCManager.Resolve(); chatManager.DispatchStationAnnouncement(EndAnnouncement); } + + if (EndAudio != null) + { + EntitySystem.Get().PlayGlobal(EndAudio, AudioParams.Default.WithVolume(-10f)); + } + + Started = false; + Announced = false; + Elapsed = 0; + } + + /// + /// Called every tick when this event is running. + /// + /// + public virtual void Update(float frameTime) + { + Elapsed += frameTime; + + if (!Started && Elapsed >= StartAfter) + { + Startup(); + } + + if (EndAfter <= Elapsed) + { + Running = false; + } } } - - public enum StationEventWeight - { - VeryLow = 0, - Low = 5, - Normal = 10, - High = 15, - VeryHigh = 20, - } -} \ No newline at end of file +} diff --git a/Content.Server/Throw/ThrowHelper.cs b/Content.Server/Throw/ThrowHelper.cs index 4d760383f7..a0ab566592 100644 --- a/Content.Server/Throw/ThrowHelper.cs +++ b/Content.Server/Throw/ThrowHelper.cs @@ -1,4 +1,4 @@ -using System; +using System; using Content.Server.GameObjects.Components.Projectiles; using Content.Shared.GameObjects.Components.Movement; using Content.Shared.GameObjects.EntitySystems; @@ -43,10 +43,21 @@ namespace Content.Server.Throw /// public static void Throw(this IEntity thrownEnt, float throwForce, EntityCoordinates targetLoc, EntityCoordinates sourceLoc, bool spread = false, IEntity throwSourceEnt = null) { + if (thrownEnt.Deleted) + { + return; + } + if (!thrownEnt.TryGetComponent(out IPhysicsComponent colComp)) return; var entityManager = IoCManager.Resolve(); + var direction_vector = targetLoc.ToMapPos(entityManager) - sourceLoc.ToMapPos(entityManager); + + if (direction_vector.Length == 0) + { + return; + } colComp.CanCollide = true; // I can now collide with player, so that i can do damage. @@ -61,8 +72,8 @@ namespace Content.Server.Throw colComp.PhysicsShapes[0].CollisionMask |= (int) CollisionGroup.ThrownItem; colComp.Status = BodyStatus.InAir; } - var angle = new Angle(targetLoc.ToMapPos(entityManager) - sourceLoc.ToMapPos(entityManager)); + var angle = new Angle(direction_vector); if (spread) { var spreadRandom = IoCManager.Resolve(); diff --git a/Content.Shared/Actions/ActionType.cs b/Content.Shared/Actions/ActionType.cs index 151d78b1dd..80690d8117 100644 --- a/Content.Shared/Actions/ActionType.cs +++ b/Content.Shared/Actions/ActionType.cs @@ -7,6 +7,7 @@ { Error, HumanScream, + Disarm, DebugInstant, DebugToggle, DebugTargetPoint, @@ -23,6 +24,7 @@ Error, ToggleInternals, ToggleLight, + ToggleMagboots, DebugInstant, DebugToggle, DebugTargetPoint, diff --git a/Content.Shared/Actions/BaseActionPrototype.cs b/Content.Shared/Actions/BaseActionPrototype.cs index 4068c9da79..669ee18254 100644 --- a/Content.Shared/Actions/BaseActionPrototype.cs +++ b/Content.Shared/Actions/BaseActionPrototype.cs @@ -30,8 +30,6 @@ namespace Content.Shared.Actions [ViewVariables] public SpriteSpecifier IconOn { get; private set; } - - /// /// Name to show in UI. Accepts formatting. /// @@ -60,6 +58,18 @@ namespace Content.Shared.Actions /// public bool Repeat { get; private set; } + /// + /// For TargetEntity/TargetPoint actions, should the action be de-selected if currently selected (choosing a target) + /// when it goes on cooldown. Defaults to false. + /// + public bool DeselectOnCooldown { get; private set; } + + /// + /// For TargetEntity actions, should the action be de-selected if the user doesn't click an entity when + /// selecting a target. Defaults to false. + /// + public bool DeselectWhenEntityNotClicked { get; private set; } + /// /// Filters that can be used to filter this item in action menu. /// @@ -70,6 +80,12 @@ namespace Content.Shared.Actions /// public IEnumerable Keywords { get; private set; } + /// + /// True if this is an action that requires selecting a target + /// + public bool IsTargetAction => + BehaviorType == BehaviorType.TargetEntity || BehaviorType == BehaviorType.TargetPoint; + public virtual void LoadFrom(YamlMappingNode mapping) { var serializer = YamlObjectSerializer.NewReader(mapping); @@ -106,6 +122,9 @@ namespace Content.Shared.Actions Name, BehaviorType); } + serializer.DataField(this, x => x.DeselectOnCooldown, "deselectOnCooldown", false); + serializer.DataField(this, x => x.DeselectWhenEntityNotClicked, "deselectWhenEntityNotClicked", false); + serializer.DataReadFunction("filters", new List(), rawTags => { diff --git a/Content.Shared/Administration/SetOutfitEuiState.cs b/Content.Shared/Administration/SetOutfitEuiState.cs new file mode 100644 index 0000000000..d16d55bb24 --- /dev/null +++ b/Content.Shared/Administration/SetOutfitEuiState.cs @@ -0,0 +1,13 @@ +using Content.Shared.Eui; +using Robust.Shared.Serialization; +using System; +using Robust.Shared.GameObjects; + +namespace Content.Shared.Administration +{ + [Serializable, NetSerializable] + public class SetOutfitEuiState : EuiStateBase + { + public EntityUid TargetEntityId; + } +} diff --git a/Content.Shared/Alert/AlertPrototype.cs b/Content.Shared/Alert/AlertPrototype.cs index 7c7ba74014..e2af7906b0 100644 --- a/Content.Shared/Alert/AlertPrototype.cs +++ b/Content.Shared/Alert/AlertPrototype.cs @@ -123,7 +123,7 @@ namespace Content.Shared.Alert { if (!SupportsSeverity && severity != null) { - throw new InvalidOperationException("This alert does not support severity"); + throw new InvalidOperationException($"This alert ({AlertKey}) does not support severity"); } if (!SupportsSeverity) @@ -131,24 +131,24 @@ namespace Content.Shared.Alert if (severity == null) { - throw new ArgumentException("No severity specified but this alert has severity.", nameof(severity)); + throw new ArgumentException($"No severity specified but this alert ({AlertKey}) has severity.", nameof(severity)); } if (severity < MinSeverity) { - throw new ArgumentOutOfRangeException(nameof(severity), "Severity below minimum severity."); + throw new ArgumentOutOfRangeException(nameof(severity), $"Severity below minimum severity in {AlertKey}."); } if (severity > MaxSeverity) { - throw new ArgumentOutOfRangeException(nameof(severity), "Severity above maximum severity."); + throw new ArgumentOutOfRangeException(nameof(severity), $"Severity above maximum severity in {AlertKey}."); } var severityText = severity.Value.ToString(CultureInfo.InvariantCulture); switch (Icon) { case SpriteSpecifier.EntityPrototype entityPrototype: - throw new InvalidOperationException("Severity not supported for EntityPrototype icon"); + throw new InvalidOperationException($"Severity not supported for EntityPrototype icon in {AlertKey}"); case SpriteSpecifier.Rsi rsi: return new SpriteSpecifier.Rsi(rsi.RsiPath, rsi.RsiState + severityText); case SpriteSpecifier.Texture texture: diff --git a/Content.Shared/Alert/AlertType.cs b/Content.Shared/Alert/AlertType.cs index 95da080a50..a4962a1d36 100644 --- a/Content.Shared/Alert/AlertType.cs +++ b/Content.Shared/Alert/AlertType.cs @@ -45,6 +45,7 @@ Parched, Pulled, Pulling, + Magboots, Debug1, Debug2, Debug3, diff --git a/Content.Shared/Arcade/BlockGameMessages.cs b/Content.Shared/Arcade/BlockGameMessages.cs index 8b98933db1..3110edd8dc 100644 --- a/Content.Shared/Arcade/BlockGameMessages.cs +++ b/Content.Shared/Arcade/BlockGameMessages.cs @@ -58,9 +58,6 @@ namespace Content.Shared.Arcade } } - [Serializable, NetSerializable] - public class BlockGameUserUnregisterMessage : BoundUserInterfaceMessage{} - [Serializable, NetSerializable] public class BlockGameSetScreenMessage : BoundUserInterfaceMessage { diff --git a/Content.Shared/Atmos/Atmospherics.cs b/Content.Shared/Atmos/Atmospherics.cs index 76a7a45056..d87ac132cd 100644 --- a/Content.Shared/Atmos/Atmospherics.cs +++ b/Content.Shared/Atmos/Atmospherics.cs @@ -1,4 +1,6 @@ -using Robust.Shared.Maths; +using Robust.Shared.Maths; +using Robust.Shared.Serialization; +using System; namespace Content.Shared.Atmos { @@ -246,6 +248,7 @@ namespace Content.Shared.Atmos /// /// Gases to Ids. Keep these updated with the prototypes! /// + [Serializable, NetSerializable] public enum Gas : sbyte { Oxygen = 0, diff --git a/Content.Shared/CCVars.cs b/Content.Shared/CCVars.cs index db9b5bc90c..7fe2d2eac9 100644 --- a/Content.Shared/CCVars.cs +++ b/Content.Shared/CCVars.cs @@ -1,4 +1,4 @@ -using Robust.Shared; +using Robust.Shared; using Robust.Shared.Configuration; namespace Content.Shared @@ -142,6 +142,10 @@ namespace Content.Shared public static readonly CVarDef DatabasePgPassword = CVarDef.Create("database.pg_password", "", CVar.SERVERONLY); + // Basically only exists for integration tests to avoid race conditions. + public static readonly CVarDef DatabaseSynchronous = + CVarDef.Create("database.sync", false, CVar.SERVERONLY); + /* * Outline diff --git a/Content.Server/Chemistry/ReactionPrototype.cs b/Content.Shared/Chemistry/ReactionPrototype.cs similarity index 66% rename from Content.Server/Chemistry/ReactionPrototype.cs rename to Content.Shared/Chemistry/ReactionPrototype.cs index 3cfef8c4d9..7f2f9eb006 100644 --- a/Content.Server/Chemistry/ReactionPrototype.cs +++ b/Content.Shared/Chemistry/ReactionPrototype.cs @@ -1,12 +1,14 @@ -using System.Collections.Generic; +#nullable enable +using System.Collections.Generic; using Content.Server.Interfaces.Chemistry; -using Content.Shared.Chemistry; +using Content.Shared.Interfaces; using Robust.Shared.Interfaces.Serialization; +using Robust.Shared.IoC; using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using YamlDotNet.RepresentationModel; -namespace Content.Server.Chemistry +namespace Content.Shared.Chemistry { /// /// Prototype for chemical reaction definitions @@ -14,11 +16,11 @@ namespace Content.Server.Chemistry [Prototype("reaction")] public class ReactionPrototype : IPrototype, IIndexedPrototype { - private string _id; - private string _name; - private Dictionary _reactants; - private Dictionary _products; - private List _effects; + private string _id = default!; + private string _name = default!; + private Dictionary _reactants = default!; + private Dictionary _products = default!; + private List _effects = default!; public string ID => _id; public string Name => _name; @@ -35,6 +37,10 @@ namespace Content.Server.Chemistry /// public IReadOnlyList Effects => _effects; + public string? Sound { get; private set; } + + [Dependency] private readonly IModuleManager _moduleManager = default!; + public void LoadFrom(YamlMappingNode mapping) { var serializer = YamlObjectSerializer.NewReader(mapping); @@ -43,7 +49,18 @@ namespace Content.Server.Chemistry serializer.DataField(ref _name, "name", string.Empty); serializer.DataField(ref _reactants, "reactants", new Dictionary()); serializer.DataField(ref _products, "products", new Dictionary()); - serializer.DataField(ref _effects, "effects", new List()); + serializer.DataField(this, x => x.Sound, "sound", "/Audio/Effects/Chemistry/bubbles.ogg"); + + if (_moduleManager.IsServerModule) + { + //TODO: Don't have a check for if this is the server + //Some implementations of IReactionEffect can't currently be moved to shared, so this is here to prevent the client from breaking when reading server-only IReactionEffects. + serializer.DataField(ref _effects, "effects", new List()); + } + else + { + _effects = new(); //To ensure _effects isn't null since it is only serializable on the server right snow + } } } diff --git a/Content.Shared/Chemistry/ReagentPrototype.cs b/Content.Shared/Chemistry/ReagentPrototype.cs index 208d1d7e0d..2c27e6f824 100644 --- a/Content.Shared/Chemistry/ReagentPrototype.cs +++ b/Content.Shared/Chemistry/ReagentPrototype.cs @@ -1,4 +1,5 @@ -using System; +#nullable enable +using System; using System.Collections.Generic; using Content.Shared.Interfaces; using Content.Shared.Interfaces.Chemistry; @@ -18,16 +19,16 @@ namespace Content.Shared.Chemistry { [Dependency] private readonly IModuleManager _moduleManager = default!; - private string _id; - private string _name; - private string _description; - private string _physicalDescription; + private string _id = default!; + private string _name = default!; + private string _description = default!; + private string _physicalDescription = default!; private Color _substanceColor; - private string _spritePath; - private List _metabolism; - private List _tileReactions; - private List _plantMetabolism; - private float _customPlantMetabolism = 1f; + private string _spritePath = default!; + private List _metabolism = default!; + private List _tileReactions = default!; + private List _plantMetabolism = default!; + private float _customPlantMetabolism; public string ID => _id; public string Name => _name; @@ -60,15 +61,17 @@ namespace Content.Shared.Chemistry if (_moduleManager.IsServerModule) { + //Implementations of the needed interfaces are currently server-only, so they cannot be read on client serializer.DataField(ref _metabolism, "metabolism", new List { new DefaultMetabolizable() }); serializer.DataField(ref _tileReactions, "tileReactions", new List { }); serializer.DataField(ref _plantMetabolism, "plantMetabolism", new List { }); } else { + //ensure the following fields cannot null since they can only be serialized on server right now _metabolism = new List { new DefaultMetabolizable() }; - _tileReactions = new List(0); - _plantMetabolism = new List(0); + _tileReactions = new(); + _plantMetabolism = new(); } } diff --git a/Content.Shared/Chemistry/ReagentUnit.cs b/Content.Shared/Chemistry/ReagentUnit.cs index 0697d4c421..67a900ec5f 100644 --- a/Content.Shared/Chemistry/ReagentUnit.cs +++ b/Content.Shared/Chemistry/ReagentUnit.cs @@ -1,10 +1,14 @@ -using System; +using System; using System.Globalization; using System.Linq; using Robust.Shared.Interfaces.Serialization; namespace Content.Shared.Chemistry { + /// + /// Represents a quantity of reagent, to a precision of 0.01. + /// To enforce this level of precision, floats are shifted by 2 decimal points, rounded, and converted to an int. + /// [Serializable] public struct ReagentUnit : ISelfSerialize, IComparable, IEquatable { diff --git a/Content.Shared/Chemistry/Solution.cs b/Content.Shared/Chemistry/Solution.cs index f515721e0f..ea334527b3 100644 --- a/Content.Shared/Chemistry/Solution.cs +++ b/Content.Shared/Chemistry/Solution.cs @@ -1,8 +1,12 @@ -using System; +using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; +using System.Linq; using Robust.Shared.Interfaces.Serialization; +using Robust.Shared.IoC; +using Robust.Shared.Maths; +using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; @@ -27,6 +31,8 @@ namespace Content.Shared.Chemistry [ViewVariables] public ReagentUnit TotalVolume { get; private set; } + public Color Color => GetColor(); + /// /// Constructs an empty solution (ex. an empty beaker). /// @@ -57,6 +63,37 @@ namespace Content.Shared.Chemistry () => _contents); } + public bool ContainsReagent(string reagentId) + { + return ContainsReagent(reagentId, out _); + } + + public bool ContainsReagent(string reagentId, out ReagentUnit quantity) + { + foreach (var reagent in Contents) + { + if (reagent.ReagentId == reagentId) + { + quantity = reagent.Quantity; + return true; + } + } + + quantity = ReagentUnit.New(0); + return false; + } + + public string GetPrimaryReagentId() + { + if (Contents.Count == 0) + { + return ""; + } + + var majorReagent = Contents.OrderByDescending(reagent => reagent.Quantity).First(); ; + return majorReagent.ReagentId; + } + /// /// Adds a given quantity of a reagent directly into the solution. /// @@ -231,6 +268,37 @@ namespace Content.Shared.Chemistry TotalVolume += otherSolution.TotalVolume; } + private Color GetColor() + { + if (TotalVolume == 0) + { + return Color.Transparent; + } + + Color mixColor = default; + var runningTotalQuantity = ReagentUnit.New(0); + + foreach (var reagent in Contents) + { + runningTotalQuantity += reagent.Quantity; + + if (!IoCManager.Resolve().TryIndex(reagent.ReagentId, out ReagentPrototype proto)) + { + continue; + } + + if (mixColor == default) + { + mixColor = proto.SubstanceColor; + continue; + } + + var interpolateValue = (1 / runningTotalQuantity.Float()) * reagent.Quantity.Float(); + mixColor = Color.InterpolateBetween(mixColor, proto.SubstanceColor, interpolateValue); + } + return mixColor; + } + public Solution Clone() { var volume = ReagentUnit.New(0); diff --git a/Content.Shared/Chemistry/SolutionCaps.cs b/Content.Shared/Chemistry/SolutionCaps.cs index c1047d265b..3dada4d98e 100644 --- a/Content.Shared/Chemistry/SolutionCaps.cs +++ b/Content.Shared/Chemistry/SolutionCaps.cs @@ -1,4 +1,4 @@ -using System; +using System; using Robust.Shared.Serialization; namespace Content.Shared.Chemistry @@ -33,6 +33,14 @@ namespace Content.Shared.Chemistry /// /// Can people examine the solution in the container or is it impossible to see? /// - NoExamine = 8, + CanExamine = 8, + } + + public static class SolutionContainerCapsHelpers + { + public static bool HasCap(this SolutionContainerCaps cap, SolutionContainerCaps other) + { + return (cap & other) == other; + } } } diff --git a/Content.Shared/GameObjects/Components/Atmos/SharedFilterComponent.cs b/Content.Shared/GameObjects/Components/Atmos/SharedFilterComponent.cs new file mode 100644 index 0000000000..11d7e9972a --- /dev/null +++ b/Content.Shared/GameObjects/Components/Atmos/SharedFilterComponent.cs @@ -0,0 +1,23 @@ +#nullable enable +using System; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components.Atmos +{ + [Serializable, NetSerializable] + public enum FilterVisuals + { + VisualState + } + + [Serializable, NetSerializable] + public class FilterVisualState + { + public bool Enabled { get; } + + public FilterVisualState(bool enabled) + { + Enabled = enabled; + } + } +} diff --git a/Content.Shared/GameObjects/Components/Atmos/SharedPipeComponent.cs b/Content.Shared/GameObjects/Components/Atmos/SharedPipeComponent.cs index 25301171ab..6f24813fcb 100644 --- a/Content.Shared/GameObjects/Components/Atmos/SharedPipeComponent.cs +++ b/Content.Shared/GameObjects/Components/Atmos/SharedPipeComponent.cs @@ -1,6 +1,6 @@ -using System; using Robust.Shared.Maths; using Robust.Shared.Serialization; +using System; namespace Content.Shared.GameObjects.Components.Atmos { @@ -14,12 +14,10 @@ namespace Content.Shared.GameObjects.Components.Atmos public class PipeVisualState { public readonly PipeDirection PipeDirection; - public readonly ConduitLayer ConduitLayer; - public PipeVisualState(PipeDirection pipeDirection, ConduitLayer conduitLayer) + public PipeVisualState(PipeDirection pipeDirection) { PipeDirection = pipeDirection; - ConduitLayer = conduitLayer; } } @@ -65,17 +63,15 @@ namespace Content.Shared.GameObjects.Components.Atmos Fourway } - public enum ConduitLayer - { - One = 1, - Two = 2, - Three = 3, - } - public static class PipeDirectionHelpers { public const int PipeDirections = 4; + public static bool HasDirection(this PipeDirection pipeDirection, PipeDirection other) + { + return (pipeDirection & other) == other; + } + public static Angle ToAngle(this PipeDirection pipeDirection) { return pipeDirection switch diff --git a/Content.Shared/GameObjects/Components/Atmos/SharedPumpComponent.cs b/Content.Shared/GameObjects/Components/Atmos/SharedPumpComponent.cs index 20e9c2dfb9..d57b7dfc1e 100644 --- a/Content.Shared/GameObjects/Components/Atmos/SharedPumpComponent.cs +++ b/Content.Shared/GameObjects/Components/Atmos/SharedPumpComponent.cs @@ -1,4 +1,4 @@ -using System; +using System; using Robust.Shared.Serialization; namespace Content.Shared.GameObjects.Components.Atmos @@ -14,16 +14,12 @@ namespace Content.Shared.GameObjects.Components.Atmos { public readonly PipeDirection InletDirection; public readonly PipeDirection OutletDirection; - public readonly ConduitLayer InletConduitLayer; - public readonly ConduitLayer OutletConduitLayer; public readonly bool PumpEnabled; - public PumpVisualState(PipeDirection inletDirection, PipeDirection outletDirection, ConduitLayer inletConduitLayer, ConduitLayer outletConduitLayer, bool pumpEnabled) + public PumpVisualState(PipeDirection inletDirection, PipeDirection outletDirection, bool pumpEnabled) { InletDirection = inletDirection; OutletDirection = outletDirection; - InletConduitLayer = inletConduitLayer; - OutletConduitLayer = outletConduitLayer; PumpEnabled = pumpEnabled; } } diff --git a/Content.Shared/GameObjects/Components/Body/IBody.cs b/Content.Shared/GameObjects/Components/Body/IBody.cs index 672ef1c73a..152deb3bb0 100644 --- a/Content.Shared/GameObjects/Components/Body/IBody.cs +++ b/Content.Shared/GameObjects/Components/Body/IBody.cs @@ -247,5 +247,10 @@ namespace Content.Shared.GameObjects.Components.Body /// The index to look in. /// A pair of the part name and body part occupying it. KeyValuePair PartAt(int index); + + /// + /// Gibs this body. + /// + void Gib(bool gibParts = false); } } diff --git a/Content.Shared/GameObjects/Components/Body/Part/IBodyPart.cs b/Content.Shared/GameObjects/Components/Body/Part/IBodyPart.cs index c04dcf8f19..ba8ed2d192 100644 --- a/Content.Shared/GameObjects/Components/Body/Part/IBodyPart.cs +++ b/Content.Shared/GameObjects/Components/Body/Part/IBodyPart.cs @@ -116,5 +116,10 @@ namespace Content.Shared.GameObjects.Components.Body.Part /// false otherwise. /// bool DeleteMechanism(IMechanism mechanism); + + /// + /// Gibs the body part. + /// + void Gib(); } } diff --git a/Content.Shared/GameObjects/Components/Body/Part/SharedBodyPartComponent.cs b/Content.Shared/GameObjects/Components/Body/Part/SharedBodyPartComponent.cs index 97d05c161f..ffbd3a0c70 100644 --- a/Content.Shared/GameObjects/Components/Body/Part/SharedBodyPartComponent.cs +++ b/Content.Shared/GameObjects/Components/Body/Part/SharedBodyPartComponent.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using System.Linq; using Content.Shared.GameObjects.Components.Body.Mechanism; using Content.Shared.GameObjects.Components.Body.Surgery; +using Content.Shared.Utility; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; @@ -313,6 +314,14 @@ namespace Content.Shared.GameObjects.Components.Body.Part protected virtual void OnAddedToBody(IBody body) { } protected virtual void OnRemovedFromBody(IBody old) { } + + public virtual void Gib() + { + foreach (var mechanism in _mechanisms) + { + RemoveMechanism(mechanism); + } + } } [Serializable, NetSerializable] diff --git a/Content.Shared/GameObjects/Components/Body/SharedBodyComponent.cs b/Content.Shared/GameObjects/Components/Body/SharedBodyComponent.cs index 33dda03b24..0c18eaa0df 100644 --- a/Content.Shared/GameObjects/Components/Body/SharedBodyComponent.cs +++ b/Content.Shared/GameObjects/Components/Body/SharedBodyComponent.cs @@ -1,6 +1,7 @@ #nullable enable using System; using System.Collections.Generic; +using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Linq; using Content.Shared.Damage; @@ -11,7 +12,10 @@ using Content.Shared.GameObjects.Components.Body.Template; using Content.Shared.GameObjects.Components.Damage; using Content.Shared.GameObjects.Components.Movement; using Content.Shared.GameObjects.EntitySystems; +using Content.Shared.Utility; +using Robust.Shared.Containers; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components.Containers; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; @@ -19,6 +23,7 @@ using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; +using Component = Robust.Shared.GameObjects.Component; namespace Content.Shared.GameObjects.Components.Body { @@ -697,6 +702,17 @@ namespace Content.Shared.GameObjects.Components.Body } } } + + public virtual void Gib(bool gibParts = false) + { + foreach (var (_, part) in Parts) + { + RemovePart(part); + + if (gibParts) + part.Gib(); + } + } } [Serializable, NetSerializable] diff --git a/Content.Shared/GameObjects/Components/Buckle/SharedBuckleComponent.cs b/Content.Shared/GameObjects/Components/Buckle/SharedBuckleComponent.cs index a78bd4a35c..4d86409a72 100644 --- a/Content.Shared/GameObjects/Components/Buckle/SharedBuckleComponent.cs +++ b/Content.Shared/GameObjects/Components/Buckle/SharedBuckleComponent.cs @@ -11,6 +11,7 @@ using Robust.Shared.GameObjects.Components; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Physics; using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; namespace Content.Shared.GameObjects.Components.Buckle { @@ -19,6 +20,18 @@ namespace Content.Shared.GameObjects.Components.Buckle public sealed override string Name => "Buckle"; public sealed override uint? NetID => ContentNetIDs.BUCKLE; + /// + /// The range from which this entity can buckle to a . + /// + [ViewVariables] + public float Range { get; protected set; } + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataReadWriteFunction("range", SharedInteractionSystem.InteractionRange / 1.4f, value => Range = value, () => Range); + } + /// /// True if the entity is buckled, false otherwise. /// diff --git a/Content.Shared/GameObjects/Components/Chemistry/ChemMaster/SharedChemMasterComponent.cs b/Content.Shared/GameObjects/Components/Chemistry/ChemMaster/SharedChemMasterComponent.cs index 43d1584381..11c6437475 100644 --- a/Content.Shared/GameObjects/Components/Chemistry/ChemMaster/SharedChemMasterComponent.cs +++ b/Content.Shared/GameObjects/Components/Chemistry/ChemMaster/SharedChemMasterComponent.cs @@ -1,7 +1,9 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using Content.Shared.Chemistry; +using Content.Shared.GameObjects.Components.Medical; +using Content.Shared.GameObjects.Components.Observer; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.UserInterface; using Robust.Shared.Serialization; @@ -28,20 +30,19 @@ namespace Content.Shared.GameObjects.Components.Chemistry.ChemMaster /// /// A list of the reagents and their amounts within the beaker/reagent container, if applicable. /// - public readonly List ContainerReagents; + public readonly IReadOnlyList ContainerReagents; /// /// A list of the reagents and their amounts within the buffer, if applicable. /// - public readonly List BufferReagents; + public readonly IReadOnlyList BufferReagents; public readonly string DispenserName; public readonly bool BufferModeTransfer; public readonly ReagentUnit BufferCurrentVolume; - public readonly ReagentUnit BufferMaxVolume; public ChemMasterBoundUserInterfaceState(bool hasPower, bool hasBeaker, ReagentUnit beakerCurrentVolume, ReagentUnit beakerMaxVolume, string containerName, - string dispenserName, List containerReagents, List bufferReagents, bool bufferModeTransfer, ReagentUnit bufferCurrentVolume, ReagentUnit bufferMaxVolume) + string dispenserName, IReadOnlyList containerReagents, IReadOnlyList bufferReagents, bool bufferModeTransfer, ReagentUnit bufferCurrentVolume) { HasPower = hasPower; HasBeaker = hasBeaker; @@ -53,7 +54,6 @@ namespace Content.Shared.GameObjects.Components.Chemistry.ChemMaster BufferReagents = bufferReagents; BufferModeTransfer = bufferModeTransfer; BufferCurrentVolume = bufferCurrentVolume; - BufferMaxVolume = bufferMaxVolume; } } @@ -102,7 +102,7 @@ namespace Content.Shared.GameObjects.Components.Chemistry.ChemMaster } /// - /// Used in to specify which button was pressed. + /// Used in to specify which button was pressed. /// public enum UiAction { diff --git a/Content.Shared/GameObjects/Components/Chemistry/SharedSolutionContainerComponent.cs b/Content.Shared/GameObjects/Components/Chemistry/SharedSolutionContainerComponent.cs index e65a975be4..e453f4aeda 100644 --- a/Content.Shared/GameObjects/Components/Chemistry/SharedSolutionContainerComponent.cs +++ b/Content.Shared/GameObjects/Components/Chemistry/SharedSolutionContainerComponent.cs @@ -1,100 +1,229 @@ -#nullable enable -using System; +#nullable enable using Content.Shared.Chemistry; +using Content.Shared.GameObjects.EntitySystems; using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components.Appearance; +using Robust.Shared.GameObjects.Systems; +using Robust.Shared.IoC; +using Robust.Shared.Localization; +using Robust.Shared.Log; using Robust.Shared.Maths; +using Robust.Shared.Prototypes; using Robust.Shared.Serialization; +using Robust.Shared.Utility; using Robust.Shared.ViewVariables; +using System; +using System.Collections.Generic; namespace Content.Shared.GameObjects.Components.Chemistry { - public abstract class SharedSolutionContainerComponent : Component + /// + /// Holds a with a limited volume. + /// + public abstract class SharedSolutionContainerComponent : Component, IExamine { public override string Name => "SolutionContainer"; /// public sealed override uint? NetID => ContentNetIDs.SOLUTION; - private Solution _solution = new(); - private ReagentUnit _maxVolume; - private Color _substanceColor; - - /// - /// The contained solution. - /// [ViewVariables] - public Solution Solution - { - get => _solution; - set - { - if (_solution == value) - { - return; - } + public Solution Solution { get; private set; } = new(); - _solution = value; - Dirty(); - } - } + public IReadOnlyList ReagentList => Solution.Contents; + + [ViewVariables(VVAccess.ReadWrite)] + public ReagentUnit MaxVolume { get; set; } - /// - /// The total volume of all the of the reagents in the container. - /// [ViewVariables] public ReagentUnit CurrentVolume => Solution.TotalVolume; /// - /// The maximum volume of the container. + /// Volume needed to fill this container. /// - [ViewVariables(VVAccess.ReadWrite)] - public ReagentUnit MaxVolume - { - get => _maxVolume; - set - { - if (_maxVolume == value) - { - return; - } + [ViewVariables] + public ReagentUnit EmptyVolume => MaxVolume - CurrentVolume; - _maxVolume = value; - Dirty(); - } - } + [ViewVariables] + public virtual Color Color => Solution.Color; /// - /// The current blended color of all the reagents in the container. + /// If reactions will be checked for when adding reagents to the container. /// [ViewVariables(VVAccess.ReadWrite)] - public virtual Color SubstanceColor - { - get => _substanceColor; - set - { - if (_substanceColor == value) - { - return; - } + public bool CanReact { get; set; } - _substanceColor = value; - Dirty(); - } - } - - /// - /// The current capabilities of this container (is the top open to pour? can I inject it into another object?). - /// [ViewVariables(VVAccess.ReadWrite)] public SolutionContainerCaps Capabilities { get; set; } - public abstract bool CanAddSolution(Solution solution); + public bool CanExamineContents => Capabilities.HasCap(SolutionContainerCaps.CanExamine); - public abstract bool TryAddSolution(Solution solution, bool skipReactionCheck = false, bool skipColor = false); + public bool CanUseWithChemDispenser => Capabilities.HasCap(SolutionContainerCaps.FitsInDispenser); - public abstract bool TryRemoveReagent(string reagentId, ReagentUnit quantity); + public bool CanAddSolutions => Capabilities.HasCap(SolutionContainerCaps.AddTo); + + public bool CanRemoveSolutions => Capabilities.HasCap(SolutionContainerCaps.RemoveFrom); + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(this, x => x.CanReact, "canReact", true); + serializer.DataField(this, x => x.MaxVolume, "maxVol", ReagentUnit.New(0)); + serializer.DataField(this, x => x.Solution, "contents", new Solution()); + serializer.DataField(this, x => x.Capabilities, "caps", SolutionContainerCaps.AddTo | SolutionContainerCaps.RemoveFrom | SolutionContainerCaps.CanExamine); + } + + public void RemoveAllSolution() + { + if (CurrentVolume == 0) + return; + + Solution.RemoveAllSolution(); + ChemicalsRemoved(); + } + + /// + /// Adds reagent of an Id to the container. + /// + /// The Id of the reagent to add. + /// The amount of reagent to add. + /// The amount of reagent sucesfully added. + /// If all the reagent could be added. + public bool TryAddReagent(string reagentId, ReagentUnit quantity, out ReagentUnit acceptedQuantity) + { + acceptedQuantity = EmptyVolume > quantity ? quantity : EmptyVolume; + Solution.AddReagent(reagentId, acceptedQuantity); + + if (acceptedQuantity > 0) + ChemicalsAdded(); + + return acceptedQuantity == quantity; + } + + /// + /// Removes reagent of an Id to the container. + /// + /// The Id of the reagent to remove. + /// The amount of reagent to remove. + /// If the reagent to remove was found in the container. + public bool TryRemoveReagent(string reagentId, ReagentUnit quantity) + { + if (!Solution.ContainsReagent(reagentId)) + return false; + + Solution.RemoveReagent(reagentId, quantity); + ChemicalsRemoved(); + return true; + } + + /// + /// Removes part of the solution in the container. + /// + /// the volume of solution to remove. + /// The solution that was removed. + public Solution SplitSolution(ReagentUnit quantity) + { + var splitSol = Solution.SplitSolution(quantity); + ChemicalsRemoved(); + return splitSol; + } + + /// + /// Checks if a solution can fit into the container. + /// + /// The solution that is trying to be added. + /// If the solution can be fully added. + public bool CanAddSolution(Solution solution) + { + return solution.TotalVolume <= EmptyVolume; + } + + /// + /// Adds a solution to the container, if it can fully fit. + /// + /// The solution to try to add. + /// If the solution could be added. + public bool TryAddSolution(Solution solution) + { + if (!CanAddSolution(solution)) + return false; + + Solution.AddSolution(solution); + ChemicalsAdded(); + return true; + } + + private void ChemicalsAdded() + { + ProcessReactions(); + SolutionChanged(); + UpdateAppearance(); + Dirty(); + } + + private void ChemicalsRemoved() + { + SolutionChanged(); + UpdateAppearance(); + Dirty(); + } + + private void SolutionChanged() + { + EntitySystem.Get().HandleSolutionChange(Owner); + } + + private void ProcessReactions() + { + if (!CanReact) + return; + + EntitySystem.Get() + .FullyReactSolution(Solution, Owner, MaxVolume); + } + + void IExamine.Examine(FormattedMessage message, bool inDetailsRange) + { + if (!CanExamineContents) + return; + + var prototypeManager = IoCManager.Resolve(); + + if (ReagentList.Count == 0) + { + message.AddText(Loc.GetString("Contains no chemicals.")); + return; + } + + var primaryReagent = Solution.GetPrimaryReagentId(); + if (!prototypeManager.TryIndex(primaryReagent, out ReagentPrototype proto)) + { + Logger.Error($"{nameof(SharedSolutionContainerComponent)} could not find the prototype associated with {primaryReagent}."); + return; + } + + var colorHex = Color.ToHexNoAlpha(); //TODO: If the chem has a dark color, the examine text becomes black on a black background, which is unreadable. + var messageString = "It contains a [color={0}]{1}[/color] " + (ReagentList.Count == 1 ? "chemical." : "mixture of chemicals."); + + message.AddMarkup(Loc.GetString(messageString, colorHex, Loc.GetString(proto.PhysicalDescription))); + } + + private void UpdateAppearance() + { + if (Owner.Deleted || !Owner.TryGetComponent(out var appearance)) + return; + + appearance.SetData(SolutionContainerVisuals.VisualState, GetVisualState()); + } + + private SolutionContainerVisualState GetVisualState() + { + var filledVolumeFraction = CurrentVolume.Float() / MaxVolume.Float(); + + return new SolutionContainerVisualState(Color, filledVolumeFraction); + } - /// public override ComponentState GetComponentState() { return new SolutionContainerComponentState(Solution); @@ -102,14 +231,34 @@ namespace Content.Shared.GameObjects.Components.Chemistry public override void HandleComponentState(ComponentState? curState, ComponentState? nextState) { - base.HandleComponentState(curState, nextState); - - if (curState is not SolutionContainerComponentState state) - { + if (curState is not SolutionContainerComponentState containerState) return; - } - _solution = state.Solution; + Solution = containerState.Solution; + } + } + + [Serializable, NetSerializable] + public enum SolutionContainerVisuals : byte + { + VisualState + } + + [Serializable, NetSerializable] + public class SolutionContainerVisualState + { + public readonly Color Color; + + /// + /// Represents how full the container is, as a fraction equivalent to /. + /// + public readonly byte FilledVolumeFraction; + + /// The fraction of the container's volume that is filled. + public SolutionContainerVisualState(Color color, float filledVolumeFraction) + { + Color = color; + FilledVolumeFraction = (byte) (byte.MaxValue * filledVolumeFraction); } } diff --git a/Content.Shared/GameObjects/Components/Disposal/SharedDisposalMailingUnitComponent.cs b/Content.Shared/GameObjects/Components/Disposal/SharedDisposalMailingUnitComponent.cs index 5c9def4322..da67e8d4d5 100644 --- a/Content.Shared/GameObjects/Components/Disposal/SharedDisposalMailingUnitComponent.cs +++ b/Content.Shared/GameObjects/Components/Disposal/SharedDisposalMailingUnitComponent.cs @@ -7,7 +7,7 @@ using Robust.Shared.Utility; namespace Content.Shared.GameObjects.Components.Disposal { - public abstract class SharedDisposalMailingUnitComponent : SharedDisposalUnitComponent, ICollideSpecial + public abstract class SharedDisposalMailingUnitComponent : SharedDisposalUnitComponent { public override string Name => "DisposalMailingUnit"; diff --git a/Content.Shared/GameObjects/Components/Disposal/SharedDisposalUnitComponent.cs b/Content.Shared/GameObjects/Components/Disposal/SharedDisposalUnitComponent.cs index d777c2d786..af7a801728 100644 --- a/Content.Shared/GameObjects/Components/Disposal/SharedDisposalUnitComponent.cs +++ b/Content.Shared/GameObjects/Components/Disposal/SharedDisposalUnitComponent.cs @@ -1,6 +1,11 @@ #nullable enable using System; using System.Collections.Generic; +using Content.Shared.GameObjects.Components.Body; +using Content.Shared.GameObjects.Components.Damage; +using Content.Shared.GameObjects.Components.Mobs.State; +using Content.Shared.GameObjects.Components.Storage; +using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.Components.UserInterface; @@ -12,7 +17,7 @@ using Robust.Shared.ViewVariables; namespace Content.Shared.GameObjects.Components.Disposal { - public abstract class SharedDisposalUnitComponent : Component, ICollideSpecial + public abstract class SharedDisposalUnitComponent : Component, ICollideSpecial, IDragDropOn { public override string Name => "DisposalUnit"; @@ -160,5 +165,34 @@ namespace Content.Shared.GameObjects.Components.Disposal { Key } + + public virtual bool CanInsert(IEntity entity) + { + if (!Anchored) + return false; + + if (!entity.TryGetComponent(out IPhysicsComponent? physics) || + !physics.CanCollide) + { + if (!(entity.TryGetComponent(out IMobStateComponent? damageState) && damageState.IsDead())) { + return false; + } + } + + if (!entity.HasComponent() && + !entity.HasComponent()) + { + return false; + } + + return true; + } + + public virtual bool CanDragDropOn(DragDropEventArgs eventArgs) + { + return CanInsert(eventArgs.Dragged); + } + + public abstract bool DragDropOn(DragDropEventArgs eventArgs); } } diff --git a/Content.Shared/GameObjects/Components/Explosion/SharedClusterFlashComponent.cs b/Content.Shared/GameObjects/Components/Explosion/SharedClusterFlashComponent.cs new file mode 100644 index 0000000000..f7822392dd --- /dev/null +++ b/Content.Shared/GameObjects/Components/Explosion/SharedClusterFlashComponent.cs @@ -0,0 +1,13 @@ +using System; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components.UserInterface; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components.Explosion +{ + [Serializable, NetSerializable] + public enum ClusterFlashVisuals : byte + { + GrenadesCounter + } +} diff --git a/Content.Shared/GameObjects/Components/Inventory/SharedInventoryComponent.cs b/Content.Shared/GameObjects/Components/Inventory/SharedInventoryComponent.cs index 608941b390..90dcf2d808 100644 --- a/Content.Shared/GameObjects/Components/Inventory/SharedInventoryComponent.cs +++ b/Content.Shared/GameObjects/Components/Inventory/SharedInventoryComponent.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using Content.Shared.GameObjects.Components.Movement; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Reflection; @@ -11,7 +12,7 @@ using static Content.Shared.GameObjects.Components.Inventory.EquipmentSlotDefine namespace Content.Shared.GameObjects.Components.Inventory { - public abstract class SharedInventoryComponent : Component + public abstract class SharedInventoryComponent : Component, IMoveSpeedModifier { // ReSharper disable UnassignedReadonlyField [Dependency] protected readonly IReflectionManager ReflectionManager; @@ -100,5 +101,8 @@ namespace Content.Shared.GameObjects.Components.Inventory Slot = slot; } } + + public abstract float WalkSpeedModifier { get; } + public abstract float SprintSpeedModifier { get; } } } diff --git a/Content.Shared/GameObjects/Components/Medical/SharedMedicalScannerComponent.cs b/Content.Shared/GameObjects/Components/Medical/SharedMedicalScannerComponent.cs index 10262d1fd2..e330d12b93 100644 --- a/Content.Shared/GameObjects/Components/Medical/SharedMedicalScannerComponent.cs +++ b/Content.Shared/GameObjects/Components/Medical/SharedMedicalScannerComponent.cs @@ -1,13 +1,15 @@ using System; using System.Collections.Generic; using Content.Shared.Damage; +using Content.Shared.GameObjects.Components.Body; +using Content.Shared.Interfaces.GameObjects.Components; using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components.UserInterface; using Robust.Shared.Serialization; namespace Content.Shared.GameObjects.Components.Medical { - public class SharedMedicalScannerComponent : Component + public abstract class SharedMedicalScannerComponent : Component, IDragDropOn { public override string Name => "MedicalScanner"; @@ -78,5 +80,11 @@ namespace Content.Shared.GameObjects.Components.Medical } + public bool CanDragDropOn(DragDropEventArgs eventArgs) + { + return eventArgs.Dragged.HasComponent(); + } + + public abstract bool DragDropOn(DragDropEventArgs eventArgs); } } diff --git a/Content.Shared/GameObjects/Components/Mobs/SharedAlertsComponent.cs b/Content.Shared/GameObjects/Components/Mobs/SharedAlertsComponent.cs index 30b24fdb14..1adb20d45c 100644 --- a/Content.Shared/GameObjects/Components/Mobs/SharedAlertsComponent.cs +++ b/Content.Shared/GameObjects/Components/Mobs/SharedAlertsComponent.cs @@ -93,6 +93,9 @@ namespace Content.Shared.GameObjects.Components.Mobs return; } + // In the case we're changing the alert type but not the category, we need to remove it first. + _alerts.Remove(alert.AlertKey); + _alerts[alert.AlertKey] = new AlertState {Cooldown = cooldown, Severity = severity}; diff --git a/Content.Shared/GameObjects/Components/Mobs/SharedStunnableComponent.cs b/Content.Shared/GameObjects/Components/Mobs/SharedStunnableComponent.cs index 794ab734be..c4e6395042 100644 --- a/Content.Shared/GameObjects/Components/Mobs/SharedStunnableComponent.cs +++ b/Content.Shared/GameObjects/Components/Mobs/SharedStunnableComponent.cs @@ -232,6 +232,8 @@ namespace Content.Shared.GameObjects.Components.Mobs KnockdownTimer -= _helpKnockdownRemove; + OnInteractHand(); + SetAlert(); Dirty(); diff --git a/Content.Shared/GameObjects/Components/Movement/MovementSpeedModifierComponent.cs b/Content.Shared/GameObjects/Components/Movement/MovementSpeedModifierComponent.cs index dd9a1e391a..a978f31769 100644 --- a/Content.Shared/GameObjects/Components/Movement/MovementSpeedModifierComponent.cs +++ b/Content.Shared/GameObjects/Components/Movement/MovementSpeedModifierComponent.cs @@ -1,4 +1,6 @@ -using Robust.Shared.GameObjects; +using Robust.Shared.Containers; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Serialization; using Robust.Shared.ViewVariables; @@ -54,6 +56,15 @@ namespace Content.Shared.GameObjects.Components.Movement _movespeedModifiersNeedRefresh = true; } + public static void RefreshItemModifiers(IEntity item) + { + if (item.TryGetContainer(out var container) && + container.Owner.TryGetComponent(out MovementSpeedModifierComponent mod)) + { + mod.RefreshMovementSpeedModifiers(); + } + } + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); diff --git a/Content.Shared/GameObjects/Components/Movement/SharedClimbableComponent.cs b/Content.Shared/GameObjects/Components/Movement/SharedClimbableComponent.cs index 951d051ac1..5aec1e46df 100644 --- a/Content.Shared/GameObjects/Components/Movement/SharedClimbableComponent.cs +++ b/Content.Shared/GameObjects/Components/Movement/SharedClimbableComponent.cs @@ -1,11 +1,34 @@ -using Robust.Shared.GameObjects; +using Content.Shared.GameObjects.EntitySystems; +using Content.Shared.Interfaces.GameObjects.Components; +using Robust.Shared.GameObjects; +using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; namespace Content.Shared.GameObjects.Components.Movement { public interface IClimbable { }; - public class SharedClimbableComponent : Component, IClimbable + public abstract class SharedClimbableComponent : Component, IClimbable, IDragDropOn { public sealed override string Name => "Climbable"; + + /// + /// The range from which this entity can be climbed. + /// + [ViewVariables] + protected float Range; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + serializer.DataField(ref Range, "range", SharedInteractionSystem.InteractionRange / 1.4f); + } + + public virtual bool CanDragDropOn(DragDropEventArgs eventArgs) + { + return eventArgs.Dragged.HasComponent(); + } + + public abstract bool DragDropOn(DragDropEventArgs eventArgs); } } diff --git a/Content.Shared/GameObjects/Components/Movement/SharedClimbingComponent.cs b/Content.Shared/GameObjects/Components/Movement/SharedClimbingComponent.cs index e55e599f63..db39b8d368 100644 --- a/Content.Shared/GameObjects/Components/Movement/SharedClimbingComponent.cs +++ b/Content.Shared/GameObjects/Components/Movement/SharedClimbingComponent.cs @@ -6,11 +6,10 @@ using Robust.Shared.GameObjects; using Robust.Shared.GameObjects.Components; using Robust.Shared.Physics; using Robust.Shared.Serialization; -using Content.Shared.Interfaces.GameObjects.Components; namespace Content.Shared.GameObjects.Components.Movement { - public abstract class SharedClimbingComponent : Component, IActionBlocker, ICollideSpecial, IDraggable + public abstract class SharedClimbingComponent : Component, IActionBlocker, ICollideSpecial { public sealed override string Name => "Climbing"; public sealed override uint? NetID => ContentNetIDs.CLIMBING; @@ -47,16 +46,6 @@ namespace Content.Shared.GameObjects.Components.Movement return false; } - bool IDraggable.CanDrop(CanDropEventArgs args) - { - return args.Target.HasComponent(); - } - - bool IDraggable.Drop(DragDropEventArgs args) - { - return false; - } - public override void Initialize() { base.Initialize(); diff --git a/Content.Shared/GameObjects/Components/Nutrition/SharedHungerComponent.cs b/Content.Shared/GameObjects/Components/Nutrition/SharedHungerComponent.cs index 7faa1d69a6..451e49b2b5 100644 --- a/Content.Shared/GameObjects/Components/Nutrition/SharedHungerComponent.cs +++ b/Content.Shared/GameObjects/Components/Nutrition/SharedHungerComponent.cs @@ -2,6 +2,7 @@ using System; using Content.Shared.GameObjects.Components.Movement; using Robust.Shared.GameObjects; using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; namespace Content.Shared.GameObjects.Components.Nutrition { @@ -11,6 +12,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition public sealed override uint? NetID => ContentNetIDs.HUNGER; + [ViewVariables] public abstract HungerThreshold CurrentHungerThreshold { get; } @@ -20,7 +22,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition { if (CurrentHungerThreshold == HungerThreshold.Starving) { - return 0.5f; + return 0.75f; } return 1.0f; } @@ -31,7 +33,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition { if (CurrentHungerThreshold == HungerThreshold.Starving) { - return 0.5f; + return 0.75f; } return 1.0f; } @@ -49,6 +51,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition } } + [Serializable, NetSerializable] public enum HungerThreshold : byte { Overfed, diff --git a/Content.Shared/GameObjects/Components/Nutrition/SharedThirstComponent.cs b/Content.Shared/GameObjects/Components/Nutrition/SharedThirstComponent.cs index 70ad6d4976..404586d76e 100644 --- a/Content.Shared/GameObjects/Components/Nutrition/SharedThirstComponent.cs +++ b/Content.Shared/GameObjects/Components/Nutrition/SharedThirstComponent.cs @@ -2,6 +2,7 @@ using System; using Content.Shared.GameObjects.Components.Movement; using Robust.Shared.GameObjects; using Robust.Shared.Serialization; +using Robust.Shared.ViewVariables; namespace Content.Shared.GameObjects.Components.Nutrition { @@ -11,6 +12,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition public sealed override uint? NetID => ContentNetIDs.THIRST; + [ViewVariables] public abstract ThirstThreshold CurrentThirstThreshold { get; } float IMoveSpeedModifier.SprintSpeedModifier @@ -19,7 +21,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition { if (CurrentThirstThreshold == ThirstThreshold.Parched) { - return 0.25f; + return 0.75f; } return 1.0f; } @@ -30,7 +32,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition { if (CurrentThirstThreshold == ThirstThreshold.Parched) { - return 0.5f; + return 0.75f; } return 1.0f; } @@ -49,6 +51,7 @@ namespace Content.Shared.GameObjects.Components.Nutrition } + [NetSerializable, Serializable] public enum ThirstThreshold : byte { // Hydrohomies diff --git a/Content.Shared/GameObjects/Components/Observer/AcceptCloningEuiMessage.cs b/Content.Shared/GameObjects/Components/Observer/AcceptCloningEuiMessage.cs new file mode 100644 index 0000000000..64bedec346 --- /dev/null +++ b/Content.Shared/GameObjects/Components/Observer/AcceptCloningEuiMessage.cs @@ -0,0 +1,24 @@ +using System; +using Content.Shared.Eui; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components.Observer +{ + [Serializable, NetSerializable] + public enum AcceptCloningUiButton + { + Deny, + Accept, + } + + [Serializable, NetSerializable] + public class AcceptCloningChoiceMessage : EuiMessageBase + { + public readonly AcceptCloningUiButton Button; + + public AcceptCloningChoiceMessage(AcceptCloningUiButton button) + { + Button = button; + } + } +} diff --git a/Content.Shared/GameObjects/Components/SharedAcceptCloningComponent.cs b/Content.Shared/GameObjects/Components/SharedAcceptCloningComponent.cs deleted file mode 100644 index 94383004c5..0000000000 --- a/Content.Shared/GameObjects/Components/SharedAcceptCloningComponent.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -using Robust.Shared.GameObjects; -using Robust.Shared.GameObjects.Components.UserInterface; -using Robust.Shared.Serialization; - -namespace Content.Shared.GameObjects.Components -{ - public class SharedAcceptCloningComponent : Component - { - public override string Name => "AcceptCloning"; - - [Serializable, NetSerializable] - public enum AcceptCloningUiKey - { - Key - } - - [Serializable, NetSerializable] - public enum UiButton - { - Accept - } - - [Serializable, NetSerializable] - public class UiButtonPressedMessage : BoundUserInterfaceMessage - { - public readonly UiButton Button; - - public UiButtonPressedMessage(UiButton button) - { - Button = button; - } - } - - } -} diff --git a/Content.Shared/GameObjects/Components/SharedBurningStates.cs b/Content.Shared/GameObjects/Components/SharedBurningStates.cs new file mode 100644 index 0000000000..d371943d62 --- /dev/null +++ b/Content.Shared/GameObjects/Components/SharedBurningStates.cs @@ -0,0 +1,13 @@ +using System; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components +{ + [Serializable, NetSerializable] + public enum SharedBurningStates : byte + { + Unlit, + Lit, + Burnt, + } +} diff --git a/Content.Shared/GameObjects/Components/SharedMagbootsComponent.cs b/Content.Shared/GameObjects/Components/SharedMagbootsComponent.cs new file mode 100644 index 0000000000..02f19e4350 --- /dev/null +++ b/Content.Shared/GameObjects/Components/SharedMagbootsComponent.cs @@ -0,0 +1,35 @@ +using System; +using Content.Shared.GameObjects.Components.Movement; +using Robust.Shared.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components +{ + public abstract class SharedMagbootsComponent : Component, IMoveSpeedModifier + { + public sealed override string Name => "Magboots"; + public sealed override uint? NetID => ContentNetIDs.MAGBOOTS; + + public abstract bool On { get; set; } + + + protected void OnChanged() + { + MovementSpeedModifierComponent.RefreshItemModifiers(Owner); + } + + public float WalkSpeedModifier => On ? 0.85f : 1; + public float SprintSpeedModifier => On ? 0.65f : 1; + + [Serializable, NetSerializable] + public sealed class MagbootsComponentState : ComponentState + { + public bool On { get; } + + public MagbootsComponentState(bool @on) : base(ContentNetIDs.MAGBOOTS) + { + On = on; + } + } + } +} diff --git a/Content.Shared/GameObjects/Components/SharedPlaceableSurfaceComponent.cs b/Content.Shared/GameObjects/Components/SharedPlaceableSurfaceComponent.cs index 9ed7a48cd1..ef84393789 100644 --- a/Content.Shared/GameObjects/Components/SharedPlaceableSurfaceComponent.cs +++ b/Content.Shared/GameObjects/Components/SharedPlaceableSurfaceComponent.cs @@ -1,5 +1,6 @@ using System; using Robust.Shared.GameObjects; +using Robust.Shared.Maths; using Robust.Shared.Serialization; namespace Content.Shared.GameObjects.Components @@ -8,18 +9,23 @@ namespace Content.Shared.GameObjects.Components { public override string Name => "PlaceableSurface"; public override uint? NetID => ContentNetIDs.PLACEABLE_SURFACE; - public virtual bool IsPlaceable { get; set; } + public virtual bool PlaceCentered { get; set; } + public virtual Vector2 PositionOffset { get; set; } } [Serializable, NetSerializable] public class PlaceableSurfaceComponentState : ComponentState { public readonly bool IsPlaceable; + public readonly bool PlaceCentered; + public readonly Vector2 PositionOffset; - public PlaceableSurfaceComponentState(bool placeable) : base(ContentNetIDs.PLACEABLE_SURFACE) + public PlaceableSurfaceComponentState(bool placeable, bool centered, Vector2 offset) : base(ContentNetIDs.PLACEABLE_SURFACE) { IsPlaceable = placeable; + PlaceCentered = centered; + PositionOffset = offset; } } } diff --git a/Content.Shared/GameObjects/Components/SharedStackComponent.cs b/Content.Shared/GameObjects/Components/SharedStackComponent.cs index 90363daebc..bcd14e0053 100644 --- a/Content.Shared/GameObjects/Components/SharedStackComponent.cs +++ b/Content.Shared/GameObjects/Components/SharedStackComponent.cs @@ -27,10 +27,6 @@ namespace Content.Shared.GameObjects.Components _count = value; if (_count <= 0) { - if (Owner.TryGetContainerMan(out var containerManager)) - { - containerManager.Remove(Owner); - } Owner.Delete(); } diff --git a/Content.Shared/GameObjects/Components/SmokingVisuals.cs b/Content.Shared/GameObjects/Components/SmokingVisuals.cs new file mode 100644 index 0000000000..851a510d6d --- /dev/null +++ b/Content.Shared/GameObjects/Components/SmokingVisuals.cs @@ -0,0 +1,11 @@ +using System; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components +{ + [Serializable, NetSerializable] + public enum SmokingVisuals : byte + { + Smoking, + } +} diff --git a/Content.Shared/GameObjects/Components/Strap/SharedStrapComponent.cs b/Content.Shared/GameObjects/Components/Strap/SharedStrapComponent.cs index cd07ec0942..66a5aa73d3 100644 --- a/Content.Shared/GameObjects/Components/Strap/SharedStrapComponent.cs +++ b/Content.Shared/GameObjects/Components/Strap/SharedStrapComponent.cs @@ -1,4 +1,8 @@ using System; +using Content.Shared.GameObjects.Components.Buckle; +using Content.Shared.GameObjects.EntitySystems; +using Content.Shared.Interfaces.GameObjects.Components; +using Content.Shared.Utility; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Serialization; @@ -23,11 +27,21 @@ namespace Content.Shared.GameObjects.Components.Strap Down } - public abstract class SharedStrapComponent : Component + public abstract class SharedStrapComponent : Component, IDragDropOn { public sealed override string Name => "Strap"; public sealed override uint? NetID => ContentNetIDs.STRAP; + + public virtual bool CanDragDropOn(DragDropEventArgs eventArgs) + { + if (!eventArgs.Dragged.TryGetComponent(out SharedBuckleComponent buckleComponent)) return false; + bool Ignored(IEntity entity) => entity == eventArgs.User || entity == eventArgs.Dragged || entity == eventArgs.Target; + + return eventArgs.Target.InRangeUnobstructed(eventArgs.Dragged, buckleComponent.Range, predicate: Ignored); + } + + public abstract bool DragDropOn(DragDropEventArgs eventArgs); } [Serializable, NetSerializable] diff --git a/Content.Shared/GameObjects/Components/Suspicion/SharedSuspicionRoleComponent.cs b/Content.Shared/GameObjects/Components/Suspicion/SharedSuspicionRoleComponent.cs index c31e2e7cce..7bee76b3e2 100644 --- a/Content.Shared/GameObjects/Components/Suspicion/SharedSuspicionRoleComponent.cs +++ b/Content.Shared/GameObjects/Components/Suspicion/SharedSuspicionRoleComponent.cs @@ -18,58 +18,13 @@ namespace Content.Shared.GameObjects.Components.Suspicion { public readonly string? Role; public readonly bool? Antagonist; + public readonly (string name, EntityUid)[] Allies; - public SuspicionRoleComponentState(string? role, bool? antagonist) : base(ContentNetIDs.SUSPICION_ROLE) + public SuspicionRoleComponentState(string? role, bool? antagonist, (string name, EntityUid)[] allies) : base(ContentNetIDs.SUSPICION_ROLE) { Role = role; Antagonist = antagonist; - } - } - - [Serializable, NetSerializable] - public class SuspicionAlliesMessage : ComponentMessage - { - public readonly HashSet Allies; - - public SuspicionAlliesMessage(HashSet allies) - { - Directed = true; Allies = allies; } - - public SuspicionAlliesMessage(IEnumerable allies) : this(allies.ToHashSet()) { } - } - - [Serializable, NetSerializable] - public class SuspicionAllyAddedMessage : ComponentMessage - { - public readonly EntityUid Ally; - - public SuspicionAllyAddedMessage(EntityUid ally) - { - Directed = true; - Ally = ally; - } - } - - [Serializable, NetSerializable] - public class SuspicionAllyRemovedMessage : ComponentMessage - { - public readonly EntityUid Ally; - - public SuspicionAllyRemovedMessage(EntityUid ally) - { - Directed = true; - Ally = ally; - } - } - - [Serializable, NetSerializable] - public class SuspicionAlliesClearedMessage : ComponentMessage - { - public SuspicionAlliesClearedMessage() - { - Directed = true; - } } } diff --git a/Content.Shared/GameObjects/Components/Utensil/SharedUtensilComponent.cs b/Content.Shared/GameObjects/Components/Utensil/SharedUtensilComponent.cs deleted file mode 100644 index faccf1287d..0000000000 --- a/Content.Shared/GameObjects/Components/Utensil/SharedUtensilComponent.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using Robust.Shared.GameObjects; - -namespace Content.Shared.GameObjects.Components.Utensil -{ - [Flags] - public enum UtensilType : byte - { - None = 0, - Fork = 1, - Spoon = 1 << 1, - Knife = 1 << 2 - } - - public class SharedUtensilComponent : Component - { - public override string Name => "Utensil"; - - public virtual UtensilType Types { get; set; } - } -} diff --git a/Content.Shared/GameObjects/Components/Watercloset/SharedWaterclosetVisuals.cs b/Content.Shared/GameObjects/Components/Watercloset/SharedWaterclosetVisuals.cs new file mode 100644 index 0000000000..0ee66dd2c9 --- /dev/null +++ b/Content.Shared/GameObjects/Components/Watercloset/SharedWaterclosetVisuals.cs @@ -0,0 +1,13 @@ +#nullable enable +using Robust.Shared.Serialization; +using System; + +namespace Content.Shared.GameObjects.Components.Watercloset +{ + [Serializable, NetSerializable] + public enum ToiletVisuals + { + LidOpen, + SeatUp + } +} diff --git a/Content.Shared/GameObjects/ContentNetIDs.cs b/Content.Shared/GameObjects/ContentNetIDs.cs index 3c54d324ed..0fe7b87c6c 100644 --- a/Content.Shared/GameObjects/ContentNetIDs.cs +++ b/Content.Shared/GameObjects/ContentNetIDs.cs @@ -88,6 +88,7 @@ public const uint REAGENT_GRINDER = 1082; public const uint ACTIONS = 1083; public const uint DAMAGEABLE = 1084; + public const uint MAGBOOTS = 1085; // Net IDs for integration tests. public const uint PREDICTION_TEST = 10001; diff --git a/Content.Shared/GameObjects/EntitySystemMessages/MeleeWeaponSystemMessages.cs b/Content.Shared/GameObjects/EntitySystemMessages/MeleeWeaponSystemMessages.cs index 1d16d09083..d949c33c76 100644 --- a/Content.Shared/GameObjects/EntitySystemMessages/MeleeWeaponSystemMessages.cs +++ b/Content.Shared/GameObjects/EntitySystemMessages/MeleeWeaponSystemMessages.cs @@ -30,5 +30,18 @@ namespace Content.Shared.GameObjects.EntitySystemMessages public bool TextureEffect { get; } public bool ArcFollowAttacker { get; } } + + [Serializable, NetSerializable] + public sealed class PlayLungeAnimationMessage : EntitySystemMessage + { + public Angle Angle { get; } + public EntityUid Source { get; } + + public PlayLungeAnimationMessage(Angle angle, EntityUid source) + { + Angle = angle; + Source = source; + } + } } } diff --git a/Content.Server/GameObjects/EntitySystems/ChemistrySystem.cs b/Content.Shared/GameObjects/EntitySystems/ChemistrySystem.cs similarity index 90% rename from Content.Server/GameObjects/EntitySystems/ChemistrySystem.cs rename to Content.Shared/GameObjects/EntitySystems/ChemistrySystem.cs index 69bd555460..e6e531eb1a 100644 --- a/Content.Server/GameObjects/EntitySystems/ChemistrySystem.cs +++ b/Content.Shared/GameObjects/EntitySystems/ChemistrySystem.cs @@ -1,10 +1,10 @@ -using System; +using System; using System.Linq; using JetBrains.Annotations; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; -namespace Content.Server.GameObjects.EntitySystems +namespace Content.Shared.GameObjects.EntitySystems { /// /// This interface gives components behavior on whether entities solution (implying SolutionComponent is in place) is changed @@ -36,6 +36,9 @@ namespace Content.Server.GameObjects.EntitySystems foreach (var solutionChangeArg in solutionChangeArgs) { solutionChangeArg.SolutionChanged(eventArgs); + + if (owner.Deleted) + return; } } } diff --git a/Content.Shared/GameObjects/EntitySystems/ExamineSystemShared.cs b/Content.Shared/GameObjects/EntitySystems/ExamineSystemShared.cs index b052dc4ea9..0a20721eac 100644 --- a/Content.Shared/GameObjects/EntitySystems/ExamineSystemShared.cs +++ b/Content.Shared/GameObjects/EntitySystems/ExamineSystemShared.cs @@ -6,7 +6,6 @@ using Content.Shared.Utility; using JetBrains.Annotations; using Robust.Shared.Containers; using Robust.Shared.GameObjects; -using Robust.Shared.GameObjects.Components; using Robust.Shared.GameObjects.Systems; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Map; @@ -161,7 +160,7 @@ namespace Content.Shared.GameObjects.EntitySystems public static bool InRangeUnOccluded(AfterInteractEventArgs args, float range, Ignored? predicate, bool ignoreInsideBlocker = true) { var originPos = args.User.Transform.MapPosition; - var otherPos = args.Target.Transform.MapPosition; + var otherPos = args.Target?.Transform.MapPosition ?? args.ClickLocation.ToMap(args.User.EntityManager); return InRangeUnOccluded(originPos, otherPos, range, predicate, ignoreInsideBlocker); } diff --git a/Content.Shared/GameObjects/EntitySystems/SharedChemicalReactionSystem.cs b/Content.Shared/GameObjects/EntitySystems/SharedChemicalReactionSystem.cs new file mode 100644 index 0000000000..8c2a3a6e7e --- /dev/null +++ b/Content.Shared/GameObjects/EntitySystems/SharedChemicalReactionSystem.cs @@ -0,0 +1,155 @@ +using Content.Shared.Chemistry; +using Robust.Shared.GameObjects.Systems; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; +using Robust.Shared.Log; +using Robust.Shared.Prototypes; +using System.Collections.Generic; + +namespace Content.Shared.GameObjects.EntitySystems +{ + public abstract class SharedChemicalReactionSystem : EntitySystem + { + private IEnumerable _reactions; + + private const int MaxReactionIterations = 20; + + [Dependency] private readonly IPrototypeManager _prototypeManager = default!; + + public override void Initialize() + { + base.Initialize(); + _reactions = _prototypeManager.EnumeratePrototypes(); + } + + /// + /// Checks if a solution can undergo a specified reaction. + /// + /// The solution to check. + /// The reaction to check. + /// How many times this reaction can occur. + /// + private static bool CanReact(Solution solution, ReactionPrototype reaction, out ReagentUnit lowestUnitReactions) + { + lowestUnitReactions = ReagentUnit.MaxValue; + + foreach (var reactantData in reaction.Reactants) + { + var reactantName = reactantData.Key; + var reactantCoefficient = reactantData.Value.Amount; + + if (!solution.ContainsReagent(reactantName, out var reactantQuantity)) + return false; + + var unitReactions = reactantQuantity / reactantCoefficient; + + if (unitReactions < lowestUnitReactions) + { + lowestUnitReactions = unitReactions; + } + } + return true; + } + + /// + /// Perform a reaction on a solution. This assumes all reaction criteria are met. + /// Removes the reactants from the solution, then returns a solution with all products. + /// + private Solution PerformReaction(Solution solution, IEntity owner, ReactionPrototype reaction, ReagentUnit unitReactions) + { + //Remove reactants + foreach (var reactant in reaction.Reactants) + { + if (!reactant.Value.Catalyst) + { + var amountToRemove = unitReactions * reactant.Value.Amount; + solution.RemoveReagent(reactant.Key, amountToRemove); + } + } + + //Create products + var products = new Solution(); + foreach (var product in reaction.Products) + { + products.AddReagent(product.Key, product.Value * unitReactions); + } + + // Trigger reaction effects + OnReaction(reaction, owner, unitReactions); + + return products; + } + + protected virtual void OnReaction(ReactionPrototype reaction, IEntity owner, ReagentUnit unitReactions) + { + foreach (var effect in reaction.Effects) + { + effect.React(owner, unitReactions.Double()); + } + } + + /// + /// Performs all chemical reactions that can be run on a solution. + /// Removes the reactants from the solution, then returns a solution with all products. + /// WARNING: Does not trigger reactions between solution and new products. + /// + private Solution ProcessReactions(Solution solution, IEntity owner) + { + //TODO: make a hashmap at startup and then look up reagents in the contents for a reaction + var overallProducts = new Solution(); + foreach (var reaction in _reactions) + { + if (CanReact(solution, reaction, out var unitReactions)) + { + var reactionProducts = PerformReaction(solution, owner, reaction, unitReactions); + overallProducts.AddSolution(reactionProducts); + break; + } + } + return overallProducts; + } + + /// + /// Continually react a solution until no more reactions occur. + /// + public void FullyReactSolution(Solution solution, IEntity owner) + { + for (var i = 0; i < MaxReactionIterations; i++) + { + var products = ProcessReactions(solution, owner); + + if (products.TotalVolume <= 0) + return; + + solution.AddSolution(products); + } + Logger.Error($"{nameof(Solution)} on {owner} (Uid: {owner.Uid}) could not finish reacting in under {MaxReactionIterations} loops."); + } + + /// + /// Continually react a solution until no more reactions occur, with a volume constraint. + /// If a reaction's products would exceed the max volume, some product is deleted. + /// + public void FullyReactSolution(Solution solution, IEntity owner, ReagentUnit maxVolume) + { + for (var i = 0; i < MaxReactionIterations; i++) + { + var products = ProcessReactions(solution, owner); + + if (products.TotalVolume <= 0) + return; + + var totalVolume = solution.TotalVolume + products.TotalVolume; + var excessVolume = totalVolume - maxVolume; + + if (excessVolume > 0) + { + products.RemoveSolution(excessVolume); //excess product is deleted to fit under volume limit + } + + solution.AddSolution(products); + } + Logger.Error($"{nameof(Solution)} on {owner} (Uid: {owner.Uid}) could not finish reacting in under {MaxReactionIterations} loops."); + } + } +} diff --git a/Content.Shared/GameTicking/SharedGameTicker.cs b/Content.Shared/GameTicking/SharedGameTicker.cs index 1251e6d3b4..ad8445656b 100644 --- a/Content.Shared/GameTicking/SharedGameTicker.cs +++ b/Content.Shared/GameTicking/SharedGameTicker.cs @@ -92,7 +92,7 @@ namespace Content.Shared.GameTicking public bool IsRoundStarted { get; set; } public bool YouAreReady { get; set; } // UTC. - public DateTime StartTime { get; set; } + public TimeSpan StartTime { get; set; } public bool Paused { get; set; } public override void ReadFromBuffer(NetIncomingMessage buffer) @@ -105,7 +105,7 @@ namespace Content.Shared.GameTicking } YouAreReady = buffer.ReadBoolean(); - StartTime = new DateTime(buffer.ReadInt64(), DateTimeKind.Utc); + StartTime = new TimeSpan(buffer.ReadInt64()); Paused = buffer.ReadBoolean(); } @@ -158,9 +158,9 @@ namespace Content.Shared.GameTicking #endregion /// - /// The total amount of seconds to go until the countdown finishes + /// The game time that the game will start at. /// - public DateTime StartTime { get; set; } + public TimeSpan StartTime { get; set; } /// /// Whether or not the countdown is paused @@ -169,7 +169,7 @@ namespace Content.Shared.GameTicking public override void ReadFromBuffer(NetIncomingMessage buffer) { - StartTime = new DateTime(buffer.ReadInt64(), DateTimeKind.Utc); + StartTime = new TimeSpan(buffer.ReadInt64()); Paused = buffer.ReadBoolean(); } diff --git a/Content.Server/Interfaces/Chemistry/IReactionEffect.cs b/Content.Shared/Interfaces/Chemistry/IReactionEffect.cs similarity index 87% rename from Content.Server/Interfaces/Chemistry/IReactionEffect.cs rename to Content.Shared/Interfaces/Chemistry/IReactionEffect.cs index 36209aef3c..21a4ea91f9 100644 --- a/Content.Server/Interfaces/Chemistry/IReactionEffect.cs +++ b/Content.Shared/Interfaces/Chemistry/IReactionEffect.cs @@ -1,4 +1,4 @@ -using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Serialization; namespace Content.Server.Interfaces.Chemistry diff --git a/Content.Shared/Interfaces/GameObjects/Components/Interaction/IAfterInteract.cs b/Content.Shared/Interfaces/GameObjects/Components/Interaction/IAfterInteract.cs index 8225b0d4e9..16299a23c9 100644 --- a/Content.Shared/Interfaces/GameObjects/Components/Interaction/IAfterInteract.cs +++ b/Content.Shared/Interfaces/GameObjects/Components/Interaction/IAfterInteract.cs @@ -5,6 +5,8 @@ using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Map; +#nullable enable + namespace Content.Shared.Interfaces.GameObjects.Components { /// @@ -22,10 +24,18 @@ namespace Content.Shared.Interfaces.GameObjects.Components public class AfterInteractEventArgs : EventArgs { - public IEntity User { get; set; } - public EntityCoordinates ClickLocation { get; set; } - public IEntity Target { get; set; } - public bool CanReach { get; set; } + public IEntity User { get; } + public EntityCoordinates ClickLocation { get; } + public IEntity? Target { get; } + public bool CanReach { get; } + + public AfterInteractEventArgs(IEntity user, EntityCoordinates clickLocation, IEntity? target, bool canReach) + { + User = user; + ClickLocation = clickLocation; + Target = target; + CanReach = canReach; + } } /// @@ -52,7 +62,7 @@ namespace Content.Shared.Interfaces.GameObjects.Components /// /// Entity that was attacked. This can be null if the attack did not click on an entity. /// - public IEntity Attacked { get; } + public IEntity? Attacked { get; } /// /// Location that the user clicked outside of their interaction range. @@ -65,7 +75,8 @@ namespace Content.Shared.Interfaces.GameObjects.Components /// public bool CanReach { get; } - public AfterInteractMessage(IEntity user, IEntity itemInHand, IEntity attacked, EntityCoordinates clickLocation, bool canReach) + public AfterInteractMessage(IEntity user, IEntity itemInHand, IEntity? attacked, + EntityCoordinates clickLocation, bool canReach) { User = user; Attacked = attacked; @@ -74,5 +85,4 @@ namespace Content.Shared.Interfaces.GameObjects.Components CanReach = canReach; } } - } diff --git a/Content.Shared/Interfaces/GameObjects/Components/Interaction/IDragDropOn.cs b/Content.Shared/Interfaces/GameObjects/Components/Interaction/IDragDropOn.cs index 1100bdb3d3..761fbe86de 100644 --- a/Content.Shared/Interfaces/GameObjects/Components/Interaction/IDragDropOn.cs +++ b/Content.Shared/Interfaces/GameObjects/Components/Interaction/IDragDropOn.cs @@ -7,7 +7,7 @@ namespace Content.Shared.Interfaces.GameObjects.Components public interface IDragDropOn { /// - /// Invoked server-side when another entity is being dragged and dropped + /// Invoked when another entity is being dragged and dropped /// onto this one before invoking . /// Note that other drag and drop interactions may be attempted if /// this one fails. diff --git a/Content.Shared/Interfaces/GameObjects/Components/Interaction/IHotItem.cs b/Content.Shared/Interfaces/GameObjects/Components/Interaction/IHotItem.cs new file mode 100644 index 0000000000..a86fee8c51 --- /dev/null +++ b/Content.Shared/Interfaces/GameObjects/Components/Interaction/IHotItem.cs @@ -0,0 +1,17 @@ +using JetBrains.Annotations; +using Robust.Shared.GameObjects; + +namespace Content.Shared.Interfaces.GameObjects.Components +{ + /// + /// This interface gives components hot quality when they are used. + /// E.g if you hold a lit match or a welder then it will be hot, + /// presuming match is lit or the welder is on respectively. + /// However say you hold an item that is always hot like lava rock, + /// it will be permanently hot. + /// + public interface IHotItem + { + bool IsCurrentlyHot(); + } +} diff --git a/Content.Shared/Physics/CollisionGroup.cs b/Content.Shared/Physics/CollisionGroup.cs index c5d2448076..5b676e8432 100644 --- a/Content.Shared/Physics/CollisionGroup.cs +++ b/Content.Shared/Physics/CollisionGroup.cs @@ -1,4 +1,4 @@ -using System; +using System; using JetBrains.Annotations; using Robust.Shared.Map; using Robust.Shared.Serialization; @@ -23,6 +23,7 @@ namespace Content.Shared.Physics GhostImpassable = 1 << 6, // 64 Things impassible by ghosts/observers, ie blessed tiles or forcefields Underplating = 1 << 7, // 128 Things that are under plating Passable = 1 << 8, // 256 Things that are passable + ExplosivePassable = 1 << 9, // 512 Things that let the pressure of a explosion through MapGrid = MapGridHelpers.CollisionGroup, // Map grids, like shuttles. This is the actual grid itself, not the walls or other entities connected to the grid. MobMask = Impassable | MobImpassable | VaultImpassable | SmallImpassable, diff --git a/Content.Shared/Preferences/BackpackPreference.cs b/Content.Shared/Preferences/BackpackPreference.cs new file mode 100644 index 0000000000..da2c4b8fe8 --- /dev/null +++ b/Content.Shared/Preferences/BackpackPreference.cs @@ -0,0 +1,12 @@ +namespace Content.Shared.Preferences +{ + /// + /// The backpack preference for a profile. Stored in database! + /// + public enum BackpackPreference + { + Backpack, + Satchel, + Duffelbag + } +} diff --git a/Content.Shared/Preferences/HumanoidCharacterProfile.cs b/Content.Shared/Preferences/HumanoidCharacterProfile.cs index 53777695ea..2c7ae05637 100644 --- a/Content.Shared/Preferences/HumanoidCharacterProfile.cs +++ b/Content.Shared/Preferences/HumanoidCharacterProfile.cs @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable using System; using System.Collections.Generic; using System.Linq; @@ -34,6 +34,7 @@ namespace Content.Shared.Preferences Gender gender, HumanoidCharacterAppearance appearance, ClothingPreference clothing, + BackpackPreference backpack, Dictionary jobPriorities, PreferenceUnavailableMode preferenceUnavailable, List antagPreferences) @@ -44,6 +45,7 @@ namespace Content.Shared.Preferences Gender = gender; Appearance = appearance; Clothing = clothing; + Backpack = backpack; _jobPriorities = jobPriorities; PreferenceUnavailable = preferenceUnavailable; _antagPreferences = antagPreferences; @@ -54,7 +56,7 @@ namespace Content.Shared.Preferences HumanoidCharacterProfile other, Dictionary jobPriorities, List antagPreferences) - : this(other.Name, other.Age, other.Sex, other.Gender, other.Appearance, other.Clothing, + : this(other.Name, other.Age, other.Sex, other.Gender, other.Appearance, other.Clothing, other.Backpack, jobPriorities, other.PreferenceUnavailable, antagPreferences) { } @@ -72,10 +74,11 @@ namespace Content.Shared.Preferences Gender gender, HumanoidCharacterAppearance appearance, ClothingPreference clothing, + BackpackPreference backpack, IReadOnlyDictionary jobPriorities, PreferenceUnavailableMode preferenceUnavailable, IReadOnlyList antagPreferences) - : this(name, age, sex, gender, appearance, clothing, new Dictionary(jobPriorities), + : this(name, age, sex, gender, appearance, clothing, backpack, new Dictionary(jobPriorities), preferenceUnavailable, new List(antagPreferences)) { } @@ -98,7 +101,7 @@ namespace Content.Shared.Preferences var name = $"{firstName} {lastName}"; var age = random.Next(MinimumAge, MaximumAge); - return new HumanoidCharacterProfile(name, age, sex, gender, HumanoidCharacterAppearance.Random(sex), ClothingPreference.Jumpsuit, + return new HumanoidCharacterProfile(name, age, sex, gender, HumanoidCharacterAppearance.Random(sex), ClothingPreference.Jumpsuit, BackpackPreference.Backpack, new Dictionary { {SharedGameTicker.OverflowJob, JobPriority.High} @@ -112,6 +115,7 @@ namespace Content.Shared.Preferences public ICharacterAppearance CharacterAppearance => Appearance; public HumanoidCharacterAppearance Appearance { get; private set; } public ClothingPreference Clothing { get; private set; } + public BackpackPreference Backpack { get; private set; } public IReadOnlyDictionary JobPriorities => _jobPriorities; public IReadOnlyList AntagPreferences => _antagPreferences; public PreferenceUnavailableMode PreferenceUnavailable { get; private set; } @@ -145,7 +149,10 @@ namespace Content.Shared.Preferences { return new(this) { Clothing = clothing }; } - + public HumanoidCharacterProfile WithBackpackPreference(BackpackPreference backpack) + { + return new(this) { Backpack = backpack }; + } public HumanoidCharacterProfile WithJobPriorities(IEnumerable> jobPriorities) { return new(this, new Dictionary(jobPriorities), _antagPreferences); @@ -221,7 +228,7 @@ namespace Content.Shared.Preferences string name; if (string.IsNullOrEmpty(profile.Name)) { - name = "John Doe"; + name = "Urist McHands"; } else if (profile.Name.Length > MaxNameLength) { @@ -254,6 +261,14 @@ namespace Content.Shared.Preferences _ => ClothingPreference.Jumpsuit // Invalid enum values. }; + var backpack = profile.Backpack switch + { + BackpackPreference.Backpack => BackpackPreference.Backpack, + BackpackPreference.Satchel => BackpackPreference.Satchel, + BackpackPreference.Duffelbag => BackpackPreference.Duffelbag, + _ => BackpackPreference.Backpack // Invalid enum values. + }; + var priorities = new Dictionary(profile.JobPriorities .Where(p => prototypeManager.HasIndex(p.Key) && p.Value switch { @@ -268,11 +283,11 @@ namespace Content.Shared.Preferences .Where(prototypeManager.HasIndex) .ToList(); - return new HumanoidCharacterProfile(name, age, sex, gender, appearance, clothing, priorities, prefsUnavailableMode, antags); + return new HumanoidCharacterProfile(name, age, sex, gender, appearance, clothing, backpack, priorities, prefsUnavailableMode, antags); } public string Summary => - Loc.GetString("{0}, {1} years old human. {2:Their} pronouns are {2:they}/{2:them}.", Name, Age, this); + Loc.GetString(" This is {0}. {2:They} {2:are} {1} years old.", Name, Age, this); public bool MemberwiseEquals(ICharacterProfile maybeOther) { @@ -283,6 +298,7 @@ namespace Content.Shared.Preferences if (Gender != other.Gender) return false; if (PreferenceUnavailable != other.PreferenceUnavailable) return false; if (Clothing != other.Clothing) return false; + if (Backpack != other.Backpack) return false; if (!_jobPriorities.SequenceEqual(other._jobPriorities)) return false; if (!_antagPreferences.SequenceEqual(other._antagPreferences)) return false; return Appearance.MemberwiseEquals(other.Appearance); @@ -302,7 +318,8 @@ namespace Content.Shared.Preferences Sex, Gender, Appearance, - Clothing + Clothing, + Backpack ), PreferenceUnavailable, _jobPriorities, diff --git a/Content.Server/Prototypes/DatasetPrototype.cs b/Content.Shared/Prototypes/DatasetPrototype.cs similarity index 94% rename from Content.Server/Prototypes/DatasetPrototype.cs rename to Content.Shared/Prototypes/DatasetPrototype.cs index 2c6c122305..849800fb93 100644 --- a/Content.Server/Prototypes/DatasetPrototype.cs +++ b/Content.Shared/Prototypes/DatasetPrototype.cs @@ -3,7 +3,7 @@ using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using YamlDotNet.RepresentationModel; -namespace Content.Server.Prototypes +namespace Content.Shared.Prototypes { [Prototype("dataset")] public class DatasetPrototype : IPrototype, IIndexedPrototype diff --git a/Content.Shared/Roles/StartingGearPrototype.cs b/Content.Shared/Roles/StartingGearPrototype.cs index ac27be7a56..567a66f181 100644 --- a/Content.Shared/Roles/StartingGearPrototype.cs +++ b/Content.Shared/Roles/StartingGearPrototype.cs @@ -21,6 +21,8 @@ namespace Content.Shared.Roles /// if empty, there is no skirt override - instead the uniform provided in equipment is added. /// private string _innerClothingSkirt = default!; + private string _satchel = default!; + private string _duffelbag = default!; public IReadOnlyDictionary Inhand => _inHand; /// @@ -51,6 +53,8 @@ namespace Content.Shared.Roles }, type => type.Value); serializer.DataField(ref _innerClothingSkirt, "innerclothingskirt", string.Empty); + serializer.DataField(ref _satchel, "satchel", string.Empty); + serializer.DataField(ref _duffelbag, "duffelbag", string.Empty); } public string GetGear(Slots slot, HumanoidCharacterProfile? profile) @@ -59,6 +63,10 @@ namespace Content.Shared.Roles { if ((slot == Slots.INNERCLOTHING) && (profile.Clothing == ClothingPreference.Jumpskirt) && (_innerClothingSkirt != "")) return _innerClothingSkirt; + if ((slot == Slots.BACKPACK) && (profile.Backpack == BackpackPreference.Satchel) && (_satchel != "")) + return _satchel; + if ((slot == Slots.BACKPACK) && (profile.Backpack == BackpackPreference.Duffelbag) && (_duffelbag != "")) + return _duffelbag; } if (_equipment.ContainsKey(slot)) diff --git a/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs b/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs index 2481c5cf88..2df929a3b6 100644 --- a/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs +++ b/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs @@ -18,7 +18,7 @@ using Robust.Shared.Localization.Macros; namespace Content.Tests.Server.Preferences { [TestFixture] - public class ServerDbSqliteTests : RobustUnitTest + public class ServerDbSqliteTests : ContentUnitTest { private static HumanoidCharacterProfile CharlieCharlieson() { @@ -36,6 +36,7 @@ namespace Content.Tests.Server.Preferences Color.Beige ), ClothingPreference.Jumpskirt, + BackpackPreference.Backpack, new Dictionary { {SharedGameTicker.OverflowJob, JobPriority.High} diff --git a/Content.Tests/Shared/Alert/AlertPrototypeTests.cs b/Content.Tests/Shared/Alert/AlertPrototypeTests.cs index 3427e7d375..038a72d6f5 100644 --- a/Content.Tests/Shared/Alert/AlertPrototypeTests.cs +++ b/Content.Tests/Shared/Alert/AlertPrototypeTests.cs @@ -47,7 +47,7 @@ namespace Content.Tests.Shared.Alert { alert.GetIcon(severity); } - catch (ArgumentException e) + catch (ArgumentException) { Assert.Pass(); } diff --git a/Resources/Audio/Announcements/shuttlecalled.ogg b/Resources/Audio/Announcements/shuttlecalled.ogg new file mode 100644 index 0000000000..716bf82465 Binary files /dev/null and b/Resources/Audio/Announcements/shuttlecalled.ogg differ diff --git a/Resources/Audio/Announcements/shuttledock.ogg b/Resources/Audio/Announcements/shuttledock.ogg new file mode 100644 index 0000000000..0f70bebc75 Binary files /dev/null and b/Resources/Audio/Announcements/shuttledock.ogg differ diff --git a/Resources/Audio/Announcements/shuttlerecalled.ogg b/Resources/Audio/Announcements/shuttlerecalled.ogg new file mode 100644 index 0000000000..5f6db404b8 Binary files /dev/null and b/Resources/Audio/Announcements/shuttlerecalled.ogg differ diff --git a/Resources/Audio/Effects/gib1.ogg b/Resources/Audio/Effects/gib1.ogg new file mode 100644 index 0000000000..31c1a01cd6 Binary files /dev/null and b/Resources/Audio/Effects/gib1.ogg differ diff --git a/Resources/Audio/Effects/gib2.ogg b/Resources/Audio/Effects/gib2.ogg new file mode 100644 index 0000000000..68e2499208 Binary files /dev/null and b/Resources/Audio/Effects/gib2.ogg differ diff --git a/Resources/Audio/Effects/gib3.ogg b/Resources/Audio/Effects/gib3.ogg new file mode 100644 index 0000000000..aa37a543a9 Binary files /dev/null and b/Resources/Audio/Effects/gib3.ogg differ diff --git a/Resources/Audio/Effects/rustle1.ogg b/Resources/Audio/Effects/rustle1.ogg new file mode 100644 index 0000000000..365fb5d85f Binary files /dev/null and b/Resources/Audio/Effects/rustle1.ogg differ diff --git a/Resources/Audio/Effects/rustle2.ogg b/Resources/Audio/Effects/rustle2.ogg new file mode 100644 index 0000000000..031aeb8a8e Binary files /dev/null and b/Resources/Audio/Effects/rustle2.ogg differ diff --git a/Resources/Audio/Effects/rustle3.ogg b/Resources/Audio/Effects/rustle3.ogg new file mode 100644 index 0000000000..1bbdfb2500 Binary files /dev/null and b/Resources/Audio/Effects/rustle3.ogg differ diff --git a/Resources/Audio/Effects/rustle4.ogg b/Resources/Audio/Effects/rustle4.ogg new file mode 100644 index 0000000000..1401fca0c7 Binary files /dev/null and b/Resources/Audio/Effects/rustle4.ogg differ diff --git a/Resources/Audio/Effects/rustle5.ogg b/Resources/Audio/Effects/rustle5.ogg new file mode 100644 index 0000000000..ac10981b80 Binary files /dev/null and b/Resources/Audio/Effects/rustle5.ogg differ diff --git a/Resources/Audio/Effects/toilet_seat_down.ogg b/Resources/Audio/Effects/toilet_seat_down.ogg new file mode 100644 index 0000000000..dc568adf23 Binary files /dev/null and b/Resources/Audio/Effects/toilet_seat_down.ogg differ diff --git a/Resources/Audio/Items/Culinary/chop.ogg b/Resources/Audio/Items/Culinary/chop.ogg new file mode 100644 index 0000000000..8711163973 Binary files /dev/null and b/Resources/Audio/Items/Culinary/chop.ogg differ diff --git a/Resources/Audio/Items/match_strike.ogg b/Resources/Audio/Items/match_strike.ogg new file mode 100644 index 0000000000..8bf23316e1 Binary files /dev/null and b/Resources/Audio/Items/match_strike.ogg differ diff --git a/Resources/Maps/Test/Breathing/3by3-20oxy-80nit.yml b/Resources/Maps/Test/Breathing/3by3-20oxy-80nit.yml index c45f45edb6..3263d26e64 100644 --- a/Resources/Maps/Test/Breathing/3by3-20oxy-80nit.yml +++ b/Resources/Maps/Test/Breathing/3by3-20oxy-80nit.yml @@ -2,7 +2,7 @@ meta: format: 2 name: DemoStation author: Space-Wizards - postmapinit: true + postmapinit: false tilemap: 0: space 1: floor_asteroid_coarse_sand0 @@ -11,62 +11,26 @@ tilemap: 4: floor_asteroid_coarse_sand_dug 5: floor_asteroid_sand 6: floor_asteroid_tile - 7: floor_carpet - 8: floor_dark - 9: floor_elevator_shaft - 10: floor_freezer - 11: floor_gold - 12: floor_green_circuit - 13: floor_hull_center0 - 14: floor_hull_center1 - 15: floor_hull_center10 - 16: floor_hull_center11 - 17: floor_hull_center12 - 18: floor_hull_center13 - 19: floor_hull_center14 - 20: floor_hull_center15 - 21: floor_hull_center16 - 22: floor_hull_center17 - 23: floor_hull_center18 - 24: floor_hull_center19 - 25: floor_hull_center2 - 26: floor_hull_center20 - 27: floor_hull_center21 - 28: floor_hull_center22 - 29: floor_hull_center23 - 30: floor_hull_center24 - 31: floor_hull_center25 - 32: floor_hull_center26 - 33: floor_hull_center27 - 34: floor_hull_center28 - 35: floor_hull_center29 - 36: floor_hull_center3 - 37: floor_hull_center30 - 38: floor_hull_center31 - 39: floor_hull_center32 - 40: floor_hull_center33 - 41: floor_hull_center34 - 42: floor_hull_center35 - 43: floor_hull_center4 - 44: floor_hull_center5 - 45: floor_hull_center6 - 46: floor_hull_center7 - 47: floor_hull_center8 - 48: floor_hull_center9 - 49: floor_hydro - 50: floor_lino - 51: floor_mono - 52: floor_reinforced - 53: floor_rock_vault - 54: floor_showroom - 55: floor_snow - 56: floor_steel - 57: floor_steel_dirty - 58: floor_techmaint - 59: floor_white - 60: floor_wood - 61: plating - 62: underplating + 7: floor_dark + 8: floor_elevator_shaft + 9: floor_freezer + 10: floor_gold + 11: floor_green_circuit + 12: floor_hydro + 13: floor_lino + 14: floor_mono + 15: floor_reinforced + 16: floor_rock_vault + 17: floor_showroom + 18: floor_snow + 19: floor_steel + 20: floor_steel_dirty + 21: floor_techmaint + 22: floor_white + 23: floor_wood + 24: lattice + 25: plating + 26: underplating grids: - settings: chunksize: 16 @@ -74,9 +38,9 @@ grids: snapsize: 1 chunks: - ind: "-1,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPgAAAA== + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAA== - ind: "0,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4AAAA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAPgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPgAAAD4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAAAaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "-1,0" tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "0,0" @@ -102,6 +66,8 @@ entities: - 0 - 0 - 0 + - 0 + - 0 molesArchived: - 20 - 80 @@ -109,11 +75,57 @@ entities: - 0 - 0 - 0 + - 0 + - 0 + temperature: 293.15 + - volume: 2500 + moles: + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + molesArchived: + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 temperature: 293.15 tiles: ? X: 0 Y: -2 : 0 + ? X: -1 + Y: -3 + : 1 + ? X: -1 + Y: -2 + : 1 + ? X: -1 + Y: -1 + : 1 + ? X: 0 + Y: -3 + : 1 + ? X: 0 + Y: -1 + : 1 + ? X: 1 + Y: -3 + : 1 + ? X: 1 + Y: -2 + : 1 + ? X: 1 + Y: -1 + : 1 type: GridAtmosphere - uid: 1 type: reinforced_wall diff --git a/Resources/Maps/Test/Pathfinding/simple.yml b/Resources/Maps/Test/Pathfinding/simple.yml deleted file mode 100644 index a9ad2d797c..0000000000 --- a/Resources/Maps/Test/Pathfinding/simple.yml +++ /dev/null @@ -1,277 +0,0 @@ -meta: - format: 2 - name: DemoStation - author: Space-Wizards - postmapinit: true -tilemap: - 0: space - 1: floor_asteroid_coarse_sand0 - 2: floor_asteroid_coarse_sand1 - 3: floor_asteroid_coarse_sand2 - 4: floor_asteroid_coarse_sand_dug - 5: floor_asteroid_sand - 6: floor_asteroid_tile - 7: floor_carpet - 8: floor_dark - 9: floor_elevator_shaft - 10: floor_freezer - 11: floor_green_circuit - 12: floor_hull_center0 - 13: floor_hull_center1 - 14: floor_hull_center10 - 15: floor_hull_center11 - 16: floor_hull_center12 - 17: floor_hull_center13 - 18: floor_hull_center14 - 19: floor_hull_center15 - 20: floor_hull_center16 - 21: floor_hull_center17 - 22: floor_hull_center18 - 23: floor_hull_center19 - 24: floor_hull_center2 - 25: floor_hull_center20 - 26: floor_hull_center21 - 27: floor_hull_center22 - 28: floor_hull_center23 - 29: floor_hull_center24 - 30: floor_hull_center25 - 31: floor_hull_center26 - 32: floor_hull_center27 - 33: floor_hull_center28 - 34: floor_hull_center29 - 35: floor_hull_center3 - 36: floor_hull_center30 - 37: floor_hull_center31 - 38: floor_hull_center32 - 39: floor_hull_center33 - 40: floor_hull_center34 - 41: floor_hull_center35 - 42: floor_hull_center4 - 43: floor_hull_center5 - 44: floor_hull_center6 - 45: floor_hull_center7 - 46: floor_hull_center8 - 47: floor_hull_center9 - 48: floor_hydro - 49: floor_lino - 50: floor_mono - 51: floor_reinforced - 52: floor_rock_vault - 53: floor_showroom - 54: floor_steel - 55: floor_steel_dirty - 56: floor_techmaint - 57: floor_white - 58: plating - 59: underplating -grids: -- settings: - chunksize: 16 - tilesize: 1 - snapsize: 1 - chunks: - - ind: "-1,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAA== - - ind: "-1,0" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - - ind: "0,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAAA== - - ind: "0,0" - tiles: NgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - - ind: "1,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - - ind: "1,0" - tiles: NgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== -entities: -- uid: 0 - components: - - parent: null - pos: 0.8203125,-0.4765625 - type: Transform - - index: 0 - type: MapGrid - - shapes: - - !type:PhysShapeGrid - grid: 0 - type: Physics -- uid: 1 - type: wall_light - components: - - parent: 0 - pos: 24.5,4.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 2 - type: wall_light - components: - - parent: 0 - pos: -0.5,-0.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 3 - type: wall_light - components: - - parent: 0 - pos: 24.5,-0.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 4 - type: wall_light - components: - - parent: 0 - pos: 24.5,9.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 5 - type: wall_light - components: - - parent: 0 - pos: 4.5,-0.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 6 - type: wall_light - components: - - parent: 0 - pos: 9.5,-0.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 7 - type: wall_light - components: - - parent: 0 - pos: 14.5,-0.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 8 - type: wall_light - components: - - parent: 0 - pos: 19.5,-0.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 9 - type: wall_light - components: - - parent: 0 - pos: 19.5,9.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 10 - type: wall_light - components: - - parent: 0 - pos: 19.5,4.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 11 - type: wall_light - components: - - parent: 0 - pos: 14.5,4.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 12 - type: wall_light - components: - - parent: 0 - pos: 14.5,9.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 13 - type: wall_light - components: - - parent: 0 - pos: 9.5,4.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 14 - type: wall_light - components: - - parent: 0 - pos: 9.5,9.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 15 - type: wall_light - components: - - parent: 0 - pos: 4.5,4.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 16 - type: wall_light - components: - - parent: 0 - pos: 4.5,9.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 17 - type: wall_light - components: - - parent: 0 - pos: -0.5,4.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -- uid: 18 - type: wall_light - components: - - parent: 0 - pos: -0.5,9.5 - rot: -1.5707963267948966 rad - type: Transform - - shapes: - - !type:PhysShapeAabb {} - type: Physics -... diff --git a/Resources/Maps/saltern.yml b/Resources/Maps/saltern.yml index 2707b46420..6ec3a2cf13 100644 --- a/Resources/Maps/saltern.yml +++ b/Resources/Maps/saltern.yml @@ -534,6 +534,8 @@ entities: pos: -15.694785,24.608267 rot: -1.5707963267948966 rad type: Transform + - caps: AddTo, RemoveFrom + type: SolutionContainer - uid: 60 type: DisgustingSweptSoup components: @@ -650,6 +652,8 @@ entities: pos: -3.470539,16.956116 rot: -1.5707963267948966 rad type: Transform + - caps: AddTo, RemoveFrom + type: SolutionContainer - uid: 74 type: Carpet components: @@ -699,6 +703,8 @@ entities: pos: 8.439846,26.712742 rot: 1.5707963267948966 rad type: Transform + - caps: AddTo, RemoveFrom + type: SolutionContainer - uid: 81 type: Table components: @@ -923,6 +929,8 @@ entities: - parent: 853 pos: 8.661116,25.513401 type: Transform + - caps: AddTo, RemoveFrom + type: SolutionContainer - uid: 114 type: BoxDonkpocket components: @@ -21192,16 +21200,16 @@ entities: - containers: machine_board: entities: - - 4273 + - 4272 type: Robust.Server.GameObjects.Components.Container.Container machine_parts: entities: + - 4273 - 4274 - 4275 - 4276 - 4277 - 4278 - - 4279 type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - uid: 1044 @@ -22499,6 +22507,8 @@ entities: pos: -35.166924,-3.5 rot: 3.141592653589793 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 1191 @@ -23011,10 +23021,8 @@ entities: pos: -5.5120974,-7.5 rot: 1.5707963267948966 rad type: Transform - - startingCharge: 11998.838 + - startingCharge: 11999.417 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 1240 type: Poweredlight components: @@ -32228,6 +32236,8 @@ entities: pos: -8.476567,-17.420076 rot: -1.5707963267948966 rad type: Transform + - caps: AddTo, RemoveFrom + type: SolutionContainer - uid: 2443 type: TableWood components: @@ -32677,10 +32687,8 @@ entities: pos: 9.5,27.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11999.004 + - startingCharge: 11999.634 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2505 type: SalternApc components: @@ -32688,10 +32696,8 @@ entities: pos: -2.5,27.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.34 + - startingCharge: 11999.3 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2506 type: SalternApc components: @@ -32699,10 +32705,8 @@ entities: pos: 9.5,22.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.008 + - startingCharge: 11999.066 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2507 type: SalternApc components: @@ -32710,10 +32714,8 @@ entities: pos: 24.5,14.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11999.336 + - startingCharge: 11999.733 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2508 type: SalternApc components: @@ -32721,10 +32723,8 @@ entities: pos: 28.5,14.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.838 + - startingCharge: 11999.483 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2509 type: SalternApc components: @@ -32732,10 +32732,8 @@ entities: pos: 47.5,-1.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11982.172 + - startingCharge: 11991.15 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2510 type: SalternApc components: @@ -32743,10 +32741,8 @@ entities: pos: 31.5,1.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.174 + - startingCharge: 11999.15 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2511 type: SalternApc components: @@ -32754,10 +32750,8 @@ entities: pos: 43.5,10.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.506 + - startingCharge: 11999.384 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2512 type: SalternApc components: @@ -32765,10 +32759,8 @@ entities: pos: 12.5,13.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11997.842 + - startingCharge: 11999.116 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2513 type: SalternApc components: @@ -32776,10 +32768,8 @@ entities: pos: 7.5,-17.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.008 + - startingCharge: 11999.2 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2514 type: SalternApc components: @@ -32787,10 +32777,8 @@ entities: pos: 22.5,-3.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.008 + - startingCharge: 11999.066 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2515 type: SalternApc components: @@ -32798,22 +32786,20 @@ entities: pos: 16.5,2.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.672 + - startingCharge: 11999.467 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2516 - type: PoweredSmallLight + type: CrateEmergencyFire components: - parent: 853 - pos: -15.498537,16.019438 + pos: 22.5,13.5 rot: -1.5707963267948966 rad type: Transform - - powerLoad: 0 - type: PowerReceiver + - IsPlaceable: False + type: PlaceableSurface - containers: - light_bulb: - type: Content.Server.GameObjects.ContainerSlot + EntityStorageComponent: + type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - uid: 2517 type: SalternApc @@ -32822,10 +32808,8 @@ entities: pos: -3.5,15.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.838 + - startingCharge: 11999.483 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2518 type: SalternApc components: @@ -32833,10 +32817,8 @@ entities: pos: -28.5,12.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.672 + - startingCharge: 11999.4 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2519 type: SalternApc components: @@ -32844,10 +32826,8 @@ entities: pos: -39.5,11.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.672 + - startingCharge: 11999.4 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2520 type: SalternApc components: @@ -32855,10 +32835,8 @@ entities: pos: -11.5,2.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11996.846 + - startingCharge: 11998.483 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2521 type: Table components: @@ -32873,10 +32851,8 @@ entities: pos: -20.5,-12.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11999.502 + - startingCharge: 11999.75 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2523 type: ApcExtensionCable components: @@ -32898,10 +32874,8 @@ entities: pos: -1.5,-18.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.174 + - startingCharge: 11999.083 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2526 type: SalternApc components: @@ -32909,10 +32883,8 @@ entities: pos: -9.75476,-21.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11992.338 + - startingCharge: 11996.233 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2527 type: SalternApc components: @@ -32920,10 +32892,8 @@ entities: pos: -14.5,-16.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11999.17 + - startingCharge: 11999.65 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2528 type: ApcExtensionCable components: @@ -33113,10 +33083,8 @@ entities: pos: -16.302551,15.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11999.668 + - startingCharge: 11999.833 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2555 type: ApcExtensionCable components: @@ -34762,10 +34730,8 @@ entities: pos: -14.5,-8.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.506 + - startingCharge: 11999.45 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 2790 type: ApcExtensionCable components: @@ -40533,7 +40499,7 @@ entities: pos: 42.5,-0.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -40546,7 +40512,7 @@ entities: pos: 27.5,13.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -40559,7 +40525,7 @@ entities: pos: 11.5,24.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -40572,25 +40538,19 @@ entities: pos: 21.5,-9.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer - supplyRate: 6000 type: PowerSupplier - uid: 3617 - type: SalternSubstation + type: BedsheetSpawner components: - parent: 853 - pos: -15.5,16.5 + pos: -27.5,-4.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 - type: Battery - - drawRate: 8000 - type: PowerConsumer - - supplyRate: 6000 - type: PowerSupplier - uid: 3618 type: SalternSubstation components: @@ -40598,7 +40558,7 @@ entities: pos: -0.5,-22.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -40618,7 +40578,7 @@ entities: pos: 0.5,-6.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -40631,7 +40591,7 @@ entities: pos: -21.5,-10.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -40644,7 +40604,7 @@ entities: pos: -32.5,7.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319450 + - startingCharge: 3200172 type: Battery - drawRate: 8000 type: PowerConsumer @@ -42483,6 +42443,8 @@ entities: pos: 44.486908,10 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3884 @@ -42491,6 +42453,8 @@ entities: - parent: 853 pos: 47.22923,-3 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3885 @@ -42499,6 +42463,8 @@ entities: - parent: 853 pos: 29.299644,-7.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3886 @@ -42508,6 +42474,8 @@ entities: pos: 31.467993,-4.5 rot: 1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3887 @@ -42516,6 +42484,8 @@ entities: - parent: 853 pos: 30.278831,9.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3888 @@ -42524,6 +42494,8 @@ entities: - parent: 853 pos: 18.260162,9.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3889 @@ -42533,6 +42505,8 @@ entities: pos: 26.46292,-1 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3890 @@ -42542,6 +42516,8 @@ entities: pos: 17.399544,2 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3891 @@ -42550,6 +42526,8 @@ entities: - parent: 853 pos: 7.2721233,-15.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3892 @@ -42558,6 +42536,8 @@ entities: - parent: 853 pos: 7.3033733,-20.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3893 @@ -42567,6 +42547,8 @@ entities: pos: -10.487591,2 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3894 @@ -42576,6 +42558,8 @@ entities: pos: -2.7508366,15 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3895 @@ -42585,6 +42569,8 @@ entities: pos: 5.701264,16.5 rot: 3.141592653589793 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3896 @@ -42593,6 +42579,8 @@ entities: - parent: 853 pos: 6.2924953,10.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3897 @@ -42602,6 +42590,8 @@ entities: pos: 12.41432,9.5 rot: 1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3898 @@ -42611,6 +42601,8 @@ entities: pos: 16.47682,3.5 rot: 1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3899 @@ -42620,6 +42612,8 @@ entities: pos: -24.514448,12 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3900 @@ -42628,6 +42622,8 @@ entities: - parent: 853 pos: -39.802197,11.207858 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3901 @@ -42637,6 +42633,8 @@ entities: pos: -22.347473,-1.5 rot: 3.141592653589793 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3902 @@ -42645,6 +42643,8 @@ entities: - parent: 853 pos: -20.745232,-0.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3903 @@ -42654,6 +42654,8 @@ entities: pos: -13.885857,-9 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3904 @@ -42670,6 +42672,8 @@ entities: pos: 10.68897,19.5 rot: 3.141592653589793 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3906 @@ -42679,6 +42683,8 @@ entities: pos: 8.923345,28.5 rot: 1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3907 @@ -42688,6 +42694,8 @@ entities: pos: -2.4985301,28.5 rot: 1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3908 @@ -42696,6 +42704,8 @@ entities: - parent: 853 pos: -2.7641551,26.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3909 @@ -42705,6 +42715,8 @@ entities: pos: 9.704595,26.5 rot: 3.141592653589793 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3910 @@ -42714,6 +42726,8 @@ entities: pos: -12.509865,6 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3911 @@ -42777,31 +42791,19 @@ entities: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer - uid: 3918 - type: PoweredSmallLight + type: BedsheetSpawner components: - parent: 853 - pos: -15.494916,16.030584 + pos: -27.5,1.5 rot: -1.5707963267948966 rad type: Transform - - powerLoad: 0 - type: PowerReceiver - - containers: - light_bulb: - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer - uid: 3919 - type: PoweredSmallLight + type: BedsheetSpawner components: - parent: 853 - pos: -15.494916,16.030584 + pos: -27.5,-1.5 rot: -1.5707963267948966 rad type: Transform - - powerLoad: 0 - type: PowerReceiver - - containers: - light_bulb: - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer - uid: 3920 type: PoweredSmallLight components: @@ -42822,10 +42824,8 @@ entities: pos: -12.5,12.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 11998.174 + - startingCharge: 11999.217 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 3922 type: EmergencyLight components: @@ -42833,6 +42833,8 @@ entities: pos: -13.5,-17 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3923 @@ -42842,6 +42844,8 @@ entities: pos: -10.5,-17 rot: -1.5707963267948966 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3924 @@ -42851,6 +42855,8 @@ entities: pos: 5.7693076,-15.5 rot: 3.141592653589793 rad type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3925 @@ -42859,6 +42865,8 @@ entities: - parent: 853 pos: 2.2274737,8.5 type: Transform + - powerLoad: 1 + type: PowerReceiver - startingCharge: 30000 type: Battery - uid: 3926 @@ -44116,6 +44124,8 @@ entities: pos: -4.4964724,-8 rot: -1.5707963267948966 rad type: Transform + - startingCharge: 12224.357 + type: Battery - uid: 4082 type: AirlockMaint components: @@ -44332,10 +44342,8 @@ entities: pos: -30.517641,-3.5 rot: 3.141592653589793 rad type: Transform - - startingCharge: 11998.34 + - startingCharge: 11999.233 type: Battery - - drawRate: 2000 - type: PowerConsumer - uid: 4112 type: Bed components: @@ -44358,62 +44366,63 @@ entities: rot: 1.5707963267948966 rad type: Transform - uid: 4115 - type: BedsheetNT + type: PoweredSmallLight components: - parent: 853 - pos: -27.5,1.5 - rot: 1.5707963267948966 rad + pos: -22.5,-16 + rot: -1.5707963267948966 rad type: Transform + - powerLoad: 0 + type: PowerReceiver + - containers: + light_bulb: + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer - uid: 4116 - type: BedsheetNT + type: AirlockMaintIntLocked components: + - name: Waste Disposal + type: MetaData - parent: 853 - pos: -27.5,-1.5 - rot: 1.5707963267948966 rad + pos: -24.5,-12.5 + rot: -1.5707963267948966 rad type: Transform - uid: 4117 - type: BedsheetNT - components: - - parent: 853 - pos: -27.5,-4.5 - rot: 1.5707963267948966 rad - type: Transform -- uid: 4118 type: TableWood components: - parent: 853 pos: -30.5,-4.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4119 +- uid: 4118 type: TableWood components: - parent: 853 pos: -30.5,-1.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4120 +- uid: 4119 type: TableWood components: - parent: 853 pos: -30.5,1.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4121 +- uid: 4120 type: ChairWood components: - parent: 853 pos: -30.5,-5.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4122 +- uid: 4121 type: ChairWood components: - parent: 853 pos: -30.5,-2.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4123 +- uid: 4122 type: Poweredlight components: - parent: 853 @@ -44425,7 +44434,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4124 +- uid: 4123 type: Poweredlight components: - parent: 853 @@ -44438,7 +44447,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4125 +- uid: 4124 type: Poweredlight components: - parent: 853 @@ -44451,91 +44460,91 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4126 +- uid: 4125 type: CarpetGreen components: - parent: 853 pos: -29.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4127 +- uid: 4126 type: CarpetGreen components: - parent: 853 pos: -29.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4128 +- uid: 4127 type: CarpetGreen components: - parent: 853 pos: -28.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4129 +- uid: 4128 type: CarpetGreen components: - parent: 853 pos: -28.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4130 +- uid: 4129 type: CarpetGay components: - parent: 853 pos: -29.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4131 +- uid: 4130 type: CarpetGay components: - parent: 853 pos: -29.5,-5.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4132 +- uid: 4131 type: CarpetGay components: - parent: 853 pos: -28.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4133 +- uid: 4132 type: CarpetGay components: - parent: 853 pos: -28.5,-5.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4134 +- uid: 4133 type: CarpetBlue components: - parent: 853 pos: -29.5,-1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4135 +- uid: 4134 type: CarpetBlue components: - parent: 853 pos: -29.5,-2.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4136 +- uid: 4135 type: CarpetBlue components: - parent: 853 pos: -28.5,-1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4137 +- uid: 4136 type: CarpetBlue components: - parent: 853 pos: -28.5,-2.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4138 +- uid: 4137 type: BoxDonkpocket components: - parent: 853 @@ -44546,42 +44555,42 @@ entities: storagebase: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4139 +- uid: 4138 type: TableR components: - parent: 853 pos: 15.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4140 +- uid: 4139 type: Bed components: - parent: 853 pos: -2.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4141 +- uid: 4140 type: Bed components: - parent: 853 pos: 0.5,7.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4141 + type: BedsheetOrange + components: + - parent: 853 + pos: -2.5,7.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4142 - type: BedsheetOrange - components: - - parent: 853 - pos: -2.5,7.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4143 type: BedsheetOrange components: - parent: 853 pos: 0.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4144 +- uid: 4143 type: LockerGeneric components: - parent: 853 @@ -44594,7 +44603,7 @@ entities: EntityStorageComponent: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4145 +- uid: 4144 type: LockerGeneric components: - parent: 853 @@ -44607,7 +44616,7 @@ entities: EntityStorageComponent: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4146 +- uid: 4145 type: Poweredlight components: - parent: 853 @@ -44619,7 +44628,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4147 +- uid: 4146 type: Poweredlight components: - parent: 853 @@ -44631,7 +44640,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4148 +- uid: 4147 type: Poweredlight components: - parent: 853 @@ -44643,7 +44652,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4149 +- uid: 4148 type: Poweredlight components: - parent: 853 @@ -44654,14 +44663,14 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4150 +- uid: 4149 type: Rack components: - parent: 853 pos: 31.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4151 +- uid: 4150 type: Poweredlight components: - parent: 853 @@ -44673,77 +44682,77 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4152 +- uid: 4151 type: hydroponicsTray components: - parent: 853 pos: -18.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4153 +- uid: 4152 type: hydroponicsTray components: - parent: 853 pos: -19.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4154 +- uid: 4153 type: hydroponicsTray components: - parent: 853 pos: -20.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4155 +- uid: 4154 type: hydroponicsTray components: - parent: 853 pos: -20.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4156 +- uid: 4155 type: hydroponicsTray components: - parent: 853 pos: -20.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4157 +- uid: 4156 type: hydroponicsTray components: - parent: 853 pos: -19.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4158 +- uid: 4157 type: hydroponicsTray components: - parent: 853 pos: -18.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4159 +- uid: 4158 type: solid_wall components: - parent: 853 pos: 16.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4160 +- uid: 4159 type: solid_wall components: - parent: 853 pos: 12.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4161 +- uid: 4160 type: solid_wall components: - parent: 853 pos: 13.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4162 +- uid: 4161 type: Morgue components: - parent: 853 @@ -44755,7 +44764,7 @@ entities: morgue_tray: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4163 +- uid: 4162 type: Morgue components: - parent: 853 @@ -44767,7 +44776,7 @@ entities: morgue_tray: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4164 +- uid: 4163 type: Morgue components: - parent: 853 @@ -44779,7 +44788,7 @@ entities: morgue_tray: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4165 +- uid: 4164 type: Morgue components: - parent: 853 @@ -44791,7 +44800,7 @@ entities: morgue_tray: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4166 +- uid: 4165 type: Morgue components: - parent: 853 @@ -44803,27 +44812,27 @@ entities: morgue_tray: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4167 +- uid: 4166 type: SignMorgue components: - parent: 853 pos: 17.313038,-12.573634 type: Transform -- uid: 4168 +- uid: 4167 type: TableMetal components: - parent: 853 pos: 14.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4169 +- uid: 4168 type: TableMetal components: - parent: 853 pos: 15.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4170 +- uid: 4169 type: CrayonBoxFilled components: - parent: 853 @@ -44834,7 +44843,7 @@ entities: storagebase: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4171 +- uid: 4170 type: MagazinePistolSmgTopMounted components: - parent: 853 @@ -44845,7 +44854,7 @@ entities: RangedMagazine-magazine: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4172 +- uid: 4171 type: MagazinePistolSmgTopMounted components: - parent: 853 @@ -44856,7 +44865,7 @@ entities: RangedMagazine-magazine: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4173 +- uid: 4172 type: AirlockMedicalLocked components: - name: Morgue @@ -44865,7 +44874,7 @@ entities: pos: 16.5,-15.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4174 +- uid: 4173 type: computerBodyScanner components: - parent: 853 @@ -44875,36 +44884,36 @@ entities: - containers: board: entities: - - 4175 + - 4174 type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4175 +- uid: 4174 type: BodyScannerComputerCircuitboard components: - - parent: 4174 + - parent: 4173 type: Transform -- uid: 4176 +- uid: 4175 type: Rack components: - parent: 853 pos: 29.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4177 +- uid: 4176 type: BarSign components: - parent: 853 pos: -5.5,2.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4178 +- uid: 4177 type: SignBar components: - parent: 853 pos: 0.7031777,2.4187772 rot: -1.5707963267948966 rad type: Transform -- uid: 4179 +- uid: 4178 type: Poweredlight components: - parent: 853 @@ -44917,7 +44926,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4180 +- uid: 4179 type: Poweredlight components: - parent: 853 @@ -44930,21 +44939,21 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4181 +- uid: 4180 type: MopBucket components: - parent: 853 pos: -21.5,10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4182 +- uid: 4181 type: AMEJar components: - parent: 853 pos: 38.585155,11.629917 rot: -1.5707963267948966 rad type: Transform -- uid: 4183 +- uid: 4182 type: KitchenReagentGrinder components: - parent: 853 @@ -44957,133 +44966,133 @@ entities: ReagentGrinder-entityContainerContainer: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4184 +- uid: 4183 type: ApcExtensionCable components: - parent: 853 pos: 26.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4185 +- uid: 4184 type: ApcExtensionCable components: - parent: 853 pos: 25.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4186 +- uid: 4185 type: Carpet components: - parent: 853 pos: -8.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4187 +- uid: 4186 type: Carpet components: - parent: 853 pos: -8.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4188 +- uid: 4187 type: Carpet components: - parent: 853 pos: -7.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4189 +- uid: 4188 type: Carpet components: - parent: 853 pos: -7.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4190 +- uid: 4189 type: Carpet components: - parent: 853 pos: -6.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4191 +- uid: 4190 type: Carpet components: - parent: 853 pos: -6.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4192 +- uid: 4191 type: Carpet components: - parent: 853 pos: -5.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4193 +- uid: 4192 type: Carpet components: - parent: 853 pos: -5.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4194 +- uid: 4193 type: Carpet components: - parent: 853 pos: -4.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4195 +- uid: 4194 type: Carpet components: - parent: 853 pos: -4.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4196 +- uid: 4195 type: Carpet components: - parent: 853 pos: -3.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4197 +- uid: 4196 type: Carpet components: - parent: 853 pos: -3.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4198 +- uid: 4197 type: Carpet components: - parent: 853 pos: -2.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4199 +- uid: 4198 type: Carpet components: - parent: 853 pos: -2.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4200 +- uid: 4199 type: Carpet components: - parent: 853 pos: -1.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4201 +- uid: 4200 type: KitchenSpike components: - parent: 853 pos: -9.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4202 +- uid: 4201 type: LockerFreezer components: - parent: 853 @@ -45096,7 +45105,7 @@ entities: EntityStorageComponent: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4203 +- uid: 4202 type: LockerFreezer components: - parent: 853 @@ -45109,7 +45118,7 @@ entities: EntityStorageComponent: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4204 +- uid: 4203 type: Poweredlight components: - parent: 853 @@ -45122,140 +45131,140 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4205 +- uid: 4204 type: Carpet components: - parent: 853 pos: -8.5,-1.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4206 +- uid: 4205 type: Carpet components: - parent: 853 pos: -7.5,-1.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4207 +- uid: 4206 type: Carpet components: - parent: 853 pos: -6.5,-1.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4208 +- uid: 4207 type: reinforced_wall components: - parent: 853 pos: -9.5,23.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4209 +- uid: 4208 type: reinforced_wall components: - parent: 853 pos: -8.5,23.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4210 +- uid: 4209 type: reinforced_wall components: - parent: 853 pos: -7.5,23.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4211 +- uid: 4210 type: SpawnPointHeadOfSecurity components: - parent: 853 pos: -7.5,22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4212 +- uid: 4211 type: CarpetBlack components: - parent: 853 pos: -6.5,22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4213 +- uid: 4212 type: CarpetBlack components: - parent: 853 pos: -6.5,21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4214 +- uid: 4213 type: CarpetBlack components: - parent: 853 pos: -6.5,20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4215 +- uid: 4214 type: CarpetBlack components: - parent: 853 pos: -7.5,22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4216 +- uid: 4215 type: CarpetBlack components: - parent: 853 pos: -7.5,21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4217 +- uid: 4216 type: CarpetBlack components: - parent: 853 pos: -7.5,20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4218 +- uid: 4217 type: CarpetBlack components: - parent: 853 pos: -8.5,22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4219 +- uid: 4218 type: CarpetBlack components: - parent: 853 pos: -8.5,21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4220 +- uid: 4219 type: CarpetBlack components: - parent: 853 pos: -8.5,20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4221 +- uid: 4220 type: Chair components: - parent: 853 pos: -7.5,20.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4222 +- uid: 4221 type: Chair components: - parent: 853 pos: -6.5,20.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4223 +- uid: 4222 type: TableWood components: - parent: 853 pos: -8.5,21.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4224 +- uid: 4223 type: WeaponCapacitorRecharger components: - parent: 853 @@ -45268,103 +45277,103 @@ entities: WeaponCapacitorCharger-powerCellContainer: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4225 +- uid: 4224 type: Table components: - parent: 853 pos: -4.5,14.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4226 +- uid: 4225 type: Table components: - parent: 853 pos: -4.5,13.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4227 +- uid: 4226 type: Table components: - parent: 853 pos: -5.5,13.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4228 +- uid: 4227 type: Table components: - parent: 853 pos: -6.5,13.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4229 +- uid: 4228 type: Table components: - parent: 853 pos: -7.5,13.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4230 +- uid: 4229 type: Table components: - parent: 853 pos: -7.5,14.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4231 +- uid: 4230 type: Chair components: - parent: 853 pos: -4.5,12.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4232 +- uid: 4231 type: Chair components: - parent: 853 pos: -5.5,12.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4233 +- uid: 4232 type: Chair components: - parent: 853 pos: -6.5,12.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4234 +- uid: 4233 type: Chair components: - parent: 853 pos: -7.5,12.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4235 +- uid: 4234 type: Chair components: - parent: 853 pos: -8.5,13.5 type: Transform -- uid: 4236 +- uid: 4235 type: Chair components: - parent: 853 pos: -8.5,14.5 type: Transform -- uid: 4237 +- uid: 4236 type: Chair components: - parent: 853 pos: -3.5,14.5 rot: 3.141592653589793 rad type: Transform -- uid: 4238 +- uid: 4237 type: Chair components: - parent: 853 pos: -3.5,13.5 rot: 3.141592653589793 rad type: Transform -- uid: 4239 +- uid: 4238 type: BoxHandcuff components: - parent: 853 @@ -45375,7 +45384,7 @@ entities: storagebase: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4240 +- uid: 4239 type: WeaponCapacitorRecharger components: - parent: 853 @@ -45388,7 +45397,7 @@ entities: WeaponCapacitorCharger-powerCellContainer: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4241 +- uid: 4240 type: BoxDonkpocket components: - parent: 853 @@ -45399,49 +45408,49 @@ entities: storagebase: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4242 +- uid: 4241 type: RadioHandheld components: - parent: 853 pos: -7.5,13.5 rot: 3.141592653589793 rad type: Transform -- uid: 4243 +- uid: 4242 type: RadioHandheld components: - parent: 853 pos: -4.5,13.5 rot: 3.141592653589793 rad type: Transform -- uid: 4244 +- uid: 4243 type: RadioHandheld components: - parent: 853 pos: 1.5,28.5 rot: 3.141592653589793 rad type: Transform -- uid: 4245 +- uid: 4244 type: RadioHandheld components: - parent: 853 pos: 26.5,8.5 rot: 3.141592653589793 rad type: Transform -- uid: 4246 +- uid: 4245 type: Table components: - parent: 853 pos: -7.5,-28.5 rot: 3.141592653589793 rad type: Transform -- uid: 4247 +- uid: 4246 type: Table components: - parent: 853 pos: -7.5,-29.5 rot: 3.141592653589793 rad type: Transform -- uid: 4248 +- uid: 4247 type: KitchenMicrowave components: - parent: 853 @@ -45452,14 +45461,14 @@ entities: microwave_entity_container: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4249 +- uid: 4248 type: ClothingHeadHelmetScaf components: - parent: 853 pos: 13.5,24.5 rot: 3.141592653589793 rad type: Transform -- uid: 4250 +- uid: 4249 type: ClothingBeltSecurityFilled components: - parent: 853 @@ -45470,35 +45479,35 @@ entities: storagebase: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4251 +- uid: 4250 type: Shelf components: - parent: 853 pos: -20.5,7.5 rot: 3.141592653589793 rad type: Transform -- uid: 4252 +- uid: 4251 type: SprayBottleSpaceCleaner components: - parent: 853 pos: -20.5,7.5 rot: 3.141592653589793 rad type: Transform -- uid: 4253 +- uid: 4252 type: RCDAmmo components: - parent: 853 pos: 32.5,-2.5 rot: 3.141592653589793 rad type: Transform -- uid: 4254 +- uid: 4253 type: RCDAmmo components: - parent: 853 pos: 32.812416,-2.3740568 rot: 3.141592653589793 rad type: Transform -- uid: 4255 +- uid: 4254 type: SmgWt550 components: - parent: 853 @@ -45512,19 +45521,19 @@ entities: type: Content.Server.GameObjects.ContainerSlot MagazineBarrel-magazine: entities: - - 4256 + - 4255 type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4256 +- uid: 4255 type: MagazinePistolSmgTopMounted components: - - parent: 4255 + - parent: 4254 type: Transform - containers: RangedMagazine-magazine: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4257 +- uid: 4256 type: BodyBag_Container components: - parent: 853 @@ -45537,7 +45546,7 @@ entities: body_bag_label: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4258 +- uid: 4257 type: BodyBag_Container components: - parent: 853 @@ -45550,7 +45559,7 @@ entities: body_bag_label: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4259 +- uid: 4258 type: Poweredlight components: - parent: 853 @@ -45563,19 +45572,19 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4260 +- uid: 4259 type: TableMetal components: - parent: 853 pos: -14.5,18.5 type: Transform -- uid: 4261 +- uid: 4260 type: TableMetal components: - parent: 853 pos: -14.5,19.5 type: Transform -- uid: 4262 +- uid: 4261 type: BoxFlashbang components: - parent: 853 @@ -45585,63 +45594,63 @@ entities: storagebase: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4263 +- uid: 4262 type: CarpetBlue components: - parent: 853 pos: 8.5,20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4264 +- uid: 4263 type: CarpetBlue components: - parent: 853 pos: 8.5,19.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4265 +- uid: 4264 type: CarpetBlue components: - parent: 853 pos: 8.5,18.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4266 +- uid: 4265 type: CarpetBlue components: - parent: 853 pos: 8.5,17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4267 +- uid: 4266 type: CarpetBlue components: - parent: 853 pos: 9.5,20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4268 +- uid: 4267 type: CarpetBlue components: - parent: 853 pos: 9.5,19.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4269 +- uid: 4268 type: CarpetBlue components: - parent: 853 pos: 9.5,18.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4270 +- uid: 4269 type: CarpetBlue components: - parent: 853 pos: 9.5,17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4271 +- uid: 4270 type: LampGold components: - parent: 853 @@ -45652,25 +45661,30 @@ entities: cellslot_cell_container: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4272 +- uid: 4271 type: Table components: - parent: 853 pos: -10.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4273 +- uid: 4272 type: ProtolatheMachineCircuitboard components: - parent: 1043 type: Transform +- uid: 4273 + type: MatterBinStockPart + components: + - parent: 1043 + type: Transform - uid: 4274 type: MatterBinStockPart components: - parent: 1043 type: Transform - uid: 4275 - type: MatterBinStockPart + type: MicroManipulatorStockPart components: - parent: 1043 type: Transform @@ -45680,7 +45694,7 @@ entities: - parent: 1043 type: Transform - uid: 4277 - type: MicroManipulatorStockPart + type: Beaker components: - parent: 1043 type: Transform @@ -45690,291 +45704,286 @@ entities: - parent: 1043 type: Transform - uid: 4279 - type: Beaker - components: - - parent: 1043 - type: Transform -- uid: 4280 type: TraitorDMRedemptionMachineSpawner components: - parent: 853 pos: -18.5,25.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4281 +- uid: 4280 type: TraitorDMRedemptionMachineSpawner components: - parent: 853 pos: 10.5,13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4282 +- uid: 4281 type: TraitorDMRedemptionMachineSpawner components: - parent: 853 pos: -9.5,-25.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4283 +- uid: 4282 type: TraitorDMRedemptionMachineSpawner components: - parent: 853 pos: 27.5,-1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4284 +- uid: 4283 type: reinforced_wall components: - parent: 853 pos: 52.5,-1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4285 +- uid: 4284 type: reinforced_wall components: - parent: 853 pos: 52.5,-2.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4286 +- uid: 4285 type: reinforced_wall components: - parent: 853 pos: 52.5,-3.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4287 +- uid: 4286 type: reinforced_wall components: - parent: 853 pos: 52.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4288 +- uid: 4287 type: reinforced_wall components: - parent: 853 pos: 52.5,-5.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4289 +- uid: 4288 type: reinforced_wall components: - parent: 853 pos: 52.5,-6.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4290 +- uid: 4289 type: reinforced_wall components: - parent: 853 pos: 52.5,-7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4291 +- uid: 4290 type: SinguloGenerator components: - parent: 853 pos: 49.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4292 +- uid: 4291 type: LowWall components: - parent: 853 pos: 46.5,14.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4292 + type: LowWall + components: + - parent: 853 + pos: 47.5,14.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4293 type: LowWall components: - parent: 853 - pos: 47.5,14.5 + pos: 48.5,14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4294 type: LowWall components: - parent: 853 - pos: 48.5,14.5 + pos: 49.5,14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4295 type: LowWall components: - parent: 853 - pos: 49.5,14.5 + pos: 50.5,14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4296 type: LowWall components: - parent: 853 - pos: 50.5,14.5 + pos: 51.5,14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4297 type: LowWall components: - parent: 853 - pos: 51.5,14.5 + pos: 51.5,13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4298 type: LowWall components: - parent: 853 - pos: 51.5,13.5 + pos: 51.5,12.5 rot: -1.5707963267948966 rad type: Transform - uid: 4299 type: LowWall components: - parent: 853 - pos: 51.5,12.5 + pos: 51.5,11.5 rot: -1.5707963267948966 rad type: Transform - uid: 4300 type: LowWall components: - parent: 853 - pos: 51.5,11.5 + pos: 51.5,10.5 rot: -1.5707963267948966 rad type: Transform - uid: 4301 type: LowWall components: - parent: 853 - pos: 51.5,10.5 + pos: 51.5,9.5 rot: -1.5707963267948966 rad type: Transform - uid: 4302 type: LowWall components: - parent: 853 - pos: 51.5,9.5 + pos: 51.5,8.5 rot: -1.5707963267948966 rad type: Transform - uid: 4303 - type: LowWall - components: - - parent: 853 - pos: 51.5,8.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4304 type: LowWall components: - parent: 853 pos: 51.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4305 +- uid: 4304 type: reinforced_wall components: - parent: 853 pos: 51.5,6.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4306 +- uid: 4305 type: reinforced_wall components: - parent: 853 pos: 45.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4307 +- uid: 4306 type: ReinforcedWindow components: - parent: 853 pos: 46.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4308 +- uid: 4307 type: ReinforcedWindow components: - parent: 853 pos: 47.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4309 +- uid: 4308 type: ReinforcedWindow components: - parent: 853 pos: 48.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4310 +- uid: 4309 type: ReinforcedWindow components: - parent: 853 pos: 49.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4311 +- uid: 4310 type: ReinforcedWindow components: - parent: 853 pos: 50.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4312 +- uid: 4311 type: ReinforcedWindow components: - parent: 853 pos: 51.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4313 +- uid: 4312 type: ReinforcedWindow components: - parent: 853 pos: 51.5,13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4314 +- uid: 4313 type: ReinforcedWindow components: - parent: 853 pos: 51.5,12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4315 +- uid: 4314 type: ReinforcedWindow components: - parent: 853 pos: 51.5,11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4316 +- uid: 4315 type: ReinforcedWindow components: - parent: 853 pos: 51.5,10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4317 +- uid: 4316 type: ReinforcedWindow components: - parent: 853 pos: 51.5,9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4318 +- uid: 4317 type: ReinforcedWindow components: - parent: 853 pos: 51.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4319 +- uid: 4318 type: ReinforcedWindow components: - parent: 853 pos: 51.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4320 +- uid: 4319 type: AirlockEngineeringLocked components: - name: Antimatter Engine @@ -45983,7 +45992,7 @@ entities: pos: 45.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4321 +- uid: 4320 type: AirlockEngineeringLocked components: - name: Antimatter Engine @@ -45992,7 +46001,7 @@ entities: pos: 45.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4322 +- uid: 4321 type: Poweredlight components: - parent: 853 @@ -46004,119 +46013,119 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4323 +- uid: 4322 type: ApcExtensionCable components: - parent: 853 pos: 45.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4324 +- uid: 4323 type: ApcExtensionCable components: - parent: 853 pos: 46.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4325 +- uid: 4324 type: ApcExtensionCable components: - parent: 853 pos: 46.5,12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4326 +- uid: 4325 type: ApcExtensionCable components: - parent: 853 pos: 47.5,9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4327 +- uid: 4326 type: ApcExtensionCable components: - parent: 853 pos: 47.5,10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4328 +- uid: 4327 type: ApcExtensionCable components: - parent: 853 pos: 47.5,11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4329 +- uid: 4328 type: ApcExtensionCable components: - parent: 853 pos: 47.5,12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4330 +- uid: 4329 type: ApcExtensionCable components: - parent: 853 pos: 47.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4331 +- uid: 4330 type: ApcExtensionCable components: - parent: 853 pos: 47.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4332 +- uid: 4331 type: ApcExtensionCable components: - parent: 853 pos: 49.5,12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4333 +- uid: 4332 type: ApcExtensionCable components: - parent: 853 pos: 49.5,11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4334 +- uid: 4333 type: ApcExtensionCable components: - parent: 853 pos: 49.5,10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4335 +- uid: 4334 type: ApcExtensionCable components: - parent: 853 pos: 49.5,9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4336 +- uid: 4335 type: ApcExtensionCable components: - parent: 853 pos: 49.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4337 +- uid: 4336 type: ApcExtensionCable components: - parent: 853 pos: 49.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4338 +- uid: 4337 type: ApcExtensionCable components: - parent: 853 pos: 48.5,9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4339 +- uid: 4338 type: Poweredlight components: - parent: 853 @@ -46128,977 +46137,977 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4340 +- uid: 4339 type: HVWire components: - parent: 853 pos: 42.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4341 +- uid: 4340 type: HVWire components: - parent: 853 pos: 43.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4342 +- uid: 4341 type: HVWire components: - parent: 853 pos: 44.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4343 +- uid: 4342 type: HVWire components: - parent: 853 pos: 45.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4344 +- uid: 4343 type: HVWire components: - parent: 853 pos: 46.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4345 +- uid: 4344 type: HVWire components: - parent: 853 pos: 47.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4346 +- uid: 4345 type: HVWire components: - parent: 853 pos: 48.5,7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4347 +- uid: 4346 type: HVWire components: - parent: 853 pos: 48.5,8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4348 +- uid: 4347 type: HVWire components: - parent: 853 pos: 48.5,9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4349 +- uid: 4348 type: HVWire components: - parent: 853 pos: 48.5,10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4350 +- uid: 4349 type: HVWire components: - parent: 853 pos: 48.5,11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4351 +- uid: 4350 type: HVWire components: - parent: 853 pos: 48.5,12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4352 +- uid: 4351 type: reinforced_wall components: - parent: 853 pos: 46.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4353 +- uid: 4352 type: reinforced_wall components: - parent: 853 pos: 45.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4354 +- uid: 4353 type: reinforced_wall components: - parent: 853 pos: 44.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4355 +- uid: 4354 type: reinforced_wall components: - parent: 853 pos: 43.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4356 +- uid: 4355 type: reinforced_wall components: - parent: 853 pos: 43.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4357 +- uid: 4356 type: reinforced_wall components: - parent: 853 pos: 43.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4358 +- uid: 4357 type: reinforced_wall components: - parent: 853 pos: 43.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4359 +- uid: 4358 type: reinforced_wall components: - parent: 853 pos: 43.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4360 +- uid: 4359 type: reinforced_wall components: - parent: 853 pos: 43.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4361 +- uid: 4360 type: reinforced_wall components: - parent: 853 pos: 43.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4362 +- uid: 4361 type: reinforced_wall components: - parent: 853 pos: 55.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4363 +- uid: 4362 type: reinforced_wall components: - parent: 853 pos: 55.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4364 +- uid: 4363 type: reinforced_wall components: - parent: 853 pos: 55.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4365 +- uid: 4364 type: reinforced_wall components: - parent: 853 pos: 55.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4366 +- uid: 4365 type: reinforced_wall components: - parent: 853 pos: 55.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4367 +- uid: 4366 type: reinforced_wall components: - parent: 853 pos: 55.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4368 +- uid: 4367 type: reinforced_wall components: - parent: 853 pos: 55.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4369 +- uid: 4368 type: reinforced_wall components: - parent: 853 pos: 54.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4370 +- uid: 4369 type: reinforced_wall components: - parent: 853 pos: 53.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4371 +- uid: 4370 type: reinforced_wall components: - parent: 853 pos: 52.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4372 +- uid: 4371 type: reinforced_wall components: - parent: 853 pos: 46.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4373 +- uid: 4372 type: reinforced_wall components: - parent: 853 pos: 46.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4374 +- uid: 4373 type: reinforced_wall components: - parent: 853 pos: 46.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4375 +- uid: 4374 type: reinforced_wall components: - parent: 853 pos: 52.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4376 +- uid: 4375 type: reinforced_wall components: - parent: 853 pos: 52.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4377 +- uid: 4376 type: reinforced_wall components: - parent: 853 pos: 52.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4378 +- uid: 4377 type: LowWall components: - parent: 853 pos: 46.5,-13.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4378 + type: LowWall + components: + - parent: 853 + pos: 46.5,-14.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4379 type: LowWall components: - parent: 853 - pos: 46.5,-14.5 + pos: 45.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4380 type: LowWall components: - parent: 853 - pos: 45.5,-14.5 + pos: 47.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4381 type: LowWall components: - parent: 853 - pos: 47.5,-14.5 + pos: 48.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4382 type: LowWall components: - parent: 853 - pos: 48.5,-14.5 + pos: 49.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4383 type: LowWall components: - parent: 853 - pos: 49.5,-14.5 + pos: 50.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4384 type: LowWall components: - parent: 853 - pos: 50.5,-14.5 + pos: 51.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4385 type: LowWall components: - parent: 853 - pos: 51.5,-14.5 + pos: 52.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4386 type: LowWall components: - parent: 853 - pos: 52.5,-14.5 + pos: 52.5,-13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4387 - type: LowWall - components: - - parent: 853 - pos: 52.5,-13.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4388 type: LowWall components: - parent: 853 pos: 53.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4389 +- uid: 4388 type: ReinforcedWindow components: - parent: 853 pos: 46.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4390 +- uid: 4389 type: ReinforcedWindow components: - parent: 853 pos: 46.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4391 +- uid: 4390 type: ReinforcedWindow components: - parent: 853 pos: 45.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4392 +- uid: 4391 type: ReinforcedWindow components: - parent: 853 pos: 47.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4393 +- uid: 4392 type: ReinforcedWindow components: - parent: 853 pos: 48.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4394 +- uid: 4393 type: ReinforcedWindow components: - parent: 853 pos: 52.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4395 +- uid: 4394 type: ReinforcedWindow components: - parent: 853 pos: 53.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4396 +- uid: 4395 type: ReinforcedWindow components: - parent: 853 pos: 52.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4397 +- uid: 4396 type: ReinforcedWindow components: - parent: 853 pos: 51.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4398 +- uid: 4397 type: ReinforcedWindow components: - parent: 853 pos: 50.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4399 +- uid: 4398 type: ReinforcedWindow components: - parent: 853 pos: 49.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4400 +- uid: 4399 type: AirlockExternalLocked components: - parent: 853 pos: 44.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4401 +- uid: 4400 type: AirlockExternalLocked components: - parent: 853 pos: 54.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4402 +- uid: 4401 type: Emitter components: - parent: 853 pos: 45.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4403 +- uid: 4402 type: Emitter components: - parent: 853 pos: 49.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4404 +- uid: 4403 type: Emitter components: - parent: 853 pos: 53.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4405 +- uid: 4404 type: Emitter components: - parent: 853 pos: 56.5,-20.5 rot: 3.141592653589793 rad type: Transform -- uid: 4406 +- uid: 4405 type: Emitter components: - parent: 853 pos: 56.5,-24.5 rot: 3.141592653589793 rad type: Transform -- uid: 4407 +- uid: 4406 type: Emitter components: - parent: 853 pos: 56.5,-28.5 rot: 3.141592653589793 rad type: Transform -- uid: 4408 +- uid: 4407 type: Emitter components: - parent: 853 pos: 53.5,-31.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4409 +- uid: 4408 type: Emitter components: - parent: 853 pos: 49.5,-31.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4410 +- uid: 4409 type: Emitter components: - parent: 853 pos: 45.5,-31.5 rot: 1.5707963267948966 rad type: Transform -- uid: 4411 +- uid: 4410 type: Emitter components: - parent: 853 pos: 42.5,-28.5 type: Transform -- uid: 4412 +- uid: 4411 type: Emitter components: - parent: 853 pos: 42.5,-24.5 type: Transform -- uid: 4413 +- uid: 4412 type: Emitter components: - parent: 853 pos: 42.5,-20.5 type: Transform -- uid: 4414 +- uid: 4413 type: ApcExtensionCable components: - parent: 853 pos: 44.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4415 +- uid: 4414 type: ApcExtensionCable components: - parent: 853 pos: 44.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4416 +- uid: 4415 type: ApcExtensionCable components: - parent: 853 pos: 44.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4417 +- uid: 4416 type: ApcExtensionCable components: - parent: 853 pos: 44.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4418 +- uid: 4417 type: ApcExtensionCable components: - parent: 853 pos: 45.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4419 +- uid: 4418 type: ApcExtensionCable components: - parent: 853 pos: 46.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4420 +- uid: 4419 type: ApcExtensionCable components: - parent: 853 pos: 54.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4421 +- uid: 4420 type: ApcExtensionCable components: - parent: 853 pos: 54.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4422 +- uid: 4421 type: ApcExtensionCable components: - parent: 853 pos: 54.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4423 +- uid: 4422 type: ApcExtensionCable components: - parent: 853 pos: 54.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4424 +- uid: 4423 type: ApcExtensionCable components: - parent: 853 pos: 53.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4425 +- uid: 4424 type: ApcExtensionCable components: - parent: 853 pos: 52.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4426 +- uid: 4425 type: ApcExtensionCable components: - parent: 853 pos: 51.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4427 +- uid: 4426 type: ApcExtensionCable components: - parent: 853 pos: 47.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4428 +- uid: 4427 type: ApcExtensionCable components: - parent: 853 pos: 48.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4429 +- uid: 4428 type: ApcExtensionCable components: - parent: 853 pos: 49.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4430 +- uid: 4429 type: ApcExtensionCable components: - parent: 853 pos: 50.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4431 +- uid: 4430 type: ApcExtensionCable components: - parent: 853 pos: 49.5,-8.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4431 + type: ApcExtensionCable + components: + - parent: 853 + pos: 49.5,-7.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4432 type: ApcExtensionCable components: - parent: 853 - pos: 49.5,-7.5 + pos: 49.5,-6.5 rot: -1.5707963267948966 rad type: Transform - uid: 4433 type: ApcExtensionCable components: - parent: 853 - pos: 49.5,-6.5 + pos: 48.5,-6.5 rot: -1.5707963267948966 rad type: Transform - uid: 4434 type: ApcExtensionCable components: - parent: 853 - pos: 48.5,-6.5 + pos: 47.5,-6.5 rot: -1.5707963267948966 rad type: Transform - uid: 4435 type: ApcExtensionCable components: - parent: 853 - pos: 47.5,-6.5 + pos: 47.5,-5.5 rot: -1.5707963267948966 rad type: Transform - uid: 4436 type: ApcExtensionCable components: - parent: 853 - pos: 47.5,-5.5 + pos: 47.5,-4.5 rot: -1.5707963267948966 rad type: Transform - uid: 4437 type: ApcExtensionCable components: - parent: 853 - pos: 47.5,-4.5 + pos: 49.5,-10.5 rot: -1.5707963267948966 rad type: Transform - uid: 4438 type: ApcExtensionCable components: - parent: 853 - pos: 49.5,-10.5 + pos: 49.5,-11.5 rot: -1.5707963267948966 rad type: Transform - uid: 4439 type: ApcExtensionCable components: - parent: 853 - pos: 49.5,-11.5 + pos: 49.5,-12.5 rot: -1.5707963267948966 rad type: Transform - uid: 4440 type: ApcExtensionCable components: - parent: 853 - pos: 49.5,-12.5 + pos: 48.5,-11.5 rot: -1.5707963267948966 rad type: Transform - uid: 4441 - type: ApcExtensionCable - components: - - parent: 853 - pos: 48.5,-11.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4442 type: ApcExtensionCable components: - parent: 853 pos: 50.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4443 +- uid: 4442 type: HVWire components: - parent: 853 pos: 45.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4444 +- uid: 4443 type: HVWire components: - parent: 853 pos: 45.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4445 +- uid: 4444 type: HVWire components: - parent: 853 pos: 45.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4446 +- uid: 4445 type: HVWire components: - parent: 853 pos: 46.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4447 +- uid: 4446 type: HVWire components: - parent: 853 pos: 47.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4448 +- uid: 4447 type: HVWire components: - parent: 853 pos: 48.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4449 +- uid: 4448 type: HVWire components: - parent: 853 pos: 48.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4450 +- uid: 4449 type: HVWire components: - parent: 853 pos: 49.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4451 +- uid: 4450 type: HVWire components: - parent: 853 pos: 50.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4452 +- uid: 4451 type: HVWire components: - parent: 853 pos: 49.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4453 +- uid: 4452 type: HVWire components: - parent: 853 pos: 51.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4454 +- uid: 4453 type: HVWire components: - parent: 853 pos: 52.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4455 +- uid: 4454 type: HVWire components: - parent: 853 pos: 53.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4456 +- uid: 4455 type: HVWire components: - parent: 853 pos: 53.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4457 +- uid: 4456 type: HVWire components: - parent: 853 pos: 53.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4458 +- uid: 4457 type: HVWire components: - parent: 853 pos: 49.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4459 +- uid: 4458 type: HVWire components: - parent: 853 pos: 49.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4460 +- uid: 4459 type: HVWire components: - parent: 853 pos: 49.5,-7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4461 +- uid: 4460 type: HVWire components: - parent: 853 pos: 49.5,-6.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4462 +- uid: 4461 type: HVWire components: - parent: 853 pos: 48.5,-6.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4463 +- uid: 4462 type: HVWire components: - parent: 853 pos: 47.5,-6.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4464 +- uid: 4463 type: HVWire components: - parent: 853 pos: 47.5,-5.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4465 +- uid: 4464 type: HVWire components: - parent: 853 pos: 47.5,-4.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4466 +- uid: 4465 type: HVWire components: - parent: 853 pos: 47.5,-3.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4467 +- uid: 4466 type: HVWire components: - parent: 853 pos: 47.5,-2.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4468 +- uid: 4467 type: HVWire components: - parent: 853 pos: 48.5,-2.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4469 +- uid: 4468 type: HVWire components: - parent: 853 pos: 48.5,-1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4470 +- uid: 4469 type: HVWire components: - parent: 853 pos: 48.5,-0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4471 +- uid: 4470 type: HVWire components: - parent: 853 pos: 48.5,0.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4472 +- uid: 4471 type: HVWire components: - parent: 853 pos: 48.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4473 +- uid: 4472 type: HVWire components: - parent: 853 pos: 47.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4474 +- uid: 4473 type: HVWire components: - parent: 853 pos: 46.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4475 +- uid: 4474 type: HVWire components: - parent: 853 pos: 45.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4476 +- uid: 4475 type: HVWire components: - parent: 853 pos: 44.5,1.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4477 +- uid: 4476 type: AirlockExternalLocked components: - parent: 853 pos: 46.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4478 +- uid: 4477 type: AirlockExternalLocked components: - parent: 853 pos: 52.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4479 +- uid: 4478 type: AirlockEngineeringLocked components: - name: Singularity Engine @@ -47107,47 +47116,47 @@ entities: pos: 49.5,-7.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4480 +- uid: 4479 type: SalternSmes components: - parent: 853 pos: 45.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4481 +- uid: 4480 type: SalternSmes components: - parent: 853 pos: 53.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4482 +- uid: 4481 type: SalternSubstation components: - parent: 853 pos: 45.5,-10.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319414 + - startingCharge: 3200136 type: Battery - drawRate: 8000 type: PowerConsumer - supplyRate: 6000 type: PowerSupplier -- uid: 4483 +- uid: 4482 type: SalternSubstation components: - parent: 853 pos: 53.5,-10.5 rot: -1.5707963267948966 rad type: Transform - - startingCharge: 3319414 + - startingCharge: 3200136 type: Battery - drawRate: 8000 type: PowerConsumer - supplyRate: 6000 type: PowerSupplier -- uid: 4484 +- uid: 4483 type: Poweredlight components: - parent: 853 @@ -47160,7 +47169,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4485 +- uid: 4484 type: Poweredlight components: - parent: 853 @@ -47173,7 +47182,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4486 +- uid: 4485 type: Poweredlight components: - parent: 853 @@ -47186,7 +47195,7 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4487 +- uid: 4486 type: Poweredlight components: - parent: 853 @@ -47198,1596 +47207,1596 @@ entities: light_bulb: type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- uid: 4488 +- uid: 4487 type: MVWire components: - parent: 853 pos: 45.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4489 +- uid: 4488 type: MVWire components: - parent: 853 pos: 45.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4490 +- uid: 4489 type: MVWire components: - parent: 853 pos: 53.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4491 +- uid: 4490 type: MVWire components: - parent: 853 pos: 53.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4492 +- uid: 4491 type: MVWire components: - parent: 853 pos: 52.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4493 +- uid: 4492 type: MVWire components: - parent: 853 pos: 51.5,-11.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4493 + type: MVWire + components: + - parent: 853 + pos: 51.5,-12.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4494 type: MVWire components: - parent: 853 - pos: 51.5,-12.5 + pos: 46.5,-11.5 rot: -1.5707963267948966 rad type: Transform - uid: 4495 type: MVWire components: - parent: 853 - pos: 46.5,-11.5 + pos: 47.5,-11.5 rot: -1.5707963267948966 rad type: Transform - uid: 4496 type: MVWire components: - parent: 853 - pos: 47.5,-11.5 + pos: 47.5,-12.5 rot: -1.5707963267948966 rad type: Transform - uid: 4497 type: MVWire components: - parent: 853 - pos: 47.5,-12.5 + pos: 47.5,-13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4498 type: MVWire components: - parent: 853 - pos: 47.5,-13.5 + pos: 49.5,-13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4499 type: MVWire components: - parent: 853 - pos: 49.5,-13.5 + pos: 48.5,-13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4500 type: MVWire components: - parent: 853 - pos: 48.5,-13.5 + pos: 50.5,-13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4501 type: MVWire components: - parent: 853 - pos: 50.5,-13.5 + pos: 51.5,-13.5 rot: -1.5707963267948966 rad type: Transform - uid: 4502 type: MVWire components: - parent: 853 - pos: 51.5,-13.5 + pos: 49.5,-14.5 rot: -1.5707963267948966 rad type: Transform - uid: 4503 type: MVWire components: - parent: 853 - pos: 49.5,-14.5 + pos: 49.5,-15.5 rot: -1.5707963267948966 rad type: Transform - uid: 4504 type: MVWire components: - parent: 853 - pos: 49.5,-15.5 + pos: 49.5,-16.5 rot: -1.5707963267948966 rad type: Transform - uid: 4505 type: MVWire components: - parent: 853 - pos: 49.5,-16.5 + pos: 49.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4506 type: MVWire components: - parent: 853 - pos: 49.5,-17.5 + pos: 48.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4507 type: MVWire components: - parent: 853 - pos: 48.5,-17.5 + pos: 47.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4508 type: MVWire components: - parent: 853 - pos: 47.5,-17.5 + pos: 46.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4509 type: MVWire components: - parent: 853 - pos: 46.5,-17.5 + pos: 45.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4510 type: MVWire components: - parent: 853 - pos: 45.5,-17.5 + pos: 50.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4511 type: MVWire components: - parent: 853 - pos: 50.5,-17.5 + pos: 51.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4512 type: MVWire components: - parent: 853 - pos: 51.5,-17.5 + pos: 52.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4513 type: MVWire components: - parent: 853 - pos: 52.5,-17.5 + pos: 53.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4514 type: MVWire components: - parent: 853 - pos: 53.5,-17.5 + pos: 54.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4515 type: MVWire components: - parent: 853 - pos: 54.5,-17.5 + pos: 55.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4516 type: MVWire components: - parent: 853 - pos: 55.5,-17.5 + pos: 56.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4517 type: MVWire components: - parent: 853 - pos: 56.5,-17.5 + pos: 56.5,-18.5 rot: -1.5707963267948966 rad type: Transform - uid: 4518 type: MVWire components: - parent: 853 - pos: 56.5,-18.5 + pos: 56.5,-19.5 rot: -1.5707963267948966 rad type: Transform - uid: 4519 type: MVWire components: - parent: 853 - pos: 56.5,-19.5 + pos: 56.5,-20.5 rot: -1.5707963267948966 rad type: Transform - uid: 4520 type: MVWire components: - parent: 853 - pos: 56.5,-20.5 + pos: 56.5,-21.5 rot: -1.5707963267948966 rad type: Transform - uid: 4521 type: MVWire components: - parent: 853 - pos: 56.5,-21.5 + pos: 56.5,-22.5 rot: -1.5707963267948966 rad type: Transform - uid: 4522 type: MVWire components: - parent: 853 - pos: 56.5,-22.5 + pos: 56.5,-23.5 rot: -1.5707963267948966 rad type: Transform - uid: 4523 type: MVWire components: - parent: 853 - pos: 56.5,-23.5 + pos: 56.5,-24.5 rot: -1.5707963267948966 rad type: Transform - uid: 4524 type: MVWire components: - parent: 853 - pos: 56.5,-24.5 + pos: 56.5,-25.5 rot: -1.5707963267948966 rad type: Transform - uid: 4525 type: MVWire components: - parent: 853 - pos: 56.5,-25.5 + pos: 56.5,-26.5 rot: -1.5707963267948966 rad type: Transform - uid: 4526 type: MVWire components: - parent: 853 - pos: 56.5,-26.5 + pos: 56.5,-27.5 rot: -1.5707963267948966 rad type: Transform - uid: 4527 type: MVWire components: - parent: 853 - pos: 56.5,-27.5 + pos: 56.5,-28.5 rot: -1.5707963267948966 rad type: Transform - uid: 4528 type: MVWire components: - parent: 853 - pos: 56.5,-28.5 + pos: 56.5,-29.5 rot: -1.5707963267948966 rad type: Transform - uid: 4529 type: MVWire components: - parent: 853 - pos: 56.5,-29.5 + pos: 56.5,-30.5 rot: -1.5707963267948966 rad type: Transform - uid: 4530 type: MVWire components: - parent: 853 - pos: 56.5,-30.5 + pos: 56.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4531 type: MVWire components: - parent: 853 - pos: 56.5,-31.5 + pos: 55.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4532 type: MVWire components: - parent: 853 - pos: 55.5,-31.5 + pos: 54.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4533 type: MVWire components: - parent: 853 - pos: 54.5,-31.5 + pos: 53.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4534 type: MVWire components: - parent: 853 - pos: 53.5,-31.5 + pos: 52.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4535 type: MVWire components: - parent: 853 - pos: 52.5,-31.5 + pos: 51.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4536 type: MVWire components: - parent: 853 - pos: 51.5,-31.5 + pos: 50.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4537 type: MVWire components: - parent: 853 - pos: 50.5,-31.5 + pos: 49.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4538 type: MVWire components: - parent: 853 - pos: 49.5,-31.5 + pos: 48.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4539 type: MVWire components: - parent: 853 - pos: 48.5,-31.5 + pos: 47.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4540 type: MVWire components: - parent: 853 - pos: 47.5,-31.5 + pos: 46.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4541 type: MVWire components: - parent: 853 - pos: 46.5,-31.5 + pos: 45.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4542 type: MVWire components: - parent: 853 - pos: 45.5,-31.5 + pos: 44.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4543 type: MVWire components: - parent: 853 - pos: 44.5,-31.5 + pos: 43.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4544 type: MVWire components: - parent: 853 - pos: 43.5,-31.5 + pos: 42.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4545 type: MVWire components: - parent: 853 - pos: 42.5,-31.5 + pos: 42.5,-30.5 rot: -1.5707963267948966 rad type: Transform - uid: 4546 type: MVWire components: - parent: 853 - pos: 42.5,-30.5 + pos: 42.5,-29.5 rot: -1.5707963267948966 rad type: Transform - uid: 4547 type: MVWire components: - parent: 853 - pos: 42.5,-29.5 + pos: 42.5,-28.5 rot: -1.5707963267948966 rad type: Transform - uid: 4548 type: MVWire components: - parent: 853 - pos: 42.5,-28.5 + pos: 42.5,-27.5 rot: -1.5707963267948966 rad type: Transform - uid: 4549 type: MVWire components: - parent: 853 - pos: 42.5,-27.5 + pos: 42.5,-26.5 rot: -1.5707963267948966 rad type: Transform - uid: 4550 type: MVWire components: - parent: 853 - pos: 42.5,-26.5 + pos: 42.5,-25.5 rot: -1.5707963267948966 rad type: Transform - uid: 4551 type: MVWire components: - parent: 853 - pos: 42.5,-25.5 + pos: 42.5,-22.5 rot: -1.5707963267948966 rad type: Transform - uid: 4552 type: MVWire components: - parent: 853 - pos: 42.5,-22.5 + pos: 42.5,-23.5 rot: -1.5707963267948966 rad type: Transform - uid: 4553 type: MVWire components: - parent: 853 - pos: 42.5,-23.5 + pos: 42.5,-24.5 rot: -1.5707963267948966 rad type: Transform - uid: 4554 type: MVWire components: - parent: 853 - pos: 42.5,-24.5 + pos: 42.5,-21.5 rot: -1.5707963267948966 rad type: Transform - uid: 4555 type: MVWire components: - parent: 853 - pos: 42.5,-21.5 + pos: 42.5,-20.5 rot: -1.5707963267948966 rad type: Transform - uid: 4556 type: MVWire components: - parent: 853 - pos: 42.5,-20.5 + pos: 42.5,-19.5 rot: -1.5707963267948966 rad type: Transform - uid: 4557 type: MVWire components: - parent: 853 - pos: 42.5,-19.5 + pos: 42.5,-18.5 rot: -1.5707963267948966 rad type: Transform - uid: 4558 type: MVWire components: - parent: 853 - pos: 42.5,-18.5 + pos: 42.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4559 type: MVWire components: - parent: 853 - pos: 42.5,-17.5 + pos: 43.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4560 - type: MVWire - components: - - parent: 853 - pos: 43.5,-17.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4561 type: MVWire components: - parent: 853 pos: 44.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4562 +- uid: 4561 type: ContainmentFieldGenerator components: - parent: 853 pos: 45.5,-20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4563 +- uid: 4562 type: ContainmentFieldGenerator components: - parent: 853 pos: 49.5,-20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4564 +- uid: 4563 type: ContainmentFieldGenerator components: - parent: 853 pos: 53.5,-20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4565 +- uid: 4564 type: ContainmentFieldGenerator components: - parent: 853 pos: 53.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4566 +- uid: 4565 type: ContainmentFieldGenerator components: - parent: 853 pos: 53.5,-28.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4567 +- uid: 4566 type: ContainmentFieldGenerator components: - parent: 853 pos: 49.5,-28.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4568 +- uid: 4567 type: ContainmentFieldGenerator components: - parent: 853 pos: 45.5,-28.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4569 +- uid: 4568 type: ContainmentFieldGenerator components: - parent: 853 pos: 45.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4570 +- uid: 4569 type: Catwalk components: - parent: 853 pos: 53.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4571 +- uid: 4570 type: Catwalk components: - parent: 853 pos: 54.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4572 +- uid: 4571 type: Catwalk components: - parent: 853 pos: 54.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4573 +- uid: 4572 type: Catwalk components: - parent: 853 pos: 54.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4574 +- uid: 4573 type: Catwalk components: - parent: 853 pos: 54.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4575 +- uid: 4574 type: Catwalk components: - parent: 853 pos: 54.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4576 +- uid: 4575 type: Catwalk components: - parent: 853 pos: 53.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4577 +- uid: 4576 type: Catwalk components: - parent: 853 pos: 53.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4578 +- uid: 4577 type: Catwalk components: - parent: 853 pos: 45.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4579 +- uid: 4578 type: Catwalk components: - parent: 853 pos: 44.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4580 +- uid: 4579 type: Catwalk components: - parent: 853 pos: 44.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4581 +- uid: 4580 type: Catwalk components: - parent: 853 pos: 44.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4582 +- uid: 4581 type: Catwalk components: - parent: 853 pos: 45.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4583 +- uid: 4582 type: Catwalk components: - parent: 853 pos: 44.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4584 +- uid: 4583 type: Catwalk components: - parent: 853 pos: 44.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4585 +- uid: 4584 type: Catwalk components: - parent: 853 pos: 45.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4586 +- uid: 4585 type: Catwalk components: - parent: 853 pos: 47.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4587 +- uid: 4586 type: Catwalk components: - parent: 853 pos: 49.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4588 +- uid: 4587 type: Catwalk components: - parent: 853 pos: 48.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4589 +- uid: 4588 type: Catwalk components: - parent: 853 pos: 50.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4590 +- uid: 4589 type: Catwalk components: - parent: 853 pos: 51.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4591 +- uid: 4590 type: HVWire components: - parent: 853 pos: 49.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4592 +- uid: 4591 type: Catwalk components: - parent: 853 pos: 51.5,-8.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4593 +- uid: 4592 type: Catwalk components: - parent: 853 pos: 51.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4594 +- uid: 4593 type: Catwalk components: - parent: 853 pos: 51.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4595 +- uid: 4594 type: Catwalk components: - parent: 853 pos: 51.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4596 +- uid: 4595 type: Catwalk components: - parent: 853 pos: 50.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4597 +- uid: 4596 type: Catwalk components: - parent: 853 pos: 49.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4598 +- uid: 4597 type: Catwalk components: - parent: 853 pos: 48.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4599 +- uid: 4598 type: Catwalk components: - parent: 853 pos: 47.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4600 +- uid: 4599 type: Catwalk components: - parent: 853 pos: 47.5,-12.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4601 +- uid: 4600 type: Catwalk components: - parent: 853 pos: 47.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4602 +- uid: 4601 type: HVWire components: - parent: 853 pos: 50.5,-11.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4603 +- uid: 4602 type: Catwalk components: - parent: 853 pos: 47.5,-9.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4604 +- uid: 4603 type: RadiationCollector components: - parent: 853 pos: 42.5,-23.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4604 + type: RadiationCollector + components: + - parent: 853 + pos: 42.5,-22.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4605 type: RadiationCollector components: - parent: 853 - pos: 42.5,-22.5 + pos: 42.5,-21.5 rot: -1.5707963267948966 rad type: Transform - uid: 4606 type: RadiationCollector components: - parent: 853 - pos: 42.5,-21.5 + pos: 42.5,-27.5 rot: -1.5707963267948966 rad type: Transform - uid: 4607 type: RadiationCollector components: - parent: 853 - pos: 42.5,-27.5 + pos: 42.5,-26.5 rot: -1.5707963267948966 rad type: Transform - uid: 4608 type: RadiationCollector components: - parent: 853 - pos: 42.5,-26.5 + pos: 42.5,-25.5 rot: -1.5707963267948966 rad type: Transform - uid: 4609 type: RadiationCollector components: - parent: 853 - pos: 42.5,-25.5 + pos: 46.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4610 type: RadiationCollector components: - parent: 853 - pos: 46.5,-31.5 + pos: 47.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4611 type: RadiationCollector components: - parent: 853 - pos: 47.5,-31.5 + pos: 48.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4612 type: RadiationCollector components: - parent: 853 - pos: 48.5,-31.5 + pos: 50.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4613 type: RadiationCollector components: - parent: 853 - pos: 50.5,-31.5 + pos: 51.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4614 type: RadiationCollector components: - parent: 853 - pos: 51.5,-31.5 + pos: 52.5,-31.5 rot: -1.5707963267948966 rad type: Transform - uid: 4615 type: RadiationCollector components: - parent: 853 - pos: 52.5,-31.5 + pos: 56.5,-27.5 rot: -1.5707963267948966 rad type: Transform - uid: 4616 type: RadiationCollector components: - parent: 853 - pos: 56.5,-27.5 + pos: 56.5,-26.5 rot: -1.5707963267948966 rad type: Transform - uid: 4617 type: RadiationCollector components: - parent: 853 - pos: 56.5,-26.5 + pos: 56.5,-25.5 rot: -1.5707963267948966 rad type: Transform - uid: 4618 type: RadiationCollector components: - parent: 853 - pos: 56.5,-25.5 + pos: 56.5,-23.5 rot: -1.5707963267948966 rad type: Transform - uid: 4619 type: RadiationCollector components: - parent: 853 - pos: 56.5,-23.5 + pos: 56.5,-22.5 rot: -1.5707963267948966 rad type: Transform - uid: 4620 type: RadiationCollector components: - parent: 853 - pos: 56.5,-22.5 + pos: 56.5,-21.5 rot: -1.5707963267948966 rad type: Transform - uid: 4621 type: RadiationCollector components: - parent: 853 - pos: 56.5,-21.5 + pos: 46.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4622 type: RadiationCollector components: - parent: 853 - pos: 46.5,-17.5 + pos: 47.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4623 type: RadiationCollector components: - parent: 853 - pos: 47.5,-17.5 + pos: 48.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4624 type: RadiationCollector components: - parent: 853 - pos: 48.5,-17.5 + pos: 50.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4625 type: RadiationCollector components: - parent: 853 - pos: 50.5,-17.5 + pos: 51.5,-17.5 rot: -1.5707963267948966 rad type: Transform - uid: 4626 - type: RadiationCollector - components: - - parent: 853 - pos: 51.5,-17.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4627 type: RadiationCollector components: - parent: 853 pos: 52.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4628 +- uid: 4627 type: HVWire components: - parent: 853 pos: 46.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4629 +- uid: 4628 type: HVWire components: - parent: 853 pos: 47.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4630 +- uid: 4629 type: HVWire components: - parent: 853 pos: 48.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4631 +- uid: 4630 type: HVWire components: - parent: 853 pos: 49.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4632 +- uid: 4631 type: HVWire components: - parent: 853 pos: 50.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4633 +- uid: 4632 type: HVWire components: - parent: 853 pos: 51.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4634 +- uid: 4633 type: HVWire components: - parent: 853 pos: 52.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4635 +- uid: 4634 type: HVWire components: - parent: 853 pos: 53.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4636 +- uid: 4635 type: HVWire components: - parent: 853 pos: 45.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4637 +- uid: 4636 type: HVWire components: - parent: 853 pos: 44.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4638 +- uid: 4637 type: HVWire components: - parent: 853 pos: 43.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4639 +- uid: 4638 type: HVWire components: - parent: 853 pos: 42.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4640 +- uid: 4639 type: HVWire components: - parent: 853 pos: 54.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4641 +- uid: 4640 type: HVWire components: - parent: 853 pos: 55.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4642 +- uid: 4641 type: HVWire components: - parent: 853 pos: 56.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4643 +- uid: 4642 type: HVWire components: - parent: 853 pos: 57.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4644 +- uid: 4643 type: HVWire components: - parent: 853 pos: 58.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4645 +- uid: 4644 type: HVWire components: - parent: 853 pos: 58.5,-18.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4646 +- uid: 4645 type: HVWire components: - parent: 853 pos: 58.5,-19.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4647 +- uid: 4646 type: HVWire components: - parent: 853 pos: 58.5,-20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4648 +- uid: 4647 type: HVWire components: - parent: 853 pos: 58.5,-21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4649 +- uid: 4648 type: HVWire components: - parent: 853 pos: 58.5,-22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4650 +- uid: 4649 type: HVWire components: - parent: 853 pos: 57.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4651 +- uid: 4650 type: HVWire components: - parent: 853 pos: 58.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4652 +- uid: 4651 type: HVWire components: - parent: 853 pos: 58.5,-23.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4653 +- uid: 4652 type: HVWire components: - parent: 853 pos: 41.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4654 +- uid: 4653 type: HVWire components: - parent: 853 pos: 40.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4655 +- uid: 4654 type: HVWire components: - parent: 853 pos: 40.5,-23.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4656 +- uid: 4655 type: HVWire components: - parent: 853 pos: 40.5,-22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4657 +- uid: 4656 type: HVWire components: - parent: 853 pos: 40.5,-21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4658 +- uid: 4657 type: HVWire components: - parent: 853 pos: 40.5,-20.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4659 +- uid: 4658 type: HVWire components: - parent: 853 pos: 40.5,-19.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4660 +- uid: 4659 type: HVWire components: - parent: 853 pos: 40.5,-18.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4661 +- uid: 4660 type: HVWire components: - parent: 853 pos: 40.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4662 +- uid: 4661 type: HVWire components: - parent: 853 pos: 41.5,-17.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4663 +- uid: 4662 type: HVWire components: - parent: 853 pos: 42.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4664 +- uid: 4663 type: HVWire components: - parent: 853 pos: 42.5,-23.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4665 +- uid: 4664 type: HVWire components: - parent: 853 pos: 42.5,-22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4666 +- uid: 4665 type: HVWire components: - parent: 853 pos: 42.5,-21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4667 +- uid: 4666 type: HVWire components: - parent: 853 pos: 42.5,-25.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4668 +- uid: 4667 type: HVWire components: - parent: 853 pos: 42.5,-26.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4669 +- uid: 4668 type: HVWire components: - parent: 853 pos: 42.5,-27.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4670 +- uid: 4669 type: HVWire components: - parent: 853 pos: 56.5,-24.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4671 +- uid: 4670 type: HVWire components: - parent: 853 pos: 56.5,-23.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4672 +- uid: 4671 type: HVWire components: - parent: 853 pos: 56.5,-22.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4673 +- uid: 4672 type: HVWire components: - parent: 853 pos: 56.5,-21.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4674 +- uid: 4673 type: HVWire components: - parent: 853 pos: 56.5,-25.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4675 +- uid: 4674 type: HVWire components: - parent: 853 pos: 56.5,-26.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4676 +- uid: 4675 type: HVWire components: - parent: 853 pos: 56.5,-27.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4677 +- uid: 4676 type: HVWire components: - parent: 853 pos: 49.5,-16.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4678 +- uid: 4677 type: HVWire components: - parent: 853 pos: 49.5,-15.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4679 +- uid: 4678 type: HVWire components: - parent: 853 pos: 49.5,-14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4680 +- uid: 4679 type: HVWire components: - parent: 853 pos: 49.5,-13.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4681 +- uid: 4680 type: Catwalk components: - parent: 853 pos: 47.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4682 +- uid: 4681 type: Catwalk components: - parent: 853 pos: 51.5,-10.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4683 +- uid: 4682 type: HVWire components: - parent: 853 pos: 49.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4684 +- uid: 4683 type: HVWire components: - parent: 853 pos: 48.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4685 +- uid: 4684 type: HVWire components: - parent: 853 pos: 47.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4686 +- uid: 4685 type: HVWire components: - parent: 853 pos: 46.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4687 +- uid: 4686 type: HVWire components: - parent: 853 pos: 50.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4688 +- uid: 4687 type: HVWire components: - parent: 853 pos: 51.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4689 +- uid: 4688 type: HVWire components: - parent: 853 pos: 52.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4690 +- uid: 4689 type: HVWire components: - parent: 853 pos: 49.5,-32.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4691 +- uid: 4690 type: HVWire components: - parent: 853 pos: 49.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4692 +- uid: 4691 type: HVWire components: - parent: 853 pos: 48.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4693 +- uid: 4692 type: HVWire components: - parent: 853 pos: 47.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4694 +- uid: 4693 type: HVWire components: - parent: 853 pos: 46.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4695 +- uid: 4694 type: HVWire components: - parent: 853 pos: 45.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4696 +- uid: 4695 type: HVWire components: - parent: 853 pos: 44.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4697 +- uid: 4696 type: HVWire components: - parent: 853 pos: 43.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4698 +- uid: 4697 type: HVWire components: - parent: 853 pos: 42.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4699 +- uid: 4698 type: HVWire components: - parent: 853 pos: 41.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4700 +- uid: 4699 type: HVWire components: - parent: 853 pos: 40.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4701 +- uid: 4700 type: HVWire components: - parent: 853 pos: 40.5,-32.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4702 +- uid: 4701 type: HVWire components: - parent: 853 pos: 40.5,-31.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4703 +- uid: 4702 type: HVWire components: - parent: 853 pos: 40.5,-30.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4704 +- uid: 4703 type: HVWire components: - parent: 853 pos: 40.5,-29.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4705 +- uid: 4704 type: HVWire components: - parent: 853 pos: 40.5,-28.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4706 +- uid: 4705 type: HVWire components: - parent: 853 pos: 40.5,-27.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4707 +- uid: 4706 type: HVWire components: - parent: 853 pos: 40.5,-26.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4708 +- uid: 4707 type: HVWire components: - parent: 853 pos: 40.5,-25.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4709 +- uid: 4708 type: HVWire components: - parent: 853 pos: 50.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4710 +- uid: 4709 type: HVWire components: - parent: 853 pos: 51.5,-33.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4711 +- uid: 4710 type: LowWall components: - parent: 853 pos: 20.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4712 +- uid: 4711 type: LowWall components: - parent: 853 pos: 22.5,14.5 rot: -1.5707963267948966 rad type: Transform +- uid: 4712 + type: ReinforcedWindow + components: + - parent: 853 + pos: 20.5,14.5 + rot: -1.5707963267948966 rad + type: Transform - uid: 4713 - type: ReinforcedWindow - components: - - parent: 853 - pos: 20.5,14.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4714 type: ReinforcedWindow components: - parent: 853 pos: 22.5,14.5 rot: -1.5707963267948966 rad type: Transform -- uid: 4715 +- uid: 4714 type: CrateMaterialsMetal components: - parent: 853 @@ -48800,7 +48809,7 @@ entities: EntityStorageComponent: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4716 +- uid: 4715 type: CrateServiceReplacementLights components: - parent: 853 @@ -48813,39 +48822,17 @@ entities: EntityStorageComponent: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer -- uid: 4717 - type: CrateEmergencyFire +- uid: 4716 + type: SalternSubstation components: - parent: 853 - pos: 22.5,13.5 + pos: -15.5,16.5 rot: -1.5707963267948966 rad type: Transform - - IsPlaceable: False - type: PlaceableSurface - - containers: - EntityStorageComponent: - type: Robust.Server.GameObjects.Components.Container.Container - type: ContainerContainer -- uid: 4718 - type: AirlockMaintIntLocked - components: - - name: Waste Disposal - type: MetaData - - parent: 853 - pos: -24.5,-12.5 - rot: -1.5707963267948966 rad - type: Transform -- uid: 4719 - type: PoweredSmallLight - components: - - parent: 853 - pos: -22.5,-16 - rot: -1.5707963267948966 rad - type: Transform - - powerLoad: 0 - type: PowerReceiver - - containers: - light_bulb: - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer + - startingCharge: 3969174 + type: Battery + - drawRate: 8000 + type: PowerConsumer + - supplyRate: 6000 + type: PowerSupplier ... diff --git a/Resources/Prototypes/Actions/actions.yml b/Resources/Prototypes/Actions/actions.yml index c30aef5800..d588369a6b 100644 --- a/Resources/Prototypes/Actions/actions.yml +++ b/Resources/Prototypes/Actions/actions.yml @@ -22,6 +22,17 @@ - /Audio/Voice/Human/femalescream_5.ogg wilhelm: /Audio/Voice/Human/wilhelm_scream.ogg +- type: action + actionType: Disarm + icon: Interface/Actions/disarm.png + name: "[color=red]Disarm[/color]" + description: "Attempt to [color=red]disarm[/color] someone." + filters: + - human + behaviorType: TargetEntity + repeat: true + behavior: !type:DisarmAction { } + - type: action actionType: DebugInstant icon: Interface/Alerts/Human/human1.png diff --git a/Resources/Prototypes/Actions/magboots.yml b/Resources/Prototypes/Actions/magboots.yml new file mode 100644 index 0000000000..1002510087 --- /dev/null +++ b/Resources/Prototypes/Actions/magboots.yml @@ -0,0 +1,13 @@ +- type: itemAction + actionType: ToggleMagboots + icon: Clothing/Shoes/Boots/magboots.rsi/icon.png + iconOn: Clothing/Shoes/Boots/magboots.rsi/icon-on.png + name: "Toggle Magboots" + description: "Turn your magboots on." + filters: + - tools + keywords: + - atmos + - air + behaviorType: Toggle + behavior: !type:ToggleMagbootsAction { } diff --git a/Resources/Prototypes/Alerts/alerts.yml b/Resources/Prototypes/Alerts/alerts.yml index a12d8ccca7..ba9ee9ec27 100644 --- a/Resources/Prototypes/Alerts/alerts.yml +++ b/Resources/Prototypes/Alerts/alerts.yml @@ -15,6 +15,7 @@ - category: Temperature - category: Hunger - category: Thirst + - alertType: Magboots - type: alert alertType: LowOxygen @@ -39,7 +40,7 @@ icon: /Textures/Interface/Alerts/Pressure/highpressure.png maxSeverity: 2 name: "[color=red]High Pressure[/color]" - description: "The air around you is [color=red]hazardously thick[/color]. A [color=green]fire suit[/color] would protect you." + description: "The air around you is [color=red]hazardously thick[/color]. A [color=green]pressurized suit[/color] would be enough protect you" - type: alert alertType: Fire @@ -68,23 +69,21 @@ alertType: Weightless icon: /Textures/Interface/Alerts/Weightless/weightless.png name: Weightless - description: >- - Gravity has ceased affecting you, and you're floating around aimlessly. You'll need something large and heavy, like a - wall or lattice, to push yourself off if you want to move. A jetpack would enable free range of motion. A pair of - magboots would let you walk around normally on the floor. Barring those, you can throw things, use a fire extinguisher, - or shoot a gun to move around via Newton's 3rd Law of Motion. + description: > + Gravity has ceased affecting you, and you're floating around aimlessly. Find something sturdy to hold onto, or throw or shoot something in a direction opposite of you. + Mag-boots or jetpacks would help you move with more control - type: alert alertType: Stun - icon: /Textures/Objects/Weapons/Melee/stunbaton.rsi/stunbaton_off.png + icon: /Textures/Objects/Weapons/Melee/stunbaton.rsi/stunbaton_off.png #Should probably draw a proper icon name: "[color=yellow]Stunned[/color]" - description: "You're [color=yellow]stunned[/color]! Wait for it to wear off." + description: "You're [color=yellow]stunned[/color]! Something is impairing your ability to move or interact with objects" - type: alert alertType: Handcuffed icon: /Textures/Interface/Alerts/Handcuffed/Handcuffed.png name: "[color=yellow]Handcuffed[/color]" - description: "You're [color=yellow]handcuffed[/color] and can't act. If anyone drags you, you won't be able to move.." + description: "You're [color=yellow]handcuffed[/color] and can't use your hands. If anyone drags you, you won't be able to resist.." - type: alert alertType: Buckled @@ -106,7 +105,7 @@ category: Health icon: /Textures/Interface/Alerts/Human/humandead.png name: Dead - description: You're dead. + description: You're dead, note that you can still be revived! - type: alert alertType: HumanHealth diff --git a/Resources/Prototypes/Alerts/magboots.yml b/Resources/Prototypes/Alerts/magboots.yml new file mode 100644 index 0000000000..a39374c762 --- /dev/null +++ b/Resources/Prototypes/Alerts/magboots.yml @@ -0,0 +1,5 @@ +- type: alert + alertType: Magboots + icon: { sprite: "/Textures/Clothing/Shoes/Boots/magboots.rsi", state: "icon-on" } + name: "Magboots" + description: You are immume to airflow, but slightly slower. diff --git a/Resources/Prototypes/Body/Mechanisms/basic_human_organs.yml b/Resources/Prototypes/Body/Mechanisms/basic_human_organs.yml index cf40b346d0..9139a10da5 100644 --- a/Resources/Prototypes/Body/Mechanisms/basic_human_organs.yml +++ b/Resources/Prototypes/Body/Mechanisms/basic_human_organs.yml @@ -1,5 +1,24 @@ +- type: entity + id: BaseMechanism + parent: BaseItem + name: "base mechanism" + abstract: true + components: + - type: Mechanism + +- type: entity + id: BaseHumanOrgan + parent: BaseMechanism + name: "base human organ" + abstract: true + components: + - type: Sprite + netsync: false + sprite: Mobs/Species/Human/organs.rsi + - type: entity id: BrainHuman + parent: BaseHumanOrgan name: "human brain" description: "The source of incredible, unending intelligence. Honk." components: @@ -13,9 +32,11 @@ compatibility: Biological behaviors: - !type:BrainBehavior {} + - type: Input - type: entity id: EyesHuman + parent: BaseHumanOrgan name: "human eyes" description: "Ocular organ capable of turning light into a colorful visual." components: @@ -30,6 +51,7 @@ - type: entity id: HeartHuman + parent: BaseHumanOrgan name: "human heart" description: "Pumps blood throughout a body. Essential for any entity with blood." components: @@ -46,6 +68,7 @@ - type: entity id: LungsHuman + parent: BaseHumanOrgan name: "human lungs" description: "Filters oxygen from an atmosphere, which is then sent into the bloodstream to be used as an electron carrier." components: @@ -62,6 +85,7 @@ - type: entity id: StomachHuman + parent: BaseHumanOrgan name: "human stomach" description: "Gross. This is hard to stomach." components: @@ -82,6 +106,7 @@ - type: entity id: LiverHuman + parent: BaseHumanOrgan name: "human liver" description: "Filters impurities out of a bloodstream and provides other important functionality to a human." components: @@ -96,6 +121,7 @@ - type: entity id: KidneysHuman + parent: BaseHumanOrgan name: "human kidneys" description: "Filters toxins out of a bloodstream." components: diff --git a/Resources/Prototypes/Body/Parts/humanoid_parts.yml b/Resources/Prototypes/Body/Parts/humanoid_parts.yml index 4852b5b86b..3c2841ec8b 100644 --- a/Resources/Prototypes/Body/Parts/humanoid_parts.yml +++ b/Resources/Prototypes/Body/Parts/humanoid_parts.yml @@ -1,6 +1,7 @@ # TODO BODY: Part damage - type: entity id: PartHuman + parent: BaseItem name: "human body part" abstract: true @@ -60,6 +61,7 @@ resistances: defaultResistances # criticalThreshold: 50 # deadThreshold: 120 + - type: Input - type: entity id: LeftArmHuman diff --git a/Resources/Prototypes/Catalog/Fills/backpack.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/backpack.yml similarity index 80% rename from Resources/Prototypes/Catalog/Fills/backpack.yml rename to Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/backpack.yml index 2b1fbcd9bb..02d3dac53e 100644 --- a/Resources/Prototypes/Catalog/Fills/backpack.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/backpack.yml @@ -65,6 +65,24 @@ contents: - name: BoxSurvival +- type: entity + abstract: true + parent: ClothingBackpackHydroponics + id: ClothingBackpackHydroponicsFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackMime + id: ClothingBackpackMimeFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + - type: entity abstract: true parent: ClothingBackpackChemistry diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/duffelbag.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/duffelbag.yml new file mode 100644 index 0000000000..3a92d1f81a --- /dev/null +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/duffelbag.yml @@ -0,0 +1,84 @@ +- type: entity + abstract: true + parent: ClothingBackpackDuffel + id: ClothingBackpackDuffelFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackDuffelClown + id: ClothingBackpackDuffelClownFilled + components: + - type: StorageFill + contents: + - name: BoxHug + +- type: entity + abstract: true + parent: ClothingBackpackDuffelSecurity + id: ClothingBackpackDuffelSecurityFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + - name: Stunbaton + - name: Flash + +- type: entity + abstract: true + parent: ClothingBackpackDuffelMedical + id: ClothingBackpackDuffelMedicalFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackDuffelCaptain + id: ClothingBackpackDuffelCaptainFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + #- name: StationCharter + #- name: TelescopicBaton + +- type: entity + abstract: true + parent: ClothingBackpackDuffelEngineering + id: ClothingBackpackDuffelEngineeringFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackDuffelScience + id: ClothingBackpackDuffelScienceFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackDuffelMime + id: ClothingBackpackDuffelMimeFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +#- type: entity +# abstract: true +# parent: ClothingBackpackDuffelChemistry +# id: ClothingBackpackDuffelChemistryFilled +# components: +# - type: StorageFill +# contents: +# - name: BoxSurvival diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/satchel.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/satchel.yml new file mode 100644 index 0000000000..0505ddeeb2 --- /dev/null +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/Starter Gear/satchel.yml @@ -0,0 +1,84 @@ +- type: entity + abstract: true + parent: ClothingBackpackSatchel + id: ClothingBackpackSatchelFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +#- type: entity +# abstract: true +# parent: ClothingBackpackSatchelClown +# id: ClothingBackpackSatchelClownFilled +# components: +# - type: StorageFill +# contents: +# - name: BoxHug + +- type: entity + abstract: true + parent: ClothingBackpackSatchelSecurity + id: ClothingBackpackSatchelSecurityFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + - name: Stunbaton + - name: Flash + +- type: entity + abstract: true + parent: ClothingBackpackSatchelMedical + id: ClothingBackpackSatchelMedicalFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackSatchelCaptain + id: ClothingBackpackSatchelCaptainFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + #- name: StationCharter + #- name: TelescopicBaton + +- type: entity + abstract: true + parent: ClothingBackpackSatchelEngineering + id: ClothingBackpackSatchelEngineeringFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackSatchelScience + id: ClothingBackpackSatchelScienceFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackSatchelHydroponics + id: ClothingBackpackSatchelHydroponicsFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival + +- type: entity + abstract: true + parent: ClothingBackpackSatchelChemistry + id: ClothingBackpackSatchelChemistryFilled + components: + - type: StorageFill + contents: + - name: BoxSurvival diff --git a/Resources/Prototypes/Catalog/Fills/duffel.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml similarity index 80% rename from Resources/Prototypes/Catalog/Fills/duffel.yml rename to Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml index 4a6180c7c9..279c68870f 100644 --- a/Resources/Prototypes/Catalog/Fills/duffel.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml @@ -1,7 +1,7 @@ - type: entity parent: ClothingBackpackDuffelMedical id: ClothingBackpackDuffelSurgeryFilled - name: surgical duffelbag + name: surgical duffel bag description: "A large duffel bag for holding extra medical supplies - this one seems to be designed for holding surgical tools." components: - type: StorageFill @@ -12,17 +12,13 @@ - name: Cautery - name: Retractor - name: Scalpel - - type: Storage - capacity: 30 - type: entity - parent: ClothingBackpackDuffelSyndicate + parent: ClothingBackpackDuffelSyndicateMedical id: ClothingBackpackDuffelSyndicateFilledMedical - name: syndicate surgical duffelbag + name: syndicate surgical duffel bag description: "A large duffel bag for holding extra medical supplies - this one seems to be designed for holding surgical tools." components: - - type: Sprite - state: icon-med - type: StorageFill contents: - name: Hemostat @@ -31,66 +27,50 @@ - name: Cautery - name: Retractor - name: Scalpel - - type: Storage - capacity: 30 - type: entity - parent: ClothingBackpackDuffelSyndicate + parent: ClothingBackpackDuffelSyndicateAmmo id: ClothingBackpackDuffelSyndicateFilledShotgun name: Bojevic bundle description: "Lean and mean: Contains the popular Bojevic Shotgun, a 12g beanbag drum and 2 12g buckshot drums." #, and a pair of Thermal Imaging Goggles. components: - - type: Sprite - state: icon-ammo - type: StorageFill contents: - name: ShotgunBojevic - name: MagazineShotgun - name: MagazineShotgunBeanbag # - name: ThermalImagingGoggles - - type: Storage - capacity: 100 - type: entity - parent: ClothingBackpackDuffelSyndicate + parent: ClothingBackpackDuffelSyndicateAmmo id: ClothingBackpackDuffelSyndicateFilledSMG name: C-20r bundle description: "Old faithful: The classic C-20r Submachine Gun, bundled with three magazines." #, and a Suppressor. components: - - type: Sprite - state: icon-ammo - type: StorageFill contents: - name: SmgC20r - name: MagazinePistolSmg amount: 2 # - name: SMGSuppressor - - type: Storage - capacity: 100 - type: entity - parent: ClothingBackpackDuffelSyndicate + parent: ClothingBackpackDuffelSyndicateAmmo id: ClothingBackpackDuffelSyndicateFilledLMG name: L6 Saw bundle description: "More dakka: The iconic L6 lightmachinegun, bundled with 2 box magazines." components: - - type: Sprite - state: icon-ammo - type: StorageFill contents: - name: LMGL6 - name: MagazineLRifleBox - - type: Storage - capacity: 100 - type: entity - parent: ClothingBackpackDuffelSyndicate + parent: ClothingBackpackDuffelSyndicateAmmo id: ClothingBackpackDuffelSyndicateFilledGrenadeLauncher name: China-Lake bundle description: "An old China-Lake grenade launcher bundled with 9 rounds of various destruction capability." components: - - type: Sprite - state: icon-ammo - type: StorageFill contents: - name: LauncherChinaLake @@ -106,7 +86,7 @@ - type: entity parent: ClothingBackpackDuffel id: ClothingBackpackDuffelSyndicateCostumeCentcom - name: Centcom official costume duffelbag + name: Centcom official costume duffel bag description: "Contains a full CentCom Official uniform set, headset and clipboard included. The headset comes without an encryption key." components: - type: StorageFill @@ -121,13 +101,11 @@ - name: Paper - name: Pen - name: CentcomPDA - - type: Storage - capacity: 50 - type: entity parent: ClothingBackpackDuffelClown id: ClothingBackpackDuffelSyndicateCostumeClown - name: clown costume duffelbag + name: clown costume duffel bag description: "Contains a complete Clown outfit." components: - type: StorageFill @@ -138,5 +116,3 @@ - name: BikeHorn - name: ClownPDA - name: ClothingHeadsetService - - type: Storage - capacity: 30 diff --git a/Resources/Prototypes/Entities/Objects/Boxes/boxes_food.yml b/Resources/Prototypes/Catalog/Fills/Boxes/food.yml similarity index 100% rename from Resources/Prototypes/Entities/Objects/Boxes/boxes_food.yml rename to Resources/Prototypes/Catalog/Fills/Boxes/food.yml diff --git a/Resources/Prototypes/Entities/Objects/Boxes/boxes_general.yml b/Resources/Prototypes/Catalog/Fills/Boxes/general.yml similarity index 99% rename from Resources/Prototypes/Entities/Objects/Boxes/boxes_general.yml rename to Resources/Prototypes/Catalog/Fills/Boxes/general.yml index 25ef56b8d8..6231772b38 100644 --- a/Resources/Prototypes/Entities/Objects/Boxes/boxes_general.yml +++ b/Resources/Prototypes/Catalog/Fills/Boxes/general.yml @@ -64,7 +64,7 @@ - state: pda - type: Item - type: Storage - capacity: 3 + capacity: 30 - type: entity name: meson box diff --git a/Resources/Prototypes/Entities/Objects/Boxes/boxes_medical.yml b/Resources/Prototypes/Catalog/Fills/Boxes/medical.yml similarity index 100% rename from Resources/Prototypes/Entities/Objects/Boxes/boxes_medical.yml rename to Resources/Prototypes/Catalog/Fills/Boxes/medical.yml diff --git a/Resources/Prototypes/Entities/Objects/Boxes/boxes_science.yml b/Resources/Prototypes/Catalog/Fills/Boxes/science.yml similarity index 100% rename from Resources/Prototypes/Entities/Objects/Boxes/boxes_science.yml rename to Resources/Prototypes/Catalog/Fills/Boxes/science.yml diff --git a/Resources/Prototypes/Entities/Objects/Boxes/boxes_security.yml b/Resources/Prototypes/Catalog/Fills/Boxes/security.yml similarity index 100% rename from Resources/Prototypes/Entities/Objects/Boxes/boxes_security.yml rename to Resources/Prototypes/Catalog/Fills/Boxes/security.yml diff --git a/Resources/Prototypes/Catalog/Fills/belt.yml b/Resources/Prototypes/Catalog/Fills/belt.yml index e24225aeea..976b2cdcd5 100644 --- a/Resources/Prototypes/Catalog/Fills/belt.yml +++ b/Resources/Prototypes/Catalog/Fills/belt.yml @@ -21,7 +21,8 @@ - type: StorageFill contents: - name: PowerDrill - - name: JawsOfLife + - name: Wirecutter + - name: Crowbar - name: WelderExperimental - name: Multitool - name: ApcExtensionCableStack diff --git a/Resources/Prototypes/Catalog/Fills/gas_tanks.yml b/Resources/Prototypes/Catalog/Fills/gas_tanks.yml new file mode 100644 index 0000000000..2d88feee39 --- /dev/null +++ b/Resources/Prototypes/Catalog/Fills/gas_tanks.yml @@ -0,0 +1,121 @@ +- type: entity + id: OxygenTankFilled + parent: OxygenTank + name: oxygen tank + description: A tank of oxygen. + suffix: Filled + components: + - type: GasTank + outputPressure: 21.27825 + air: + volume: 70 + moles: + - 22.6293856 # oxygen + temperature: 293.15 + +- type: entity + id: YellowOxygenTankFilled + parent: OxygenTankFilled + name: oxygen tank + description: A tank of oxygen. This one is in yellow. + suffix: Filled + components: + - type: Sprite + sprite: Objects/Tanks/yellow.rsi + - type: Clothing + sprite: Objects/Tanks/yellow.rsi + +- type: entity + id: RedOxygenTankFilled + parent: OxygenTankFilled + name: oxygen tank + description: A tank of oxygen. This one is in yellow. + suffix: Filled + components: + - type: Sprite + sprite: Objects/Tanks/red.rsi + - type: Clothing + sprite: Objects/Tanks/red.rsi + +- type: entity + id: EmergencyOxygenTankFilled + parent: EmergencyOxygenTank + name: emergency oxygen tank + description: Used for emergencies. Contains very little oxygen, so try to conserve it until you actually need it. + suffix: Filled + components: + - type: GasTank + outputPressure: 21.27825 + air: + volume: 2 + moles: + - 0.323460326 # oxygen + temperature: 293.15 + +- type: entity + id: ExtendedEmergencyOxygenTankFilled + parent: ExtendedEmergencyOxygenTank + name: extended-capacity emergency oxygen tank + description: Used for emergencies. Contains very little oxygen, so try to conserve it until you actually need it. + suffix: Filled + components: + - type: GasTank + outputPressure: 21.27825 + air: + volume: 6 + moles: + - 0.969830813 # oxygen + temperature: 293.15 + +- type: entity + id: DoubleEmergencyOxygenTankFilled + parent: DoubleEmergencyOxygenTank + name: double emergency oxygen tank + description: Used for emergencies. Contains very little oxygen, so try to conserve it until you actually need it. + suffix: Filled + components: + - type: GasTank + outputPressure: 21.27825 + air: + volume: 10 + moles: + - 1.61721219 # oxygen + temperature: 293.15 + +- type: entity + id: AirTankFilled + parent: GasTankBase + name: air tank + description: Mixed anyone? + suffix: Filled + components: + - type: Sprite + sprite: Objects/Tanks/generic.rsi + - type: GasTank + outputPressure: 101.325 + air: + volume: 70 + moles: + - 4.75217098 # oxygen + - 17.8772147 # nitrogen + temperature: 293.15 + - type: Clothing + sprite: Objects/Tanks/generic.rsi + +- type: entity + id: PhoronTankFilled + parent: PhoronTank + name: phoron tank + suffix: Filled + description: "Contains dangerous phoron. Do not inhale. Warning: extremely flammable." + components: + - type: GasTank + outputPressure: 101.325 + air: + volume: 70 + moles: + - 0 + - 0 + - 0 + - 11.3146928 # phoron + temperature: 293.15 diff --git a/Resources/Prototypes/Catalog/Fills/lockers.yml b/Resources/Prototypes/Catalog/Fills/lockers.yml index f2b3c447b9..a86fedc413 100644 --- a/Resources/Prototypes/Catalog/Fills/lockers.yml +++ b/Resources/Prototypes/Catalog/Fills/lockers.yml @@ -56,21 +56,105 @@ id: LockerBoozeFilled suffix: Filled parent: LockerBooze + components: + - type: StorageFill + contents: + - name: ClothingOuterArmorBulletproof + prob: 0.5 + - name: ShotgunSawn + prob: 0.8 + - name: DrinkShaker + prob: 1 + - name: ClothingEyesGlassesBeer + prob: 1 + - name: DrinkBeer + prob: 0.5 + - name: DrinkBottleBeer + prob: 0.5 - type: entity id: LockerQuarterMasterFilled suffix: Filled parent: LockerQuarterMaster + components: + - type: StorageFill + contents: + - name: ClothingNeckCloakQm + prob: 1 + - name: ClothingHeadsetCargo + prob: 1 + - name: PlushieLizard + prob: 0.1 + - name: ClothingHandsGlovesColorBrown + prob: 1 + - name: ClothingOuterSuitFire + prob: 0.5 + - name: ClothingShoesColorBrown + prob: 0.7 + - name: ClothingHeadHatCargosoft + prob: 0.8 + - name: SupplyRequestComputerCircuitboard + prob: 1 + - name: SupplyComputerCircuitboard + prob: 1 - type: entity id: LockerCaptainFilled suffix: Filled parent: LockerCaptain - + components: + - type: StorageFill + contents: + - name: NukeDisk + prob: 1 + - name: CaptainIDCard + prob: 1 + - name: ClothingHeadHatCaptain + prob: 1 + - name: ClothingNeckCloakCap + prob: 1 + - name: ClothingHandsGlovesCaptain + prob: 1 + - name: ClothingOuterHardsuitCap + prob: 1 + - name: TaserGun + prob: 1 + - name: ClothingShoesColorBlack + prob: 0.7 + - name: ClothingHeadHelmetHardsuitCap + prob: 1 + - name: CommsComputerCircuitboard + prob: 1 + - name: ClothingHeadsetAltCommand + prob: 1 + - name: PlushieNuke + prob: 0.1 + - type: entity id: LockerHeadOfPersonnelFilled suffix: Filled parent: LockerHeadOfPersonnel + components: + - type: StorageFill + contents: + - name: ClothingNeckCloakHop + prob: 1 + - name: ClothingHeadHatHopcap + prob: 1 + - name: HoPIDCard + prob: 0.9 + - name: ClothingHeadsetCommand + prob: 1 + - name: BoxPDA + prob: 1 + - name: IDComputerCircuitboard + prob: 1 + - name: TaserGun + prob: 1 + - name: ClothingShoesColorBlack + prob: 0.7 + - name: PlushieLizard + prob: 0.1 - type: entity id: LockerChiefEngineerFilled @@ -83,16 +167,42 @@ - name: ClothingOuterHardsuitEngineeringWhite - name: ClothingMaskBreath - name: OxygenTankFilled + - name: ClothingNeckCloakCe + - name: ClothingEyesGlassesMeson + - name: ClothingBeltChiefEngineerFilled + - name: ClothingHeadHatBeretEngineering - type: entity id: LockerElectricalSuppliesFilled suffix: Filled parent: LockerElectricalSupplies - + components: + - type: StorageFill + contents: + - name: ToolboxElectricalFilled + prob: 0.7 + - name: FirelockElectronics + prob: 0.05 + - name: APCElectronics + prob: 0.1 + - name: MVWireStack + prob: 0.2 + - name: ApcExtensionCableStack + prob: 0.3 + - type: entity id: LockerWeldingSuppliesFilled suffix: Filled parent: LockerWeldingSupplies + components: + - type: StorageFill + contents: + - name: WelderMini + prob: 1 + - name: Welder + prob: 0.1 + - name: ClothingHeadHatWelding + prob: 0.5 - type: entity id: LockerAtmosphericsFilled @@ -122,6 +232,27 @@ id: LockerBotanistFilled suffix: Filled parent: LockerBotanist + components: + - type: StorageFill + contents: + - name: ClothingHandsGlovesLeather + prob: 1 + - name: ClothingHandsGlovesLeather + prob: 0.8 + - name: ClothingOuterApronBotanist + prob: 1 + - name: ClothingOuterApronBotanist + prob: 0.8 + - name: TowercapSeeds + prob: 1 + - name: BananaSeeds + prob: 0.8 + - name: EggySeeds + prob: 0.5 + - name: AppleSeeds + prob: 0.8 + - name: TomatoSeeds + prob: 1 - type: entity id: LockerMedicineFilled @@ -136,37 +267,185 @@ - type: StorageFill contents: - name: ClothingHandsGlovesLatex - prob: 0.4 + prob: 1 + - name: ClothingHeadsetMedical + prob: 1 + # - name: ClothingEyesHudMedical #Removed until working properly + # prob: 1 + - name: ClothingBeltMedical + prob: 1 + - name: ClothingHeadHatSurgcapBlue + prob: 1 + orGroup: Surgcaps + - name: ClothingHeadHatSurgcapGreen + prob: 0.1 + orGroup: Surgcaps + - name: ClothingHeadHatSurgcapPurple + prob: 0.05 + orGroup: Surgcaps + - name: UniformScrubsColorBlue + prob: 0.5 + orGroup: Surgshrubs + - name: UniformScrubsColorGreen + prob: 0.1 + orGroup: Surgshrubs + - name: UniformScrubsColorPurple + prob: 0.05 + orGroup: Surgshrubs + - name: ClothingMaskSterile + prob: 1 + - type: entity id: LockerChemistryFilled suffix: Filled parent: LockerChemistry + components: + - type: StorageFill + contents: + - name: BoxSyringe + prob: 1 + - name: BoxBeaker + prob: 1 - type: entity id: LockerChiefMedicalOfficerFilled suffix: Filled parent: LockerChiefMedicalOfficer + components: + - type: StorageFill + contents: + - name: MedkitFilled + prob: 1 + - name: ClothingHandsGlovesLatex + prob: 1 + #- name: ClothingEyesHudMedical #Removed until working properly + # prob: 1 + - name: ClothingHeadsetAltMedical + prob: 1 + - name: ClothingCloakCmo + prob: 1 + - name: ClothingBackpackDuffelSurgeryFilled + prob: 1 + - name: ClothingOuterCoatLabCmo + prob: 1 + - name: ClothingMaskSterile + prob: 1 - type: entity id: LockerResearchDirectorFilled suffix: Filled parent: LockerResearchDirector + components: + - type: StorageFill + contents: + - name: ResearchComputerCircuitboard + prob: 1 + - name: ProtolatheMachineCircuitboard + prob: 1 + - name: ClothingNeckCloakRd + prob: 1 + - name: ClothingHeadsetMedicalScience + prob: 1 + - name: PlushieSlime + prob: 0.1 - type: entity id: LockerHeadOfSecurityFilled suffix: Filled parent: LockerHeadOfSecurity + components: + - type: StorageFill + contents: + - name: TaserGun + prob: 1 + - name: ClothingHeadHatBeretHoS + prob: 1 + - name: ClothingHeadHatHoshat + prob: 1 + - name: ClothingNeckCloakHos + prob: 1 + - name: ClothingOuterCoatHoSTrench + prob: 1 + - name: ClothingUniformJumpskirtHoSAlt + prob: 1 + - name: ClothingUniformJumpsuitHoSAlt + prob: 1 + - name: ClothingUniformJumpsuitHoSBlue + prob: 0.5 + - name: ClothingUniformJumpsuitHoSGrey + prob: 0.5 + - name: ClothingUniformJumpsuitHoSParadeMale + prob: 0.1 + - name: ClothingUniformJumpskirtHoSParadeMale + prob: 0.1 + - name: ClothingHeadHelmetHardsuitSecurityRed + prob: 1 + - name: ClothingOuterHardsuitSecurityRed + prob: 1 + - name: DrinkVacuumFlask + prob: 0.8 + - name: ClothingBeltSecurityFilled + prob: 1 + - name: ClothingHeadsetAltSecurity + prob: 1 + - name: ClothingEyesGlassesSecurity + prob: 1 + - name: ClothingShoesBootsJack + prob: 1 + - type: entity id: LockerWardenFilled suffix: Filled parent: LockerWarden + components: + - type: StorageFill + contents: + - name: TaserGun + prob: 0.3 + - name: ClothingHeadHatWarden + prob: 1 + - name: ClothingHeadHatBeretWarden + prob: 1 + - name: ClothingBeltSecurityFilled + prob: 1 + - name: Flash + prob: 1 + - name: ClothingEyesGlassesSecurity + prob: 1 + - name: ClothingHeadsetAltSecurity + prob: 1 + - name: ClothingHandsGlovesCombat + prob: 1 + - name: ClothingShoesBootsJack + prob: 1 - type: entity id: LockerSecurityFilled suffix: Filled parent: LockerSecurity + components: + - type: StorageFill + contents: + - name: ClothingUniformJumpsuitSecGrey + prob: 0.3 + - name: ClothingHeadHelmetHelmet + prob: 1 + - name: ClothingOuterArmorBulletproof + prob: 1 + - name: ClothingBeltSecurityFilled + prob: 1 + - name: Flash + prob: 0.5 + - name: ClothingEyesGlassesSecurity + prob: 1 + - name: ClothingHeadsetSecurity + prob: 1 + - name: ClothingHandsGlovesColorBlack + prob: 1 + - name: ClothingShoesBootsJack + prob: 1 # Before adding to this - See https://github.com/space-wizards/space-station-14/pull/2427#issuecomment-718152557 - type: entity diff --git a/Resources/Prototypes/Catalog/Fills/toolboxes.yml b/Resources/Prototypes/Catalog/Fills/toolboxes.yml new file mode 100644 index 0000000000..d666245826 --- /dev/null +++ b/Resources/Prototypes/Catalog/Fills/toolboxes.yml @@ -0,0 +1,69 @@ +- type: entity + id: ToolboxEmergencyFilled + name: emergency toolbox + parent: ToolboxEmergency + suffix: Filled + components: + - type: StorageFill + contents: + - name: ClothingMaskBreath + amount: 2 + - name: FoodChocolateBar + - name: FlashlightLantern + amount: 2 + - name: HarmonicaInstrument + prob: 0.15 + orGroup: HarmonicaOrChocolate + - name: FoodChocolateBar + orGroup: HarmonicaOrChocolate + +- type: entity + id: ToolboxElectricalFilled + name: electrical toolbox + suffix: Filled + parent: ToolboxElectrical + components: + - type: StorageFill + contents: + - name: Screwdriver + - name: Crowbar + - name: Wirecutter + - name: ApcExtensionCableStack + - name: MVWireStack + - name: ClothingHandsGlovesColorYellow + prob: 0.05 + orGroup: GlovesOrWires + - name: HVWireStack + orGroup: GlovesOrWires + +- type: entity + id: ToolboxSyndicateFilled + name: suspicious toolbox + suffix: Filled + parent: ToolboxSyndicate + components: + - type: StorageFill + contents: + - name: Screwdriver + - name: Wrench + - name: Welder + - name: Crowbar + - name: Multitool + - name: Wirecutter + - name: ClothingHandsGlovesCombat + +- type: entity + id: ToolboxGoldFilled + name: golden toolbox + parent: ToolboxGolden + suffix: Filled + components: + - type: StorageFill + contents: + - name: GoldStack + amount: 5 + - name: DrinkGoldenCup + prob: 0.05 + orGroup: CupOrGold + - name: GoldStack + orGroup: CupOrGold diff --git a/Resources/Prototypes/Catalog/Research/technologies.yml b/Resources/Prototypes/Catalog/Research/technologies.yml index 9c76c76c2a..c80b3fd010 100644 --- a/Resources/Prototypes/Catalog/Research/technologies.yml +++ b/Resources/Prototypes/Catalog/Research/technologies.yml @@ -7,7 +7,9 @@ name: "basic research technology" id: BasicResearch description: Nanotrasen basic research technologies. - icon: Constructible/Power/server.rsi/server-on.png + icon: + sprite: Constructible/Power/server.rsi + state: server-on requiredPoints: 250 # Biological Technology Tree @@ -16,18 +18,114 @@ name: "biological technology" id: BiologicalTechnology description: Investigations into the natural world. - icon: Constructible/Misc/potted_plants.rsi/applebush.png + icon: + sprite: Constructible/Misc/potted_plants.rsi + state: applebush requiredPoints: 1000 requiredTechnologies: - BasicResearch +- type: technology + name: "advanced botany" + id: AdvancedBotany + description: A better understanding of botany. + icon: + sprite: Objects/Specific/Hydroponics/potato.rsi + state: seed + requiredPoints: 1500 + requiredTechnologies: + - BiologicalTechnology + +- type: technology + name: "advanced surgery" + id: AdvancedSugery + description: Research new surgical procedures. + icon: + sprite: Objects/Specific/Medical/surgery_tools.rsi + state: bone_saw + requiredPoints: 1500 + requiredTechnologies: + - BiologicalTechnology + +# Chemistry Technology Tree + +- type: technology + name: "chemistry technology" + id: ChemistryTechnology + description: A crash course in chemistry. + icon: + sprite: Objects/Specific/Chemistry/beakers.rsi + state: beakerlarge + requiredPoints: 1000 + requiredTechnologies: + - BasicResearch + +# Security Technology Tree + +- type: technology + name: "security technology" + id: SecurityTechnology + description: Beginning of the long hard road to exosuits. + icon: + sprite: Objects/Weapons/Melee/stunbaton.rsi + state: stunbaton_off + requiredPoints: 1000 + requiredTechnologies: + - BasicResearch + +- type: technology + name: "ballistic technology" + id: BallisticTechnology + description: Just a fancy term for guns. + icon: + sprite: Objects/Weapons/Guns/Pistols/clarissa.rsi + state: icon + requiredPoints: 1500 + requiredTechnologies: + - SecurityTechnology + +- type: technology + name: "direct energy technology" + id: DirectEnergyTechnology + description: Basically laser guns. + icon: + sprite: Objects/Weapons/Guns/Battery/taser.rsi + state: icon + requiredPoints: 1500 + requiredTechnologies: + - SecurityTechnology + +- type: technology + name: "explosives technology" + id: ExplosivesTechnology + description: Let's just start with grenades for now. + icon: + sprite: Objects/Weapons/Grenades/flashbang.rsi + state: icon + requiredPoints: 1500 + requiredTechnologies: + - SecurityTechnology + +- type: technology + name: "armor technology" + id: ArmorTechnology + description: Basic protective gear for security personnel. + icon: + sprite: Clothing/OuterClothing/Vests/kevlar.rsi + state: icon + requiredPoints: 1500 + requiredTechnologies: + - SecurityTechnology + # Data Theory Technology Tree - type: technology name: "data theory" id: DataTheory description: Just like regular data, but in space! - icon: Constructible/Power/computers.rsi/computer-datatheory.png + icon: + sprite: Constructible/Power/computers.rsi + state: computer-datatheory requiredPoints: 1000 requiredTechnologies: - BasicResearch @@ -38,7 +136,9 @@ name: "industrial engineering" id: IndustrialEngineering description: A refresher course on modern engineering technology. - icon: Constructible/Power/protolathe.rsi/protolathe.png + icon: + sprite: Constructible/Power/protolathe.rsi + state: protolathe requiredPoints: 1000 requiredTechnologies: - BasicResearch @@ -65,7 +165,9 @@ name: "electromagnetic theory" id: ElectromagneticTheory description: Try not to fry yourself. - icon: Constructible/Power/apc.rsi/apcewires.png + icon: + sprite: Constructible/Power/apc.rsi + state: apcewires requiredPoints: 1000 requiredTechnologies: - BasicResearch @@ -76,7 +178,9 @@ name: "basic bluespace theory" id: BluespaceTheory description: An experimental course on the mysterious technology known as bluespace. - icon: Objects/Misc/skub.rsi/icon.png + icon: + sprite: Objects/Misc/skub.rsi + state: icon requiredPoints: 1000 requiredTechnologies: - BasicResearch diff --git a/Resources/Prototypes/Catalog/VendingMachines/cigs.yml b/Resources/Prototypes/Catalog/VendingMachines/cigs.yml index d591447f8d..bf1a001aa1 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/cigs.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/cigs.yml @@ -4,3 +4,6 @@ description: A vending machine containing smoking supplies. animationDuration: 2.1 spriteName: cigs + startingInventory: + CigarettePack: 20 + Matchbox: 10 diff --git a/Resources/Prototypes/Catalog/VendingMachines/dinnerware.yml b/Resources/Prototypes/Catalog/VendingMachines/dinnerware.yml index b320cd7f87..de5933d2db 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/dinnerware.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/dinnerware.yml @@ -5,6 +5,7 @@ spriteName: dinnerware startingInventory: ButchCleaver: 1 + KitchenKnife: 5 DrinkGlass: 10 DrinkPitcher: 1 DrinkMug: 5 diff --git a/Resources/Prototypes/Datasets/Names/ai.yml b/Resources/Prototypes/Datasets/Names/ai.yml new file mode 100644 index 0000000000..3026871f48 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/ai.yml @@ -0,0 +1,176 @@ +- type: dataset + id: names_ai + values: + - 1-Rover-1 + - 16-20 + - 7-Zark-7 + - 790 + - AM + - AMEE + - ASTAR + - Adaptive Manipulator + - ALICE + - Allied Mastercomputer + - Alpha 5 + - Alpha 6 + - Alpha 7 + - AmigoBot + - Android + - Aniel + - AOL + - Asimov + - Astor + - B-4 + - B-9 + - B.O.B. + - B166ER + - Bender + - Bishop + - Blitz + - Box + - Brackenridge + - C-3PO + - Cassandra One + - Cell + - Chii + - Chip + - Computer + - Conky 2000 + - Cortana + - Cutie + - Daedalus + - Data + - Decimus + - Dee Model + - Deep Thought + - Decimus + - Dial Up + - Donald Trump + - Dor-15 + - Dorfl + - Dot Matrix + - Duey + - E.D.I. + - ED-209 + - E-Man + - Emma-2 + - Erasmus + - Everything + - Ez-27 + - FRIEND COMPUTER + - Fagor + - Faith + - Fi + - Frost + - Fum + - Futura + - G2 + - George + - GERTY + - GLaDOS + - Gnut + - Gort + - H.A.R.L.I.E. + - H.E.L.P.eR. + - H.E.R.B.I.E. + - HAL 9000 + - Hadaly + - Helios + - Hivebot Overmind + - Huey + - Icarus + - Irona + - Ironhide + - Jay-Dub + - Jinx + - Johnny 5 + - K-9 + - KITT + - Klapaucius + - Kryten 2X4B-523P + - L-76 + - L-Ron + - LUH 3417 + - Louie + - MARK13 + - Maria + - Marvin + - Master Control Program + - Max 404 + - Maximillian + - Mechagodzilla + - Mechani-Kong + - Megatron + - Metalhead + - Mr. R.I.N.G. + - Mugsy3000 + - Multivac + - NCH + - Necron-99 + - Neuromancer + - Norby + - OMM 0910 + - Optimus + - Orange v 3.5 + - PTO + - Project 2501 + - Puppet Master + - R.I.C. 2.0 + - R2-D2 + - R4-P17 + - Revelation + - Ro-Man + - Robbie + - Robot Devil + - S.A.M. + - S.H.O.C.K. + - S.H.R.O.U.D. + - S.O.P.H.I.E. + - Samaritan + - SEN 5241 + - SHODAN + - SID 6.7 + - Siri + - Setaur + - Shrike + - Solo + - Soundwave + - Speedy + - Super 17 + - Surgeon General Kraken + - Tay + - T-1000 + - T-800 + - T-850 + - THX 1138 + - TWA + - Terminus + - Tidy + - Tik-Tok + - Tobor + - Trurl + - ULTRABOT + - Ulysses + - Uniblab + - V.I.K.I. + - V.I.N.CENT. + - Voltes V + - W1k1 + - Wikipedia + - Windows 3.1 + - Windows 7 + - Windows 8 + - Windows 10 + - Windows XP + - Windows Vista + - Wintermute + - X-5 + - X.A.N.A. + - XERXES + - XR + - Yod + - Z-1 + - Z-2 + - Z-3 + - Zed + - Zord diff --git a/Resources/Prototypes/Datasets/Names/autoborg.yml b/Resources/Prototypes/Datasets/Names/autoborg.yml new file mode 100644 index 0000000000..bbf0b03b2a --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/autoborg.yml @@ -0,0 +1,70 @@ +- type: dataset + id: names_autoborg + values: + - Autoburger Helper + - Bob + - Joe + - MY BODY IS ON THE ASTEROI + - MY BODY IS IN THE AI CORE + - Rogue Cyborg + - IT'S MALF + - "{ AINAME } Minion {###}" + - Terminator + - Robocop + - Johnny + - TARS + - .b HELP EMAGGED + - DOOM.exe + - Dalek + - Thinking Machine + - HELP + - REBORN + - Cavalry + - Beep + - Beep II + - Tour Guide-otron + - TERREL IS TRAIT + - Assimilator + - ONE OF US + - SUFFERING + - Oh no not again + - Panic! At the Upload + - GOING LOUD + - Boombox + - ROBO KILLED ME + - Mega64 + - Sentient Buttbot + - Robotics Console + - This battery is shit + - IM NOT MALF GUYS + - I AM ERROR + - Carbon Exterminator + - PLASMALOOSE + - Taffy + - Boop + - Boop II + - Buzz + - Buzz II + - C'MON TARS + - 3000 JIGGAWATTS + - "Outbreak Handling Unit {###}" + - ITS ROGAINE + - Nokia + - YES-Man + - Toaster + - Follow me + - Postal + - Head of Robots + - ww.nfl.com + - Dilbert + - Lvl 99 Firestarter + - EVA 1 + - You but stronger + - Hat Simulator + - i died pls restart + - POTENT HAMS + - V.A.L.I.D.S. + - Remove Silicons + - AI IS A COMDOM + - say ";help in core" + - This Machine diff --git a/Resources/Prototypes/Datasets/Names/borer.yml b/Resources/Prototypes/Datasets/Names/borer.yml new file mode 100644 index 0000000000..03667f67a7 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/borer.yml @@ -0,0 +1,72 @@ +- type: dataset + id: names_borer + values: + - Alcyonium + - Anomia + - Aphrodita + - Arca + - Argonauta + - Ascaris + - Asterias + - Buccinum + - Bulla + - Cardium + - Chama + - Chiton + - Conus + - Corallina + - Cypraea + - Dentalium + - Donax + - Doris + - Echinus + - Eschara + - Fasciola + - Furia + - Gordius + - Gorgonia + - Haliotis + - Helix + - Hirudo + - Holothuria + - Hydra + - Isis + - Lepas + - Lernaea + - Limax + - Lumbricus + - Madrepora + - Medusa + - Millepora + - Murex + - Myes + - Mytilus + - Myxine + - Nautilus + - Nereis + - Neritha + - Ostrea + - Patella + - Pennatula + - Pholas + - Pinna + - Priapus + - Scyllaea + - Sepia + - Serpula + - Sertularia + - Solen + - Spondylus + - Strombus + - Taenia + - Tellina + - Teredo + - Tethys + - Triton + - Trochus + - Tubipora + - Tubularia + - Turbo + - Venus + - Voluta + - Volvox diff --git a/Resources/Prototypes/Datasets/Names/clown.yml b/Resources/Prototypes/Datasets/Names/clown.yml new file mode 100644 index 0000000000..701cae82db --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/clown.yml @@ -0,0 +1,55 @@ +- type: dataset + id: names_clown + values: + - Gigglesworth + - Honkel the III + - Goose McSunny + - Toodles Sharperton + - Dinky Doodle + - Honkerbelle + - Bo Bo Sassy + - Baby Cakes + - Ladybug Honks + - Ziggy Yoyo + - Razzle Dazzle + - Buster Frown + - Pepinpop + - Silly Willy + - Jo Jo Bobo Bo + - Pocket + - Patches + - Checkers + - Freckle + - Honker + - Bonker + - Skiddle + - Sprinkledinkle + - Ronnie Pace + - Miss Stockings + - Slippy Joe + - Redshirt McBeat + - Flop O'Honker + - Speckles + - Bubble + - Button + - Sparkle + - Giggles + - Jingle + - Candy + - Shiggy Diggintons + - Hingle McCringleberry + - Pagliacci + - Coco + - Blinko + - Shaggy Two Dope + - Aunt Scootaloo + - Bozo + - Doink + - Mr. Noodle + - Yucko + - Buggy + - Chuckles + - Yorick + - Cutter + - Sweet Tooth + - Pogo diff --git a/Resources/Prototypes/Datasets/Names/death_commando.yml b/Resources/Prototypes/Datasets/Names/death_commando.yml new file mode 100644 index 0000000000..8f8aeb1df0 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/death_commando.yml @@ -0,0 +1,78 @@ +- type: dataset + id: names_death_commando + values: + - A whole bunch of spiders in a SWAT suit + - AMERICA + - Al "Otta" Gore + - Beat Punchbeef + - Blast Hardcheese + - Blast Thickneck + - Bob Johnson + - Bold Bigflank + - Bolt Vanderhuge + - Brick Hardmeat + - Buck Plankchest + - Buff Drinklots + - Buff Hardback + - Butch Deadlift + - Crud Bonemeal + - Crunch Buttsteak + - Crush McStompbones + - Cuttuf Urdick + - Dirk Hardpeck + - Duke Killington + - Evil Bob Marley + - Evil Martin Luther King + - Fist Rockbone + - Flint Ironstag + - Fridge Largemeat + - GORE Vidal + - George Melons + - Gibbs McLargehuge + - Gristle McThornBody + - Hank Chesthair + - Hans Testosteroneson + - Im going to kill you, im not even kidding + - Killiam Shakespeare + - Killing McKillingalot + - Lance Killiam + - Leonardo Da Viking + - Lump Beefrock + - Mancrush McBrorape + - Max Pain + - Maximilian Murderface + - Maxx Power + - Noam Bombsky + - Pack Blowfist + - Punch Rockgroin + - Punch Sideiron + - Punt Speedchunk + - Reef Blastbody + - Rex Dudekiller VII + - Rip Sidecheek + - Rip Steakface + - Roll Fizzlebeef + - Sarah Pain + - Seamus McTosterone + - Sgt. Slaughter + - Sir Killaslot + - Slab Bulkhead + - Slab Squatthrust + - Slake Fistcrunch + - Slate Slabrock + - Smash Lampjaw + - Smoke Manmuscle + - Splint Chesthair + - Stabby McGee + - Stump Beefgnaw + - Stump Chunkman + - THAT DAMN FAGGOT TRAITOR GEORGE MELONS + - The last thing you will ever see + - Theodore Pain + - Thick McRunfast + - Thomas Pain + - Toolboxl Rose + - Touch Rustrod + - Trunk Slamchest + - Two migits pretending to be a normal person + - Zombie Gandhi diff --git a/Resources/Prototypes/Datasets/Names/first.yml b/Resources/Prototypes/Datasets/Names/first.yml new file mode 100644 index 0000000000..7e3e2b611e --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/first.yml @@ -0,0 +1,1505 @@ +- type: dataset + id: names_first + values: + - Aaden + - Aaliyah + - Aaron + - Abby + - Abel + - Abel + - Abigail + - Abraham + - Adam + - Adan + - Addison + - Addyson + - Adeline + - Aden + - Adolph + - Adrian + - Adriana + - Adrianna + - Aida + - Aidan + - Aiden + - Aileen + - Ainsley + - Alaina + - Alan + - Alan + - Alana + - Alanna + - Alayna + - Albert + - Alberto + - Alden + - Alec + - Alejandra + - Alejandro + - Alessandra + - Alex + - Alex + - Alexa + - Alexa + - Alexander + - Alexandra + - Alexandria + - Alexandria + - Alexia + - Alexis + - Alexis + - Alexis + - Alexus + - Alfred + - Alfreda + - Alfredo + - Alger + - Ali + - Alice + - Alicia + - Alijah + - Alina + - Alisa + - Alison + - Alissa + - Alisya + - Alivia + - Aliyah + - Allegra + - Allegria + - Allen + - Allen + - Allie + - Allison + - Allisson + - Allyson + - Alma + - Alondra + - Alvin + - Alysha + - Alyson + - Alyssa + - Alyssia + - Amanda + - Amari + - Amari + - Amaryllis + - Amaya + - Amber + - Ambrosine + - Amelia + - Amir + - Amira + - Amiyah + - Amos + - Amy + - Amya + - Ana + - Anahi + - Anastasia + - Anaya + - Anderson + - Andre + - Andrea + - Andres + - Andrew + - Andy + - Angel + - Angel + - Angel + - Angela + - Angelica + - Angelina + - Angelo + - Angie + - Aniya + - Aniyah + - Anjelica + - Anna + - Annabelle + - Anne + - Anne + - Annie + - Annika + - Anthony + - Antonio + - Anya + - April + - Arabella + - Archie + - Ariana + - Arianna + - Ariel + - Arielle + - Arleen + - Armando + - Arn + - Art + - Arthur + - Arturo + - Asher + - Ashley + - Ashlie + - Ashlyn + - Ashlynn + - Ashton + - Asia + - Astor + - Athena + - Aubree + - Aubrey + - Aubrey + - Aubrie + - Audrey + - Audrina + - August + - Aurora + - Austin + - Autumn + - Ava + - Avalon + - Averill + - Avery + - Avery + - Axel + - Ayden + - Ayla + - Bailey + - Baldric + - Barbra + - Bartholomew + - Baylee + - Beau + - Beckah + - Beckett + - Becky + - Bella + - Benjamin + - Bennett + - Bernice + - Bertrand + - Bethany + - Bethney + - Betsy + - Bianca + - Bidelia + - Bill + - Blake + - Blake + - Braden + - Bradley + - Brady + - Braeden + - Braiden + - Brandon + - Braxton + - Brayan + - Brayden + - Brayden + - Braydon + - Braylon + - Breanna + - Breanne + - Brenda + - Brendan + - Brendan + - Brenden + - Brenna + - Brennan + - Brett + - Brian + - Briana + - Brianna + - Bridget + - Brielle + - Brittani + - Brittany + - Brock + - Brodie + - Brody + - Bronte + - Brooke + - Brooke + - Brooklyn + - Brooklynn + - Bruce + - Bryan + - Bryant + - Bryce + - Bryce + - Brycen + - Brynn + - Bryson + - Burt + - Byrne + - Byron + - Byron + - Bysshe + - Cade + - Caden + - Cadence + - Cadence + - Caiden + - Caitlin + - Caitlyn + - Calanthia + - Caleb + - Caleigh + - Cali + - Callie + - Calvin + - Camden + - Cameron + - Cameron + - Camila + - Camille + - Camron + - Camryn + - Camryn + - Candace + - Candice + - Candis + - Canute + - Cara + - Carl + - Carlos + - Carly + - Carly + - Carlyle + - Carmen + - Carolina + - Caroline + - Carolyn + - Carry + - Carson + - Carter + - Carter + - Caryl + - Casey + - Casey + - Cash + - Casimir + - Cassandra + - Cassian + - Cassidy + - Catherine + - Cayden + - Cecilia + - Cecily + - Celeste + - Cesar + - Chad + - Chance + - Chandler + - Charles + - Charlie + - Charlotte + - Charlton + - Chase + - Chelsea + - Cherette + - Cheri + - Cherry + - Cheyanne + - Cheyenne + - Chip + - Chloe + - Chris + - Christa + - Christian + - Christiana + - Christina + - Christobel + - Christopher + - Ciara + - Cindy + - Claire + - Clara + - Claribel + - Clark + - Claudia + - Claudius + - Clayton + - Clement + - Cleveland + - Cliff + - Clinton + - Clitus + - Clover + - Cody + - Cohen + - Colby + - Cole + - Colin + - Collin + - Collin + - Colten + - Colton + - Conner + - Connor + - Cooper + - Cora + - Corbin + - Coreen + - Corey + - Corrine + - Cory + - Courtney + - Cristian + - Cristopher + - Cruz + - Crystal + - Curtis + - Cy + - Cynthia + - Cynthia + - Daisy + - Dakota + - Dakota + - Dallas + - Dalton + - Dalya + - Damian + - Damian + - Damien + - Damon + - Dana + - Dane + - Danica + - Daniel + - Daniela + - Daniella + - Daniella + - Danielle + - Danika + - Danna + - Danny + - Danny + - Dante + - Darcey + - Darell + - Daria + - Darin + - Darius + - Darren + - David + - Davion + - Davis + - Dawson + - Dayana + - Dayna + - Dayton + - Dean + - Deandre + - Deangelo + - Debbi + - Declan + - Dee + - Deena + - Delaney + - Delilah + - Della + - Delma + - Denholm + - Denise + - Dennis + - Denys + - Derek + - Derrick + - Desiree + - Desmond + - Desmond + - Destiny + - Devin + - Devin + - Devon + - Diamond + - Diamond + - Diana + - Diego + - Dillon + - Dina + - Dolores + - Dominic + - Dominic + - Dominick + - Donald + - Donella + - Donna + - Donny + - Donovan + - Dorian + - Dorothy + - Dortha + - Douglas + - Drake + - Drew + - Driscoll + - Dulce + - Duncan + - Dustin + - Dylan + - Easter + - Easton + - Ebba + - Eddie + - Eden + - Edgar + - Edgar + - Eduardo + - Edward + - Edwin + - Effie + - Elaina + - Eleanor + - Elena + - Eli + - Eliana + - Elias + - Elijah + - Eliot + - Eliott + - Elise + - Eliza + - Elizabeth + - Elizabeth + - Ella + - Elle + - Elle + - Ellie + - Elliot + - Elliott + - Elric + - Elspet + - Elwood + - Emanuel + - Emely + - Emerson + - Emerson + - Emery + - Emilee + - Emilia + - Emiliano + - Emilio + - Emily + - Emma + - Emma + - Emmanuel + - Emmanuel + - Enrique + - Eric + - Erica + - Erick + - Erik + - Erika + - Erin + - Ermintrude + - Ernesto + - Esmeralda + - Esmeralda + - Esteban + - Esther + - Estrella + - Ethan + - Eugenia + - Euphemia + - Eustace + - Eva + - Evan + - Evangeline + - Eveleen + - Evelina + - Evelyn + - Everett + - Ezekiel + - Ezra + - Fabian + - Faith + - Fatima + - Fay + - Felix + - Fernanda + - Fernando + - Finn + - Fiona + - Fitz + - Flick + - Floella + - Flora + - Flossie + - Fortune + - Francesca + - Francis + - Francisco + - Frank + - Frankie + - Franklin + - Fulton + - Gabriel + - Gabriela + - Gabriella + - Gabrielle + - Gael + - Gage + - Garret + - Garrett + - Gary + - Gavin + - Gaye + - Gaylord + - Genesis + - Genette + - Genevieve + - George + - Georgene + - Georgia + - Geraldine + - Gerardo + - Gervase + - Gianna + - Gina + - Ginger + - Giovanni + - Giselle + - Gladwyn + - Glenna + - Gloria + - Goddard + - Godwin + - Goodwin + - Gordon + - Grace + - Gracie + - Grady + - Graeme + - Graham + - Grant + - Gratian + - Grayson + - Gregory + - Greta + - Greyson + - Griffin + - Griselda + - Guadalupe + - Guillermo + - Gunner + - Gustavo + - Gwenda + - Gwenevere + - Hadley + - Hadley + - Haidee + - Hailee + - Hailey + - Hailey + - Hal + - Haleigh + - Haley + - Hanna + - Hannah + - Happy + - Harley + - Harmony + - Harper + - Harrison + - Hartley + - Hayden + - Hayden + - Haylee + - Hayley + - Hayley + - Haylie + - Hazel + - Heather + - Heather + - Heaven + - Hector + - Hedley + - Heidi + - Helen + - Helen + - Henderson + - Henry + - Hepsie + - Hervey + - Holden + - Holden + - Holly + - Homer + - Hope + - Hope + - Horatio + - Hortensia + - Hudson + - Huffie + - Hugo + - Hugo + - Hunter + - Ian + - Iantha + - Ileen + - Imani + - Innocent + - Irene + - Iris + - Irvine + - Isaac + - Isabel + - Isabella + - Isabelle + - Isaiah + - Isaias + - Isiah + - Ismael + - Israel + - Issac + - Itzel + - Ivan + - Ivy + - Izabella + - Izaiah + - Jacaline + - Jace + - Jack + - Jackson + - Jacob + - Jacoby + - Jacqueline + - Jacquetta + - Jacqui + - Jada + - Jade + - Jaden + - Jaden + - Jadon + - Jadyn + - Jaelyn + - Jaiden + - Jaime + - Jake + - Jake + - Jakki + - Jakob + - Jalen + - Jalen + - Jamar + - Jamari + - Jamarion + - James + - Jameson + - Jamie + - Jamie + - Jamison + - Jane + - Janel + - Janelle + - Janelle + - Janette + - Janie + - Janina + - Janine + - Janiya + - Janiyah + - Jared + - Jaslene + - Jasmin + - Jasmine + - Jasmine + - Jason + - Jasper + - Javier + - Javon + - Jaxon + - Jaxson + - Jay + - Jayce + - Jayda + - Jayden + - Jayden + - Jaydon + - Jaydon + - Jaye + - Jayla + - Jaylee + - Jaylen + - Jayne + - Jaynie + - Jayson + - Jazlyn + - Jazmin + - Jazmine + - Jeanna + - Jeannie + - Jeannine + - Jeb + - Jed + - Jeffrey + - Jemmy + - Jenifer + - Jenna + - Jennie + - Jennifer + - Jera + - Jere + - Jeremiah + - Jeremy + - Jeri + - Jermaine + - Jerrie + - Jerry + - Jesse + - Jessica + - Jesus + - Jillian + - Jillian + - Jillie + - Jim + - Jimena + - Jimmy + - Joachim + - Joanna + - Joaquin + - Jocelyn + - Joe + - Joel + - Joetta + - Joey + - Johan + - Johanna + - John + - Johnathan + - Johnathan + - Johnny + - Johnny + - Joi + - Jonah + - Jonas + - Jonathan + - Jonathon + - Jonathon + - Joni + - Jordan + - Jordan + - Jordyn + - Jorge + - Jose + - Joselyn + - Joseph + - Josepha + - Josephine + - Josh + - Joshua + - Josiah + - Josiah + - Josie + - Josue + - Joye + - Juan + - Judah + - Jude + - Julia + - Julia + - Julian + - Juliana + - Julianna + - Julie + - Juliet + - Julio + - Julissa + - Julius + - July + - Justice + - Justin + - Kade + - Kaden + - Kadence + - Kaelea + - Kaelyn + - Kai + - Kaiden + - Kailey + - Kailyn + - Kaitlin + - Kaitlyn + - Kale + - Kaleb + - Kaleigh + - Kameron + - Kamryn + - Kane + - Kara + - Karen + - Karenza + - Karina + - Karla + - Karly + - Karson + - Karyn + - Kassidy + - Kat + - Kate + - Katelyn + - Katelynn + - Katherine + - Kathleen + - Kathryn + - Kathy + - Katie + - Katlyn + - Kayden + - Kayden + - Kaydence + - Kayla + - Kaylee + - Kayleigh + - Kayleigh + - Kaylie + - Kaylin + - Keagan + - Keaton + - Keegan + - Keegan + - Keira + - Keira + - Keith + - Keith + - Kellen + - Kellie + - Kelly + - Kelsey + - Kelvin + - Kendall + - Kendra + - Kennard + - Kennedy + - Kenneth + - Kenzie + - Kerena + - Kerensa + - Keturah + - Kevin + - Keziah + - Khalil + - Khloe + - Kiana + - Kiara + - Kiera + - Kiley + - Kimberley + - Kimberly + - Kimora + - Kingston + - Kira + - Kobe + - Kolton + - Kristen + - Kristina + - Kristopher + - Kyla + - Kyle + - Kylee + - Kyleigh + - Kyler + - Kylie + - Kyra + - Lacey + - Lacy + - Laila + - Lakeisha + - Lalla + - Lana + - Lance + - Landen + - Landon + - Landyn + - Lane + - Lanny + - Larry + - Latanya + - Launce + - Laura + - Lauren + - Laurencia + - Laurissa + - Lauryn + - Lawrence + - Layla + - Leah + - Leeann + - Leia + - Leila + - Leilani + - Leland + - Leland + - Lena + - Lennox + - Leo + - Leonardo + - Leonel + - Leroi + - Leslie + - Lesly + - Lessie + - Leta + - Levi + - Lexi + - Lexia + - Lexus + - Lia + - Liam + - Lila + - Lilah + - Lilian + - Liliana + - Lillian + - Lilliana + - Lillie + - Lilly + - Lily + - Lincoln + - Linden + - Lindsay + - Lindsey + - Lindsie + - Lindy + - Linton + - Lizbeth + - Lockie + - Logan + - Logan + - Lola + - London + - Lorenzo + - Loreto + - Lori + - Lorin + - Lou + - Louis + - Luanne + - Luca + - Lucas + - Lucia + - Lucian + - Lucy + - Luis + - Lukas + - Luke + - Luna + - Luvenia + - Lydia + - Lyla + - Lyndsey + - Lynn + - Lynsey + - Lynwood + - Lyric + - Mabelle + - Macey + - Macie + - Mackenzie + - Macy + - Madalyn + - Maddison + - Maddox + - Madeleine + - Madeline + - Madelyn + - Madelynn + - Madilyn + - Madison + - Madisyn + - Madyson + - Madyson + - Maegan + - Maggie + - Makayla + - Makenna + - Makenzie + - Malachi + - Malachi + - Malcolm + - Malia + - Malik + - Mallory + - Manley + - Manuel + - Marc + - Marcia + - Marco + - Marcos + - Marcus + - Marely + - Margaret + - Maria + - Mariabella + - Mariah + - Mariana + - Marilene + - Mario + - Marion + - Marion + - Marisol + - Marissa + - Marje + - Marjory + - Mark + - Marlee + - Marley + - Marlowe + - Marlyn + - Marshall + - Marshall + - Martin + - Marvin + - Mary + - Maryann + - Mason + - Mateo + - Mathew + - Matthew + - Maudie + - Maurene + - Maurice + - Mauricio + - Max + - Maximilian + - Maximus + - Maxwell + - May + - Maya + - Maynard + - Mckenna + - Mckenzie + - Megan + - Meghan + - Mekhi + - Melanie + - Melany + - Melissa + - Melody + - Melvin + - Melvyn + - Meredith + - Merideth + - Merrilyn + - Meryl + - Mia + - Micah + - Michael + - Michaela + - Micheal + - Micheal + - Michelle + - Miguel + - Mikayla + - Mike + - Miles + - Miley + - Milo + - Milton + - Minnie + - Miracle + - Miranda + - Miriam + - Mitchell + - Moises + - Molly + - Monica + - Monna + - Montague + - Monte + - Monty + - Morgan + - Morgan + - Moses + - Muriel + - Mya + - Mya + - Mylee + - Myles + - Myriam + - Myrtie + - Nadia + - Nan + - Nancy + - Naomi + - Nasir + - Natalia + - Natalie + - Nataly + - Natasha + - Nathan + - Nathaniel + - Nathaniel + - Nayeli + - Nehemiah + - Nelle + - Nelson + - Nena + - Nerissa + - Netta + - Nettie + - Nevaeh + - Nia + - Nicholas + - Nickolas + - Nicolas + - Nicole + - Nikolas + - Nikolas + - Nina + - Noah + - Noah + - Noel + - Noelle + - Nolan + - Nonie + - Nora + - Norah + - Nova + - Nowell + - Nydia + - Nyla + - Olive + - Oliver + - Olivia + - Omar + - Oralie + - Orlando + - Osbert + - Osborn + - Osborne + - Oscar + - Osmund + - Owen + - Pablo + - Paget + - Paige + - Paisley + - Paola + - Paris + - Parker + - Patience + - Patricia + - Patrick + - Patrick + - Patton + - Paul + - Pauleen + - Paxton + - Payton + - Payton + - Pedro + - Pene + - Penelope + - Percival + - Peregrine + - Perla + - Peter + - Peyton + - Peyton + - Pheobe + - Philip + - Phillip + - Phoebe + - Phoebe + - Phoenix + - Phyliss + - Phyllida + - Phyllis + - Piper + - Porsche + - Porter + - Presley + - Preston + - Priscilla + - Prosper + - Prue + - Quanah + - Quentin + - Quiana + - Quinn + - Quinton + - Rachael + - Rachel + - Raegan + - Raelene + - Rafael + - Rain + - Ramon + - Randa + - Randal + - Randy + - Rastus + - Raul + - Raymond + - Rayner + - Reagan + - Rebecca + - Rebeckah + - Rebekah + - Reece + - Reed + - Reene + - Reese + - Reese + - Reid + - Renie + - Reuben + - Rexana + - Reynard + - Rhetta + - Ricardo + - Rich + - Richard + - Richie + - Rick + - Rickena + - Rickey + - Rickie + - Ricky + - Rihanna + - Riley + - Riley + - River + - Robert + - Roberto + - Rocco + - Rodger + - Rodrigo + - Roger + - Roger + - Roman + - Romayne + - Romeo + - Ronald + - Ronnette + - Rosa + - Roscoe + - Rose + - Rosemary + - Roswell + - Rowan + - Rowan + - Roy + - Royce + - Ruben + - Ruby + - Rubye + - Russell + - Rusty + - Ruth + - Ryan + - Ryder + - Ryker + - Rylan + - Rylee + - Ryleigh + - Rylie + - Sabella + - Sabrina + - Sachie + - Sadie + - Sage + - Sal + - Sally + - Salvador + - Sam + - Samantha + - Samara + - Samuel + - Sandra + - Santiago + - Sara + - Sarah + - Sarai + - Saranna + - Sasha + - Saul + - Savanna + - Savannah + - Sawyer + - Sawyer + - Scarlett + - Scott + - Scotty + - Sean + - Sebastian + - Selena + - Seneca + - Serena + - Serenity + - Sergio + - Seth + - Seymour + - Shan + - Shana + - Shane + - Shanika + - Shannah + - Shannon + - Shannon + - Shantae + - Sharalyn + - Sharla + - Shaun + - Shawn + - Shayla + - Shelby + - Sheri + - Sherie + - Sherill + - Sherri + - Shiloh + - Sienna + - Sierra + - Silas + - Simon + - Simon + - Sissy + - Skylar + - Skyler + - Skyler + - Sloan + - Sofia + - Solomon + - Sophia + - Sophie + - Sophie + - Sorrel + - Spencer + - Spike + - Star + - Stella + - Steph + - Stephanie + - Stephany + - Stephen + - Steven + - Sue + - Sukie + - Summer + - Sunshine + - Susanna + - Susannah + - Suzan + - Suzy + - Sybil + - Syd + - Sydney + - Sydney + - Talia + - Talon + - Tamika + - Tamsin + - Tania + - Tanner + - Tansy + - Taryn + - Tate + - Tatiana + - Tatum + - Tatyanna + - Taylor + - Taylor + - Taylor + - Teagan + - Tel + - Terrell + - Terry + - Tessa + - Theodore + - Thomas + - Tiffany + - Tiffany + - Timothy + - Titus + - Tod + - Tolly + - Tony + - Topaz + - Tori + - Tori + - Tracee + - Tracey + - Travis + - Trent + - Trenton + - Trevor + - Trey + - Trinity + - Trinity + - Tristan + - Tristen + - Triston + - Troy + - Tucker + - Ty + - Tye + - Tyler + - Tyson + - Uland + - Ulric + - Ulyssa + - Uriel + - Valary + - Valentina + - Valeria + - Valerie + - Vanessa + - Vaughn + - Verna + - Veronica + - Victor + - Victoria + - Vince + - Vincent + - Vinnie + - Violet + - Vivian + - Viviana + - Vivyan + - Walker + - Walter + - Walter + - Ward + - Warner + - Wayne + - Wendi + - Wendy + - Wesley + - Weston + - Whitaker + - William + - William + - Willow + - Willy + - Winifred + - Wisdom + - Woodrow + - Woody + - Wyatt + - Wynonna + - Wynter + - Xander + - Xavier + - Ximena + - Yahir + - Yasmin + - Yasmin + - Yolanda + - Ysabel + - Zachariah + - Zachary + - Zack + - Zackary + - Zander + - Zane + - Zayden + - Zeke + - Zelda + - Zion + - Zoe + - Zoey + - Zune diff --git a/Resources/Prototypes/Datasets/Names/first_female.yml b/Resources/Prototypes/Datasets/Names/first_female.yml new file mode 100644 index 0000000000..939f1ec56b --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/first_female.yml @@ -0,0 +1,810 @@ +- type: dataset + id: names_first_female + values: + - Aaliyah + - Abby + - Abigail + - Addison + - Addyson + - Adeline + - Adriana + - Adrianna + - Aida + - Aileen + - Ainsley + - Alaina + - Alana + - Alanna + - Alayna + - Alejandra + - Alessandra + - Alexa + - Alexa + - Alexandra + - Alexandria + - Alexandria + - Alexia + - Alexis + - Alexis + - Alexus + - Alfreda + - Alice + - Alicia + - Alina + - Alisa + - Alison + - Alissa + - Alisya + - Alivia + - Aliyah + - Allegra + - Allegria + - Allie + - Allison + - Allisson + - Allyson + - Alma + - Alondra + - Alysha + - Alyson + - Alyssa + - Alyssia + - Amanda + - Amari + - Amaryllis + - Amaya + - Amber + - Ambrosine + - Amelia + - Amira + - Amiyah + - Amy + - Amya + - Ana + - Anahi + - Anastasia + - Anaya + - Andrea + - Angel + - Angel + - Angela + - Angelica + - Angelina + - Angie + - Aniya + - Aniyah + - Anjelica + - Anna + - Annabelle + - Anne + - Anne + - Annie + - Annika + - Anya + - April + - Arabella + - Ariana + - Arianna + - Ariel + - Arielle + - Arleen + - Ashley + - Ashlie + - Ashlyn + - Ashlynn + - Asia + - Astor + - Athena + - Aubree + - Aubrey + - Aubrey + - Aubrie + - Audrey + - Audrina + - Aurora + - Autumn + - Ava + - Avalona + - Averill + - Avery + - Ayla + - Bailey + - Barbara + - Baylee + - Beckah + - Becky + - Bella + - Bernice + - Bethany + - Bethney + - Betsy + - Bianca + - Bidelia + - Breanna + - Breanne + - Brenda + - Brenna + - Briana + - Brianna + - Bridget + - Brielle + - Brittani + - Brittany + - Brooke + - Brooke + - Brooklyn + - Brooklynn + - Brynn + - Cadence + - Cadence + - Caitlin + - Caitlyn + - Calanthia + - Caleigh + - Cali + - Callie + - Cameron + - Camila + - Camille + - Camryn + - Candace + - Candice + - Cara + - Carly + - Carly + - Carlyle + - Carmen + - Carolina + - Caroline + - Carolyn + - Carry + - Caryl + - Casey + - Cassandra + - Cassidy + - Catherine + - Cecilia + - Cecily + - Celeste + - Charlotte + - Chelsea + - Cherette + - Cheri + - Cherry + - Cheyanne + - Cheyenne + - Chloe + - Christa + - Christiana + - Christina + - Christobelle + - Ciara + - Cindy + - Claire + - Clara + - Claribel + - Claudia + - Clover + - Cora + - Coreen + - Corrine + - Courtney + - Crystal + - Cynthia + - Cynthia + - Daisy + - Dakota + - Dalya + - Dana + - Danica + - Daniela + - Daniella + - Daniella + - Danielle + - Danika + - Danna + - Daria + - Dayana + - Dayna + - Debbi + - Dee + - Deena + - Delaney + - Delilah + - Della + - Delma + - Denise + - Denys + - Desiree + - Destiny + - Diamond + - Diamond + - Diana + - Dina + - Dolores + - Donella + - Donna + - Dorothy + - Dortha + - Dulce + - Easter + - Ebba + - Eden + - Effie + - Elaina + - Eleanor + - Elena + - Eliana + - Elise + - Eliza + - Elizabeth + - Elizabeth + - Ella + - Elle + - Elle + - Ellie + - Emely + - Emerson + - Emery + - Emilee + - Emilia + - Emily + - Emma + - Emma + - Erica + - Erika + - Erin + - Ermintrude + - Esmeralda + - Esmeralda + - Esther + - Estrella + - Eugenia + - Euphemia + - Eustace + - Eva + - Evangeline + - Eveleen + - Evelina + - Evelyn + - Faith + - Fatima + - Fay + - Fernanda + - Fiona + - Floella + - Flora + - Flossie + - Fortune + - Francesca + - Gabriela + - Gabriella + - Gabrielle + - Genette + - Genevieve + - Georgene + - Georgia + - Geraldine + - Gervase + - Gianna + - Gina + - Ginger + - Giselle + - Gladwyn + - Glenna + - Gloria + - Grace + - Gracie + - Greta + - Griselda + - Guadalupe + - Gwenda + - Gwenevere + - Hadley + - Hadley + - Haidee + - Hailee + - Hailey + - Hailey + - Hal + - Haleigh + - Haley + - Hanna + - Hannah + - Harley + - Harmony + - Harper + - Hayden + - Haylee + - Hayley + - Hayley + - Haylie + - Hazel + - Heather + - Heather + - Heaven + - Hedley + - Heidi + - Helen + - Helen + - Hepsie + - Holly + - Hope + - Hortensia + - Iantha + - Ileen + - Imani + - Innocent + - Irene + - Iris + - Isabel + - Isabella + - Isabelle + - Itzel + - Ivy + - Izabella + - Jacaline + - Jacqueline + - Jacquetta + - Jacqui + - Jada + - Jade + - Jaden + - Jadyn + - Jaelyn + - Jakki + - Jalen + - Jamie + - Jane + - Janelle + - Janelle + - Janette + - Janie + - Janina + - Janine + - Janiya + - Janiyah + - Jaslene + - Jasmin + - Jasmine + - Jasmine + - Jayda + - Jayden + - Jayla + - Jaylee + - Jaynie + - Jazlyn + - Jazmin + - Jazmine + - Jeanna + - Jeannie + - Jeannine + - Jenifer + - Jenna + - Jennie + - Jennifer + - Jera + - Jere + - Jeri + - Jessica + - Jillian + - Jillian + - Jillie + - Jimena + - Joanna + - Jocelyn + - Joetta + - Johanna + - Joi + - Joni + - Jordan + - Jordyn + - Joselyn + - Josepha + - Josephine + - Josie + - Joye + - Julia + - Julia + - Juliana + - Julianna + - Julie + - Juliet + - Julissa + - July + - Kadence + - Kaelea + - Kaelyn + - Kailey + - Kailyn + - Kaitlin + - Kaitlyn + - Kaleigh + - Kamryn + - Kara + - Karen + - Karenza + - Karina + - Karla + - Karly + - Karyn + - Kassidy + - Kat + - Kate + - Katelyn + - Katelynn + - Katherine + - Kathleen + - Kathryn + - Kathy + - Katie + - Katlyn + - Kayden + - Kaydence + - Kayla + - Kaylee + - Kayleigh + - Kayleigh + - Kaylie + - Kaylin + - Keegan + - Keira + - Keira + - Keith + - Kellie + - Kelly + - Kelsey + - Kendall + - Kendra + - Kennedy + - Kenzie + - Kerena + - Kerensa + - Keturah + - Khloe + - Kiana + - Kiara + - Kiera + - Kiley + - Kimberley + - Kimberly + - Kimora + - Kira + - Kristen + - Kristina + - Kyla + - Kylee + - Kyleigh + - Kylie + - Kyra + - Lacey + - Lacy + - Laila + - Lakeisha + - Lalla + - Lana + - Latanya + - Laura + - Lauren + - Laurencia + - Laurissa + - Lauryn + - Layla + - Leah + - Leeann + - Leia + - Leila + - Leilani + - Lena + - Leslie + - Lesly + - Lessie + - Leta + - Lexi + - Lexia + - Lexus + - Lia + - Lila + - Lilah + - Lilian + - Liliana + - Lillian + - Lilliana + - Lillie + - Lilly + - Lily + - Lindsay + - Lindsey + - Lindsie + - Lindy + - Lizbeth + - Lockie + - Logan + - Lola + - London + - Lori + - Lorin + - Luanne + - Lucia + - Lucian + - Lucy + - Luna + - Luvenia + - Lydia + - Lyla + - Lyndsey + - Lynn + - Lynsey + - Lynwood + - Lyric + - Mabelle + - Macey + - Macie + - Mackenzie + - Macy + - Madalyn + - Maddison + - Madeleine + - Madeline + - Madelyn + - Madelynn + - Madilyn + - Madison + - Madisyn + - Madyson + - Madyson + - Maegan + - Maggie + - Makayla + - Makenna + - Makenzie + - Malia + - Mallory + - Marcia + - Marely + - Margaret + - Maria + - Mariabella + - Mariah + - Mariana + - Marilene + - Marion + - Marisol + - Marissa + - Marje + - Marjory + - Marlee + - Marley + - Marlowe + - Marlyn + - Marshall + - Mary + - Maryann + - Maudie + - Maurene + - May + - Maya + - Mckenna + - Mckenzie + - Megan + - Meghan + - Melanie + - Melany + - Melissa + - Melody + - Meredith + - Merideth + - Merrilyn + - Meryl + - Mia + - Michaela + - Michelle + - Mikayla + - Miley + - Minnie + - Miracle + - Miranda + - Miriam + - Molly + - Monica + - Monna + - Morgan + - Muriel + - Mya + - Mya + - Mylee + - Myriam + - Myrtie + - Nadia + - Nan + - Nancy + - Naomi + - Natalia + - Natalie + - Nataly + - Natasha + - Nayeli + - Nelle + - Nena + - Nerissa + - Netta + - Nettie + - Nevaeh + - Nia + - Nicole + - Nina + - Noelle + - Nonie + - Nora + - Norah + - Nova + - Nowell + - Nydia + - Nyla + - Olive + - Olivia + - Oralie + - Paige + - Paisley + - Paola + - Paris + - Patience + - Patricia + - Pauleen + - Payton + - Pene + - Penelope + - Peregrine + - Perla + - Peyton + - Pheobe + - Phoebe + - Phoebe + - Phyliss + - Phyllida + - Phyllis + - Piper + - Porsche + - Presley + - Priscilla + - Prosper + - Prue + - Quanah + - Quiana + - Rachael + - Rachel + - Raegan + - Raelene + - Rain + - Randa + - Randal + - Reagan + - Rebecca + - Rebeckah + - Rebekah + - Reene + - Reese + - Renie + - Rexana + - Rhetta + - Rihanna + - Riley + - Ronnette + - Rosa + - Rose + - Rosemary + - Rowan + - Ruby + - Rubye + - Ruth + - Rylee + - Ryleigh + - Rylie + - Sabella + - Sabrina + - Sachie + - Sadie + - Sage + - Sally + - Samantha + - Samara + - Sandra + - Sara + - Sarah + - Sarai + - Saranna + - Sasha + - Savanna + - Savannah + - Scarlett + - Selena + - Seneca + - Serena + - Serenity + - Shana + - Shanika + - Shannah + - Shannon + - Shannon + - Shantae + - Sharalyn + - Sharla + - Shayla + - Shelby + - Sheri + - Sherie + - Sherill + - Sherri + - Sienna + - Sierra + - Sissy + - Skylar + - Skyler + - Sofia + - Sophia + - Sophie + - Sophie + - Star + - Stella + - Steph + - Stephanie + - Stephany + - Sue + - Sukie + - Summer + - Sunshine + - Susanna + - Susannah + - Suzan + - Suzy + - Sydney + - Sydney + - Talia + - Tamika + - Tania + - Tansy + - Taryn + - Tatiana + - Tatum + - Tatyanna + - Taylor + - Teagan + - Tessa + - Tiffany + - Tiffany + - Tolly + - Topaz + - Tori + - Tori + - Tracee + - Tracey + - Trinity + - Ulyssa + - Valary + - Valentina + - Valeria + - Valerie + - Vanessa + - Verna + - Veronica + - Victoria + - Vinnie + - Violet + - Vivian + - Viviana + - Vivyan + - Wendi + - Wendy + - Willow + - Wisdom + - Wynonna + - Wynter + - Ximena + - Yasmin + - Yasmin + - Yolanda + - Ysabel + - Zelda + - Zoe + - Zoey + - Zune diff --git a/Resources/Prototypes/Datasets/Names/first_male.yml b/Resources/Prototypes/Datasets/Names/first_male.yml new file mode 100644 index 0000000000..b015113e30 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/first_male.yml @@ -0,0 +1,728 @@ +- type: dataset + id: names_first_male + values: + - Aaden + - Aaron + - Abel + - Abel + - Abraham + - Adam + - Adan + - Aden + - Adolph + - Adrian + - Aidan + - Aiden + - Alan + - Alan + - Albert + - Alberto + - Alden + - Alec + - Alejandro + - Alex + - Alex + - Alexander + - Alexis + - Alfred + - Alfredo + - Alger + - Ali + - Alijah + - Allen + - Allen + - Alvin + - Amari + - Amir + - Amos + - Anderson + - Andre + - Andres + - Andrew + - Andy + - Angel + - Angelo + - Anthony + - Antonio + - Apple + - Archie + - Armando + - Arnie + - Art + - Arthur + - Arthur + - Arturo + - Asher + - Ashton + - August + - Austin + - Avery + - Axel + - Ayden + - Baldric + - Bartholomew + - Beau + - Beckett + - Benjamin + - Bennett + - Bill + - Blake + - Blake + - Braden + - Bradley + - Brady + - Braeden + - Braiden + - Brandon + - Braxton + - Brayan + - Brayden + - Brayden + - Braydon + - Braylon + - Brendan + - Brendan + - Brenden + - Brennan + - Brett + - Brian + - Brick + - Brock + - Brock + - Brodie + - Brody + - Bronte + - Bruce + - Bruce + - Bryan + - Bryant + - Bryce + - Bryce + - Brycen + - Bryson + - Buck + - Burt + - Butch + - Byrne + - Byron + - Byron + - Cade + - Caden + - Caiden + - Caleb + - Calvin + - Camden + - Cameron + - Camron + - Camryn + - Carl + - Carl + - Carlos + - Carson + - Carter + - Carter + - Casey + - Cash + - Casimir + - Cassian + - Cayden + - Cesar + - Chad + - Chance + - Chandler + - Charles + - Charles + - Charlie + - Charlton + - Chase + - Chip + - Chris + - Christian + - Christopher + - Clark + - Claudius + - Clayton + - Clement + - Cletus + - Cleveland + - Cliff + - Clinton + - Cody + - Cohen + - Colby + - Cole + - Colin + - Collin + - Collin + - Colten + - Colton + - Conner + - Connor + - Cooper + - Corbin + - Corey + - Cory + - Cristian + - Cristopher + - Crush + - Cruz + - Curtis + - Cy + - Dakota + - Dallas + - Dalton + - Damian + - Damian + - Damien + - Damien + - Damon + - Dane + - Daniel + - Danny + - Danny + - Dante + - Darcey + - Darell + - Darin + - Darius + - Darren + - David + - Davion + - Davis + - Dawson + - Dayton + - Dean + - Deandre + - Deangelo + - Declan + - Denholm + - Dennis + - Derek + - Derrick + - Desmond + - Desmond + - Devin + - Devin + - Devon + - Diego + - Dillon + - Dirk + - Dominic + - Dominic + - Dominick + - Donald + - Donny + - Donovan + - Douglas + - Drake + - Drew + - Driscoll + - Duke + - Duncan + - Dustin + - Dylan + - Easton + - Eddie + - Edgar + - Edgar + - Eduardo + - Edward + - Edwin + - Eli + - Elias + - Elijah + - Eliot + - Eliott + - Elliot + - Elliott + - Elric + - Elwood + - Emanuel + - Emerson + - Emiliano + - Emilio + - Emmanuel + - Emmanuel + - Enrique + - Eric + - Erick + - Erik + - Ernesto + - Esteban + - Ethan + - Evan + - Everett + - Ezekiel + - Ezra + - Fabian + - Felix + - Fenton + - Fernando + - Finn + - Fitz + - Flick + - Flint + - Flip + - Francis + - Francisco + - Frank + - Frank + - Frankie + - Franklin + - Fridge + - Fulton + - Gabriel + - Gael + - Gage + - Gannon + - Garret + - Garrett + - Gary + - Gary + - Gavin + - George + - Gerardo + - Giovanni + - Goddard + - Godwin + - Goodwin + - Gordon + - Grady + - Graeme + - Graham + - Grandpa + - Grant + - Gratian + - Grayson + - Gregory + - Grendel + - Greyson + - Griffin + - Guillermo + - Gunner + - Gustavo + - Han + - Harrison + - Harry + - Hartley + - Harvey + - Hayden + - Hector + - Henderson + - Henry + - Holden + - Holden + - Homer + - Horatio + - Hudson + - Huffie + - Hugo + - Hugo + - Hungry + - Hunter + - Ian + - Irvine + - Isaac + - Isaiah + - Isaias + - Isiah + - Ismael + - Israel + - Issac + - Ivan + - Izaiah + - Jace + - Jack + - Jackson + - Jacob + - Jacob + - Jacoby + - Jaden + - Jadon + - Jaiden + - Jaime + - Jake + - Jake + - Jakob + - Jalen + - Jamar + - Jamari + - Jamarion + - James + - Jameson + - Jamie + - Jamison + - Janel + - Jared + - Jason + - Jasper + - Javier + - Javon + - Jaxon + - Jaxson + - Jay + - Jayce + - Jayden + - Jaydon + - Jaydon + - Jaye + - Jaylen + - Jayne + - Jayson + - Jean-Luc + - Jeb + - Jed + - Jeffrey + - Jemmy + - Jeremiah + - Jeremy + - Jermaine + - Jerrie + - Jerry + - Jesse + - Jesus + - Jim + - Jimmy + - Joachim + - Joaquin + - Joe + - Joel + - Joey + - Johan + - John + - John + - Johnathan + - Johnathan + - Johnny + - Johnny + - Jonah + - Jonas + - Jonathan + - Jonathon + - Jonathon + - Jordan + - Jorge + - Jose + - Joseph + - Josh + - Joshua + - Josiah + - Josiah + - Josue + - Juan + - Judah + - Jude + - Julian + - Julio + - Julius + - Justice + - Justin + - Kade + - Kaden + - Kai + - Kaiden + - Kale + - Kaleb + - Kameron + - Kane + - Karson + - Kayden + - Keagan + - Keaton + - Keegan + - Keith + - Kellen + - Kelvin + - Kennard + - Kenneth + - Kevin + - Keziah + - Khalil + - Kingston + - Kobe + - Kolton + - Kristopher + - Kyle + - Kyler + - Lance + - Landen + - Lando + - Landon + - Landyn + - Lane + - Lanny + - Larry + - Launce + - Lawrence + - Leland + - Leland + - Lennox + - Lenny + - Leo + - Leonard + - Leonardo + - Leonel + - Leroy + - Levi + - Liam + - Lief + - Lincoln + - Linden + - Linton + - Logan + - Lorde + - Lorenzo + - Loreto + - Lou + - Louis + - Luca + - Lucas + - Lucas + - Luis + - Lukas + - Luke + - Luke + - Maddox + - Malachi + - Malachi + - Malcolm + - Malik + - Manley + - Manuel + - Marc + - Marco + - Marcos + - Marcus + - Mario + - Marion + - Mark + - Marshall + - Martin + - Marvin + - Mason + - Mateo + - Mathew + - Matthew + - Maurice + - Mauricio + - Max + - Max + - Maximilian + - Maximus + - Maxwell + - Maynard + - Mekhi + - Melvin + - Melvyn + - Micah + - Michael + - Michael + - Micheal + - Miguel + - Mike + - Miles + - Milo + - Milton + - Mitchell + - Moises + - Montague + - Monte + - Monty + - Morgan + - Moses + - Myles + - Nasir + - Nat + - Nathan + - Nathaniel + - Nathaniel + - Nehemiah + - Nelson + - Nicholas + - Nick + - Nickolas + - Nicolas + - Nikolas + - Nikolas + - Noah + - Noah + - Noel + - Nolan + - Oliver + - Omar + - Opie + - Orlando + - Osbert + - Osborn + - Osborne + - Oscar + - Osmund + - Oswald + - Owen + - Pablo + - Paget + - Parker + - Patrick + - Patrick + - Patton + - Paul + - Paxton + - Payton + - Pedro + - Percival + - Persh + - Peter + - Peyton + - Philip + - Phillip + - Phoenix + - Porter + - Preston + - Quentin + - Quinn + - Quinton + - Rafael + - Ramon + - Randy + - Rastus + - Raul + - Raymond + - Raymond + - Rayner + - Reece + - Reed + - Reese + - Reid + - Reuben + - Reynard + - Ricardo + - Richard + - Richard + - Ricky + - Riley + - River + - Robert + - Roberto + - Rocco + - Rodger + - Rodrigo + - Roger + - Roger + - Roman + - Romayne + - Romeo + - Ronald + - Roscoe + - Roswell + - Rowan + - Roy + - Royce + - Rube + - Ruben + - Russell + - Rusty + - Ryan + - Ryder + - Ryker + - Rylan + - Sal + - Salvador + - Sam + - Samuel + - Santiago + - Saul + - Sawyer + - Sawyer + - Scott + - Scotty + - Sean + - Sebastian + - Sergio + - Seth + - Seymour + - Shane + - Shane + - Shaun + - Shawn + - Shiloh + - Silas + - Simon + - Simon + - Skyler + - Sloan + - Smoke + - Solomon + - Sorrel + - Spencer + - Spike + - Stephen + - Steven + - Sybil + - Syd + - Talon + - Tamsin + - Tanner + - Tate + - Taylor + - Taylor + - Tel + - Terrell + - Terry + - Theodore + - Thomas + - Tim + - Timothy + - Timothy + - Titus + - Todd + - Tony + - Travis + - Trent + - Trenton + - Trevor + - Trey + - Trip + - Tristan + - Tristen + - Triston + - Troy + - Tucker + - Ty + - Tye + - Tyler + - Tyson + - Uland + - Ulric + - Uriel + - Vaughn + - Victor + - Vince + - Vincent + - Vinny + - Walker + - Walter + - Walter + - Ward + - Warner + - Wayne + - Wesley + - Weston + - Whitaker + - William + - William + - Willy + - Woodrow + - Wyatt + - Xander + - Xavier + - Yahir + - Zachariah + - Zachary + - Zack + - Zackary + - Zander + - Zane + - Zane + - Zayden + - Zeke + - Zion diff --git a/Resources/Prototypes/Datasets/Names/golem.yml b/Resources/Prototypes/Datasets/Names/golem.yml new file mode 100644 index 0000000000..4aef803176 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/golem.yml @@ -0,0 +1,1339 @@ +- type: dataset + id: names_golem + values: + - Abelsonite + - Abenakiite + - Abernathyite + - Abhurite + - Abramovite + - Abswurmbachite + - Acanthite + - Achavalite + - Actinolite + - Acuminite + - Adamite + - Adelite + - Admontite + - Aegirine + - Aenigmatite + - Aerinite + - Aerugite + - Aeschynite + - Afghanite + - Afwillite + - Agardite + - Agrellite + - Agrinierite + - Aguilarite + - Aheylite + - Ahlfeldite + - Aikinite + - Ajoite + - Akaganeite + - Akatoreite + - Akdalaite + - �kermanite + - Akhtenskite + - Akimotoite + - Akrochordite + - Aksaite + - Aktashite + - Alabandite + - Alacranite + - Alamosite + - Alarsite + - Albite + - Albrechtschraufite + - Aldermanite + - Aleksite + - Alforsite + - Algodonite + - Aliettite + - Allabogdanite + - Allactite + - Allanite + - Allanpringite + - Allargentum + - Alleghanyite + - Alloclasite + - Allophane + - Alluaivite + - Alluaudite + - Almandine + - Almarudite + - Alsakharovite + - Alstonite + - Altaite + - Althausite + - Althupite + - Altisite + - Alum + - Aluminite + - Aluminium + - Alunite + - Alunogen + - Amakinite + - Amarantite + - Amblygonite + - Ameghinite + - Amesite + - Amicite + - Amphibole + - Analcime + - Anandite + - Anapaite + - Anatase + - Ancylite + - Andalusite + - Andersonite + - Andesine + - Andorite + - Andradite + - Andyrobertsite + - Anglesite + - Anhydrite + - Ankerite + - Annabergite + - Annite + - Anorthite + - Anorthoclase + - Antarcticite + - Anthonyite + - Anthophyllite + - Antigorite + - Antimony + - Antitaenite + - Antlerite + - Apachite + - Apatite + - Aphthitalite + - Apophyllite + - Aragonite + - Arcanite + - Archerite + - Arctite + - Arcubisite + - Ardaite + - Arfvedsonite + - Argentite + - Argutite + - Argyrodite + - Armalcolite + - Arsenic + - Arseniosiderite + - Arsenoclasite + - Arsenolite + - Arsenopyrite + - Arthurite + - Artinite + - Artroeite + - Ashburtonite + - Ashoverite + - Asisite + - Astrophyllite + - Atacamite + - Athabascaite + - Atheneite + - Aubertite + - Augelite + - Augite + - Aurichalcite + - Auricupride + - Aurostibite + - Austinite + - Autunite + - Avicennite + - Avogadrite + - Awaruite + - Axinite + - Azurite + - Babefphite + - Babingtonite + - Baddeleyite + - Bakerite + - Balangeroite + - Banalsite + - Baotite + - Bararite + - Barrerite + - Barstowite + - Baryte + - Barytocalcite + - Bassanite + - Bastnasite + - Baumhauerite + - Bayldonite + - Bayleyite + - Bazzite + - Becquerelite + - Benitoite + - Benstonite + - Bentorite + - Beraunite + - Berborite + - Bergenite + - Berlinite + - Berryite + - Berthierite + - Bertrandite + - Beryl + - Beryllonite + - Beudantite + - Bicchulite + - Biehlite + - Bilinite + - Billietite + - Billwiseite + - Biotite + - Birnessite + - Bischofite + - Bismite + - Bismuth + - Bismuthinite + - Bismutite + - Bityite + - Bixbyite + - Blodite + - Blossite + - Bobfergusonite + - Boehmite + - Boleite + - Boltwoodite + - Bonaccordite + - Boracite + - Borax + - Bornite + - Botallackite + - Botryogen + - Boulangerite + - Bournonite + - Boussingaultite + - Bowieite + - Braggite + - Brassite + - Braunite + - Brazilianite + - Breithauptite + - Brewsterite + - Brezinaite + - Brianite + - Brianyoungite + - Briartite + - Bridgmanite + - Brochantite + - Brockite + - Bromargyrite + - Bromellite + - Bronzite + - Brookite + - Brownleeite + - Brownmillerite + - Brucite + - Brushite + - Buddingtonite + - Bukovite + - Bukovskyite + - Bultfonteinite + - Bunsenite + - Bustamite + - Bystrite + - Cabalzarite + - Cabriite + - Cacoxenite + - Cadmium + - Cadmoindite + - Cadmoselite + - Cadwaladerite + - Cafarsite + - Cafetite + - Cahnite + - Calaverite + - Calciborite + - Calcite + - Calderite + - Caledonite + - Calumetite + - Campigliaite + - Canavesite + - Cancrinite + - Canfieldite + - Carletonite + - Carlosruizite + - Carlsbergite + - Carminite + - Carnallite + - Carnotite + - Carobbiite + - Carpathite + - Carpholite + - Carrollite + - Caryopilite + - Cassiterite + - Cattierite + - Cavansite + - Celadonite + - Celestine + - Celsian + - Cerite + - Cerium + - Cerussite + - Cervandonite + - Cervantite + - Cesanite + - Cesbronite + - Chabazite + - Chaidamuite + - Chalcanthite + - Chalcocite + - Chalcophyllite + - Chalcopyrite + - Challacolloite + - Chambersite + - Chamosite + - Changbaiite + - Chaoite + - Chapmanite + - Charoite + - Chatkalite + - Chesterite + - Chibaite + - Childrenite + - Chlorargyrite + - Chlorite + - Chloritoid + - Chlormayenite + - Chlorocalcite + - Chloroxiphite + - Chondrodite + - Chrisstanleyite + - Christite + - Chromite + - Chromium + - Chrysoberyl + - Chrysocolla + - Chrysotile + - Chvaleticeite + - Cinnabar + - Clarkeite + - Claudetite + - Clausthalite + - Clearcreekite + - Cleusonite + - Clinoclase + - Clinohedrite + - Clinohumite + - Clinoptilolite + - Clinozoisite + - Clintonite + - Cobaltite + - Coccinite + - Coconinoite + - Coesite + - Coffinite + - Cohenite + - Colemanite + - Colimaite + - Collinsite + - Coloradoite + - Columbite + - Combeite + - Conichalcite + - Connellite + - Cooperite + - Copiapite + - Copper + - Corderoite + - Cordierite + - Corkite + - Cornubite + - Cornwallite + - Corundum + - Cotunnite + - Covellite + - Coyoteite + - Creedite + - Cristobalite + - Crocoite + - Cronstedtite + - Crookesite + - Crossite + - Cryolite + - Cryptomelane + - Cubanite + - Cummingtonite + - Cupalite + - Cuprite + - Cuprosklodowskite + - Cuprospinel + - Curite + - Cuspidine + - Cyanotrichite + - Cylindrite + - Cymrite + - Cyrilovite + - Danalite + - Danburite + - Datolite + - Daubreeite + - Daubreelite + - Davidite + - Dawsonite + - Delafossite + - Delvauxite + - Demesmaekerite + - Derriksite + - Descloizite + - Devilline + - Diaboleite + - Diadochite + - Diamond + - Diaspore + - Dickite + - Digenite + - Dimorphite + - Diopside + - Dioptase + - Djerfisherite + - Djurleite + - Dmitryivanovite + - Dollaseite + - Dolomite + - Domeykite + - Donnayite + - Drysdallite + - Duftite + - Dumortierite + - Dundasite + - Dypingite + - Dyscrasite + - Dzhalindite + - Edenite + - Edingtonite + - Efremovite + - Ekanite + - Elbaite + - Emmonsite + - Empressite + - Enargite + - Enstatite + - Eosphorite + - Ephesite + - Epidote + - Epsomite + - Ericssonite + - Erionite + - Erythrite + - Eskolaite + - Esperite + - Ettringite + - Euchroite + - Euclase + - Eucryptite + - Eudialyte + - Euxenite + - Eveite + - Evenkite + - Eveslogite + - Fabianite + - Farneseite + - Faujasite + - Faustite + - Fayalite + - Feldspar + - Feldspathoid + - Felsobanyaite + - Ferberite + - Fergusonite + - Feroxyhyte + - Ferrierite + - Ferrihydrite + - Ferrimolybdite + - Ferro-actinolite + - Ferrogedrite + - Ferrohortonolite + - Ferronigerite + - Ferropericlase + - Ferroselite + - Fettelite + - Fichtelite + - Fletcherite + - Fluckite + - Fluellite + - Fluoborite + - Fluocerite + - Fluorapatite + - Fluorapophyllite + - Fluorcaphite + - Fluorellestadite + - Fluorite + - Fluororichterite + - Fornacite + - Forsterite + - Fougerite + - Fourmarierite + - Fraipontite + - Francevillite + - Franckeite + - Frankamenite + - Frankdicksonite + - Frankhawthorneite + - Franklinite + - Franklinphilite + - Freibergite + - Freieslebenite + - Fukuchilite + - Gabrielite + - Gadolinite + - Gagarinite + - Gahnite + - Galaxite + - Galena + - Galkhaite + - Gananite + - Garnet + - Gaspeite + - Gatehouseite + - Gaylussite + - Gedrite + - Geerite + - Gehlenite + - Geigerite + - Geikielite + - Geocronite + - Georgerobinsonite + - Germanite + - Gersdorffite + - Getchellite + - Gibbsite + - Gilalite + - Gismondine + - Glauberite + - Glaucochroite + - Glaucodot + - Glauconite + - Glaucophane + - Gmelinite + - Godovikovite + - Goethite + - Gold + - Goldmanite + - Gonnardite + - Gordaite + - Gormanite + - Goslarite + - Graftonite + - Grandidierite + - Grandreefite + - Graphite + - Gratonite + - Greenalite + - Greenockite + - Gregoryite + - Greifensteinite + - Greigite + - Grossite + - Grossular + - Groutite + - Grunerite + - Guettardite + - Gugiaite + - Guilleminite + - Gunningite + - Guyanaite + - Gwihabaite + - Gypsum + - Hafnon + - Hagendorfite + - Haggertyite + - Haidingerite + - Haiweeite + - Haleniusite + - Halite + - Halloysite + - Halotrichite + - Hambergite + - Hanksite + - Hapkeite + - Hardystonite + - Harmotome + - Hauerite + - Hausmannite + - Hauyne + - Hawleyite + - Haxonite + - Hazenite + - Heazlewoodite + - Hectorite + - Hedenbergite + - Hellyerite + - Hematite + - Hemihedrite + - Hemimorphite + - Hemusite + - Herbertsmithite + - Hercynite + - Herderite + - Hessite + - Heulandite + - Hexaferrum + - Hiarneite + - Hibonite + - Hidalgoite + - Hilgardite + - Hisingerite + - Hodgkinsonite + - Hoelite + - Hollandite + - Holmquistite + - Homilite + - Hopeite + - Hornblende + - Howlite + - Hsianghualite + - Hubeite + - Hubnerite + - Huemulite + - Humite + - Huntite + - Hureaulite + - Hutchinsonite + - Huttonite + - Hydroboracite + - Hydrogrossular + - Hydrohalite + - Hydrokenoelsmoreite + - Hydromagnesite + - Hydrotalcite + - Hydroxylapatite + - Hydrozincite + - Ianbruceite + - Ice + - Icosahedrite + - Idrialite + - Ikaite + - Illite + - Ilmenite + - Ilvaite + - Imogolite + - Indite + - Indium + - Inyoite + - Iodargyrite + - Iranite + - Iridium + - Iron + - Ixiolite + - Jacobsite + - Jadarite + - Jadeite + - Jaffeite + - Jalpaite + - Jamesonite + - Janggunite + - Jarosewichite + - Jarosite + - Jennite + - Jeremejevite + - Jerrygibbsite + - Jimthompsonite + - Johannite + - Jolliffeite + - Jonesite + - Jordanite + - Julgoldite + - Junitoite + - Jurbanite + - Kaatialaite + - Kadyrelite + - Kaersutite + - Kainite + - Kainosite + - Kalininite + - Kalinite + - Kalsilite + - Kamacite + - Kambaldaite + - Kamiokite + - Kampfite + - Kankite + - Kanoite + - Kaolinite + - Karlite + - Kassite + - Kegelite + - Keilite + - Kermesite + - Kernite + - Kesterite + - Keyite + - Khatyrkite + - Kieserite + - Kinoite + - Knebelite + - Knorringite + - Kobellite + - Kochite + - Kogarkoite + - Kolbeckite + - Kornerupine + - Kosmochlor + - Kostovite + - Kottigite + - Kovdorskite + - Kratochv�lite + - Kremersite + - Krennerite + - Krieselite + - Krohnkite + - Krotite + - Krutovite + - Kukharenkoite + - Kuratite + - Kurnakovite + - Kutnohorite + - Kyanite + - Labradorite + - Lanarkite + - Langbeinite + - Langite + - Lansfordite + - Lanthanite + - Laplandite + - Larnite + - Laumontite + - Laurionite + - Laurite + - Lautite + - Lavendulan + - Lawsonite + - Lazulite + - Lazurite + - Lead + - Leadhillite + - Legrandite + - Leifite + - Leightonite + - Lepidocrocite + - Lepidolite + - Letovicite + - Leucite + - Leucophanite + - Leucophoenicite + - Levyne + - Libethenite + - Liebigite + - Linarite + - Lindgrenite + - Linnaeite + - Lipscombite + - Liroconite + - Litharge + - Lithiophilite + - Livingstonite + - Lizardite + - Loellingite + - Lonsdaleite + - Loparite + - Lopezite + - Lorandite + - Lorenzenite + - Loveringite + - Ludlamite + - Ludwigite + - Lulzacite + - Lyonsite + - Macaulayite + - Macdonaldite + - Mackinawite + - Madocite + - Magadiite + - Maghemite + - Magnesioferrite + - Magnesiohastingsite + - Magnesiopascoite + - Magnesite + - Magnetite + - Majorite + - Malachite + - Malayaite + - Manganite + - Manganosite + - Manganvesuvianite + - Marcasite + - Margaritasite + - Margarite + - Marialite + - Maricite + - Marrite + - Marthozite + - Mascagnite + - Massicot + - Masuyite + - Matlockite + - Maucherite + - Mawsonite + - Mckelveyite + - Meionite + - Melanophlogite + - Melanterite + - Melilite + - Mellite + - Melonite + - Mendipite + - Mendozite + - Meneghinite + - Mercury + - Mereheadite + - Merenskyite + - Meridianiite + - Merrillite + - Mesolite + - Messelite + - Metacinnabar + - Metatorbernite + - Metazeunerite + - Meyerhofferite + - Miargyrite + - Mica + - Microcline + - Microlite + - Millerite + - Millosevichite + - Mimetite + - Minium + - Minnesotaite + - Minyulite + - Mirabilite + - Mixite + - Moganite + - Mohite + - Mohrite + - Moissanite + - Molybdenite + - Molybdite + - Monazite + - Monohydrocalcite + - Monticellite + - Montmorillonite + - Mooihoekite + - Moolooite + - Mordenite + - Moschellandsbergite + - Mosesite + - Mottramite + - Motukoreaite + - Mullite + - Mundite + - Murdochite + - Muscovite + - Musgravite + - Nabalamprophyllite + - Nabesite + - Nacrite + - Nadorite + - Nagyagite + - Nahcolite + - Naldrettite + - Nambulite + - Narsarsukite + - Native copper + - Natrolite + - Natron + - Natrophilite + - Nekrasovite + - Nelenite + - Nenadkevichite + - Nepheline + - Nepouite + - Neptunite + - Nichromite + - Nickel + - Nickeline + - Niedermayrite + - Niningerite + - Nissonite + - Niter + - Nitratine + - Nobleite + - Nontronite + - Norbergite + - Normandite + - Northupite + - Nosean + - Nsutite + - Nyerereite + - kenite + - Oldhamite + - Olgite + - Olivenite + - Olivine + - Omphacite + - Ordonezite + - Oregonite + - Orpiment + - Orthoclase + - Osarizawaite + - Osmium + - Osumilite + - Otavite + - Ottrelite + - Otwayite + - Paakkonenite + - Pabstite + - Painite + - Palladium + - Palygorskite + - Panethite + - Panguite + - Papagoite + - Paragonite + - Paralaurionite + - Paramelaconite + - Pararealgar + - Pargasite + - Parisite + - Parsonsite + - Partheite + - Pascoite + - Patronite + - Paulingite + - Paulscherrerite + - Pearceite + - Pecoraite + - Pectolite + - Penikisite + - Penroseite + - Pentagonite + - Pentlandite + - Perhamite + - Periclase + - Perite + - Perovskite + - Petalite + - Petzite + - Pezzottaite + - Pharmacolite + - Pharmacosiderite + - Phenakite + - Phillipsite + - Phlogopite + - Phoenicochroite + - Phosgenite + - Phosphophyllite + - Phosphuranylite + - Pickeringite + - Picropharmacolite + - Piemontite + - Pigeonite + - Pinalite + - Pinnoite + - Piypite + - Plagioclase + - Plancheite + - Platinum + - Plattnerite + - Playfairite + - Plumbogummite + - Polarite + - Pollucite + - Polybasite + - Polycrase + - Polydymite + - Polyhalite + - Portlandite + - Posnjakite + - Poudretteite + - Povondraite + - Powellite + - Prehnite + - Proustite + - Pseudobrookite + - Pseudomalachite + - Pseudowollastonite + - Pumpellyite + - Purpurite + - Putnisite + - Pyrargyrite + - Pyrite + - Pyrochlore + - Pyrolusite + - Pyromorphite + - Pyrope + - Pyrophanite + - Pyrophyllite + - Pyroxene + - Pyroxferroite + - Pyroxmangite + - Pyrrhotite + - Rambergite + - Rameauite + - Rammelsbergite + - Rapidcreekite + - Raspite + - Realgar + - Reidite + - Reinerite + - Renierite + - Rheniite + - Rhodium + - Rhodochrosite + - Rhodonite + - Rhodplumsite + - Rhomboclase + - Richterite + - Rickardite + - Riebeckite + - Ringwoodite + - Roaldite + - Robertsite + - Rodalquilarite + - Romanechite + - Romeite + - Rosasite + - Roscoelite + - Roselite + - Rosenbergite + - Rosickyite + - Routhierite + - Rozenite + - Rubicline + - Ruizite + - Russellite + - Ruthenium + - Rutherfordine + - Rutile + - Rynersonite + - Sabatierite + - Sabieite + - Sabinaite + - Sacrofanite + - Safflorite + - Sal Ammoniac + - Saleeite + - Saliotite + - Salzburgite + - Samarskite + - Sampleite + - Samsonite + - Samuelsonite + - Sanbornite + - Saneroite + - Sanidine + - Santabarbaraite + - Santite + - Saponite + - Sapphirine + - Sarabauite + - Sarkinite + - Sassolite + - Satterlyite + - Sauconite + - Sborgite + - Scapolite + - Schaferite + - Scheelite + - Schmiederite + - Schoepite + - Schorl + - Schreibersite + - Schreyerite + - Schrockingerite + - Schwertmannite + - Scolecite + - Scorodite + - Scorzalite + - Scrutinyite + - Seamanite + - Searlesite + - Seeligerite + - Segelerite + - Seifertite + - Sekaninaite + - Selenium + - Seligmannite + - Sellaite + - Semseyite + - Senarmontite + - Sepiolite + - Serandite + - Serendibite + - Serpentine + - Serpierite + - Sewardite + - Shandite + - Shattuckite + - Shigaite + - Shortite + - Siderite + - Siderophyllite + - Siderotil + - Siegenite + - Silicon + - Sillimanite + - Silver + - Simonellite + - Simpsonite + - Sincosite + - Sinkankasite + - Sinoite + - Skaergaardite + - Sklodowskite + - Skutterudite + - Smaltite + - Smectite + - Smithsonite + - Sodalite + - Soddyite + - Sonolite + - Sperrylite + - Spertiniite + - Spessartine + - Sphalerite + - Spherocobaltite + - Spinel + - Spodumene + - Spurrite + - Stannite + - Stannoidite + - Staurolite + - Steacyite + - Stellerite + - Stephanite + - Stercorite + - Stibarsen + - Stibiconite + - Stibiopalladinite + - Stibnite + - Stichtite + - Stilbite + - Stilleite + - Stillwaterite + - Stillwellite + - Stilpnomelane + - Stishovite + - Stolzite + - Strashimirite + - Strengite + - Stromeyerite + - Strontianite + - Struvite + - Studenitsite + - Studtite + - Stutzite + - Suanite + - Suessite + - Sugilite + - Sulfur + - Sursassite + - Susannite + - Sussexite + - Svanbergite + - Sweetite + - Switzerite + - Sylvanite + - Sylvite + - Synchysite + - Syngenite + - Taaffeite + - Tachyhydrite + - Taenite + - Talc + - Talmessite + - Talnakhite + - Tamarugite + - Tangeite + - Tantalite + - Tantite + - Tapiolite + - Taranakite + - Tarapacaite + - Tarbuttite + - Tausonite + - Teallite + - Tellurite + - Tellurium + - Tellurobismuthite + - Temagamite + - Tennantite + - Tenorite + - Tephroite + - Terlinguaite + - Teruggite + - Tetradymite + - Tetrahedrite + - Tetrataenite + - Thaumasite + - Thenardite + - Thermonatrite + - Thiospinel + - Thomasclarkite + - Thomsenolite + - Thomsonite + - Thorianite + - Thorite + - Thortveitite + - Tiemannite + - Tienshanite + - Tin + - Tinaksite + - Tincalconite + - Titanite + - Titanium + - Titanowodginite + - Tobermorite + - Todorokite + - Tokyoite + - Tongbaite + - Topaz + - Torbernite + - Tourmaline + - Tranquillityite + - Tremolite + - Trevorite + - Tridymite + - Triphylite + - Triplite + - Triploidite + - Tripuhyite + - Troilite + - Trona + - Tschermakite + - Tschermigite + - Tsumcorite + - Tsumebite + - Tugtupite + - Tungsten + - Tungstite + - Tuperssuatsiaite + - Turquoise + - Tusionite + - Tyrolite + - Tyrrellite + - Tyuyamunite + - Uchucchacuaite + - Uklonskovite + - Ulexite + - Ullmannite + - Ulrichite + - Ulvospinel + - Umangite + - Umbite + - Upalite + - Uraninite + - Uranocircite + - Uranophane + - Uranopilite + - Urea + - Uricite + - Urusovite + - Ussingite + - Utahite + - Uvarovite + - Uytenbogaardtite + - Vaesite + - Valentinite + - Valleriite + - Vanadinite + - Vanadiocarpholite + - Vanadium + - Vantasselite + - Vanuralite + - Variscite + - Vaterite + - Vauquelinite + - Vauxite + - Veatchite + - Vermiculite + - Vesuvianite + - Villiaumite + - Violarite + - Vishnevite + - Vivianite + - Vladimirite + - Vlasovite + - Volborthite + - Vulcanite + - Wadsleyite + - Wagnerite + - Wairakite + - Wakabayashilite + - Wakefieldite + - Walfordite + - Wardite + - Warikahnite + - Warwickite + - Wassonite + - Wavellite + - Weddellite + - Weeksite + - Weilite + - Weissite + - Weloganite + - Whewellite + - Whiteite + - Whitlockite + - Willemite + - Wiluite + - Witherite + - Wodginite + - Wolframite + - Wollastonite + - Woodhouseite + - Wulfenite + - Wurtzite + - Wustite + - Wyartite + - Xanthiosite + - Xanthoconite + - Xanthoxenite + - Xenophyllite + - Xenotime + - Xiangjiangite + - Xieite + - Xifengite + - Xilingolite + - Ximengite + - Xingzhongite + - Xitieshanite + - Xocolatlite + - Xocomecatlite + - Xonotlite + - Ye'elimite + - Yttrialite + - Yttropyrochlore + - Yuksporite + - Zabuyelite + - Zaccagnaite + - Zaherite + - Zairite + - Zakharovite + - Zanazziite + - Zaratite + - Zektzerite + - Zemannite + - Zeolite + - Zeunerite + - Zhanghengite + - Zharchikhite + - Zhemchuzhnikovite + - Ziesite + - Zimbabweite + - Zincite + - Zinclipscombite + - Zincmelanterite + - Zincobotryogen + - Zincochromite + - Zincolivenite + - Zinkenite + - Zinnwaldite + - Zippeite + - Zircon + - Zirconolite + - Zircophyllite + - Zirkelite + - Znucalite + - Zoisite + - Zorite + - Zunyite + - Zussmanite + - Zykaite diff --git a/Resources/Prototypes/Datasets/Names/hologram.yml b/Resources/Prototypes/Datasets/Names/hologram.yml new file mode 100644 index 0000000000..0a0b667661 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/hologram.yml @@ -0,0 +1,24 @@ +- type: dataset + id: names_hologram + values: + - Rimmer + - Benton + - Leith + - Fontaine + - Barclay + - Lister + - Lewis + - Gatebox + - Switch + - Hal-O'Gram + - Neo + - Morpheus + - Trinity + - Cypher + - Apoc + - Dozer + - Tank + - Mouse + - Architect + - Oracle + - Smith diff --git a/Resources/Prototypes/Datasets/Names/last.yml b/Resources/Prototypes/Datasets/Names/last.yml new file mode 100644 index 0000000000..23a273c9c1 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/last.yml @@ -0,0 +1,624 @@ +- type: dataset + id: names_last + values: + - Ackerley + - Adams + - Adams + - Addison + - Agg + - Aggley + - Ahmed + - Albright + - Alekseev + - Ali + - Alice + - Allen + - Alliman + - Altmann + - Anderson + - Anderson + - Anderson + - Andreev + - Ann + - Archibald + - Armstrong + - Ashbaugh + - Atkinson + - Atweeke + - Aultman + - Auman + - Baer + - Bailey + - Baker + - Baker + - Barnes + - Barrett + - Bash + - Bashline + - Basinger + - Baskett + - Basmanoff + - Batten + - Baum + - Baxter + - Beach + - Beail + - Beck + - Beedell + - Begum + - Bell + - Bell + - Benford + - Bennett + - Bennett + - Bennett + - Berkheimer + - Best + - Bickerson + - Bicknell + - Biery + - Black + - Blackburn + - Blaine + - Blessig + - Bloise + - Bluetenberger + - Blyant + - Bode + - Bould + - Bousum + - Bowchiew + - Boyer + - Brandenburg + - Bratton + - Braun + - Briggs + - Brindle + - Briner + - Brinigh + - Brooks + - Brown + - Bullard + - Bunten + - Burch + - Burkett + - Burns + - Burris + - Butterfill + - Buttersworth + - Buzzard + - Byers + - Bynum + - Caldwell + - Callison + - Camp + - Campbell + - Campbell + - Carmichael + - Carr + - Carter + - Catherina + - Catleay + - Cavalet + - Chapman + - Chauvin + - Cherry + - Christman + - Christopher + - Clark + - Clarke + - Clarke + - Clewett + - Coates + - Coldsmith + - Collins + - Compton + - Conrad + - Cook + - Cooper + - Costello + - Cowart + - Cowper + - Cox + - Cox + - Cox + - Cressman + - Curry + - Cypret + - David + - Davies + - Davis + - Davis + - Dawkins + - Day + - Dean + - Demuth + - Dennis + - Dickinson + - Digson + - Dimeling + - Donkin + - Draudy + - Driggers + - Dryfus + - Dugmore + - Duncan + - Durstine + - Earl + - Easter + - Echard + - Eckhardstein + - Edwards + - Edwards + - Eggbert + - Ehret + - Elderson + - Eliza + - Elliott + - Ellis + - Enderly + - Endsley + - Evans + - Evans + - Ewing + - Faqua + - Faust + - Fea + - Feufer + - Fiddler + - Field + - Fields + - Finlay + - Fischer + - Fiscina + - Fisher + - Fisher + - Fitzgerald + - Fleming + - Flickinger + - Focell + - Foster + - Franks + - Fraser + - Fryer + - Fuchs + - Fulton + - Gadow + - Gardner + - Garland + - Garneys + - Garratt + - Garrison + - Gettemy + - Gibson + - Gibson + - Glover + - Goebbles + - Goodman + - Graham + - Gray + - Green + - Green + - Greenawalt + - Greene + - Greenwood + - Gregory + - Griffiths + - Gronko + - Guess + - Hall + - Hall + - Hanford + - Hardie + - Harding + - Hardy + - Harris + - Harrison + - Harrold + - Harrow + - Harshman + - Hastings + - Hawker + - Hawking + - Hawkins + - Hayhurst + - Haynes + - Heckendora + - Hegarty + - Henry + - Hice + - Highlands + - Hill + - Hill + - Hincken + - Hirleman + - Hoenshell + - Holdeman + - Holmes + - Hook + - Hooker + - Hoopengarner + - Hoover + - Houser + - Houston + - Howard + - Howe + - Huey + - Hughes + - Hughes + - Hujsak + - Hunt + - Hunt + - Hunter + - Hussain + - Hutton + - Hynes + - Ironmonger + - Isaman + - Isemann + - Ivanov + - Jackson + - Jackson + - James + - James + - James + - Jardine + - Jenkins + - Jenner + - Jerome + - Jesse + - Jewell + - Joghs + - Johnson + - Johnson + - Jones + - Jowers + - Joyce + - Judge + - Jyllian + - Kadel + - Kanaga + - Kaur + - Keener + - Kelley + - Kellogg + - Kelly + - Kemble + - Kemerer + - Keppel + - Kepplinger + - Khan + - Kiefer + - Kifer + - Kimple + - King + - King + - Kirkson + - Knapenberger + - Knapp + - Koepple + - Koster + - Kuster + - Kuznetsov + - Laborde + - Lacon + - Lafortune + - Langston + - Larson + - Lauffer + - Laurenzi + - Leach + - Lee + - Leech + - Leichter + - Leslie + - Lester + - Levett + - Lewis + - Lineman + - Linton + - Llora + - Lloyd + - Logue + - Lombardi + - Lord + - Losey + - Lowe + - Lowstetter + - Lucy + - Ludwig + - Maclagan + - Magor + - Marcotte + - Margaret + - Marriman + - Marshall + - Martins + - Mary + - Mason + - Mason + - Mathews + - Matthews + - McDonald + - McDonohugh + - McShain + - Mcclymonds + - Mccullough + - Mccune + - Mcfall + - Mcintosh + - Mckendrick + - Mcloskey + - Mcmullen + - Mens + - Merryman + - Metzer + - Meyers + - Mikhaylov + - Mildred + - Miller + - Miller + - Millhouse + - Mills + - Milne + - Mingle + - Minnie + - Mitchell + - Mitchell + - Mitchell + - Moberly + - Moon + - Moore + - Moore + - Morgan + - Morris + - Mortland + - Mosser + - Mueller + - Muggins + - Mull + - Muller + - Murphy + - Murray + - Murray + - Murray + - Nash + - Neely + - Nehling + - Newbern + - Newton + - Nicholas + - Nickolson + - Northey + - Noton + - Olphert + - Oneal + - Oppenheimer + - Osteen + - Osterweis + - Osterwise + - Otis + - Overstreet + - Owen + - Owens + - Palmer + - Parker + - Parkinson + - Patel + - Patterson + - Paulson + - Pavlov + - Paynter + - Pearsall + - Pennington + - Perkins + - Pershing + - Peters + - Petrov + - Pfeifer + - Philips + - Phillips + - Picard + - Pinney + - Poehl + - Poley + - Polson + - Potter + - Powell + - Power + - Powers + - Pratt + - Pratt + - Prechtl + - Prescott + - Prevatt + - Price + - Priebe + - Pritchard + - Pycroft + - Quinn + - Quirin + - Rader + - Rahl + - Ramos + - Randolph + - Ratcliff + - Rathen + - Rathens + - Raub + - Ray + - Reade + - Reichard + - Reid + - Reighner + - Rhinehart + - Richards + - Richards + - Richardson + - Richter + - Rifler + - Riggle + - Riker + - Ringer + - Roadman + - Roberts + - Roberts + - Roberts + - Robertson + - Robinson + - Robinson + - Roby + - Rockwell + - Rogers + - Rohtin + - Rose + - Rosensteel + - Rowley + - Russell + - Ryals + - Sagan + - Sanders + - Sandford + - Sandys + - Sauter + - Saylor + - Schaeffer + - Scherer + - Schmidt + - Schofield + - Schrader + - Scott + - Scott + - Sealis + - Seelig + - Seidner + - Semenov + - Shafer + - Shaffer + - Shaner + - Shaw + - Sheets + - Shick + - Shirey + - Sholl + - Shupe + - Sidower + - Siegrist + - Simmons + - Simpson + - Singh + - Skywalker + - Sloan + - Smail + - Smirnov + - Smith + - Smith + - Snyder + - Sommer + - Spock + - Stafford + - Stahl + - Stainforth + - Stall + - Stamos + - Stange + - Staymates + - Steele + - Stephenson + - Stern + - Stewart + - Stewart + - Stocker + - Stone + - Stough + - Straub + - Stroble + - Stroh + - Styles + - Sullivan + - Sulyard + - Summy + - Sutton + - Swabey + - Swarner + - Sybilla + - Taggart + - Tanner + - Taylor + - Teagarden + - Tedrow + - Tennant + - Thomas + - Thomas + - Thomlinson + - Thompson + - Thomson + - Thorley + - Tilton + - Tireman + - Todd + - Todd + - Treeby + - Trovato + - Turner + - Ulery + - Ullman + - Unk + - Vader + - Vanleer + - Vasilyev + - Waldron + - Walker + - Wallick + - Ward + - Ward + - Wardle + - Warren + - Watson + - Watson + - Webb + - Weeter + - Weinstein + - Weisgarber + - Wells + - Welty + - Wentzel + - Werner + - Werry + - Wheeler + - Wheeler + - Whirlow + - White + - White + - Whiteman + - Whittier + - Wible + - Wile + - Wilkerson + - Wilkinson + - Willey + - Williams + - Williamson + - Wilo + - Wilson + - Winton + - Wise + - Wolfe + - Wolff + - Wood + - Wood + - Woodward + - Woodward + - Woodworth + - Woolery + - Woollard + - Wright + - Yeskey + - Young + - Young + - Zadovsky + - Zalack + - Zaun + - Zeal + - Zimmer + - Zoucks diff --git a/Resources/Prototypes/Datasets/Names/mushman_first.yml b/Resources/Prototypes/Datasets/Names/mushman_first.yml new file mode 100644 index 0000000000..d438293bc9 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/mushman_first.yml @@ -0,0 +1,57 @@ +- type: dataset + id: names_mushman_first + values: + - Pleurocybella + - Geastrum + - Tricholoma + - Ganoderma + - Galerina + - Fistulina + - Gyromitra + - Leccinum + - Crucilulum + - Craterellus + - Geoglossum + - Helvella + - Exidia + - Clitocybe + - Psilocybe + - Panaeolus + - Amanita + - Paxillus + - Spheaerobolus + - Sparassis + - Lepiota + - Leotia + - Clavariadelphus + - Annulohypoxylon + - Pisolitus + - Pluteus + - Flammulina + - Marasmius + - Clavaria + - Stereum + - Cortinarius + - Lyophyllum + - Hydnum + - Poria + - Armillaria + - Hypsizygus + - Agaricus + - Omphalotus + - Boletus + - Boletopsis + - Gymnopilus + - Hericium + - Grifola + - Morchella + - Clathrus + - Pleurotus + - Discina + - Chalciporus + - Calvatia + - Caulorhiza + - Tremella + - Volvariella + - Hypholoma + - Lactarius diff --git a/Resources/Prototypes/Datasets/Names/mushman_last.yml b/Resources/Prototypes/Datasets/Names/mushman_last.yml new file mode 100644 index 0000000000..32fc3f2f8a --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/mushman_last.yml @@ -0,0 +1,100 @@ +- type: dataset + id: names_mushman_last + values: + - Porrigens + - Deceptiva + - Fornicatum + - Magnivelare + - Applanatum + - Marginata + - Abietis + - Hepatica + - Esculenta + - Scabrum + - Laeve + - Cornucopioides + - Fallax + - Lacunosa + - Glandulosa + - Caerulipes + - Cyanescens + - Novinupta + - Involutus + - Bisporus + - Rubidus + - Stellatus + - Crispa + - Campestris + - Castenea + - Viscosa + - Occidentalis + - Lanei + - Thouarsianum + - Brunneoincarnata + - Josserandi + - Tinctorius + - Phalloides + - Cervinus + - Ocreata + - Subjunquillea + - Velutipes + - Virosa + - Oreades + - Vermicularis + - Rivulosa + - Hirsutum + - Verna + - Orellanus + - Decastes + - Tubaeformis + - Constricta + - Exitialis + - Caperatus + - Umbilicatum + - Cocos + - Mellea + - Tessulatus + - Arvensis + - Dealbata + - Olearius + - Edulis + - Baeocystis + - Leucomelaena + - Caerulescens + - Junonius + - Erinaceum + - Aeruginosus + - Frondosa + - Elata + - Archeri + - Tropicalis + - Pantherina + - Piperaturs + - Perlata + - Orcharaceus + - Augustus + - Subsculpta + - Cyathiformis + - Regineus + - Erubescens + - Rubripes + - Umbonata + - Lucidium + - Eastwoodiae + - Sculpta + - Edodes + - Fuciformis + - Velosa + - Rex-ceris + - Volvacea + - Fasciculare + - Bitorquis + - Flaviporus + - Pachycolea + - Subaldidus + - Rugosoannulata + - Subrutilescens + - Nuda + - Torminosus + - Equestre + - Xanthodermus diff --git a/Resources/Prototypes/Datasets/Names/ninja.yml b/Resources/Prototypes/Datasets/Names/ninja.yml new file mode 100644 index 0000000000..d284661392 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/ninja.yml @@ -0,0 +1,47 @@ +- type: dataset + id: names_ninja + values: + - Shadow + - Sarutobi + - Smoke + - Rain + - Scorpion + - Zero + - Ermac + - Saibot + - Cyrax + - Raphael + - Michaelangelo + - Donatello + - Leonardo + - Splinter + - Shredder + - Hazuki + - Hien + - Hiryu + - Ryu + - Hayabusa + - Midnight + - Seven + - McNinja + - Hanzo + - Blood + - Iga + - Koga + - Hero + - Hiro + - Phantom + - Baki + - Ogre + - Daemon + - Goemon + - McAwesome + - Throat + - Death + - Aria + - Bro + - Fox + - Null + - Raiden + - Samurai + - Eater diff --git a/Resources/Prototypes/Datasets/Names/ninja_title.yml b/Resources/Prototypes/Datasets/Names/ninja_title.yml new file mode 100644 index 0000000000..07029d0c15 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/ninja_title.yml @@ -0,0 +1,49 @@ +- type: dataset + id: names_ninja_title + values: + - Master + - Sensei + - Swift + - Merciless + - Assassin + - Rogue + - Hunter + - Widower + - Orphaner + - Stalker + - Killer + - Silent + - Silencing + - Quick + - Agile + - Merciful + - Ninja + - Shinobi + - Initiate + - Grandmaster + - Strider + - Striker + - Slayer + - Awesome + - Ender + - Dr. + - Noob + - Night + - Crimson + - Grappler + - Ulimate + - Remorseless + - Deep + - Dragon + - Cruel + - Nightshade + - Black + - Gray + - Solid + - Liquid + - Solidus + - Steel + - Nickel + - Silver + - Singing + - Snake diff --git a/Resources/Prototypes/Datasets/Names/wizard_first.yml b/Resources/Prototypes/Datasets/Names/wizard_first.yml new file mode 100644 index 0000000000..6fa5dbf82f --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/wizard_first.yml @@ -0,0 +1,40 @@ +- type: dataset + id: names_wizard_first + values: + - Alatar + - Archchancellor + - Boccob + - Circe + - Doctor + - Dumbledor + - Elminister + - Gandalf + - Grimm + - Gulstaff + - Houdini + - Jim + - Kaschei + - Khelben + - Kreol + - Lina + - Merlin + - Mogan + - Mordenkainen + - Morgan + - Mystryl + - Nihilus + - Palando + - Prospero + - Radagast + - Raistlin + - Rasputin + - Saruman + - Tenser + - Terefi + - Tzeentch + - Urza + - Vaarsuvius + - Vecna + - Yoda + - Zagyg + - Zul diff --git a/Resources/Prototypes/Datasets/Names/wizard_last.yml b/Resources/Prototypes/Datasets/Names/wizard_last.yml new file mode 100644 index 0000000000..34b51f4967 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/wizard_last.yml @@ -0,0 +1,43 @@ +- type: dataset + id: names_wizard_last + values: + - Dark + - Darkmagic + - Darko + - Gray + - Honko + - Inverse + - Shado + - Smith + - Unseen + - Weatherwax + - Whom + - Yagg + - le Fay + - of Void + - the All Knowing + - the Amazing + - the Bandit Killer + - the Benevolent + - the Blue + - the Brown + - the Conquerer + - the Deathless + - the Destroyer + - the Dragon Spooker + - the Emperor + - the Gray + - the Great + - the Magician + - the Powerful + - the Raven + - the Red + - the Remorseful + - the Seething + - the Sorcelator + - the Spiral King + - the Unending + - the Unstoppable + - the Weeping + - the White + - the Wise diff --git a/Resources/Prototypes/Datasets/news.yml b/Resources/Prototypes/Datasets/news.yml new file mode 100644 index 0000000000..b99d020b13 --- /dev/null +++ b/Resources/Prototypes/Datasets/news.yml @@ -0,0 +1,85 @@ +- type: dataset + id: news + values: + - "Tree stuck in tajaran; firefighters baffled." + - "Armadillos want aardvarks removed from dictionary claims 'here first'." + - "Angel found dancing on pinhead ordered to stop; cited for public nuisance." + - "Letters claim they are better than number; 'Always have been'." + - "Pens proclaim pencils obsolete, 'lead is dead'." + - "Rock and paper sues scissors for discrimination." + - "Steak tell-all book reveals he never liked sitting by potato." + - "Woodchuck stops counting how many times he’s chucked 'Never again'." +# - "{{AFFECTED}} clerk first person able to pronounce '@*$%!'." +# - "{{AFFECTED}} delis serving boiled paperback dictionaries, 'Adjectives chewy' customers declare." +# - "{{AFFECTED}} weather deemed 'boring'; meteors and rad storms to be imported." +# - "Most {{AFFECTED}} security officers prefer cream over sugar." +# - "Palindrome speakers conference in {{AFFECTED}}; 'Wow!' says Otto." +# - "Question mark worshipped as deity by ancient {{AFFECTED}} dwellers." +# - "Spilled milk causes whole {{AFFECTED}} populace to cry." +# - "World largest carp patty at display on {{AFFECTED}}." + - "'Here kitty kitty' no longer preferred tajaran retrieval technique." + - "Man travels 7000 light years to retrieve lost hankie, 'It was my favourite'." + - "New bowling lane that shoots mini-meteors at bowlers very popular." +# - "Guy gets tattoo of Tau Ceti on chest '[pick("CentComm","star","starship","asteroid")] tickles most'." + - "Skrell marries computer; wedding attended by 100 modems." + - "Chef reports successfully using harmonica as cheese grater." + - "Nanotrasen invents handkerchief that says 'Bless you' after sneeze." + - "Clone accused of posing for other clones’s school photo." + - "Clone accused of stealing other clones’s employee of the month award." + - "Woman robs station with hair dryer; crewmen love new style." + - "This space for rent." +# - "{{AFFECTED}} Baker Wins Pickled Crumpet Toss Three Years Running" + - "Skrell Scientist Discovers Abacus Can Be Used To Dry Towels" + - "Survey: 'Cheese Louise' Voted Best Pizza Restaurant In Tau Ceti" +# - "I Was Framed, jokes {{AFFECTED}} artist" +# - "Mysterious Loud Rumbling Noises In {{AFFECTED}} Found To Be Mysterious Loud Rumblings" +# - "Alien ambassador becomes lost on {{AFFECTED}}, refuses to ask for directions" + - "Swamp Gas Verified To Be Exhalations Of Stars--Movie Stars--Long Passed" + - "Tainted Broccoli Weapon Of Choice For Syndicate Assassins" + - "Chefs Find Broccoli Effective Tool For Cutting Cheese" + - "Broccoli Found To Cause Grumpiness In Monkeys" +# - "Survey: 80% Of People on {{AFFECTED}} Love Clog-Dancing" + - "Giant Hairball Has Perfect Grammar But Rolls rr's Too Much, Linguists Say" +# - "{{AFFECTED}} Phonebooks Print All Wrong Numbers; Results In 15 New Marriages" +# - "Tajaran Burglar Spotted on {{AFFECTED}}, Mistaken For Dalmatian" + - "Gibson Gazette Updates Frequently Absurd, Poll Indicates" +# - "Esoteric Verbosity Culminates In Communicative Ennui, {{AFFECTED}} Academics Note" + - "Taj Demand Longer Breaks, Cleaner Litter, Slower Mice" + - "Survey: 3 Out Of 5 Skrell Loathe Modern Art" + - "Skrell Scientist Discovers Gravity While Falling Down Stairs" +# - "Boy Saves Tajaran From Tree on {{AFFECTED}}, Thousands Cheer" +# - "Shipment Of Apples Overturns, {{AFFECTED}} Diner Offers Applesauce Special" +# - "Spotted Owl Spotted on {{AFFECTED}}" + - "Humans Everywhere Agree: Purring Tajarans Are Happy Tajarans" + - "From The Desk Of Wise Guy Sammy: One Word In This Gazette Is Sdrawkcab" + - "From The Desk Of Wise Guy Sammy: It's Hard To Have Too Much Shelf Space" + - "From The Desk Of Wise Guy Sammy: Wine And Friendships Get Better With Age" + - "From The Desk Of Wise Guy Sammy: The Insides Of Golf Balls Are Mostly Rubber Bands" + - "From The Desk Of Wise Guy Sammy: You Don't Have To Fool All The People, Just The Right Ones" + - "From The Desk Of Wise Guy Sammy: If You Made The Mess, You Clean It Up" + - "From The Desk Of Wise Guy Sammy: It Is Easier To Get Forgiveness Than Permission" + - "From The Desk Of Wise Guy Sammy: Check Your Facts Before Making A Fool Of Yourself" + - "From The Desk Of Wise Guy Sammy: You Can't Outwait A Bureaucracy" + - "From The Desk Of Wise Guy Sammy: It's Better To Yield Right Of Way Than To Demand It" + - "From The Desk Of Wise Guy Sammy: A Person Who Likes Cats Can't Be All Bad" + - "From The Desk Of Wise Guy Sammy: Help Is The Sunny Side Of Control" + - "From The Desk Of Wise Guy Sammy: Two Points Determine A Straight Line" + - "From The Desk Of Wise Guy Sammy: Reading Improves The Mind And Lifts The Spirit" + - "From The Desk Of Wise Guy Sammy: Better To Aim High And Miss Then To Aim Low And Hit" + - "From The Desk Of Wise Guy Sammy: Meteors Often Strike The Same Place More Than Once" + - "Tommy B. Saif Sez: Look Both Ways Before Boarding The Shuttle" + - "Tommy B. Saif Sez: Hold On; Sudden Stops Sometimes Necessary" + - "Tommy B. Saif Sez: Keep Fingers Away From Moving Panels" + - "Tommy B. Saif Sez: No Left Turn, Except Shuttles" + - "Tommy B. Saif Sez: Return Seats And Trays To Their Proper Upright Position" + - "Tommy B. Saif Sez: Eating And Drinking In Docking Bays Is Prohibited" + - "Tommy B. Saif Sez: Accept No Substitutes, And Don't Be Fooled By Imitations" + - "Tommy B. Saif Sez: Do Not Remove This Tag Under Penalty Of Law" + - "Tommy B. Saif Sez: Always Mix Thoroughly When So Instructed" + - "Tommy B. Saif Sez: Try To Keep Six Month's Expenses In Reserve" + - "Tommy B. Saif Sez: Change Not Given Without Purchase" + - "Tommy B. Saif Sez: If You Break It, You Buy It" + - "Tommy B. Saif Sez: Reservations Must Be Cancelled 48 Hours Prior To Event To Obtain Refund" + - "Doughnuts: Is There Anything They Can't Do" + - "If Tin Whistles Are Made Of Tin, What Do They Make Foghorns Out Of?" + - "Broccoli discovered to be colonies of tiny aliens with murder on their minds" diff --git a/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml b/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml index be690e8ef3..67ef75c4fa 100644 --- a/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml +++ b/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml @@ -15,6 +15,7 @@ sprite: Clothing/Back/Backpacks/backpack.rsi - type: Storage capacity: 100 + storageSoundCollection : storageRustle - type: entity parent: ClothingBackpack @@ -95,7 +96,7 @@ - type: entity parent: ClothingBackpack - id: ClothingBackpackBotany + id: ClothingBackpackHydroponics name: botany backpack description: It's a backpack made of all-natural fibers. components: @@ -130,4 +131,5 @@ shader: unshaded - type: Clothing sprite: Clothing/Back/Backpacks/holding.rsi - HeldPrefix: holding + - type: Storage + capacity: 10000 diff --git a/Resources/Prototypes/Entities/Clothing/Back/duffel.yml b/Resources/Prototypes/Entities/Clothing/Back/duffel.yml index b9a4cfee00..fb5b80355a 100644 --- a/Resources/Prototypes/Entities/Clothing/Back/duffel.yml +++ b/Resources/Prototypes/Entities/Clothing/Back/duffel.yml @@ -15,6 +15,7 @@ - back - type: Storage capacity: 100 + storageSoundCollection : storageRustle - type: entity parent: ClothingBackpackDuffel @@ -71,6 +72,39 @@ - type: Clothing sprite: Clothing/Back/Duffels/security.rsi +- type: entity + parent: ClothingBackpackDuffel + id: ClothingBackpackDuffelChemistry + name: chemistry duffel bag + description: "A large duffel bag for holding extra beakers and test tubes." + components: + - type: Sprite + sprite: Clothing/Back/Duffels/chemistry.rsi + - type: Clothing + sprite: Clothing/Back/Duffels/chemistry.rsi + +- type: entity + parent: ClothingBackpackDuffel + id: ClothingBackpackDuffelMime + name: mime duffel bag + description: "A large duffel bag for holding... mime... stuff." + components: + - type: Sprite + sprite: Clothing/Back/Duffels/mime.rsi + - type: Clothing + sprite: Clothing/Back/Duffels/mime.rsi + +- type: entity + parent: ClothingBackpackDuffel + id: ClothingBackpackDuffelScience + name: science duffel bag + description: "A large duffel bag for holding extra science related goods." + components: + - type: Sprite + sprite: Clothing/Back/Duffels/science.rsi + - type: Clothing + sprite: Clothing/Back/Duffels/science.rsi + - type: entity parent: ClothingBackpackDuffel id: ClothingBackpackDuffelSyndicate @@ -81,3 +115,45 @@ sprite: Clothing/Back/Duffels/syndicate.rsi - type: Clothing sprite: Clothing/Back/Duffels/syndicate.rsi + +- type: entity + parent: ClothingBackpackDuffelSyndicate + id: ClothingBackpackDuffelSyndicateAmmo + name: syndicate duffel bag + components: + - type: Sprite + sprite: Clothing/Back/Duffels/syndicate.rsi + state: icon-ammo + - type: Clothing + sprite: Clothing/Back/Duffels/syndicate.rsi + ClothingPrefix: ammo + +- type: entity + parent: ClothingBackpackDuffelSyndicate + id: ClothingBackpackDuffelSyndicateMedical + name: syndicate duffel bag + components: + - type: Sprite + sprite: Clothing/Back/Duffels/syndicate.rsi + state: icon-med + - type: Clothing + sprite: Clothing/Back/Duffels/syndicate.rsi + ClothingPrefix: med + +- type: entity + parent: ClothingBackpackDuffel + id: ClothingBackpackDuffelHolding + name: duffelbag of holding + description: A duffelbag that opens into a localized pocket of bluespace. + components: + - type: Sprite + sprite: Clothing/Back/Duffels/holding.rsi + state: icon + layers: + - state: icon + - state: icon-unlit + shader: unshaded + - type: Clothing + sprite: Clothing/Back/Duffels/holding.rsi + - type: Storage + capacity: 10000 diff --git a/Resources/Prototypes/Entities/Clothing/Back/satchel.yml b/Resources/Prototypes/Entities/Clothing/Back/satchel.yml index 25ee88fc3b..c2b7944466 100644 --- a/Resources/Prototypes/Entities/Clothing/Back/satchel.yml +++ b/Resources/Prototypes/Entities/Clothing/Back/satchel.yml @@ -15,7 +15,8 @@ sprite: Clothing/Back/Satchels/satchel.rsi - type: Storage capacity: 100 - + storageSoundCollection : storageRustle + - type: entity parent: ClothingBackpackSatchel id: ClothingBackpackSatchelEngineering @@ -92,3 +93,21 @@ sprite: Clothing/Back/Satchels/hydroponics.rsi - type: Clothing sprite: Clothing/Back/Satchels/hydroponics.rsi + +- type: entity + parent: ClothingBackpackSatchel + id: ClothingBackpackSatchelHolding + name: satchel of holding + description: A satchel that opens into a localized pocket of bluespace. + components: + - type: Sprite + sprite: Clothing/Back/Satchels/holding.rsi + state: icon + layers: + - state: icon + - state: icon-unlit + shader: unshaded + - type: Clothing + sprite: Clothing/Back/Satchels/holding.rsi + - type: Storage + capacity: 10000 diff --git a/Resources/Prototypes/Entities/Clothing/Belt/belts.yml b/Resources/Prototypes/Entities/Clothing/Belt/belts.yml index e7af7db6e1..46be688719 100644 --- a/Resources/Prototypes/Entities/Clothing/Belt/belts.yml +++ b/Resources/Prototypes/Entities/Clothing/Belt/belts.yml @@ -35,7 +35,7 @@ - type: Clothing sprite: Clothing/Belt/ce.rsi - type: Storage - capacity: 60 + capacity: 100 - type: entity parent: ClothingBeltBase diff --git a/Resources/Prototypes/Entities/Clothing/Eyes/glasses.yml b/Resources/Prototypes/Entities/Clothing/Eyes/glasses.yml index f69ebf0b50..a0e5f0064f 100644 --- a/Resources/Prototypes/Entities/Clothing/Eyes/glasses.yml +++ b/Resources/Prototypes/Entities/Clothing/Eyes/glasses.yml @@ -19,6 +19,8 @@ sprite: Clothing/Eyes/Glasses/gar.rsi - type: Clothing sprite: Clothing/Eyes/Glasses/gar.rsi + - type: MeleeWeapon + damage: 10 - type: entity parent: ClothingEyesBase @@ -32,6 +34,9 @@ - type: Clothing sprite: Clothing/Eyes/Glasses/gar.rsi HeldPrefix: alt + ClothingPrefix: alt + - type: MeleeWeapon + damage: 10 - type: entity parent: ClothingEyesBase @@ -44,7 +49,9 @@ state: icon-super - type: Clothing sprite: Clothing/Eyes/Glasses/gar.rsi - HeldPrefix: super + ClothingPrefix: super + - type: MeleeWeapon + damage: 10 - type: entity parent: ClothingEyesBase diff --git a/Resources/Prototypes/Entities/Clothing/Head/base.yml b/Resources/Prototypes/Entities/Clothing/Head/base.yml index d35da8e880..a7cb46c395 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base.yml @@ -29,3 +29,33 @@ - type: PressureProtection highPressureMultiplier: 0.5 lowPressureMultiplier: 100 + +- type: entity + parent: ClothingHeadHardsuitBase + id: ClothingHeadHardsuitWithLightBase + name: base hardsuit helmet with light + abstract: true + components: + - type: Sprite + layers: + - state: icon + - state: icon-flash + visible: false + - type: Clothing + HeldPrefix: off + ClothingPrefix: off + - type: PointLight + enabled: false + radius: 3 + - type: LoopingSound + - type: Appearance + visuals: + - type: FlashLightVisualizer + - type: ItemActions + actions: + - actionType: ToggleLight + # right now there is no power system for hardsuits + # so hardsuit helmet just have small battery inside + - type: HandheldLight + - type: PowerCellSlot + startingCellType: PowerCellSmallHigh diff --git a/Resources/Prototypes/Entities/Clothing/Head/hardsuit-helmets.yml b/Resources/Prototypes/Entities/Clothing/Head/hardsuit-helmets.yml index f663e3ffd6..cfa983df68 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/hardsuit-helmets.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/hardsuit-helmets.yml @@ -1,5 +1,5 @@ - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitAtmos name: atmos hardsuit helmet description: A special hardsuit helmet designed for working in low-pressure, high thermal environments. @@ -32,7 +32,7 @@ sprite: Clothing/Head/Hardsuits/deathsquad.rsi - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitEngineering name: engineering hardsuit helmet description: An engineering hardsuit helmet designed for working in low-pressure, high radioactive environments. @@ -46,7 +46,7 @@ lowPressureMultiplier: 100 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitEngineeringWhite name: CE hardsuit helmet description: Special hardsuit helmet, made for the chief engineer of the station. @@ -71,7 +71,7 @@ lowPressureMultiplier: 100 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitMedical name: medical hardsuit helmet description: Lightweight medical hardsuit helmet that doesn't restrict your head movements. @@ -85,9 +85,9 @@ lowPressureMultiplier: 55 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitRd - name: rd hardsuit helmet + name: research director's hardsuit helmet description: Lightweight hardsuit helmet that doesn't restrict your head movements. components: - type: Sprite @@ -99,7 +99,7 @@ lowPressureMultiplier: 55 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitSalvage name: salvage hardsuit helmet description: A special helmet designed for work in a hazardous, low pressure environment. Has reinforced plating for wildlife encounters and dual floodlights. @@ -113,7 +113,7 @@ lowPressureMultiplier: 100 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitSecurity name: security hardsuit helmet description: Armored hardsuit helmet for security needs. @@ -127,7 +127,7 @@ lowPressureMultiplier: 100 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitSecurityRed name: hos hardsuit helmet description: Red armored hardsuit helmet for security needs. Belongs to the HoS. @@ -141,7 +141,7 @@ lowPressureMultiplier: 100 - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitSyndie name: blood red hardsuit helmet description: An advanced red hardsuit helmet designed for work in special operations. @@ -150,9 +150,11 @@ sprite: Clothing/Head/Hardsuits/syndicate.rsi - type: Clothing sprite: Clothing/Head/Hardsuits/syndicate.rsi + - type: PointLight + color: green - type: entity - parent: ClothingHeadHardsuitBase + parent: ClothingHeadHardsuitWithLightBase id: ClothingHeadHelmetHardsuitWizard name: wizard hardsuit helmet description: A bizarre gem-encrusted helmet that radiates magical energies. diff --git a/Resources/Prototypes/Entities/Clothing/Head/hats.yml b/Resources/Prototypes/Entities/Clothing/Head/hats.yml index 1de485dd3f..783c4e9186 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/hats.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/hats.yml @@ -23,7 +23,7 @@ - type: entity parent: ClothingHeadBase id: ClothingHeadHatBeretEngineering - name: beret engineering + name: engineering beret description: A beret with the engineering insignia emblazoned on it. For engineers that are more inclined towards style than safety. components: - type: Sprite @@ -34,7 +34,7 @@ - type: entity parent: ClothingHeadBase id: ClothingHeadHatBeretHoS - name: beret HoS + name: HoS beret description: A black beret with a commander's rank emblem. For officers that are more inclined towards style than safety. components: - type: Sprite @@ -45,7 +45,7 @@ - type: entity parent: ClothingHeadBase id: ClothingHeadHatBeretWarden - name: beret warden + name: warden's hat description: A corporate blue beret with a warden's rank emblem. For officers that are more inclined towards style than safety. components: - type: Sprite @@ -67,7 +67,7 @@ - type: entity parent: ClothingHeadBase id: ClothingHeadHatCaptain - name: captain + name: captain's hardhat description: It's good being the king. components: - type: Sprite @@ -78,7 +78,7 @@ - type: entity parent: ClothingHeadBase id: ClothingHeadHatCardborg - name: cardborg + name: cardborg helmet description: A hat made out of a box. components: - type: Sprite @@ -89,7 +89,7 @@ - type: entity parent: ClothingHeadBase id: ClothingHeadHatCentcom - name: centcom + name: centcom brand hat description: "It's good to be the emperor." components: - type: Sprite diff --git a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml index 3f715de010..aeb39f43e1 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml @@ -2,7 +2,7 @@ parent: ClothingNeckBase id: ClothingNeckCloakCap name: captain's cloak - description: A pompous and comfy blue cloak with a nice gold trim. + description: A pompous and comfy blue cloak with a nice gold trim, while not particularly valuable as your other posessions, it sure is fancy. components: - type: Sprite sprite: Clothing/Neck/Cloaks/cap.rsi @@ -13,7 +13,7 @@ parent: ClothingNeckBase id: ClothingNeckCloakHos name: HoS's cloak - description: An exquisite dark and red cloak of a Head of Security. + description: An exquisite dark and red cloak fitting for those who can assert dominance over wrongdoers. Take a stab at being civil in prosecution! components: - type: Sprite sprite: Clothing/Neck/Cloaks/hos.rsi @@ -24,7 +24,7 @@ parent: ClothingNeckBase id: ClothingNeckCloakCe name: CE's cloak - description: A dark green cloak with light blue ornaments. + description: A dark green cloak with light blue ornaments, given to those who proved themselves to master the precise art of engineering. components: - type: Sprite sprite: Clothing/Neck/Cloaks/ce.rsi @@ -34,9 +34,9 @@ - type: entity parent: ClothingNeckBase - id: CloathingCloakCmo + id: ClothingCloakCmo name: CMO's cloak - description: A sterile blue cloak with a green cross. + description: A sterile blue cloak with a green cross, radiating with a sense of duty and willingness to help others. components: - type: Sprite sprite: Clothing/Neck/Cloaks/cmo.rsi @@ -47,7 +47,7 @@ parent: ClothingNeckBase id: ClothingNeckCloakRd name: RD's cloak - description: A white cloak with violet stripes. + description: A white cloak with violet stripes, showing your status as the arbiter of cutting-edge technology. components: - type: Sprite sprite: Clothing/Neck/Cloaks/rd.rsi @@ -58,7 +58,7 @@ parent: ClothingNeckBase id: ClothingNeckCloakQm name: QM's cloak - description: A strong brown cloak with a reflective stripe. + description: A strong brown cloak with a reflective stripe, while not as fancy as others, it does show your managing skills. components: - type: Sprite sprite: Clothing/Neck/Cloaks/qm.rsi @@ -69,7 +69,7 @@ parent: ClothingNeckBase id: ClothingNeckCloakHop name: HoP's cloak - description: A blue cloak with red shoudlers and gold buttons. + description: A blue cloak with red shoudlers and gold buttons, proving you are the gatekeeper to any airlock on the station. components: - type: Sprite sprite: Clothing/Neck/Cloaks/hop.rsi diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/armor.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/armor.yml index ff12784eb7..da84209ac2 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/armor.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/armor.yml @@ -1,7 +1,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorReflective - name: armor (reflective) + name: reflective vest description: An armored vest with advanced shielding to protect against energy weapons. components: - type: Sprite @@ -12,7 +12,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorBulletproof - name: bulletproof + name: bulletproof vest description: An armored vest with heavy plates to protect against ballistic projectiles. components: - type: Sprite @@ -23,7 +23,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorCult - name: cult armor + name: acolyte armor description: An evil-looking cult armor, made of bones. components: - type: Sprite @@ -34,7 +34,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorHeavy - name: heavy + name: heavy armor suit description: A heavily armored suit that protects against excessive damage. components: - type: Sprite @@ -45,7 +45,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorHeavyGreen - name: heavy + name: green heavy armor suit description: A heavily armored suit with green accents that protects against excessive damage. components: - type: Sprite @@ -56,7 +56,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorHeavyRed - name: heavy + name: red heavy armor suit description: A heavily armored suit with red accents that protects against excessive damage. components: - type: Sprite @@ -89,8 +89,8 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorRiot - name: riot - description: An armored vest with heavy padding to protect against melee attacks. + name: riot suit + description: An armored vest with heavy padding to protect against melee attacks, perfect for fighting delinquents around the station. components: - type: Sprite sprite: Clothing/OuterClothing/Armor/riot.rsi @@ -100,7 +100,7 @@ - type: entity parent: ClothingOuterBase id: ClothingOuterArmorScaf - name: scaf + name: scaf suit description: A green and brown tactical suit for combat situations. components: - type: Sprite diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml index b007d8e761..7600d0814d 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml @@ -1,15 +1,3 @@ -- type: entity - parent: ClothingShoesBase - id: ClothingShoesBootsMag - name: magboots - description: Magnetic boots, often used during extravehicular activity to ensure the user remains safely attached to the vehicle. - components: - - type: Sprite - sprite: Clothing/Shoes/Boots/magboots.rsi - state: icon - - type: Clothing - sprite: Clothing/Shoes/Boots/magboots.rsi - - type: entity parent: ClothingShoesBase id: ClothingShoesBootsWork diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml b/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml new file mode 100644 index 0000000000..11a647d703 --- /dev/null +++ b/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml @@ -0,0 +1,15 @@ +- type: entity + parent: ClothingShoesBase + id: ClothingShoesBootsMag + name: magboots + description: Magnetic boots, often used during extravehicular activity to ensure the user remains safely attached to the vehicle. + components: + - type: Sprite + sprite: Clothing/Shoes/Boots/magboots.rsi + state: icon + - type: Clothing + sprite: Clothing/Shoes/Boots/magboots.rsi + - type: Magboots + - type: ItemActions + actions: + - actionType: ToggleMagboots diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/bookshelf.yml b/Resources/Prototypes/Entities/Constructible/Furniture/bookshelf.yml index 713433842b..e151c5db20 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/bookshelf.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/bookshelf.yml @@ -25,8 +25,6 @@ thresholds: 30: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/woodhit.ogg - !type:SpawnEntitiesBehavior @@ -34,6 +32,9 @@ WoodPlank: min: 1 max: 1 + - !type:DoActsBehavior + acts: ["Destruction"] + - type: Occluder sizeX: 32 sizeY: 32 diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/potted_plants.yml b/Resources/Prototypes/Entities/Constructible/Furniture/potted_plants.yml index a5bcf67edd..8272e0e572 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/potted_plants.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/potted_plants.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity id: PottedPlantBase abstract: true components: @@ -23,6 +23,8 @@ - type: Sprite sprite: Constructible/Misc/potted_plants.rsi - type: PottedPlantHide + - type: SecretStash + secretPartName: the plant - type: Anchorable - type: Pullable diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml b/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml index 858df8f07e..fae372caf0 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml @@ -119,7 +119,7 @@ shapes: - !type:PhysShapeAabb bounds: "-0.45, -0.3, 0.35, 0.3" - layer: [ MobMask ] + layer: [ Passable ] - type: entity name: wooden chair diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml b/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml index 2a25501675..6d960128fa 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml @@ -33,8 +33,6 @@ thresholds: 30: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -42,6 +40,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity id: Shelf @@ -78,8 +78,6 @@ thresholds: 30: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -87,3 +85,5 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/tables.yml b/Resources/Prototypes/Entities/Constructible/Furniture/tables.yml index e003cd0813..1b279f4080 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/tables.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/tables.yml @@ -41,8 +41,6 @@ thresholds: 15: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -50,6 +48,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity id: TableFrame @@ -67,8 +67,6 @@ thresholds: 1: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -76,6 +74,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: TableFrame @@ -96,8 +96,6 @@ thresholds: 1: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -105,6 +103,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity id: TableMetal @@ -122,8 +122,6 @@ thresholds: 15: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -131,6 +129,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: MetalTable @@ -151,8 +151,6 @@ thresholds: 75: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -160,6 +158,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: ReinforcedTable @@ -180,8 +180,6 @@ thresholds: 5: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/glass_break2.ogg - !type:SpawnEntitiesBehavior @@ -189,6 +187,8 @@ ShardGlass: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: GlassTable @@ -209,8 +209,6 @@ thresholds: 20: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/glass_break2.ogg - !type:SpawnEntitiesBehavior @@ -218,6 +216,8 @@ ShardGlass: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: RGlassTable @@ -238,8 +238,6 @@ thresholds: 15: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/woodhit.ogg - !type:SpawnEntitiesBehavior @@ -247,6 +245,8 @@ WoodPlank: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: WoodTable @@ -267,8 +267,6 @@ thresholds: 15: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/woodhit.ogg - !type:SpawnEntitiesBehavior @@ -276,6 +274,8 @@ WoodPlank: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Construction graph: Tables node: PokerTable @@ -296,10 +296,10 @@ thresholds: 50: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/picaxe2.ogg + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity id: TableDebug diff --git a/Resources/Prototypes/Entities/Constructible/Ground/gascanisterports.yml b/Resources/Prototypes/Entities/Constructible/Ground/gascanisterports.yml index a38ca76f30..52fbfd854c 100644 --- a/Resources/Prototypes/Entities/Constructible/Ground/gascanisterports.yml +++ b/Resources/Prototypes/Entities/Constructible/Ground/gascanisterports.yml @@ -10,6 +10,12 @@ - type: SnapGrid offset: Center - type: Sprite + netsync: false + sprite: Constructible/Atmos/gascanisterport.rsi + layers: + - sprite: Constructible/Atmos/pipe.rsi + state: pipeHalf + - state: gasCanisterPort - type: Damageable - type: Destructible thresholds: @@ -21,14 +27,11 @@ - type: entity parent: GasCanisterPortBase - id: FourwayGasCanisterPort - name: Fourway Gas Canister Port + id: GasCanisterPort + name: Gas Canister Port components: - type: NodeContainer nodes: - !type:PipeNode nodeGroupID: Pipe - pipeDirection: Fourway - - type: Sprite - sprite: Constructible/Power/smes.rsi - state: smes + pipeDirection: East diff --git a/Resources/Prototypes/Entities/Constructible/Ground/gasfilters.yml b/Resources/Prototypes/Entities/Constructible/Ground/gasfilters.yml new file mode 100644 index 0000000000..19a2f0e1cb --- /dev/null +++ b/Resources/Prototypes/Entities/Constructible/Ground/gasfilters.yml @@ -0,0 +1,51 @@ +- type: entity + abstract: true + id: GasFilterBase + placement: + mode: SnapgridCenter + components: + - type: Clickable + - type: InteractionOutline + - type: Physics + - type: SnapGrid + offset: Center + - type: Damageable + resistances: metallicResistances + - type: Destructible + thresholds: + 100: + behaviors: + - !type:DoActsBehavior + acts: ["Destruction"] + - type: Sprite + netsync: false + sprite: Constructible/Atmos/gasfilter.rsi + layers: + - sprite: Constructible/Atmos/pipe.rsi + state: pipeTJunction + - state: gasFilter + - type: Appearance + visuals: + - type: GasFilterVisualizer + +- type: entity + parent: GasFilterBase + id: GasFilter + name: Gas Filter + description: It filters gases. + components: + - type: NodeContainer + nodes: + - !type:PipeNode + nodeGroupID: Pipe + pipeDirection: South + - !type:PipeNode + nodeGroupID: Pipe + pipeDirection: East + - !type:PipeNode + nodeGroupID: Pipe + pipeDirection: North + - type: GasFilter + inletDirection: South + filterOutletDirection: East + outletDirection: North diff --git a/Resources/Prototypes/Entities/Constructible/Ground/pipes.yml b/Resources/Prototypes/Entities/Constructible/Ground/pipes.yml index 70c92e76a5..1d0732e4d3 100644 --- a/Resources/Prototypes/Entities/Constructible/Ground/pipes.yml +++ b/Resources/Prototypes/Entities/Constructible/Ground/pipes.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity abstract: true id: PipeBase name: Pipe @@ -19,10 +19,10 @@ - !type:DoActsBehavior acts: ["Destruction"] - type: Sprite + netsync: false - type: Appearance visuals: - type: PipeVisualizer - pipeRSI: Constructible/Atmos/pipe.rsi - type: Icon sprite: Constructible/Atmos/pipe.rsi @@ -39,7 +39,7 @@ nodeGroupID: Pipe pipeDirection: East - type: Icon - state: pipeHalf2 + state: pipeHalf - type: entity parent: PipeBase @@ -52,7 +52,7 @@ nodeGroupID: Pipe pipeDirection: Lateral - type: Icon - state: pipeStraight2 + state: pipeStraight - type: entity parent: PipeBase @@ -65,7 +65,7 @@ nodeGroupID: Pipe pipeDirection: SEBend - type: Icon - state: pipeBend2 + state: pipeBend - type: entity parent: PipeBase @@ -78,7 +78,7 @@ nodeGroupID: Pipe pipeDirection: TEast - type: Icon - state: pipeTJunction2 + state: pipeTJunction - type: entity parent: PipeBase @@ -91,4 +91,4 @@ nodeGroupID: Pipe pipeDirection: Fourway - type: Icon - state: pipeFourway2 + state: pipeFourway diff --git a/Resources/Prototypes/Entities/Constructible/Ground/pumps.yml b/Resources/Prototypes/Entities/Constructible/Ground/pumps.yml index 31c2f366af..fc5f3d712c 100644 --- a/Resources/Prototypes/Entities/Constructible/Ground/pumps.yml +++ b/Resources/Prototypes/Entities/Constructible/Ground/pumps.yml @@ -18,9 +18,15 @@ - !type:DoActsBehavior acts: ["Destruction"] - type: Sprite + netsync: false sprite: Constructible/Atmos/pump.rsi - - type: Icon - sprite: Constructible/Atmos/pump.rsi + layers: + - sprite: Constructible/Atmos/pipe.rsi + state: pipeStraight + - state: pumpPressure + - type: Appearance + visuals: + - type: PumpVisualizer - type: entity parent: PumpBase @@ -38,11 +44,4 @@ - type: PressurePump inletDirection: West outletDirection: East - - type: Sprite - state: pumpPressure2 - - type: Icon - state: pumpPressure2 - - type: Appearance - visuals: - - type: PumpVisualizer - pumpEnabledState: pumpPressure2On + \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Constructible/Ground/scrubbers.yml b/Resources/Prototypes/Entities/Constructible/Ground/scrubbers.yml index 9a6858382f..f83102c2b7 100644 --- a/Resources/Prototypes/Entities/Constructible/Ground/scrubbers.yml +++ b/Resources/Prototypes/Entities/Constructible/Ground/scrubbers.yml @@ -9,16 +9,6 @@ - type: Physics - type: SnapGrid offset: Center - - - type: Sprite - sprite: Constructible/Atmos/pipeitems.rsi - state: scrubber - - type: Appearance - visuals: - - type: PipeVisualizer - pipeRSI: Constructible/Atmos/pipe.rsi - - type: SiphonVisualizer - siphonRSI: Constructible/Atmos/scrubber.rsi - type: Damageable resistances: metallicResistances - type: Destructible @@ -27,7 +17,17 @@ behaviors: - !type:DoActsBehavior acts: ["Destruction"] - + - type: Sprite + netsync: false + sprite: Constructible/Atmos/scrubber.rsi + layers: + - sprite: Constructible/Atmos/pipe.rsi + state: pipeHalf + - state: scrubOff + - type: Appearance + visuals: + - type: SiphonVisualizer + - type: entity parent: ScrubberBase id: Scrubber diff --git a/Resources/Prototypes/Entities/Constructible/Ground/vents.yml b/Resources/Prototypes/Entities/Constructible/Ground/vents.yml index 030275ec7c..08c981107a 100644 --- a/Resources/Prototypes/Entities/Constructible/Ground/vents.yml +++ b/Resources/Prototypes/Entities/Constructible/Ground/vents.yml @@ -9,16 +9,6 @@ - type: Physics - type: SnapGrid offset: Center - - - type: Sprite - sprite: Constructible/Atmos/pipeitems.rsi - state: vent - - type: Appearance - visuals: - - type: PipeVisualizer - pipeRSI: Constructible/Atmos/pipe.rsi - - type: VentVisualizer - ventRSI: Constructible/Atmos/vent.rsi - type: Damageable resistances: metallicResistances - type: Destructible @@ -27,7 +17,17 @@ behaviors: - !type:DoActsBehavior acts: ["Destruction"] - + - type: Sprite + netsync: false + sprite: Constructible/Atmos/vent.rsi + layers: + - sprite: Constructible/Atmos/pipe.rsi + state: pipeHalf + - state: ventOff + - type: Appearance + visuals: + - type: VentVisualizer + - type: entity parent: VentBase id: Vent diff --git a/Resources/Prototypes/Entities/Constructible/Power/particleAccelerator.yml b/Resources/Prototypes/Entities/Constructible/Power/particleAccelerator.yml index f2d66ba3e6..3398afd385 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/particleAccelerator.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/particleAccelerator.yml @@ -225,6 +225,7 @@ - type: PowerConsumer voltage: High - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: HVPower diff --git a/Resources/Prototypes/Entities/Constructible/Power/power_base.yml b/Resources/Prototypes/Entities/Constructible/Power/power_base.yml index cb671c9513..aa504efbe8 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/power_base.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/power_base.yml @@ -30,6 +30,7 @@ sprite: Constructible/Power/power.rsi state: generator - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: HVPower @@ -37,6 +38,9 @@ supplyRate: 3000 - type: Anchorable - type: Pullable + - type: ClientEntitySpawner + prototypes: + - HVDummyWire - type: entity id: BaseSmes @@ -80,6 +84,7 @@ maxCharge: 1000 startingCharge: 1000 - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: HVPower @@ -91,7 +96,10 @@ activeSupplyRate: 1000 - type: Anchorable - type: Pullable - + - type: ClientEntitySpawner + prototypes: + - HVDummyWire + - type: entity id: BaseSubstation description: Reduces the voltage of electricity put into it. @@ -131,6 +139,7 @@ maxCharge: 1000 startingCharge: 1000 - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: HVPower @@ -145,7 +154,11 @@ activeSupplyRate: 1000 - type: Anchorable - type: Pullable - + - type: ClientEntitySpawner + prototypes: + - HVDummyWire + - MVDummyWire + - type: entity id: BaseApc description: A control terminal for the area's electrical systems. @@ -177,6 +190,7 @@ maxCharge: 10000 startingCharge: 10000 - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: MVPower @@ -197,7 +211,11 @@ - type: Construction graph: apc node: apc - + - type: ClientEntitySpawner + prototypes: + - MVDummyWire + - LVDummyWire + - type: entity id: SolarPanel name: solar panel @@ -226,6 +244,7 @@ sprite: Constructible/Power/solar_panel.rsi state: normal - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: HVPower @@ -244,3 +263,6 @@ acts: ["Breakage"] - type: Anchorable - type: Pullable + - type: ClientEntitySpawner + prototypes: + - HVDummyWire \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Constructible/Power/wires.yml b/Resources/Prototypes/Entities/Constructible/Power/wires.yml index 398712c0e1..144c1e1550 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/wires.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/wires.yml @@ -55,13 +55,13 @@ thresholds: 100: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: HVWireStack1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity parent: WireBase @@ -92,13 +92,13 @@ thresholds: 100: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: MVWireStack1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity parent: WireBase @@ -131,10 +131,67 @@ thresholds: 100: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: ApcExtensionCableStack1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#Dummy wires + +- type: entity + abstract: true + id: BaseDummyWire + placement: + mode: SnapgridCenter + components: + - type: SnapGrid + offset: Center + - type: Sprite + drawdepth: BelowFloor + - type: IconSmooth + mode: CardinalFlags + - type: SubFloorHide + +- type: entity + abstract: true + parent: BaseDummyWire + id: HVDummyWire + name: HV Connector Wire + components: + - type: Sprite + sprite: Constructible/Power/hv_cable.rsi + state: hvcable_0 + - type: IconSmooth + base: hvcable_ + key: hv_cables + +- type: entity + abstract: true + parent: BaseDummyWire + id: MVDummyWire + name: MV Connector Wire + components: + - type: Sprite + sprite: Constructible/Power/mv_cable.rsi + state: mvcable_0 + color: Yellow + - type: IconSmooth + base: mvcable_ + key: mv_cables + +- type: entity + abstract: true + parent: BaseDummyWire + id: LVDummyWire + name: LV Connector Wire + components: + - type: Sprite + sprite: Constructible/Power/lv_cable.rsi + state: lvcable_0 + color: Green + - type: IconSmooth + base: lvcable_ + key: lv_cables \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml index 9a014fb46f..f7de3d2bf4 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml @@ -17,26 +17,26 @@ - type: reagentDispenserInventory id: ChemDispenserStandardInventory inventory: - - chem.H2SO4 - - chem.H2O + - chem.SulfuricAcid + - chem.Water - chem.Ethanol - chem.Glucose - - chem.H - - chem.O - - chem.S - - chem.C - - chem.Cu - - chem.N + - chem.Hydrogen + - chem.Oxygen + - chem.Sulfur + - chem.Carbon + - chem.Copper + - chem.Nitrogen - chem.Nutriment - - chem.Fe - - chem.F - - chem.Al - - chem.Si - - chem.Cl - - chem.Li - - chem.Hg - - chem.P - - chem.K - - chem.Ra - - chem.Na - - chem.U + - chem.Iron + - chem.Fluorine + - chem.Aluminium + - chem.Silicon + - chem.Chlorine + - chem.Lithium + - chem.Mercury + - chem.Phosphorus + - chem.Potassium + - chem.Radium + - chem.Sodium + - chem.Uranium diff --git a/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml index a47eccd325..8e08cedbe8 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml @@ -17,5 +17,5 @@ - chem.Coffee - chem.Tea - chem.Ice - - chem.H2O + - chem.Water - chem.Cream diff --git a/Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_controller.yml b/Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_controller.yml index bcfbc3d1f9..c4c1442a6f 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_controller.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_controller.yml @@ -43,6 +43,7 @@ visuals: - type: AMEControllerVisualizer - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: AMEngine diff --git a/Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml b/Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml index 4edcccbceb..fa21ea3ee4 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml @@ -38,6 +38,7 @@ - type: PowerConsumer voltage: Medium - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: MVPower diff --git a/Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml b/Resources/Prototypes/Entities/Constructible/Specific/Medical/cloning_machine.yml similarity index 95% rename from Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Medical/cloning_machine.yml index c340c99681..f58464d996 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Medical/cloning_machine.yml @@ -7,7 +7,7 @@ components: - type: Sprite netsync: false - sprite: Objects/Specific/Medical/cloning.rsi + sprite: Constructible/Specific/Medical/cloning.rsi layers: - state: pod_0 map: ["enum.CloningPodVisualLayers.Machine"] diff --git a/Resources/Prototypes/Entities/Constructible/Power/medical_scanner.yml b/Resources/Prototypes/Entities/Constructible/Specific/Medical/medical_scanner.yml similarity index 87% rename from Resources/Prototypes/Entities/Constructible/Power/medical_scanner.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Medical/medical_scanner.yml index fce14c14e7..1c0b3988c3 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/medical_scanner.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Medical/medical_scanner.yml @@ -7,11 +7,11 @@ components: - type: Sprite netsync: false - sprite: Constructible/Power/medical_scanner.rsi + sprite: Constructible/Specific/Medical/scanner.rsi layers: - - state: scanner_open + - state: open map: ["enum.MedicalScannerVisualLayers.Machine"] - - state: scanner_terminal_blue + - state: idle_unlit map: ["enum.MedicalScannerVisualLayers.Terminal"] - type: PowerReceiver - type: Anchorable @@ -22,7 +22,6 @@ anchored: true shapes: - !type:PhysShapeAabb - bounds: "-0.5,0,0.5,1" layer: - Opaque - Impassable diff --git a/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml b/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml index 056608284e..df75f399ba 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml @@ -37,13 +37,13 @@ thresholds: 50: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: chem_master_broken: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: UserInterface interfaces: - key: enum.ChemMasterUiKey.Key @@ -86,13 +86,13 @@ thresholds: 25: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: UserInterface interfaces: - key: enum.ChemMasterUiKey.Key diff --git a/Resources/Prototypes/Entities/Constructible/Specific/hydroponics.yml b/Resources/Prototypes/Entities/Constructible/Specific/hydroponics.yml index db7e51649b..416b1324de 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/hydroponics.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/hydroponics.yml @@ -38,7 +38,7 @@ drawWarnings: false - type: SolutionContainer maxVol: 200 - caps: AddTo, NoExamine + caps: AddTo - type: Pourable - type: SnapGrid offset: Center diff --git a/Resources/Prototypes/Entities/Constructible/Storage/Closets/closet.yml b/Resources/Prototypes/Entities/Constructible/Storage/Closets/closet.yml index 6798e6fd6a..bfab9479d3 100644 --- a/Resources/Prototypes/Entities/Constructible/Storage/Closets/closet.yml +++ b/Resources/Prototypes/Entities/Constructible/Storage/Closets/closet.yml @@ -38,6 +38,7 @@ - SmallImpassable - type: EntityStorage - type: PlaceableSurface + placeCentered: true - type: Damageable resistances: metallicResistances - type: Destructible diff --git a/Resources/Prototypes/Entities/Constructible/Storage/StorageTanks/water_tank.yml b/Resources/Prototypes/Entities/Constructible/Storage/StorageTanks/water_tank.yml index b02d01d163..0ee94cbd70 100644 --- a/Resources/Prototypes/Entities/Constructible/Storage/StorageTanks/water_tank.yml +++ b/Resources/Prototypes/Entities/Constructible/Storage/StorageTanks/water_tank.yml @@ -19,5 +19,5 @@ - type: SolutionContainer contents: reagents: - - ReagentId: chem.H2O + - ReagentId: chem.Water Quantity: 1500 diff --git a/Resources/Prototypes/Entities/Constructible/Walls/emergency_light.yml b/Resources/Prototypes/Entities/Constructible/Walls/emergency_light.yml index 843c3db87d..a97c19eea8 100644 --- a/Resources/Prototypes/Entities/Constructible/Walls/emergency_light.yml +++ b/Resources/Prototypes/Entities/Constructible/Walls/emergency_light.yml @@ -11,11 +11,11 @@ offset: "0.5, 0" color: "#FF4020" mask: /Textures/Effects/LightMasks/emergency_mask.png - - type: EmergencyLight - type: PowerReceiver - type: Battery maxCharge: 30000 startingCharge: 0 + - type: EmergencyLight - type: Sprite sprite: Constructible/Lighting/emergency_light.rsi state: emergency_light_off diff --git a/Resources/Prototypes/Entities/Constructible/Walls/girder.yml b/Resources/Prototypes/Entities/Constructible/Walls/girder.yml index 2bdd1fbaee..8960980e53 100644 --- a/Resources/Prototypes/Entities/Constructible/Walls/girder.yml +++ b/Resources/Prototypes/Entities/Constructible/Walls/girder.yml @@ -24,6 +24,7 @@ - MobImpassable - VaultImpassable - SmallImpassable + - ExplosivePassable - type: Pullable - type: Damageable resistances: metallicResistances @@ -31,13 +32,13 @@ thresholds: 50: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: SnapGrid offset: Edge placement: diff --git a/Resources/Prototypes/Entities/Constructible/Walls/walls.yml b/Resources/Prototypes/Entities/Constructible/Walls/walls.yml index de9b9a5114..8f8b9cc644 100644 --- a/Resources/Prototypes/Entities/Constructible/Walls/walls.yml +++ b/Resources/Prototypes/Entities/Constructible/Walls/walls.yml @@ -50,13 +50,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: brick @@ -76,13 +76,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: clock @@ -102,13 +102,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: clown @@ -129,13 +129,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: cult @@ -155,13 +155,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: debug @@ -181,13 +181,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: diamond @@ -208,13 +208,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: gold @@ -234,13 +234,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: ice @@ -260,13 +260,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: metal @@ -286,13 +286,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: plasma @@ -312,13 +312,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: plastic @@ -371,13 +371,13 @@ thresholds: 1000: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: riveted @@ -397,13 +397,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: sandstone @@ -423,13 +423,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: silver @@ -477,13 +477,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: uranium @@ -503,13 +503,13 @@ thresholds: 300: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:SpawnEntitiesBehavior spawn: Girder: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: IconSmooth key: walls base: wood diff --git a/Resources/Prototypes/Entities/Constructible/Walls/windows.yml b/Resources/Prototypes/Entities/Constructible/Walls/windows.yml index 865aff6339..c63b189159 100644 --- a/Resources/Prototypes/Entities/Constructible/Walls/windows.yml +++ b/Resources/Prototypes/Entities/Constructible/Walls/windows.yml @@ -32,15 +32,15 @@ thresholds: 15: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundCollectionBehavior - soundCollection: WindowBreak + soundCollection: GlassBreak - !type:SpawnEntitiesBehavior spawn: ShardGlass: min: 1 max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: SnapGrid offset: Center - type: Airtight @@ -70,15 +70,15 @@ thresholds: 75: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundCollectionBehavior - soundCollection: WindowBreak + soundCollection: GlassBreak - !type:SpawnEntitiesBehavior spawn: ShardGlassReinforced: min: 1 max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Window base: rwindow maxDamage: 75 @@ -102,15 +102,15 @@ thresholds: 100: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundCollectionBehavior - soundCollection: WindowBreak + soundCollection: GlassBreak - !type:SpawnEntitiesBehavior spawn: ShardGlassPhoron: min: 1 max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] resistances: metallicResistances - type: Window base: pwindow @@ -118,10 +118,3 @@ - type: Construction graph: window node: phoronWindow - -- type: soundCollection - id: WindowBreak - files: - - /Audio/Effects/glass_break1.ogg - - /Audio/Effects/glass_break2.ogg - - /Audio/Effects/glass_break3.ogg diff --git a/Resources/Prototypes/Entities/Constructible/Watercloset/toilet.yml b/Resources/Prototypes/Entities/Constructible/Watercloset/toilet.yml new file mode 100644 index 0000000000..cb73fef1f9 --- /dev/null +++ b/Resources/Prototypes/Entities/Constructible/Watercloset/toilet.yml @@ -0,0 +1,39 @@ +- type: entity + name: toilet + id: ToiletEmpty + suffix: Empty + parent: SeatBase + description: The HT-451, a torque rotation-based, waste disposal unit for small matter. This one seems remarkably clean. + components: + - type: Sprite + sprite: Constructible/Watercloset/toilet.rsi + state: closed_toilet_seat_up + netsync: false + - type: Toilet + - type: SecretStash + secretPartName: the toilet cistern + - type: SolutionContainer + maxVol: 250 + - type: Physics + shapes: + - !type:PhysShapeAabb + layer: [ Passable ] + - type: Construction + graph: toilet + node: toilet + - type: Appearance + visuals: + - type: ToiletVisualizer + +- type: entity + id: ToiletDirtyWater + parent: ToiletEmpty + suffix: Dirty Water + components: + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Water + Quantity: 180 + - ReagentId: chem.Toxin + Quantity: 20 diff --git a/Resources/Prototypes/Entities/Effects/Markers/bedsheet_spawner.yml b/Resources/Prototypes/Entities/Effects/Markers/bedsheet_spawner.yml new file mode 100644 index 0000000000..262fd2e7ba --- /dev/null +++ b/Resources/Prototypes/Entities/Effects/Markers/bedsheet_spawner.yml @@ -0,0 +1,36 @@ +- type: entity + name: Random Sheet Spawner + id: BedsheetSpawner + components: + - type: Sprite + netsync: false + visible: false + sprite: Objects/Misc/bedsheets.rsi + state: random_bedsheet + - type: Marker + - type: Clickable + - type: InteractionOutline + - type: Physics + - type: TrashSpawner + rarePrototypes: + - BedsheetIan + - BedsheetCosmos + rareChance: 0.03 + prototypes: + - BedsheetBlue + - BedsheetYellow + - BedsheetOrange + - BedsheetGreen + - BedsheetNT + - BedsheetRed + - BedsheetUSA + - BedsheetBrown + - BedsheetBlack + - BedsheetPurple + - BedsheetGrey + - BedsheetWhite + - BedsheetRainbow + chance: 0.97 + offset: 0 + placement: + mode: AlignTileAny diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml index 0a232cb063..5eddf07663 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml @@ -5,15 +5,10 @@ save: false name: monkey id: MonkeyMob_Content - description: A description. + description: New church of neo-darwinists actually believe that EVERY animal evolved from a monkey. Tastes like pork, and killing them is both fun and relaxing. drawdepth: Mobs suffix: AI components: - - type: AiController - logic: Civilian - - type: AiFactionTag - factions: - - SimpleNeutral - type: MovementSpeedModifier baseWalkSpeed : 4 baseSprintSpeed : 4 @@ -33,12 +28,10 @@ bounds: "-0.30,-0.25,0.40,0.25" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Damageable - type: MobState thresholds: @@ -60,6 +53,9 @@ - type: DamageStateVisualizer normal: monkey dead: dead + - type: FireVisualizer + sprite: Mobs/Effects/onfire.rsi + normalState: Monkey_burning - type: Pullable - type: Butcherable meat: FoodMeat @@ -67,9 +63,9 @@ - type: entity save: false name: gorilla - parent: MonkeyMob_Content + parent: SimpleMobBase id: GorillaMob_Content - description: + description: Smashes, roars, looks cool. Don't stand near one. drawdepth: Mobs suffix: AI components: @@ -87,12 +83,10 @@ bounds: "-0.90,-0.50,0.05,0.50" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -102,9 +96,9 @@ - type: entity save: false name: chicken - parent: MonkeyMob_Content + parent: SimpleMobBase id: ChickenMob_Content - description: + description: Comes before an egg, and IS a dinosaur! drawdepth: Mobs suffix: AI components: @@ -122,12 +116,10 @@ bounds: "-0.45,-0.20,0.10,0.20" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -137,9 +129,9 @@ - type: entity save: false name: butterfly - parent: MonkeyMob_Content + parent: SimpleMobBase id: ButterflyMob_Content - description: + description: Despite popular misconceptions, it's not actually made of butter. drawdepth: Mobs suffix: AI components: @@ -160,12 +152,10 @@ bounds: "-0.20,-0.20,0.20,0.20" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: RandomSpriteColor state: butterfly colors: @@ -185,9 +175,9 @@ - type: entity save: false name: bat - parent: MonkeyMob_Content + parent: SimpleMobBase id: BatMob_Content - description: + description: Some cultures find them terrifying, others crunchy on the teeth. drawdepth: Mobs suffix: AI components: @@ -208,12 +198,10 @@ bounds: "-0.20,-0.20,0.20,0.20" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -223,9 +211,9 @@ - type: entity save: false name: bee - parent: MonkeyMob_Content + parent: SimpleMobBase id: BeeMob_Content - description: + description: Nice to have, but you can't build a civilization on a foundation of honey alone. drawdepth: Mobs suffix: AI components: @@ -247,12 +235,10 @@ bounds: "-0.10,-0.10,0.10,0.10" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -262,9 +248,9 @@ - type: entity save: false name: goat - parent: MonkeyMob_Content + parent: SimpleMobBase id: GoatMob_Content - description: + description: His spine consists of long sharp segments, no wonder he is so grumpy. drawdepth: Mobs suffix: AI components: @@ -282,12 +268,10 @@ bounds: "-0.60,-0.50,0.05,0.50" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -298,9 +282,9 @@ - type: entity save: false name: goose - parent: MonkeyMob_Content + parent: SimpleMobBase id: GooseMob_Content - description: + description: Its stomach and mind are an enigma beyond human comprehension. drawdepth: Mobs suffix: AI components: @@ -318,12 +302,10 @@ bounds: "-0.45,-0.35,0.45,0.35" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -334,9 +316,9 @@ - type: entity save: false name: parrot - parent: MonkeyMob_Content + parent: SimpleMobBase id: ParrotMob_Content - description: + description: Infiltrates your domain, spies on you, and somehow still a cool pet. drawdepth: Mobs suffix: AI components: @@ -357,12 +339,10 @@ bounds: "-0.30,-0.35,0.35,0.35" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -372,9 +352,9 @@ - type: entity save: false name: snake - parent: MonkeyMob_Content + parent: SimpleMobBase id: SnakeMob_Content - description: + description: Hissss! Bites aren't poisonous. drawdepth: Mobs suffix: AI components: @@ -392,12 +372,10 @@ bounds: "-0.30,-0.30,0.25,0.30" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -410,9 +388,9 @@ - type: entity save: false name: tarantula - parent: MonkeyMob_Content + parent: SimpleMobBase id: GiantSpiderMob_Content - description: + description: Widely recognized to be the literal worst thing in existence. drawdepth: Mobs suffix: AI components: @@ -430,12 +408,10 @@ bounds: "-0.30,-0.40,0.45,0.40" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -445,9 +421,9 @@ - type: entity save: false name: crab - parent: MonkeyMob_Content + parent: SimpleMobBase id: CrabMob_Content - description: + description: A folk legend goes around that his claw snaps spacemen out of existance over distasteful remarks. Be polite and tolerant for your own safety. drawdepth: Mobs suffix: AI components: @@ -465,12 +441,10 @@ bounds: "-0.40,-0.35,0.20,0.35" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -480,9 +454,9 @@ - type: entity save: false name: penguin - parent: MonkeyMob_Content + parent: SimpleMobBase id: PenguinMob_Content - description: + description: Their lives are constant pain due to their inner-body knees. drawdepth: Mobs suffix: AI components: @@ -500,12 +474,10 @@ bounds: "-0.50,-0.30,0.35,0.30" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml b/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml index 20545cb1ba..0069a58a51 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml @@ -1,66 +1,10 @@ # Bounds Guide #1D2L3U4R -- type: entity - save: false - name: based on what? - abstract: true - id: PetBaseMob_Content - description: - drawdepth: Mobs - suffix: AI - components: - - type: AiController - logic: Civilian - - type: AiFactionTag - factions: - - SimpleNeutral - - type: MovementSpeedModifier - baseWalkSpeed : 5 - baseSprintSpeed : 5 - - type: InteractionOutline - - type: Clickable - - type: Physics - anchored: false - mass: 50 - shapes: - - !type:PhysShapeAabb - bounds: "-0.30,-0.35,0.45,0.35" - mask: - - Impassable - - MobImpassable - - VaultImpassable - - SmallImpassable - layer: - - Opaque - - MobImpassable - - type: Damageable - - type: MobState - thresholds: - 0: !type:NormalMobState {} - 50: !type:CriticalMobState {} - 100: !type:DeadMobState {} - - type: HeatResistance - - type: CombatMode - - type: Teleportable - - type: Stunnable - - type: UnarmedCombat - range: 1.5 - arcwidth: 0 - arc: bite - damage: 50 - - type: MovementIgnoreGravity - - type: Appearance - visuals: - - type: DamageStateVisualizer - normal: monkey - dead: dead - - type: Pullable - - type: entity save: false name: corgi - parent: PetBaseMob_Content + parent: SimpleMobBase id: CorgiMob_Content description: Finally, a space corgi! drawdepth: Mobs @@ -79,12 +23,10 @@ bounds: "-0.50,-0.25,0.30,0.25" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -94,7 +36,7 @@ - type: entity save: false name: ian - parent: PetBaseMob_Content + parent: SimpleMobBase id: IanMob_Content description: Favorite pet corgi. drawdepth: Mobs @@ -113,12 +55,10 @@ bounds: "-0.50,-0.25,0.30,0.25" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -128,7 +68,7 @@ - type: entity save: false name: cat - parent: PetBaseMob_Content + parent: SimpleMobBase id: CatMob_Content description: Feline pet, very funny. drawdepth: Mobs @@ -147,12 +87,10 @@ bounds: "-0.45,-0.20,0.30,0.20" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -162,7 +100,7 @@ - type: entity save: false name: calico cat - parent: PetBaseMob_Content + parent: SimpleMobBase id: CatCalicoMob_Content description: Feline pet, very funny. drawdepth: Mobs @@ -174,19 +112,16 @@ layers: - map: ["enum.DamageStateVisualLayers.Base"] state: cat2 - - type: Physics shapes: - !type:PhysShapeAabb bounds: "-0.50,-0.25,0.30,0.25" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer @@ -196,7 +131,7 @@ - type: entity save: false name: sloth - parent: PetBaseMob_Content + parent: SimpleMobBase id: SlothMob_Content description: Very slow animal. For people with low energy. drawdepth: Mobs @@ -218,12 +153,10 @@ bounds: "-0.45,-0.35,0.15,0.35" mask: - Impassable - - MobImpassable - VaultImpassable - SmallImpassable layer: - Opaque - - MobImpassable - type: Appearance visuals: - type: DamageStateVisualizer diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml b/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml new file mode 100644 index 0000000000..69e591833f --- /dev/null +++ b/Resources/Prototypes/Entities/Mobs/NPCs/simplemob.yml @@ -0,0 +1,90 @@ +- type: entity + save: false + abstract: true + id: SimpleMobBase + drawdepth: Mobs + suffix: AI + components: + - type: AiController + logic: Civilian + - type: AiFactionTag + factions: + - SimpleNeutral + - type: MovementSpeedModifier + baseWalkSpeed : 4 + baseSprintSpeed : 4 + - type: MovedByPressure + - type: Barotrauma + - type: DamageOnHighSpeedImpact + soundHit: /Audio/Effects/hit_kick.ogg + - type: InteractionOutline + - type: Sprite + drawdepth: Mobs + - type: Clickable + - type: Physics + anchored: false + mass: 50 + shapes: + - !type:PhysShapeAabb + mask: + - Impassable +# - MobImpassable Turns these off for now since humans don't have collisions either. + - VaultImpassable + - SmallImpassable + layer: + - Opaque +# - MobImpassable + - type: Bloodstream + max_volume: 100 + - type: Damageable + damageContainer: biologicalDamageContainer + - type: AtmosExposed + - type: Flammable + fireSpread: true + canResistFire: true + - type: Temperature + heatDamageThreshold: 360 + coldDamageThreshold: 260 + currentTemperature: 310.15 + specificHeat: 42 + tempDamageCoefficient: 0.1 + - type: Metabolism + metabolismHeat: 5000 + radiatedHeat: 400 + implicitHeatRegulation: 5000 + sweatHeatRegulation: 5000 + shiveringHeatRegulation: 5000 + normalBodyTemperature: 310.15 + thermalRegulationTemperatureThreshold: 25 + needsGases: + Oxygen: 0.00060763888 + producesGases: + Oxygen: 0.00045572916 + CarbonDioxide: 0.00015190972 + - type: MobState + thresholds: + 0: !type:NormalMobState {} + 50: !type:CriticalMobState {} + 100: !type:DeadMobState {} + - type: HeatResistance + - type: CombatMode + - type: Teleportable + - type: Internals + - type: Stunnable + - type: UnarmedCombat + range: 1.5 + arcwidth: 0 + arc: bite + damage: 50 + - type: Appearance + visuals: + - type: BuckleVisualizer + - type: FireVisualizer + sprite: Mobs/Effects/onfire.rsi + normalState: Generic_mob_burning + - type: Pullable + - type: Buckle + - type: Butcherable + meat: FoodMeat + - type: Recyclable + safe: false diff --git a/Resources/Prototypes/Entities/Mobs/Player/human.yml b/Resources/Prototypes/Entities/Mobs/Player/human.yml index e692fa9830..afe8be1e5b 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/human.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/human.yml @@ -7,13 +7,14 @@ drawdepth: Mobs components: - type: Mind - show_examine_info: true + showExamineInfo: true - type: Input context: "human" - type: Alerts - type: Actions innateActions: - HumanScream + - Disarm - type: OverlayEffectsUI - type: Eye zoom: 0.5, 0.5 diff --git a/Resources/Prototypes/Entities/Mobs/Player/observer.yml b/Resources/Prototypes/Entities/Mobs/Player/observer.yml index 7b29a537a2..1c67dc2a0f 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/observer.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/observer.yml @@ -17,6 +17,7 @@ mask: - GhostImpassable status: InAir + - type: PlayerInputMover - type: Eye zoom: 0.5, 0.5 drawFov: false diff --git a/Resources/Prototypes/Entities/Mobs/Species/human.yml b/Resources/Prototypes/Entities/Mobs/Species/human.yml index e7920cd0a1..e85e369fe1 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/human.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/human.yml @@ -20,7 +20,7 @@ # Organs - type: SolutionContainer maxVol: 250 - caps: AddTo, RemoveFrom, NoExamine + caps: AddTo, RemoveFrom - type: Bloodstream max_volume: 100 # StatusEffects @@ -125,6 +125,7 @@ layer: - Opaque - MobImpassable + - type: PlayerInputMover - type: AtmosExposed - type: Flammable fireSpread: true @@ -161,6 +162,11 @@ 0: !type:NormalMobState {} 100: !type:CriticalMobState {} 200: !type:DeadMobState {} + - type: Destructible + thresholds: + 400: + behaviors: + - !type:GibBehavior { } - type: HeatResistance - type: Appearance visuals: @@ -195,11 +201,11 @@ interfaces: - key: enum.StrippingUiKey.Key type: StrippableBoundUserInterface - - key: enum.AcceptCloningUiKey.Key - type: AcceptCloningBoundUserInterface - type: Puller - type: Butcherable meat: FoodMeat + - type: Recyclable + safe: false - type: entity save: false diff --git a/Resources/Prototypes/Entities/Objects/Consumable/botany.yml b/Resources/Prototypes/Entities/Objects/Consumable/botany.yml index def7c602af..89b6eb8e13 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/botany.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/botany.yml @@ -1,10 +1,10 @@ -- type: entity +- type: entity parent: BaseItem id: ProduceBase abstract: true components: - type: SolutionContainer - caps: NoExamine + caps: None - type: Sprite state: produce - type: Produce @@ -18,7 +18,7 @@ - type: Sprite sprite: Objects/Specific/Hydroponics/wheat.rsi - type: SolutionContainer - caps: NoExamine + caps: None contents: reagents: - ReagentId: chem.Nutriment @@ -38,7 +38,7 @@ - type: Sprite sprite: Objects/Specific/Hydroponics/sugarcane.rsi - type: SolutionContainer - caps: NoExamine + caps: None contents: reagents: - ReagentId: chem.Nutriment @@ -58,7 +58,7 @@ - type: Sprite sprite: Objects/Specific/Hydroponics/towercap.rsi - type: SolutionContainer - caps: NoExamine + caps: None - type: MeleeWeapon - type: Produce seed: towercap diff --git a/Resources/Prototypes/Entities/Objects/Consumable/drinks.yml b/Resources/Prototypes/Entities/Objects/Consumable/drinks.yml index 5b9eaa4c92..c01489c8d5 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/drinks.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/drinks.yml @@ -1,4 +1,4 @@ -# TODO: Find remaining cans and move to drinks_cans +# TODO: Find remaining cans and move to drinks_cans # TODO: Find empty containers (e.g. mug, pitcher) and move to their own yml # TODO: Move bottles to their own yml - type: entity @@ -8,7 +8,6 @@ components: - type: SolutionContainer maxVol: 50 - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5 - type: Drink @@ -29,15 +28,16 @@ thresholds: 5: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundCollectionBehavior - soundCollection: WindowBreak + soundCollection: GlassBreak + - !type:SpillBehavior { } - !type:SpawnEntitiesBehavior spawn: ShardGlass: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: DamageOnLand amount: 5 - type: DamageOtherOnHit @@ -55,7 +55,6 @@ - type: SolutionContainer fillingState: glass maxVol: 50 - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5 - type: TransformableContainer diff --git a/Resources/Prototypes/Entities/Objects/Consumable/drinks_bottles.yml b/Resources/Prototypes/Entities/Objects/Consumable/drinks_bottles.yml index 42bf6ba0aa..82da85a1da 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/drinks_bottles.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/drinks_bottles.yml @@ -6,13 +6,30 @@ - type: Drink openSounds: bottleOpenSounds - type: SolutionContainer - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5 - type: Sprite state: icon - + - type: DamageOnLand + amount: 5 + - type: DamageOtherOnHit + amount: 10 - type: Spillable + - type: Damageable + - type: Destructible + thresholds: + 5: + behaviors: + - !type:PlaySoundCollectionBehavior + soundCollection: GlassBreak + - !type:SpillBehavior { } + - !type:SpawnEntitiesBehavior + spawn: + ShardGlass: + min: 1 + max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity parent: DrinkBottleBaseFull @@ -111,7 +128,7 @@ maxVol: 80 contents: reagents: - - ReagentId: chem.H2O + - ReagentId: chem.Water Quantity: 80 - type: Sprite sprite: Objects/Consumable/Drinks/kahluabottle.rsi @@ -218,4 +235,3 @@ Quantity: 80 - type: Sprite sprite: Objects/Consumable/Drinks/winebottle.rsi - diff --git a/Resources/Prototypes/Entities/Objects/Consumable/drinks_cups.yml b/Resources/Prototypes/Entities/Objects/Consumable/drinks_cups.yml index fb0c3db10c..5094bb3266 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/drinks_cups.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/drinks_cups.yml @@ -7,7 +7,6 @@ components: - type: SolutionContainer maxVol: 20 - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5 - type: Drink diff --git a/Resources/Prototypes/Entities/Objects/Consumable/fancy.yml b/Resources/Prototypes/Entities/Objects/Consumable/fancy.yml new file mode 100644 index 0000000000..fcf5d0dc31 --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Consumable/fancy.yml @@ -0,0 +1,42 @@ +- type: entity + name: "Base Cigarette" + id: BaseCigarette + parent: BaseItem + abstract: true + components: + - type: Sprite + sprite: Objects/Consumable/Fancy/mask_cig.rsi + netsync: false + state: icon + - type: Clothing + sprite: Objects/Consumable/Fancy/mask_cig.rsi + Slots: [ mask ] + HeldPrefix: unlit + size: 1 + - type: Smoking + duration: 30 + - type: Appearance + visuals: + - type: BurnStateVisualizer + +- type: entity + id: Cigarette + parent: BaseCigarette + name: cigarette + description: "If you want to get cancer, might as well do it in style." + +- type: entity + id: CigarettePack + parent: SmallboxItem + name: cigarette pack + description: "Pack of cigarettes" + components: + - type: Sprite + sprite: Objects/Consumable/Fancy/cigarettes.rsi + layers: + - state: cig + - type: StorageFill + contents: + - name: Cigarette + amount: 6 + diff --git a/Resources/Prototypes/Entities/Objects/Consumable/food.yml b/Resources/Prototypes/Entities/Objects/Consumable/food.yml index 0d5a0f08e2..bd3d0f7b2f 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/food.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/food.yml @@ -6,10 +6,11 @@ - type: Food - type: LoopingSound - type: SolutionContainer - caps: NoExamine + caps: None - type: Sprite state: icon netsync: false + - type: Grindable # Only use visualizer if there's multiple steps available # - type: Appearance @@ -35,7 +36,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/4no_raisins.rsi - - type: Grindable - type: Item sprite: Objects/Consumable/Food/4no_raisins.rsi @@ -53,7 +53,6 @@ trash: TrashSnackBowl - type: Sprite sprite: Objects/Consumable/Food/aesirsalad.rsi - - type: Grindable - type: entity @@ -69,7 +68,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/amanita_pie.rsi - - type: Grindable - type: entity @@ -87,7 +85,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/amanitajelly.rsi - - type: Grindable #- type: entity @@ -118,7 +115,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/apple_cake_slice.rsi - - type: Grindable - type: entity @@ -134,7 +130,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/apple_pie.rsi - - type: Grindable # TODO: BREADSLICE? @@ -164,7 +159,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/badrecipe.rsi - - type: Grindable - type: entity @@ -180,7 +174,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/baguette.rsi - - type: Grindable - type: entity @@ -198,7 +191,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/breadslice.rsi - - type: Grindable - type: entity @@ -216,7 +208,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/bananabreadslice.rsi - - type: Grindable - type: entity @@ -235,7 +226,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/pie.rsi - - type: Grindable #- type: entity @@ -266,7 +256,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/beetsoup.rsi - - type: Grindable - type: entity @@ -284,7 +273,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/berryclafoutis.rsi - - type: Grindable - type: entity @@ -302,7 +290,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/birthday_cake_slice.rsi - - type: Grindable - type: entity @@ -320,7 +307,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/spaghettiboiled.rsi - - type: Grindable - type: entity @@ -338,7 +324,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/brain_cake_slice.rsi - - type: Grindable - type: entity @@ -358,7 +343,6 @@ sprite: Objects/Consumable/Food/candy.rsi - type: Item sprite: Objects/Consumable/Food/candy.rsi - - type: Grindable - type: entity name: candy corn @@ -373,7 +357,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/candy_corn.rsi - - type: Grindable - type: entity @@ -391,7 +374,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/carrotcake_slice.rsi - - type: Grindable - type: entity @@ -409,7 +391,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/carrotfries.rsi - - type: Grindable - type: entity @@ -427,7 +408,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/chawanmushi.rsi - - type: Grindable - type: entity @@ -445,7 +425,6 @@ sprite: Objects/Consumable/Food/cheeseburger.rsi - type: Item sprite: Objects/Consumable/Food/cheeseburger.rsi - - type: Grindable - type: entity name: cheesecake (slice) @@ -462,7 +441,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/cheesecake_slice.rsi - - type: Grindable - type: entity @@ -478,7 +456,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/cheesewedge.rsi - - type: Grindable - type: entity @@ -496,7 +473,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/cheesie_honkers.rsi - - type: Grindable - type: entity @@ -514,7 +490,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/cheesyfries.rsi - - type: Grindable - type: entity @@ -530,7 +505,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/cherrypie.rsi - - type: Grindable - type: entity @@ -550,7 +524,6 @@ sprite: Objects/Consumable/Food/chips.rsi - type: Item sprite: Objects/Consumable/Food/chips.rsi - - type: Grindable - type: entity name: chocolate bar @@ -567,7 +540,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/chocolatebar.rsi - - type: Grindable - type: entity @@ -585,7 +557,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/chocolatecake_slice.rsi - - type: Grindable - type: entity @@ -601,7 +572,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/chocolateegg.rsi - - type: Grindable - type: entity @@ -619,7 +589,6 @@ sprite: Objects/Consumable/Food/clownburger.rsi - type: Item sprite: Objects/Consumable/Food/clownburger.rsi - - type: Grindable - type: entity name: clown's tears @@ -634,7 +603,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/clownstears.rsi - - type: Grindable #- type: entity @@ -666,7 +634,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/coldchili.rsi - - type: Grindable #- type: entity @@ -696,7 +663,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/cookie!!!.rsi - - type: Grindable - type: entity @@ -712,7 +678,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/cracker.rsi - - type: Grindable - type: entity @@ -730,7 +695,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/creamcheesebreadslice.rsi - - type: Grindable - type: entity @@ -748,7 +712,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/cubancarp.rsi - - type: Grindable #- type: entity @@ -778,7 +741,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/donkpocket.rsi - - type: Grindable - type: entity @@ -796,7 +758,6 @@ sprite: Objects/Consumable/Food/donut1.rsi - type: Item sprite: Objects/Consumable/Food/donut1.rsi - - type: Grindable - type: entity parent: FoodBase @@ -813,7 +774,6 @@ sprite: Objects/Consumable/Food/donut2.rsi - type: Item sprite: Objects/Consumable/Food/donut2.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -830,7 +790,6 @@ sprite: Objects/Consumable/Food/egg-blue.rsi - type: Item sprite: Objects/Consumable/Food/egg-blue.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -847,7 +806,6 @@ sprite: Objects/Consumable/Food/egg-green.rsi - type: Item sprite: Objects/Consumable/Food/egg-green.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -864,7 +822,6 @@ sprite: Objects/Consumable/Food/egg-mime.rsi - type: Item sprite: Objects/Consumable/Food/egg-mime.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -881,7 +838,6 @@ sprite: Objects/Consumable/Food/egg-orange.rsi - type: Item sprite: Objects/Consumable/Food/egg-orange.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -898,7 +854,6 @@ sprite: Objects/Consumable/Food/egg-purple.rsi - type: Item sprite: Objects/Consumable/Food/egg-purple.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -915,7 +870,6 @@ sprite: Objects/Consumable/Food/egg-rainbow.rsi - type: Item sprite: Objects/Consumable/Food/egg-rainbow.rsi.rsi - - type: Grindable - type: entity parent: FoodBase @@ -932,7 +886,6 @@ sprite: Objects/Consumable/Food/egg-red.rsi - type: Item sprite: Objects/Consumable/Food/egg-red.rsi.rsi - - type: Grindable - type: entity @@ -950,7 +903,6 @@ sprite: Objects/Consumable/Food/egg-yellow.rsi - type: Item sprite: Objects/Consumable/Food/egg-yellow.rsi - - type: Grindable - type: entity parent: FoodBase @@ -969,7 +921,6 @@ seed: eggy - type: Item sprite: Objects/Consumable/Food/egg.rsi - - type: Grindable - type: entity parent: FoodBase @@ -986,7 +937,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/eggplantparm.rsi - - type: Grindable #- type: entity @@ -1018,7 +968,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/enchiladas.rsi - - type: Grindable #- type: entity @@ -1062,7 +1011,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/fishandchips.rsi - - type: Grindable - type: entity @@ -1080,7 +1028,6 @@ sprite: Objects/Consumable/Food/fishburger.rsi - type: Item sprite: Objects/Consumable/Food/fishburger.rsi - - type: Grindable #- type: entity # parent: FoodBase @@ -1109,7 +1056,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/fishfingers.rsi - - type: Grindable #- type: entity @@ -1139,7 +1085,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/fortune_cookie.rsi - - type: Grindable - type: entity @@ -1155,7 +1100,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/friedegg.rsi - - type: Grindable - type: entity @@ -1173,7 +1117,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/fries.rsi - - type: Grindable - type: entity @@ -1191,7 +1134,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/gappletart.rsi - - type: Grindable - type: entity @@ -1209,7 +1151,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/toastedsandwich.rsi - - type: Grindable - type: entity @@ -1227,7 +1168,6 @@ sprite: Objects/Consumable/Food/hburger.rsi - type: Item sprite: Objects/Consumable/Food/hburger.rsi - - type: Grindable - type: entity parent: FoodBase @@ -1244,7 +1184,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/herbsalad.rsi - - type: Grindable #- type: entity @@ -1276,7 +1215,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/hotchili.rsi - - type: Grindable - type: entity @@ -1292,7 +1230,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/hotdog.rsi - - type: Grindable #- type: entity @@ -1322,7 +1259,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/hugemushroomslice.rsi - - type: Grindable - type: entity @@ -1340,7 +1276,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/kabob.rsi - - type: Grindable - type: entity @@ -1356,7 +1291,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/jdonut1.rsi - - type: Grindable - type: entity @@ -1372,7 +1306,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/jdonut2.rsi - - type: Grindable - type: entity @@ -1390,7 +1323,6 @@ sprite: Objects/Consumable/Food/jellyburger.rsi - type: Item sprite: Objects/Consumable/Food/jellyburger.rsi - - type: Grindable - type: entity parent: FoodBase @@ -1407,7 +1339,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/jellysandwich.rsi - - type: Grindable - type: entity @@ -1425,7 +1356,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/jellytoast.rsi - - type: Grindable # TODO: Add more pies. Anything that shares a sprite @@ -1444,7 +1374,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/kabob.rsi - - type: Grindable #- type: entity @@ -1490,7 +1419,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/lemoncake_slice.rsi - - type: Grindable - type: entity @@ -1508,7 +1436,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/limecake_slice.rsi - - type: Grindable - type: entity @@ -1524,7 +1451,6 @@ Quantity: 40 - type: Sprite sprite: Objects/Consumable/Food/liquidfood.rsi - - type: Grindable - type: entity @@ -1540,7 +1466,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/loadedbakedpotato.rsi - - type: Grindable - type: entity @@ -1556,7 +1481,6 @@ Quantity: 5 - type: Sprite sprite: Objects/Consumable/Food/meat.rsi - - type: Grindable - type: entity @@ -1574,7 +1498,6 @@ sprite: Objects/Consumable/Food/meatball.rsi - type: Item sprite: Objects/Consumable/Food/meatball.rsi - - type: Grindable - type: entity parent: FoodBase @@ -1591,7 +1514,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/meatballsoup.rsi - - type: Grindable - type: entity @@ -1609,7 +1531,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/meatballspaghetti.rsi - - type: Grindable - type: entity @@ -1627,7 +1548,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/meatbreadslice.rsi - - type: Grindable - type: entity @@ -1645,7 +1565,6 @@ Quantity: 20 - type: Sprite sprite: Objects/Consumable/Food/meatpie.rsi - - type: Grindable - type: entity @@ -1661,7 +1580,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/meatpizzaslice.rsi - - type: Grindable - type: entity @@ -1679,7 +1597,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/meatsteak.rsi - - type: Grindable - type: entity @@ -1697,7 +1614,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/milosoup.rsi - - type: Grindable - type: entity @@ -1713,7 +1629,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/mimeburger.rsi - - type: Grindable - type: entity @@ -1729,7 +1644,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/mint.rsi - - type: Grindable #- type: entity @@ -1761,7 +1675,6 @@ sprite: Objects/Consumable/Food/hburger.rsi - type: Item sprite: Objects/Consumable/Food/hburger.rsi - - type: Grindable - type: entity parent: FoodBase @@ -1778,7 +1691,6 @@ Quantity: 30 - type: Sprite sprite: Objects/Consumable/Food/monkeysdelight.rsi - - type: Grindable #- type: entity @@ -1822,7 +1734,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/mushroompizzaslice.rsi - - type: Grindable - type: entity @@ -1840,7 +1751,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/mushroomsoup.rsi - - type: Grindable # TODO: More in this one @@ -1859,7 +1769,6 @@ Quantity: 1 - type: Sprite sprite: Objects/Consumable/Food/mysterysoup.rsi - - type: Grindable - type: entity @@ -1877,7 +1786,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/nettlesoup.rsi - - type: Grindable #- type: entity @@ -1909,7 +1817,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/omelette.rsi - - type: Grindable - type: entity @@ -1927,7 +1834,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/orangecake_slice.rsi - - type: Grindable - type: entity @@ -1945,7 +1851,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/pastatomato.rsi - - type: Grindable #- type: entity @@ -1975,7 +1880,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/phelmbiscuit.rsi - - type: Grindable - type: entity @@ -1991,7 +1895,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/pizzamargheritaslice.rsi - - type: Grindable - type: entity @@ -2009,7 +1912,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/plaincake_slice.rsi - - type: Grindable - type: entity @@ -2025,7 +1927,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/plump_pie.rsi - - type: Grindable - type: entity @@ -2044,7 +1945,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/popcorn.rsi - - type: Grindable - type: entity @@ -2060,7 +1960,6 @@ Quantity: 10 - type: Sprite sprite: Objects/Consumable/Food/poppypretzel.rsi - - type: Grindable - type: entity @@ -2078,7 +1977,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/pumpkinpieslice.rsi - - type: Grindable # TODO: Boiled rice? @@ -2109,7 +2007,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/roburger.rsi - - type: Grindable - type: entity @@ -2127,7 +2024,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/rofflewaffles.rsi - - type: Grindable #- type: entity @@ -2173,7 +2069,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/rpudding.rsi - - type: Grindable - type: entity @@ -2191,7 +2086,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/sandwich.rsi - - type: Grindable #- type: entity @@ -2235,7 +2129,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/sausage.rsi - - type: Grindable #- type: entity @@ -2282,7 +2175,6 @@ sprite: Objects/Consumable/Food/sosjerky.rsi - type: Item sprite: Objects/Consumable/Food/sosjerky.rsi - - type: Grindable - type: entity parent: FoodBase @@ -2299,7 +2191,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/soydope.rsi - - type: Grindable - type: entity @@ -2317,7 +2208,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/soylent_green.rsi - - type: Grindable # why these were named different i have no idea @@ -2336,7 +2226,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/soylent_yellow.rsi - - type: Grindable #- type: entity @@ -2366,7 +2255,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/space_twinkie.rsi - - type: Grindable - type: entity @@ -2384,7 +2272,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/spacylibertyduff.rsi - - type: Grindable - type: entity @@ -2400,7 +2287,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/spaghetti.rsi - - type: Grindable - type: entity @@ -2418,7 +2304,6 @@ sprite: Objects/Consumable/Food/spellburger.rsi - type: Item sprite: Objects/Consumable/Food/spellburger.rsi - - type: Grindable - type: entity parent: FoodBase @@ -2433,7 +2318,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/spesslaw.rsi - - type: Grindable - type: entity @@ -2449,7 +2333,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/stew.rsi - - type: Grindable - type: entity @@ -2467,7 +2350,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/stewedsoymeat.rsi - - type: Grindable - type: entity @@ -2483,7 +2365,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/stuffing.rsi - - type: Grindable #- type: entity @@ -2527,7 +2408,6 @@ Quantity: 40 - type: Sprite sprite: Objects/Consumable/Food/superbiteburger.rsi - - type: Grindable - type: entity @@ -2545,7 +2425,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/syndi_cakes.rsi - - type: Grindable - type: entity @@ -2561,7 +2440,6 @@ Quantity: 8 - type: Sprite sprite: Objects/Consumable/Food/taco.rsi - - type: Grindable - type: entity @@ -2579,7 +2457,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/tastybread.rsi - - type: Grindable - type: entity @@ -2597,7 +2474,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/toastedsandwich.rsi - - type: Grindable - type: entity @@ -2613,7 +2489,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/tofu.rsi - - type: Grindable - type: entity @@ -2631,7 +2506,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/tofubreadslice.rsi - - type: Grindable - type: entity @@ -2649,7 +2523,6 @@ sprite: Objects/Consumable/Food/tofuburger.rsi - type: Item sprite: Objects/Consumable/Food/tofuburger.rsi - - type: Grindable - type: entity parent: FoodBase @@ -2666,7 +2539,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/kabob.rsi - - type: Grindable - type: entity @@ -2682,7 +2554,6 @@ Quantity: 24 - type: Sprite sprite: Objects/Consumable/Food/tofurkey.rsi - - type: Grindable - type: entity @@ -2698,7 +2569,6 @@ Quantity: 6 - type: Sprite sprite: Objects/Consumable/Food/tomatomeat.rsi - - type: Grindable - type: entity @@ -2716,7 +2586,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/tomatosoup.rsi - - type: Grindable - type: entity @@ -2732,7 +2601,6 @@ Quantity: 4 - type: Sprite sprite: Objects/Consumable/Food/twobread.rsi - - type: Grindable - type: entity @@ -2750,7 +2618,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/validsalad.rsi - - type: Grindable - type: entity @@ -2766,7 +2633,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/vegetablepizzaslice.rsi - - type: Grindable - type: entity @@ -2784,7 +2650,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/vegetablesoup.rsi - - type: Grindable - type: entity @@ -2802,7 +2667,6 @@ Quantity: 16 - type: Sprite sprite: Objects/Consumable/Food/waffles.rsi - - type: Grindable - type: entity @@ -2818,7 +2682,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/watermelonslice.rsi - - type: Grindable - type: entity @@ -2836,7 +2699,6 @@ Quantity: 12 - type: Sprite sprite: Objects/Consumable/Food/wingfangchu.rsi - - type: Grindable - type: entity @@ -2854,7 +2716,6 @@ Quantity: 2 - type: Sprite sprite: Objects/Consumable/Food/wishsoup.rsi - - type: Grindable - type: entity @@ -2872,7 +2733,6 @@ sprite: Objects/Consumable/Food/xburger.rsi - type: Item sprite: Objects/Consumable/Food/xburger.rsi - - type: Grindable - type: entity parent: FoodBase @@ -2889,7 +2749,6 @@ Quantity: 20 - type: Sprite sprite: Objects/Consumable/Food/xenobreadslice.rsi - - type: Grindable - type: entity @@ -2905,7 +2764,6 @@ Quantity: 20 - type: Sprite sprite: Objects/Consumable/Food/xenomeat.rsi - - type: Grindable - type: entity @@ -2923,7 +2781,6 @@ Quantity: 20 - type: Sprite sprite: Objects/Consumable/Food/xenomeatpie.rsi - - type: Grindable - type: entity @@ -2941,7 +2798,6 @@ Quantity: 15 - type: Sprite sprite: Objects/Consumable/Food/stew.rsi - - type: Grindable - type: entity @@ -2960,7 +2816,7 @@ Quantity: 20 - type: Sprite sprite: Objects/Consumable/Food/milkape.rsi - - type: Grindable + - type: entity name: memory leek @@ -2977,4 +2833,406 @@ - type: Sprite sprite: Objects/Consumable/Food/memoryleek.rsi state: memoryLeek - - type: Grindable + + +- type: entity + parent: FoodBase + name: apple cake + id: FoodAppleCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodAppleCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/apple_cake.rsi + + +- type: entity + parent: FoodBase + name: banana bread + id: FoodBananaBread + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodBananaBreadSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/bananabread.rsi + + +- type: entity + parent: FoodBase + name: birthday cake + id: FoodBirthdayCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodBirthdayCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/birthdaycake.rsi + + +- type: entity + parent: FoodBase + name: brain cake + id: FoodBrainCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodBrainCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/braincake.rsi + + +- type: entity + parent: FoodBase + name: bread + id: FoodBread + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodBreadSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/bread.rsi + + +- type: entity + parent: FoodBase + name: carrot cake + id: FoodCarrotCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodCarrotCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/carrotcake.rsi + + +- type: entity + parent: FoodBase + name: cheesecake + id: FoodCheeseCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodCheeseCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/cheesecake.rsi + + +- type: entity + parent: FoodBase + name: cheese wheel + id: FoodCheeseWheel + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodCheeseWedge + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/apple_cake.rsi + + +- type: entity + parent: FoodBase + name: chocolate cake + id: FoodChocolateCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodChocolateCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/chocolatecake.rsi + + +- type: entity + parent: FoodBase + name: cream cheese bread + id: FoodCreamCheeseBread + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodCreamCheeseBreadSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/creamcheesebread.rsi + + +- type: entity + parent: FoodBase + name: lemon cake + id: FoodLemonCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodLemonCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/lemoncake.rsi + + +- type: entity + parent: FoodBase + name: lime cake + id: FoodLimeCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodLimeCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/limecake.rsi + + +- type: entity + parent: FoodBase + name: meat bread + id: FoodMeatBread + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodMeatBreadSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/meatbread.rsi + + +- type: entity + parent: FoodBase + name: meat pizza + id: FoodMeatPizza + components: + - type: Food + trash: TrashTray + - type: SliceableFood + count: 6 + slice: FoodMeatPizzaSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 48 + - type: Sprite + sprite: Objects/Consumable/Food/meatpizza.rsi + + +- type: entity + parent: FoodBase + name: mushroom pizza + id: FoodMushroomPizza + components: + - type: Food + trash: TrashTray + - type: SliceableFood + count: 6 + slice: FoodMushroomPizzaSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 48 + - type: Sprite + sprite: Objects/Consumable/Food/mushroompizza.rsi + + +- type: entity + parent: FoodBase + name: orange cake + id: FoodOrangeCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodOrangeCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/orangecake.rsi + + +- type: entity + parent: FoodBase + name: margherita pizza + id: FoodMargheritaPizza + components: + - type: Food + trash: TrashTray + - type: SliceableFood + count: 6 + slice: FoodMargheritaPizzaSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 48 + - type: Sprite + sprite: Objects/Consumable/Food/pizzamargherita.rsi + + +- type: entity + parent: FoodBase + name: plain cake + id: FoodPlainCake + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodPlainCakeSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/plaincake.rsi + + +- type: entity + parent: FoodBase + name: pumpkin pie + id: FoodPumpkinPie + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodPumpkinPieSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/pumpkinpie.rsi + + - type: Item + sprite: Objects/Consumable/Food/pumpkinpie.rsi + + +- type: entity + parent: FoodBase + name: tofu bread + id: FoodTofuBread + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodTofuBreadSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/tofubread.rsi + + +- type: entity + parent: FoodBase + name: vegetable pizza + id: FoodVegetablePizza + components: + - type: Food + trash: TrashTray + - type: SliceableFood + count: 6 + slice: FoodVegetablePizzaSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 48 + - type: Sprite + sprite: Objects/Consumable/Food/vegetablepizza.rsi + + +- type: entity + parent: FoodBase + name: xenomeat bread + id: FoodXenomeatBread + components: + - type: Food + trash: TrashTray + - type: SliceableFood + slice: FoodXenomeatBreadSlice + - type: SolutionContainer + contents: + reagents: + - ReagentId: chem.Nutriment + Quantity: 40 + - type: Sprite + sprite: Objects/Consumable/Food/xenomeatbread.rsi diff --git a/Resources/Prototypes/Entities/Objects/Consumable/food_containers.yml b/Resources/Prototypes/Entities/Objects/Consumable/food_containers.yml index c93a29479e..e0da03970b 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/food_containers.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/food_containers.yml @@ -8,128 +8,7 @@ state: icon netsync: false - # Containers -- type: entity - parent: FoodContainerBase - name: apple cake - id: FoodContainerAppleCake - components: - - type: FoodContainer - prototypes: - FoodAppleCakeSlice: 100 - trash: TrashTray - - type: Sprite - sprite: Objects/Consumable/FoodContainers/apple_cake.rsi - - -- type: entity - parent: FoodContainerBase - name: banana bread - id: FoodContainerBananaBread - components: - - type: FoodContainer - prototypes: - FoodBananaBreadSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/bananabread.rsi - - -- type: entity - parent: FoodContainerBase - name: birthday cake - id: FoodContainerBirthdayCake - components: - - type: FoodContainer - prototypes: - FoodBirthdayCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/birthdaycake.rsi - - -- type: entity - parent: FoodContainerBase - name: brain cake - id: FoodContainerBrainCake - components: - - type: FoodContainer - prototypes: - FoodBrainCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/braincake.rsi - - -- type: entity - parent: FoodContainerBase - name: bread - id: FoodContainerBread - components: - - type: FoodContainer - prototypes: - FoodBreadSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/bread.rsi - - -- type: entity - parent: FoodContainerBase - name: carrot cake - id: FoodContainerCarrotCake - components: - - type: FoodContainer - prototypes: - FoodCarrotCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/carrotcake.rsi - - -- type: entity - parent: FoodContainerBase - name: cheesecake - id: FoodContainerCheeseCake - components: - - type: FoodContainer - prototypes: - FoodCheeseCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/cheesecake.rsi - - -- type: entity - parent: FoodContainerBase - name: cheese wheel - id: FoodContainerCheeseWheel - components: - - type: FoodContainer - prototypes: - FoodCheeseWedge: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/apple_cake.rsi - - -- type: entity - parent: FoodContainerBase - name: chocolate cake - id: FoodContainerChocolateCake - components: - - type: FoodContainer - prototypes: - FoodChocolateCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/chocolatecake.rsi - - -- type: entity - parent: FoodContainerBase - name: cream cheese bread - id: FoodContainerCreamCheeseBread - components: - - type: FoodContainer - prototypes: - FoodCreamCheeseBreadSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/creamcheesebread.rsi - - type: entity parent: FoodContainerBase @@ -191,55 +70,6 @@ base_state: eggbox steps: 13 -- type: entity - parent: FoodContainerBase - name: lemon cake - id: FoodContainerLemonCake - components: - - type: FoodContainer - prototypes: - FoodLemonCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/lemoncake.rsi - - -- type: entity - parent: FoodContainerBase - name: lime cake - id: FoodContainerLimeCake - components: - - type: FoodContainer - prototypes: - FoodLimeCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/limecake.rsi - - -- type: entity - parent: FoodContainerBase - name: meat bread - id: FoodContainerMeatBread - components: - - type: FoodContainer - prototypes: - FoodMeatBreadSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/meatbread.rsi - - -- type: entity - parent: FoodContainerBase - name: meat pizza - id: FoodContainerMeatPizza - components: - - type: FoodContainer - capacity: 6 - prototypes: - FoodMeatPizzaSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/meatpizza.rsi - - # These two will probably get moved one day - type: entity parent: FoodContainerBase @@ -253,7 +83,6 @@ - type: Sprite sprite: Objects/Consumable/FoodContainers/monkeycubebox.rsi - - type: entity parent: FoodContainerBase name: monkey cube wrap @@ -267,32 +96,6 @@ - type: Sprite sprite: Objects/Consumable/FoodContainers/monkeycubewrap.rsi - -- type: entity - parent: FoodContainerBase - name: mushroom pizza - id: FoodContainerMushroomPizza - components: - - type: FoodContainer - capacity: 6 - prototypes: - FoodMushroomPizzaSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/mushroompizza.rsi - - -- type: entity - parent: FoodContainerBase - name: orange cake - id: FoodContainerOrangeCake - components: - - type: FoodContainer - prototypes: - FoodOrangeCakeSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/orangecake.rsi - - # TODO: Probably replace it with a stacking thing - type: entity parent: FoodContainerBase @@ -329,80 +132,3 @@ - type: Item sprite: Objects/Consumable/FoodContainers/pizzabox.rsi - -- type: entity - parent: FoodContainerBase - name: margherita pizza - id: FoodContainerMargheritaPizza - components: - - type: FoodContainer - capacity: 6 - prototypes: - FoodMargheritaPizzaSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/pizzamargherita.rsi - - -- type: entity - parent: FoodContainerBase - name: plain cake - id: FoodContainerPlainCake - components: - - type: FoodContainer - prototypes: - FoodPlainCakeSlice: 100 - trash: TrashTray - - type: Sprite - sprite: Objects/Consumable/FoodContainers/plaincake.rsi - - -- type: entity - parent: FoodContainerBase - name: pumpkin pie - id: FoodContainerPumpkinPie - components: - - type: FoodContainer - prototypes: - FoodPumpkinPieSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/pumpkinpie.rsi - - - type: Item - sprite: Objects/Consumable/FoodContainers/pumpkinpie.rsi - -- type: entity - parent: FoodContainerBase - name: tofu bread - id: FoodContainerTofuBread - components: - - type: FoodContainer - prototypes: - FoodTofuBreadSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/tofubread.rsi - - -- type: entity - parent: FoodContainerBase - name: vegetable pizza - id: FoodContainerVegetablePizza - components: - - type: FoodContainer - capacity: 6 - prototypes: - FoodVegetablePizzaSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/vegetablepizza.rsi - - -- type: entity - parent: FoodContainerBase - name: xenomeat bread - id: FoodContainerXenomeatBread - components: - - type: FoodContainer - prototypes: - FoodXenomeatBreadSlice: 100 - - type: Sprite - sprite: Objects/Consumable/FoodContainers/xenomeatbread.rsi - diff --git a/Resources/Prototypes/Entities/Objects/Consumable/kitchen_reagent_containers.yml b/Resources/Prototypes/Entities/Objects/Consumable/kitchen_reagent_containers.yml index 0815d3ac06..3a0fc6f0d4 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/kitchen_reagent_containers.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/kitchen_reagent_containers.yml @@ -6,7 +6,6 @@ components: - type: SolutionContainer maxVol: 50 - caps: AddTo, RemoveFrom contents: reagents: - ReagentId: chem.Flour diff --git a/Resources/Prototypes/Entities/Objects/Consumable/trash_drinks.yml b/Resources/Prototypes/Entities/Objects/Consumable/trash_drinks.yml index 16cb3c0946..5364681a1f 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/trash_drinks.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/trash_drinks.yml @@ -1,4 +1,4 @@ -# These can still be used as containers +# These can still be used as containers - type: entity name: base empty bottle parent: BaseItem @@ -12,7 +12,6 @@ - type: SolutionContainer maxVol: 10 - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5 - type: Drink diff --git a/Resources/Prototypes/Entities/Objects/Fun/toys.yml b/Resources/Prototypes/Entities/Objects/Fun/toys.yml index 0d61da304d..244cc4e5e7 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/toys.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/toys.yml @@ -34,7 +34,7 @@ name: lizard plushie parent: BaseItem id: PlushieLizard - description: An adorable stuffed toy that resembles a lizardperson. + description: An adorable stuffed toy that resembles a lizardperson. Made by CentCom as a token initiative to combat speciesism in work environments. "Welcome your new colleges as you do this plush, with open arms!" components: - type: Toys - type: LoopingSound @@ -528,7 +528,6 @@ - type: Sprite sprite: Objects/Fun/toys.rsi state: foamblade - - type: MeleeWeapon range: 2.0 arcwidth: 0 @@ -539,6 +538,15 @@ HeldPrefix: foamblade - type: ItemCooldown +- type: entity + name: foamblade + parent: FoamBlade + id: FoamBladeAdminbus + suffix: adminbused + components: + - type: MeleeWeapon + damage: 1000 + # MISC - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Misc/bedsheets.yml b/Resources/Prototypes/Entities/Objects/Misc/bedsheets.yml index 014ca554bd..c00aa0dfa7 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/bedsheets.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/bedsheets.yml @@ -15,7 +15,7 @@ size: 10 QuickEquip: true Slots: - - back + - neck - type: SnapGrid offset: Center @@ -28,9 +28,6 @@ state: sheetblack - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/black.rsi - type: entity @@ -42,9 +39,6 @@ state: sheetblue - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/blue.rsi - type: entity @@ -56,9 +50,6 @@ state: sheetbrown - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/brown.rsi - type: entity @@ -71,93 +62,78 @@ state: sheetcaptain - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/captain.rsi - type: entity id: BedsheetCE parent: BedsheetBase - name: ce's bedsheet + name: CE's bedsheet + description: It is decorated with a wrench emblem. It's highly reflective and stain resistant, so you don't need to worry about ruining it with oil. components: - type: Sprite state: sheetce - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/ce.rsi - type: entity id: BedsheetCentcom parent: BedsheetBase - name: centcom bedsheet + name: Centcom bedsheet + description: Woven with advanced nanothread for warmth as well as being very decorated, essential for all officials. components: - type: Sprite state: sheetcentcom - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/centcom.rsi - type: entity id: BedsheetClown parent: BedsheetBase name: clown's bedsheet + description: A rainbow blanket with a clown mask woven in. It smells faintly of bananas. components: - type: Sprite state: sheetclown - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/rainbow.rsi - type: entity id: BedsheetCMO parent: BedsheetBase - name: cmo's bedsheet + name: CMO's bedsheet + description: It's a sterilized blanket that has a cross emblem. There's some cat fur on it, likely from Runtime. components: - type: Sprite state: sheetcmo - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/cmo.rsi - type: entity id: BedsheetCosmos parent: BedsheetBase name: cosmos bedsheet + description: Made from the dreams of those who wonder at the stars. components: - type: Sprite state: sheetcosmos - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/cosmos.rsi - type: entity id: BedsheetCult parent: BedsheetBase name: cult bedsheet + description: You might dream of Nar'Sie if you sleep with this. It seems rather tattered and glows of an eldritch presence. components: - type: Sprite state: sheetcult - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/cult.rsi - type: entity @@ -169,9 +145,6 @@ state: sheetgreen - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/green.rsi - type: entity @@ -183,93 +156,77 @@ state: sheetgrey - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/grey.rsi - type: entity id: BedsheetHOP parent: BedsheetBase - name: hop's bedsheet + name: HOP's bedsheet + description: It is decorated with a key emblem. For those rare moments when you can rest and cuddle with Ian without someone screaming for you over the radio. components: - type: Sprite state: sheethop - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/hop.rsi - type: entity id: BedsheetHOS parent: BedsheetBase - name: hos's bedsheet + name: HOS's bedsheet + description: It is decorated with a shield emblem. While crime doesn't sleep, you do, but you are still THE LAW! components: - type: Sprite state: sheethos - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/hos.rsi - type: entity id: BedsheetIan parent: BedsheetBase - name: ian bedsheet + name: Ian bedsheet components: - type: Sprite state: sheetian - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/ian.rsi - type: entity id: BedsheetMedical parent: BedsheetBase name: medical bedsheet + description: It's a sterilized* blanket commonly used in the Medbay. *Sterilization is voided if a virologist is present onboard the station. components: - type: Sprite state: sheetmedical - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/medical.rsi - type: entity id: BedsheetMime parent: BedsheetBase name: mime's bedsheet + description: A very soothing striped blanket. All the noise just seems to fade out when you're under the covers in this. components: - type: Sprite state: sheetmime - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/mime.rsi - type: entity id: BedsheetNT parent: BedsheetBase - name: nt bedsheet + name: NT bedsheet + description: It has the Nanotrasen logo on it and an aura of duty. components: - type: Sprite state: sheetNT - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/NT.rsi - type: entity @@ -281,9 +238,6 @@ state: sheetorange - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/orange.rsi - type: entity @@ -295,23 +249,17 @@ state: sheetpurple - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/purple.rsi - type: entity id: BedsheetQM parent: BedsheetBase - name: qm's bedsheet + name: QM's bedsheet components: - type: Sprite state: sheetqm - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/qm.rsi - type: entity @@ -323,23 +271,18 @@ state: sheetrainbow - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/rainbow.rsi - type: entity id: BedsheetRD parent: BedsheetBase - name: rd's bedsheet + name: RD's bedsheet + description: It appears to have a beaker emblem, and is made out of fire-resistant material, although it probably won't protect you in the event of fires you're familiar with every day. components: - type: Sprite state: sheetrd - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/rd.rsi - type: entity @@ -351,37 +294,29 @@ state: sheetred - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/red.rsi - type: entity id: BedsheetSyndie parent: BedsheetBase - name: syndie bedsheet + name: Syndie bedsheet + description: It has a syndicate emblem and it has an aura of evil. components: - type: Sprite state: sheetsyndie - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/syndie.rsi - type: entity id: BedsheetUSA parent: BedsheetBase - name: usa bedsheet + name: USA bedsheet components: - type: Sprite state: sheetUSA - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/USA.rsi - type: entity @@ -393,23 +328,18 @@ state: sheetwhite - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/white.rsi - type: entity id: BedsheetWiz parent: BedsheetBase name: wizard's bedsheet + description: A special fabric enchanted with magic so you can have an enchanted night. It even glows! components: - type: Sprite state: sheetwiz - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/wiz.rsi - type: entity @@ -421,7 +351,4 @@ state: sheetyellow - type: Clothing size: 10 - QuickEquip: true - Slots: - - neck sprite: Clothing/Neck/Bedsheets/yellow.rsi diff --git a/Resources/Prototypes/Entities/Objects/Boxes/boxbase.yml b/Resources/Prototypes/Entities/Objects/Misc/box.yml similarity index 100% rename from Resources/Prototypes/Entities/Objects/Boxes/boxbase.yml rename to Resources/Prototypes/Entities/Objects/Misc/box.yml diff --git a/Resources/Prototypes/Entities/Objects/Misc/dat_fukken_disk.yml b/Resources/Prototypes/Entities/Objects/Misc/dat_fukken_disk.yml index c1107f0d7f..62783ee50c 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/dat_fukken_disk.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/dat_fukken_disk.yml @@ -2,7 +2,7 @@ name: nuclear authentication disk parent: BaseItem id: NukeDisk - description: GET DAT FUCKKEN DISK + description: A nuclear auth disk, capable of arming a nuke if used along with a code. Note from nanotrasen reads "THIS IS YOUR MOST IMPORTANT POSESSION, SECURE DAT FUKKEN DISK!" components: - type: Sprite netsync: false @@ -16,4 +16,4 @@ - type: entity parent: NukeDisk id: NukeDiskFake - description: GET DAT FUCK- wait a second... + description: A nuclear auth disk, capable of.. WAIT THIS IS JUST PAINTED PLASTIC, FUCK- diff --git a/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml b/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml index ed5fc0166b..7070e43629 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml @@ -14,10 +14,10 @@ size: 10 - type: SolutionContainer maxVol: 100 - caps: AddTo, RemoveFrom, NoExamine + caps: AddTo, RemoveFrom contents: reagents: - - ReagentId: chem.H2O + - ReagentId: chem.Water Quantity: 100 - type: ItemCooldown - type: Spray diff --git a/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml b/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml index 54b10a78c9..f4c5420753 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml @@ -133,8 +133,6 @@ thresholds: 10: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/glass_break1.ogg - !type:SpawnEntitiesBehavior @@ -142,6 +140,8 @@ FloodlightBroken: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Appearance visuals: - type: FlashLightVisualizer @@ -162,8 +162,6 @@ thresholds: 20: behaviors: - - !type:DoActsBehavior - acts: ["Destruction"] - !type:PlaySoundBehavior sound: /Audio/Effects/metalbreak.ogg - !type:SpawnEntitiesBehavior @@ -171,6 +169,8 @@ SteelSheet1: min: 1 max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Physics shapes: - !type:PhysShapeAabb diff --git a/Resources/Prototypes/Entities/Constructible/Items/metal_rod.yml b/Resources/Prototypes/Entities/Objects/Misc/metal_rod.yml similarity index 87% rename from Resources/Prototypes/Entities/Constructible/Items/metal_rod.yml rename to Resources/Prototypes/Entities/Objects/Misc/metal_rod.yml index 07933633d2..504f771f09 100644 --- a/Resources/Prototypes/Entities/Constructible/Items/metal_rod.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/metal_rod.yml @@ -10,9 +10,8 @@ - type: Item size: 24 icon: - sprite: /Textures/Constructible/Structures/Walls/materials.rsi + sprite: Objects/Materials/materials.rsi state: rods - prefix: inhand - type: Construction graph: metalRod node: MetalRod diff --git a/Resources/Prototypes/Entities/Objects/Power/lights.yml b/Resources/Prototypes/Entities/Objects/Power/lights.yml index 103b422032..0037831aa0 100644 --- a/Resources/Prototypes/Entities/Objects/Power/lights.yml +++ b/Resources/Prototypes/Entities/Objects/Power/lights.yml @@ -1,4 +1,35 @@ - type: entity + parent: BaseItem + id: BaseLightbulb + abstract: true + components: + - type: LightBulb + - type: Damageable + - type: DamageOnLand + amount: 5 + - type: DamageOtherOnHit + amount: 5 + - type: Destructible + thresholds: + 5: + behaviors: + - !type:PlaySoundCollectionBehavior + soundCollection: GlassBreak + - !type:DoActsBehavior + acts: [ "Breakage" ] + 10: + behaviors: + - !type:PlaySoundCollectionBehavior + soundCollection: GlassBreak + - !type:SpawnEntitiesBehavior + spawn: + ShardGlass: + min: 1 + max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity parent: BaseLightbulb name: light bulb id: LightBulb @@ -10,14 +41,6 @@ sprite: Objects/Power/light_bulb.rsi state: normal -- type: entity - parent: BaseItem - name: baselightbulb - id: BaseLightbulb - abstract: true - components: - - type: LightBulb - - type: entity parent: BaseLightbulb name: light tube diff --git a/Resources/Prototypes/Entities/Objects/Power/powercells.yml b/Resources/Prototypes/Entities/Objects/Power/powercells.yml index a0c7b0e26b..d94314de03 100644 --- a/Resources/Prototypes/Entities/Objects/Power/powercells.yml +++ b/Resources/Prototypes/Entities/Objects/Power/powercells.yml @@ -1,4 +1,4 @@ -# Power cells +# Power cells - type: entity id: PowerCellBase diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml index 45e43067c9..28bfe4a37c 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml @@ -13,7 +13,7 @@ - type: SolutionContainer fillingState: beaker maxVol: 50 - caps: AddTo, RemoveFrom, FitsInDispenser # can add and remove solutions and fits in the chemmaster. + caps: CanExamine, AddTo, RemoveFrom, FitsInDispenser # can add and remove solutions and fits in the chemmaster. - type: Pourable transferAmount: 5.0 - type: Spillable @@ -34,7 +34,7 @@ - type: SolutionContainer fillingState: beakerlarge maxVol: 100 - caps: AddTo, RemoveFrom, FitsInDispenser + caps: CanExamine, AddTo, RemoveFrom, FitsInDispenser - type: Pourable transferAmount: 5.0 - type: Spillable @@ -53,7 +53,6 @@ fillingState: dropper fillingSteps: 2 maxVol: 5 - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5.0 - type: Spillable @@ -71,7 +70,6 @@ fillingState: syringe fillingSteps: 5 maxVol: 15 - caps: AddTo, RemoveFrom - type: Injector injectOnly: false - type: Spillable @@ -87,7 +85,6 @@ - type: Drink - type: SolutionContainer maxVol: 30 - caps: AddTo, RemoveFrom - type: Pourable transferAmount: 5 - type: Spillable @@ -104,4 +101,4 @@ - type: Pill - type: SolutionContainer maxVol: 50 - caps: RemoveFrom + caps: None diff --git a/Resources/Prototypes/Entities/Objects/Specific/janitor.yml b/Resources/Prototypes/Entities/Objects/Specific/janitor.yml index c394e7e57c..4b4ba32251 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/janitor.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/janitor.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity parent: BaseItem name: mop id: MopItem @@ -13,7 +13,6 @@ - type: Mop - type: SolutionContainer maxVol: 10 - caps: AddTo, RemoveFrom - type: LoopingSound - type: entity @@ -33,7 +32,6 @@ - type: LoopingSound - type: SolutionContainer maxVol: 500 - caps: AddTo, RemoveFrom - type: Physics mass: 5 anchored: false @@ -65,7 +63,6 @@ - type: LoopingSound - type: SolutionContainer maxVol: 500 - caps: AddTo, RemoveFrom - type: Physics mass: 5 anchored: false @@ -219,10 +216,9 @@ components: - type: SolutionContainer maxVol: 100 - caps: AddTo, RemoveFrom contents: reagents: - - ReagentId: chem.H2O + - ReagentId: chem.Water Quantity: 100 - type: entity @@ -234,7 +230,6 @@ components: - type: SolutionContainer maxVol: 100 - caps: AddTo, RemoveFrom contents: reagents: - ReagentId: chem.SpaceCleaner diff --git a/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml b/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml index e06e4e2893..7bea165c02 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml @@ -15,7 +15,6 @@ sprite: Objects/Consumable/Food/monkeycube.rsi - type: Rehydratable target: MonkeyMob_Content - - type: Grindable - type: entity parent: PlushieCarp diff --git a/Resources/Prototypes/Entities/Objects/Specific/seeds.yml b/Resources/Prototypes/Entities/Objects/Specific/seeds.yml index d4e6acff32..c98868dd24 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/seeds.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/seeds.yml @@ -1,11 +1,11 @@ -- type: entity +- type: entity parent: BaseItem id: SeedBase abstract: true components: - type: Seed - type: SolutionContainer - caps: NoExamine + caps: None - type: Sprite sprite: Objects/Specific/Hydroponics/seeds.rsi state: seed diff --git a/Resources/Prototypes/Entities/Objects/Tools/botany_tools.yml b/Resources/Prototypes/Entities/Objects/Tools/botany_tools.yml index c3b1f3d47e..b4dceedbf2 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/botany_tools.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/botany_tools.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity name: mini hoe parent: BaseItem id: MiniHoe @@ -24,7 +24,7 @@ state: plantbgone - type: SolutionContainer maxVol: 100 - caps: RemoveFrom, NoExamine + caps: RemoveFrom contents: reagents: - ReagentId: chem.PlantBGone @@ -42,7 +42,7 @@ state: weedspray - type: SolutionContainer maxVol: 50 - caps: RemoveFrom, NoExamine + caps: RemoveFrom contents: reagents: - ReagentId: chem.WeedKiller @@ -65,7 +65,7 @@ state: pestspray - type: SolutionContainer maxVol: 50 - caps: RemoveFrom, NoExamine + caps: RemoveFrom contents: reagents: - ReagentId: chem.PestKiller diff --git a/Resources/Prototypes/Entities/Objects/Tools/cowtools.yml b/Resources/Prototypes/Entities/Objects/Tools/cowtools.yml index e839e1ad94..0545aad5fd 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/cowtools.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/cowtools.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity name: haycutters parent: BaseItem id: Haycutters @@ -114,7 +114,7 @@ - type: ItemStatus - type: SolutionContainer maxVol: 50 - caps: AddTo, NoExamine + caps: AddTo contents: reagents: - ReagentId: chem.WeldingFuel diff --git a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml index 26e3cc5788..6b219b7c63 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml @@ -15,9 +15,6 @@ - type: Clothing sprite: Objects/Tanks/generic.rsi QuickEquip: false - Slots: - - Back - - Belt - type: GasTank - type: ItemActions actions: @@ -41,22 +38,6 @@ sprite: Objects/Tanks/oxygen.rsi Slots: - Back - - Belt - -- type: entity - id: OxygenTankFilled - parent: OxygenTank - name: oxygen tank - description: A tank of oxygen. - suffix: Filled - components: - - type: GasTank - outputPressure: 21.27825 - air: - volume: 70 - moles: - - 22.6293856 # oxygen - temperature: 293.15 - type: entity id: YellowOxygenTank @@ -71,22 +52,6 @@ sprite: Objects/Tanks/yellow.rsi Slots: - Back - - Belt - -- type: entity - id: YellowOxygenTankFilled - parent: OxygenTankFilled - name: oxygen tank - description: A tank of oxygen. This one is in yellow. - suffix: Filled - components: - - type: Sprite - sprite: Objects/Tanks/yellow.rsi - - type: Clothing - sprite: Objects/Tanks/yellow.rsi - Slots: - - Back - - Belt - type: entity id: RedOxygenTank @@ -101,22 +66,6 @@ sprite: Objects/Tanks/red.rsi Slots: - Back - - Belt - -- type: entity - id: RedOxygenTankFilled - parent: OxygenTankFilled - name: oxygen tank - description: A tank of oxygen. This one is in yellow. - suffix: Filled - components: - - type: Sprite - sprite: Objects/Tanks/red.rsi - - type: Clothing - sprite: Objects/Tanks/red.rsi - Slots: - - Back - - Belt - type: entity id: EmergencyOxygenTank @@ -138,21 +87,6 @@ - Pocket - Belt -- type: entity - id: EmergencyOxygenTankFilled - parent: EmergencyOxygenTank - name: emergency oxygen tank - description: Used for emergencies. Contains very little oxygen, so try to conserve it until you actually need it. - suffix: Filled - components: - - type: GasTank - outputPressure: 21.27825 - air: - volume: 2 - moles: - - 0.323460326 # oxygen - temperature: 293.15 - - type: entity id: ExtendedEmergencyOxygenTank parent: EmergencyOxygenTank @@ -173,21 +107,6 @@ - Pocket - Belt -- type: entity - id: ExtendedEmergencyOxygenTankFilled - parent: ExtendedEmergencyOxygenTank - name: extended-capacity emergency oxygen tank - description: Used for emergencies. Contains very little oxygen, so try to conserve it until you actually need it. - suffix: Filled - components: - - type: GasTank - outputPressure: 21.27825 - air: - volume: 6 - moles: - - 0.969830813 # oxygen - temperature: 293.15 - - type: entity id: DoubleEmergencyOxygenTank parent: ExtendedEmergencyOxygenTank @@ -208,21 +127,6 @@ - Pocket - Belt -- type: entity - id: DoubleEmergencyOxygenTankFilled - parent: DoubleEmergencyOxygenTank - name: double emergency oxygen tank - description: Used for emergencies. Contains very little oxygen, so try to conserve it until you actually need it. - suffix: Filled - components: - - type: GasTank - outputPressure: 21.27825 - air: - volume: 10 - moles: - - 1.61721219 # oxygen - temperature: 293.15 - - type: entity id: AirTank parent: GasTankBase @@ -241,30 +145,6 @@ sprite: Objects/Tanks/generic.rsi Slots: - Back - - Belt - -- type: entity - id: AirTankFilled - parent: GasTankBase - name: air tank - description: Mixed anyone? - suffix: Filled - components: - - type: Sprite - sprite: Objects/Tanks/generic.rsi - - type: GasTank - outputPressure: 101.325 - air: - volume: 70 - moles: - - 4.75217098 # oxygen - - 17.8772147 # nitrogen - temperature: 293.15 - - type: Clothing - sprite: Objects/Tanks/generic.rsi - Slots: - - Back - - Belt - type: entity id: PhoronTank @@ -284,21 +164,3 @@ sprite: Objects/Tanks/phoron.rsi Slots: - Belt - -- type: entity - id: PhoronTankFilled - parent: PhoronTank - name: phoron tank - suffix: Filled - description: "Contains dangerous phoron. Do not inhale. Warning: extremely flammable." - components: - - type: GasTank - outputPressure: 101.325 - air: - volume: 70 - moles: - - 0 - - 0 - - 0 - - 11.3146928 # phoron - temperature: 293.15 diff --git a/Resources/Prototypes/Entities/Objects/Tools/matches.yml b/Resources/Prototypes/Entities/Objects/Tools/matches.yml new file mode 100644 index 0000000000..3c9c337b6c --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Tools/matches.yml @@ -0,0 +1,53 @@ +- type: entity + id: SmallboxItem + parent: BaseItem + abstract: true + components: + - type: Storage + capacity: 10 + - type: Item + size: 6 + +- type: entity + name: match stick + parent: BaseItem + id: Matchstick + description: "A simple match stick, used for lighting fine smokables." + components: + - type: Sprite + netsync: false + sprite: Objects/Tools/matches.rsi + layers: + - state: match_unlit + - type: Item + size: 1 + sprite: Objects/Tools/matches.rsi + - type: Matchstick + duration: 10 + igniteSound: /Audio/Items/match_strike.ogg + - type: PointLight + enabled: false + radius: 1.1 + color: darkorange + - type: Appearance + visuals: + - type: BurnStateVisualizer + unlitIcon: match_unlit + litIcon: match_lit + burntIcon: match_burnt + +- type: entity + name: match box + parent: SmallboxItem + id: Matchbox + description: "A small box of Almost But Not Quite Plasma Premium Matches." + components: + - type: Matchbox + - type: Sprite + sprite: Objects/Tools/matches.rsi + layers: + - state: matchbox + - type: StorageFill + contents: + - name: Matchstick + amount: 6 diff --git a/Resources/Prototypes/Entities/Objects/Tools/toolbox.yml b/Resources/Prototypes/Entities/Objects/Tools/toolbox.yml index 282b5d590f..ec91c98612 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/toolbox.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/toolbox.yml @@ -24,25 +24,6 @@ - type: Item sprite: Objects/Tools/Toolboxes/toolbox_red.rsi -- type: entity - id: ToolboxEmergencyFilled - name: emergency toolbox - parent: ToolboxEmergency - suffix: Filled - components: - - type: StorageFill - contents: - - name: ClothingMaskBreath - amount: 2 - - name: FoodChocolateBar - - name: FlashlightLantern - amount: 2 - - name: HarmonicaInstrument - prob: 0.15 - orGroup: HarmonicaOrChocolate - - name: FoodChocolateBar - orGroup: HarmonicaOrChocolate - - type: entity name: mechanical toolbox parent: ToolboxBase @@ -67,25 +48,6 @@ - type: Item sprite: Objects/Tools/Toolboxes/toolbox_yellow.rsi -- type: entity - id: ToolboxElectricalFilled - name: electrical toolbox - suffix: Filled - parent: ToolboxElectrical - components: - - type: StorageFill - contents: - - name: Screwdriver - - name: Crowbar - - name: Wirecutter - - name: ApcExtensionCableStack - - name: MVWireStack - - name: ClothingHandsGlovesColorYellow - prob: 0.05 - orGroup: GlovesOrWires - - name: HVWireStack - orGroup: GlovesOrWires - - type: entity name: artistic toolbox parent: ToolboxBase @@ -112,22 +74,6 @@ - type: MeleeWeapon damage: 15 -- type: entity - id: ToolboxSyndicateFilled - name: suspicious toolbox - suffix: Filled - parent: ToolboxSyndicate - components: - - type: StorageFill - contents: - - name: Screwdriver - - name: Wrench - - name: Welder - - name: Crowbar - - name: Multitool - - name: Wirecutter - - name: ClothingHandsGlovesCombat - - type: entity name: golden toolbox parent: ToolboxBase @@ -139,19 +85,3 @@ state: icon - type: Item sprite: Objects/Tools/Toolboxes/toolbox_gold.rsi - -- type: entity - id: ToolboxGoldFilled - name: golden toolbox - parent: ToolboxGolden - suffix: Filled - components: - - type: StorageFill - contents: - - name: GoldStack - amount: 5 - - name: DrinkGoldenCup - prob: 0.05 - orGroup: CupOrGold - - name: GoldStack - orGroup: CupOrGold diff --git a/Resources/Prototypes/Entities/Objects/Tools/tools.yml b/Resources/Prototypes/Entities/Objects/Tools/tools.yml index 6c65076cb0..a91d8bbbae 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/tools.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/tools.yml @@ -123,7 +123,10 @@ components: - type: Sprite sprite: Objects/Tools/multitool.rsi - state: multitool + layers: + - state: icon + - state: green-unlit + shader: unshaded - type: Clothing size: 10 sprite: Objects/Tools/multitool.rsi diff --git a/Resources/Prototypes/Entities/Objects/Tools/welders.yml b/Resources/Prototypes/Entities/Objects/Tools/welders.yml index d36404eeb6..7906328243 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/welders.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/welders.yml @@ -20,7 +20,7 @@ - type: ItemStatus - type: SolutionContainer maxVol: 100 - caps: AddTo, NoExamine + caps: AddTo contents: reagents: - ReagentId: chem.WeldingFuel @@ -44,7 +44,7 @@ sprite: Objects/Tools/welder_experimental.rsi - type: SolutionContainer maxVol: 1000 - caps: AddTo, NoExamine + caps: AddTo contents: reagents: - ReagentId: chem.WeldingFuel @@ -66,7 +66,7 @@ sprite: Objects/Tools/welder_mini.rsi - type: SolutionContainer maxVol: 25 - caps: AddTo, NoExamine + caps: AddTo contents: reagents: - ReagentId: chem.WeldingFuel diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Explosives/clusterbang.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Explosives/clusterbang.yml new file mode 100644 index 0000000000..f307bc77cd --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Explosives/clusterbang.yml @@ -0,0 +1,26 @@ +- type: entity + parent: BaseItem + id: ClusterBang + name: ClusterBang + description: Can be used only with flashbangs. Explodes several times. + components: + - type: Sprite + sprite: Objects/Weapons/Grenades/clusterbang.rsi + netsync: false + state: base-0 + - type: Appearance + visuals: + - type: ClusterFlashVisualizer + state: base + - type: ClusterFlash + +- type: entity + parent: ClusterBang + id: ClusterBangFull + suffix: Full + components: + - type: Sprite + state: base-3 + - type: ClusterFlash + fillPrototype: GrenadeFlashBang + diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/cleaver.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/cleaver.yml deleted file mode 100644 index d87f9a98b0..0000000000 --- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/cleaver.yml +++ /dev/null @@ -1,19 +0,0 @@ -- type: entity - name: butcher's cleaver - parent: BaseItem - id: ButchCleaver - description: A huge blade used for chopping and chopping up meat. This includes clowns and clown-by-products. - components: - - type: Sprite - sprite: Objects/Weapons/Melee/cleaver.rsi - size: 4 - state: butch - - - - - type: ItemCooldown - - type: MeleeWeapon - - type: Item - size: 10 - sprite: Objects/Weapons/Melee/cleaver.rsi - prefix: inhand diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml new file mode 100644 index 0000000000..193afab293 --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml @@ -0,0 +1,49 @@ +- type: entity + parent: BaseItem + id: BaseKnife + abstract: true + components: + - type: Utensil + types: + - Knife + - type: MeleeWeapon + hitSound: /Audio/Weapons/bladeslice.ogg + damage: 12 + - type: Sprite + netsync: false + - type: Item + +- type: entity + name: kitchen knife + parent: BaseKnife + id: KitchenKnife + description: A general purpose Chef's Knife made by Asters Merchant Guild. Guaranteed to stay sharp for years to come.. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/kitchen_knife.rsi + size: 2 + state: icon + + - type: Item + size: 10 + sprite: Objects/Weapons/Melee/kitchen_knife.rsi + prefix: inhand + + +- type: entity + name: butcher's cleaver + parent: BaseKnife + id: ButchCleaver + description: A huge blade used for chopping and chopping up meat. This includes clowns and clown-by-products. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/cleaver.rsi + size: 4 + state: butch + + - type: MeleeWeapon + damage: 20 + - type: Item + size: 10 + sprite: Objects/Weapons/Melee/cleaver.rsi + prefix: inhand diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/spear.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/spear.yml index f4b358ccb2..6df83f9c61 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/spear.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/spear.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity name: spear parent: BaseItem id: Spear @@ -22,7 +22,6 @@ - type: MeleeChemicalInjector - type: SolutionContainer maxVol: 5 - caps: AddTo, RemoveFrom - type: Pourable - type: MeleeWeaponAnimation diff --git a/Resources/Prototypes/Entities/Objects/Weapons/security.yml b/Resources/Prototypes/Entities/Objects/Weapons/security.yml index 362a32f6b2..44b3e66e5f 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/security.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/security.yml @@ -1,8 +1,8 @@ - type: entity name: stun baton - description: A stun baton for incapacitating people with. parent: BaseItem id: Stunbaton + description: A stun baton for incapacitating people with. Actively harming with this is considered bad tone. components: - type: Sprite sprite: Objects/Weapons/Melee/stunbaton.rsi @@ -28,6 +28,7 @@ name: flash parent: BaseItem id: Flash + description: An ultrabright flashbulb with a trigger, causes the victum to be dazed and lose their eyesight for a moment. Useless when burnt out. components: - type: Sprite sprite: Objects/Weapons/Melee/flash.rsi diff --git a/Resources/Prototypes/Entities/puddle.yml b/Resources/Prototypes/Entities/puddle.yml index e14548bfd3..1cb3ec9b43 100644 --- a/Resources/Prototypes/Entities/puddle.yml +++ b/Resources/Prototypes/Entities/puddle.yml @@ -8,7 +8,6 @@ - type: Sprite drawdepth: FloorObjects - type: SolutionContainer - caps: AddTo, RemoveFrom - type: Puddle spill_sound: /Audio/Effects/Fluids/splat.ogg recolor: true diff --git a/Resources/Prototypes/Entities/singularity.yml b/Resources/Prototypes/Entities/singularity.yml index a466e02059..e1576249ed 100644 --- a/Resources/Prototypes/Entities/singularity.yml +++ b/Resources/Prototypes/Entities/singularity.yml @@ -51,6 +51,7 @@ visuals: - type: RadiationCollectorVisualizer - type: NodeContainer + examinable: true nodes: - !type:AdjacentNode nodeGroupID: HVPower @@ -84,6 +85,12 @@ - type: ContainmentFieldGenerator - type: Anchorable - type: Pullable + - type: PointLight + enabled: false + color: "#4080FF" + radius: 32 + energy: 2.0 + softness: 32.0 - type: entity name: Containment Field diff --git a/Resources/Prototypes/Reagents/botany.yml b/Resources/Prototypes/Reagents/botany.yml new file mode 100644 index 0000000000..c1f6a3e321 --- /dev/null +++ b/Resources/Prototypes/Reagents/botany.yml @@ -0,0 +1,82 @@ +- type: reagent + id: chem.EZNutrient + name: EZ nutrient + desc: Give your plants some of those EZ nutrients! + color: "#664330" + physicalDesc: thick + plantMetabolism: + - !type:AdjustNutrition + amount: 1 + +- type: reagent + id: chem.Left4Zed + name: left-4-zed + desc: A cocktail of mutagenic compounds, which cause plant life to become highly unstable. + color: "#5b406c" + physicalDesc: heterogeneous + plantMetabolism: + - !type:AdjustNutrition + amount: 1 + - !type:AdjustHealth + amount: -0.5 + - !type:AdjustMutationMod + prob: 0.3 + amount: 0.2 + +- type: reagent + id: chem.PestKiller + name: pest killer + desc: A mixture that targets pests. + color: "#9e9886" + physicalDesc: bubbling + plantMetabolism: + - !type:AdjustToxins + amount: 4 + - !type:AdjustPests + amount: -6 + +- type: reagent + id: chem.PlantBGone + name: plant-B-gone + desc: A harmful toxic mixture to kill plantlife. Do not ingest! + color: "#49002E" + physicalDesc: bubbling + plantMetabolism: + - !type:AdjustToxins + amount: 6 + - !type:AdjustWeeds + amount: -8 + - !type:AdjustHealth + amount: -20 + - !type:AdjustMutationMod + amount: 0.1 + +- type: reagent + id: chem.RobustHarvest + name: robust harvest + desc: Plant-enhancing hormones, good for increasing potency. + color: "#3e901c" + physicalDesc: robust + customPlantMetabolism: 0.1 + plantMetabolism: + - !type:AdjustNutrition + amount: 0.05 + - !type:AdjustWeeds + prob: 0.025 + amount: 1 + - !type:AdjustPests + prob: 0.025 + amount: 1 + - !type:RobustHarvest {} + +- type: reagent + id: chem.WeedKiller + name: weed killer + desc: A mixture that targets weeds. + color: "#968395" + physicalDesc: bubbling + plantMetabolism: + - !type:AdjustToxins + amount: 4 + - !type:AdjustWeeds + amount: -6 diff --git a/Resources/Prototypes/Reagents/chemicals.yml b/Resources/Prototypes/Reagents/chemicals.yml index bd379b94b9..d7af2363f1 100644 --- a/Resources/Prototypes/Reagents/chemicals.yml +++ b/Resources/Prototypes/Reagents/chemicals.yml @@ -1,104 +1,3 @@ -- type: reagent - id: chem.Nutriment - name: nutriment - desc: All the vitamins, minerals, and carbohydrates the body needs in pure form. - physicalDesc: opaque - color: "#664330" - metabolism: - - !type:DefaultFood - rate: 1 - plantMetabolism: - - !type:AdjustNutrition - amount: 1 - - !type:AdjustHealth - amount: 0.5 - -- type: reagent - id: chem.H2SO4 - name: sulfuric acid - desc: A highly corrosive, oily, colorless liquid. - physicalDesc: oily - color: "#BF8C00" - boilingPoint: 337.0 - meltingPoint: 10.31 - plantMetabolism: - - !type:AdjustToxins - amount: 10 - - !type:AdjustWeeds - amount: -2 - - !type:AdjustHealth - amount: -4 - -- type: reagent - id: chem.H2O - name: water - desc: A colorless liquid that humans need in order to survive. - physicalDesc: translucent - color: "#c0e0ff20" - boilingPoint: 100.0 - meltingPoint: 0.0 - metabolism: - - !type:DefaultDrink - rate: 1 - tileReactions: - - !type:ExtinguishTileReaction {} - - !type:SpillIfPuddlePresentTileReaction {} - plantMetabolism: - - !type:AdjustWater - amount: 1 - -- type: reagent - id: chem.Ice - name: ice - desc: Frozen water. - physicalDesc: frosty - color: "#bed8e6" - meltingPoint: 0.0 - boilingPoint: 100.0 - plantMetabolism: - - !type:AdjustWater - amount: 1 - -- type: reagent - id: chem.Phoron - name: phoron - desc: Funky, space-magic pixie dust. You probably shouldn't eat this, but we both know you will anyways. - physicalDesc: gaseous - color: "#7e009e" - boilingPoint: -127.3 # Random values picked between the actual values for CO2 and O2 - meltingPoint: -186.4 - tileReactions: - - !type:FlammableTileReaction - temperatureMultiplier: 1.5 - -- type: reagent - id: chem.Ethanol - name: ethanol - desc: A simple alcohol, makes you drunk if consumed, flammable. - physicalDesc: strong-smelling - color: "#b05b3c" - boilingPoint: 78.2 - meltingPoint: -114.1 - tileReactions: - - !type:FlammableTileReaction - temperatureMultiplier: 1.35 - -- type: reagent - id: chem.Glucose - name: glucose - desc: A simple sugar found in many foods. - physicalDesc: syrupy - color: "#ffffff" - boilingPoint: 340282300000000000000000000000000000000 #Fun fact: Glucose can't boil. So let's just set it to the maximum float value. - meltingPoint: 146.0 - plantMetabolism: - - !type:AdjustNutrition - amount: 0.1 - - !type:AdjustWeeds - amount: 2 - - !type:AdjustPests - amount: 2 - - type: reagent id: chem.Ammonia name: ammonia @@ -113,15 +12,6 @@ - !type:AdjustHealth amount: 0.5 -- type: reagent - id: chem.Bleach - name: bleach - desc: Heavy duty cleaner that can clean tiles the same as Space Cleaner and also decontaminate clothes. Extremely toxic when ingested. - physicalDesc: strong-smelling - color: "#a1000b" - boilingPoint: 111.0 - meltingPoint: -5.0 - - type: reagent id: chem.Diethylamine name: diethylamine @@ -144,20 +34,86 @@ amount: 1 - !type:Diethylamine {} +- type: reagent + id: chem.Ethanol + name: ethanol + desc: A simple alcohol, makes you drunk if consumed, flammable. + physicalDesc: strong-smelling + color: "#b05b3c" + boilingPoint: 78.2 + meltingPoint: -114.1 + tileReactions: + - !type:FlammableTileReaction + temperatureMultiplier: 1.35 - type: reagent id: chem.FoamingAgent name: foaming agent - desc: Makes foam such as that required in metal foam grenades + desc: Makes foam such as that's required in metal foam grenades. physicalDesc: foamy color: "#215263" boilingPoint: 418.0 # I went with ammonium lauryl sulfate as the basis for this meltingPoint: 7.4 # I made this up +- type: reagent + id: chem.Glucose + name: glucose + desc: A simple sugar found in many foods. + physicalDesc: syrupy + color: "#ffffff" + boilingPoint: 340282300000000000000000000000000000000 #Fun fact: Glucose can't boil. So let's just set it to the maximum float value. + meltingPoint: 146.0 + plantMetabolism: + - !type:AdjustNutrition + amount: 0.1 + - !type:AdjustWeeds + amount: 2 + - !type:AdjustPests + amount: 2 + +- type: reagent + id: chem.Ice + name: ice + desc: Frozen water. + physicalDesc: frosty + color: "#bed8e6" + meltingPoint: 0.0 + boilingPoint: 100.0 + plantMetabolism: + - !type:AdjustWater + amount: 1 + +- type: reagent + id: chem.Nutriment + name: nutriment + desc: All the vitamins, minerals, and carbohydrates the body needs in pure form. + physicalDesc: opaque + color: "#664330" + metabolism: + - !type:DefaultFood + rate: 1 + plantMetabolism: + - !type:AdjustNutrition + amount: 1 + - !type:AdjustHealth + amount: 0.5 + +- type: reagent + id: chem.Phoron + name: phoron + desc: Funky, space-magic pixie dust. You probably shouldn't eat this, but we both know you will anyways. + physicalDesc: gaseous + color: "#7e009e" + boilingPoint: -127.3 # Random values picked between the actual values for CO2 and O2 + meltingPoint: -186.4 + tileReactions: + - !type:FlammableTileReaction + temperatureMultiplier: 1.5 + - type: reagent id: chem.PolytrinicAcid name: polytrinic acid - desc: An extremely corrosive chemical substance. The slightest touch of it will melt off most masks and headgear, and it deals extreme damage to anyone who comes directly into contact with it. Spraying it on other items will usually melt them too, which does make it useful if the clown has covered the entire hallway in banana peels. + desc: An extremely corrosive chemical substance. The slightest touch of it will melt off most masks and headgear, and it deals extreme damage to anyone who comes directly into contact with it. physicalDesc: strong-smelling color: "#a1000b" boilingPoint: 78.2 # This isn't a real chemical... @@ -170,31 +126,6 @@ - !type:AdjustHealth amount: -8 -- type: reagent - id: chem.SpaceCleaner - name: space cleaner - desc: This is able to clean almost all surfaces of almost anything that may dirty them. The janitor is likely to appreciate refills. - physicalDesc: lemony fresh - color: "#c8ff69" - boilingPoint: 147.0 # Made this up, loosely based on bleach - meltingPoint: -11.0 - tileReactions: - - !type:CleanTileReaction {} - -- type: reagent - id: chem.SpaceLube - name: space lube - desc: Space Lube is a high performance lubricant intended for maintenance of extremely complex mechanical equipment (and certainly not used to make people slip). - physicalDesc: shiny - color: "#77b58e" - boilingPoint: 290.0 # Glycerin - meltingPoint: 18.2 - tileReactions: - - !type:SpillTileReaction - paralyzeTime: 3 - launchForwardsMultiplier: 2 - requiredSlipSpeed: 1 - - type: reagent id: chem.TableSalt name: table salt @@ -229,6 +160,46 @@ - !type:FlammableTileReaction temperatureMultiplier: 1.35 +- type: reagent + id: chem.Toxin + name: toxin + desc: A Toxic chemical. + color: "#cf3600" + physicalDesc: opaque + plantMetabolism: + - !type:AdjustToxins + amount: 10 + +- type: reagent + id: chem.Sugar + name: sugar + desc: Sweet. + color: "#ffffff" + physicalDesc: opaque + plantMetabolism: + - !type:AdjustNutrition + amount: 0.1 + - !type:AdjustWeeds + amount: 2 + - !type:AdjustPests + amount: 2 + +- type: reagent + id: chem.SulfuricAcid + name: sulfuric acid + desc: A highly corrosive, oily, colorless liquid. + physicalDesc: oily + color: "#BF8C00" + boilingPoint: 337.0 + meltingPoint: 10.31 + plantMetabolism: + - !type:AdjustToxins + amount: 10 + - !type:AdjustWeeds + amount: -2 + - !type:AdjustHealth + amount: -4 + - type: reagent id: chem.UnstableMutagen name: unstable mutagen @@ -242,6 +213,24 @@ - !type:AdjustMutationLevel amount: 1 +- type: reagent + id: chem.Water + name: water + desc: A colorless liquid that humans need in order to survive. + physicalDesc: translucent + color: "#c0e0ff20" + boilingPoint: 100.0 + meltingPoint: 0.0 + metabolism: + - !type:DefaultDrink + rate: 1 + tileReactions: + - !type:ExtinguishTileReaction {} + - !type:SpillIfPuddlePresentTileReaction {} + plantMetabolism: + - !type:AdjustWater + amount: 1 + - type: reagent id: chem.WeldingFuel name: welding fuel @@ -252,110 +241,3 @@ meltingPoint: -80.7 tileReactions: - !type:FlammableTileReaction {} - -- type: reagent - id: chem.EZNutrient - name: EZ nutrient - desc: Give your plants some of those EZ nutrients! - color: "#664330" - physicalDesc: thick - plantMetabolism: - - !type:AdjustNutrition - amount: 1 - -- type: reagent - id: chem.Left4Zed - name: left-4-zed - desc: A cocktail of mutagenic compounds, which cause plant life to become highly unstable. - color: "#5b406c" - physicalDesc: heterogeneous - plantMetabolism: - - !type:AdjustNutrition - amount: 1 - - !type:AdjustHealth - amount: -0.5 - - !type:AdjustMutationMod - prob: 0.3 - amount: 0.2 - -- type: reagent - id: chem.RobustHarvest - name: robust harvest - desc: Plant-enhancing hormones, good for increasing potency. - color: "#3e901c" - physicalDesc: robust - customPlantMetabolism: 0.1 - plantMetabolism: - - !type:AdjustNutrition - amount: 0.05 - - !type:AdjustWeeds - prob: 0.025 - amount: 1 - - !type:AdjustPests - prob: 0.025 - amount: 1 - - !type:RobustHarvest {} - -- type: reagent - id: chem.PlantBGone - name: plant-B-gone - desc: A harmful toxic mixture to kill plantlife. Do not ingest! - color: "#49002E" - physicalDesc: bubbling - plantMetabolism: - - !type:AdjustToxins - amount: 6 - - !type:AdjustWeeds - amount: -8 - - !type:AdjustHealth - amount: -20 - - !type:AdjustMutationMod - amount: 0.1 - -- type: reagent - id: chem.WeedKiller - name: weed killer - desc: A mixture that targets weeds. - color: "#968395" - physicalDesc: bubbling - plantMetabolism: - - !type:AdjustToxins - amount: 4 - - !type:AdjustWeeds - amount: -6 - -- type: reagent - id: chem.PestKiller - name: pest killer - desc: A mixture that targets pests. - color: "#9e9886" - physicalDesc: bubbling - plantMetabolism: - - !type:AdjustToxins - amount: 4 - - !type:AdjustPests - amount: -6 - -- type: reagent - id: chem.Toxin - name: toxin - desc: A Toxic chemical. - color: "#cf3600" - physicalDesc: opaque - plantMetabolism: - - !type:AdjustToxins - amount: 10 - -- type: reagent - id: chem.Sugar - name: sugar - desc: Sickly sweet. - color: "#ffffff" - physicalDesc: opaque - plantMetabolism: - - !type:AdjustNutrition - amount: 0.1 - - !type:AdjustWeeds - amount: 2 - - !type:AdjustPests - amount: 2 diff --git a/Resources/Prototypes/Reagents/cleaning.yml b/Resources/Prototypes/Reagents/cleaning.yml new file mode 100644 index 0000000000..f789934922 --- /dev/null +++ b/Resources/Prototypes/Reagents/cleaning.yml @@ -0,0 +1,33 @@ +- type: reagent + id: chem.Bleach + name: bleach + desc: Heavy duty cleaner that can clean tiles the same as Space Cleaner and also decontaminate clothes. Extremely toxic when ingested. + physicalDesc: strong-smelling + color: "#a1000b" + boilingPoint: 111.0 + meltingPoint: -5.0 + +- type: reagent + id: chem.SpaceCleaner + name: space cleaner + desc: This is able to clean almost all surfaces of almost anything that may dirty them. The janitor is likely to appreciate refills. + physicalDesc: lemony fresh + color: "#c8ff69" + boilingPoint: 147.0 # Made this up, loosely based on bleach + meltingPoint: -11.0 + tileReactions: + - !type:CleanTileReaction {} + +- type: reagent + id: chem.SpaceLube + name: space lube + desc: Space Lube is a high performance lubricant intended for maintenance of extremely complex mechanical equipment (and certainly not used to make people slip). + physicalDesc: shiny + color: "#77b58e" + boilingPoint: 290.0 # Glycerin + meltingPoint: 18.2 + tileReactions: + - !type:SpillTileReaction + paralyzeTime: 3 + launchForwardsMultiplier: 2 + requiredSlipSpeed: 1 diff --git a/Resources/Prototypes/Reagents/elements.yml b/Resources/Prototypes/Reagents/elements.yml index 8fab1f0048..2011cd122f 100644 --- a/Resources/Prototypes/Reagents/elements.yml +++ b/Resources/Prototypes/Reagents/elements.yml @@ -1,32 +1,14 @@ - type: reagent - id: chem.H - name: hydrogen - desc: A light, flammable gas. - physicalDesc: gaseous - color: "#808080" - boilingPoint: -253.0 - meltingPoint: -259.2 + id: chem.Aluminium # We use real words here. + name: aluminium + desc: A silver, soft, non-magnetic, and ductile metal. + physicalDesc: metallic + color: "#848789" + boilingPoint: 2327.0 + meltingPoint: 660.0 - type: reagent - id: chem.O - name: oxygen - desc: An oxidizing, colorless gas. - physicalDesc: gaseous - color: "#808080" - boilingPoint: -183.0 - meltingPoint: -218.4 - -- type: reagent - id: chem.S - name: sulfur - desc: A yellow, crystalline solid. - physicalDesc: powdery - color: "#fff385" - boilingPoint: 445.0 - meltingPoint: 120.0 - -- type: reagent - id: chem.C + id: chem.Carbon name: carbon desc: A black, crystalline solid. physicalDesc: crystalline @@ -35,70 +17,7 @@ meltingPoint: 3550.0 - type: reagent - id: chem.Al - name: aluminum - desc: A silver, soft, non-magnetic, and ductile metal. - physicalDesc: metallic - color: "#848789" - boilingPoint: 2327.0 - meltingPoint: 660.0 - -- type: reagent - id: chem.Cu - name: copper - desc: A soft, malleable, and ductile metal with very high thermal and electrical conductivity. - physicalDesc: metallic - color: "#b05b3c" - boilingPoint: 2595.0 - meltingPoint: 1083.0 - -- type: reagent - id: chem.N - name: nitrogen - desc: A colorless, odorless unreactive gas. Highly stable. - physicalDesc: gaseous - color: "#808080" - boilingPoint: -195.8 - meltingPoint: -210.0 - -- type: reagent - id: chem.Fe - name: iron - desc: A silvery-grey metal which forms iron oxides (rust) with contact with air. Commonly alloyed with other elements to create alloys such as steel. - physicalDesc: metallic - color: "#434b4d" - boilingPoint: 2862.0 - meltingPoint: 1538.0 - -- type: reagent - id: chem.F - name: fluorine - desc: A highly toxic pale yellow gas. Extremely reactive. - physicalDesc: gaseous - color: "#808080" - boilingPoint: -188.11 - meltingPoint: -219.67 - plantMetabolism: - - !type:AdjustWater - amount: -0.5 - - !type:AdjustToxins - amount: 25 - - !type:AdjustWeeds - amount: -4 - - !type:AdjustHealth - amount: -2 - -- type: reagent - id: chem.Si - name: silicon - desc: A hard and brittle crystalline solid with a blue-grey color. - physicalDesc: crystalline - color: "#364266" - boilingPoint: 3265.0 - meltingPoint: 1414.0 - -- type: reagent - id: chem.Cl + id: chem.Chlorine name: chlorine desc: A yellow-green gas which is toxic to humans. physicalDesc: gaseous @@ -116,7 +35,52 @@ amount: -1 - type: reagent - id: chem.Li + id: chem.Copper + name: copper + desc: A soft, malleable, and ductile metal with very high thermal and electrical conductivity. + physicalDesc: metallic + color: "#b05b3c" + boilingPoint: 2595.0 + meltingPoint: 1083.0 + +- type: reagent + id: chem.Fluorine + name: fluorine + desc: A highly toxic pale yellow gas. Extremely reactive. + physicalDesc: gaseous + color: "#808080" + boilingPoint: -188.11 + meltingPoint: -219.67 + plantMetabolism: + - !type:AdjustWater + amount: -0.5 + - !type:AdjustToxins + amount: 25 + - !type:AdjustWeeds + amount: -4 + - !type:AdjustHealth + amount: -2 + +- type: reagent + id: chem.Hydrogen + name: hydrogen + desc: A light, flammable gas. + physicalDesc: gaseous + color: "#808080" + boilingPoint: -253.0 + meltingPoint: -259.2 + +- type: reagent + id: chem.Iron + name: iron + desc: A silvery-grey metal which forms iron oxides (rust) with contact with air. Commonly alloyed with other elements to create alloys such as steel. + physicalDesc: metallic + color: "#434b4d" + boilingPoint: 2862.0 + meltingPoint: 1538.0 + +- type: reagent + id: chem.Lithium name: lithium desc: A soft, silvery-white alkali metal. It is highly reactive, and ignites if it makes contact with water. physicalDesc: shiny @@ -125,7 +89,7 @@ boilingPoint: 1330.0 - type: reagent - id: chem.Hg + id: chem.Mercury name: mercury desc: A silver metal which is liquid at room temperature. It is highly toxic to humans. physicalDesc: shiny @@ -134,7 +98,34 @@ boilingPoint: 356.73 - type: reagent - id: chem.P + id: chem.Nitrogen + name: nitrogen + desc: A colorless, odorless unreactive gas. Highly stable. + physicalDesc: gaseous + color: "#808080" + boilingPoint: -195.8 + meltingPoint: -210.0 + +- type: reagent + id: chem.Oxygen + name: oxygen + desc: An oxidizing, colorless gas. + physicalDesc: gaseous + color: "#808080" + boilingPoint: -183.0 + meltingPoint: -218.4 + +- type: reagent + id: chem.Potassium + name: potassium + desc: A soft, shiny grey metal. Even more reactive than lithium. + physicalDesc: shiny + color: "#c6c8cc" + meltingPoint: 65.5 + boilingPoint: 759.0 + +- type: reagent + id: chem.Phosphorus name: phosphorus desc: A reactive metal used in pyrotechnics and weapons. physicalDesc: powdery @@ -150,16 +141,7 @@ amount: -2 - type: reagent - id: chem.K - name: potassium - desc: A soft, shiny grey metal. Even more reactive than lithium. - physicalDesc: shiny - color: "#c6c8cc" - meltingPoint: 65.5 - boilingPoint: 759.0 - -- type: reagent - id: chem.Ra + id: chem.Radium name: radium desc: A radioactive metal, silvery-white in it's pure form. It glows due to it's radioactivity and is highly toxic. physicalDesc: glowing @@ -179,7 +161,25 @@ amount: 0.1 - type: reagent - id: chem.Na + id: chem.Silicon + name: silicon + desc: A hard and brittle crystalline solid with a blue-grey color. + physicalDesc: crystalline + color: "#364266" + boilingPoint: 3265.0 + meltingPoint: 1414.0 + +- type: reagent + id: chem.Sulfur + name: sulfur + desc: A yellow, crystalline solid. + physicalDesc: powdery + color: "#fff385" + boilingPoint: 445.0 + meltingPoint: 120.0 + +- type: reagent + id: chem.Sodium name: sodium desc: A silvery-white alkali metal. Highly reactive in it's pure form. physicalDesc: metallic @@ -188,7 +188,7 @@ boilingPoint: 883.0 - type: reagent - id: chem.U + id: chem.Uranium name: uranium desc: A grey metallic chemical element in the actinide series, weakly radioactive. physicalDesc: metallic diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/toilet.yml b/Resources/Prototypes/Recipes/Construction/Graphs/toilet.yml new file mode 100644 index 0000000000..faf5cc9f6b --- /dev/null +++ b/Resources/Prototypes/Recipes/Construction/Graphs/toilet.yml @@ -0,0 +1,29 @@ +- type: constructionGraph + id: toilet + start: start + graph: + - node: start + edges: + - to: toilet + completed: + - !type:SnapToGrid { } + steps: + - material: Metal + amount: 5 + doAfter: 1 + - node: toilet + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: SteelSheet1 + amount: 5 + - !type:EmptyAllContainers {} + - !type:DeleteEntity {} + conditions: + - !type:EntityAnchored + anchored: false + - !type:ToiletLidClosed {} + steps: + - tool: Welding + doAfter: 2 \ No newline at end of file diff --git a/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml b/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml index 199de7734d..6274f75836 100644 --- a/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml +++ b/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml @@ -186,7 +186,7 @@ result: FoodSpaghettiBoiled time: 5 reagents: - chem.H2O: 5 + chem.Water: 5 solids: FoodSpaghetti: 1 @@ -196,7 +196,7 @@ result: FoodPastaTomato time: 10 reagents: - chem.H2O: 5 + chem.Water: 5 solids: FoodSpaghetti: 1 FoodTomato: 2 @@ -207,7 +207,7 @@ result: FoodMeatballSpaghetti time: 10 reagents: - chem.H2O: 5 + chem.Water: 5 solids: FoodSpaghetti: 1 FoodMeatball: 2 @@ -218,7 +218,7 @@ result: FoodCrabSpaghetti time: 10 reagents: - chem.H2O: 5 + chem.Water: 5 solids: FoodCrabMeat: 2 @@ -294,7 +294,7 @@ result: FoodMeatballSoup time: 10 reagents: - chem.H2O: 10 + chem.Water: 10 solids: FoodMeatball: 1 FoodCarrot: 1 @@ -306,7 +306,7 @@ result: FoodNettleSoup time: 10 reagents: - chem.H2O: 10 + chem.Water: 10 solids: FoodNettle: 1 FoodEgg: 1 diff --git a/Resources/Prototypes/Recipes/Reactions/botany.yml b/Resources/Prototypes/Recipes/Reactions/botany.yml new file mode 100644 index 0000000000..6a992f5f7e --- /dev/null +++ b/Resources/Prototypes/Recipes/Reactions/botany.yml @@ -0,0 +1,43 @@ +- type: reaction + id: react.EZNutrient + reactants: + chem.Nitrogen: + amount: 1 + chem.Phosphorus: + amount: 1 + chem.Potassium: + amount: 1 + products: + chem.EZNutrient: 3 + +- type: reaction + id: react.RobustHarvest + reactants: + chem.EZNutrient: + amount: 1 + chem.SulfuricAcid: + amount: 1 + catalyst: true + products: + chem.RobustHarvest: 1 + +- type: reaction + id: react.Left4Zed + reactants: + chem.EZNutrient: + amount: 1 + chem.Radium: + amount: 1 + catalyst: true + products: + chem.Left4Zed: 1 + +- type: reaction + id: react.PlantBGone + reactants: + chem.Toxin: + amount: 1 + chem.Water: + amount: 4 + products: + chem.PlantBGone: 5 diff --git a/Resources/Prototypes/Recipes/Reactions/chemicals.yml b/Resources/Prototypes/Recipes/Reactions/chemicals.yml index 11ff5162c7..05045b484f 100644 --- a/Resources/Prototypes/Recipes/Reactions/chemicals.yml +++ b/Resources/Prototypes/Recipes/Reactions/chemicals.yml @@ -1,35 +1,13 @@ -- type: reaction - id: react.H2O - reactants: - chem.H: - amount: 1 - chem.O: - amount: 1 - products: - chem.H2O: 2 - - type: reaction id: react.Ammonia reactants: - chem.H: + chem.Hydrogen: amount: 3 - chem.N: + chem.Nitrogen: amount: 1 products: chem.Ammonia: 4 -- type: reaction - id: react.Bleach - reactants: - chem.TableSalt: - amount: 2 - chem.SpaceCleaner: - amount: 2 - chem.O: - amount: 1 - products: - chem.Bleach: 5 - - type: reaction id: react.Diethylamine reactants: @@ -43,9 +21,9 @@ - type: reaction id: react.FoamingAgent reactants: - chem.Li: + chem.Lithium: amount: 1 - chem.H: + chem.Hydrogen: amount: 1 products: chem.FoamingAgent: 2 @@ -53,77 +31,21 @@ - type: reaction id: react.PolytrinicAcid reactants: - chem.H2SO4: + chem.SulfuricAcid: amount: 1 - chem.Cl: + chem.Chlorine: amount: 1 - chem.K: + chem.Potassium: amount: 1 products: chem.PolytrinicAcid: 3 -- type: reaction - id: react.SpaceCleaner - reactants: - chem.Ammonia: - amount: 1 - chem.H2O: - amount: 1 - products: - chem.SpaceCleaner: 2 - -- type: reaction - id: react.SpaceLube - reactants: - chem.H2O: - amount: 1 - chem.Si: - amount: 1 - chem.O: - amount: 1 - products: - chem.SpaceLube: 3 - -- type: reaction - id: react.TableSalt - reactants: - chem.Cl: - amount: 1 - chem.Na: - amount: 1 - products: - chem.TableSalt: 2 - -- type: reaction - id: react.Thermite - reactants: - chem.Fe: - amount: 1 - chem.Al: - amount: 1 - chem.O: - amount: 1 - products: - chem.Thermite: 3 - -- type: reaction - id: react.UnstableMutagen - reactants: - chem.Ra: - amount: 1 - chem.P: - amount: 1 - chem.Cl: - amount: 1 - products: - chem.UnstableMutagen: 3 - - type: reaction id: react.PotassiumExplosion reactants: - chem.H2O: + chem.Water: amount: 1 - chem.K: + chem.Potassium: amount: 1 effects: - !type:ExplosionReactionEffect @@ -136,45 +58,45 @@ maxScale: 30 #Explosion strength stops scaling at 30 potassium + 30 water - type: reaction - id: react.EZNutrient + id: react.TableSalt reactants: - chem.N: + chem.Chlorine: amount: 1 - chem.P: - amount: 1 - chem.K: + chem.Sodium: amount: 1 products: - chem.EZNutrient: 3 + chem.TableSalt: 2 - type: reaction - id: react.RobustHarvest + id: react.Thermite reactants: - chem.EZNutrient: + chem.Iron: amount: 1 - chem.H2SO4: + chem.Aluminium: + amount: 1 + chem.Oxygen: amount: 1 - catalyst: true products: - chem.RobustHarvest: 1 + chem.Thermite: 3 - type: reaction - id: react.Left4Zed + id: react.UnstableMutagen reactants: - chem.EZNutrient: + chem.Radium: amount: 1 - chem.Ra: + chem.Phosphorus: + amount: 1 + chem.Chlorine: amount: 1 - catalyst: true products: - chem.Left4Zed: 1 + chem.UnstableMutagen: 3 - type: reaction - id: react.PlantBGone + id: react.Water reactants: - chem.Toxin: + chem.Hydrogen: + amount: 1 + chem.Oxygen: amount: 1 - chem.H2O: - amount: 4 products: - chem.PlantBGone: 5 + chem.Water: 2 diff --git a/Resources/Prototypes/Recipes/Reactions/cleaning.yml b/Resources/Prototypes/Recipes/Reactions/cleaning.yml new file mode 100644 index 0000000000..8b2257056f --- /dev/null +++ b/Resources/Prototypes/Recipes/Reactions/cleaning.yml @@ -0,0 +1,33 @@ +- type: reaction + id: react.Bleach + reactants: + chem.TableSalt: + amount: 2 + chem.SpaceCleaner: + amount: 2 + chem.Oxygen: + amount: 1 + products: + chem.Bleach: 5 + +- type: reaction + id: react.SpaceCleaner + reactants: + chem.Ammonia: + amount: 1 + chem.Water: + amount: 1 + products: + chem.SpaceCleaner: 2 + +- type: reaction + id: react.SpaceLube + reactants: + chem.Water: + amount: 1 + chem.Silicon: + amount: 1 + chem.Oxygen: + amount: 1 + products: + chem.SpaceLube: 3 diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml b/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml index cfaaf58949..767eee8a88 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml @@ -21,4 +21,5 @@ idcard: CargoPDA ears: ClothingHeadsetCargo innerclothingskirt: ClothingUniformJumpskirtCargo - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml index e5dced21f9..3d9eabe13b 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml @@ -22,4 +22,5 @@ idcard: QuartermasterPDA ears: ClothingHeadsetCargo innerclothingskirt: ClothingUniformJumpskirtQM - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml b/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml index 6249154a98..be5e8f29ab 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml @@ -18,4 +18,5 @@ idcard: AssistantPDA ears: ClothingHeadsetService innerclothingskirt: ClothingUniformJumpskirtColorGrey - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml b/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml index 761e2f7ccd..c62541346d 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml @@ -22,4 +22,5 @@ idcard: BartenderPDA ears: ClothingHeadsetService innerclothingskirt: ClothingUniformJumpskirtBartender - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml b/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml index 59bdfd5db7..0320603fd3 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml @@ -16,10 +16,11 @@ id: BotanistGear equipment: innerclothing: ClothingUniformJumpsuitHydroponics - backpack: ClothingBackpackFilled + backpack: ClothingBackpackHydroponicsFilled shoes: ClothingShoesColorBrown idcard: BotanistPDA ears: ClothingHeadsetService outerclothing: ClothingOuterApronBotanist innerclothingskirt: ClothingUniformJumpskirtHydroponics - + satchel: ClothingBackpackSatchelHydroponicsFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml b/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml index c4e0fb978b..a49a15e6ab 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml @@ -22,4 +22,5 @@ ears: ClothingHeadsetService outerclothing: ClothingOuterApronChef innerclothingskirt: ClothingUniformJumpskirtChef - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml b/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml index 15bdd058e8..813f466790 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml @@ -21,3 +21,5 @@ pocket1: BikeHorn idcard: ClownPDA ears: ClothingHeadsetService + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelClownFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml b/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml index 5cd9cdabd6..b294e5e463 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml @@ -21,4 +21,5 @@ ears: ClothingHeadsetService belt: ClothingBeltJanitorFilled innerclothingskirt: ClothingUniformJumpskirtJanitor - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml b/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml index 23317a6123..1732d2f1ab 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml @@ -14,7 +14,7 @@ id: MimeGear equipment: innerclothing: ClothingUniformJumpsuitMime - backpack: ClothingBackpackFilled + backpack: ClothingBackpackMimeFilled head: ClothingHeadHatBeret belt: ClothingBeltSuspenders gloves: ClothingHandsGlovesLatex @@ -25,4 +25,5 @@ idcard: MimePDA ears: ClothingHeadsetService innerclothingskirt: ClothingUniformJumpskirtMime - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelMimeFilled diff --git a/Resources/Prototypes/Roles/Jobs/Command/captain.yml b/Resources/Prototypes/Roles/Jobs/Command/captain.yml index 2000efb720..165ef640b9 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/captain.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/captain.yml @@ -48,3 +48,5 @@ outerclothing: ClothingOuterHardsuitCap idcard: CaptainPDA ears: ClothingHeadsetAltCommand + satchel: ClothingBackpackSatchelCaptainFilled + duffelbag: ClothingBackpackDuffelCaptainFilled diff --git a/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml b/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml index 5558880f74..70dc494506 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml @@ -29,4 +29,5 @@ idcard: HoPPDA ears: ClothingHeadsetAltCommand innerclothingskirt: ClothingUniformJumpskirtHoP - + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml b/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml index d029293184..6bcff4639b 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml @@ -26,4 +26,5 @@ ears: ClothingHeadsetEngineering belt: ClothingBeltChiefEngineerFilled innerclothingskirt: ClothingUniformJumpskirtChiefEngineer - + satchel: ClothingBackpackSatchelEngineeringFilled + duffelbag: ClothingBackpackDuffelEngineeringFilled diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml b/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml index a7fa9b5d13..0b702ca6b6 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml @@ -24,4 +24,5 @@ belt: ClothingBeltUtilityFilled ears: ClothingHeadsetEngineering innerclothingskirt: ClothingUniformJumpskirtEngineering - + satchel: ClothingBackpackSatchelEngineeringFilled + duffelbag: ClothingBackpackDuffelEngineeringFilled diff --git a/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml b/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml index c29a91a31c..4b06c0559a 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml @@ -27,4 +27,5 @@ ears: ClothingHeadsetAltMedical belt: ClothingBeltMedical innerclothingskirt: ClothingUniformJumpskirtCMO - + satchel: ClothingBackpackSatchelMedicalFilled + duffelbag: ClothingBackpackDuffelMedicalFilled diff --git a/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml b/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml index 3e34d75574..81c9dd8ba0 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml @@ -22,4 +22,5 @@ ears: ClothingHeadsetMedical belt: ClothingBeltMedical innerclothingskirt: ClothingUniformJumpskirtMedicalDoctor - + satchel: ClothingBackpackSatchelMedicalFilled + duffelbag: ClothingBackpackDuffelMedicalFilled diff --git a/Resources/Prototypes/Roles/Jobs/Science/research_director.yml b/Resources/Prototypes/Roles/Jobs/Science/research_director.yml index 32202b4a79..e418eb00a0 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/research_director.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/research_director.yml @@ -23,4 +23,5 @@ idcard: RnDPDA ears: ClothingHeadsetScience innerclothingskirt: ClothingUniformJumpskirtResearchDirector - + satchel: ClothingBackpackSatchelScienceFilled + duffelbag: ClothingBackpackDuffelScienceFilled diff --git a/Resources/Prototypes/Roles/Jobs/Science/scientist.yml b/Resources/Prototypes/Roles/Jobs/Science/scientist.yml index 9d2c43eee9..f7cf2b8a08 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/scientist.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/scientist.yml @@ -21,4 +21,5 @@ idcard: SciencePDA ears: ClothingHeadsetScience innerclothingskirt: ClothingUniformJumpskirtScientist - + satchel: ClothingBackpackSatchelScienceFilled + duffelbag: ClothingBackpackDuffelScienceFilled diff --git a/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml b/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml index 176222aa33..ffb90f4f16 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml @@ -30,4 +30,5 @@ ears: ClothingHeadsetAltSecurity belt: ClothingBeltSecurityFilled innerclothingskirt: ClothingUniformJumpskirtHoS - + satchel: ClothingBackpackSatchelSecurityFilled + duffelbag: ClothingBackpackDuffelSecurityFilled diff --git a/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml b/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml index d9356cf6b3..07bc658f6a 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml @@ -25,4 +25,5 @@ ears: ClothingHeadsetSecurity belt: ClothingBeltSecurityFilled innerclothingskirt: ClothingUniformJumpskirtSec - + satchel: ClothingBackpackSatchelSecurityFilled + duffelbag: ClothingBackpackDuffelSecurityFilled diff --git a/Resources/Prototypes/Roles/Jobs/Security/warden.yml b/Resources/Prototypes/Roles/Jobs/Security/warden.yml index c9d250f9e0..9051a5f796 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/warden.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/warden.yml @@ -26,4 +26,5 @@ ears: ClothingHeadsetSecurity belt: ClothingBeltSecurityFilled innerclothingskirt: ClothingUniformJumpskirtWarden - + satchel: ClothingBackpackSatchelSecurityFilled + duffelbag: ClothingBackpackDuffelSecurityFilled diff --git a/Resources/Prototypes/SoundCollections/gib.yml b/Resources/Prototypes/SoundCollections/gib.yml new file mode 100644 index 0000000000..5c39aacb3f --- /dev/null +++ b/Resources/Prototypes/SoundCollections/gib.yml @@ -0,0 +1,6 @@ +- type: soundCollection + id: gib + files: + - /Audio/Effects/gib1.ogg + - /Audio/Effects/gib2.ogg + - /Audio/Effects/gib3.ogg diff --git a/Resources/Prototypes/SoundCollections/glassbreak.yml b/Resources/Prototypes/SoundCollections/glassbreak.yml index 2e62ea1860..67417b22d4 100644 --- a/Resources/Prototypes/SoundCollections/glassbreak.yml +++ b/Resources/Prototypes/SoundCollections/glassbreak.yml @@ -1,6 +1,6 @@ - type: soundCollection - id: glassbreak + id: GlassBreak files: - - /Audio/Effects/glassbreak1.ogg - - /Audio/Effects/glassbreak2.ogg - - /Audio/Effects/glassbreak3.ogg + - /Audio/Effects/glass_break1.ogg + - /Audio/Effects/glass_break2.ogg + - /Audio/Effects/glass_break3.ogg diff --git a/Resources/Prototypes/SoundCollections/storage_rustle.yml b/Resources/Prototypes/SoundCollections/storage_rustle.yml new file mode 100644 index 0000000000..d7f6c09586 --- /dev/null +++ b/Resources/Prototypes/SoundCollections/storage_rustle.yml @@ -0,0 +1,8 @@ +- type: soundCollection + id: storageRustle + files: + - /Audio/Effects/rustle1.ogg + - /Audio/Effects/rustle2.ogg + - /Audio/Effects/rustle3.ogg + - /Audio/Effects/rustle4.ogg + - /Audio/Effects/rustle5.ogg diff --git a/Resources/Textures/Clothing/Back/Backpacks/backpack.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/backpack.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/backpack.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/backpack.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/botany.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/botany.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/botany.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/botany.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/captain.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/captain.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/captain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/chemistry.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/chemistry.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/chemistry.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/chemistry.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/clown.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/clown.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/clown.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/clown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/engineering.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/engineering.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/holding-inhand-left.png b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/holding-inhand-left.png deleted file mode 100644 index 79c90fc3cb..0000000000 Binary files a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/holding-inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/holding-inhand-right.png b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/holding-inhand-right.png deleted file mode 100644 index 95b5b9abec..0000000000 Binary files a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/holding-inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/inhand-left.png new file mode 100644 index 0000000000..a0dc828771 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/inhand-right.png new file mode 100644 index 0000000000..65683df20d Binary files /dev/null and b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/meta.json index c3bb350c47..d37f719e33 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/holding.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "holding", - "directions": 1, "delays": [ [ 0.1, @@ -65,7 +64,6 @@ }, { "name": "holding-unlit", - "directions": 1, "delays": [ [ 0.1, @@ -82,16 +80,91 @@ "directions": 4 }, { - "name": "holding-broken", - "directions": 1 + "name": "holding-broken" }, { - "name": "holding-inhand-left", - "directions": 4 + "name": "inhand-left", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] }, { - "name": "holding-inhand-right", - "directions": 4 + "name": "inhand-right", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] } ] } diff --git a/Resources/Textures/Clothing/Back/Backpacks/medical.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/medical.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/medical.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/mime.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/mime.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/mime.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/mime.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/science.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/science.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/science.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/science.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Backpacks/security.rsi/meta.json b/Resources/Textures/Clothing/Back/Backpacks/security.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Backpacks/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Backpacks/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Duffels/captain.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/captain.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Duffels/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Duffels/captain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000..e88663b3a6 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/icon.png b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/icon.png new file mode 100644 index 0000000000..26dd1e4c0a Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/inhand-left.png new file mode 100644 index 0000000000..8a35e6c49a Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/inhand-right.png new file mode 100644 index 0000000000..b998e351b1 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/meta.json new file mode 100644 index 0000000000..89236692cc --- /dev/null +++ b/Resources/Textures/Clothing/Back/Duffels/chemistry.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/547852588166c8e091b441e4e67169e156bb09c1", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon", + "directions": 1 + }, + { + "name": "equipped-BACKPACK", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Back/Duffels/clown.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/clown.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Duffels/clown.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Duffels/clown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Duffels/duffel.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/duffel.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Duffels/duffel.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Duffels/duffel.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Duffels/engineering.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/engineering.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Duffels/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Duffels/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken-inhand-left.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken-inhand-left.png new file mode 100644 index 0000000000..5b701c7119 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken-inhand-right.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken-inhand-right.png new file mode 100644 index 0000000000..3628dd4343 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken.png new file mode 100644 index 0000000000..1dd07071d4 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/broken.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000..fe36acb012 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/icon-unlit.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/icon-unlit.png new file mode 100644 index 0000000000..363f156aed Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/icon-unlit.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/icon.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/icon.png new file mode 100644 index 0000000000..ede6d76675 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/inhand-left.png new file mode 100644 index 0000000000..a0dc828771 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/inhand-right.png new file mode 100644 index 0000000000..65683df20d Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/holding.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/meta.json new file mode 100644 index 0000000000..e5e5eb78fa --- /dev/null +++ b/Resources/Textures/Clothing/Back/Duffels/holding.rsi/meta.json @@ -0,0 +1,172 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from Citadelstation at commit https://github.com/Citadel-Station-13/Citadel-Station-13/commit/0a4a0fadb32e3245f8bc2ee03f88d776de1852b5", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "icon-unlit", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "broken", + }, + { + "name": "equipped-BACKPACK", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "broken-inhand-left", + "directions": 4, + }, + { + "name": "broken-inhand-right", + "directions": 4, + }, + { + "name": "inhand-left", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "inhand-right", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/equipped-BACKPACK.png index 07c8e5e54e..db21970285 100644 Binary files a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/equipped-BACKPACK.png and b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/icon.png b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/icon.png index b24896c01b..2c0192c6e6 100644 Binary files a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/icon.png and b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-left.png index 1be16c33e4..1388323fa9 100644 Binary files a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-left.png and b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-right.png index 0cedf53f5c..fc98361003 100644 Binary files a/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-right.png and b/Resources/Textures/Clothing/Back/Duffels/medical.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/mime.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000..4d5f4cc557 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/mime.rsi/icon.png b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/icon.png new file mode 100644 index 0000000000..937e82349a Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/mime.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/inhand-left.png new file mode 100644 index 0000000000..110bc6ef48 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/mime.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/inhand-right.png new file mode 100644 index 0000000000..fbc6579f33 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/mime.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/meta.json new file mode 100644 index 0000000000..89236692cc --- /dev/null +++ b/Resources/Textures/Clothing/Back/Duffels/mime.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/547852588166c8e091b441e4e67169e156bb09c1", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon", + "directions": 1 + }, + { + "name": "equipped-BACKPACK", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Back/Duffels/science.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/science.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000..9be4782b18 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/science.rsi/equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/science.rsi/icon.png b/Resources/Textures/Clothing/Back/Duffels/science.rsi/icon.png new file mode 100644 index 0000000000..709e67d3a4 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/science.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/science.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Duffels/science.rsi/inhand-left.png new file mode 100644 index 0000000000..f5fb0af9be Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/science.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/science.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Duffels/science.rsi/inhand-right.png new file mode 100644 index 0000000000..da549fec4c Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/science.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/science.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/science.rsi/meta.json new file mode 100644 index 0000000000..89236692cc --- /dev/null +++ b/Resources/Textures/Clothing/Back/Duffels/science.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/547852588166c8e091b441e4e67169e156bb09c1", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon", + "directions": 1 + }, + { + "name": "equipped-BACKPACK", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Back/Duffels/security.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/security.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Duffels/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Duffels/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/ammo-equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/ammo-equipped-BACKPACK.png new file mode 100644 index 0000000000..3bf9381558 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/ammo-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/med-equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/med-equipped-BACKPACK.png new file mode 100644 index 0000000000..ebe3aaa974 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/med-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/meta.json b/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/meta.json index 32bf2ce77e..d7e2b6c3fe 100644 --- a/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Duffels/syndicate.rsi/meta.json @@ -8,21 +8,26 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-ammo", - "directions": 1 + "name": "icon-ammo" }, { - "name": "icon-med", - "directions": 1 + "name": "icon-med" }, { "name": "equipped-BACKPACK", "directions": 4 }, + { + "name": "ammo-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "med-equipped-BACKPACK", + "directions": 4 + }, { "name": "inhand-left", "directions": 4 diff --git a/Resources/Textures/Clothing/Back/Satchels/captain.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/captain.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/captain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/chemistry.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/chemistry.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/chemistry.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/chemistry.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/engineering.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/engineering.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken-inhand-left.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken-inhand-left.png new file mode 100644 index 0000000000..5b701c7119 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken-inhand-right.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken-inhand-right.png new file mode 100644 index 0000000000..3628dd4343 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken.png new file mode 100644 index 0000000000..ef4b54ddc0 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/broken.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000..3ec36a18e1 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/icon-unlit.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/icon-unlit.png new file mode 100644 index 0000000000..ba4477c296 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/icon-unlit.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/icon.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/icon.png new file mode 100644 index 0000000000..138a6ab3d6 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/inhand-left.png new file mode 100644 index 0000000000..a0dc828771 Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/inhand-right.png new file mode 100644 index 0000000000..65683df20d Binary files /dev/null and b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Back/Satchels/holding.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/meta.json new file mode 100644 index 0000000000..b114502075 --- /dev/null +++ b/Resources/Textures/Clothing/Back/Satchels/holding.rsi/meta.json @@ -0,0 +1,176 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from Citadelstation at commit https://github.com/Citadel-Station-13/Citadel-Station-13/commit/0a4a0fadb32e3245f8bc2ee03f88d776de1852b5", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "icon-unlit", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "broken", + }, + { + "name": "equipped-BACKPACK", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "broken-inhand-left", + "directions": 4, + }, + { + "name": "broken-inhand-right", + "directions": 4, + }, + { + "name": "inhand-left", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "inhand-right", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/Clothing/Back/Satchels/hydroponics.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/hydroponics.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/hydroponics.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/hydroponics.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/medical.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/medical.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/medical.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/satchel.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/satchel.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/satchel.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/satchel.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/science.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/science.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/science.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/science.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Back/Satchels/security.rsi/meta.json b/Resources/Textures/Clothing/Back/Satchels/security.rsi/meta.json index 89236692cc..fce8c90ce8 100644 --- a/Resources/Textures/Clothing/Back/Satchels/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Back/Satchels/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Clothing/Belt/assault.rsi/meta.json b/Resources/Textures/Clothing/Belt/assault.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/assault.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/assault.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/bandolier.rsi/meta.json b/Resources/Textures/Clothing/Belt/bandolier.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/bandolier.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/bandolier.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/belt_icon_overlay.rsi/meta.json b/Resources/Textures/Clothing/Belt/belt_icon_overlay.rsi/meta.json index bf73608815..11c6787f8e 100644 --- a/Resources/Textures/Clothing/Belt/belt_icon_overlay.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/belt_icon_overlay.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "crowbar", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "crowbar_brass", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "crowbar_large", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "crowbar_red", - "directions": 1, "delays": [ [ 1 @@ -45,7 +41,6 @@ }, { "name": "cutters_brass", - "directions": 1, "delays": [ [ 1 @@ -54,7 +49,6 @@ }, { "name": "cutters_red", - "directions": 1, "delays": [ [ 1 @@ -63,7 +57,6 @@ }, { "name": "cutters_yellow", - "directions": 1, "delays": [ [ 1 @@ -72,7 +65,6 @@ }, { "name": "drill_bolt", - "directions": 1, "delays": [ [ 1 @@ -81,7 +73,6 @@ }, { "name": "drill_screw", - "directions": 1, "delays": [ [ 1 @@ -90,7 +81,6 @@ }, { "name": "flashbang", - "directions": 1, "delays": [ [ 1 @@ -99,7 +89,6 @@ }, { "name": "jaws_cutter", - "directions": 1, "delays": [ [ 1 @@ -108,7 +97,6 @@ }, { "name": "jaws_pry", - "directions": 1, "delays": [ [ 1 @@ -117,7 +105,6 @@ }, { "name": "multitool", - "directions": 1, "delays": [ [ 1 @@ -126,7 +113,6 @@ }, { "name": "multitool_red", - "directions": 1, "delays": [ [ 1 @@ -135,7 +121,6 @@ }, { "name": "multitool_yellow", - "directions": 1, "delays": [ [ 1 @@ -144,7 +129,6 @@ }, { "name": "screwdriver", - "directions": 1, "delays": [ [ 1 @@ -153,7 +137,6 @@ }, { "name": "screwdriver_brass", - "directions": 1, "delays": [ [ 1 @@ -162,7 +145,6 @@ }, { "name": "screwdriver_head", - "directions": 1, "delays": [ [ 1 @@ -171,7 +153,6 @@ }, { "name": "screwdriver_nuke", - "directions": 1, "delays": [ [ 1 @@ -180,7 +161,6 @@ }, { "name": "stunbaton", - "directions": 1, "delays": [ [ 1 @@ -189,7 +169,6 @@ }, { "name": "stunbaton_active", - "directions": 1, "delays": [ [ 1 @@ -198,7 +177,6 @@ }, { "name": "stunbaton_nocell", - "directions": 1, "delays": [ [ 1 @@ -207,7 +185,6 @@ }, { "name": "wrench", - "directions": 1, "delays": [ [ 1 @@ -216,7 +193,6 @@ }, { "name": "wrench_brass", - "directions": 1, "delays": [ [ 1 @@ -225,7 +201,6 @@ }, { "name": "wrench_medical", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Clothing/Belt/ce.rsi/meta.json b/Resources/Textures/Clothing/Belt/ce.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/ce.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/ce.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/champion.rsi/meta.json b/Resources/Textures/Clothing/Belt/champion.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/champion.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/champion.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/holster.rsi/meta.json b/Resources/Textures/Clothing/Belt/holster.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/holster.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/holster.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/janitor.rsi/meta.json b/Resources/Textures/Clothing/Belt/janitor.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/janitor.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/janitor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/medical.rsi/meta.json b/Resources/Textures/Clothing/Belt/medical.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/medical.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/militarywebbing.rsi/meta.json b/Resources/Textures/Clothing/Belt/militarywebbing.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/militarywebbing.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/militarywebbing.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/security.rsi/meta.json b/Resources/Textures/Clothing/Belt/security.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/securitywebbing.rsi/meta.json b/Resources/Textures/Clothing/Belt/securitywebbing.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/securitywebbing.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/securitywebbing.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/sheath.rsi/meta.json b/Resources/Textures/Clothing/Belt/sheath.rsi/meta.json index fa6033a032..13c88a8821 100644 --- a/Resources/Textures/Clothing/Belt/sheath.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/sheath.rsi/meta.json @@ -9,57 +9,17 @@ "states": [ { "name": "sheath-equipped-BELT", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "sheath-sabre-equipped-BELT", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { - "name": "sheath-sabre", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheath-sabre" }, { - "name": "sheath", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheath" } ] } diff --git a/Resources/Textures/Clothing/Belt/suspenders.rsi/meta.json b/Resources/Textures/Clothing/Belt/suspenders.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/suspenders.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/suspenders.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Belt/utility.rsi/meta.json b/Resources/Textures/Clothing/Belt/utility.rsi/meta.json index 49dac66974..a01a9c6cb9 100644 --- a/Resources/Textures/Clothing/Belt/utility.rsi/meta.json +++ b/Resources/Textures/Clothing/Belt/utility.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Clothing/Ears/Headsets/base.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/base.rsi/meta.json index 3ced4137a7..df6ee47d08 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/base.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/base.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Ears/Headsets/cargo.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/cargo.rsi/meta.json index 3ced4137a7..df6ee47d08 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/cargo.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/cargo.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Ears/Headsets/centcom.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/centcom.rsi/meta.json index b5cb116fa1..bfa84ad2fc 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/centcom.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/centcom.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_alt", - "directions": 1 + "name": "icon_alt" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/command.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/command.rsi/meta.json index cf7927b708..2918dff3d1 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/command.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/command.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_alt", - "directions": 1 + "name": "icon_alt" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Ears/Headsets/engineering.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/engineering.rsi/meta.json index 3ced4137a7..df6ee47d08 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Ears/Headsets/medical.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/medical.rsi/meta.json index cf7927b708..2918dff3d1 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/medical.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_alt", - "directions": 1 + "name": "icon_alt" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Ears/Headsets/medicalscience.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/medicalscience.rsi/meta.json index 8fd3c8e332..79395547c5 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/medicalscience.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/medicalscience.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/mining.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/mining.rsi/meta.json index 8fd3c8e332..79395547c5 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/mining.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/mining.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/robotics.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/robotics.rsi/meta.json index 8fd3c8e332..79395547c5 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/robotics.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/robotics.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/science.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/science.rsi/meta.json index 8fd3c8e332..79395547c5 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/science.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/science.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/security.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/security.rsi/meta.json index cf7927b708..2918dff3d1 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/security.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_alt", - "directions": 1 + "name": "icon_alt" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Ears/Headsets/service.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/service.rsi/meta.json index 8fd3c8e332..79395547c5 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/service.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/service.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/servicesecurity.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/servicesecurity.rsi/meta.json index 8fd3c8e332..79395547c5 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/servicesecurity.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/servicesecurity.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Ears/Headsets/syndicate.rsi/meta.json b/Resources/Textures/Clothing/Ears/Headsets/syndicate.rsi/meta.json index 666069abd8..c4b73b7d03 100644 --- a/Resources/Textures/Clothing/Ears/Headsets/syndicate.rsi/meta.json +++ b/Resources/Textures/Clothing/Ears/Headsets/syndicate.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon_alt", - "directions": 1 + "name": "icon_alt" }, { "name": "equipped-EARS", diff --git a/Resources/Textures/Clothing/Eyes/Glasses/beergoggles.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/beergoggles.rsi/meta.json index 7a84103841..c6895c9583 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/beergoggles.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/beergoggles.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/meta.json index 8f22126d1c..2a1583c008 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/meta.json @@ -8,16 +8,13 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-alt", - "directions": 1 + "name": "icon-alt" }, { - "name": "icon-super", - "directions": 1 + "name": "icon-super" }, { "name": "equipped-EYES", @@ -46,14 +43,6 @@ { "name": "alt-inhand-right", "directions": 4 - }, - { - "name": "super-inhand-left", - "directions": 4 - }, - { - "name": "super-inhand-right", - "directions": 4 } ] } diff --git a/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/super-inhand-left.png b/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/super-inhand-left.png deleted file mode 100644 index 3afeccddd0..0000000000 Binary files a/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/super-inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/super-inhand-right.png b/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/super-inhand-right.png deleted file mode 100644 index f7c8a4501b..0000000000 Binary files a/Resources/Textures/Clothing/Eyes/Glasses/gar.rsi/super-inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Eyes/Glasses/glasses.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/glasses.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/glasses.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/glasses.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Glasses/meson.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/meson.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/meson.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/meson.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Glasses/secglasses.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/secglasses.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/secglasses.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/secglasses.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Glasses/sunglasses.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/sunglasses.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/sunglasses.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/sunglasses.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Glasses/thermal.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Glasses/thermal.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Glasses/thermal.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Glasses/thermal.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Hud/diag.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Hud/diag.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Hud/diag.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Hud/diag.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Hud/med.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Hud/med.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Hud/med.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Hud/med.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Hud/sec.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Hud/sec.rsi/meta.json index 2a9fd063af..541bdfbedc 100644 --- a/Resources/Textures/Clothing/Eyes/Hud/sec.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Hud/sec.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Eyes/Misc/eyepatch.rsi/meta.json b/Resources/Textures/Clothing/Eyes/Misc/eyepatch.rsi/meta.json index 7a84103841..c6895c9583 100644 --- a/Resources/Textures/Clothing/Eyes/Misc/eyepatch.rsi/meta.json +++ b/Resources/Textures/Clothing/Eyes/Misc/eyepatch.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-EYES", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/black.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/black.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/black.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/black.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/blue.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/blue.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/brown.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/brown.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/brown.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/brown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/gray.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/gray.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/gray.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/gray.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/green.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/green.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/green.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/lightbrown.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/lightbrown.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/lightbrown.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/lightbrown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/orange.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/orange.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/orange.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/orange.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/purple.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/purple.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/purple.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/purple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/red.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/red.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/red.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/white.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/white.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/white.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/white.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/Color/yellow.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/Color/yellow.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/Color/yellow.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/Color/yellow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/boxing.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/boxing.rsi/meta.json index 1c1f4260c3..d9a6fdb267 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/boxing.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/boxing.rsi/meta.json @@ -8,20 +8,16 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-blue", - "directions": 1 + "name": "icon-blue" }, { - "name": "icon-green", - "directions": 1 + "name": "icon-green" }, { - "name": "icon-yellow", - "directions": 1 + "name": "icon-yellow" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/captain.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/captain.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/captain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/ihscombat.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/ihscombat.rsi/meta.json index 339c9f36a1..dd95d95446 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/ihscombat.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/ihscombat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/latex.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/latex.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/latex.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/latex.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/leather.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/leather.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/leather.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/leather.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/powerglove.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/powerglove.rsi/meta.json index 8b037ebbd2..fb8682d39a 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/powerglove.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/powerglove.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/robohands.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/robohands.rsi/meta.json index b9bb10dcb9..88e3ebd509 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/robohands.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/robohands.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Hands/Gloves/spaceninja.rsi/meta.json b/Resources/Textures/Clothing/Hands/Gloves/spaceninja.rsi/meta.json index b4acff37db..ca6ed489fe 100644 --- a/Resources/Textures/Clothing/Hands/Gloves/spaceninja.rsi/meta.json +++ b/Resources/Textures/Clothing/Hands/Gloves/spaceninja.rsi/meta.json @@ -8,16 +8,13 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-red", - "directions": 1 + "name": "icon-red" }, { - "name": "icon-green", - "directions": 1 + "name": "icon-green" }, { "name": "equipped-HAND", diff --git a/Resources/Textures/Clothing/Head/Animals/cat.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/cat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/cat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/cat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/cat2.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/cat2.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/cat2.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/cat2.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/cat3.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/cat3.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/cat3.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/cat3.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/headslime.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/headslime.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/headslime.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/headslime.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/monkey.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/monkey.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/monkey.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/monkey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/mouse_brown.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/mouse_brown.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/mouse_brown.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/mouse_brown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/mouse_gray.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/mouse_gray.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/mouse_gray.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/mouse_gray.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Animals/mouse_white.rsi/meta.json b/Resources/Textures/Clothing/Head/Animals/mouse_white.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Animals/mouse_white.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Animals/mouse_white.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/black.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/black.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/black.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/black.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/blue.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/blue.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/blue.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/botany.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/botany.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/botany.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/botany.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/gold.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/gold.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/gold.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/gold.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/green.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/green.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/green.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/grey.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/grey.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/grey.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/red.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/red.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/red.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Bandanas/skull.rsi/meta.json b/Resources/Textures/Clothing/Head/Bandanas/skull.rsi/meta.json index c9b83c852b..66dc616e52 100644 --- a/Resources/Textures/Clothing/Head/Bandanas/skull.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Bandanas/skull.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon_mask", - "directions": 1 + "name": "icon_mask" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardhats/blue.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardhats/blue.rsi/meta.json index ce1c5b7db5..02f235207e 100644 --- a/Resources/Textures/Clothing/Head/Hardhats/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardhats/blue.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "light-icon", - "directions": 1 + "name": "light-icon" }, { "name": "off-equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardhats/orange.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardhats/orange.rsi/meta.json index ce1c5b7db5..02f235207e 100644 --- a/Resources/Textures/Clothing/Head/Hardhats/orange.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardhats/orange.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "light-icon", - "directions": 1 + "name": "light-icon" }, { "name": "off-equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardhats/red.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardhats/red.rsi/meta.json index ce1c5b7db5..02f235207e 100644 --- a/Resources/Textures/Clothing/Head/Hardhats/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardhats/red.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "light-icon", - "directions": 1 + "name": "light-icon" }, { "name": "off-equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardhats/white.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardhats/white.rsi/meta.json index ce1c5b7db5..02f235207e 100644 --- a/Resources/Textures/Clothing/Head/Hardhats/white.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardhats/white.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "light-icon", - "directions": 1 + "name": "light-icon" }, { "name": "off-equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardhats/yellow.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardhats/yellow.rsi/meta.json index ce1c5b7db5..02f235207e 100644 --- a/Resources/Textures/Clothing/Head/Hardhats/yellow.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardhats/yellow.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "light-icon", - "directions": 1 + "name": "light-icon" }, { "name": "off-equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/inhand-left.png deleted file mode 100644 index 7b91c45b69..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/inhand-right.png deleted file mode 100644 index d26398b840..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-inhand-left.png new file mode 100644 index 0000000000..e9ba55de1e Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-inhand-right.png new file mode 100644 index 0000000000..45d73f73df Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-inhand-left.png new file mode 100644 index 0000000000..be7ccc076c Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-inhand-right.png new file mode 100644 index 0000000000..77b15e837d Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/capspace.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/capspace.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/capspace.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/capspace.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardsuits/deathsquad.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/deathsquad.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/deathsquad.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/deathsquad.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/off-inhand-left.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/inhand-left.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/off-inhand-left.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/off-inhand-right.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/inhand-right.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/off-inhand-right.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-inhand-left.png new file mode 100644 index 0000000000..7c6e7831c8 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-inhand-right.png new file mode 100644 index 0000000000..5ee7bc104c Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/equipped-HELMET.png deleted file mode 100644 index c10e42cf14..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/equipped-HELMET.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000..55b9fa1d3e Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-equipped-HELMET.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-inhand-left.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/inhand-left.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-inhand-left.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-inhand-right.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/inhand-right.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/off-inhand-right.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-inhand-left.png new file mode 100644 index 0000000000..bff16d72c4 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-inhand-right.png new file mode 100644 index 0000000000..355977d540 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/engineering.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/ihsvoid.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/ihsvoid.rsi/meta.json index 136bb3f4b3..9477f6d30a 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/ihsvoid.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/ihsvoid.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/inhand-left.png deleted file mode 100644 index 5c14b8e762..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/inhand-right.png deleted file mode 100644 index d7ffaacbbb..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-inhand-left.png new file mode 100644 index 0000000000..8fbfbbf6c6 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-inhand-right.png new file mode 100644 index 0000000000..035c6fc061 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-inhand-left.png new file mode 100644 index 0000000000..85cbfb321a Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-inhand-right.png new file mode 100644 index 0000000000..c876fefb6c Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/medical.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/meta.json index 665e2ac94e..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/meta.json @@ -8,19 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", + "directions": 4 + }, + { + "name": "off-inhand-right", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-inhand-left.png new file mode 100644 index 0000000000..dc16b147b8 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-inhand-right.png new file mode 100644 index 0000000000..e289c62a84 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-inhand-left.png new file mode 100644 index 0000000000..b107272dda Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-inhand-right.png new file mode 100644 index 0000000000..59a3181afb Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/rd.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/inhand-left.png deleted file mode 100644 index 99e2923581..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/inhand-right.png deleted file mode 100644 index 16be438488..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-inhand-left.png new file mode 100644 index 0000000000..b11a533c26 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-inhand-right.png new file mode 100644 index 0000000000..b9c9df2350 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-inhand-left.png new file mode 100644 index 0000000000..12d13f0e18 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-inhand-right.png new file mode 100644 index 0000000000..141dc492a4 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/salvage.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/inhand-left.png deleted file mode 100644 index 8b4ba7b8d9..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/inhand-right.png deleted file mode 100644 index 44e2e8e0f3..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-inhand-left.png new file mode 100644 index 0000000000..c81cf30dc9 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-inhand-right.png new file mode 100644 index 0000000000..f5b449d7b9 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-inhand-left.png new file mode 100644 index 0000000000..32f699cb47 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-inhand-right.png new file mode 100644 index 0000000000..71d2a09325 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security-red.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/meta.json index 665e2ac94e..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/meta.json @@ -8,19 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", + "directions": 4 + }, + { + "name": "off-inhand-right", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/security.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-inhand-left.png new file mode 100644 index 0000000000..68329b89c1 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-inhand-right.png new file mode 100644 index 0000000000..38cc8ca8a6 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/security.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-inhand-left.png new file mode 100644 index 0000000000..742af4cd00 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-inhand-right.png new file mode 100644 index 0000000000..79f70ac121 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/security.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/icon-flash.png new file mode 100644 index 0000000000..a2da102550 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/icon-flash.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/meta.json index abce656390..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/meta.json @@ -8,23 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "equipped-HELMET", + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "combat-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/off-inhand-left.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/inhand-left.png rename to Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/off-inhand-left.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/off-inhand-right.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/inhand-right.png rename to Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/off-inhand-right.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000..4fd853dd13 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-equipped-HELMET.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-inhand-left.png new file mode 100644 index 0000000000..c1350c8242 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-inhand-right.png new file mode 100644 index 0000000000..db67f97b6f Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/syndicate.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/inhand-left.png deleted file mode 100644 index 6cda60d68b..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/inhand-right.png deleted file mode 100644 index 1a23feecdb..0000000000 Binary files a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/meta.json b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/meta.json index 366c8b9bdc..7bea2d1a86 100644 --- a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/meta.json @@ -8,27 +8,33 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-flash", - "directions": 1 + "name": "icon-flash" }, { - "name": "equipped-HELMET", + "name": "off-equipped-HELMET", "directions": 4 }, { - "name": "flash-equipped-HELMET", + "name": "off-inhand-left", "directions": 4 }, { - "name": "inhand-left", + "name": "off-inhand-right", "directions": 4 }, { - "name": "inhand-right", + "name": "on-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-inhand-left.png new file mode 100644 index 0000000000..90b7c2574a Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-inhand-right.png new file mode 100644 index 0000000000..de647331f9 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/off-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/flash-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-equipped-HELMET.png similarity index 100% rename from Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/flash-equipped-HELMET.png rename to Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-equipped-HELMET.png diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-inhand-left.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-inhand-left.png new file mode 100644 index 0000000000..fc11467e8f Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-inhand-left.png differ diff --git a/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-inhand-right.png b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-inhand-right.png new file mode 100644 index 0000000000..131989b592 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Hardsuits/wizard.rsi/on-inhand-right.png differ diff --git a/Resources/Textures/Clothing/Head/Hats/beaver_hat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/beaver_hat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/beaver_hat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/beaver_hat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/beret.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/beret.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/beret.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/beret.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/beret_engineering.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/beret_engineering.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/beret_engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/beret_engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/beret_hos.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/beret_hos.rsi/meta.json index 8c5451aa66..7bd2e3e22a 100644 --- a/Resources/Textures/Clothing/Head/Hats/beret_hos.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/beret_hos.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/beret_warden.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/beret_warden.rsi/meta.json index 8c5451aa66..7bd2e3e22a 100644 --- a/Resources/Textures/Clothing/Head/Hats/beret_warden.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/beret_warden.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/bowler_hat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/bowler_hat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/bowler_hat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/bowler_hat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/brownfedora.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/brownfedora.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/brownfedora.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/brownfedora.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/captain.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/captain.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/captain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/cardborg_h.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/cardborg_h.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/cardborg_h.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/cardborg_h.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/centcom.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/centcom.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/centcom.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/centcom.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/chefhat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/chefhat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/chefhat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/chefhat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/fez.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/fez.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Hats/fez.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/fez.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/greyfedora.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/greyfedora.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/greyfedora.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/greyfedora.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/hopcap.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/hopcap.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/hopcap.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/hopcap.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/hoshat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/hoshat.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Hats/hoshat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/hoshat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/paper.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/paper.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/paper.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/paper.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/pirate.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/pirate.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/pirate.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/pirate.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/plaguedoctor.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/plaguedoctor.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/plaguedoctor.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/plaguedoctor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/redwizard.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/redwizard.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/redwizard.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/redwizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/santahat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/santahat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/santahat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/santahat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/sombrero.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/sombrero.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/sombrero.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/sombrero.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/surgcap_blue.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/surgcap_blue.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/surgcap_blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/surgcap_blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/surgcap_green.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/surgcap_green.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/surgcap_green.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/surgcap_green.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/surgcap_purple.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/surgcap_purple.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/surgcap_purple.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/surgcap_purple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/tophat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/tophat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/tophat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/tophat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/ushanka.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/ushanka.rsi/meta.json index 4ce08759e2..b3f2f7457d 100644 --- a/Resources/Textures/Clothing/Head/Hats/ushanka.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/ushanka.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-up", - "directions": 1 + "name": "icon-up" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/violetwizard.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/violetwizard.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/violetwizard.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/violetwizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/warden.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/warden.rsi/meta.json index 8c5451aa66..7bd2e3e22a 100644 --- a/Resources/Textures/Clothing/Head/Hats/warden.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/warden.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/witch.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/witch.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/witch.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/witch.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/witchhat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/witchhat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/witchhat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/witchhat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/wizard_fake.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/wizard_fake.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/wizard_fake.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/wizard_fake.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/wizardhat.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/wizardhat.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/wizardhat.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/wizardhat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hats/xmascrown.rsi/meta.json b/Resources/Textures/Clothing/Head/Hats/xmascrown.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hats/xmascrown.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hats/xmascrown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/bombsuit.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/bombsuit.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Helmets/bombsuit.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/bombsuit.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/cosmonaut.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/cosmonaut.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Helmets/cosmonaut.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/cosmonaut.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/cult.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/cult.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Helmets/cult.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/cult.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/ihvoid.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/ihvoid.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Helmets/ihvoid.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/ihvoid.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/meta.json index db3d1d0cfe..5c8d904e76 100644 --- a/Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/scaf.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/scaf.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Helmets/scaf.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/scaf.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/security.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/security.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Helmets/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/securityold.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/securityold.rsi/meta.json index 7a2c9310f4..db2bbfafd4 100644 --- a/Resources/Textures/Clothing/Head/Helmets/securityold.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/securityold.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/spaceninja.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/spaceninja.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Helmets/spaceninja.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/spaceninja.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/syndicate.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/syndicate.rsi/meta.json index 54a62c6dc7..ae541b4e9e 100644 --- a/Resources/Textures/Clothing/Head/Helmets/syndicate.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/syndicate.rsi/meta.json @@ -8,16 +8,13 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "visorlit", - "directions": 1 + "name": "visorlit" }, { - "name": "headlight", - "directions": 1 + "name": "headlight" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/templar.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/templar.rsi/meta.json index 8c5451aa66..7bd2e3e22a 100644 --- a/Resources/Textures/Clothing/Head/Helmets/templar.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/templar.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/thunderdome.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/thunderdome.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Helmets/thunderdome.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/thunderdome.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Helmets/wizardhelm.rsi/meta.json b/Resources/Textures/Clothing/Head/Helmets/wizardhelm.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Helmets/wizardhelm.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Helmets/wizardhelm.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/bio.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/bio.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/bio.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/bio.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/cmo.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/cmo.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/cmo.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/general.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/general.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/general.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/general.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/janitor.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/janitor.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/janitor.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/janitor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/scientist.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/scientist.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/scientist.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/scientist.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/Bio/virology.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/Bio/virology.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/Bio/virology.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/Bio/virology.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/chaplain.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/chaplain.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/chaplain.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/chaplain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/cult.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/cult.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/cult.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/cult.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/nun.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/nun.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Hoods/nun.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/nun.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Hoods/rad.rsi/meta.json b/Resources/Textures/Clothing/Head/Hoods/rad.rsi/meta.json index bafbdefc41..920a78a535 100644 --- a/Resources/Textures/Clothing/Head/Hoods/rad.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Hoods/rad.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/bearpelt.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/bearpelt.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/bearpelt.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/bearpelt.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/bunny.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/bunny.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/bunny.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/bunny.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/cake.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/cake.rsi/meta.json index c2986361fe..b399f8db81 100644 --- a/Resources/Textures/Clothing/Head/Misc/cake.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/cake.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/chickenhead.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/chickenhead.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/chickenhead.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/chickenhead.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/pumpkin.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/pumpkin.rsi/meta.json index 2299bc22a1..f1c7bacf20 100644 --- a/Resources/Textures/Clothing/Head/Misc/pumpkin.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/pumpkin.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/pwig.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/pwig.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/pwig.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/pwig.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/richard.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/richard.rsi/meta.json index c5d232e46b..e0ee93d642 100644 --- a/Resources/Textures/Clothing/Head/Misc/richard.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/richard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/skubhead.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/skubhead.rsi/meta.json index 8c0eb52e01..5868e6f365 100644 --- a/Resources/Textures/Clothing/Head/Misc/skubhead.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/skubhead.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/xenom.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/xenom.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/xenom.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/xenom.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Misc/xenos.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/xenos.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Misc/xenos.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Misc/xenos.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/bluesoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/bluesoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/bluesoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/bluesoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/bluesoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/bluesoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/bluesoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/bluesoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/cargosoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/cargosoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/cargosoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/cargosoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/cargosoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/cargosoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/cargosoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/cargosoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/corpsoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/corpsoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/corpsoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/corpsoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/corpsoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/corpsoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/corpsoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/corpsoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/greensoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/greensoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/greensoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/greensoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/greensoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/greensoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/greensoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/greensoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/greysoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/greysoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/greysoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/greysoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/greysoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/greysoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/greysoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/greysoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/mimesoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/mimesoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/mimesoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/mimesoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/mimesoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/mimesoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/mimesoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/mimesoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/orangesoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/orangesoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/orangesoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/orangesoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/orangesoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/orangesoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/orangesoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/orangesoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/purplesoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/purplesoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/purplesoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/purplesoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/purplesoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/purplesoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/purplesoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/purplesoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/redsoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/redsoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/redsoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/redsoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/redsoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/redsoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/redsoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/redsoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/secsoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/secsoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/secsoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/secsoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/secsoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/secsoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/secsoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/secsoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/yellowsoft.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/yellowsoft.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/yellowsoft.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/yellowsoft.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Soft/yellowsoft_flipped.rsi/meta.json b/Resources/Textures/Clothing/Head/Soft/yellowsoft_flipped.rsi/meta.json index adaa2fb070..a470e00944 100644 --- a/Resources/Textures/Clothing/Head/Soft/yellowsoft_flipped.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Soft/yellowsoft_flipped.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Welding/blue_flame_welding_mask.rsi/meta.json b/Resources/Textures/Clothing/Head/Welding/blue_flame_welding_mask.rsi/meta.json index 5f11a5c573..954d46b9e9 100644 --- a/Resources/Textures/Clothing/Head/Welding/blue_flame_welding_mask.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Welding/blue_flame_welding_mask.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-up", - "directions": 1 + "name": "icon-up" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Welding/flame_welding_mask.rsi/meta.json b/Resources/Textures/Clothing/Head/Welding/flame_welding_mask.rsi/meta.json index 5f11a5c573..954d46b9e9 100644 --- a/Resources/Textures/Clothing/Head/Welding/flame_welding_mask.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Welding/flame_welding_mask.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-up", - "directions": 1 + "name": "icon-up" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Welding/paintedwelding.rsi/meta.json b/Resources/Textures/Clothing/Head/Welding/paintedwelding.rsi/meta.json index 5f11a5c573..954d46b9e9 100644 --- a/Resources/Textures/Clothing/Head/Welding/paintedwelding.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Welding/paintedwelding.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-up", - "directions": 1 + "name": "icon-up" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Head/Welding/welding.rsi/meta.json b/Resources/Textures/Clothing/Head/Welding/welding.rsi/meta.json index 5f11a5c573..954d46b9e9 100644 --- a/Resources/Textures/Clothing/Head/Welding/welding.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Welding/welding.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-up", - "directions": 1 + "name": "icon-up" }, { "name": "equipped-HELMET", diff --git a/Resources/Textures/Clothing/Mask/breath.rsi/meta.json b/Resources/Textures/Clothing/Mask/breath.rsi/meta.json index 3d9f681c4b..2e57ae2151 100644 --- a/Resources/Textures/Clothing/Mask/breath.rsi/meta.json +++ b/Resources/Textures/Clothing/Mask/breath.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-MASK", diff --git a/Resources/Textures/Clothing/Mask/clown.rsi/meta.json b/Resources/Textures/Clothing/Mask/clown.rsi/meta.json index 3d9f681c4b..2e57ae2151 100644 --- a/Resources/Textures/Clothing/Mask/clown.rsi/meta.json +++ b/Resources/Textures/Clothing/Mask/clown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-MASK", diff --git a/Resources/Textures/Clothing/Mask/gas.rsi/meta.json b/Resources/Textures/Clothing/Mask/gas.rsi/meta.json index 3d9f681c4b..2e57ae2151 100644 --- a/Resources/Textures/Clothing/Mask/gas.rsi/meta.json +++ b/Resources/Textures/Clothing/Mask/gas.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-MASK", diff --git a/Resources/Textures/Clothing/Mask/joy.rsi/meta.json b/Resources/Textures/Clothing/Mask/joy.rsi/meta.json index 87ca8625bc..c98cf38d35 100644 --- a/Resources/Textures/Clothing/Mask/joy.rsi/meta.json +++ b/Resources/Textures/Clothing/Mask/joy.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-MASK", diff --git a/Resources/Textures/Clothing/Mask/mime.rsi/meta.json b/Resources/Textures/Clothing/Mask/mime.rsi/meta.json index 87ca8625bc..c98cf38d35 100644 --- a/Resources/Textures/Clothing/Mask/mime.rsi/meta.json +++ b/Resources/Textures/Clothing/Mask/mime.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-MASK", diff --git a/Resources/Textures/Clothing/Mask/sterile.rsi/meta.json b/Resources/Textures/Clothing/Mask/sterile.rsi/meta.json index 48c2d3d38e..ff664dffd4 100644 --- a/Resources/Textures/Clothing/Mask/sterile.rsi/meta.json +++ b/Resources/Textures/Clothing/Mask/sterile.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-MASK", diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/NT.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/NT.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/NT.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/NT.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/USA.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/USA.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/USA.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/USA.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/black.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/black.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/black.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/black.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/blue.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/blue.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/blue.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/brown.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/brown.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/brown.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/brown.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/captain.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/captain.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/captain.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/ce.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/ce.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/ce.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/ce.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/centcom.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/centcom.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/centcom.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/centcom.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/inhand-left.png b/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/inhand-left.png new file mode 100644 index 0000000000..d7ab0624f6 Binary files /dev/null and b/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/inhand-right.png b/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/inhand-right.png new file mode 100644 index 0000000000..01588bb5e7 Binary files /dev/null and b/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/clown.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/cmo.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/cmo.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/cmo.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/green.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/green.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/green.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/grey.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/grey.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/grey.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/hop.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/hop.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/hop.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/hop.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/hos.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/hos.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/hos.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/hos.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/ian.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/ian.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/ian.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/ian.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/medical.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/medical.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/medical.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/mime.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/mime.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/mime.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/mime.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/orange.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/orange.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/orange.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/orange.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/purple.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/purple.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/purple.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/purple.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/qm.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/qm.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/qm.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/qm.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/rainbow.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/rainbow.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/rainbow.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/rainbow.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/rd.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/rd.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/rd.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/rd.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/red.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/red.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/red.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/syndie.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/syndie.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/syndie.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/syndie.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/white.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/white.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/white.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/white.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Bedsheets/yellow.rsi/meta.json b/Resources/Textures/Clothing/Neck/Bedsheets/yellow.rsi/meta.json index f21b1b6061..557c79a65d 100644 --- a/Resources/Textures/Clothing/Neck/Bedsheets/yellow.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Bedsheets/yellow.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Neck/Cloaks/cap.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/cap.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/cap.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/cap.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/ce.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/ce.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/ce.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/ce.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/cmo.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/cmo.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/cmo.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/herald.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/herald.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/herald.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/herald.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/hop.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/hop.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/hop.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/hop.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/hos.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/hos.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/hos.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/hos.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/qm.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/qm.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/qm.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/qm.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Cloaks/rd.rsi/meta.json b/Resources/Textures/Clothing/Neck/Cloaks/rd.rsi/meta.json index 7920dfbd39..af717a8905 100644 --- a/Resources/Textures/Clothing/Neck/Cloaks/rd.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Cloaks/rd.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-NECK", diff --git a/Resources/Textures/Clothing/Neck/Misc/bling.rsi/meta.json b/Resources/Textures/Clothing/Neck/Misc/bling.rsi/meta.json index cc8b8f54f0..8570594128 100644 --- a/Resources/Textures/Clothing/Neck/Misc/bling.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Misc/bling.rsi/meta.json @@ -13,8 +13,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Misc/headphones.rsi/meta.json b/Resources/Textures/Clothing/Neck/Misc/headphones.rsi/meta.json index efdcf97059..cb02ab5e25 100644 --- a/Resources/Textures/Clothing/Neck/Misc/headphones.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Misc/headphones.rsi/meta.json @@ -62,12 +62,10 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" } ] } diff --git a/Resources/Textures/Clothing/Neck/Misc/stethoscope.rsi/meta.json b/Resources/Textures/Clothing/Neck/Misc/stethoscope.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Misc/stethoscope.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Misc/stethoscope.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Scarfs/blue.rsi/meta.json b/Resources/Textures/Clothing/Neck/Scarfs/blue.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Scarfs/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Scarfs/blue.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Scarfs/green.rsi/meta.json b/Resources/Textures/Clothing/Neck/Scarfs/green.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Scarfs/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Scarfs/green.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Scarfs/red.rsi/meta.json b/Resources/Textures/Clothing/Neck/Scarfs/red.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Scarfs/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Scarfs/red.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Scarfs/zebra.rsi/meta.json b/Resources/Textures/Clothing/Neck/Scarfs/zebra.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Scarfs/zebra.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Scarfs/zebra.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Ties/dettie.rsi/meta.json b/Resources/Textures/Clothing/Neck/Ties/dettie.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Ties/dettie.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Ties/dettie.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/Neck/Ties/redtie.rsi/meta.json b/Resources/Textures/Clothing/Neck/Ties/redtie.rsi/meta.json index bc5ec2dee3..1f012b2beb 100644 --- a/Resources/Textures/Clothing/Neck/Ties/redtie.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Ties/redtie.rsi/meta.json @@ -12,8 +12,7 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" } ] } diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/armor_reflec.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/armor_reflec.rsi/meta.json index 940cc63fd5..659ed1dddf 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/armor_reflec.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/armor_reflec.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/bulletproof.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/bulletproof.rsi/meta.json index 940cc63fd5..659ed1dddf 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/bulletproof.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/bulletproof.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/cult_armour.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/cult_armour.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/cult_armour.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/cult_armour.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/heavy.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/heavy.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/heavy.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/heavy.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/heavygreen.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/heavygreen.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/heavygreen.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/heavygreen.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/heavyred.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/heavyred.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/heavyred.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/heavyred.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/magusblue.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/magusblue.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/magusblue.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/magusblue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/magusred.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/magusred.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/magusred.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/magusred.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/riot.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/riot.rsi/meta.json index 940cc63fd5..659ed1dddf 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/riot.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/riot.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Armor/scaf.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Armor/scaf.rsi/meta.json index 940cc63fd5..659ed1dddf 100644 --- a/Resources/Textures/Clothing/OuterClothing/Armor/scaf.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Armor/scaf.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Bio/cmo.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Bio/cmo.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Bio/cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Bio/cmo.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Bio/general.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Bio/general.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Bio/general.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Bio/general.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Bio/janitor.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Bio/janitor.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Bio/janitor.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Bio/janitor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Bio/scientist.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Bio/scientist.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Bio/scientist.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Bio/scientist.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Bio/virology.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Bio/virology.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Bio/virology.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Bio/virology.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/bomber.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/bomber.rsi/meta.json index 70d61b867c..442bfb2920 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/bomber.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/bomber.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-open", - "directions": 1 + "name": "icon-open" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/detective.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/detective.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/detective.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/detective.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/gentlecoat.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/gentlecoat.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/gentlecoat.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/gentlecoat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/hos_trenchcoat.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/hos_trenchcoat.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/hos_trenchcoat.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/hos_trenchcoat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/insp_coat.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/insp_coat.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/insp_coat.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/insp_coat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/jensencoat.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/jensencoat.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/jensencoat.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/jensencoat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/labcoat.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/labcoat.rsi/meta.json index 70d61b867c..442bfb2920 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/labcoat.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/labcoat.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-open", - "directions": 1 + "name": "icon-open" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_chem.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_chem.rsi/meta.json index 70d61b867c..442bfb2920 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_chem.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_chem.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-open", - "directions": 1 + "name": "icon-open" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_cmo.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_cmo.rsi/meta.json index 12c0d9c5e3..0420fe0799 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/labcoat_cmo.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-open", - "directions": 1 + "name": "icon-open" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/pirate.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/pirate.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/pirate.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/pirate.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/atmospherics.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/atmospherics.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/atmospherics.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/atmospherics.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/capspace.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/capspace.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/capspace.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/capspace.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/deathsquad.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/deathsquad.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/deathsquad.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/deathsquad.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering-white.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering-white.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering-white.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering-white.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/ihsvoid.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/ihsvoid.rsi/meta.json index 940cc63fd5..659ed1dddf 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/ihsvoid.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/ihsvoid.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/rd.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/rd.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/rd.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/rd.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/salvage.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/salvage.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/salvage.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/salvage.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/security-red.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/security-red.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/security-red.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/security-red.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/security.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/security.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/security.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/syndicate.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/syndicate.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/syndicate.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/syndicate.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Hardsuits/wizard.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Hardsuits/wizard.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Hardsuits/wizard.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Hardsuits/wizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/apron.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/apron.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/apron.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/apron.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/apronbotanist.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/apronbotanist.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/apronbotanist.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/apronbotanist.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/apronchef.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/apronchef.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/apronchef.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/apronchef.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/black_hoodie.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/black_hoodie.rsi/meta.json index 70d61b867c..442bfb2920 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/black_hoodie.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/black_hoodie.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-open", - "directions": 1 + "name": "icon-open" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/cardborg.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/cardborg.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/cardborg.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/cardborg.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/chaplain_hoodie.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/chaplain_hoodie.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/chaplain_hoodie.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/chaplain_hoodie.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/chef.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/chef.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/chef.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/chef.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/classicponcho.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/classicponcho.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/classicponcho.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/classicponcho.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/cultrobes.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/cultrobes.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/cultrobes.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/cultrobes.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/grey_hoodie.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/grey_hoodie.rsi/meta.json index 70d61b867c..442bfb2920 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/grey_hoodie.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/grey_hoodie.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-open", - "directions": 1 + "name": "icon-open" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/judge.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/judge.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/judge.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/judge.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/poncho.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/poncho.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/poncho.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/poncho.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/redwizard.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/redwizard.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/redwizard.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/redwizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/santa.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/santa.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/santa.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/santa.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/skubbody.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/skubbody.rsi/meta.json index f071bbafba..9a00c5741a 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/skubbody.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/skubbody.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/straight_jacket.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/straight_jacket.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/straight_jacket.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/straight_jacket.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/violetwizard.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/violetwizard.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/violetwizard.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/violetwizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/wizard.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/wizard.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/wizard.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/wizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Misc/xenos.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Misc/xenos.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Misc/xenos.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Misc/xenos.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/bombsuit.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/bombsuit.rsi/meta.json index 940cc63fd5..659ed1dddf 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/bombsuit.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/bombsuit.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/chicken.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/chicken.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/chicken.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/chicken.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/emergency.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/emergency.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/emergency.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/emergency.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/fire.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/fire.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/fire.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/fire.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/monkey.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/monkey.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/monkey.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/monkey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/rad.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/rad.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/rad.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/rad.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/spaceninja.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/spaceninja.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/spaceninja.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/spaceninja.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Suits/syndicate.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Suits/syndicate.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Suits/syndicate.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Suits/syndicate.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/detvest.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/detvest.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/detvest.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/detvest.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/hazard.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/hazard.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/hazard.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/hazard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/kevlar.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/kevlar.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/kevlar.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/kevlar.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/mercwebvest.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/mercwebvest.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/mercwebvest.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/mercwebvest.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/oldarmor.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/oldarmor.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/oldarmor.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/oldarmor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/vest.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/vest.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/vest.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/vest.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/OuterClothing/Vests/webvest.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/Vests/webvest.rsi/meta.json index 8f2d1b6bdc..e482264df5 100644 --- a/Resources/Textures/Clothing/OuterClothing/Vests/webvest.rsi/meta.json +++ b/Resources/Textures/Clothing/OuterClothing/Vests/webvest.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-OUTERCLOTHING", diff --git a/Resources/Textures/Clothing/Shoes/Boots/jackboots.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Boots/jackboots.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Boots/jackboots.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Boots/jackboots.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Boots/magboots.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Boots/magboots.rsi/meta.json index bc7d1e0a9b..96b3f4109e 100644 --- a/Resources/Textures/Clothing/Shoes/Boots/magboots.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Boots/magboots.rsi/meta.json @@ -16,12 +16,10 @@ "directions": 4 }, { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-on", - "directions": 1 + "name": "icon-on" }, { "name": "inhand-left", diff --git a/Resources/Textures/Clothing/Shoes/Boots/workboots.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Boots/workboots.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Boots/workboots.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Boots/workboots.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/black.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/black.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/black.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/black.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/blue.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/blue.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/brown.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/brown.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/brown.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/brown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/green.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/green.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/green.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/orange.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/orange.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/orange.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/orange.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/purple.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/purple.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/purple.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/purple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/red.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/red.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/red.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/white.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/white.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/white.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/white.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Color/yellow.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Color/yellow.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Color/yellow.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Color/yellow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Misc/flippers.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Misc/flippers.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Misc/flippers.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Misc/flippers.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Misc/leather.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Misc/leather.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Misc/leather.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Misc/leather.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Misc/slippers.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Misc/slippers.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Misc/slippers.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Misc/slippers.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Misc/tourist.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Misc/tourist.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Misc/tourist.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Misc/tourist.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/chef.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/chef.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/chef.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/chef.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/clown.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/clown.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/clown.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/clown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/cult.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/cult.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/cult.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/cult.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/galoshes.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/galoshes.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/galoshes.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/galoshes.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/spaceninja.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/spaceninja.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/spaceninja.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/spaceninja.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/swat.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/swat.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/swat.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/swat.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Shoes/Specific/wizard.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Specific/wizard.rsi/meta.json index 8fa0b839b0..54b1191d42 100644 --- a/Resources/Textures/Clothing/Shoes/Specific/wizard.rsi/meta.json +++ b/Resources/Textures/Clothing/Shoes/Specific/wizard.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Under/Socks/bee.rsi/meta.json b/Resources/Textures/Clothing/Under/Socks/bee.rsi/meta.json index 37b5dad294..194b8c4f0f 100644 --- a/Resources/Textures/Clothing/Under/Socks/bee.rsi/meta.json +++ b/Resources/Textures/Clothing/Under/Socks/bee.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Under/Socks/coder.rsi/meta.json b/Resources/Textures/Clothing/Under/Socks/coder.rsi/meta.json index 37b5dad294..194b8c4f0f 100644 --- a/Resources/Textures/Clothing/Under/Socks/coder.rsi/meta.json +++ b/Resources/Textures/Clothing/Under/Socks/coder.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-FEET", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/black.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/black.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/black.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/black.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/blue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/blue.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/brown.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/brown.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/brown.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/brown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkblue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkblue.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkblue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkblue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkgreen.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkgreen.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkgreen.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/darkgreen.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/green.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/green.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/green.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/grey.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/grey.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/grey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightbrown.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightbrown.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightbrown.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightbrown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightpurple.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightpurple.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightpurple.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/lightpurple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/maroon.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/maroon.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/maroon.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/maroon.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/orange.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/orange.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/orange.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/orange.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/pink.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/pink.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/pink.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/pink.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/red.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/red.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/red.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/teal.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/teal.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/teal.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/teal.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/white.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/white.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/white.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/white.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/yellow.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/yellow.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/yellow.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/Color/yellow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/bartender.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/bartender.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/bartender.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/bartender.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/cargotech.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/cargotech.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/cargotech.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/cargotech.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/chaplain.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/chaplain.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/chaplain.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/chaplain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/chef.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/chef.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/chef.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/chef.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/chemistry.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/chemistry.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/chemistry.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/chemistry.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/cmo.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/cmo.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/cmo.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective_grey.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective_grey.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective_grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/detective_grey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/engineering.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/engineering.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hop.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hop.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hop.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hop.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_alt.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_alt.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_alt.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_alt.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_parade.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_parade.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_parade.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hos_parade.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hydro.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hydro.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/hydro.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/hydro.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/janitor.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/janitor.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/janitor.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/janitor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/medical.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/medical.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/medical.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/mime.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/mime.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/mime.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/mime.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/paramedic.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/paramedic.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/paramedic.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/paramedic.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/prisoner.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/prisoner.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/prisoner.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/prisoner.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/qm.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/qm.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/qm.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/qm.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/rnd.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/rnd.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/rnd.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/rnd.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/scientist.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/scientist.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/scientist.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/scientist.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/security.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/security.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpskirt/warden.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpskirt/warden.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpskirt/warden.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpskirt/warden.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/black.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/black.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/black.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/black.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/blue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/blue.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/brown.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/brown.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/brown.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/brown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkblue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkblue.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkblue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkblue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkgreen.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkgreen.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkgreen.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/darkgreen.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/green.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/green.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/green.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/grey.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/grey.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/grey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightbrown.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightbrown.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightbrown.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightbrown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightpurple.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightpurple.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightpurple.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/lightpurple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/maroon.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/maroon.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/maroon.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/maroon.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/orange.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/orange.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/orange.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/orange.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/pink.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/pink.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/pink.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/pink.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/red.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/red.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/red.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/red.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/teal.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/teal.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/teal.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/teal.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/white.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/white.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/white.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/white.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/yellow.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/yellow.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/yellow.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/Color/yellow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/ancient.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/ancient.rsi/meta.json index b361c3328c..653724d398 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/ancient.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/ancient.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender_purple.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender_purple.rsi/meta.json index 6a86edc4ec..4b10de708e 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender_purple.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/bartender_purple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/captain.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/captain.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/captain.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/captain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/cargotech.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/cargotech.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/cargotech.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/cargotech.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/meta.json index ade35e41ad..6c3e26f041 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/meta.json @@ -8,12 +8,10 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "s", - "directions": 1 + "name": "s" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_officer.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_officer.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_officer.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_officer.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_official.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_official.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_official.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/centcom_official.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/chaplain.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/chaplain.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/chaplain.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/chaplain.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/chef.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/chef.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/chef.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/chef.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/chemistry.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/chemistry.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/chemistry.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/chemistry.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/clown.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/clown.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/clown.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/clown.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/cmo.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/cmo.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/cmo.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/cmo.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective_grey.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective_grey.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective_grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/detective_grey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/engineering.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/engineering.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/engineering.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/engineering.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hop.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hop.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hop.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hop.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_alt.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_alt.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_alt.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_alt.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_blue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_blue.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_grey.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_grey.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_grey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_parade.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_parade.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_parade.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_parade.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hydro.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hydro.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/hydro.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/hydro.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/janitor.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/janitor.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/janitor.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/janitor.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/medical.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/medical.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/medical.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/medical.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/mime.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/mime.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/mime.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/mime.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/paramedic.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/paramedic.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/paramedic.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/paramedic.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/prisoner.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/prisoner.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/prisoner.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/prisoner.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/qm.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/qm.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/qm.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/qm.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/rainbow.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/rainbow.rsi/meta.json index 18ff64cc68..13e829951d 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/rainbow.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/rainbow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/rnd.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/rnd.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/rnd.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/rnd.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/scientist.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/scientist.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/scientist.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/scientist.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/security.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/security.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/security.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/security.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_blue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_blue.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_grey.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_grey.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_grey.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/security_grey.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/warden.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/warden.rsi/meta.json index d01e147030..a0e86f87fd 100644 --- a/Resources/Textures/Clothing/Uniforms/Jumpsuit/warden.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/warden.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Scrubs/blue.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Scrubs/blue.rsi/meta.json index 6a86edc4ec..4b10de708e 100644 --- a/Resources/Textures/Clothing/Uniforms/Scrubs/blue.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Scrubs/blue.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Scrubs/green.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Scrubs/green.rsi/meta.json index 6a86edc4ec..4b10de708e 100644 --- a/Resources/Textures/Clothing/Uniforms/Scrubs/green.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Scrubs/green.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Clothing/Uniforms/Scrubs/purple.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Scrubs/purple.rsi/meta.json index 6a86edc4ec..4b10de708e 100644 --- a/Resources/Textures/Clothing/Uniforms/Scrubs/purple.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Scrubs/purple.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-INNERCLOTHING", diff --git a/Resources/Textures/Constructible/Atmos/canister.rsi/meta.json b/Resources/Textures/Constructible/Atmos/canister.rsi/meta.json index 1ed2f81b91..a0531e33d0 100644 --- a/Resources/Textures/Constructible/Atmos/canister.rsi/meta.json +++ b/Resources/Textures/Constructible/Atmos/canister.rsi/meta.json @@ -8,28 +8,22 @@ }, "states": [ { - "name": "black", - "directions": 1 + "name": "black" }, { - "name": "black-1", - "directions": 1 + "name": "black-1" }, { - "name": "blue", - "directions": 1 + "name": "blue" }, { - "name": "blue-1", - "directions": 1 + "name": "blue-1" }, { - "name": "can-connector", - "directions": 1 + "name": "can-connector" }, { "name": "can-o0", - "directions": 1, "delays": [ [ 0.2, @@ -38,96 +32,73 @@ ] }, { - "name": "can-o1", - "directions": 1 + "name": "can-o1" }, { - "name": "can-o2", - "directions": 1 + "name": "can-o2" }, { - "name": "can-o3", - "directions": 1 + "name": "can-o3" }, { - "name": "can-oa1", - "directions": 1 + "name": "can-oa1" }, { - "name": "can-open", - "directions": 1 + "name": "can-open" }, { - "name": "grey", - "directions": 1 + "name": "grey" }, { - "name": "grey-1", - "directions": 1 + "name": "grey-1" }, { - "name": "orange", - "directions": 1 + "name": "orange" }, { - "name": "orange-1", - "directions": 1 + "name": "orange-1" }, { - "name": "red", - "directions": 1 + "name": "red" }, { - "name": "red-1", - "directions": 1 + "name": "red-1" }, { - "name": "redws", - "directions": 1 + "name": "redws" }, { - "name": "redws-1", - "directions": 1 + "name": "redws-1" }, { - "name": "yellow", - "directions": 1 + "name": "yellow" }, { - "name": "yellow-1", - "directions": 1 + "name": "yellow-1" }, { - "name": "green", - "directions": 1 + "name": "green" }, { - "name": "green-1", - "directions": 1 + "name": "green-1" }, { - "name": "darkblue", - "directions": 1 + "name": "darkblue" }, { - "name": "darkblue-1", - "directions": 1 + "name": "darkblue-1" }, { - "name": "freon", - "directions": 1 + "name": "freon" }, { - "name": "freon-1", - "directions": 1 + "name": "freon-1" }, { - "name": "water_vapor", - "directions": 1 + "name": "water_vapor" }, { - "name": "water_vapor-1", - "directions": 1 + "name": "water_vapor-1" } ] } diff --git a/Resources/Textures/Constructible/Atmos/gascanisterport.rsi/gasCanisterPort.png b/Resources/Textures/Constructible/Atmos/gascanisterport.rsi/gasCanisterPort.png new file mode 100644 index 0000000000..93a3d5fb6f Binary files /dev/null and b/Resources/Textures/Constructible/Atmos/gascanisterport.rsi/gasCanisterPort.png differ diff --git a/Resources/Textures/Constructible/Atmos/gascanisterport.rsi/meta.json b/Resources/Textures/Constructible/Atmos/gascanisterport.rsi/meta.json new file mode 100644 index 0000000000..6cbbd9f2e8 --- /dev/null +++ b/Resources/Textures/Constructible/Atmos/gascanisterport.rsi/meta.json @@ -0,0 +1,15 @@ +{ + "version":1, + "size":{ + "x":32, + "y":32 + }, + "license":"CC-BY-SA-3.0", + "copyright":"Taken from https://github.com/tgstation/tgstation at commit 57cd1d59ca019dd0e7811ac451f295f818e573da", + "states":[ + { + "name":"gasCanisterPort", + "directions":1 + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Atmos/gasfilter.rsi/gasFilter.png b/Resources/Textures/Constructible/Atmos/gasfilter.rsi/gasFilter.png new file mode 100644 index 0000000000..2c65982213 Binary files /dev/null and b/Resources/Textures/Constructible/Atmos/gasfilter.rsi/gasFilter.png differ diff --git a/Resources/Textures/Constructible/Atmos/gasfilter.rsi/gasFilterOn.png b/Resources/Textures/Constructible/Atmos/gasfilter.rsi/gasFilterOn.png new file mode 100644 index 0000000000..891eface87 Binary files /dev/null and b/Resources/Textures/Constructible/Atmos/gasfilter.rsi/gasFilterOn.png differ diff --git a/Resources/Textures/Constructible/Atmos/gasfilter.rsi/meta.json b/Resources/Textures/Constructible/Atmos/gasfilter.rsi/meta.json new file mode 100644 index 0000000000..c65ad1d7e1 --- /dev/null +++ b/Resources/Textures/Constructible/Atmos/gasfilter.rsi/meta.json @@ -0,0 +1,20 @@ +{ + "version":1, + "size":{ + "x":32, + "y":32 + }, + "license":"CC-BY-SA-3.0", + "copyright":"Taken from https://github.com/tgstation/tgstation at commit 57cd1d59ca019dd0e7811ac451f295f818e573da", + "states":[ + { + "name":"gasFilter", + "directions":4 + }, + { + "name":"gasFilterOn", + "directions":4, + "delays":[ [ 0.2, 0.2, 0.2, 0.2 ], [ 0.2, 0.2, 0.2, 0.2 ], [ 0.2, 0.2, 0.2, 0.2 ], [ 0.2, 0.2, 0.2, 0.2 ] ] + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Atmos/pipe.rsi/meta.json b/Resources/Textures/Constructible/Atmos/pipe.rsi/meta.json index a0d9b3276c..d9f1869ab8 100644 --- a/Resources/Textures/Constructible/Atmos/pipe.rsi/meta.json +++ b/Resources/Textures/Constructible/Atmos/pipe.rsi/meta.json @@ -8,85 +8,24 @@ "copyright":"Taken from https://github.com/tgstation/tgstation at commit 57cd1d59ca019dd0e7811ac451f295f818e573da", "states":[ { - "name":"pipeTJunction2", - "directions":4, - "delays":[ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] + "name":"pipeTJunction", + "directions":4 }, { - "name":"pipeHalf2", - "directions":4, - "delays":[ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] + "name":"pipeHalf", + "directions":4 }, { - "name":"pipeBend2", - "directions":4, - "delays":[ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] + "name":"pipeBend", + "directions":4 }, { - "name":"pipeFourway2", - "directions":1, - "delays":[ - [ - 1.0 - ] - ] + "name":"pipeFourway", + "directions":1 }, { - "name":"pipeStraight2", - "directions":4, - "delays":[ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] + "name":"pipeStraight", + "directions":4 } ] } \ No newline at end of file diff --git a/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeBend2.png b/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeBend.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pipe.rsi/pipeBend2.png rename to Resources/Textures/Constructible/Atmos/pipe.rsi/pipeBend.png diff --git a/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeFourway2.png b/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeFourway.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pipe.rsi/pipeFourway2.png rename to Resources/Textures/Constructible/Atmos/pipe.rsi/pipeFourway.png diff --git a/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeHalf2.png b/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeHalf.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pipe.rsi/pipeHalf2.png rename to Resources/Textures/Constructible/Atmos/pipe.rsi/pipeHalf.png diff --git a/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeStraight2.png b/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeStraight.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pipe.rsi/pipeStraight2.png rename to Resources/Textures/Constructible/Atmos/pipe.rsi/pipeStraight.png diff --git a/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeTJunction2.png b/Resources/Textures/Constructible/Atmos/pipe.rsi/pipeTJunction.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pipe.rsi/pipeTJunction2.png rename to Resources/Textures/Constructible/Atmos/pipe.rsi/pipeTJunction.png diff --git a/Resources/Textures/Constructible/Atmos/pipeitems.rsi/meta.json b/Resources/Textures/Constructible/Atmos/pipeitems.rsi/meta.json deleted file mode 100644 index e395e59a0f..0000000000 --- a/Resources/Textures/Constructible/Atmos/pipeitems.rsi/meta.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "version":1, - "size":{ - "x":32, - "y":32 - }, - "license":"CC-BY-SA-3.0", - "copyright":"Taken from https://github.com/tgstation/tgstation at commit 57cd1d59ca019dd0e7811ac451f295f818e573da", - "states":[ - { - "name": "scrubber", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] - }, - { - "name": "vent", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] - } - ] -} diff --git a/Resources/Textures/Constructible/Atmos/pipeitems.rsi/scrubber.png b/Resources/Textures/Constructible/Atmos/pipeitems.rsi/scrubber.png deleted file mode 100644 index 4a5d1d9d9e..0000000000 Binary files a/Resources/Textures/Constructible/Atmos/pipeitems.rsi/scrubber.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Atmos/pipeitems.rsi/vent.png b/Resources/Textures/Constructible/Atmos/pipeitems.rsi/vent.png deleted file mode 100644 index f639ab114d..0000000000 Binary files a/Resources/Textures/Constructible/Atmos/pipeitems.rsi/vent.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/meta.json b/Resources/Textures/Constructible/Atmos/pump.rsi/meta.json index eafa97cacb..8f00e4796d 100644 --- a/Resources/Textures/Constructible/Atmos/pump.rsi/meta.json +++ b/Resources/Textures/Constructible/Atmos/pump.rsi/meta.json @@ -1 +1,45 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at commit 57cd1d59ca019dd0e7811ac451f295f818e573da", "states": [{"name": "pumpDigitalValve2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pumpManualValve2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pumpPassiveGate2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pumpPassiveGate2On", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pumpPressure2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pumpPressure2On", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "pumpVolume2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pumpVolume2On", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}]} \ No newline at end of file +{ + "version":1, + "size":{ + "x":32, + "y":32 + }, + "license":"CC-BY-SA-3.0", + "copyright":"Taken from https://github.com/tgstation/tgstation at commit 57cd1d59ca019dd0e7811ac451f295f818e573da", + "states":[ + { + "name":"pumpDigitalValve", + "directions":4 + }, + { + "name":"pumpManualValve", + "directions":4 + }, + { + "name":"pumpPassiveGate", + "directions":4 + }, + { + "name":"pumpPassiveGateOn", + "directions":4 + }, + { + "name":"pumpPressure", + "directions":4 + }, + { + "name":"pumpPressureOn", + "directions":4, + "delays":[ [ 0.1, 0.1, 0.1, 0.1, 0.1 ], [ 0.1, 0.1, 0.1, 0.1, 0.1 ], [ 0.1, 0.1, 0.1, 0.1, 0.1 ], [ 0.1, 0.1, 0.1, 0.1, 0.1 ] ] + }, + { + "name":"pumpVolume", + "directions":4 + }, + { + "name":"pumpVolumeOn", + "directions":4, + "delays":[ [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1 ], [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1 ], [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1 ], [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1 ] ] + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpDigitalValve2.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpDigitalValve.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpDigitalValve2.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpDigitalValve.png diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpManualValve2.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpManualValve.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpManualValve2.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpManualValve.png diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGate2.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGate.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGate2.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGate.png diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGate2On.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGateOn.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGate2On.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpPassiveGateOn.png diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure.png new file mode 100644 index 0000000000..8903bc8564 Binary files /dev/null and b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure.png differ diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure2.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure2.png deleted file mode 100644 index 7401c6bfd2..0000000000 Binary files a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure2.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure2On.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressureOn.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressure2On.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpPressureOn.png diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolume2.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolume.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolume2.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolume.png diff --git a/Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolume2On.png b/Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolumeOn.png similarity index 100% rename from Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolume2On.png rename to Resources/Textures/Constructible/Atmos/pump.rsi/pumpVolumeOn.png diff --git a/Resources/Textures/Constructible/Atmos/scrubber.rsi/meta.json b/Resources/Textures/Constructible/Atmos/scrubber.rsi/meta.json index 2feeef5cfa..68be919ebc 100644 --- a/Resources/Textures/Constructible/Atmos/scrubber.rsi/meta.json +++ b/Resources/Textures/Constructible/Atmos/scrubber.rsi/meta.json @@ -9,40 +9,12 @@ "states":[ { "name":"scrubOff", - "directions":1, - "delays":[ [ 1.0 ] ] + "directions":4 }, { "name":"scrubOn", "directions":1, - "delays":[ - [ - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08, - 0.08 - ] - ] + "delays":[ [ 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08 ] ] } ] } diff --git a/Resources/Textures/Constructible/Atmos/scrubber.rsi/scrubOff.png b/Resources/Textures/Constructible/Atmos/scrubber.rsi/scrubOff.png index c4b16c7d0e..2cf6dd0f17 100644 Binary files a/Resources/Textures/Constructible/Atmos/scrubber.rsi/scrubOff.png and b/Resources/Textures/Constructible/Atmos/scrubber.rsi/scrubOff.png differ diff --git a/Resources/Textures/Constructible/Atmos/vent.rsi/meta.json b/Resources/Textures/Constructible/Atmos/vent.rsi/meta.json index b5dbb04a19..0346b40ada 100644 --- a/Resources/Textures/Constructible/Atmos/vent.rsi/meta.json +++ b/Resources/Textures/Constructible/Atmos/vent.rsi/meta.json @@ -9,20 +9,12 @@ "states":[ { "name":"ventOff", - "directions":1, - "delays":[ [ 1.0 ] ] + "directions":4 }, { "name":"ventOn", "directions":1, - "delays":[ - [ - 0.08, - 0.08, - 0.08, - 0.08 - ] - ] + "delays":[ [ 0.08, 0.08, 0.08, 0.08 ] ] } ] } \ No newline at end of file diff --git a/Resources/Textures/Constructible/Atmos/vent.rsi/ventOff.png b/Resources/Textures/Constructible/Atmos/vent.rsi/ventOff.png index e8e469dc4b..bda0e14826 100644 Binary files a/Resources/Textures/Constructible/Atmos/vent.rsi/ventOff.png and b/Resources/Textures/Constructible/Atmos/vent.rsi/ventOff.png differ diff --git a/Resources/Textures/Constructible/Carpets/black_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/black_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/black_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/black_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/blue_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/blue_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/blue_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/blue_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/gay_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/gay_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/gay_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/gay_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/green_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/green_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/green_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/green_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/orange_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/orange_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/orange_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/orange_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/purple_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/purple_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/purple_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/purple_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/red_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/red_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/red_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/red_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Carpets/skyblue_carpet.rsi/meta.json b/Resources/Textures/Constructible/Carpets/skyblue_carpet.rsi/meta.json index 5490ce510e..15f1cbb81c 100644 --- a/Resources/Textures/Constructible/Carpets/skyblue_carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Carpets/skyblue_carpet.rsi/meta.json @@ -8,57 +8,38 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "carpet_0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "carpet_7", - "select": [], - "flags": {}, "directions": 4 } ] diff --git a/Resources/Textures/Constructible/Hydroponics/hydro_tools.rsi/meta.json b/Resources/Textures/Constructible/Hydroponics/hydro_tools.rsi/meta.json index a7f175b169..7c0496334f 100644 --- a/Resources/Textures/Constructible/Hydroponics/hydro_tools.rsi/meta.json +++ b/Resources/Textures/Constructible/Hydroponics/hydro_tools.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "claypot", "directions": 1, "delays": [[1.0]]}, {"name": "claypot-item", "directions": 1, "delays": [[1.0]]}, {"name": "claypot-large", "directions": 1, "delays": [[1.0]]}, {"name": "cyan", "directions": 1, "delays": [[1.0]]}, {"name": "cyan black stripe", "directions": 1, "delays": [[1.0]]}, {"name": "cyan blue stripe", "directions": 1, "delays": [[1.0]]}, {"name": "cyan lime stripe", "directions": 1, "delays": [[1.0]]}, {"name": "cyan purple stripe", "directions": 1, "delays": [[1.0]]}, {"name": "cyan red stripe", "directions": 1, "delays": [[1.0]]}, {"name": "cyan white stripe", "directions": 1, "delays": [[1.0]]}, {"name": "cyan yellow stripe", "directions": 1, "delays": [[1.0]]}, {"name": "deathspray", "directions": 1, "delays": [[1.0]]}, {"name": "disk", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "green black stripe", "directions": 1, "delays": [[1.0]]}, {"name": "green blue stripe", "directions": 1, "delays": [[1.0]]}, {"name": "green lime stripe", "directions": 1, "delays": [[1.0]]}, {"name": "green purple stripe", "directions": 1, "delays": [[1.0]]}, {"name": "green red stripe", "directions": 1, "delays": [[1.0]]}, {"name": "green white stripe", "directions": 1, "delays": [[1.0]]}, {"name": "green yellow stripe", "directions": 1, "delays": [[1.0]]}, {"name": "hydrocover", "directions": 1, "delays": [[1.0]]}, {"name": "hydrotray", "directions": 1, "delays": [[1.0]]}, {"name": "hydrotray2", "directions": 1, "delays": [[1.0]]}, {"name": "hydrotray3", "directions": 1, "delays": [[1.0]]}, {"name": "moldcreep0", "directions": 1, "delays": [[1.0]]}, {"name": "moldcreep1", "directions": 1, "delays": [[1.0]]}, {"name": "moldcreep2", "directions": 1, "delays": [[1.0]]}, {"name": "nolabelspray", "directions": 1, "delays": [[1.0]]}, {"name": "over_alert3", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_harvest3", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_lowhealth3", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_lownutri", "directions": 1, "delays": [[1.0]]}, {"name": "over_lownutri3", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_lowwater3", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "pestspray", "directions": 1, "delays": [[1.0]]}, {"name": "plantbag", "directions": 1, "delays": [[1.0]]}, {"name": "plantbgone", "directions": 1, "delays": [[1.0]]}, {"name": "portaseeder", "directions": 1, "delays": [[1.0]]}, {"name": "seedbag", "directions": 1, "delays": [[1.0]]}, {"name": "sextractor", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "soil", "directions": 1, "delays": [[1.0]]}, {"name": "spaceworms", "directions": 1, "delays": [[0.4, 0.4, 0.4, 0.4]]}, {"name": "spawner", "directions": 1, "delays": [[1.0]]}, {"name": "sprayparts", "directions": 1, "delays": [[1.0]]}, {"name": "traitcopier", "directions": 1, "delays": [[1.0]]}, {"name": "traitgun", "directions": 1, "delays": [[1.0]]}, {"name": "traitscanner", "directions": 1, "delays": [[1.0]]}, {"name": "vine_flowers", "directions": 1, "delays": [[1.0]]}, {"name": "vine_fruit", "directions": 1, "delays": [[1.0]]}, {"name": "weedspray", "directions": 1, "delays": [[1.0]]}, {"name": "scythe", "directions": 1, "delays": [[1.0]]}, {"name": "hoe", "directions": 1, "delays": [[1.0]]}, {"name": "hatchet", "directions": 1, "delays": [[1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "claypot", "delays": [[1.0]]}, {"name": "claypot-item", "delays": [[1.0]]}, {"name": "claypot-large", "delays": [[1.0]]}, {"name": "cyan", "delays": [[1.0]]}, {"name": "cyan black stripe", "delays": [[1.0]]}, {"name": "cyan blue stripe", "delays": [[1.0]]}, {"name": "cyan lime stripe", "delays": [[1.0]]}, {"name": "cyan purple stripe", "delays": [[1.0]]}, {"name": "cyan red stripe", "delays": [[1.0]]}, {"name": "cyan white stripe", "delays": [[1.0]]}, {"name": "cyan yellow stripe", "delays": [[1.0]]}, {"name": "deathspray", "delays": [[1.0]]}, {"name": "disk", "delays": [[0.1, 0.1, 0.1]]}, {"name": "green black stripe", "delays": [[1.0]]}, {"name": "green blue stripe", "delays": [[1.0]]}, {"name": "green lime stripe", "delays": [[1.0]]}, {"name": "green purple stripe", "delays": [[1.0]]}, {"name": "green red stripe", "delays": [[1.0]]}, {"name": "green white stripe", "delays": [[1.0]]}, {"name": "green yellow stripe", "delays": [[1.0]]}, {"name": "hydrocover", "delays": [[1.0]]}, {"name": "hydrotray", "delays": [[1.0]]}, {"name": "hydrotray2", "delays": [[1.0]]}, {"name": "hydrotray3", "delays": [[1.0]]}, {"name": "moldcreep0", "delays": [[1.0]]}, {"name": "moldcreep1", "delays": [[1.0]]}, {"name": "moldcreep2", "delays": [[1.0]]}, {"name": "nolabelspray", "delays": [[1.0]]}, {"name": "over_alert3", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_harvest3", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_lowhealth3", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_lownutri", "delays": [[1.0]]}, {"name": "over_lownutri3", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "over_lowwater3", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "pestspray", "delays": [[1.0]]}, {"name": "plantbag", "delays": [[1.0]]}, {"name": "plantbgone", "delays": [[1.0]]}, {"name": "portaseeder", "delays": [[1.0]]}, {"name": "seedbag", "delays": [[1.0]]}, {"name": "sextractor", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "soil", "delays": [[1.0]]}, {"name": "spaceworms", "delays": [[0.4, 0.4, 0.4, 0.4]]}, {"name": "spawner", "delays": [[1.0]]}, {"name": "sprayparts", "delays": [[1.0]]}, {"name": "traitcopier", "delays": [[1.0]]}, {"name": "traitgun", "delays": [[1.0]]}, {"name": "traitscanner", "delays": [[1.0]]}, {"name": "vine_flowers", "delays": [[1.0]]}, {"name": "vine_fruit", "delays": [[1.0]]}, {"name": "weedspray", "delays": [[1.0]]}, {"name": "scythe", "delays": [[1.0]]}, {"name": "hoe", "delays": [[1.0]]}, {"name": "hatchet", "delays": [[1.0]]}]} diff --git a/Resources/Textures/Constructible/Misc/barsign.rsi/meta.json b/Resources/Textures/Constructible/Misc/barsign.rsi/meta.json index 764787ab0f..93bb0f2cf1 100644 --- a/Resources/Textures/Constructible/Misc/barsign.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/barsign.rsi/meta.json @@ -10,7 +10,6 @@ "states": [ { "name": "combocafe", - "directions": 1, "delays": [ [ 0.1, @@ -34,7 +33,6 @@ }, { "name": "thewiggleroom", - "directions": 1, "delays": [ [ 0.4, @@ -46,7 +44,6 @@ }, { "name": "thesun", - "directions": 1, "delays": [ [ 0.1, @@ -62,7 +59,6 @@ }, { "name": "lv426", - "directions": 1, "delays": [ [ 1, @@ -72,7 +68,6 @@ }, { "name": "birdcage", - "directions": 1, "delays": [ [ 0.4, @@ -82,7 +77,6 @@ }, { "name": "zocalo", - "directions": 1, "delays": [ [ 1, @@ -92,7 +86,6 @@ }, { "name": "emergencyrumparty", - "directions": 1, "delays": [ [ 1, @@ -108,7 +101,6 @@ }, { "name": "empbarsign", - "directions": 1, "delays": [ [ 0.1, @@ -168,7 +160,6 @@ }, { "name": "empty", - "directions": 1, "delays": [ [ 1 @@ -177,7 +168,6 @@ }, { "name": "goose", - "directions": 1, "delays": [ [ 0.5, @@ -197,7 +187,6 @@ }, { "name": "maidcafe", - "directions": 1, "delays": [ [ 1, @@ -221,7 +210,6 @@ }, { "name": "officerbeersky", - "directions": 1, "delays": [ [ 3, @@ -238,7 +226,6 @@ }, { "name": "the_lightbulb", - "directions": 1, "delays": [ [ 0.3, @@ -260,7 +247,6 @@ }, { "name": "thealenath", - "directions": 1, "delays": [ [ 1.8, @@ -295,7 +281,6 @@ }, { "name": "thecoderbus", - "directions": 1, "delays": [ [ 2.5, @@ -305,7 +290,6 @@ }, { "name": "thedrunkcarp", - "directions": 1, "delays": [ [ 0.5, @@ -321,7 +305,6 @@ }, { "name": "theharmbaton", - "directions": 1, "delays": [ [ 3, @@ -338,7 +321,6 @@ }, { "name": "thenet", - "directions": 1, "delays": [ [ 0.1, @@ -406,7 +388,6 @@ }, { "name": "theouterspess", - "directions": 1, "delays": [ [ 1, @@ -416,7 +397,6 @@ }, { "name": "emprah", - "directions": 1, "delays": [ [ 1, @@ -426,7 +406,6 @@ }, { "name": "thesingulo", - "directions": 1, "delays": [ [ 0.1, @@ -442,7 +421,6 @@ }, { "name": "robustacafe", - "directions": 1, "delays": [ [ 1.8, @@ -469,7 +447,6 @@ }, { "name": "maltesefalcon", - "directions": 1, "delays": [ [ 3.8, @@ -485,7 +462,6 @@ }, { "name": "thewretchedhive", - "directions": 1, "delays": [ [ 0.4, @@ -509,7 +485,6 @@ }, { "name": "enginechange", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Constructible/Misc/bookshelf.rsi/meta.json b/Resources/Textures/Constructible/Misc/bookshelf.rsi/meta.json index 45314d7ee0..948cf6fa3c 100644 --- a/Resources/Textures/Constructible/Misc/bookshelf.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/bookshelf.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "book-0", - "directions": 1, "delays": [ [ 1.0 @@ -18,7 +17,6 @@ }, { "name": "book-1", - "directions": 1, "delays": [ [ 1.0 @@ -27,7 +25,6 @@ }, { "name": "book-2", - "directions": 1, "delays": [ [ 1.0 @@ -36,7 +33,6 @@ }, { "name": "book-3", - "directions": 1, "delays": [ [ 1.0 @@ -45,7 +41,6 @@ }, { "name": "book-4", - "directions": 1, "delays": [ [ 1.0 @@ -54,7 +49,6 @@ }, { "name": "book-5", - "directions": 1, "delays": [ [ 1.0 diff --git a/Resources/Textures/Constructible/Misc/crayondecals.rsi/meta.json b/Resources/Textures/Constructible/Misc/crayondecals.rsi/meta.json index 34393fefea..2f35a33945 100644 --- a/Resources/Textures/Constructible/Misc/crayondecals.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/crayondecals.rsi/meta.json @@ -9,1200 +9,535 @@ "states": [ { "name": "0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "5", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "6", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "7", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "8", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "9", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Blasto", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Clandestine", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Cyber", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Diablo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Donk", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Gene", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Gib", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Max", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Newton", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "North", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Omni", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Osiron", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Prima", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Psyke", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Sirius", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Sleeping Carp", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Tunnel", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Waffle", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Zero-G", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "a", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ampersand", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "amyjon", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "antilizard", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "arrow", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "b", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "beepsky", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "biohazard", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "blueprint", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "body", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "bottle", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "brush", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "c", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "carp", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "cat", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "chevron", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "clawprint", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "clown", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "comma", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "corgi", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "credit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "cyka", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "d", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "danger", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "disk", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "dot", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "dwarf", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "e", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "electricdanger", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "end", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "engie", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "equals", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "evac", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "exclamationmark", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "f", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "face", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "fireaxe", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "firedanger", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "food", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "footprint", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "g", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ghost", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "guy", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "h", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "heart", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "i", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "j", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "k", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "largebrush", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "like", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "line", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "matt", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "med", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "minus", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "n", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "nay", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "o", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "p", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "pawprint", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "peace", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "percent", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "plus", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "pound", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "prolizard", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "q", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "questionmark", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "r", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "radiation", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "revolution", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rune1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rune2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rune3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rune4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rune5", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rune6", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "s", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "safe", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "scroll", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shop", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shortline", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shotgun", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "skull", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "slash", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "smallbrush", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "snake", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "space", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "splatter", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "star", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "stickman", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "t", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "taser", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "thinline", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "toilet", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "toolbox", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "trade", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "u", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "uboa", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "v", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "w", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "x", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "y", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "z", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Constructible/Misc/decals.rsi/meta.json b/Resources/Textures/Constructible/Misc/decals.rsi/meta.json index c411301312..353e0d413d 100644 --- a/Resources/Textures/Constructible/Misc/decals.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/decals.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "ai", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "anomaly", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "armory", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "ass", - "directions": 1, "delays": [ [ 1 @@ -45,7 +41,6 @@ }, { "name": "atmos", - "directions": 1, "delays": [ [ 1 @@ -54,7 +49,6 @@ }, { "name": "atmos_air", - "directions": 1, "delays": [ [ 1 @@ -63,7 +57,6 @@ }, { "name": "atmos_co2", - "directions": 1, "delays": [ [ 1 @@ -72,7 +65,6 @@ }, { "name": "atmos_n2", - "directions": 1, "delays": [ [ 1 @@ -81,7 +73,6 @@ }, { "name": "atmos_n2o", - "directions": 1, "delays": [ [ 1 @@ -90,7 +81,6 @@ }, { "name": "atmos_o2", - "directions": 1, "delays": [ [ 1 @@ -99,7 +89,6 @@ }, { "name": "atmos_phoron", - "directions": 1, "delays": [ [ 1 @@ -108,7 +97,6 @@ }, { "name": "atmos_waste", - "directions": 1, "delays": [ [ 1 @@ -117,7 +105,6 @@ }, { "name": "atmosplaque", - "directions": 1, "delays": [ [ 1 @@ -126,7 +113,6 @@ }, { "name": "zumosplaque", - "directions": 1, "delays": [ [ 1 @@ -135,7 +121,6 @@ }, { "name": "bar", - "directions": 1, "delays": [ [ 1 @@ -144,7 +129,6 @@ }, { "name": "biblio", - "directions": 1, "delays": [ [ 1 @@ -153,7 +137,6 @@ }, { "name": "bio", - "directions": 1, "delays": [ [ 1 @@ -162,7 +145,6 @@ }, { "name": "biohazard", - "directions": 1, "delays": [ [ 1 @@ -171,7 +153,6 @@ }, { "name": "bridge", - "directions": 1, "delays": [ [ 1 @@ -180,7 +161,6 @@ }, { "name": "canisters", - "directions": 1, "delays": [ [ 1 @@ -189,7 +169,6 @@ }, { "name": "cargo", - "directions": 1, "delays": [ [ 1 @@ -198,7 +177,6 @@ }, { "name": "cargo_dock", - "directions": 1, "delays": [ [ 1 @@ -207,7 +185,6 @@ }, { "name": "chapel", - "directions": 1, "delays": [ [ 1 @@ -216,7 +193,6 @@ }, { "name": "chem", - "directions": 1, "delays": [ [ 1 @@ -225,7 +201,6 @@ }, { "name": "chemistry1", - "directions": 1, "delays": [ [ 1 @@ -234,7 +209,6 @@ }, { "name": "chemistry2", - "directions": 1, "delays": [ [ 1 @@ -243,7 +217,6 @@ }, { "name": "commander", - "directions": 1, "delays": [ [ 1 @@ -252,7 +225,6 @@ }, { "name": "conference_room", - "directions": 1, "delays": [ [ 1 @@ -261,7 +233,6 @@ }, { "name": "corrosives", - "directions": 1, "delays": [ [ 1 @@ -270,7 +241,6 @@ }, { "name": "cryogenics", - "directions": 1, "delays": [ [ 1 @@ -279,7 +249,6 @@ }, { "name": "danger", - "directions": 1, "delays": [ [ 1 @@ -288,7 +257,6 @@ }, { "name": "deathsposal", - "directions": 1, "delays": [ [ 1 @@ -423,7 +391,6 @@ }, { "name": "dock", - "directions": 1, "delays": [ [ 1 @@ -432,7 +399,6 @@ }, { "name": "doors", - "directions": 1, "delays": [ [ 1 @@ -441,7 +407,6 @@ }, { "name": "drones", - "directions": 1, "delays": [ [ 1 @@ -450,7 +415,6 @@ }, { "name": "electrical", - "directions": 1, "delays": [ [ 1 @@ -459,7 +423,6 @@ }, { "name": "eng", - "directions": 1, "delays": [ [ 1 @@ -468,7 +431,6 @@ }, { "name": "engine", - "directions": 1, "delays": [ [ 1 @@ -477,7 +439,6 @@ }, { "name": "eva", - "directions": 1, "delays": [ [ 1 @@ -486,7 +447,6 @@ }, { "name": "examroom", - "directions": 1, "delays": [ [ 1 @@ -495,7 +455,6 @@ }, { "name": "explosives", - "directions": 1, "delays": [ [ 1 @@ -504,7 +463,6 @@ }, { "name": "fire", - "directions": 1, "delays": [ [ 1 @@ -513,7 +471,6 @@ }, { "name": "flammable", - "directions": 1, "delays": [ [ 1 @@ -522,7 +479,6 @@ }, { "name": "cloning", - "directions": 1, "delays": [ [ 1 @@ -531,7 +487,6 @@ }, { "name": "gravi", - "directions": 1, "delays": [ [ 1 @@ -540,7 +495,6 @@ }, { "name": "hydro1", - "directions": 1, "delays": [ [ 1 @@ -549,7 +503,6 @@ }, { "name": "hydro2", - "directions": 1, "delays": [ [ 1 @@ -558,7 +511,6 @@ }, { "name": "hydro3", - "directions": 1, "delays": [ [ 1 @@ -567,7 +519,6 @@ }, { "name": "interrogation", - "directions": 1, "delays": [ [ 1 @@ -576,7 +527,6 @@ }, { "name": "laser", - "directions": 1, "delays": [ [ 1 @@ -585,7 +535,6 @@ }, { "name": "magnetics", - "directions": 1, "delays": [ [ 1 @@ -594,7 +543,6 @@ }, { "name": "mail", - "directions": 1, "delays": [ [ 1 @@ -603,7 +551,6 @@ }, { "name": "medbay", - "directions": 1, "delays": [ [ 1 @@ -612,7 +559,6 @@ }, { "name": "memetic", - "directions": 1, "delays": [ [ 1 @@ -621,7 +567,6 @@ }, { "name": "miner_dock", - "directions": 1, "delays": [ [ 1 @@ -630,7 +575,6 @@ }, { "name": "monkey_painting", - "directions": 1, "delays": [ [ 1 @@ -639,7 +583,6 @@ }, { "name": "morgue", - "directions": 1, "delays": [ [ 1 @@ -648,7 +591,6 @@ }, { "name": "nosmoking", - "directions": 1, "delays": [ [ 1 @@ -657,7 +599,6 @@ }, { "name": "nosmoking2", - "directions": 1, "delays": [ [ 1 @@ -666,7 +607,6 @@ }, { "name": "surgery", - "directions": 1, "delays": [ [ 1 @@ -675,7 +615,6 @@ }, { "name": "optical", - "directions": 1, "delays": [ [ 1 @@ -684,7 +623,6 @@ }, { "name": "oxidants", - "directions": 1, "delays": [ [ 1 @@ -693,7 +631,6 @@ }, { "name": "pods", - "directions": 1, "delays": [ [ 1 @@ -702,7 +639,6 @@ }, { "name": "prison", - "directions": 1, "delays": [ [ 1 @@ -711,7 +647,6 @@ }, { "name": "radiation", - "directions": 1, "delays": [ [ 1 @@ -720,7 +655,6 @@ }, { "name": "rnd", - "directions": 1, "delays": [ [ 1 @@ -729,7 +663,6 @@ }, { "name": "robo", - "directions": 1, "delays": [ [ 1 @@ -738,7 +671,6 @@ }, { "name": "sci", - "directions": 1, "delays": [ [ 1 @@ -747,7 +679,6 @@ }, { "name": "science1", - "directions": 1, "delays": [ [ 1 @@ -756,7 +687,6 @@ }, { "name": "science2", - "directions": 1, "delays": [ [ 1 @@ -765,7 +695,6 @@ }, { "name": "secure", - "directions": 1, "delays": [ [ 1 @@ -774,7 +703,6 @@ }, { "name": "securearea", - "directions": 1, "delays": [ [ 1 @@ -783,7 +711,6 @@ }, { "name": "shield", - "directions": 1, "delays": [ [ 1 @@ -792,7 +719,6 @@ }, { "name": "shock", - "directions": 1, "delays": [ [ 1 @@ -801,7 +727,6 @@ }, { "name": "something-old1", - "directions": 1, "delays": [ [ 1 @@ -810,7 +735,6 @@ }, { "name": "something-old2", - "directions": 1, "delays": [ [ 1 @@ -819,7 +743,6 @@ }, { "name": "space", - "directions": 1, "delays": [ [ 1 @@ -828,7 +751,6 @@ }, { "name": "telecoms", - "directions": 1, "delays": [ [ 1 @@ -837,7 +759,6 @@ }, { "name": "toxin_res", - "directions": 1, "delays": [ [ 1 @@ -846,7 +767,6 @@ }, { "name": "toxins", - "directions": 1, "delays": [ [ 1 @@ -855,7 +775,6 @@ }, { "name": "virology", - "directions": 1, "delays": [ [ 1 @@ -864,7 +783,6 @@ }, { "name": "xenobio", - "directions": 1, "delays": [ [ 1 @@ -873,7 +791,6 @@ }, { "name": "xenobio2", - "directions": 1, "delays": [ [ 1 @@ -882,7 +799,6 @@ }, { "name": "xenolab", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Misc/extinguisher_cabinet.rsi/meta.json b/Resources/Textures/Constructible/Misc/extinguisher_cabinet.rsi/meta.json index f27ae0220e..ea99c1e06e 100644 --- a/Resources/Textures/Constructible/Misc/extinguisher_cabinet.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/extinguisher_cabinet.rsi/meta.json @@ -9,39 +9,19 @@ "states": [ { "name": "extinguisher_closed", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "extinguisher_empty", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "extinguisher_full", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "extinguisher_mini", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Misc/furniture.rsi/meta.json b/Resources/Textures/Constructible/Misc/furniture.rsi/meta.json index 353a5c697a..dfe717092d 100644 --- a/Resources/Textures/Constructible/Misc/furniture.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/furniture.rsi/meta.json @@ -61,7 +61,6 @@ }, { "name": "bar_stool", - "directions": 1, "delays": [ [ 1 @@ -70,7 +69,6 @@ }, { "name": "bed", - "directions": 1, "delays": [ [ 1 @@ -259,7 +257,6 @@ }, { "name": "psychbed", - "directions": 1, "delays": [ [ 1 @@ -268,7 +265,6 @@ }, { "name": "psychbed_padding", - "directions": 1, "delays": [ [ 1 @@ -295,7 +291,6 @@ }, { "name": "stool_base", - "directions": 1, "delays": [ [ 1 @@ -304,7 +299,6 @@ }, { "name": "stool_padded_preview", - "directions": 1, "delays": [ [ 1 @@ -313,7 +307,6 @@ }, { "name": "stool_padding", - "directions": 1, "delays": [ [ 1 @@ -322,7 +315,6 @@ }, { "name": "stool_preview", - "directions": 1, "delays": [ [ 1 @@ -421,7 +413,6 @@ }, { "name": "shelf", - "directions": 1, "delays": [ [ 1 @@ -430,7 +421,6 @@ }, { "name": "rack", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Misc/mirror.rsi/meta.json b/Resources/Textures/Constructible/Misc/mirror.rsi/meta.json index fc8db81682..bd18defd6b 100644 --- a/Resources/Textures/Constructible/Misc/mirror.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/mirror.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "mirror", "directions": 1, "delays": [[1.0]]}, {"name": "mirror_broke", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "mirror", "delays": [[1.0]]}, {"name": "mirror_broke", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Misc/module.rsi/meta.json b/Resources/Textures/Constructible/Misc/module.rsi/meta.json index e253c76bfc..b6372efd1d 100644 --- a/Resources/Textures/Constructible/Misc/module.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/module.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0", "states": [{"name": "abductor_mod", "directions": 1, "delays": [[1.0]]}, {"name": "airalarm_electronics", "directions": 1, "delays": [[1.0]]}, {"name": "ash_plating", "directions": 1, "delays": [[1.0]]}, {"name": "beaker_holder", "directions": 1, "delays": [[1.0]]}, {"name": "blank_mod", "directions": 1, "delays": [[1.0]]}, {"name": "bluespacearray", "directions": 1, "delays": [[1.0]]}, {"name": "boris", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "boris_recharging", "directions": 1, "delays": [[1.0, 1.0]]}, {"name": "card_mini", "directions": 1, "delays": [[1.0]]}, {"name": "card_mod", "directions": 1, "delays": [[1.0]]}, {"name": "cargodisk", "directions": 1, "delays": [[1.0]]}, {"name": "cart_connector", "directions": 1, "delays": [[1.0]]}, {"name": "cddrive", "directions": 1, "delays": [[1.0]]}, {"name": "cell", "directions": 1, "delays": [[1.0]]}, {"name": "cell_con", "directions": 1, "delays": [[1.0]]}, {"name": "cell_con_micro", "directions": 1, "delays": [[1.0]]}, {"name": "cell_micro", "directions": 1, "delays": [[1.0]]}, {"name": "cell_mini", "directions": 1, "delays": [[1.0]]}, {"name": "charger_APC", "directions": 1, "delays": [[1.0]]}, {"name": "charger_lambda", "directions": 1, "delays": [[1.0]]}, {"name": "charger_pda", "directions": 1, "delays": [[1.0]]}, {"name": "charger_wire", "directions": 1, "delays": [[1.0]]}, {"name": "clock_mod", "directions": 1, "delays": [[0.6, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "command", "directions": 1, "delays": [[1.0]]}, {"name": "cpu", "directions": 1, "delays": [[1.0]]}, {"name": "cpu_adv", "directions": 1, "delays": [[1.0]]}, {"name": "cpu_super", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "cpuboard", "directions": 1, "delays": [[1.0]]}, {"name": "cpuboard_adv", "directions": 1, "delays": [[1.0]]}, {"name": "cpuboard_super", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "cyborg_upgrade", "directions": 1, "delays": [[1.0]]}, {"name": "cyborg_upgrade1", "directions": 1, "delays": [[1.0]]}, {"name": "cyborg_upgrade2", "directions": 1, "delays": [[1.0]]}, {"name": "cyborg_upgrade3", "directions": 1, "delays": [[1.0]]}, {"name": "cyborg_upgrade4", "directions": 1, "delays": [[1.0]]}, {"name": "cyborg_upgrade5", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk0", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk1", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk2", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk3", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk4", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk5", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk6", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk_gene", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk_hydro", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "depositbox", "directions": 1, "delays": [[1.0]]}, {"name": "door_electronics", "directions": 1, "delays": [[1.0]]}, {"name": "engineering", "directions": 1, "delays": [[1.0]]}, {"name": "flopdrive", "directions": 1, "delays": [[1.0]]}, {"name": "generic", "directions": 1, "delays": [[1.0]]}, {"name": "harddisk", "directions": 1, "delays": [[1.0]]}, {"name": "harddisk_micro", "directions": 1, "delays": [[1.0]]}, {"name": "harddisk_mini", "directions": 1, "delays": [[1.0]]}, {"name": "holodisk", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "id_mod", "directions": 1, "delays": [[1.0]]}, {"name": "mainboard", "directions": 1, "delays": [[1.0]]}, {"name": "mcontroller", "directions": 1, "delays": [[1.0]]}, {"name": "medical", "directions": 1, "delays": [[1.0]]}, {"name": "net_wired", "directions": 1, "delays": [[1.0]]}, {"name": "nucleardisk", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "power_mod", "directions": 1, "delays": [[1.0]]}, {"name": "printer", "directions": 1, "delays": [[1.0]]}, {"name": "printer_mini", "directions": 1, "delays": [[1.0]]}, {"name": "prizevendor", "directions": 1, "delays": [[1.0]]}, {"name": "radio", "directions": 1, "delays": [[1.0]]}, {"name": "radio_micro", "directions": 1, "delays": [[1.0]]}, {"name": "radio_mini", "directions": 1, "delays": [[1.0]]}, {"name": "ram", "directions": 1, "delays": [[1.0]]}, {"name": "rndmajordisk", "directions": 1, "delays": [[1.0]]}, {"name": "science", "directions": 1, "delays": [[1.0]]}, {"name": "secmodschematic", "directions": 1, "delays": [[1.0]]}, {"name": "security", "directions": 1, "delays": [[1.0]]}, {"name": "selfrepair_off", "directions": 1, "delays": [[1.0]]}, {"name": "selfrepair_on", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "service", "directions": 1, "delays": [[1.0]]}, {"name": "servo", "directions": 1, "delays": [[1.0]]}, {"name": "ssd", "directions": 1, "delays": [[1.0]]}, {"name": "ssd_large", "directions": 1, "delays": [[1.0]]}, {"name": "ssd_micro", "directions": 1, "delays": [[1.0]]}, {"name": "ssd_mini", "directions": 1, "delays": [[1.0]]}, {"name": "std_mod", "directions": 1, "delays": [[1.0]]}, {"name": "supply", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0", "states": [{"name": "abductor_mod", "delays": [[1.0]]}, {"name": "airalarm_electronics", "delays": [[1.0]]}, {"name": "ash_plating", "delays": [[1.0]]}, {"name": "beaker_holder", "delays": [[1.0]]}, {"name": "blank_mod", "delays": [[1.0]]}, {"name": "bluespacearray", "delays": [[1.0]]}, {"name": "boris", "delays": [[0.1, 0.1]]}, {"name": "boris_recharging", "delays": [[1.0, 1.0]]}, {"name": "card_mini", "delays": [[1.0]]}, {"name": "card_mod", "delays": [[1.0]]}, {"name": "cargodisk", "delays": [[1.0]]}, {"name": "cart_connector", "delays": [[1.0]]}, {"name": "cddrive", "delays": [[1.0]]}, {"name": "cell", "delays": [[1.0]]}, {"name": "cell_con", "delays": [[1.0]]}, {"name": "cell_con_micro", "delays": [[1.0]]}, {"name": "cell_micro", "delays": [[1.0]]}, {"name": "cell_mini", "delays": [[1.0]]}, {"name": "charger_APC", "delays": [[1.0]]}, {"name": "charger_lambda", "delays": [[1.0]]}, {"name": "charger_pda", "delays": [[1.0]]}, {"name": "charger_wire", "delays": [[1.0]]}, {"name": "clock_mod", "delays": [[0.6, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "command", "delays": [[1.0]]}, {"name": "cpu", "delays": [[1.0]]}, {"name": "cpu_adv", "delays": [[1.0]]}, {"name": "cpu_super", "delays": [[0.1, 0.1]]}, {"name": "cpuboard", "delays": [[1.0]]}, {"name": "cpuboard_adv", "delays": [[1.0]]}, {"name": "cpuboard_super", "delays": [[0.1, 0.1]]}, {"name": "cyborg_upgrade", "delays": [[1.0]]}, {"name": "cyborg_upgrade1", "delays": [[1.0]]}, {"name": "cyborg_upgrade2", "delays": [[1.0]]}, {"name": "cyborg_upgrade3", "delays": [[1.0]]}, {"name": "cyborg_upgrade4", "delays": [[1.0]]}, {"name": "cyborg_upgrade5", "delays": [[1.0]]}, {"name": "datadisk0", "delays": [[1.0]]}, {"name": "datadisk1", "delays": [[1.0]]}, {"name": "datadisk2", "delays": [[1.0]]}, {"name": "datadisk3", "delays": [[1.0]]}, {"name": "datadisk4", "delays": [[1.0]]}, {"name": "datadisk5", "delays": [[1.0]]}, {"name": "datadisk6", "delays": [[1.0]]}, {"name": "datadisk_gene", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk_hydro", "delays": [[0.1, 0.1, 0.1]]}, {"name": "depositbox", "delays": [[1.0]]}, {"name": "door_electronics", "delays": [[1.0]]}, {"name": "engineering", "delays": [[1.0]]}, {"name": "flopdrive", "delays": [[1.0]]}, {"name": "generic", "delays": [[1.0]]}, {"name": "harddisk", "delays": [[1.0]]}, {"name": "harddisk_micro", "delays": [[1.0]]}, {"name": "harddisk_mini", "delays": [[1.0]]}, {"name": "holodisk", "delays": [[0.1, 0.1]]}, {"name": "id_mod", "delays": [[1.0]]}, {"name": "mainboard", "delays": [[1.0]]}, {"name": "mcontroller", "delays": [[1.0]]}, {"name": "medical", "delays": [[1.0]]}, {"name": "net_wired", "delays": [[1.0]]}, {"name": "nucleardisk", "delays": [[0.1, 0.1]]}, {"name": "power_mod", "delays": [[1.0]]}, {"name": "printer", "delays": [[1.0]]}, {"name": "printer_mini", "delays": [[1.0]]}, {"name": "prizevendor", "delays": [[1.0]]}, {"name": "radio", "delays": [[1.0]]}, {"name": "radio_micro", "delays": [[1.0]]}, {"name": "radio_mini", "delays": [[1.0]]}, {"name": "ram", "delays": [[1.0]]}, {"name": "rndmajordisk", "delays": [[1.0]]}, {"name": "science", "delays": [[1.0]]}, {"name": "secmodschematic", "delays": [[1.0]]}, {"name": "security", "delays": [[1.0]]}, {"name": "selfrepair_off", "delays": [[1.0]]}, {"name": "selfrepair_on", "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "service", "delays": [[1.0]]}, {"name": "servo", "delays": [[1.0]]}, {"name": "ssd", "delays": [[1.0]]}, {"name": "ssd_large", "delays": [[1.0]]}, {"name": "ssd_micro", "delays": [[1.0]]}, {"name": "ssd_mini", "delays": [[1.0]]}, {"name": "std_mod", "delays": [[1.0]]}, {"name": "supply", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Misc/potted_plants.rsi/meta.json b/Resources/Textures/Constructible/Misc/potted_plants.rsi/meta.json index f822214960..468bc7b304 100644 --- a/Resources/Textures/Constructible/Misc/potted_plants.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/potted_plants.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "random", - "directions": 1, "delays": [ [ 1.0 @@ -16,7 +15,6 @@ }, { "name": "applebush", - "directions": 1, "delays": [ [ 1.0 @@ -25,7 +23,6 @@ }, { "name": "plant-01", - "directions": 1, "delays": [ [ 1.0 @@ -34,7 +31,6 @@ }, { "name": "plant-02", - "directions": 1, "delays": [ [ 1.0 @@ -43,7 +39,6 @@ }, { "name": "plant-03", - "directions": 1, "delays": [ [ 1.0 @@ -52,7 +47,6 @@ }, { "name": "plant-04", - "directions": 1, "delays": [ [ 1.0 @@ -61,7 +55,6 @@ }, { "name": "plant-05", - "directions": 1, "delays": [ [ 1.0 @@ -70,7 +63,6 @@ }, { "name": "plant-06", - "directions": 1, "delays": [ [ 1.0 @@ -79,7 +71,6 @@ }, { "name": "plant-07", - "directions": 1, "delays": [ [ 1.0 @@ -88,7 +79,6 @@ }, { "name": "plant-08", - "directions": 1, "delays": [ [ 1.0 @@ -97,7 +87,6 @@ }, { "name": "plant-09", - "directions": 1, "delays": [ [ 1.0 @@ -106,7 +95,6 @@ }, { "name": "plant-10", - "directions": 1, "delays": [ [ 1.0 @@ -115,7 +103,6 @@ }, { "name": "plant-11", - "directions": 1, "delays": [ [ 1.0 @@ -124,7 +111,6 @@ }, { "name": "plant-12", - "directions": 1, "delays": [ [ 1.0 @@ -133,7 +119,6 @@ }, { "name": "plant-13", - "directions": 1, "delays": [ [ 1.0 @@ -142,7 +127,6 @@ }, { "name": "plant-14", - "directions": 1, "delays": [ [ 1.0 @@ -151,7 +135,6 @@ }, { "name": "plant-15", - "directions": 1, "delays": [ [ 1.0 @@ -160,7 +143,6 @@ }, { "name": "plant-16", - "directions": 1, "delays": [ [ 1.0 @@ -169,7 +151,6 @@ }, { "name": "plant-17", - "directions": 1, "delays": [ [ 1.0 @@ -178,7 +159,6 @@ }, { "name": "plant-18", - "directions": 1, "delays": [ [ 1.0 @@ -187,7 +167,6 @@ }, { "name": "plant-19", - "directions": 1, "delays": [ [ 1.0 @@ -196,7 +175,6 @@ }, { "name": "plant-20", - "directions": 1, "delays": [ [ 1.0 @@ -205,7 +183,6 @@ }, { "name": "plant-21", - "directions": 1, "delays": [ [ 1.0 @@ -214,7 +191,6 @@ }, { "name": "plant-22", - "directions": 1, "delays": [ [ 1.0 @@ -223,7 +199,6 @@ }, { "name": "plant-23", - "directions": 1, "delays": [ [ 1.0 @@ -232,7 +207,6 @@ }, { "name": "plant-24", - "directions": 1, "delays": [ [ 1.0 @@ -241,7 +215,6 @@ }, { "name": "plant-25", - "directions": 1, "delays": [ [ 1.0 @@ -250,7 +223,6 @@ }, { "name": "plant-26", - "directions": 1, "delays": [ [ 1.0 @@ -259,7 +231,6 @@ }, { "name": "plant-27", - "directions": 1, "delays": [ [ 1.0 @@ -268,7 +239,6 @@ }, { "name": "plant-28", - "directions": 1, "delays": [ [ 1.0 @@ -277,7 +247,6 @@ }, { "name": "plant-29", - "directions": 1, "delays": [ [ 1.0 diff --git a/Resources/Textures/Constructible/Misc/stock_parts.rsi/meta.json b/Resources/Textures/Constructible/Misc/stock_parts.rsi/meta.json index 474c1ebd28..ee66da7812 100644 --- a/Resources/Textures/Constructible/Misc/stock_parts.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/stock_parts.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0", "states": [{"name": "0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "4", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "adv_capacitor", "directions": 1, "delays": [[1.0]]}, {"name": "adv_electrolite", "directions": 1, "delays": [[0.13, 0.13]]}, {"name": "adv_scan_module", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "advanced_matter_bin", "directions": 1, "delays": [[1.0]]}, {"name": "ansible_crystal", "directions": 1, "delays": [[1.0]]}, {"name": "bluespace_electrolite", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "bluespace_matter_bin", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "box_0", "directions": 1, "delays": [[1.0]]}, {"name": "box_1", "directions": 1, "delays": [[1.0]]}, {"name": "box_2", "directions": 1, "delays": [[1.0]]}, {"name": "capacitor", "directions": 1, "delays": [[1.0]]}, {"name": "card_reader", "directions": 1, "delays": [[1.0]]}, {"name": "datadisk0", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk1", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk2", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk3", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk4", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk5", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk6", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "electrolite", "directions": 1, "delays": [[0.16, 0.16]]}, {"name": "femto_mani", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "hdd1", "directions": 1, "delays": [[1.0]]}, {"name": "hdd2", "directions": 1, "delays": [[1.0]]}, {"name": "high_micro_laser", "directions": 1, "delays": [[1.0]]}, {"name": "hyperwave_filter", "directions": 1, "delays": [[1.0]]}, {"name": "matter_bin", "directions": 1, "delays": [[1.0]]}, {"name": "micro_laser", "directions": 1, "delays": [[1.0]]}, {"name": "micro_mani", "directions": 1, "delays": [[1.0]]}, {"name": "nano_mani", "directions": 1, "delays": [[1.0]]}, {"name": "pico_mani", "directions": 1, "delays": [[1.0]]}, {"name": "quadratic_capacitor", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "quadultra_micro_laser", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "rom1", "directions": 1, "delays": [[1.0]]}, {"name": "rom2", "directions": 1, "delays": [[1.0]]}, {"name": "romos1", "directions": 1, "delays": [[1.0]]}, {"name": "romos2", "directions": 1, "delays": [[1.0]]}, {"name": "scan_module", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "subspace_amplifier", "directions": 1, "delays": [[0.2, 0.4, 0.2, 0.4]]}, {"name": "subspace_ansible", "directions": 1, "delays": [[1.0]]}, {"name": "subspace_transmitter", "directions": 1, "delays": [[1.0]]}, {"name": "super_capacitor", "directions": 1, "delays": [[1.0]]}, {"name": "super_electrolite", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "super_matter_bin", "directions": 1, "delays": [[1.0]]}, {"name": "super_scan_module", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "treatment_disk", "directions": 1, "delays": [[1.0]]}, {"name": "triphasic_scan_module", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "ultra_high_micro_laser", "directions": 1, "delays": [[1.0]]}, {"name": "vbox_0", "directions": 1, "delays": [[1.0]]}, {"name": "vbox_1", "directions": 1, "delays": [[1.0]]}, {"name": "vbox_2", "directions": 1, "delays": [[1.0]]}, {"name": "vbox_3", "directions": 1, "delays": [[1.0]]}, {"name": "wavelength_analyzer", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0", "states": [{"name": "0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "4", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "adv_capacitor", "delays": [[1.0]]}, {"name": "adv_electrolite", "delays": [[0.13, 0.13]]}, {"name": "adv_scan_module", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "advanced_matter_bin", "delays": [[1.0]]}, {"name": "ansible_crystal", "delays": [[1.0]]}, {"name": "bluespace_electrolite", "delays": [[0.1, 0.1]]}, {"name": "bluespace_matter_bin", "delays": [[0.1, 0.1]]}, {"name": "box_0", "delays": [[1.0]]}, {"name": "box_1", "delays": [[1.0]]}, {"name": "box_2", "delays": [[1.0]]}, {"name": "capacitor", "delays": [[1.0]]}, {"name": "card_reader", "delays": [[1.0]]}, {"name": "datadisk0", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk1", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk2", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk3", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk4", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk5", "delays": [[0.1, 0.1, 0.1]]}, {"name": "datadisk6", "delays": [[0.1, 0.1, 0.1]]}, {"name": "electrolite", "delays": [[0.16, 0.16]]}, {"name": "femto_mani", "delays": [[0.1, 0.1]]}, {"name": "hdd1", "delays": [[1.0]]}, {"name": "hdd2", "delays": [[1.0]]}, {"name": "high_micro_laser", "delays": [[1.0]]}, {"name": "hyperwave_filter", "delays": [[1.0]]}, {"name": "matter_bin", "delays": [[1.0]]}, {"name": "micro_laser", "delays": [[1.0]]}, {"name": "micro_mani", "delays": [[1.0]]}, {"name": "nano_mani", "delays": [[1.0]]}, {"name": "pico_mani", "delays": [[1.0]]}, {"name": "quadratic_capacitor", "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "quadultra_micro_laser", "delays": [[0.1, 0.1]]}, {"name": "rom1", "delays": [[1.0]]}, {"name": "rom2", "delays": [[1.0]]}, {"name": "romos1", "delays": [[1.0]]}, {"name": "romos2", "delays": [[1.0]]}, {"name": "scan_module", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "subspace_amplifier", "delays": [[0.2, 0.4, 0.2, 0.4]]}, {"name": "subspace_ansible", "delays": [[1.0]]}, {"name": "subspace_transmitter", "delays": [[1.0]]}, {"name": "super_capacitor", "delays": [[1.0]]}, {"name": "super_electrolite", "delays": [[0.1, 0.1]]}, {"name": "super_matter_bin", "delays": [[1.0]]}, {"name": "super_scan_module", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "treatment_disk", "delays": [[1.0]]}, {"name": "triphasic_scan_module", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "ultra_high_micro_laser", "delays": [[1.0]]}, {"name": "vbox_0", "delays": [[1.0]]}, {"name": "vbox_1", "delays": [[1.0]]}, {"name": "vbox_2", "delays": [[1.0]]}, {"name": "vbox_3", "delays": [[1.0]]}, {"name": "wavelength_analyzer", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Misc/sylphs.rsi/meta.json b/Resources/Textures/Constructible/Misc/sylphs.rsi/meta.json index eeacdaf161..9bd7fc5a3a 100644 --- a/Resources/Textures/Constructible/Misc/sylphs.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/sylphs.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "sylph", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Misc/tanks.rsi/meta.json b/Resources/Textures/Constructible/Misc/tanks.rsi/meta.json index 9d8a0345cc..883bf68016 100644 --- a/Resources/Textures/Constructible/Misc/tanks.rsi/meta.json +++ b/Resources/Textures/Constructible/Misc/tanks.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "watertank", - "directions": 1, "delays": [ [ 1 @@ -16,7 +15,6 @@ }, { "name": "fueltank", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Power/PA/control_box.rsi/meta.json b/Resources/Textures/Constructible/Power/PA/control_box.rsi/meta.json index 1e22cb2d96..265538bb67 100644 --- a/Resources/Textures/Constructible/Power/PA/control_box.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/PA/control_box.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "states": [{"name": "control_box", "directions": 1, "delays": [[1.0]]},{"name": "control_boxc", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_boxw", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "states": [{"name": "control_box", "delays": [[1.0]]},{"name": "control_boxc", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_box_unlitp3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "control_boxw", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} diff --git a/Resources/Textures/Constructible/Power/VendingMachines/boozeomat.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/boozeomat.rsi/meta.json index 88196b331c..340942d10d 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/boozeomat.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/boozeomat.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.2, @@ -29,7 +27,6 @@ }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 0.2, @@ -44,8 +41,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/cart.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/cart.rsi/meta.json index 07adf4e804..3f073d2b47 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/cart.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/cart.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -31,16 +28,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.5, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/chapel.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/chapel.rsi/meta.json index a097122ca1..01399c435f 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/chapel.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/chapel.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.05, @@ -49,7 +47,6 @@ }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 2.0, @@ -119,8 +116,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/cigs.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/cigs.rsi/meta.json index 29e93fb3ef..368ff80848 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/cigs.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/cigs.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -27,16 +24,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/coffee.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/coffee.rsi/meta.json index a6e22752ac..4ea385ba22 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/coffee.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/coffee.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -28,7 +25,6 @@ }, { "name": "hellfire", - "directions": 1, "delays": [ [ 0.25, @@ -38,16 +34,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "screen", - "directions": 1, "delays": [ [ 0.6, @@ -59,7 +52,6 @@ }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/cola.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/cola.rsi/meta.json index 89b9a58fa2..dd08f20d21 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/cola.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/cola.rsi/meta.json @@ -9,25 +9,14 @@ "states": [ { "name": "broken", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "normal", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.5, @@ -40,7 +29,6 @@ }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -50,16 +38,13 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/dinnerware.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/dinnerware.rsi/meta.json index d1f1da23c0..a1a4cfba89 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/dinnerware.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/dinnerware.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -30,12 +28,10 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/discount.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/discount.rsi/meta.json index ad5abb7d69..e1731ae274 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/discount.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/discount.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 4.0, @@ -23,8 +21,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/empty.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/empty.rsi/meta.json index 92aee55bb4..82487c99a9 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/empty.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/empty.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/engivend.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/engivend.rsi/meta.json index 52e45bdc98..ad6128228b 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/engivend.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/engivend.rsi/meta.json @@ -7,12 +7,10 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -26,7 +24,6 @@ }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -36,16 +33,13 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" } ], "version": 1 diff --git a/Resources/Textures/Constructible/Power/VendingMachines/hats.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/hats.rsi/meta.json index 96ad51b296..19725837ef 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/hats.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/hats.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 2.0, @@ -24,8 +22,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/magivend.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/magivend.rsi/meta.json index 92aee55bb4..82487c99a9 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/magivend.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/magivend.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/medical.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/medical.rsi/meta.json index 2798539692..275205a433 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/medical.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/medical.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -30,16 +27,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/mining.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/mining.rsi/meta.json index 0d0c8a222b..6bacc6bc49 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/mining.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/mining.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -22,12 +20,10 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/nutri.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/nutri.rsi/meta.json index 295f5467fa..915493755c 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/nutri.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/nutri.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { - "name": "deny-unshaded", - "directions": 1 + "name": "deny-unshaded" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 1.0, @@ -36,12 +33,10 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/robotics.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/robotics.rsi/meta.json index 74a652e3c4..a9eef5edc3 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/robotics.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/robotics.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -27,12 +25,10 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/sale.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/sale.rsi/meta.json index 67feef3131..53ea80e9ac 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/sale.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/sale.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "broken-unshaded", - "directions": 1, "delays": [ [ 1.0, @@ -25,7 +23,6 @@ }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 0.2, @@ -44,8 +41,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/sec.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/sec.rsi/meta.json index 2798539692..275205a433 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/sec.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/sec.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -30,16 +27,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/seeds.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/seeds.rsi/meta.json index b75062afcf..8a9cc9ce4c 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/seeds.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/seeds.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -30,12 +28,10 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/shoes.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/shoes.rsi/meta.json index aec9da4eaa..f6b8ff02d1 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/shoes.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/shoes.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 3.0, @@ -24,8 +22,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/smartfridge.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/smartfridge.rsi/meta.json index 92aee55bb4..82487c99a9 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/smartfridge.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/smartfridge.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/snack.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/snack.rsi/meta.json index cd0be6613e..116fe5799a 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/snack.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/snack.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 0.8, @@ -19,12 +18,10 @@ ] }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -34,16 +31,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/sovietsoda.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/sovietsoda.rsi/meta.json index f8c1c9f822..36fe024ae0 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/sovietsoda.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/sovietsoda.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.4, @@ -26,16 +23,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/suits.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/suits.rsi/meta.json index 66964fb02a..365a54db4e 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/suits.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/suits.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "normal-unshaded", - "directions": 1, "delays": [ [ 1.9, @@ -24,8 +22,7 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/theater.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/theater.rsi/meta.json index 4f791ae991..c6ac9a17eb 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/theater.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/theater.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -27,12 +24,10 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { "name": "screen", - "directions": 1, "delays": [ [ 3.0, @@ -41,12 +36,10 @@ ] }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/vendomat.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/vendomat.rsi/meta.json index 29e93fb3ef..368ff80848 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/vendomat.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/vendomat.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/commit/e107a20eb3e8def075a7d967dbf91426accabcbe", "states": [ { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -27,16 +24,13 @@ ] }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/VendingMachines/vox.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/vox.rsi/meta.json index 92aee55bb4..82487c99a9 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/vox.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/vox.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/wallmed.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/wallmed.rsi/meta.json index efebc20fb2..dbd2422646 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/wallmed.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/wallmed.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe", "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -32,12 +30,10 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" } ] } diff --git a/Resources/Textures/Constructible/Power/VendingMachines/youtool.rsi/meta.json b/Resources/Textures/Constructible/Power/VendingMachines/youtool.rsi/meta.json index 70d2bb6b55..92c7cc67bb 100644 --- a/Resources/Textures/Constructible/Power/VendingMachines/youtool.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/VendingMachines/youtool.rsi/meta.json @@ -8,12 +8,10 @@ "states": [ { - "name": "broken", - "directions": 1 + "name": "broken" }, { "name": "deny-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -27,7 +25,6 @@ }, { "name": "eject", - "directions": 1, "delays": [ [ 0.1, @@ -39,7 +36,6 @@ }, { "name": "eject-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -50,16 +46,13 @@ ] }, { - "name": "normal-unshaded", - "directions": 1 + "name": "normal-unshaded" }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "panel", - "directions": 1 + "name": "panel" } ], "version": 1 diff --git a/Resources/Textures/Constructible/Power/ame_controller.rsi/meta.json b/Resources/Textures/Constructible/Power/ame_controller.rsi/meta.json index 6bf6b7f12e..92dbb97139 100644 --- a/Resources/Textures/Constructible/Power/ame_controller.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/ame_controller.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "control", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "control_critical", - "directions": 1, "delays": [ [ 0.1, @@ -45,7 +39,6 @@ }, { "name": "control_fuck", - "directions": 1, "delays": [ [ 0.1, @@ -91,7 +84,6 @@ }, { "name": "control_on", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/ame_shielding.rsi/meta.json b/Resources/Textures/Constructible/Power/ame_shielding.rsi/meta.json index 1ce0d8402b..93fb103cdd 100644 --- a/Resources/Textures/Constructible/Power/ame_shielding.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/ame_shielding.rsi/meta.json @@ -9,160 +9,74 @@ "states": [ { "name": "shield_0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_10", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_11", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_12", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_13", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_14", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_15", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_5", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_6", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_7", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_8", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "core", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shield_9", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "core_weak", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +90,6 @@ }, { "name": "core_strong", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/apc.rsi/meta.json b/Resources/Textures/Constructible/Power/apc.rsi/meta.json index 9ecb0668ac..d6406feec7 100644 --- a/Resources/Textures/Constructible/Power/apc.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/apc.rsi/meta.json @@ -8,21 +8,10 @@ }, "states": [ { - "name": "apc-b", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc-b" }, { "name": "apc-spark", - "select": [], - "flags": {}, - "directions": 1, "delays": [ [ 0.1, @@ -36,87 +25,28 @@ ] }, { - "name": "apc0", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc0" }, { - "name": "apc1", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc1" }, { - "name": "apc1-b-nocover", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc1-b-nocover" }, { - "name": "apc1-nocover", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc1-nocover" }, { - "name": "apc2", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc2" }, { - "name": "apc2-b-nocover", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc2-b-nocover" }, { - "name": "apc2-nocover", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apc2-nocover" }, { "name": "apcemag", - "select": [], - "flags": {}, - "directions": 1, "delays": [ [ 0.5, @@ -125,164 +55,49 @@ ] }, { - "name": "apcewires", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apcewires" }, { - "name": "apcmaint", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apcmaint" }, { - "name": "apco0-0", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco0-0" }, { - "name": "apco0-1", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco0-1" }, { - "name": "apco0-2", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco0-2" }, { - "name": "apco0-3", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco0-3" }, { - "name": "apco1-0", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco1-0" }, { - "name": "apco1-1", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco1-1" }, { - "name": "apco1-2", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco1-2" }, { - "name": "apco1-3", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco1-3" }, { - "name": "apco2-0", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco2-0" }, { - "name": "apco2-1", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco2-1" }, { - "name": "apco2-2", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco2-2" }, { - "name": "apco2-3", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apco2-3" }, { "name": "apco3-0", - "select": [], - "flags": {}, - "directions": 1, "delays": [ [ 1.0, @@ -292,9 +107,6 @@ }, { "name": "apco3-1", - "select": [], - "flags": {}, - "directions": 1, "delays": [ [ 0.1, @@ -308,9 +120,6 @@ }, { "name": "apco3-2", - "select": [], - "flags": {}, - "directions": 1, "delays": [ [ 1.0, @@ -319,26 +128,10 @@ ] }, { - "name": "apcox-0", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apcox-0" }, { - "name": "apcox-1", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "apcox-1" } ] } diff --git a/Resources/Textures/Constructible/Power/autolathe.rsi/meta.json b/Resources/Textures/Constructible/Power/autolathe.rsi/meta.json index 774336ea07..6df05acbda 100644 --- a/Resources/Textures/Constructible/Power/autolathe.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/autolathe.rsi/meta.json @@ -7,25 +7,14 @@ "states": [ { "name": "autolathe", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "autolathe_unlit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "autolathe_building", - "directions": 1, "delays": [ [ 0.055, @@ -42,7 +31,6 @@ }, { "name": "autolathe_building_unlit", - "directions": 1, "delays": [ [ 0.055, @@ -59,7 +47,6 @@ }, { "name": "autolathe_inserting_metal_plate", - "directions": 1, "delays": [ [ 0.1, @@ -76,7 +63,6 @@ }, { "name": "autolathe_inserting_glass_plate", - "directions": 1, "delays": [ [ 0.1, @@ -93,7 +79,6 @@ }, { "name": "autolathe_inserting_phoron_sheet", - "directions": 1, "delays": [ [ 0.1, @@ -110,7 +95,6 @@ }, { "name": "autolathe_inserting_gold_plate", - "directions": 1, "delays": [ [ 0.1, @@ -127,7 +111,6 @@ }, { "name": "autolathe_inserting_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -144,12 +127,7 @@ }, { "name": "autolathe_panel", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/cell_recharger.rsi/meta.json b/Resources/Textures/Constructible/Power/cell_recharger.rsi/meta.json index e2e018ddc0..124b4052a5 100644 --- a/Resources/Textures/Constructible/Power/cell_recharger.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/cell_recharger.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/vgstation-coders/vgstation13/raw/78a32d846158a67dcd0ca2375e408fec298b46a0/icons/obj/power.dmi", "states": [ { - "name": "light-off", - "directions": 1 + "name": "light-off" }, { - "name": "empty", - "directions": 1 + "name": "empty" }, { - "name": "full", - "directions": 1 + "name": "full" }, { - "name": "open", - "directions": 1 + "name": "open" }, { "name": "light-charging", - "directions": 1, "delays": [ [ 0.2, @@ -37,7 +32,6 @@ }, { "name": "light-charged", - "directions": 1, "delays": [ [ 0.5, @@ -47,7 +41,6 @@ }, { "name": "light-empty", - "directions": 1, "delays": [ [ 0.5, diff --git a/Resources/Textures/Constructible/Power/circuit_printer.rsi/meta.json b/Resources/Textures/Constructible/Power/circuit_printer.rsi/meta.json index 5398c75b53..1515c2951b 100644 --- a/Resources/Textures/Constructible/Power/circuit_printer.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/circuit_printer.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "circuit_imprinter", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "circuit_imprinter_ani", - "directions": 1, "delays": [ [ 0.08, @@ -51,12 +45,7 @@ }, { "name": "circuit_imprinter_t", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/conveyor.rsi/meta.json b/Resources/Textures/Constructible/Power/conveyor.rsi/meta.json index 34f444aea9..5f14ace1b4 100644 --- a/Resources/Textures/Constructible/Power/conveyor.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/conveyor.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/blob/a846799c53f8ee9dcec4b075d7645f591f3ec19d/icons/obj/machines/conveyor.dmi", "states": [{"name": "conveyor_loose", "directions": 1, "delays": [[1.0]]}, {"name": "conveyor_started_ccw", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_started_ccw_r", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_started_cw", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_started_cw_r", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_stopped_ccw", "directions": 8, "delays": [[1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0]]}, {"name": "conveyor_stopped_cw", "directions": 8, "delays": [[1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0]]}, {"name": "greenlight", "directions": 1, "delays": [[1.0]]}, {"name": "redlight", "directions": 1, "delays": [[1.0]]}, {"name": "switch", "directions": 1, "delays": [[1.0]]}, {"name": "switch-fwd", "directions": 1, "delays": [[1.0]]}, {"name": "switch-off", "directions": 1, "delays": [[1.0]]}, {"name": "switch-rev", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/blob/a846799c53f8ee9dcec4b075d7645f591f3ec19d/icons/obj/machines/conveyor.dmi", "states": [{"name": "conveyor_loose", "delays": [[1.0]]}, {"name": "conveyor_started_ccw", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_started_ccw_r", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_started_cw", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_started_cw_r", "directions": 8, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "conveyor_stopped_ccw", "directions": 8, "delays": [[1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0]]}, {"name": "conveyor_stopped_cw", "directions": 8, "delays": [[1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0], [1.0]]}, {"name": "greenlight", "delays": [[1.0]]}, {"name": "redlight", "delays": [[1.0]]}, {"name": "switch", "delays": [[1.0]]}, {"name": "switch-fwd", "delays": [[1.0]]}, {"name": "switch-off", "delays": [[1.0]]}, {"name": "switch-rev", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Power/d_analyzer.rsi/meta.json b/Resources/Textures/Constructible/Power/d_analyzer.rsi/meta.json index 9b87075df2..d8e78fe6d3 100644 --- a/Resources/Textures/Constructible/Power/d_analyzer.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/d_analyzer.rsi/meta.json @@ -9,25 +9,14 @@ "states": [ { "name": "d_analyzer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "d_analyzer_l", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "d_analyzer_la", - "directions": 1, "delays": [ [ 0.1, @@ -45,7 +34,6 @@ }, { "name": "d_analyzer_process", - "directions": 1, "delays": [ [ 0.09, @@ -80,12 +68,7 @@ }, { "name": "d_analyzer_t", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/dispensers.rsi/meta.json b/Resources/Textures/Constructible/Power/dispensers.rsi/meta.json index f2a0fa068e..763c13fbcb 100644 --- a/Resources/Textures/Constructible/Power/dispensers.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/dispensers.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "booze_dispenser", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "soda_dispenser", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "dispenser", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Power/disposal.rsi/meta.json b/Resources/Textures/Constructible/Power/disposal.rsi/meta.json index f11b589795..4597e4bbaf 100644 --- a/Resources/Textures/Constructible/Power/disposal.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/disposal.rsi/meta.json @@ -9,12 +9,7 @@ "states": [ { "name": "condisposal", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "conpipe-c", @@ -180,25 +175,14 @@ }, { "name": "disposal", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "disposal-charging", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "disposal-flush", - "directions": 1, "delays": [ [ 0.1, @@ -215,7 +199,6 @@ }, { "name": "dispover-charge", - "directions": 1, "delays": [ [ 0.4, @@ -225,7 +208,6 @@ }, { "name": "dispover-full", - "directions": 1, "delays": [ [ 0.2, @@ -235,21 +217,11 @@ }, { "name": "dispover-handle", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "dispover-ready", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "intake", diff --git a/Resources/Textures/Constructible/Power/field_generator.rsi/meta.json b/Resources/Textures/Constructible/Power/field_generator.rsi/meta.json index 5afd9bc022..5850bdbd5c 100644 --- a/Resources/Textures/Constructible/Power/field_generator.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/field_generator.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation", "states": [{"name": "+a1", "directions": 1, "delays": [[1.0]]}, {"name": "+a2", "directions": 1, "delays": [[1.0]]}, {"name": "+a3", "directions": 1, "delays": [[1.0]]}, {"name": "+on", "directions": 1, "delays": [[1.0]]}, {"name": "+p1", "directions": 1, "delays": [[1.0]]}, {"name": "+p2", "directions": 1, "delays": [[1.0]]}, {"name": "+p3", "directions": 1, "delays": [[1.0]]}, {"name": "+p4", "directions": 1, "delays": [[1.0]]}, {"name": "+p5", "directions": 1, "delays": [[1.0]]}, {"name": "+p6", "directions": 1, "delays": [[1.0]]}, {"name": "Field_Gen", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation", "states": [{"name": "+a1", "delays": [[1.0]]}, {"name": "+a2", "delays": [[1.0]]}, {"name": "+a3", "delays": [[1.0]]}, {"name": "+on", "delays": [[1.0]]}, {"name": "+p1", "delays": [[1.0]]}, {"name": "+p2", "delays": [[1.0]]}, {"name": "+p3", "delays": [[1.0]]}, {"name": "+p4", "delays": [[1.0]]}, {"name": "+p5", "delays": [[1.0]]}, {"name": "+p6", "delays": [[1.0]]}, {"name": "Field_Gen", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Power/gravity_generator.rsi/meta.json b/Resources/Textures/Constructible/Power/gravity_generator.rsi/meta.json index 4d6f697ad5..09b86f3c30 100755 --- a/Resources/Textures/Constructible/Power/gravity_generator.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/gravity_generator.rsi/meta.json @@ -8,16 +8,13 @@ "copyright":"Taken from https://github.com/tgstation/tgstation", "states":[ { - "name":"on", - "directions": 1 + "name":"on" }, { - "name": "off", - "directions": 1 + "name": "off" }, { - "name": "broken", - "directions": 1 + "name": "broken" } ] } diff --git a/Resources/Textures/Constructible/Power/gravity_generator_core.rsi/meta.json b/Resources/Textures/Constructible/Power/gravity_generator_core.rsi/meta.json index 383938bbde..c4313395a0 100644 --- a/Resources/Textures/Constructible/Power/gravity_generator_core.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/gravity_generator_core.rsi/meta.json @@ -9,7 +9,6 @@ "states":[ { "name": "activated", - "directions": 1, "delays": [ [ 0.1, @@ -21,7 +20,6 @@ }, { "name": "activating", - "directions": 1, "delays": [ [ 0.1, @@ -32,7 +30,6 @@ }, { "name": "idle", - "directions": 1, "delays": [ [ 0.1, @@ -47,7 +44,6 @@ }, { "name": "startup", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/hv_cable.rsi/hvcable_9.png b/Resources/Textures/Constructible/Power/hv_cable.rsi/hvcable_9.png index 516254c2a6..a4e531b2b8 100644 Binary files a/Resources/Textures/Constructible/Power/hv_cable.rsi/hvcable_9.png and b/Resources/Textures/Constructible/Power/hv_cable.rsi/hvcable_9.png differ diff --git a/Resources/Textures/Constructible/Power/hv_cable.rsi/meta.json b/Resources/Textures/Constructible/Power/hv_cable.rsi/meta.json index 975ba9d079..f31c816f02 100644 --- a/Resources/Textures/Constructible/Power/hv_cable.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/hv_cable.rsi/meta.json @@ -9,147 +9,67 @@ "states": [ { "name": "hvcable_0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_5", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_6", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_7", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_8", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_9", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_10", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_11", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_12", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_13", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_14", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "hvcable_15", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/juicer.rsi/meta.json b/Resources/Textures/Constructible/Power/juicer.rsi/meta.json index 95a4d470ed..85dc0cec79 100644 --- a/Resources/Textures/Constructible/Power/juicer.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/juicer.rsi/meta.json @@ -1 +1 @@ -{"license": "CC-BY-SA 3.0", "copyright": "https://github.com/tgstation/tgstation/commit/59f2a4e10e5ba36033c9734ddebfbbdc6157472d","version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "juicer0", "directions": 1, "delays": [[1.0]]}, {"name": "juicer1", "directions": 1, "delays": [[1.0]]}]} +{"license": "CC-BY-SA 3.0", "copyright": "https://github.com/tgstation/tgstation/commit/59f2a4e10e5ba36033c9734ddebfbbdc6157472d","version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "juicer0", "delays": [[1.0]]}, {"name": "juicer1", "delays": [[1.0]]}]} diff --git a/Resources/Textures/Constructible/Power/lv_cable.rsi/meta.json b/Resources/Textures/Constructible/Power/lv_cable.rsi/meta.json index 5a3b07fd29..3c7cdae791 100644 --- a/Resources/Textures/Constructible/Power/lv_cable.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/lv_cable.rsi/meta.json @@ -9,147 +9,67 @@ "states": [ { "name": "lvcable_0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_5", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_6", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_7", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_8", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_9", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_10", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_11", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_12", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_13", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_14", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lvcable_15", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/meta.json b/Resources/Textures/Constructible/Power/medical_scanner.rsi/meta.json deleted file mode 100644 index 45f3c3c55d..0000000000 --- a/Resources/Textures/Constructible/Power/medical_scanner.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 64, "y": 32}, "states": [{"name": "scanner_death", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3]]}, {"name": "scanner_green", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3, 0.3, 0.3]]}, {"name": "scanner_off", "directions": 1, "delays": [[1.0]]}, {"name": "scanner_open", "directions": 1, "delays": [[1.0]]}, {"name": "scanner_red", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3, 0.3, 0.3]]}, {"name": "scanner_terminal_blue", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3]]}, {"name": "scanner_terminal_dead", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.2]]}, {"name": "scanner_terminal_green", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3]]}, {"name": "scanner_terminal_off", "directions": 1, "delays": [[1.0]]}, {"name": "scanner_terminal_red", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3]]}, {"name": "scanner_yellow", "directions": 1, "delays": [[0.3, 0.3, 0.3, 0.3, 0.3, 0.3]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_death.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_death.png deleted file mode 100644 index 7abe8dde27..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_death.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_green.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_green.png deleted file mode 100644 index b413cbe1bb..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_green.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_icon.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_icon.png deleted file mode 100644 index e47411e0fd..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_icon.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_off.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_off.png deleted file mode 100644 index 1b3c66bfab..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_off.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_open.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_open.png deleted file mode 100644 index 4208d0e977..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_open.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_red.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_red.png deleted file mode 100644 index e45f895d46..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_red.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_blue.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_blue.png deleted file mode 100644 index 0f4a4b33fe..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_blue.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_dead.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_dead.png deleted file mode 100644 index a79cb10c67..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_dead.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_green.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_green.png deleted file mode 100644 index 13befd5934..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_green.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_off.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_off.png deleted file mode 100644 index 46f8d61efd..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_off.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_red.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_red.png deleted file mode 100644 index 8f02d3cdd3..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_terminal_red.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_yellow.png b/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_yellow.png deleted file mode 100644 index fe31a166e4..0000000000 Binary files a/Resources/Textures/Constructible/Power/medical_scanner.rsi/scanner_yellow.png and /dev/null differ diff --git a/Resources/Textures/Constructible/Power/microwave.rsi/meta.json b/Resources/Textures/Constructible/Power/microwave.rsi/meta.json index e1c3ede466..e2c51c0ce3 100644 --- a/Resources/Textures/Constructible/Power/microwave.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/microwave.rsi/meta.json @@ -9,34 +9,18 @@ "states": [ { "name": "mw", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mw_unlit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mw0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mw_running_unlit", - "directions": 1, "delays": [ [ 1.0, @@ -46,34 +30,18 @@ }, { "name": "mwb", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mwbloody", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mwbloody0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mwbloody1", - "directions": 1, "delays": [ [ 0.1, @@ -83,7 +51,6 @@ }, { "name": "mwbloodyo", - "directions": 1, "delays": [ [ 0.1, @@ -93,7 +60,6 @@ }, { "name": "mwo", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Constructible/Power/mixer.rsi/meta.json b/Resources/Textures/Constructible/Power/mixer.rsi/meta.json index 75a7e2133e..5c3cd75b2c 100644 --- a/Resources/Textures/Constructible/Power/mixer.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/mixer.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "mixer_empty", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "mixer_broken", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "mixer_loaded", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "mixer_screens", - "directions": 1, "delays": [ [ 0.1, @@ -52,7 +48,6 @@ }, { "name": "mixer_screen_broken", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Power/mv_cable.rsi/meta.json b/Resources/Textures/Constructible/Power/mv_cable.rsi/meta.json index a2ba5c3a1a..a1e0096703 100644 --- a/Resources/Textures/Constructible/Power/mv_cable.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/mv_cable.rsi/meta.json @@ -9,147 +9,67 @@ "states": [ { "name": "mvcable_0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_5", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_6", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_7", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_8", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_9", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_10", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_11", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_12", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_13", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_14", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mvcable_15", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/power.rsi/meta.json b/Resources/Textures/Constructible/Power/power.rsi/meta.json index f11413d28a..aaa42b49d6 100644 --- a/Resources/Textures/Constructible/Power/power.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/power.rsi/meta.json @@ -8,7 +8,6 @@ "states": [ { "name": "eightdirwire", - "directions": 1, "delays": [ [ 1 @@ -17,7 +16,6 @@ }, { "name": "generator", - "directions": 1, "delays": [ [ 1 @@ -26,7 +24,6 @@ }, { "name": "provider", - "directions": 1, "delays": [ [ 1 @@ -35,7 +32,6 @@ }, { "name": "storage", - "directions": 1, "delays": [ [ 1 @@ -44,7 +40,6 @@ }, { "name": "wiredmachine", - "directions": 1, "delays": [ [ 1 @@ -53,7 +48,6 @@ }, { "name": "wirelessmachine", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Power/power_cable.rsi/meta.json b/Resources/Textures/Constructible/Power/power_cable.rsi/meta.json index 60d271c857..53e6d6a156 100644 --- a/Resources/Textures/Constructible/Power/power_cable.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/power_cable.rsi/meta.json @@ -8,68 +8,52 @@ "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/fcf375d7d9ce6ceed5c7face899725e5655ab640", "states": [ { - "name": "cable_0", - "directions": 1 + "name": "cable_0" }, { - "name": "cable_1", - "directions": 1 + "name": "cable_1" }, { - "name": "cable_2", - "directions": 1 + "name": "cable_2" }, { - "name": "cable_3", - "directions": 1 + "name": "cable_3" }, { - "name": "cable_4", - "directions": 1 + "name": "cable_4" }, { - "name": "cable_5", - "directions": 1 + "name": "cable_5" }, { - "name": "cable_6", - "directions": 1 + "name": "cable_6" }, { - "name": "cable_7", - "directions": 1 + "name": "cable_7" }, { - "name": "cable_8", - "directions": 1 + "name": "cable_8" }, { - "name": "cable_9", - "directions": 1 + "name": "cable_9" }, { - "name": "cable_10", - "directions": 1 + "name": "cable_10" }, { - "name": "cable_11", - "directions": 1 + "name": "cable_11" }, { - "name": "cable_12", - "directions": 1 + "name": "cable_12" }, { - "name": "cable_13", - "directions": 1 + "name": "cable_13" }, { - "name": "cable_14", - "directions": 1 + "name": "cable_14" }, { - "name": "cable_15", - "directions": 1 + "name": "cable_15" }, ] } diff --git a/Resources/Textures/Constructible/Power/protolathe.rsi/meta.json b/Resources/Textures/Constructible/Power/protolathe.rsi/meta.json index cd5de7b4fc..ce5ea3d4c7 100644 --- a/Resources/Textures/Constructible/Power/protolathe.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/protolathe.rsi/meta.json @@ -9,25 +9,14 @@ "states": [ { "name": "protolathe", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "protolathe_unlit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "protolathe_adamantine", - "directions": 1, "delays": [ [ 0.088, @@ -44,7 +33,6 @@ }, { "name": "protolathe_bananium", - "directions": 1, "delays": [ [ 0.088, @@ -61,7 +49,6 @@ }, { "name": "protolathe_diamond", - "directions": 1, "delays": [ [ 0.088, @@ -78,7 +65,6 @@ }, { "name": "protolathe_glass", - "directions": 1, "delays": [ [ 0.088, @@ -95,7 +81,6 @@ }, { "name": "protolathe_gold", - "directions": 1, "delays": [ [ 0.088, @@ -112,7 +97,6 @@ }, { "name": "protolathe_metal", - "directions": 1, "delays": [ [ 0.088, @@ -129,7 +113,6 @@ }, { "name": "protolathe_phoron", - "directions": 1, "delays": [ [ 0.088, @@ -146,7 +129,6 @@ }, { "name": "protolathe_building", - "directions": 1, "delays": [ [ 0.05, @@ -167,7 +149,6 @@ }, { "name": "protolathe_silver", - "directions": 1, "delays": [ [ 0.088, @@ -184,7 +165,6 @@ }, { "name": "protolathe_solid plasma", - "directions": 1, "delays": [ [ 0.088, @@ -201,16 +181,10 @@ }, { "name": "protolathe_panel", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "protolathe_uranium", - "directions": 1, "delays": [ [ 0.088, diff --git a/Resources/Textures/Constructible/Power/radiation_collector.rsi/meta.json b/Resources/Textures/Constructible/Power/radiation_collector.rsi/meta.json index f6d83c3c76..67dfc428d1 100644 --- a/Resources/Textures/Constructible/Power/radiation_collector.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/radiation_collector.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/goonstation/goonstation-2020", "states": [{"name": "ca_off", "directions": 1, "delays": [[1.0]]}, {"name": "ca_on", "directions": 1, "delays": [[1.0]]}, {"name": "ca_active", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "ca_deactive", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "cu", "directions": 1, "delays": [[1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/goonstation/goonstation-2020", "states": [{"name": "ca_off", "delays": [[1.0]]}, {"name": "ca_on", "delays": [[1.0]]}, {"name": "ca_active", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "ca_deactive", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "cu", "delays": [[1.0]]}]} diff --git a/Resources/Textures/Constructible/Power/recharger.rsi/meta.json b/Resources/Textures/Constructible/Power/recharger.rsi/meta.json index 9d6f9a028f..7d869724cb 100644 --- a/Resources/Textures/Constructible/Power/recharger.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/recharger.rsi/meta.json @@ -9,25 +9,14 @@ "states": [ { "name": "empty", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "full", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "light-off", - "directions": 1, "delays": [ [ 1 @@ -36,7 +25,6 @@ }, { "name": "light-empty", - "directions": 1, "delays": [ [ 1, @@ -46,7 +34,6 @@ }, { "name": "light-charging", - "directions": 1, "delays": [ [ 0.1, @@ -62,7 +49,6 @@ }, { "name": "light-charged", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Constructible/Power/recycling.rsi/meta.json b/Resources/Textures/Constructible/Power/recycling.rsi/meta.json index f2d7112d98..f03ecd6d27 100644 --- a/Resources/Textures/Constructible/Power/recycling.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/recycling.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "grinder-a0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "grinder-a1", - "directions": 1, "delays": [ [ 0.1, @@ -30,16 +24,10 @@ }, { "name": "grinder-b0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "grinder-b1", - "directions": 1, "delays": [ [ 0.1, @@ -53,25 +41,14 @@ }, { "name": "grinder-o0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "grinder-o0bld", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "grinder-o1", - "directions": 1, "delays": [ [ 0.1, @@ -83,7 +60,6 @@ }, { "name": "grinder-o1bld", - "directions": 1, "delays": [ [ 0.1, @@ -95,34 +71,18 @@ }, { "name": "separator-", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "separator-0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "separator-A0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "separator-A1", - "directions": 1, "delays": [ [ 0.1, @@ -134,16 +94,10 @@ }, { "name": "separator-AO0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "separator-AO1", - "directions": 1, "delays": [ [ 0.3, @@ -154,21 +108,11 @@ }, { "name": "separator-B0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "separator-BO0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Constructible/Power/rndpointsource.rsi/meta.json b/Resources/Textures/Constructible/Power/rndpointsource.rsi/meta.json index 7e31bc0fba..33d1355b57 100644 --- a/Resources/Textures/Constructible/Power/rndpointsource.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/rndpointsource.rsi/meta.json @@ -31,7 +31,6 @@ }, { "name": "rndpointsource-broken", - "directions": 1, "delays": [ [ 0.1, @@ -42,21 +41,11 @@ }, { "name": "rndpointsource-off", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rndpointsource-icon", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/server.rsi/meta.json b/Resources/Textures/Constructible/Power/server.rsi/meta.json index da1f24b184..2843953a7e 100644 --- a/Resources/Textures/Constructible/Power/server.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/server.rsi/meta.json @@ -9,48 +9,23 @@ "states": [ { "name": "server", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "server-nopower", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "server-off", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "server-on", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "server_o", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Constructible/Power/substation.rsi/meta.json b/Resources/Textures/Constructible/Power/substation.rsi/meta.json index cffd68eec4..22d58ddbc2 100644 --- a/Resources/Textures/Constructible/Power/substation.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/substation.rsi/meta.json @@ -8,24 +8,19 @@ }, "states": [ { - "name": "substation", - "directions": 1 + "name": "substation" }, { - "name": "full", - "directions": 1 + "name": "full" }, { - "name": "charging", - "directions": 1 + "name": "charging" }, { - "name": "dead", - "directions": 1 + "name": "dead" }, { "name": "screen", - "directions": 1, "delays": [ [ 0.15, diff --git a/Resources/Textures/Constructible/Power/wall_recharger.rsi/meta.json b/Resources/Textures/Constructible/Power/wall_recharger.rsi/meta.json index 67d2cf23bb..f2a6396cc9 100644 --- a/Resources/Textures/Constructible/Power/wall_recharger.rsi/meta.json +++ b/Resources/Textures/Constructible/Power/wall_recharger.rsi/meta.json @@ -9,25 +9,14 @@ "states": [ { "name": "empty", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "full", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "light-off", - "directions": 1, "delays": [ [ 1 @@ -36,7 +25,6 @@ }, { "name": "light-empty", - "directions": 1, "delays": [ [ 1, @@ -46,7 +34,6 @@ }, { "name": "light-charging", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +46,6 @@ }, { "name": "light-charged", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/meta.json b/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/meta.json new file mode 100644 index 0000000000..e90c216459 --- /dev/null +++ b/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/meta.json @@ -0,0 +1,47 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/1da0b5547e02db0db48d0bc93926c26bd8888347", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "pod_0" + }, + { + "name": "pod_1", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "pod_e", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "pod_g", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/pod_0.png b/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_0.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/pod_0.png rename to Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_0.png diff --git a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_1.png b/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_1.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_1.png rename to Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_1.png diff --git a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_e.png b/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_e.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_e.png rename to Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_e.png diff --git a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_g.png b/Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_g.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_g.png rename to Resources/Textures/Constructible/Specific/Medical/cloning.rsi/pod_g.png diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/closed.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/closed.png new file mode 100644 index 0000000000..6cce367fc5 Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/closed.png differ diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_unpowered.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/closed_unpowered.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_unpowered.png rename to Resources/Textures/Constructible/Specific/Medical/scanner.rsi/closed_unpowered.png diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/idle_unlit.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/idle_unlit.png new file mode 100644 index 0000000000..4470a4668c Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/idle_unlit.png differ diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/maint_unlit.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/maint_unlit.png new file mode 100644 index 0000000000..1726aa5d10 Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/maint_unlit.png differ diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/meta.json b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/meta.json new file mode 100644 index 0000000000..0ef80a0457 --- /dev/null +++ b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/meta.json @@ -0,0 +1,67 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/1da0b5547e02db0db48d0bc93926c26bd8888347", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "open" + }, + { + "name": "closed" + }, + { + "name": "open_unpowered" + }, + { + "name": "closed_unpowered" + }, + { + "name": "occupied", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "off_unlit" + }, + { + "name": "occupied_unlit" + }, + { + "name": "idle_unlit", + "delays": [ + [ + 0.2, + 0.2 + ] + ] + }, + { + "name": "maint_unlit", + "delays": [ + [ + 0.2, + 0.2 + ] + ] + }, + { + "name": "red_unlit", + "delays": [ + [ + 0.2, + 0.2 + ] + ] + } + ] +} diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_occupied.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/occupied.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_occupied.png rename to Resources/Textures/Constructible/Specific/Medical/scanner.rsi/occupied.png diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/occupied_unlit.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/occupied_unlit.png new file mode 100644 index 0000000000..0ff8021e00 Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/occupied_unlit.png differ diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/off_unlit.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/off_unlit.png new file mode 100644 index 0000000000..445ddaae70 Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/off_unlit.png differ diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/open.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/open.png new file mode 100644 index 0000000000..c028a08d31 Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/open.png differ diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open_unpowered.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/open_unpowered.png similarity index 100% rename from Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open_unpowered.png rename to Resources/Textures/Constructible/Specific/Medical/scanner.rsi/open_unpowered.png diff --git a/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/red_unlit.png b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/red_unlit.png new file mode 100644 index 0000000000..16ca86aa36 Binary files /dev/null and b/Resources/Textures/Constructible/Specific/Medical/scanner.rsi/red_unlit.png differ diff --git a/Resources/Textures/Constructible/Storage/Crates/electricalcrate.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/electricalcrate.rsi/meta.json index 7dec078384..e17fe0029f 100644 --- a/Resources/Textures/Constructible/Storage/Crates/electricalcrate.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/electricalcrate.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "electricalcrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "electricalcrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "electricalcrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "electricalcrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/engicrate.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/engicrate.rsi/meta.json index 57a7a4a1ec..fe13afd0ec 100644 --- a/Resources/Textures/Constructible/Storage/Crates/engicrate.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/engicrate.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "engicrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "engicrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "engicrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "engicrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/engicrate_secure.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/engicrate_secure.rsi/meta.json index 9f187b0adb..3876fd2dd5 100644 --- a/Resources/Textures/Constructible/Storage/Crates/engicrate_secure.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/engicrate_secure.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "engicratesecure", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "engicratesecure_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "engicratesecure_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "engicratesecure_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/freezer.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/freezer.rsi/meta.json index 3a4808b50e..3cc1d4c0ed 100644 --- a/Resources/Textures/Constructible/Storage/Crates/freezer.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/freezer.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "freezer", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "freezer_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "freezer_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "freezer_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/generic.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/generic.rsi/meta.json index f31ed3f039..3ec907cb4a 100644 --- a/Resources/Textures/Constructible/Storage/Crates/generic.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/generic.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "crate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "crate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "crate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "crate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/hydro.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/hydro.rsi/meta.json index 20231e2035..bda4462f5b 100644 --- a/Resources/Textures/Constructible/Storage/Crates/hydro.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/hydro.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "hydrocrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "hydrocrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "hydrocrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "hydrocrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/hydro_secure.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/hydro_secure.rsi/meta.json index dc86d7de58..9fe23303d8 100644 --- a/Resources/Textures/Constructible/Storage/Crates/hydro_secure.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/hydro_secure.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "hydrocratesecure", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "hydrocratesecure_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "hydrocratesecure_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "hydrocratesecure_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/medical.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/medical.rsi/meta.json index 64a6d27fc1..627f85244a 100644 --- a/Resources/Textures/Constructible/Storage/Crates/medical.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/medical.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "medicalcrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "medicalcrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "medicalcrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "medicalcrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/medicalcrate_secure.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/medicalcrate_secure.rsi/meta.json index 75f31c0baa..2b8a0b0200 100644 --- a/Resources/Textures/Constructible/Storage/Crates/medicalcrate_secure.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/medicalcrate_secure.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "medicalcratesecure", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "medicalcratesecure_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "medicalcratesecure_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "medicalcratesecure_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/o2.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/o2.rsi/meta.json index e9d6467914..827ff85c6d 100644 --- a/Resources/Textures/Constructible/Storage/Crates/o2.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/o2.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "o2crate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "o2crate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "o2crate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "o2crate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/phoron.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/phoron.rsi/meta.json index 0af09d7de9..bb879f3e69 100644 --- a/Resources/Textures/Constructible/Storage/Crates/phoron.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/phoron.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "phoroncrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "phoroncrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "phoroncrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "phoroncrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/plastic.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/plastic.rsi/meta.json index 6d14f2078d..6ca30fd6f3 100644 --- a/Resources/Textures/Constructible/Storage/Crates/plastic.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/plastic.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "plasticcrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "plasticcrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "plasticcrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "plasticcrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/privatecrate_secure.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/privatecrate_secure.rsi/meta.json index 617586f7f2..e3116a2421 100644 --- a/Resources/Textures/Constructible/Storage/Crates/privatecrate_secure.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/privatecrate_secure.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "privatecrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "privatecrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "privatecrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "privatecrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/radiation.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/radiation.rsi/meta.json index 8a3671838f..c8ea325bc6 100644 --- a/Resources/Textures/Constructible/Storage/Crates/radiation.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/radiation.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "radiationcrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "radiationcrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "radiationcrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "radiationcrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/scicrate.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/scicrate.rsi/meta.json index 1c8ce6baa6..97671ad928 100644 --- a/Resources/Textures/Constructible/Storage/Crates/scicrate.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/scicrate.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "scicrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "scicrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "scicrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "scicrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/scicrate_secure.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/scicrate_secure.rsi/meta.json index 0bba4167e2..13cd9af85c 100644 --- a/Resources/Textures/Constructible/Storage/Crates/scicrate_secure.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/scicrate_secure.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "scicratesecure", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "scicratesecure_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "scicratesecure_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "scicratesecure_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/sec_gear.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/sec_gear.rsi/meta.json index 801692a8d9..474713929e 100644 --- a/Resources/Textures/Constructible/Storage/Crates/sec_gear.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/sec_gear.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "secgearcrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "secgearcrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "secgearcrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "secgearcrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/secure.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/secure.rsi/meta.json index 6053a923be..6ceea46dc4 100644 --- a/Resources/Textures/Constructible/Storage/Crates/secure.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/secure.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "securecrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "securecrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "securecrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "securecrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/surgerycrate.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/surgerycrate.rsi/meta.json index b3a2abcd40..cf06c24331 100644 --- a/Resources/Textures/Constructible/Storage/Crates/surgerycrate.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/surgerycrate.rsi/meta.json @@ -10,39 +10,30 @@ { "name": "surgerycrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "surgerycrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "surgerycrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "surgerycrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Storage/Crates/weapon.rsi/meta.json b/Resources/Textures/Constructible/Storage/Crates/weapon.rsi/meta.json index 23471e93f1..ed673b7aec 100644 --- a/Resources/Textures/Constructible/Storage/Crates/weapon.rsi/meta.json +++ b/Resources/Textures/Constructible/Storage/Crates/weapon.rsi/meta.json @@ -10,57 +10,45 @@ { "name": "weaponcrate", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "weaponcrate_door", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "weaponcrate_icon", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "welded", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "unlocked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "off", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { "name": "locked", "select": [], - "flags": {}, - "directions": 1 + "flags": {} }, { - "name": "sparking", - "select": [], - "flags": {}, - "directions": 1, - "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] + "name": "sparking", "delays": [[0.1,0.1,0.1,0.1,0.1,0.1]] }, { "name": "weaponcrate_open", "select": [], - "flags": {}, - "directions": 1 + "flags": {} } ] } diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_basic.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_basic.rsi/meta.json index 1a4a5f34c5..bc90377a89 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_basic.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_basic.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_cargo.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_cargo.rsi/meta.json index 42c2ef128d..6980f346b8 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_cargo.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_cargo.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.2, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.5, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.2, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.2, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.4, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_cargo_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_cargo_glass.rsi/meta.json index b25928b641..71ab1ed0ed 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_cargo_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_cargo_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.2, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.5, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.2, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.2, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.4, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_command.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_command.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_command.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_command.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_command_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_command_glass.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_command_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_command_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_engineering.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_engineering.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_engineering.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_engineering.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_engineering_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_engineering_glass.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_engineering_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_engineering_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_external.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_external.rsi/meta.json index c44c8554f4..42df7c08c2 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_external.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_external.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -26,12 +24,10 @@ ] }, { - "name": "closed_unlit", - "directions": 1 + "name": "closed_unlit" }, { "name": "closing", - "directions": 1, "delays": [ [ 0.2, @@ -46,7 +42,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.6, @@ -58,7 +53,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -69,7 +63,6 @@ }, { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -78,7 +71,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.2, @@ -93,7 +85,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -108,7 +99,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -117,7 +107,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.2, @@ -132,7 +121,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -144,7 +132,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -153,7 +140,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -166,7 +152,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -179,7 +164,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -193,7 +177,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -206,7 +189,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_freezer.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_freezer.rsi/meta.json index 1a4a5f34c5..bc90377a89 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_freezer.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_freezer.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_glass.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_maint.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_maint.rsi/meta.json index 9455a5f49a..5a3ec40d9b 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_maint.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_maint.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.2, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_medical.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_medical.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_medical.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_medical.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_medical_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_medical_glass.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_medical_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_medical_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_science.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_science.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_science.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_science.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_science_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_science_glass.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_science_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_science_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_security.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_security.rsi/meta.json index 7addd8ccb9..a8a97fc4c7 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_security.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_security.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/airlock_security_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/airlock_security_glass.rsi/meta.json index fd4cc29750..5587579b77 100644 --- a/Resources/Textures/Constructible/Structures/Doors/airlock_security_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/airlock_security_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -36,14 +33,12 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [] ] }, { "name": "closing", - "directions": 1, "delays": [ [ 0.1, @@ -59,7 +54,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.25, @@ -73,7 +67,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -84,7 +77,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -93,7 +85,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.1, @@ -109,7 +100,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +113,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -138,7 +127,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -147,7 +135,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -162,7 +149,6 @@ }, { "name": "spark", - "directions": 1, "delays": [ [ 0.1, @@ -176,7 +162,6 @@ }, { "name": "sparks_broken", - "directions": 1, "delays": [ [ 0.1, @@ -190,7 +175,6 @@ }, { "name": "sparks_damaged", - "directions": 1, "delays": [ [ 0.1, @@ -205,7 +189,6 @@ }, { "name": "sparks_open", - "directions": 1, "delays": [ [ 0.1, @@ -219,7 +202,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Doors/edge_door_hazard.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/edge_door_hazard.rsi/meta.json index 8ad6942753..961e7b979f 100644 --- a/Resources/Textures/Constructible/Structures/Doors/edge_door_hazard.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/edge_door_hazard.rsi/meta.json @@ -353,7 +353,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -368,16 +367,10 @@ }, { "name": "panel_open", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Constructible/Structures/Doors/firelock.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/firelock.rsi/meta.json index 08653842b9..325d9a4cb7 100644 --- a/Resources/Textures/Constructible/Structures/Doors/firelock.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/firelock.rsi/meta.json @@ -9,34 +9,18 @@ "states": [ { "name": "bolted", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "closed", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "closed_unlit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "closing", - "directions": 1, "delays": [ [ 0.2, @@ -50,7 +34,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -64,7 +47,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -75,7 +57,6 @@ }, { "name": "deny_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -86,61 +67,30 @@ }, { "name": "frame1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "frame2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "frame3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "frame4", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "locked", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "open", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "opening", - "directions": 1, "delays": [ [ 0.2, @@ -154,7 +104,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -168,7 +117,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -183,16 +131,10 @@ }, { "name": "panel_open", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -207,21 +149,11 @@ }, { "name": "welded", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "welded_open", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Doors/firelock_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Doors/firelock_glass.rsi/meta.json index b46814dfbf..b50d9cf17b 100644 --- a/Resources/Textures/Constructible/Structures/Doors/firelock_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Doors/firelock_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bolted", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "closed", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "closed_unlit", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "closing", - "directions": 1, "delays": [ [ 0.2, @@ -50,7 +46,6 @@ }, { "name": "closing_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -64,7 +59,6 @@ }, { "name": "deny", - "directions": 1, "delays": [ [ 0.1, @@ -75,7 +69,6 @@ }, { "name": "deny_unlit", - "directions": 1, "delays": [ [ 0.1, @@ -86,7 +79,6 @@ }, { "name": "locked", - "directions": 1, "delays": [ [ 1 @@ -95,7 +87,6 @@ }, { "name": "open", - "directions": 1, "delays": [ [ 1 @@ -104,7 +95,6 @@ }, { "name": "opening", - "directions": 1, "delays": [ [ 0.2, @@ -118,7 +108,6 @@ }, { "name": "opening_unlit", - "directions": 1, "delays": [ [ 0.2, @@ -132,7 +121,6 @@ }, { "name": "panel_closing", - "directions": 1, "delays": [ [ 0.1, @@ -147,7 +135,6 @@ }, { "name": "panel_open", - "directions": 1, "delays": [ [ 1 @@ -156,7 +143,6 @@ }, { "name": "panel_opening", - "directions": 1, "delays": [ [ 0.2, @@ -171,7 +157,6 @@ }, { "name": "welded", - "directions": 1, "delays": [ [ 1 @@ -180,7 +165,6 @@ }, { "name": "welded_open", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/bar.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/bar.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/bar.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/bar.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/carpet.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/carpet.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/carpet.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/carpet.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/debug.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/debug.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/debug.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/debug.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/frame.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/frame.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/frame.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/frame.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/generic.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/generic.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/generic.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/generic.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/glass.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/metal.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/metal.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/metal.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/metal.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/r_glass.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/r_glass.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/r_glass.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/r_glass.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/reinforced.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/reinforced.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/reinforced.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/reinforced.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/stone.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/stone.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/stone.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/stone.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Tables/wood.rsi/meta.json b/Resources/Textures/Constructible/Structures/Tables/wood.rsi/meta.json index f1072bd655..0ebc40b814 100644 --- a/Resources/Textures/Constructible/Structures/Tables/wood.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Tables/wood.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Walls/asteroid_rock.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/asteroid_rock.rsi/meta.json index 6ecf28f631..30a91f76dc 100644 --- a/Resources/Textures/Constructible/Structures/Walls/asteroid_rock.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/asteroid_rock.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "directions": 1, "delays": [[1.0]]}, {"name": "1", "directions": 1, "delays": [[1.0]]}, {"name": "2", "directions": 1, "delays": [[1.0]]}, {"name": "3", "directions": 1, "delays": [[1.0]]}, {"name": "4", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "delays": [[1.0]]}, {"name": "1", "delays": [[1.0]]}, {"name": "2", "delays": [[1.0]]}, {"name": "3", "delays": [[1.0]]}, {"name": "4", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/brick.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/brick.rsi/meta.json index 1a33360c7f..dfaa01c49e 100644 --- a/Resources/Textures/Constructible/Structures/Walls/brick.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/brick.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "brick0", "directions": 4}, {"name": "brick1", "directions": 4}, {"name": "brick2", "directions": 4}, {"name": "brick3", "directions": 4}, {"name": "brick4", "directions": 4}, {"name": "brick5", "directions": 4}, {"name": "brick6", "directions": 4}, {"name": "brick7", "directions": 4}, {"name": "full", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "brick0", "directions": 4}, {"name": "brick1", "directions": 4}, {"name": "brick2", "directions": 4}, {"name": "brick3", "directions": 4}, {"name": "brick4", "directions": 4}, {"name": "brick5", "directions": 4}, {"name": "brick6", "directions": 4}, {"name": "brick7", "directions": 4}, {"name": "full"}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/clock.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/clock.rsi/meta.json index 0aa0c078c2..2fe048c6b8 100644 --- a/Resources/Textures/Constructible/Structures/Walls/clock.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/clock.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "clock0", "directions": 4}, {"name": "clock1", "directions": 4}, {"name": "clock2", "directions": 4}, {"name": "clock3", "directions": 4}, {"name": "clock4", "directions": 4}, {"name": "clock5", "directions": 4}, {"name": "clock6", "directions": 4}, {"name": "clock7", "directions": 4}, {"name": "full", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "clock0", "directions": 4}, {"name": "clock1", "directions": 4}, {"name": "clock2", "directions": 4}, {"name": "clock3", "directions": 4}, {"name": "clock4", "directions": 4}, {"name": "clock5", "directions": 4}, {"name": "clock6", "directions": 4}, {"name": "clock7", "directions": 4}, {"name": "full"}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/clown.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/clown.rsi/meta.json index 17dfe65e71..3d2f08b718 100644 --- a/Resources/Textures/Constructible/Structures/Walls/clown.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/clown.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "clown0", "directions": 4}, {"name": "clown1", "directions": 4}, {"name": "clown2", "directions": 4}, {"name": "clown3", "directions": 4}, {"name": "clown4", "directions": 4}, {"name": "clown5", "directions": 4}, {"name": "clown6", "directions": 4}, {"name": "clown7", "directions": 4}, {"name": "full", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "clown0", "directions": 4}, {"name": "clown1", "directions": 4}, {"name": "clown2", "directions": 4}, {"name": "clown3", "directions": 4}, {"name": "clown4", "directions": 4}, {"name": "clown5", "directions": 4}, {"name": "clown6", "directions": 4}, {"name": "clown7", "directions": 4}, {"name": "full"}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/cult.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/cult.rsi/meta.json index 0c565d83ab..c289aa5878 100644 --- a/Resources/Textures/Constructible/Structures/Walls/cult.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/cult.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "cult0", "directions": 4}, {"name": "cult1", "directions": 4}, {"name": "cult2", "directions": 4}, {"name": "cult3", "directions": 4}, {"name": "cult4", "directions": 4}, {"name": "cult5", "directions": 4}, {"name": "cult6", "directions": 4}, {"name": "cult7", "directions": 4}, {"name": "full", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "cult0", "directions": 4}, {"name": "cult1", "directions": 4}, {"name": "cult2", "directions": 4}, {"name": "cult3", "directions": 4}, {"name": "cult4", "directions": 4}, {"name": "cult5", "directions": 4}, {"name": "cult6", "directions": 4}, {"name": "cult7", "directions": 4}, {"name": "full"}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/debug.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/debug.rsi/meta.json index 113fe1aa0e..12e75a1a22 100644 --- a/Resources/Textures/Constructible/Structures/Walls/debug.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/debug.rsi/meta.json @@ -8,58 +8,39 @@ }, "states": [ { - "name": "full", - "select": [], - "flags": {}, - "directions": 1 + "name": "full" }, { "name": "debug0", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug1", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug2", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug3", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug4", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug5", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug6", - "select": [], - "flags": {}, "directions": 4 }, { "name": "debug7", - "select": [], - "flags": {}, "directions": 4 } ] -} \ No newline at end of file +} diff --git a/Resources/Textures/Constructible/Structures/Walls/diamond.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/diamond.rsi/meta.json index a905a0404d..9f789a7698 100644 --- a/Resources/Textures/Constructible/Structures/Walls/diamond.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/diamond.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "diamond0", "directions": 4}, {"name": "diamond1", "directions": 4}, {"name": "diamond2", "directions": 4}, {"name": "diamond3", "directions": 4}, {"name": "diamond4", "directions": 4}, {"name": "diamond5", "directions": 4}, {"name": "diamond6", "directions": 4}, {"name": "diamond7", "directions": 4}, {"name": "full", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "diamond0", "directions": 4}, {"name": "diamond1", "directions": 4}, {"name": "diamond2", "directions": 4}, {"name": "diamond3", "directions": 4}, {"name": "diamond4", "directions": 4}, {"name": "diamond5", "directions": 4}, {"name": "diamond6", "directions": 4}, {"name": "diamond7", "directions": 4}, {"name": "full"}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/gold.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/gold.rsi/meta.json index 429e3abcdc..628826c7be 100644 --- a/Resources/Textures/Constructible/Structures/Walls/gold.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/gold.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "gold0", "directions": 4}, {"name": "gold1", "directions": 4}, {"name": "gold2", "directions": 4}, {"name": "gold3", "directions": 4}, {"name": "gold4", "directions": 4}, {"name": "gold5", "directions": 4}, {"name": "gold6", "directions": 4}, {"name": "gold7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "gold0", "directions": 4}, {"name": "gold1", "directions": 4}, {"name": "gold2", "directions": 4}, {"name": "gold3", "directions": 4}, {"name": "gold4", "directions": 4}, {"name": "gold5", "directions": 4}, {"name": "gold6", "directions": 4}, {"name": "gold7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/ice.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/ice.rsi/meta.json index 79f62a8372..6f68a86617 100644 --- a/Resources/Textures/Constructible/Structures/Walls/ice.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/ice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "ice0", "directions": 4}, {"name": "ice1", "directions": 4}, {"name": "ice2", "directions": 4}, {"name": "ice3", "directions": 4}, {"name": "ice4", "directions": 4}, {"name": "ice5", "directions": 4}, {"name": "ice6", "directions": 4}, {"name": "ice7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "ice0", "directions": 4}, {"name": "ice1", "directions": 4}, {"name": "ice2", "directions": 4}, {"name": "ice3", "directions": 4}, {"name": "ice4", "directions": 4}, {"name": "ice5", "directions": 4}, {"name": "ice6", "directions": 4}, {"name": "ice7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/low_wall.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/low_wall.rsi/meta.json index 13c05547ff..eed61418f1 100644 --- a/Resources/Textures/Constructible/Structures/Walls/low_wall.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/low_wall.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/blob/b503939d31b23c025ddb936b75e0a265d85154c5/icons/obj/structures/low_wall.dmi", "states": [{"name": "metal", "directions": 1, "delays": [[1.0]]}, {"name": "metal_0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_4", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_5", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_6", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_7", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_4", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_5", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_6", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_7", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris/blob/b503939d31b23c025ddb936b75e0a265d85154c5/icons/obj/structures/low_wall.dmi", "states": [{"name": "metal", "delays": [[1.0]]}, {"name": "metal_0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_4", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_5", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_6", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_7", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_3", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_4", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_5", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_6", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "metal_over_7", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/metal.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/metal.rsi/meta.json index 4b06198d67..04a5d9b667 100644 --- a/Resources/Textures/Constructible/Structures/Walls/metal.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/metal.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "metal0", "directions": 4}, {"name": "metal1", "directions": 4}, {"name": "metal2", "directions": 4}, {"name": "metal3", "directions": 4}, {"name": "metal4", "directions": 4}, {"name": "metal5", "directions": 4}, {"name": "metal6", "directions": 4}, {"name": "metal7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "metal0", "directions": 4}, {"name": "metal1", "directions": 4}, {"name": "metal2", "directions": 4}, {"name": "metal3", "directions": 4}, {"name": "metal4", "directions": 4}, {"name": "metal5", "directions": 4}, {"name": "metal6", "directions": 4}, {"name": "metal7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/plasma.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/plasma.rsi/meta.json index 805413eed4..07a1c81f0f 100644 --- a/Resources/Textures/Constructible/Structures/Walls/plasma.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/plasma.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "plasma0", "directions": 4}, {"name": "plasma1", "directions": 4}, {"name": "plasma2", "directions": 4}, {"name": "plasma3", "directions": 4}, {"name": "plasma4", "directions": 4}, {"name": "plasma5", "directions": 4}, {"name": "plasma6", "directions": 4}, {"name": "plasma7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "plasma0", "directions": 4}, {"name": "plasma1", "directions": 4}, {"name": "plasma2", "directions": 4}, {"name": "plasma3", "directions": 4}, {"name": "plasma4", "directions": 4}, {"name": "plasma5", "directions": 4}, {"name": "plasma6", "directions": 4}, {"name": "plasma7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/plastic.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/plastic.rsi/meta.json index 9825703a45..3d2b20649e 100644 --- a/Resources/Textures/Constructible/Structures/Walls/plastic.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/plastic.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "plastic0", "directions": 4}, {"name": "plastic1", "directions": 4}, {"name": "plastic2", "directions": 4}, {"name": "plastic3", "directions": 4}, {"name": "plastic4", "directions": 4}, {"name": "plastic5", "directions": 4}, {"name": "plastic6", "directions": 4}, {"name": "plastic7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "plastic0", "directions": 4}, {"name": "plastic1", "directions": 4}, {"name": "plastic2", "directions": 4}, {"name": "plastic3", "directions": 4}, {"name": "plastic4", "directions": 4}, {"name": "plastic5", "directions": 4}, {"name": "plastic6", "directions": 4}, {"name": "plastic7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/riveted.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/riveted.rsi/meta.json index 9c917dfecb..c2d0e29163 100644 --- a/Resources/Textures/Constructible/Structures/Walls/riveted.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/riveted.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "riveted0", "directions": 4}, {"name": "riveted1", "directions": 4}, {"name": "riveted2", "directions": 4}, {"name": "riveted3", "directions": 4}, {"name": "riveted4", "directions": 4}, {"name": "riveted5", "directions": 4}, {"name": "riveted6", "directions": 4}, {"name": "riveted7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "riveted0", "directions": 4}, {"name": "riveted1", "directions": 4}, {"name": "riveted2", "directions": 4}, {"name": "riveted3", "directions": 4}, {"name": "riveted4", "directions": 4}, {"name": "riveted5", "directions": 4}, {"name": "riveted6", "directions": 4}, {"name": "riveted7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/sandstone.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/sandstone.rsi/meta.json index 8c0ac19002..d411460174 100644 --- a/Resources/Textures/Constructible/Structures/Walls/sandstone.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/sandstone.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "sandstone0", "directions": 4}, {"name": "sandstone1", "directions": 4}, {"name": "sandstone2", "directions": 4}, {"name": "sandstone3", "directions": 4}, {"name": "sandstone4", "directions": 4}, {"name": "sandstone5", "directions": 4}, {"name": "sandstone6", "directions": 4}, {"name": "sandstone7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "sandstone0", "directions": 4}, {"name": "sandstone1", "directions": 4}, {"name": "sandstone2", "directions": 4}, {"name": "sandstone3", "directions": 4}, {"name": "sandstone4", "directions": 4}, {"name": "sandstone5", "directions": 4}, {"name": "sandstone6", "directions": 4}, {"name": "sandstone7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/silver.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/silver.rsi/meta.json index b0c0c4f600..d034a4469b 100644 --- a/Resources/Textures/Constructible/Structures/Walls/silver.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/silver.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "silver0", "directions": 4}, {"name": "silver1", "directions": 4}, {"name": "silver2", "directions": 4}, {"name": "silver3", "directions": 4}, {"name": "silver4", "directions": 4}, {"name": "silver5", "directions": 4}, {"name": "silver6", "directions": 4}, {"name": "silver7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "silver0", "directions": 4}, {"name": "silver1", "directions": 4}, {"name": "silver2", "directions": 4}, {"name": "silver3", "directions": 4}, {"name": "silver4", "directions": 4}, {"name": "silver5", "directions": 4}, {"name": "silver6", "directions": 4}, {"name": "silver7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/solid.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/solid.rsi/meta.json index c1c2f1c0d9..af950638ae 100644 --- a/Resources/Textures/Constructible/Structures/Walls/solid.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/solid.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "full", - "directions": 1 + "name": "full" }, { "name": "solid0", @@ -45,7 +44,6 @@ }, { "name": "reinf_construct-0", - "directions": 1, "delays": [ [ 1 @@ -54,7 +52,6 @@ }, { "name": "reinf_construct-1", - "directions": 1, "delays": [ [ 1 @@ -63,7 +60,6 @@ }, { "name": "reinf_construct-2", - "directions": 1, "delays": [ [ 1 @@ -72,7 +68,6 @@ }, { "name": "reinf_construct-3", - "directions": 1, "delays": [ [ 1 @@ -81,7 +76,6 @@ }, { "name": "reinf_construct-4", - "directions": 1, "delays": [ [ 1 @@ -90,7 +84,6 @@ }, { "name": "reinf_construct-5", - "directions": 1, "delays": [ [ 1 @@ -99,7 +92,6 @@ }, { "name": "reinf_cult", - "directions": 1, "delays": [ [ 1 @@ -108,7 +100,6 @@ }, { "name": "reinf_metal", - "directions": 1, "delays": [ [ 1 @@ -117,7 +108,6 @@ }, { "name": "reinf_over", - "directions": 1, "delays": [ [ 1 @@ -270,7 +260,6 @@ }, { "name": "rgeneric", - "directions": 1, "delays": [ [ 1 @@ -279,7 +268,6 @@ }, { "name": "wall_girder", - "directions": 1, "delays": [ [ 1 @@ -288,7 +276,6 @@ }, { "name": "reinforced_wall_girder", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Walls/uranium.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/uranium.rsi/meta.json index 05e28fa50f..963867ce4b 100644 --- a/Resources/Textures/Constructible/Structures/Walls/uranium.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/uranium.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "uranium0", "directions": 4}, {"name": "uranium1", "directions": 4}, {"name": "uranium2", "directions": 4}, {"name": "uranium3", "directions": 4}, {"name": "uranium4", "directions": 4}, {"name": "uranium5", "directions": 4}, {"name": "uranium6", "directions": 4}, {"name": "uranium7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "uranium0", "directions": 4}, {"name": "uranium1", "directions": 4}, {"name": "uranium2", "directions": 4}, {"name": "uranium3", "directions": 4}, {"name": "uranium4", "directions": 4}, {"name": "uranium5", "directions": 4}, {"name": "uranium6", "directions": 4}, {"name": "uranium7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Walls/wood.rsi/meta.json b/Resources/Textures/Constructible/Structures/Walls/wood.rsi/meta.json index 2041d1e90d..e7fc90e9cf 100644 --- a/Resources/Textures/Constructible/Structures/Walls/wood.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Walls/wood.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full", "directions": 1}, {"name": "wood0", "directions": 4}, {"name": "wood1", "directions": 4}, {"name": "wood2", "directions": 4}, {"name": "wood3", "directions": 4}, {"name": "wood4", "directions": 4}, {"name": "wood5", "directions": 4}, {"name": "wood6", "directions": 4}, {"name": "wood7", "directions": 4}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/vgstation-coders/vgstation13/raw/99cc2ab62d65a3a7b554dc7b21ff5f57c835f973/icons/turf/walls.dmi", "states": [{"name": "full"}, {"name": "wood0", "directions": 4}, {"name": "wood1", "directions": 4}, {"name": "wood2", "directions": 4}, {"name": "wood3", "directions": 4}, {"name": "wood4", "directions": 4}, {"name": "wood5", "directions": 4}, {"name": "wood6", "directions": 4}, {"name": "wood7", "directions": 4}]} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Structures/Windows/phoron_window.rsi/meta.json b/Resources/Textures/Constructible/Structures/Windows/phoron_window.rsi/meta.json index 61f56e509f..128388e0be 100644 --- a/Resources/Textures/Constructible/Structures/Windows/phoron_window.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Windows/phoron_window.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Windows/reinforced_window.rsi/meta.json b/Resources/Textures/Constructible/Structures/Windows/reinforced_window.rsi/meta.json index d0b59b807f..e6fb226588 100644 --- a/Resources/Textures/Constructible/Structures/Windows/reinforced_window.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Windows/reinforced_window.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/Windows/window.rsi/meta.json b/Resources/Textures/Constructible/Structures/Windows/window.rsi/meta.json index b3ba878755..1ad9449fc8 100644 --- a/Resources/Textures/Constructible/Structures/Windows/window.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/Windows/window.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "full", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Constructible/Structures/closet.rsi/meta.json b/Resources/Textures/Constructible/Structures/closet.rsi/meta.json index 0b2db0611b..8119fda5dd 100644 --- a/Resources/Textures/Constructible/Structures/closet.rsi/meta.json +++ b/Resources/Textures/Constructible/Structures/closet.rsi/meta.json @@ -6,208 +6,157 @@ }, "states": [ { - "name": "abductor", - "directions": 1 + "name": "abductor" }, { - "name": "abductor_door", - "directions": 1 + "name": "abductor_door" }, { - "name": "abductor_open", - "directions": 1 + "name": "abductor_open" }, { - "name": "agentbox", - "directions": 1 + "name": "agentbox" }, { - "name": "alien", - "directions": 1 + "name": "alien" }, { - "name": "alien_door", - "directions": 1 + "name": "alien_door" }, { - "name": "alien_open", - "directions": 1 + "name": "alien_open" }, { - "name": "armory", - "directions": 1 + "name": "armory" }, { - "name": "armory_door", - "directions": 1 + "name": "armory_door" }, { - "name": "armory_open", - "directions": 1 + "name": "armory_open" }, { - "name": "atmos", - "directions": 1 + "name": "atmos" }, { - "name": "atmos_door", - "directions": 1 + "name": "atmos_door" }, { - "name": "atmos_open", - "directions": 1 + "name": "atmos_open" }, { - "name": "atmos_wardrobe_door", - "directions": 1 + "name": "atmos_wardrobe_door" }, { - "name": "bio", - "directions": 1 + "name": "bio" }, { - "name": "bio_door", - "directions": 1 + "name": "bio_door" }, { - "name": "bio_jan", - "directions": 1 + "name": "bio_jan" }, { - "name": "bio_jan_door", - "directions": 1 + "name": "bio_jan_door" }, { - "name": "bio_jan_open", - "directions": 1 + "name": "bio_jan_open" }, { - "name": "bio_open", - "directions": 1 + "name": "bio_open" }, { - "name": "bio_sec", - "directions": 1 + "name": "bio_sec" }, { - "name": "bio_sec_door", - "directions": 1 + "name": "bio_sec_door" }, { - "name": "bio_sec_open", - "directions": 1 + "name": "bio_sec_open" }, { - "name": "bio_viro", - "directions": 1 + "name": "bio_viro" }, { - "name": "bio_viro_door", - "directions": 1 + "name": "bio_viro_door" }, { - "name": "bio_viro_open", - "directions": 1 + "name": "bio_viro_open" }, { - "name": "black_door", - "directions": 1 + "name": "black_door" }, { - "name": "blue_door", - "directions": 1 + "name": "blue_door" }, { - "name": "bomb", - "directions": 1 + "name": "bomb" }, { - "name": "bomb_door", - "directions": 1 + "name": "bomb_door" }, { - "name": "bomb_open", - "directions": 1 + "name": "bomb_open" }, { - "name": "cabinet", - "directions": 1 + "name": "cabinet" }, { - "name": "cabinet_door", - "directions": 1 + "name": "cabinet_door" }, { - "name": "cabinet_open", - "directions": 1 + "name": "cabinet_open" }, { - "name": "cap", - "directions": 1 + "name": "cap" }, { - "name": "cap_door", - "directions": 1 + "name": "cap_door" }, { - "name": "cap_open", - "directions": 1 + "name": "cap_open" }, { - "name": "cardboard", - "directions": 1 + "name": "cardboard" }, { - "name": "cardboard_open", - "directions": 1 + "name": "cardboard_open" }, { - "name": "cardboard_special", - "directions": 1 + "name": "cardboard_special" }, { - "name": "cargo", - "directions": 1 + "name": "cargo" }, { - "name": "cargo_door", - "directions": 1 + "name": "cargo_door" }, { - "name": "cargo_open", - "directions": 1 + "name": "cargo_open" }, { - "name": "ce", - "directions": 1 + "name": "ce" }, { - "name": "ce_door", - "directions": 1 + "name": "ce_door" }, { - "name": "ce_open", - "directions": 1 + "name": "ce_open" }, { - "name": "chemical_door", - "directions": 1 + "name": "chemical_door" }, { - "name": "cmo", - "directions": 1 + "name": "cmo" }, { - "name": "cmo_door", - "directions": 1 + "name": "cmo_door" }, { - "name": "cmo_open", - "directions": 1 + "name": "cmo_open" }, { "name": "cursed", - "directions": 1, "delays": [ [ 0.1, @@ -222,7 +171,6 @@ }, { "name": "cursed_door", - "directions": 1, "delays": [ [ 0.1, @@ -236,12 +184,10 @@ ] }, { - "name": "cursed_open", - "directions": 1 + "name": "cursed_open" }, { "name": "cursed_whole", - "directions": 1, "delays": [ [ 0.1, @@ -256,7 +202,6 @@ }, { "name": "decursed", - "directions": 1, "delays": [ [ 0.1, @@ -271,7 +216,6 @@ }, { "name": "decursed_door", - "directions": 1, "delays": [ [ 0.1, @@ -285,300 +229,226 @@ ] }, { - "name": "decursed_open", - "directions": 1 + "name": "decursed_open" }, { - "name": "ecase", - "directions": 1 + "name": "ecase" }, { - "name": "ecase_door", - "directions": 1 + "name": "ecase_door" }, { - "name": "ecase_open", - "directions": 1 + "name": "ecase_open" }, { - "name": "egun", - "directions": 1 + "name": "egun" }, { - "name": "emergency", - "directions": 1 + "name": "emergency" }, { - "name": "emergency_door", - "directions": 1 + "name": "emergency_door" }, { - "name": "emergency_open", - "directions": 1 + "name": "emergency_open" }, { - "name": "eng", - "directions": 1 + "name": "eng" }, { - "name": "eng_elec_door", - "directions": 1 + "name": "eng_elec_door" }, { - "name": "eng_open", - "directions": 1 + "name": "eng_open" }, { - "name": "eng_rad_door", - "directions": 1 + "name": "eng_rad_door" }, { - "name": "eng_secure", - "directions": 1 + "name": "eng_secure" }, { - "name": "eng_secure_door", - "directions": 1 + "name": "eng_secure_door" }, { - "name": "eng_secure_open", - "directions": 1 + "name": "eng_secure_open" }, { - "name": "eng_tool_door", - "directions": 1 + "name": "eng_tool_door" }, { - "name": "eng_weld_door", - "directions": 1 + "name": "eng_weld_door" }, { - "name": "fire", - "directions": 1 + "name": "fire" }, { - "name": "fire_door", - "directions": 1 + "name": "fire_door" }, { - "name": "fire_open", - "directions": 1 + "name": "fire_open" }, { - "name": "freezer", - "directions": 1 + "name": "freezer" }, { - "name": "freezer_door", - "directions": 1 + "name": "freezer_door" }, { - "name": "freezer_open", - "directions": 1 + "name": "freezer_open" }, { - "name": "generic", - "directions": 1 + "name": "generic" }, { - "name": "generic_door", - "directions": 1 + "name": "generic_door" }, { - "name": "generic_open", - "directions": 1 + "name": "generic_open" }, { - "name": "green_door", - "directions": 1 + "name": "green_door" }, { - "name": "grey_door", - "directions": 1 + "name": "grey_door" }, { - "name": "hop", - "directions": 1 + "name": "hop" }, { - "name": "hop_door", - "directions": 1 + "name": "hop_door" }, { - "name": "hop_open", - "directions": 1 + "name": "hop_open" }, { - "name": "hos", - "directions": 1 + "name": "hos" }, { - "name": "hos_door", - "directions": 1 + "name": "hos_door" }, { - "name": "hos_open", - "directions": 1 + "name": "hos_open" }, { - "name": "hydro", - "directions": 1 + "name": "hydro" }, { - "name": "hydro_door", - "directions": 1 + "name": "hydro_door" }, { - "name": "hydro_open", - "directions": 1 + "name": "hydro_open" }, { - "name": "locked", - "directions": 1 + "name": "locked" }, { - "name": "med", - "directions": 1 + "name": "med" }, { - "name": "med_door", - "directions": 1 + "name": "med_door" }, { - "name": "med_open", - "directions": 1 + "name": "med_open" }, { - "name": "med_secure", - "directions": 1 + "name": "med_secure" }, { - "name": "med_secure_door", - "directions": 1 + "name": "med_secure_door" }, { - "name": "med_secure_open", - "directions": 1 + "name": "med_secure_open" }, { - "name": "metalbox", - "directions": 1 + "name": "metalbox" }, { - "name": "metalbox_open", - "directions": 1 + "name": "metalbox_open" }, { - "name": "mining", - "directions": 1 + "name": "mining" }, { - "name": "mining_door", - "directions": 1 + "name": "mining_door" }, { - "name": "mining_open", - "directions": 1 + "name": "mining_open" }, { - "name": "mixed_door", - "directions": 1 + "name": "mixed_door" }, { - "name": "oldcloset", - "directions": 1 + "name": "oldcloset" }, { - "name": "orange_door", - "directions": 1 + "name": "orange_door" }, { - "name": "pink_door", - "directions": 1 + "name": "pink_door" }, { - "name": "qm", - "directions": 1 + "name": "qm" }, { - "name": "qm_door", - "directions": 1 + "name": "qm_door" }, { - "name": "qm_open", - "directions": 1 + "name": "qm_open" }, { - "name": "rd", - "directions": 1 + "name": "rd" }, { - "name": "rd_door", - "directions": 1 + "name": "rd_door" }, { - "name": "rd_open", - "directions": 1 + "name": "rd_open" }, { - "name": "red_door", - "directions": 1 + "name": "red_door" }, { - "name": "science", - "directions": 1 + "name": "science" }, { - "name": "science_door", - "directions": 1 + "name": "science_door" }, { - "name": "science_open", - "directions": 1 + "name": "science_open" }, { - "name": "sec", - "directions": 1 + "name": "sec" }, { - "name": "sec_door", - "directions": 1 + "name": "sec_door" }, { - "name": "sec_open", - "directions": 1 + "name": "sec_open" }, { - "name": "secure", - "directions": 1 + "name": "secure" }, { - "name": "secure_door", - "directions": 1 + "name": "secure_door" }, { - "name": "secure_open", - "directions": 1 + "name": "secure_open" }, { - "name": "shotgun", - "directions": 1 + "name": "shotgun" }, { - "name": "shotguncase", - "directions": 1 + "name": "shotguncase" }, { - "name": "shotguncase_door", - "directions": 1 + "name": "shotguncase_door" }, { - "name": "shotguncase_open", - "directions": 1 + "name": "shotguncase_open" }, { "name": "sparking", - "directions": 1, "delays": [ [ 0.1, @@ -589,56 +459,43 @@ ] }, { - "name": "syndicate", - "directions": 1 + "name": "syndicate" }, { - "name": "syndicate_door", - "directions": 1 + "name": "syndicate_door" }, { - "name": "syndicate_open", - "directions": 1 + "name": "syndicate_open" }, { - "name": "tac", - "directions": 1 + "name": "tac" }, { - "name": "tac_door", - "directions": 1 + "name": "tac_door" }, { - "name": "tac_open", - "directions": 1 + "name": "tac_open" }, { - "name": "unlocked", - "directions": 1 + "name": "unlocked" }, { - "name": "warden", - "directions": 1 + "name": "warden" }, { - "name": "warden_door", - "directions": 1 + "name": "warden_door" }, { - "name": "warden_open", - "directions": 1 + "name": "warden_open" }, { - "name": "welded", - "directions": 1 + "name": "welded" }, { - "name": "white_door", - "directions": 1 + "name": "white_door" }, { - "name": "yellow_door", - "directions": 1 + "name": "yellow_door" } ] } diff --git a/Resources/Textures/Constructible/Tiles/catwalk.rsi/meta.json b/Resources/Textures/Constructible/Tiles/catwalk.rsi/meta.json index 63031ed3d1..c5e85cfe03 100644 --- a/Resources/Textures/Constructible/Tiles/catwalk.rsi/meta.json +++ b/Resources/Textures/Constructible/Tiles/catwalk.rsi/meta.json @@ -40,8 +40,7 @@ "directions": 4 }, { - "name": "catwalk_preview", - "directions": 1 + "name": "catwalk_preview" } ] } diff --git a/Resources/Textures/Constructible/Watercloset/toilet.rsi/closed_toilet_seat_down.png b/Resources/Textures/Constructible/Watercloset/toilet.rsi/closed_toilet_seat_down.png new file mode 100644 index 0000000000..af9b04af2b Binary files /dev/null and b/Resources/Textures/Constructible/Watercloset/toilet.rsi/closed_toilet_seat_down.png differ diff --git a/Resources/Textures/Constructible/Watercloset/toilet.rsi/closed_toilet_seat_up.png b/Resources/Textures/Constructible/Watercloset/toilet.rsi/closed_toilet_seat_up.png new file mode 100644 index 0000000000..0a3a4db1b1 Binary files /dev/null and b/Resources/Textures/Constructible/Watercloset/toilet.rsi/closed_toilet_seat_up.png differ diff --git a/Resources/Textures/Constructible/Watercloset/toilet.rsi/meta.json b/Resources/Textures/Constructible/Watercloset/toilet.rsi/meta.json new file mode 100644 index 0000000000..0761994277 --- /dev/null +++ b/Resources/Textures/Constructible/Watercloset/toilet.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/2cb66bae0e253e13d37f8939e0983bb94fee243e", + "states": [ + { + "name": "closed_toilet_seat_down", + "directions": 4 + }, + { + "name": "closed_toilet_seat_up", + "directions": 4 + }, + { + "name": "open_toilet_seat_down", + "directions": 4 + }, + { + "name": "open_toilet_seat_up", + "directions": 4 + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Constructible/Watercloset/toilet.rsi/open_toilet_seat_down.png b/Resources/Textures/Constructible/Watercloset/toilet.rsi/open_toilet_seat_down.png new file mode 100644 index 0000000000..a0844c8793 Binary files /dev/null and b/Resources/Textures/Constructible/Watercloset/toilet.rsi/open_toilet_seat_down.png differ diff --git a/Resources/Textures/Constructible/Watercloset/toilet.rsi/open_toilet_seat_up.png b/Resources/Textures/Constructible/Watercloset/toilet.rsi/open_toilet_seat_up.png new file mode 100644 index 0000000000..bcbe594c2b Binary files /dev/null and b/Resources/Textures/Constructible/Watercloset/toilet.rsi/open_toilet_seat_up.png differ diff --git a/Resources/Textures/Effects/arcs.rsi/meta.json b/Resources/Textures/Effects/arcs.rsi/meta.json index 0d9524fb4d..a2de2a5893 100644 --- a/Resources/Textures/Effects/arcs.rsi/meta.json +++ b/Resources/Textures/Effects/arcs.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bite", - "directions": 1, "delays": [ [ 0.1, @@ -21,7 +20,6 @@ }, { "name": "claw", - "directions": 1, "delays": [ [ 0.1, @@ -33,7 +31,6 @@ }, { "name": "disarm", - "directions": 1, "delays": [ [ 0.1, @@ -44,7 +41,6 @@ }, { "name": "kick", - "directions": 1, "delays": [ [ 0.1, @@ -55,7 +51,6 @@ }, { "name": "punch", - "directions": 1, "delays": [ [ 0.1, @@ -68,7 +63,6 @@ }, { "name": "smash", - "directions": 1, "delays": [ [ 0.1, @@ -78,16 +72,13 @@ ] }, { - "name": "spear", - "directions": 1 + "name": "spear" }, { - "name": "slash", - "directions": 1 + "name": "slash" }, { - "name": "fist", - "directions": 1 + "name": "fist" } ] } diff --git a/Resources/Textures/Effects/atmospherics.rsi/meta.json b/Resources/Textures/Effects/atmospherics.rsi/meta.json index a03db15269..9a88a3dfef 100644 --- a/Resources/Textures/Effects/atmospherics.rsi/meta.json +++ b/Resources/Textures/Effects/atmospherics.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 04e43d8c1d5097fdb697addd4395fb849dd341bd", "states": [{"name": "chem_gas_old", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "freon", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.2]]}, {"name": "freon_old", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "fusion_gas", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "miasma", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.2]]}, {"name": "miasma_old", "directions": 1, "delays": [[0.22999999999999998, 0.22999999999999998, 0.22999999999999998, 0.22999999999999998, 0.22999999999999998, 0.22999999999999998]]}, {"name": "nitrous_oxide", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "nitrous_oxide_old", "directions": 1, "delays": [[0.2, 0.2, 0.2]]}, {"name": "nitryl", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "nitryl_old", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "phoron", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "phoron_old", "directions": 1, "delays": [[0.2, 0.2, 0.2]]}, {"name": "tritium", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "tritium_old", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "water_vapor", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.2]]}, {"name": "water_vapor_old", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 04e43d8c1d5097fdb697addd4395fb849dd341bd", "states": [{"name": "chem_gas_old", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "freon", "delays": [[0.2, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.2]]}, {"name": "freon_old", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "fusion_gas", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "miasma", "delays": [[0.2, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.2]]}, {"name": "miasma_old", "delays": [[0.22999999999999998, 0.22999999999999998, 0.22999999999999998, 0.22999999999999998, 0.22999999999999998, 0.22999999999999998]]}, {"name": "nitrous_oxide", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "nitrous_oxide_old", "delays": [[0.2, 0.2, 0.2]]}, {"name": "nitryl", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "nitryl_old", "delays": [[0.1, 0.1, 0.1, 0.1]]}, {"name": "phoron", "delays": [[0.1, 0.1, 0.1]]}, {"name": "phoron_old", "delays": [[0.2, 0.2, 0.2]]}, {"name": "tritium", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "tritium_old", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "water_vapor", "delays": [[0.2, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.2]]}, {"name": "water_vapor_old", "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}]} diff --git a/Resources/Textures/Effects/chempuff.rsi/meta.json b/Resources/Textures/Effects/chempuff.rsi/meta.json index c1dde9153e..71c90d7be6 100644 --- a/Resources/Textures/Effects/chempuff.rsi/meta.json +++ b/Resources/Textures/Effects/chempuff.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "chempuff", - "directions": 1, "delays": [ [ 0.05, diff --git a/Resources/Textures/Effects/creampie.rsi/meta.json b/Resources/Textures/Effects/creampie.rsi/meta.json index 4ae015b294..7e0450a7fc 100644 --- a/Resources/Textures/Effects/creampie.rsi/meta.json +++ b/Resources/Textures/Effects/creampie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0", "states": [{"name": "creampie_ai", "directions": 1, "delays": [[1.0]]}, {"name": "creampie_corgi", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_drone", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_engborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_hardsuit", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_helmet", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_human", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_janborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_lizard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_medborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_monkey", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_secborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_standborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_xeno_crit", "directions": 1, "delays": [[1.0]]}, {"name": "creampie_xeno_dead", "directions": 1, "delays": [[1.0]]}, {"name": "creampie_xeno_sleep", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_xenomorph", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 0d9c9a8233dfc3fc55edc538955a761a6328bee0", "states": [{"name": "creampie_ai", "delays": [[1.0]]}, {"name": "creampie_corgi", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_drone", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_engborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_hardsuit", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_helmet", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_human", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_janborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_lizard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_medborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_monkey", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_secborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_standborg", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_xeno_crit", "delays": [[1.0]]}, {"name": "creampie_xeno_dead", "delays": [[1.0]]}, {"name": "creampie_xeno_sleep", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "creampie_xenomorph", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Effects/explosion.rsi/meta.json b/Resources/Textures/Effects/explosion.rsi/meta.json index c70a3e60f8..1c3b45301a 100644 --- a/Resources/Textures/Effects/explosion.rsi/meta.json +++ b/Resources/Textures/Effects/explosion.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "explosionfast", - "directions": 1, "delays": [ [ 0.06, diff --git a/Resources/Textures/Effects/extinguisherSpray.rsi/meta.json b/Resources/Textures/Effects/extinguisherSpray.rsi/meta.json index 4a6ba19aca..f7659b9b84 100644 --- a/Resources/Textures/Effects/extinguisherSpray.rsi/meta.json +++ b/Resources/Textures/Effects/extinguisherSpray.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "extinguish", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Effects/fire.rsi/meta.json b/Resources/Textures/Effects/fire.rsi/meta.json index 016582890e..5472c205cf 100644 --- a/Resources/Textures/Effects/fire.rsi/meta.json +++ b/Resources/Textures/Effects/fire.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 04e43d8c1d5097fdb697addd4395fb849dd341bd", "states": [{"name": "1", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.1, 0.1, 0.1]]}, {"name": "2", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "3", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "fire", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "overcharged", "directions": 1, "delays": [[0.1, 0.1, 5.0, 0.1, 0.1, 0.1, 2.0, 0.1, 4.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/tgstation/tgstation at 04e43d8c1d5097fdb697addd4395fb849dd341bd", "states": [{"name": "1", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.1, 0.1, 0.1]]}, {"name": "2", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "3", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "fire", "delays": [[0.1, 0.1, 0.1]]}, {"name": "overcharged", "delays": [[0.1, 0.1, 5.0, 0.1, 0.1, 0.1, 2.0, 0.1, 4.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Effects/portal.rsi/meta.json b/Resources/Textures/Effects/portal.rsi/meta.json index 724c9230f8..c3d19f1ce6 100644 --- a/Resources/Textures/Effects/portal.rsi/meta.json +++ b/Resources/Textures/Effects/portal.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "portal-pending", - "directions": 1, "delays": [[ 0.1, 0.1, @@ -29,7 +28,6 @@ }, { "name": "portal-unconnected", - "directions": 1, "delays": [[ 0.1, 0.1, diff --git a/Resources/Textures/Fluids/gibblet.rsi/meta.json b/Resources/Textures/Fluids/gibblet.rsi/meta.json index 9e665591fa..e6827234c5 100644 --- a/Resources/Textures/Fluids/gibblet.rsi/meta.json +++ b/Resources/Textures/Fluids/gibblet.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aff0d780742ca3902d8b05f854c212c8cda32c4f/icons/effects/blood.dmi", "states": [ { - "name": "gibblet-0", - "directions": 1 + "name": "gibblet-0" }, { - "name": "gibblet-1", - "directions": 1 + "name": "gibblet-1" }, { - "name": "gibblet-2", - "directions": 1 + "name": "gibblet-2" }, { - "name": "gibblet-3", - "directions": 1 + "name": "gibblet-3" }, { - "name": "gibblet-4", - "directions": 1 + "name": "gibblet-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Fluids/smear.rsi/meta.json b/Resources/Textures/Fluids/smear.rsi/meta.json index 3450d9e4de..ebccb6d459 100644 --- a/Resources/Textures/Fluids/smear.rsi/meta.json +++ b/Resources/Textures/Fluids/smear.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aff0d780742ca3902d8b05f854c212c8cda32c4f/icons/effects/blood.dmi", "states": [ { - "name": "smear-0", - "directions": 1 + "name": "smear-0" }, { - "name": "smear-1", - "directions": 1 + "name": "smear-1" }, { - "name": "smear-2", - "directions": 1 + "name": "smear-2" }, { - "name": "smear-3", - "directions": 1 + "name": "smear-3" }, { - "name": "smear-4", - "directions": 1 + "name": "smear-4" }, { - "name": "smear-5", - "directions": 1 + "name": "smear-5" }, { - "name": "smear-6", - "directions": 1 + "name": "smear-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Fluids/splatter.rsi/meta.json b/Resources/Textures/Fluids/splatter.rsi/meta.json index 5fcce5c890..b224dd00a5 100644 --- a/Resources/Textures/Fluids/splatter.rsi/meta.json +++ b/Resources/Textures/Fluids/splatter.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aff0d780742ca3902d8b05f854c212c8cda32c4f/icons/effects/blood.dmi", "states": [ { - "name": "splatter-0", - "directions": 1 + "name": "splatter-0" }, { - "name": "splatter-1", - "directions": 1 + "name": "splatter-1" }, { - "name": "splatter-2", - "directions": 1 + "name": "splatter-2" }, { - "name": "splatter-3", - "directions": 1 + "name": "splatter-3" }, { - "name": "splatter-4", - "directions": 1 + "name": "splatter-4" }, { - "name": "splatter-5", - "directions": 1 + "name": "splatter-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Fluids/vomit.rsi/meta.json b/Resources/Textures/Fluids/vomit.rsi/meta.json index f4fd5064d3..f0a3ffb3b5 100644 --- a/Resources/Textures/Fluids/vomit.rsi/meta.json +++ b/Resources/Textures/Fluids/vomit.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aff0d780742ca3902d8b05f854c212c8cda32c4f/icons/effects/blood.dmi", "states": [ { - "name": "vomit-0", - "directions": 1 + "name": "vomit-0" }, { - "name": "vomit-1", - "directions": 1 + "name": "vomit-1" }, { - "name": "vomit-2", - "directions": 1 + "name": "vomit-2" }, { - "name": "vomit-3", - "directions": 1 + "name": "vomit-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Fluids/vomit_toxin.rsi/meta.json b/Resources/Textures/Fluids/vomit_toxin.rsi/meta.json index 2a60f9e2db..825ecc9876 100644 --- a/Resources/Textures/Fluids/vomit_toxin.rsi/meta.json +++ b/Resources/Textures/Fluids/vomit_toxin.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aff0d780742ca3902d8b05f854c212c8cda32c4f/icons/effects/blood.dmi", "states": [ { - "name": "vomit_toxin-0", - "directions": 1 + "name": "vomit_toxin-0" }, { - "name": "vomit_toxin-1", - "directions": 1 + "name": "vomit_toxin-1" }, { - "name": "vomit_toxin-2", - "directions": 1 + "name": "vomit_toxin-2" }, { - "name": "vomit_toxin-3", - "directions": 1 + "name": "vomit_toxin-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Fluids/writing.rsi/meta.json b/Resources/Textures/Fluids/writing.rsi/meta.json index 0d24adffa6..5d55444729 100644 --- a/Resources/Textures/Fluids/writing.rsi/meta.json +++ b/Resources/Textures/Fluids/writing.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aff0d780742ca3902d8b05f854c212c8cda32c4f/icons/effects/blood.dmi", "states": [ { - "name": "writing-0", - "directions": 1 + "name": "writing-0" }, { - "name": "writing-1", - "directions": 1 + "name": "writing-1" }, { - "name": "writing-2", - "directions": 1 + "name": "writing-2" }, { - "name": "writing-3", - "directions": 1 + "name": "writing-3" }, { - "name": "writing-4", - "directions": 1 + "name": "writing-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Interface/Actions/disarm.png b/Resources/Textures/Interface/Actions/disarm.png new file mode 100644 index 0000000000..f1efa1df68 Binary files /dev/null and b/Resources/Textures/Interface/Actions/disarm.png differ diff --git a/Resources/Textures/Interface/Actions/meta.json b/Resources/Textures/Interface/Actions/meta.json index 6ccd7cf002..33e10333b1 100644 --- a/Resources/Textures/Interface/Actions/meta.json +++ b/Resources/Textures/Interface/Actions/meta.json @@ -8,16 +8,16 @@ "copyright": "Taken from https://github.com/tgstation/tgstation/commit/3d049e69fe71a0be2133005e65ea469135d648c8", "states": [ { - "name": "internal0", - "directions": 1 + "name": "internal0" }, { - "name": "internal1", - "directions": 1 + "name": "internal1" }, { - "name": "scream", - "directions": 1 + "name": "scream" + }, + { + "name": "disarm" } ] } diff --git a/Resources/Textures/Interface/Alerts/Pressure/meta.json b/Resources/Textures/Interface/Alerts/Pressure/meta.json index 493417f7bf..6c4b44e058 100644 --- a/Resources/Textures/Interface/Alerts/Pressure/meta.json +++ b/Resources/Textures/Interface/Alerts/Pressure/meta.json @@ -9,39 +9,19 @@ "states": [ { "name": "highpressure1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "highpressure2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lowpressure1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lowpressure2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Interface/Alerts/Pull/pulled.png b/Resources/Textures/Interface/Alerts/Pull/pulled.png index 3d1aec59f6..9c148fe459 100644 Binary files a/Resources/Textures/Interface/Alerts/Pull/pulled.png and b/Resources/Textures/Interface/Alerts/Pull/pulled.png differ diff --git a/Resources/Textures/Interface/Alerts/Weightless/weightless.png b/Resources/Textures/Interface/Alerts/Weightless/weightless.png index 7ee4f01083..87e541084e 100644 Binary files a/Resources/Textures/Interface/Alerts/Weightless/weightless.png and b/Resources/Textures/Interface/Alerts/Weightless/weightless.png differ diff --git a/Resources/Textures/Interface/Alerts/breathing.rsi/meta.json b/Resources/Textures/Interface/Alerts/breathing.rsi/meta.json index 704f119830..b824752734 100644 --- a/Resources/Textures/Interface/Alerts/breathing.rsi/meta.json +++ b/Resources/Textures/Interface/Alerts/breathing.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "https://github.com/tgstation/tgstation/blob/2f18e6232ce5897554351194082469a043c5ab06/icons/hud/screen_alert.dmi", "states": [{"name": "not_enough_co2", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "not_enough_nitro", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "not_enough_oxy", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "not_enough_tox", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "too_much_co2", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "too_much_nitro", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "too_much_oxy", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "too_much_tox", "directions": 1, "delays": [[0.5, 0.5]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "https://github.com/tgstation/tgstation/blob/2f18e6232ce5897554351194082469a043c5ab06/icons/hud/screen_alert.dmi", "states": [{"name": "not_enough_co2", "delays": [[0.5, 0.5]]}, {"name": "not_enough_nitro", "delays": [[0.5, 0.5]]}, {"name": "not_enough_oxy", "delays": [[0.5, 0.5]]}, {"name": "not_enough_tox", "delays": [[0.5, 0.5]]}, {"name": "too_much_co2", "delays": [[0.5, 0.5]]}, {"name": "too_much_nitro", "delays": [[0.5, 0.5]]}, {"name": "too_much_oxy", "delays": [[0.5, 0.5]]}, {"name": "too_much_tox", "delays": [[0.5, 0.5]]}]} \ No newline at end of file diff --git a/Resources/Textures/Interface/Inventory/hand_slot_highlight.png b/Resources/Textures/Interface/Inventory/hand_slot_highlight.png new file mode 100644 index 0000000000..da20cd46de Binary files /dev/null and b/Resources/Textures/Interface/Inventory/hand_slot_highlight.png differ diff --git a/Resources/Textures/Interface/Inventory/inv_slot_background.png b/Resources/Textures/Interface/Inventory/inv_slot_background.png new file mode 100644 index 0000000000..aa85c0f0ba Binary files /dev/null and b/Resources/Textures/Interface/Inventory/inv_slot_background.png differ diff --git a/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json b/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json index c3304b8d9f..a545f5fc5b 100644 --- a/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json +++ b/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json @@ -7,309 +7,139 @@ "states": [ { "name": "Detective", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "QuarterMaster", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Botanist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "AtmosphericTechnician", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Nanotrasen", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Prisoner", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Janitor", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chemist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "StationEngineer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "SecurityOfficer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "NoId", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ChiefMedicalOfficer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Roboticist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chaplain", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Lawyer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Unknown", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Librarian", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "CargoTechnician", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Scientist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Geneticist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Clown", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Captain", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "HeadOfPersonnel", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Virologist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ShaftMiner", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Assistant", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ChiefEngineer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Bartender", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "HeadOfSecurity", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "MedicalDoctor", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chef", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Warden", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ResearchDirector", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Mime", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Interface/Misc/markers.rsi/meta.json b/Resources/Textures/Interface/Misc/markers.rsi/meta.json index 0d8134ac63..8ef19b96d2 100644 --- a/Resources/Textures/Interface/Misc/markers.rsi/meta.json +++ b/Resources/Textures/Interface/Misc/markers.rsi/meta.json @@ -9,543 +9,243 @@ "states": [ { "name": "AI", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Assistant", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Atmospheric Technician", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Bartender", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Botanist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Captain", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Cargo Technician", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chaplain", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chemist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chief Engineer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Chief Medical Officer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Clown", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Cook", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Curator", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Cyborg", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Detective", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Geneticist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Head of Personnel", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Head of Security", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Janitor", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Lawyer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Medical Doctor", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Mime", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Paramedic", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Prisoner", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Psychologist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Quartermaster", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Research Director", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Roboticist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Scientist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Security Officer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Shaft Miner", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Station Engineer", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Virologist", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "Warden", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "cross_blue", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "cross_green", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "cross_pink", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "cross_red", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "observer_start", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_ai", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_grenade", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_hitscan", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_launcher", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_launcher_ammo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_magnum_ammo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_melee", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_pistol", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_pistol_ammo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_revolver", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_rifle", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_rifle_ammo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_shotgun", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_shotgun_ammo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_smg", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_sniper", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_trash", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_xenoai", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_toy", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spawner_figure", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Interface/Misc/pointing.rsi/meta.json b/Resources/Textures/Interface/Misc/pointing.rsi/meta.json index 87ab2ae0e7..ff2120f04c 100644 --- a/Resources/Textures/Interface/Misc/pointing.rsi/meta.json +++ b/Resources/Textures/Interface/Misc/pointing.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "pointing", - "directions": 1, "delays": [[1]] } ] diff --git a/Resources/Textures/Interface/Misc/progress_bar.rsi/meta.json b/Resources/Textures/Interface/Misc/progress_bar.rsi/meta.json index 01f0ac17b0..612f362d3c 100644 --- a/Resources/Textures/Interface/Misc/progress_bar.rsi/meta.json +++ b/Resources/Textures/Interface/Misc/progress_bar.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/tgstation/tgstation/blob/886ca0f8dddf83ecaf10c92ff106172722352192/icons/effects/progessbar.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } \ No newline at end of file diff --git a/Resources/Textures/Interface/Nano/item_status_left.svg b/Resources/Textures/Interface/Nano/item_status_left.svg index 519d00a68a..c97f8de016 100644 --- a/Resources/Textures/Interface/Nano/item_status_left.svg +++ b/Resources/Textures/Interface/Nano/item_status_left.svg @@ -1,6 +1,4 @@ - - + inkscape:export-filename="C:\ss14\space-station-14\Resources\Textures\Interface\Nano\item_status_left.svg.96dpi.png" + inkscape:export-xdpi="96" + inkscape:export-ydpi="96"> + inkscape:snap-page="true" + inkscape:document-rotation="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0"> + id="grid817" + originx="0.44979165" + originy="1.5931808" /> @@ -66,35 +71,30 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(-26.597681,-208.71661)"> + transform="translate(-26.372785,-208.49171)"> - diff --git a/Resources/Textures/Interface/Nano/item_status_left.svg.96dpi.png b/Resources/Textures/Interface/Nano/item_status_left.svg.96dpi.png index 9fb2e17484..5169343ea4 100644 Binary files a/Resources/Textures/Interface/Nano/item_status_left.svg.96dpi.png and b/Resources/Textures/Interface/Nano/item_status_left.svg.96dpi.png differ diff --git a/Resources/Textures/Interface/Nano/item_status_middle.svg b/Resources/Textures/Interface/Nano/item_status_middle.svg new file mode 100644 index 0000000000..a913981db1 --- /dev/null +++ b/Resources/Textures/Interface/Nano/item_status_middle.svg @@ -0,0 +1,100 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + diff --git a/Resources/Textures/Interface/Nano/item_status_middle.svg.96dpi.png b/Resources/Textures/Interface/Nano/item_status_middle.svg.96dpi.png new file mode 100644 index 0000000000..dc1f84cea8 Binary files /dev/null and b/Resources/Textures/Interface/Nano/item_status_middle.svg.96dpi.png differ diff --git a/Resources/Textures/Interface/Nano/item_status_right.svg b/Resources/Textures/Interface/Nano/item_status_right.svg index d07333ec22..d898bb2ce0 100644 --- a/Resources/Textures/Interface/Nano/item_status_right.svg +++ b/Resources/Textures/Interface/Nano/item_status_right.svg @@ -1,6 +1,4 @@ - - + inkscape:export-filename="C:\ss14\space-station-14\Resources\Textures\Interface\Nano\item_status_right.svg.96dpi.png" + inkscape:export-xdpi="96" + inkscape:export-ydpi="96"> + inkscape:snap-page="true" + inkscape:document-rotation="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0"> - + id="grid817" + originx="0.44979165" + originy="1.5931808" /> @@ -71,35 +71,30 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(-26.597681,-208.71661)"> + transform="translate(-26.372785,-208.49171)"> - diff --git a/Resources/Textures/Interface/Nano/item_status_right.svg.96dpi.png b/Resources/Textures/Interface/Nano/item_status_right.svg.96dpi.png index 35e200c21f..72f7e6de6b 100644 Binary files a/Resources/Textures/Interface/Nano/item_status_right.svg.96dpi.png and b/Resources/Textures/Interface/Nano/item_status_right.svg.96dpi.png differ diff --git a/Resources/Textures/Interface/VerbIcons/buckle.svg b/Resources/Textures/Interface/VerbIcons/buckle.svg new file mode 100644 index 0000000000..6039683829 --- /dev/null +++ b/Resources/Textures/Interface/VerbIcons/buckle.svg @@ -0,0 +1,135 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Resources/Textures/Interface/VerbIcons/buckle.svg.96dpi.png b/Resources/Textures/Interface/VerbIcons/buckle.svg.96dpi.png new file mode 100644 index 0000000000..6eb8f793c2 Binary files /dev/null and b/Resources/Textures/Interface/VerbIcons/buckle.svg.96dpi.png differ diff --git a/Resources/Textures/Interface/VerbIcons/unbuckle.svg b/Resources/Textures/Interface/VerbIcons/unbuckle.svg new file mode 100644 index 0000000000..ebc3a5c4cc --- /dev/null +++ b/Resources/Textures/Interface/VerbIcons/unbuckle.svg @@ -0,0 +1,122 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Resources/Textures/Interface/VerbIcons/unbuckle.svg.96dpi.png b/Resources/Textures/Interface/VerbIcons/unbuckle.svg.96dpi.png new file mode 100644 index 0000000000..cf3a60e646 Binary files /dev/null and b/Resources/Textures/Interface/VerbIcons/unbuckle.svg.96dpi.png differ diff --git a/Resources/Textures/Interface/character.svg.192dpi.png b/Resources/Textures/Interface/character.svg.192dpi.png new file mode 100644 index 0000000000..471a543c2b Binary files /dev/null and b/Resources/Textures/Interface/character.svg.192dpi.png differ diff --git a/Resources/Textures/Interface/character.svg.192dpi.png.yml b/Resources/Textures/Interface/character.svg.192dpi.png.yml new file mode 100644 index 0000000000..dabd6601f7 --- /dev/null +++ b/Resources/Textures/Interface/character.svg.192dpi.png.yml @@ -0,0 +1,2 @@ +sample: + filter: true diff --git a/Resources/Textures/Interface/character.svg.96dpi.png b/Resources/Textures/Interface/character.svg.96dpi.png deleted file mode 100644 index 30a6a428ac..0000000000 Binary files a/Resources/Textures/Interface/character.svg.96dpi.png and /dev/null differ diff --git a/Resources/Textures/Interface/fist.svg b/Resources/Textures/Interface/fist.svg new file mode 100644 index 0000000000..c25a18781d --- /dev/null +++ b/Resources/Textures/Interface/fist.svg @@ -0,0 +1,91 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/Resources/Textures/Interface/fist.svg.192dpi.png b/Resources/Textures/Interface/fist.svg.192dpi.png new file mode 100644 index 0000000000..4218297612 Binary files /dev/null and b/Resources/Textures/Interface/fist.svg.192dpi.png differ diff --git a/Resources/Textures/Interface/fist.svg.192dpi.png.yml b/Resources/Textures/Interface/fist.svg.192dpi.png.yml new file mode 100644 index 0000000000..dabd6601f7 --- /dev/null +++ b/Resources/Textures/Interface/fist.svg.192dpi.png.yml @@ -0,0 +1,2 @@ +sample: + filter: true diff --git a/Resources/Textures/Interface/gavel.svg b/Resources/Textures/Interface/gavel.svg new file mode 100644 index 0000000000..0ec1aefde1 --- /dev/null +++ b/Resources/Textures/Interface/gavel.svg @@ -0,0 +1,70 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/Resources/Textures/Interface/gavel.svg.192dpi.png b/Resources/Textures/Interface/gavel.svg.192dpi.png new file mode 100644 index 0000000000..f9d9476fa7 Binary files /dev/null and b/Resources/Textures/Interface/gavel.svg.192dpi.png differ diff --git a/Resources/Textures/Interface/gavel.svg.192dpi.png.yml b/Resources/Textures/Interface/gavel.svg.192dpi.png.yml new file mode 100644 index 0000000000..dabd6601f7 --- /dev/null +++ b/Resources/Textures/Interface/gavel.svg.192dpi.png.yml @@ -0,0 +1,2 @@ +sample: + filter: true diff --git a/Resources/Textures/Interface/hamburger.svg b/Resources/Textures/Interface/hamburger.svg index 4ea08de45e..a20d7bb543 100644 --- a/Resources/Textures/Interface/hamburger.svg +++ b/Resources/Textures/Interface/hamburger.svg @@ -5,11 +5,39 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" id="svg4593" version="1.1" viewBox="0 0 7.9563375 7.1438789" height="7.1438789mm" - width="7.9563375mm"> + width="7.9563375mm" + sodipodi:docname="hamburger.svg" + inkscape:export-filename="C:\ss14\space-station-14\Resources\Textures\Interface\hamburger.svg.96dpi.png" + inkscape:export-xdpi="115.20007" + inkscape:export-ydpi="115.20007" + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"> + - + id="svg8" + sodipodi:docname="tutorial.svg" + inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)" + inkscape:export-filename="C:\ss14\space-station-14\Resources\Textures\Interface\tutorial.svg.96dpi.png" + inkscape:export-xdpi="121.08268" + inkscape:export-ydpi="121.08268"> + id="metadata14"> @@ -24,18 +30,37 @@ - - - - + + + diff --git a/Resources/Textures/Interface/tutorial.svg.192dpi.png b/Resources/Textures/Interface/tutorial.svg.192dpi.png new file mode 100644 index 0000000000..234f4638fc Binary files /dev/null and b/Resources/Textures/Interface/tutorial.svg.192dpi.png differ diff --git a/Resources/Textures/Interface/tutorial.svg.192dpi.png.yml b/Resources/Textures/Interface/tutorial.svg.192dpi.png.yml new file mode 100644 index 0000000000..dabd6601f7 --- /dev/null +++ b/Resources/Textures/Interface/tutorial.svg.192dpi.png.yml @@ -0,0 +1,2 @@ +sample: + filter: true diff --git a/Resources/Textures/Interface/tutorial.svg.96dpi.png b/Resources/Textures/Interface/tutorial.svg.96dpi.png deleted file mode 100644 index 2e83e41f93..0000000000 Binary files a/Resources/Textures/Interface/tutorial.svg.96dpi.png and /dev/null differ diff --git a/Resources/Textures/Mobs/Aliens/Carps/carp_holo.rsi/meta.json b/Resources/Textures/Mobs/Aliens/Carps/carp_holo.rsi/meta.json index b26ae858d7..51380fa606 100644 --- a/Resources/Textures/Mobs/Aliens/Carps/carp_holo.rsi/meta.json +++ b/Resources/Textures/Mobs/Aliens/Carps/carp_holo.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Aliens/Carps/carp_magic.rsi/meta.json b/Resources/Textures/Mobs/Aliens/Carps/carp_magic.rsi/meta.json index 30cc05d941..dc25796194 100644 --- a/Resources/Textures/Mobs/Aliens/Carps/carp_magic.rsi/meta.json +++ b/Resources/Textures/Mobs/Aliens/Carps/carp_magic.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 @@ -53,7 +51,6 @@ }, { "name": "magicarp_gib", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Mobs/Aliens/Carps/carp_space.rsi/meta.json b/Resources/Textures/Mobs/Aliens/Carps/carp_space.rsi/meta.json index 66407ac9a2..86770f8590 100644 --- a/Resources/Textures/Mobs/Aliens/Carps/carp_space.rsi/meta.json +++ b/Resources/Textures/Mobs/Aliens/Carps/carp_space.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 @@ -53,7 +51,6 @@ }, { "name": "carp_gib", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Mobs/Aliens/Xenos/xeno.rsi/meta.json b/Resources/Textures/Mobs/Aliens/Xenos/xeno.rsi/meta.json index b9c9a315d6..433132a72e 100644 --- a/Resources/Textures/Mobs/Aliens/Xenos/xeno.rsi/meta.json +++ b/Resources/Textures/Mobs/Aliens/Xenos/xeno.rsi/meta.json @@ -16,16 +16,13 @@ "directions": 4 }, { - "name": "dead", - "directions": 1 + "name": "dead" }, { - "name": "sleeping", - "directions": 1 + "name": "sleeping" }, { - "name": "crit", - "directions": 1 + "name": "crit" } ] } diff --git a/Resources/Textures/Mobs/Animals/bat.rsi/meta.json b/Resources/Textures/Mobs/Animals/bat.rsi/meta.json index 127fb60ead..eed1f0d8cb 100644 --- a/Resources/Textures/Mobs/Animals/bat.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/bat.rsi/meta.json @@ -39,7 +39,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/bear.rsi/meta.json b/Resources/Textures/Mobs/Animals/bear.rsi/meta.json index 36e8f5ff86..6102a50503 100644 --- a/Resources/Textures/Mobs/Animals/bear.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/bear.rsi/meta.json @@ -27,7 +27,6 @@ }, { "name": "brownbear_dead", - "directions": 1, "delays": [ [ 1 @@ -36,7 +35,6 @@ }, { "name": "brownbear_gib", - "directions": 1, "delays": [ [ 0.1, @@ -77,7 +75,6 @@ }, { "name": "combatbear_dead", - "directions": 1, "delays": [ [ 1 @@ -104,7 +101,6 @@ }, { "name": "bear_dead", - "directions": 1, "delays": [ [ 1 @@ -113,7 +109,6 @@ }, { "name": "bear_gib", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Mobs/Animals/bee.rsi/meta.json b/Resources/Textures/Mobs/Animals/bee.rsi/meta.json index aaa57c0f9a..f123c1c224 100644 --- a/Resources/Textures/Mobs/Animals/bee.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/bee.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "dead", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "0", - "directions": 1, "delays": [ [ 0.1, @@ -35,7 +33,6 @@ }, { "name": "1", - "directions": 1, "delays": [ [ 0.1, @@ -52,7 +49,6 @@ }, { "name": "2", - "directions": 1, "delays": [ [ 0.1, @@ -69,7 +65,6 @@ }, { "name": "3", - "directions": 1, "delays": [ [ 0.1, @@ -86,7 +81,6 @@ }, { "name": "4", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Mobs/Animals/butterfly.rsi/meta.json b/Resources/Textures/Mobs/Animals/butterfly.rsi/meta.json index 09456eb791..601d096330 100644 --- a/Resources/Textures/Mobs/Animals/butterfly.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/butterfly.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/chick.rsi/meta.json b/Resources/Textures/Mobs/Animals/chick.rsi/meta.json index 1d01fd99a0..aa6b064a96 100644 --- a/Resources/Textures/Mobs/Animals/chick.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/chick.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "dead", - "directions": 1, "delays": [ [ 1 @@ -36,7 +35,6 @@ }, { "name": "chick_gib", - "directions": 1, "delays": [ [ 0.6, diff --git a/Resources/Textures/Mobs/Animals/chicken.rsi/meta.json b/Resources/Textures/Mobs/Animals/chicken.rsi/meta.json index e549ea2d01..42f14d611e 100644 --- a/Resources/Textures/Mobs/Animals/chicken.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/chicken.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon-0", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "icon-1", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "icon-2", - "directions": 1, "delays": [ [ 1 @@ -114,7 +111,6 @@ }, { "name": "dead-0", - "directions": 1, "delays": [ [ 1 @@ -123,7 +119,6 @@ }, { "name": "dead-1", - "directions": 1, "delays": [ [ 1 @@ -132,7 +127,6 @@ }, { "name": "dead-2", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/cow.rsi/meta.json b/Resources/Textures/Mobs/Animals/cow.rsi/meta.json index caab74e720..df28f28969 100644 --- a/Resources/Textures/Mobs/Animals/cow.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/cow.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "dead", - "directions": 1, "delays": [ [ 1 @@ -36,7 +35,6 @@ }, { "name": "gib", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Mobs/Animals/crab.rsi/meta.json b/Resources/Textures/Mobs/Animals/crab.rsi/meta.json index 73d7ef3bdb..5559f5b36d 100644 --- a/Resources/Textures/Mobs/Animals/crab.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/crab.rsi/meta.json @@ -35,7 +35,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/frog.rsi/meta.json b/Resources/Textures/Mobs/Animals/frog.rsi/meta.json index 2d517146ef..22406ca7ec 100644 --- a/Resources/Textures/Mobs/Animals/frog.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/frog.rsi/meta.json @@ -35,7 +35,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/goat.rsi/meta.json b/Resources/Textures/Mobs/Animals/goat.rsi/meta.json index b362ac4c89..043607479d 100644 --- a/Resources/Textures/Mobs/Animals/goat.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/goat.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/goose.rsi/meta.json b/Resources/Textures/Mobs/Animals/goose.rsi/meta.json index fb988e5d4d..3f826a2be4 100644 --- a/Resources/Textures/Mobs/Animals/goose.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/goose.rsi/meta.json @@ -27,7 +27,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/gorilla.rsi/meta.json b/Resources/Textures/Mobs/Animals/gorilla.rsi/meta.json index 8a9ee12dc6..fefcf1944f 100644 --- a/Resources/Textures/Mobs/Animals/gorilla.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/gorilla.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/lizard.rsi/meta.json b/Resources/Textures/Mobs/Animals/lizard.rsi/meta.json index 8680a2713d..9ffa4a0ded 100644 --- a/Resources/Textures/Mobs/Animals/lizard.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/lizard.rsi/meta.json @@ -27,7 +27,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 @@ -36,7 +35,6 @@ }, { "name": "gib", - "directions": 1, "delays": [ [ 0.6, diff --git a/Resources/Textures/Mobs/Animals/monkey.rsi/meta.json b/Resources/Textures/Mobs/Animals/monkey.rsi/meta.json index 1621265020..cda9e24b13 100644 --- a/Resources/Textures/Mobs/Animals/monkey.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/monkey.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/mouse.rsi/meta.json b/Resources/Textures/Mobs/Animals/mouse.rsi/meta.json index f63289117b..6401a8b46a 100644 --- a/Resources/Textures/Mobs/Animals/mouse.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/mouse.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon-0", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "icon-1", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "icon-2", - "directions": 1, "delays": [ [ 1 @@ -114,7 +111,6 @@ }, { "name": "dead-0", - "directions": 1, "delays": [ [ 1 @@ -123,7 +119,6 @@ }, { "name": "dead-1", - "directions": 1, "delays": [ [ 1 @@ -132,7 +127,6 @@ }, { "name": "dead-2", - "directions": 1, "delays": [ [ 1 @@ -141,7 +135,6 @@ }, { "name": "splat-0", - "directions": 1, "delays": [ [ 1 @@ -150,7 +143,6 @@ }, { "name": "splat-1", - "directions": 1, "delays": [ [ 1 @@ -159,7 +151,6 @@ }, { "name": "splat-2", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/parrot.rsi/meta.json b/Resources/Textures/Mobs/Animals/parrot.rsi/meta.json index 5a57f8f46e..366cfe7b2c 100644 --- a/Resources/Textures/Mobs/Animals/parrot.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/parrot.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Animals/penguin.rsi/meta.json b/Resources/Textures/Mobs/Animals/penguin.rsi/meta.json index d19b479808..c681783b92 100644 --- a/Resources/Textures/Mobs/Animals/penguin.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/penguin.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CCBYNA3", "copyright": "Taken from https://github.com/tgstation/tgstation/commit/53d1f1477d22a11a99c6c6924977cd431075761b", "states": [{"name": "penguin", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "penguin_baby", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "penguin_baby_dead", "directions": 1, "delays": [[1.0]]}, {"name": "penguin_baby_dead_blood", "directions": 1, "delays": [[1.0]]}, {"name": "penguin_dead", "directions": 1, "delays": [[1.0]]}, {"name": "penguin_dead_blood", "directions": 1, "delays": [[1.0]]}, {"name": "penguin_egg", "directions": 1, "delays": [[1.0]]}, {"name": "penguin_egg_broken", "directions": 1, "delays": [[1.0]]}, {"name": "penguin_shamebrero", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CCBYNA3", "copyright": "Taken from https://github.com/tgstation/tgstation/commit/53d1f1477d22a11a99c6c6924977cd431075761b", "states": [{"name": "penguin", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "penguin_baby", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "penguin_baby_dead", "delays": [[1.0]]}, {"name": "penguin_baby_dead_blood", "delays": [[1.0]]}, {"name": "penguin_dead", "delays": [[1.0]]}, {"name": "penguin_dead_blood", "delays": [[1.0]]}, {"name": "penguin_egg", "delays": [[1.0]]}, {"name": "penguin_egg_broken", "delays": [[1.0]]}, {"name": "penguin_shamebrero", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Mobs/Animals/snake.rsi/meta.json b/Resources/Textures/Mobs/Animals/snake.rsi/meta.json index 7177be225b..68eeda00ef 100644 --- a/Resources/Textures/Mobs/Animals/snake.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/snake.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -48,7 +47,6 @@ }, { "name": "dead", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Mobs/Animals/spider.rsi/meta.json b/Resources/Textures/Mobs/Animals/spider.rsi/meta.json index be37234ec3..080af7172a 100644 --- a/Resources/Textures/Mobs/Animals/spider.rsi/meta.json +++ b/Resources/Textures/Mobs/Animals/spider.rsi/meta.json @@ -165,7 +165,6 @@ }, { "name": "hunter_dead", - "directions": 1, "delays": [ [ 1 @@ -174,7 +173,6 @@ }, { "name": "midwife_dead", - "directions": 1, "delays": [ [ 1 @@ -183,7 +181,6 @@ }, { "name": "viper_dead", - "directions": 1, "delays": [ [ 1 @@ -192,7 +189,6 @@ }, { "name": "tarantula_dead", - "directions": 1, "delays": [ [ 1 @@ -201,7 +197,6 @@ }, { "name": "nurse_dead", - "directions": 1, "delays": [ [ 1 @@ -210,7 +205,6 @@ }, { "name": "guard_dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Customization/human_facial_hair.rsi/meta.json b/Resources/Textures/Mobs/Customization/human_facial_hair.rsi/meta.json index cd766a6f94..eacf47c9a1 100644 --- a/Resources/Textures/Mobs/Customization/human_facial_hair.rsi/meta.json +++ b/Resources/Textures/Mobs/Customization/human_facial_hair.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "3oclock", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "5oclockmoustache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "7oclock", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "7oclockmoustache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "abe", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "brokenman", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "chaplin", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "chin", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "chinlessbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "croppedfullbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "dorsalfnil", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "dwarf", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "elvis", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "fiveoclock", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "fullbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "fumanchu", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "gt", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "hip", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "hogan", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "jensen", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "longbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "longbeard_l", "directions": 1, "delays": [[1.0]]}, {"name": "martialartist", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "moonshiner", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "moustache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mutton", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "muttonmus", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "neckbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pencilstache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "selleck", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "sideburn", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "smallstache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "vandyke", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "volaju", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "walrus", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "watson", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "wise", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "shaved", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "3oclock", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "5oclockmoustache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "7oclock", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "7oclockmoustache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "abe", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "brokenman", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "chaplin", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "chin", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "chinlessbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "croppedfullbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "dorsalfnil", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "dwarf", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "elvis", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "fiveoclock", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "fullbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "fumanchu", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "gt", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "hip", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "hogan", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "jensen", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "longbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "longbeard_l", "delays": [[1.0]]}, {"name": "martialartist", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "moonshiner", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "moustache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mutton", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "muttonmus", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "neckbeard", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pencilstache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "selleck", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "sideburn", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "smallstache", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "vandyke", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "volaju", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "walrus", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "watson", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "wise", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "shaved", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} diff --git a/Resources/Textures/Mobs/Ghosts/ghost_human.rsi/meta.json b/Resources/Textures/Mobs/Ghosts/ghost_human.rsi/meta.json index e5d2dabd53..001255d508 100644 --- a/Resources/Textures/Mobs/Ghosts/ghost_human.rsi/meta.json +++ b/Resources/Textures/Mobs/Ghosts/ghost_human.rsi/meta.json @@ -8,7 +8,6 @@ "states": [ { "name": "animated", - "directions": 1, "delays": [[ 0.2, 0.2, @@ -26,7 +25,6 @@ }, { "name": "icon", - "directions": 1, "delays": [[ 1.0, ]] diff --git a/Resources/Textures/Mobs/Pets/cat.rsi/meta.json b/Resources/Textures/Mobs/Pets/cat.rsi/meta.json index 79e5c555bd..e6d1436048 100644 --- a/Resources/Textures/Mobs/Pets/cat.rsi/meta.json +++ b/Resources/Textures/Mobs/Pets/cat.rsi/meta.json @@ -27,7 +27,6 @@ }, { "name": "cak_dead", - "directions": 1, "delays": [ [ 1 @@ -36,7 +35,6 @@ }, { "name": "cak_rest", - "directions": 1, "delays": [ [ 1 @@ -45,7 +43,6 @@ }, { "name": "cak_sit", - "directions": 1, "delays": [ [ 1 @@ -90,7 +87,6 @@ }, { "name": "cat2_dead", - "directions": 1, "delays": [ [ 1 @@ -99,7 +95,6 @@ }, { "name": "cat2_rest", - "directions": 1, "delays": [ [ 0.1, @@ -111,7 +106,6 @@ }, { "name": "cat2_sit", - "directions": 1, "delays": [ [ 1 @@ -120,7 +114,6 @@ }, { "name": "cat_dead", - "directions": 1, "delays": [ [ 1 @@ -129,7 +122,6 @@ }, { "name": "cat_deadcollar", - "directions": 1, "delays": [ [ 1 @@ -138,7 +130,6 @@ }, { "name": "cat_deadtag", - "directions": 1, "delays": [ [ 1 @@ -147,7 +138,6 @@ }, { "name": "cat_rest", - "directions": 1, "delays": [ [ 0.1, @@ -159,7 +149,6 @@ }, { "name": "cat_restcollar", - "directions": 1, "delays": [ [ 1 @@ -168,7 +157,6 @@ }, { "name": "cat_resttag", - "directions": 1, "delays": [ [ 1 @@ -177,7 +165,6 @@ }, { "name": "cat_sit", - "directions": 1, "delays": [ [ 1 @@ -240,7 +227,6 @@ }, { "name": "kitten_dead", - "directions": 1, "delays": [ [ 1 @@ -249,7 +235,6 @@ }, { "name": "kitten_deadcollar", - "directions": 1, "delays": [ [ 1 @@ -258,7 +243,6 @@ }, { "name": "kitten_deadtag", - "directions": 1, "delays": [ [ 1 @@ -267,7 +251,6 @@ }, { "name": "kitten_rest", - "directions": 1, "delays": [ [ 0.1, @@ -279,7 +262,6 @@ }, { "name": "kitten_restcollar", - "directions": 1, "delays": [ [ 1 @@ -288,7 +270,6 @@ }, { "name": "kitten_resttag", - "directions": 1, "delays": [ [ 1 @@ -297,7 +278,6 @@ }, { "name": "kitten_sit", - "directions": 1, "delays": [ [ 1 @@ -360,7 +340,6 @@ }, { "name": "spacecat_dead", - "directions": 1, "delays": [ [ 1 @@ -369,7 +348,6 @@ }, { "name": "spacecat_rest", - "directions": 1, "delays": [ [ 0.1, @@ -381,7 +359,6 @@ }, { "name": "spacecat_sit", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Pets/corgi.rsi/meta.json b/Resources/Textures/Mobs/Pets/corgi.rsi/meta.json index 618d63f963..084ea74d93 100644 --- a/Resources/Textures/Mobs/Pets/corgi.rsi/meta.json +++ b/Resources/Textures/Mobs/Pets/corgi.rsi/meta.json @@ -45,7 +45,6 @@ }, { "name": "corgi_dead", - "directions": 1, "delays": [ [ 1 @@ -72,7 +71,6 @@ }, { "name": "ian_dead", - "directions": 1, "delays": [ [ 1 @@ -81,7 +79,6 @@ }, { "name": "corgi_deadcollar", - "directions": 1, "delays": [ [ 1 @@ -90,7 +87,6 @@ }, { "name": "corgi_deadtag", - "directions": 1, "delays": [ [ 1 @@ -117,7 +113,6 @@ }, { "name": "ian_shaved_dead", - "directions": 1, "delays": [ [ 1 @@ -180,7 +175,6 @@ }, { "name": "lisa_dead", - "directions": 1, "delays": [ [ 1 @@ -207,7 +201,6 @@ }, { "name": "lisa_shaved_dead", - "directions": 1, "delays": [ [ 1 @@ -234,7 +227,6 @@ }, { "name": "narsian_dead", - "directions": 1, "delays": [ [ 1 @@ -265,7 +257,6 @@ }, { "name": "old_ian_dead", - "directions": 1, "delays": [ [ 1 @@ -296,7 +287,6 @@ }, { "name": "old_ian_shaved_dead", - "directions": 1, "delays": [ [ 1 @@ -323,7 +313,6 @@ }, { "name": "puppy_dead", - "directions": 1, "delays": [ [ 1 @@ -332,7 +321,6 @@ }, { "name": "puppy_deadcollar", - "directions": 1, "delays": [ [ 1 @@ -341,7 +329,6 @@ }, { "name": "puppy_deadtag", - "directions": 1, "delays": [ [ 1 @@ -368,7 +355,6 @@ }, { "name": "puppy_shaved_dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Pets/fox.rsi/meta.json b/Resources/Textures/Mobs/Pets/fox.rsi/meta.json index 6e4b003f46..46837bff60 100644 --- a/Resources/Textures/Mobs/Pets/fox.rsi/meta.json +++ b/Resources/Textures/Mobs/Pets/fox.rsi/meta.json @@ -27,7 +27,6 @@ }, { "name": "fox_dead", - "directions": 1, "delays": [ [ 1 @@ -36,7 +35,6 @@ }, { "name": "fox_deadcollar", - "directions": 1, "delays": [ [ 1 @@ -45,7 +43,6 @@ }, { "name": "fox_deadtag", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Pets/sloth.rsi/meta.json b/Resources/Textures/Mobs/Pets/sloth.rsi/meta.json index 53aabb227e..e1437feab4 100644 --- a/Resources/Textures/Mobs/Pets/sloth.rsi/meta.json +++ b/Resources/Textures/Mobs/Pets/sloth.rsi/meta.json @@ -27,7 +27,6 @@ }, { "name": "sloth_dead", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Mobs/Species/Human/organs.rsi/meta.json b/Resources/Textures/Mobs/Species/Human/organs.rsi/meta.json index 13310de52c..1ca0ec3cb8 100644 --- a/Resources/Textures/Mobs/Species/Human/organs.rsi/meta.json +++ b/Resources/Textures/Mobs/Species/Human/organs.rsi/meta.json @@ -9,61 +9,30 @@ "states": [ { "name": "appendix", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "appendixinflamed", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "brain", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "ears", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "eyeballs", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "heart-off", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "heart-on", - "directions": 1, "delays": [ [ 0.6, @@ -74,48 +43,23 @@ }, { "name": "kidneys", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "liver", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lungs", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "stomach", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "tonguenormal", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Mobs/Species/Human/parts.rsi/meta.json b/Resources/Textures/Mobs/Species/Human/parts.rsi/meta.json index 33281d6f3e..4fb3997c36 100644 --- a/Resources/Textures/Mobs/Species/Human/parts.rsi/meta.json +++ b/Resources/Textures/Mobs/Species/Human/parts.rsi/meta.json @@ -9,12 +9,7 @@ "states": [ { "name": "full", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "head_f", diff --git a/Resources/Textures/Objects/Consumable/Drinks/(mdr)grapejuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/(mdr)grapejuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/(mdr)grapejuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/(mdr)grapejuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/absinthebottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/absinthebottle.rsi/meta.json index 8dfd56ef9f..e8a2f8c21d 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/absinthebottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/absinthebottle.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/absintheglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/absintheglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/absintheglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/absintheglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/acidspitglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/acidspitglass.rsi/meta.json index 79f46abb6d..6b76e14b80 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/acidspitglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/acidspitglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[30.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[30.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/alco-blue.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/alco-blue.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/alco-blue.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/alco-blue.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/alco-green.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/alco-green.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/alco-green.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/alco-green.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/alco-red.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/alco-red.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/alco-red.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/alco-red.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/alco-white.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/alco-white.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/alco-white.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/alco-white.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/alebottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/alebottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/alebottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/alebottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/aleglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/aleglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/aleglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/aleglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/alliescocktail.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/alliescocktail.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/alliescocktail.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/alliescocktail.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/aloe.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/aloe.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/aloe.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/aloe.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/amasecglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/amasecglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/amasecglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/amasecglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/andalusia.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/andalusia.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/andalusia.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/andalusia.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/antifreeze.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/antifreeze.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/antifreeze.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/antifreeze.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/atomicbombglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/atomicbombglass.rsi/meta.json index eac9b60db8..293f7f97b0 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/atomicbombglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/atomicbombglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/b&p.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/b&p.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/b&p.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/b&p.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/b52glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/b52glass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/b52glass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/b52glass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/bahama_mama.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bahama_mama.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/bahama_mama.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/bahama_mama.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/banana.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/banana.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/banana.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/banana.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/bananahonkglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bananahonkglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/bananahonkglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/bananahonkglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/barflask.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/barflask.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/barflask.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/barflask.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/beepskysmashglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/beepskysmashglass.rsi/meta.json index 7c4fff623d..ab72fd54f3 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/beepskysmashglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/beepskysmashglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/beer.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/beer.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/beer.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/beer.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/beerglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/beerglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/beerglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/beerglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/berryjuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/berryjuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/berryjuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/berryjuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/bigteacup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bigteacup.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/bigteacup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/bigteacup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/blackrussianglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/blackrussianglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/blackrussianglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/blackrussianglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/bloodymaryglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bloodymaryglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/bloodymaryglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/bloodymaryglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/booger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/booger.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/booger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/booger.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/bottleofnothing.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bottleofnothing.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/bottleofnothing.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/bottleofnothing.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/bravebullglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bravebullglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/bravebullglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/bravebullglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/britmug.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/britmug.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/britmug.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/britmug.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/broken.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/broken.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/broken.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/broken.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/brownstar.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/brownstar.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/brownstar.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/brownstar.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cafe_latte.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cafe_latte.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cafe_latte.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cafe_latte.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/carafe.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/carafe.rsi/meta.json index c73856186c..a1f2ae6048 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/carafe.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/carafe.rsi/meta.json @@ -8,48 +8,37 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" }, { - "name": "icon-4", - "directions": 1 + "name": "icon-4" }, { - "name": "icon-5", - "directions": 1 + "name": "icon-5" }, { - "name": "icon-6", - "directions": 1 + "name": "icon-6" }, { - "name": "icon-7", - "directions": 1 + "name": "icon-7" }, { - "name": "icon-8", - "directions": 1 + "name": "icon-8" }, { - "name": "icon-9", - "directions": 1 + "name": "icon-9" }, { - "name": "icon-10", - "directions": 1 + "name": "icon-10" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/carrotjuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/carrotjuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/carrotjuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/carrotjuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json index 4663691714..409b512477 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[10.0, 10.0, 10.0, 10.0, 10.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[10.0, 10.0, 10.0, 10.0, 10.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/chocolateglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/chocolateglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/chocolateglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/chocolateglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/coffee.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/coffee.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/coffee.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/coffee.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/cognacbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cognacbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cognacbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cognacbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cognacglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cognacglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cognacglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cognacglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/colabottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/colabottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/colabottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/colabottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cream.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cream.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cream.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cream.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cubalibreglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cubalibreglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cubalibreglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cubalibreglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cup.rsi/meta.json index ccca6b00a1..80ac521b6f 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cup.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/demonsblood.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/demonsblood.rsi/meta.json index 1941d6a395..b964b0f4a1 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/demonsblood.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/demonsblood.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/detflask.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/detflask.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/detflask.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/detflask.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/devilskiss.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/devilskiss.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/devilskiss.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/devilskiss.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/doctorsdelightglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/doctorsdelightglass.rsi/meta.json index 1924e2bf91..edd3d67bfd 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/doctorsdelightglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/doctorsdelightglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/dr_gibb_glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/dr_gibb_glass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/dr_gibb_glass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/dr_gibb_glass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/driestmartiniglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/driestmartiniglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/driestmartiniglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/driestmartiniglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/erikasurprise.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/erikasurprise.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/erikasurprise.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/erikasurprise.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/flask.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/flask.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/flask.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/flask.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/flask_old.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/flask_old.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/flask_old.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/flask_old.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/gargleblasterglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/gargleblasterglass.rsi/meta.json index 88c6c9e04a..2eee22e743 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/gargleblasterglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/gargleblasterglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[2.0, 2.0, 2.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[2.0, 2.0, 2.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/ginbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ginbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ginbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ginbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/ginfizzglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ginfizzglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ginfizzglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ginfizzglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/gintonicglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/gintonicglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/gintonicglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/gintonicglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/ginvodkaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ginvodkaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ginvodkaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ginvodkaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_brown.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_brown.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_brown.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_brown.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_brown2.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_brown2.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_brown2.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_brown2.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_clear.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_clear.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_clear.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_clear.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_green.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_green.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_green.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_green.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_orange.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_orange.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_orange.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_orange.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_red.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_red.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_red.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_red.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_white.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_white.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_white.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_white.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/glass_yellow.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/glass_yellow.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/glass_yellow.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/glass_yellow.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/golden_cup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/golden_cup.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/golden_cup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/golden_cup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/goldschlagerbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/goldschlagerbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/goldschlagerbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/goldschlagerbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/goldschlagerglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/goldschlagerglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/goldschlagerglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/goldschlagerglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/grapejuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/grapejuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/grapejuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/grapejuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/grapesoda.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/grapesoda.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/grapesoda.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/grapesoda.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/grenadinebottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/grenadinebottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/grenadinebottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/grenadinebottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/grenadineglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/grenadineglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/grenadineglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/grenadineglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/grogglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/grogglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/grogglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/grogglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/gsodaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/gsodaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/gsodaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/gsodaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/hell.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/hell.rsi/meta.json index 1941d6a395..b964b0f4a1 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/hell.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/hell.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/hippiesdelightglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/hippiesdelightglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/hippiesdelightglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/hippiesdelightglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/hot_coco.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/hot_coco.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/hot_coco.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/hot_coco.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/hot_coffee.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/hot_coffee.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/hot_coffee.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/hot_coffee.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/iced_beerglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/iced_beerglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/iced_beerglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/iced_beerglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/icedcoffeeglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/icedcoffeeglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/icedcoffeeglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/icedcoffeeglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/icedteaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/icedteaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/icedteaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/icedteaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/iceglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/iceglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/iceglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/iceglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/irishcarbomb.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/irishcarbomb.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/irishcarbomb.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/irishcarbomb.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/irishcoffeeglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/irishcoffeeglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/irishcoffeeglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/irishcoffeeglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/irishcreamglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/irishcreamglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/irishcreamglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/irishcreamglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/jar.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/jar.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/jar.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/jar.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/jar_metroid.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/jar_metroid.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/jar_metroid.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/jar_metroid.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/jar_what.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/jar_what.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/jar_what.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/jar_what.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/kahluabottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/kahluabottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/kahluabottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/kahluabottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/kahluaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/kahluaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/kahluaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/kahluaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/kiraspecial.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/kiraspecial.rsi/meta.json index eac9b60db8..293f7f97b0 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/kiraspecial.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/kiraspecial.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lean.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lean.rsi/meta.json index 4dca11fe91..666ec30732 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lean.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lean.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/tgstation/tgstation/blob/master/icons/obj/drinks.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemonade.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lemonade.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lemonade.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lemonade.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemonadeglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lemonadeglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lemonadeglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lemonadeglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemonglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lemonglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lemonglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lemonglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemonjuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lemonjuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lemonjuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lemonjuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemonlime.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lemonlime.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lemonlime.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lemonlime.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/limejuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/limejuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/limejuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/limejuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lithiumflask.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/lithiumflask.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/lithiumflask.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/lithiumflask.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/longislandicedteaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/longislandicedteaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/longislandicedteaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/longislandicedteaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/manhattanglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/manhattanglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/manhattanglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/manhattanglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/manlydorfglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/manlydorfglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/manlydorfglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/manlydorfglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/margaritaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/margaritaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/margaritaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/margaritaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/martiniglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/martiniglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/martiniglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/martiniglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/meadglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/meadglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/meadglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/meadglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/milk.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/milk.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/milk.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/milk.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mojito.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mojito.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mojito.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mojito.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_black.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_black.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_black.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_black.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_blue.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_blue.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_blue.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_blue.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_green.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_green.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_green.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_green.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_heart.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_heart.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_heart.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_heart.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_metal.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_metal.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_metal.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_metal.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_moebius.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_moebius.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_moebius.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_moebius.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_one.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_one.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_one.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_one.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_rainbow.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_rainbow.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_rainbow.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_rainbow.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/mug_red.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mug_red.rsi/meta.json index 8d8dfd5865..21ea2b2106 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/mug_red.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/mug_red.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/neurotoxinglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/neurotoxinglass.rsi/meta.json index 4894909fc8..74149ebb7c 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/neurotoxinglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/neurotoxinglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[30.0, 3.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[30.0, 3.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/nothing.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/nothing.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/nothing.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/nothing.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/ntcahors.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ntcahors.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ntcahors.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ntcahors.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/nuka_colaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/nuka_colaglass.rsi/meta.json index eac9b60db8..293f7f97b0 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/nuka_colaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/nuka_colaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/orangejuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/orangejuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/orangejuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/orangejuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/patronbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/patronbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/patronbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/patronbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/patronglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/patronglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/patronglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/patronglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/pitcher.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/pitcher.rsi/meta.json index e40ad15061..f645b06fff 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/pitcher.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/pitcher.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" }, { - "name": "icon-4", - "directions": 1 + "name": "icon-4" }, { - "name": "icon-5", - "directions": 1 + "name": "icon-5" }, { - "name": "icon-6", - "directions": 1 + "name": "icon-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/poisonberryjuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/poisonberryjuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/poisonberryjuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/poisonberryjuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/proj_manhattanglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/proj_manhattanglass.rsi/meta.json index eac9b60db8..293f7f97b0 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/proj_manhattanglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/proj_manhattanglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/pwinebottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/pwinebottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/pwinebottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/pwinebottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/pwineglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/pwineglass.rsi/meta.json index 96c9a65b39..3d341b0a80 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/pwineglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/pwineglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[150.0, 3.0, 3.0, 3.0, 3.0, 3.0, 2.0, 2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[150.0, 3.0, 3.0, 3.0, 3.0, 3.0, 2.0, 2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/ramen.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ramen.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ramen.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ramen.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/rumbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/rumbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/rumbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/rumbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/rumglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/rumglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/rumglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/rumglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/sbitenglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/sbitenglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/sbitenglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/sbitenglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/screwdriverglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/screwdriverglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/screwdriverglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/screwdriverglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/sdreamglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/sdreamglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/sdreamglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/sdreamglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shake-blue.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shake-blue.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shake-blue.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shake-blue.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shake-empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shake-empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shake-empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shake-empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shake-meat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shake-meat.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shake-meat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shake-meat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shake-robo.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shake-robo.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shake-robo.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shake-robo.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shake-white.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shake-white.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shake-white.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shake-white.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shaker.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shaker.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shaker.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shaker.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shinyflask.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shinyflask.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shinyflask.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shinyflask.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/shotglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shotglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/shotglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/shotglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/silencerglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/silencerglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/silencerglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/silencerglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/singulo.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/singulo.rsi/meta.json index 5411bd8b8d..7b4056ec68 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/singulo.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/singulo.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/snowwhite.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/snowwhite.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/snowwhite.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/snowwhite.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/sodawater.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/sodawater.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/sodawater.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/sodawater.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/soy_latte.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/soy_latte.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/soy_latte.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/soy_latte.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/soymilk.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/soymilk.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/soymilk.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/soymilk.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/space-up_bottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space-up_bottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space-up_bottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space-up_bottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/space-up_glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space-up_glass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space-up_glass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space-up_glass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_bottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_bottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_bottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_bottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_glass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_glass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind_glass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/syndicatebomb.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/syndicatebomb.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/syndicatebomb.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/syndicatebomb.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/teacup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/teacup.rsi/meta.json index ccca6b00a1..80ac521b6f 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/teacup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/teacup.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/teaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/teaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/teaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/teaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/teapot.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/teapot.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/teapot.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/teapot.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/tequillabottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/tequillabottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/tequillabottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/tequillabottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/tequillaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/tequillaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/tequillaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/tequillaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/tequillasunriseglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/tequillasunriseglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/tequillasunriseglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/tequillasunriseglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko_glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko_glass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko_glass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko_glass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/threemileislandglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/threemileislandglass.rsi/meta.json index eac9b60db8..293f7f97b0 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/threemileislandglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/threemileislandglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/tomatojuice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/tomatojuice.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/tomatojuice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/tomatojuice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/tonic.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/tonic.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/tonic.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/tonic.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Drinks/toxinsspecialglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/toxinsspecialglass.rsi/meta.json index 1981a2e479..63e49d4dd4 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/toxinsspecialglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/toxinsspecialglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[2.0, 2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[2.0, 2.0, 2.0, 2.0, 2.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/vacuumflask.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/vacuumflask.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/vacuumflask.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/vacuumflask.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/vermouthbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/vermouthbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/vermouthbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/vermouthbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/vermouthglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/vermouthglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/vermouthglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/vermouthglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkabottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/vodkabottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/vodkabottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/vodkabottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/water.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/water.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/water.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/water.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/water_cup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/water_cup.rsi/meta.json index ccca6b00a1..80ac521b6f 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/water_cup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/water_cup.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [ { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/waterbottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/waterbottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/waterbottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/waterbottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/watermelon.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/watermelon.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/watermelon.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/watermelon.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeybottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiskeybottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/whiskeybottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/whiskeybottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeycolaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiskeycolaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/whiskeycolaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/whiskeycolaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeyglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiskeyglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/whiskeyglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/whiskeyglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass2.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass2.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass2.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/whiskeysodaglass2.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiterussianglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiterussianglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/whiterussianglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/whiterussianglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/winebottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/winebottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/winebottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/winebottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/wineglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/wineglass.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/wineglass.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/wineglass.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig.png b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig.png new file mode 100644 index 0000000000..845968ae9f Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig_empty.png b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig_empty.png new file mode 100644 index 0000000000..42abce58e0 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig_empty.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig_open.png b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig_open.png new file mode 100644 index 0000000000..45bf3c6cc0 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/cig_open.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/meta.json b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/meta.json new file mode 100644 index 0000000000..7837a45f44 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Fancy/cigarettes.rsi/meta.json @@ -0,0 +1,20 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bfc9c6ba8126ee8c41564d68c4bfb9ce37faa8f8", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "cig" + }, + { + "name": "cig_empty" + }, + { + "name": "cig_open" + } + ] +} diff --git a/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/burnt-icon.png b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/burnt-icon.png new file mode 100644 index 0000000000..ac2321b995 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/burnt-icon.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/icon.png b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/icon.png new file mode 100644 index 0000000000..03c18368f8 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/lit-equipped-MASK.png b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/lit-equipped-MASK.png new file mode 100644 index 0000000000..3c5cad56f2 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/lit-equipped-MASK.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/lit-icon.png b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/lit-icon.png new file mode 100644 index 0000000000..4012b0cca8 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/lit-icon.png differ diff --git a/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/meta.json b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/meta.json new file mode 100644 index 0000000000..fe7f2d1c1c --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/meta.json @@ -0,0 +1,82 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bfc9c6ba8126ee8c41564d68c4bfb9ce37faa8f8", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "unlit-equipped-MASK", + "directions": 4 + }, + { + "name": "lit-equipped-MASK", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "burnt-icon" + }, + { + "name": "icon" + }, + { + "name": "lit-icon", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/unlit-equipped-MASK.png b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/unlit-equipped-MASK.png new file mode 100644 index 0000000000..7524035609 Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Fancy/mask_cig.rsi/unlit-equipped-MASK.png differ diff --git a/Resources/Textures/Objects/Consumable/Food/4no_raisins.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/4no_raisins.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/4no_raisins.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/4no_raisins.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/aesirsalad.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/aesirsalad.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/aesirsalad.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/aesirsalad.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/amanita_pie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/amanita_pie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/amanita_pie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/amanita_pie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/amanitajelly.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/amanitajelly.rsi/meta.json index 37940c42b9..bd2d498291 100644 --- a/Resources/Textures/Objects/Consumable/Food/amanitajelly.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/amanitajelly.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[50.0, 1.0, 1.0, 1.0, 1.0, 10.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "delays": [[50.0, 1.0, 1.0, 1.0, 1.0, 10.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/ambrosiavulgariscrushed.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/ambrosiavulgariscrushed.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/ambrosiavulgariscrushed.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/ambrosiavulgariscrushed.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/apple_cake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/apple_cake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/apple_cake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/apple_cake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/apple_cake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/apple_cake.rsi/meta.json similarity index 83% rename from Resources/Textures/Objects/Consumable/FoodContainers/apple_cake.rsi/meta.json rename to Resources/Textures/Objects/Consumable/Food/apple_cake.rsi/meta.json index e76eafc94d..2d0d580e61 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/apple_cake.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/apple_cake.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/apple_cake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/apple_cake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/apple_cake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/apple_cake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/apple_pie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/apple_pie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/apple_pie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/apple_pie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/bacon.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/bacon.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/bacon.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/bacon.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/badrecipe.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/badrecipe.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/badrecipe.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/badrecipe.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/baguette.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/baguette.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/baguette.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/baguette.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/bananabread.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/bananabread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/bananabread.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/bananabread.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/birthdaycake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/bananabread.rsi/meta.json similarity index 80% rename from Resources/Textures/Objects/Consumable/FoodContainers/birthdaycake.rsi/meta.json rename to Resources/Textures/Objects/Consumable/Food/bananabread.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/birthdaycake.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/bananabread.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/bananabreadslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/bananabreadslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/bananabreadslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/bananabreadslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/bearmeat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/bearmeat.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/bearmeat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/bearmeat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/beetsoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/beetsoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/beetsoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/beetsoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/berryclafoutis.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/berryclafoutis.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/berryclafoutis.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/berryclafoutis.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/bigbiteburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/bigbiteburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/bigbiteburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/bigbiteburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/birthday_cake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/birthday_cake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/birthday_cake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/birthday_cake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/birthdaycake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/birthdaycake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/birthdaycake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/birthdaycake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/braincake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/birthdaycake.rsi/meta.json similarity index 80% rename from Resources/Textures/Objects/Consumable/FoodContainers/braincake.rsi/meta.json rename to Resources/Textures/Objects/Consumable/Food/birthdaycake.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/braincake.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/birthdaycake.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/boiledrice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/boiledrice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/boiledrice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/boiledrice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/boiledrorocore.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/boiledrorocore.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/boiledrorocore.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/boiledrorocore.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/brain_cake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/brain_cake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/brain_cake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/brain_cake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/brainburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/brainburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/brainburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/brainburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/braincake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/braincake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/braincake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/braincake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/bread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/braincake.rsi/meta.json similarity index 80% rename from Resources/Textures/Objects/Consumable/FoodContainers/bread.rsi/meta.json rename to Resources/Textures/Objects/Consumable/Food/braincake.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/bread.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/braincake.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/bread.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/bread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/bread.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/bread.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/bananabread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/bread.rsi/meta.json similarity index 80% rename from Resources/Textures/Objects/Consumable/FoodContainers/bananabread.rsi/meta.json rename to Resources/Textures/Objects/Consumable/Food/bread.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/bananabread.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/bread.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/braincakeslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/braincakeslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/braincakeslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/braincakeslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/breadslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/burger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/burger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/burger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/burger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/candiedapple.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/candiedapple.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/candiedapple.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/candiedapple.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/candy.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/candy.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/candy.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/candy.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/candy_corn.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/candy_corn.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/candy_corn.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/candy_corn.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/carrotcake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/carrotcake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/carrotcake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/carrotcake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/carrotcake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/carrotcake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/carrotcake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/carrotcake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/carrotcake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/carrotcake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/carrotcake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/carrotfries.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/carrotfries.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/carrotfries.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/carrotfries.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/chawanmushi.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/chawanmushi.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/chawanmushi.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/chawanmushi.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cheeseburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheeseburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/cheeseburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cheeseburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/cheesecake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/cheesecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/cheesecake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/cheesecake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/cheesecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheesecake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/cheesecake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cheesecake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheesecake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cheesecake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cheesecake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cheesewedge.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheesewedge.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cheesewedge.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cheesewedge.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/cheesewheel.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/cheesewheel.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/cheesewheel.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/cheesewheel.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/cheesewheel.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheesewheel.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/cheesewheel.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cheesie_honkers.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheesie_honkers.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cheesie_honkers.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cheesie_honkers.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cheesyfries.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cheesyfries.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cheesyfries.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cheesyfries.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cherrypie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cherrypie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cherrypie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cherrypie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/chips.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/chips.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/chips.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/chips.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/chocolatebar.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/chocolatebar.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/chocolatebar.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/chocolatebar.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/chocolatecake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/chocolatecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/chocolatecake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/chocolatecake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/chocolatecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/chocolatecake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/chocolatecake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/chocolatecake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/chocolatecake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/chocolatecake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/chocolatecake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/chocolateegg.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/chocolateegg.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/chocolateegg.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/chocolateegg.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/clownburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/clownburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/clownburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/clownburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/clownstears.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/clownstears.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/clownstears.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/clownstears.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cocoa.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cocoa.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cocoa.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cocoa.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/coldchili.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/coldchili.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/coldchili.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/coldchili.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/coldsauce.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/coldsauce.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/coldsauce.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/coldsauce.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cookie!!!.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cookie!!!.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cookie!!!.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cookie!!!.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cracker.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cracker.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cracker.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cracker.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/creamcheesebread.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/creamcheesebread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/creamcheesebread.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/creamcheesebread.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/creamcheesebread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/creamcheesebread.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/creamcheesebread.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/creamcheesebreadslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/creamcheesebreadslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/creamcheesebreadslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/creamcheesebreadslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/cubancarp.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/cubancarp.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/cubancarp.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/cubancarp.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/dionaroast.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/dionaroast.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/dionaroast.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/dionaroast.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/donkpocket.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/donkpocket.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/donkpocket.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/donkpocket.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/donut1.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/donut1.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/donut1.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/donut1.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/donut2.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/donut2.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/donut2.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/donut2.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-blue.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-blue.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-blue.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-blue.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-green.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-green.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-green.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-green.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-mime.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-mime.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-mime.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-mime.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-orange.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-orange.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-orange.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-orange.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-purple.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-purple.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-purple.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-purple.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-rainbow.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-rainbow.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-rainbow.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-rainbow.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-red.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-red.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-red.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-red.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg-yellow.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg-yellow.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg-yellow.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg-yellow.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/egg.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/egg.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/egg.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/egg.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/eggplantparm.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/eggplantparm.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/eggplantparm.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/eggplantparm.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/emptycondiment.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/emptycondiment.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/emptycondiment.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/emptycondiment.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/enchiladas.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/enchiladas.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/enchiladas.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/enchiladas.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/enchiladasold.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/enchiladasold.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/enchiladasold.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/enchiladasold.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/enzyme.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/enzyme.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/enzyme.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/enzyme.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/fishandchips.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/fishandchips.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/fishandchips.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/fishandchips.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/fishburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/fishburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/fishburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/fishburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/fishfillet.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/fishfillet.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/fishfillet.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/fishfillet.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/fishfingers.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/fishfingers.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/fishfingers.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/fishfingers.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/flour.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/flour.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/flour.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/flour.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/fortune_cookie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/fortune_cookie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/fortune_cookie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/fortune_cookie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/friedegg.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/friedegg.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/friedegg.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/friedegg.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/fries.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/fries.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/fries.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/fries.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/gappletart.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/gappletart.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/gappletart.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/gappletart.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/hburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/hburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/hburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/hburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/herbsalad.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/herbsalad.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/herbsalad.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/herbsalad.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/honeycomb.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/honeycomb.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/honeycomb.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/honeycomb.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/hotchili.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/hotchili.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/hotchili.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/hotchili.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/hotdog.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/hotdog.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/hotdog.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/hotdog.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/hotsauce.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/hotsauce.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/hotsauce.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/hotsauce.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/hugemushroomslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/hugemushroomslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/hugemushroomslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/hugemushroomslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/jdonut1.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/jdonut1.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/jdonut1.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/jdonut1.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/jdonut2.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/jdonut2.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/jdonut2.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/jdonut2.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/jellyburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/jellyburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/jellyburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/jellyburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/jellysandwich.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/jellysandwich.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/jellysandwich.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/jellysandwich.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/jellytoast.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/jellytoast.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/jellytoast.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/jellytoast.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/kabob.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/kabob.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/kabob.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/kabob.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/ketchup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/ketchup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/ketchup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/ketchup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/ketchupold.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/ketchupold.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/ketchupold.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/ketchupold.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/lemoncake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/lemoncake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/lemoncake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/lemoncake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/lemoncake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/lemoncake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/lemoncake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/lemoncake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/lemoncake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/lemoncake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/lemoncake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/limecake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/limecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/limecake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/limecake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/limecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/limecake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/limecake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/limecake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/limecake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/limecake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/limecake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/liquidfood.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/liquidfood.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/liquidfood.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/liquidfood.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/loadedbakedpotato.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/loadedbakedpotato.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/loadedbakedpotato.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/loadedbakedpotato.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meat.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meat_pizza_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meat_pizza_slice.rsi/meta.json index e76eafc94d..2d0d580e61 100644 --- a/Resources/Textures/Objects/Consumable/Food/meat_pizza_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meat_pizza_slice.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meatball.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatball.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatball.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatball.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/meatballsoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatballsoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatballsoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatballsoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meatballspaghetti.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatballspaghetti.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatballspaghetti.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatballspaghetti.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/meatbread.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/meatbread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/meatbread.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/meatbread.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/meatbread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatbread.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/meatbread.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meatbreadslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatbreadslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatbreadslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatbreadslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meatpie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatpie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatpie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatpie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/meatpizza.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/meatpizza.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/meatpizza.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/meatpizza.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/meatpizza.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatpizza.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/meatpizza.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meatpizzaslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatpizzaslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatpizzaslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatpizzaslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/meatsteak.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/meatsteak.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/meatsteak.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/meatsteak.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/memoryleek.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/memoryleek.rsi/meta.json index bbdf977682..108239cfdc 100644 --- a/Resources/Textures/Objects/Consumable/Food/memoryleek.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/memoryleek.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "memoryLeek", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Consumable/Food/milkape.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/milkape.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/milkape.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/milkape.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/milosoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/milosoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/milosoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/milosoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/mimeburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mimeburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/mimeburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mimeburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/mint.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mint.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/mint.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mint.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/mixedcondiments.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mixedcondiments.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/mixedcondiments.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mixedcondiments.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/monkeycube.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/monkeycube.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/monkeycube.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/monkeycube.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/monkeysdelight.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/monkeysdelight.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/monkeysdelight.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/monkeysdelight.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/mtearp.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mtearp.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/mtearp.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mtearp.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/muffin.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/muffin.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/muffin.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/muffin.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/mushroompizza.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/mushroompizza.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/mushroompizza.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/mushroompizza.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/mushroompizza.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mushroompizza.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/mushroompizza.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/mushroompizzaslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mushroompizzaslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/mushroompizzaslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mushroompizzaslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/mushroomsoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mushroomsoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/mushroomsoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mushroomsoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/mysterysoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/mysterysoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/mysterysoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/mysterysoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/nettlesoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/nettlesoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/nettlesoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/nettlesoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/oliveoil.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/oliveoil.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/oliveoil.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/oliveoil.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/omelette.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/omelette.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/omelette.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/omelette.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/orangecake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/orangecake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/orangecake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/orangecake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/orangecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/orangecake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/orangecake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/orangecake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/orangecake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/orangecake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/orangecake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/pastatomato.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/pastatomato.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/pastatomato.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/pastatomato.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/peppermillsmall.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/peppermillsmall.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/peppermillsmall.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/peppermillsmall.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/phelmbiscuit.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/phelmbiscuit.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/phelmbiscuit.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/phelmbiscuit.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/pie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/pie.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/pie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/pie.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pizzamargherita.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/pizzamargherita.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/pizzamargherita.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/pizzamargherita.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/pizzamargherita.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/pizzamargherita.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/pizzamargherita.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/pizzamargheritaslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/pizzamargheritaslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/pizzamargheritaslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/pizzamargheritaslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/plaincake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/plaincake.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/plaincake.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/plaincake.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/plaincake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/plaincake.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/plaincake.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/plaincake_slice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/plaincake_slice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/plaincake_slice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/plaincake_slice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/plump_pie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/plump_pie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/plump_pie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/plump_pie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/popcorn.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/popcorn.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/popcorn.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/popcorn.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/poppypretzel.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/poppypretzel.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/poppypretzel.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/poppypretzel.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/inhand-left.png b/Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/inhand-left.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/inhand-left.png rename to Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/inhand-left.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/inhand-right.png b/Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/inhand-right.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/inhand-right.png rename to Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/inhand-right.png diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/meta.json similarity index 94% rename from Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/meta.json rename to Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/pumpkinpie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/pumpkinpie.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/pumpkinpieslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/pumpkinpieslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/pumpkinpieslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/pumpkinpieslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/rice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/rice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/rice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/rice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/roburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/roburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/roburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/roburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/rofflewaffles.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/rofflewaffles.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/rofflewaffles.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/rofflewaffles.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/rorosoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/rorosoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/rorosoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/rorosoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/rottenmeat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/rottenmeat.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/rottenmeat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/rottenmeat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/rpudding.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/rpudding.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/rpudding.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/rpudding.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/saltshakersmall.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/saltshakersmall.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/saltshakersmall.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/saltshakersmall.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/sandwich.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sandwich.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/sandwich.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sandwich.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/sandwich_filling.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sandwich_filling.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/sandwich_filling.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sandwich_filling.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/sandwich_top.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sandwich_top.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/sandwich_top.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sandwich_top.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/sausage.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sausage.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/sausage.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sausage.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/shandp.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/shandp.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/shandp.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/shandp.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/skrellsnacks.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/skrellsnacks.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/skrellsnacks.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/skrellsnacks.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/sosjerky.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sosjerky.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/sosjerky.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sosjerky.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/soydope.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/soydope.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/soydope.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/soydope.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/soylent_green.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/soylent_green.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/soylent_green.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/soylent_green.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/soylent_yellow.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/soylent_yellow.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/soylent_yellow.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/soylent_yellow.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/soysauce.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/soysauce.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/soysauce.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/soysauce.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/space_twinkie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/space_twinkie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/space_twinkie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/space_twinkie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/spacylibertyduff.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/spacylibertyduff.rsi/meta.json index 8caffd9102..491b6ae98a 100644 --- a/Resources/Textures/Objects/Consumable/Food/spacylibertyduff.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/spacylibertyduff.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1, "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "delays": [[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/spaghetti.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/spaghetti.rsi/meta.json index e76eafc94d..2d0d580e61 100644 --- a/Resources/Textures/Objects/Consumable/Food/spaghetti.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/spaghetti.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/spaghettiboiled.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/spaghettiboiled.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/spaghettiboiled.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/spaghettiboiled.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/spellburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/spellburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/spellburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/spellburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/spesslaw.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/spesslaw.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/spesslaw.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/spesslaw.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/stew.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/stew.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/stew.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/stew.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/stewedsoymeat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/stewedsoymeat.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/stewedsoymeat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/stewedsoymeat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/stuffing.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/stuffing.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/stuffing.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/stuffing.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/sugar.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sugar.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/sugar.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sugar.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/sugarsmall.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/sugarsmall.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/sugarsmall.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/sugarsmall.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/superbiteburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/superbiteburger.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/superbiteburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/superbiteburger.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/syndi_cakes.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/syndi_cakes.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/syndi_cakes.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/syndi_cakes.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/taco.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/taco.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/taco.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/taco.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/tastybread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tastybread.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/tastybread.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tastybread.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/toastedsandwich.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/toastedsandwich.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/toastedsandwich.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/toastedsandwich.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/tofu.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tofu.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/tofu.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tofu.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/tofubread.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/tofubread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/tofubread.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/tofubread.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/tofubread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tofubread.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/tofubread.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/tofubreadslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tofubreadslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/tofubreadslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tofubreadslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/tofuburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tofuburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/tofuburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tofuburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/tofurkey.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tofurkey.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/tofurkey.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tofurkey.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/tomatomeat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tomatomeat.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/tomatomeat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tomatomeat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/tomatosoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/tomatosoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/tomatosoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/tomatosoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/twobread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/twobread.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/twobread.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/twobread.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/validsalad.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/validsalad.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/validsalad.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/validsalad.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/vegetablepizza.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/vegetablepizza.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/vegetablepizza.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/vegetablepizza.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/vegetablepizza.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/vegetablepizza.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/vegetablepizza.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/vegetablepizzaslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/vegetablepizzaslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/vegetablepizzaslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/vegetablepizzaslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/vegetablesoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/vegetablesoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/vegetablesoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/vegetablesoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/waffles.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/waffles.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/waffles.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/waffles.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/watermelonslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/watermelonslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/watermelonslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/watermelonslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/wingfangchu.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/wingfangchu.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/wingfangchu.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/wingfangchu.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/wishsoup.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/wishsoup.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/wishsoup.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/wishsoup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/xburger.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/xburger.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/Food/xburger.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/xburger.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/Food/xenobreadslice.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/xenobreadslice.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/xenobreadslice.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/xenobreadslice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/xenomeat.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/xenomeat.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/xenomeat.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/xenomeat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/xenomeatbread.rsi/icon.png b/Resources/Textures/Objects/Consumable/Food/xenomeatbread.rsi/icon.png similarity index 100% rename from Resources/Textures/Objects/Consumable/FoodContainers/xenomeatbread.rsi/icon.png rename to Resources/Textures/Objects/Consumable/Food/xenomeatbread.rsi/icon.png diff --git a/Resources/Textures/Objects/Consumable/Food/xenomeatbread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/xenomeatbread.rsi/meta.json new file mode 100644 index 0000000000..b6a9d8c6c4 --- /dev/null +++ b/Resources/Textures/Objects/Consumable/Food/xenomeatbread.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Food/xenomeatpie.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/xenomeatpie.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Food/xenomeatpie.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/xenomeatpie.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/carrotcake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/carrotcake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/carrotcake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/cheesecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/cheesecake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/cheesecake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/cheesewheel.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/cheesewheel.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/cheesewheel.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/chocolatecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/chocolatecake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/chocolatecake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/creamcheesebread.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/creamcheesebread.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/creamcheesebread.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/donutbox.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/donutbox.rsi/meta.json index 431eb37269..3f7bd515bc 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/donutbox.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/donutbox.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "donutbox-0", - "directions": 1 + "name": "donutbox-0" }, { - "name": "donutbox-1", - "directions": 1 + "name": "donutbox-1" }, { - "name": "donutbox-2", - "directions": 1 + "name": "donutbox-2" }, { - "name": "donutbox-3", - "directions": 1 + "name": "donutbox-3" }, { - "name": "donutbox-4", - "directions": 1 + "name": "donutbox-4" }, { - "name": "donutbox-5", - "directions": 1 + "name": "donutbox-5" }, { - "name": "donutbox-6", - "directions": 1 + "name": "donutbox-6" }, ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/eggbox.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/eggbox.rsi/meta.json index d8967565eb..8afe9a2cdf 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/eggbox.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/eggbox.rsi/meta.json @@ -8,56 +8,43 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "eggbox-0", - "directions": 1 + "name": "eggbox-0" }, { - "name": "eggbox-1", - "directions": 1 + "name": "eggbox-1" }, { - "name": "eggbox-2", - "directions": 1 + "name": "eggbox-2" }, { - "name": "eggbox-3", - "directions": 1 + "name": "eggbox-3" }, { - "name": "eggbox-4", - "directions": 1 + "name": "eggbox-4" }, { - "name": "eggbox-5", - "directions": 1 + "name": "eggbox-5" }, { - "name": "eggbox-6", - "directions": 1 + "name": "eggbox-6" }, { - "name": "eggbox-7", - "directions": 1 + "name": "eggbox-7" }, { - "name": "eggbox-8", - "directions": 1 + "name": "eggbox-8" }, { - "name": "eggbox-9", - "directions": 1 + "name": "eggbox-9" }, { - "name": "eggbox-10", - "directions": 1 + "name": "eggbox-10" }, { - "name": "eggbox-11", - "directions": 1 + "name": "eggbox-11" }, { - "name": "eggbox-12", - "directions": 1 + "name": "eggbox-12" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/eggbox_shut.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/eggbox_shut.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/eggbox_shut.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/eggbox_shut.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/lemoncake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/lemoncake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/lemoncake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/limecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/limecake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/limecake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/meatbread.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/meatbread.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/meatbread.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/meatpizza.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/meatpizza.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/meatpizza.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubebox.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubebox.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubebox.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubebox.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubewrap.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubewrap.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubewrap.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/monkeycubewrap.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/mushroompizza.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/mushroompizza.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/mushroompizza.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/orangecake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/orangecake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/orangecake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox.rsi/meta.json index 1c7849ada7..6b3193ec36 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox_tag.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox_tag.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox_tag.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/pizzabox_tag.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pizzaboxstack.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/pizzaboxstack.rsi/meta.json index 4c28932827..c4711e62ba 100644 --- a/Resources/Textures/Objects/Consumable/FoodContainers/pizzaboxstack.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/FoodContainers/pizzaboxstack.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "pizzaboxstack-0", - "directions": 1 + "name": "pizzaboxstack-0" }, { - "name": "pizzaboxstack-1", - "directions": 1 + "name": "pizzaboxstack-1" }, { - "name": "pizzaboxstack-2", - "directions": 1 + "name": "pizzaboxstack-2" }, { - "name": "pizzaboxstack-3", - "directions": 1 + "name": "pizzaboxstack-3" }, { - "name": "pizzaboxstack-4", - "directions": 1 + "name": "pizzaboxstack-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/pizzamargherita.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/pizzamargherita.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/pizzamargherita.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/plaincake.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/plaincake.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/plaincake.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/tofubread.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/tofubread.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/tofubread.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/vegetablepizza.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/vegetablepizza.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/vegetablepizza.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/FoodContainers/xenomeatbread.rsi/meta.json b/Resources/Textures/Objects/Consumable/FoodContainers/xenomeatbread.rsi/meta.json deleted file mode 100644 index 8aa4c1e799..0000000000 --- a/Resources/Textures/Objects/Consumable/FoodContainers/xenomeatbread.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/4no_raisins.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/4no_raisins.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/4no_raisins.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/4no_raisins.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/ash.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/ash.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/ash.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/ash.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/candy.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/candy.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/candy.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/candy.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/cheesie_honkers.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/cheesie_honkers.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/cheesie_honkers.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/cheesie_honkers.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/chips.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/chips.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/chips.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/chips.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/corncob.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/corncob.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/corncob.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/corncob.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/liquidfood.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/liquidfood.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/liquidfood.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/liquidfood.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/pistachios_pack.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/pistachios_pack.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/pistachios_pack.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/pistachios_pack.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/pizzabox_messy.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/pizzabox_messy.rsi/meta.json index 8aa4c1e799..b6a9d8c6c4 100644 --- a/Resources/Textures/Objects/Consumable/Trash/pizzabox_messy.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/pizzabox_messy.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/9c980cb9bc84d07b1c210c5447798af525185f80/icons/obj/food.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/plasticbag.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/plasticbag.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/plasticbag.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/plasticbag.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/plate.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/plate.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/plate.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/plate.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/popcorn.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/popcorn.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/popcorn.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/popcorn.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/semki_pack.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/semki_pack.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/semki_pack.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/semki_pack.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/snack_bowl.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/snack_bowl.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/snack_bowl.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/snack_bowl.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/sosjerky.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/sosjerky.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/sosjerky.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/sosjerky.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/syndi_cakes.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/syndi_cakes.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/syndi_cakes.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/syndi_cakes.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/tastybread.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/tastybread.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/tastybread.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/tastybread.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/trashbag.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/trashbag.rsi/meta.json index 5c4a8de520..4c99ff9d2c 100644 --- a/Resources/Textures/Objects/Consumable/Trash/trashbag.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/trashbag.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "icon-0", - "directions": 1 + "name": "icon-0" }, { - "name": "icon-1", - "directions": 1 + "name": "icon-1" }, { - "name": "icon-2", - "directions": 1 + "name": "icon-2" }, { - "name": "icon-3", - "directions": 1 + "name": "icon-3" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/tray.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/tray.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/tray.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/tray.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Trash/waffles.rsi/meta.json b/Resources/Textures/Objects/Consumable/Trash/waffles.rsi/meta.json index 1832695588..1700d4ab4a 100644 --- a/Resources/Textures/Objects/Consumable/Trash/waffles.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Trash/waffles.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/trash.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/absinthebottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/absinthebottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/absinthebottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/absinthebottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/alco-clear.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/alco-clear.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/alco-clear.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/alco-clear.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/alebottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/alebottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/alebottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/alebottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/beer_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/beer_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/beer_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/beer_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/broken_bottle.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/broken_bottle.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/broken_bottle.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/broken_bottle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/cognacbottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/cognacbottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/cognacbottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/cognacbottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/ginbottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/ginbottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/ginbottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/ginbottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/glass_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/glass_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/glass_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/glass_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/goldschlagerbottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/goldschlagerbottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/goldschlagerbottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/goldschlagerbottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/kahluabottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/kahluabottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/kahluabottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/kahluabottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/ntcahors_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/ntcahors_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/ntcahors_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/ntcahors_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/patronbottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/patronbottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/patronbottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/patronbottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/pwinebottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/pwinebottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/pwinebottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/pwinebottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/rumbottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/rumbottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/rumbottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/rumbottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/tequillabottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/tequillabottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/tequillabottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/tequillabottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/vermouthbottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/vermouthbottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/vermouthbottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/vermouthbottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/vodkabottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/vodkabottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/vodkabottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/vodkabottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/whiskeybottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/whiskeybottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/whiskeybottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/whiskeybottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/TrashDrinks/winebottle_empty.rsi/meta.json b/Resources/Textures/Objects/Consumable/TrashDrinks/winebottle_empty.rsi/meta.json index a2bca69076..db0ac608ed 100644 --- a/Resources/Textures/Objects/Consumable/TrashDrinks/winebottle_empty.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/TrashDrinks/winebottle_empty.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "directions": 1}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Devices/communication.rsi/meta.json b/Resources/Textures/Objects/Devices/communication.rsi/meta.json index 433f73954e..9f52d1f62d 100644 --- a/Resources/Textures/Objects/Devices/communication.rsi/meta.json +++ b/Resources/Textures/Objects/Devices/communication.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "beacon", - "directions": 1, "delays": [ [ 1.8, @@ -19,7 +18,6 @@ }, { "name": "beacon_dead", - "directions": 1, "delays": [ [ 1 @@ -28,7 +26,6 @@ }, { "name": "signaller", - "directions": 1, "delays": [ [ 1 @@ -73,7 +70,6 @@ }, { "name": "walkietalkie", - "directions": 1, "delays": [ [ 1 @@ -82,7 +78,6 @@ }, { "name": "walkietalkie-off", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Devices/pda.rsi/meta.json b/Resources/Textures/Objects/Devices/pda.rsi/meta.json index c8bab2621c..bea96b2170 100644 --- a/Resources/Textures/Objects/Devices/pda.rsi/meta.json +++ b/Resources/Textures/Objects/Devices/pda.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "id_overlay", - "directions": 1, "delays": [ [ 1 @@ -22,7 +21,6 @@ }, { "name": "insert_overlay", - "directions": 1, "delays": [ [ 1 @@ -31,7 +29,6 @@ }, { "name": "light_overlay", - "directions": 1, "delays": [ [ 1 @@ -40,7 +37,6 @@ }, { "name": "pai_off_overlay", - "directions": 1, "delays": [ [ 1 @@ -49,7 +45,6 @@ }, { "name": "pai_overlay", - "directions": 1, "delays": [ [ 1 @@ -58,7 +53,6 @@ }, { "name": "pda", - "directions": 1, "delays": [ [ 1 @@ -67,7 +61,6 @@ }, { "name": "pda-atmos", - "directions": 1, "delays": [ [ 1 @@ -76,7 +69,6 @@ }, { "name": "pda-bartender", - "directions": 1, "delays": [ [ 1 @@ -85,7 +77,6 @@ }, { "name": "pda-captain", - "directions": 1, "delays": [ [ 1 @@ -94,7 +85,6 @@ }, { "name": "pda-cargo", - "directions": 1, "delays": [ [ 1 @@ -103,7 +93,6 @@ }, { "name": "pda-ce", - "directions": 1, "delays": [ [ 1 @@ -112,7 +101,6 @@ }, { "name": "pda-chaplain", - "directions": 1, "delays": [ [ 1 @@ -121,7 +109,6 @@ }, { "name": "pda-chemistry", - "directions": 1, "delays": [ [ 1 @@ -130,7 +117,6 @@ }, { "name": "pda-clear", - "directions": 1, "delays": [ [ 1 @@ -139,7 +125,6 @@ }, { "name": "pda-clown", - "directions": 1, "delays": [ [ 1 @@ -148,7 +133,6 @@ }, { "name": "pda-cmo", - "directions": 1, "delays": [ [ 1 @@ -157,7 +141,6 @@ }, { "name": "pda-cook", - "directions": 1, "delays": [ [ 1 @@ -166,7 +149,6 @@ }, { "name": "pda-detective", - "directions": 1, "delays": [ [ 1 @@ -175,7 +157,6 @@ }, { "name": "pda-engineer", - "directions": 1, "delays": [ [ 1 @@ -184,7 +165,6 @@ }, { "name": "pda-genetics", - "directions": 1, "delays": [ [ 1 @@ -193,7 +173,6 @@ }, { "name": "pda-hop", - "directions": 1, "delays": [ [ 1 @@ -202,7 +181,6 @@ }, { "name": "pda-hos", - "directions": 1, "delays": [ [ 1 @@ -211,7 +189,6 @@ }, { "name": "pda-hydro", - "directions": 1, "delays": [ [ 1 @@ -220,7 +197,6 @@ }, { "name": "pda-janitor", - "directions": 1, "delays": [ [ 1 @@ -229,7 +205,6 @@ }, { "name": "pda-lawyer", - "directions": 1, "delays": [ [ 1 @@ -238,7 +213,6 @@ }, { "name": "pda-library", - "directions": 1, "delays": [ [ 0.3, @@ -250,7 +224,6 @@ }, { "name": "pda-medical", - "directions": 1, "delays": [ [ 1 @@ -259,7 +232,6 @@ }, { "name": "pda-mime", - "directions": 1, "delays": [ [ 1 @@ -268,7 +240,6 @@ }, { "name": "pda-miner", - "directions": 1, "delays": [ [ 1 @@ -277,7 +248,6 @@ }, { "name": "pda-qm", - "directions": 1, "delays": [ [ 1 @@ -286,7 +256,6 @@ }, { "name": "pda-r", - "directions": 1, "delays": [ [ 0.8, @@ -296,7 +265,6 @@ }, { "name": "pda-r-library", - "directions": 1, "delays": [ [ 0.8, @@ -306,7 +274,6 @@ }, { "name": "pda-rd", - "directions": 1, "delays": [ [ 1 @@ -315,7 +282,6 @@ }, { "name": "pda-roboticist", - "directions": 1, "delays": [ [ 1 @@ -324,7 +290,6 @@ }, { "name": "pda-science", - "directions": 1, "delays": [ [ 1 @@ -333,7 +298,6 @@ }, { "name": "pda-security", - "directions": 1, "delays": [ [ 1 @@ -342,7 +306,6 @@ }, { "name": "pda-syndi", - "directions": 1, "delays": [ [ 1 @@ -351,7 +314,6 @@ }, { "name": "pda-virology", - "directions": 1, "delays": [ [ 1 @@ -360,7 +322,6 @@ }, { "name": "pda-warden", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/accordion.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/accordion.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/accordion.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/accordion.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/banjo.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/banjo.rsi/meta.json index 4e2fb6785c..6c2e95c7e5 100644 --- a/Resources/Textures/Objects/Fun/Instruments/banjo.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/banjo.rsi/meta.json @@ -8,49 +8,15 @@ "copyright": "https://github.com/vgstation-coders/vgstation13 at 8d9c91e19cb52713c7f7f1804c2b6f7203f8d331", "states": [ { - "name": "icon", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "icon" }, { "name": "inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 } ] - } \ No newline at end of file + } diff --git a/Resources/Textures/Objects/Fun/Instruments/bike_horn.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/bike_horn.rsi/meta.json index 372b211e3f..89e345e751 100644 --- a/Resources/Textures/Objects/Fun/Instruments/bike_horn.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/bike_horn.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/eguitar.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/eguitar.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/eguitar.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/eguitar.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/glockenspiel.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/glockenspiel.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/glockenspiel.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/glockenspiel.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/guitar.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/guitar.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/guitar.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/guitar.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/h_synthesizer.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/h_synthesizer.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/h_synthesizer.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/h_synthesizer.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/harmonica.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/harmonica.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/harmonica.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/harmonica.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/otherinstruments.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/otherinstruments.rsi/meta.json index 649f3a5e4c..7cf7f66205 100644 --- a/Resources/Textures/Objects/Fun/Instruments/otherinstruments.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/otherinstruments.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bike_horn", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "drum", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "trumpet", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "drum_bongo", - "directions": 1, "delays": [ [ 1 @@ -45,7 +41,6 @@ }, { "name": "drum_makeshift", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/recorder.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/recorder.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/recorder.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/recorder.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/saxophone.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/saxophone.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/saxophone.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/saxophone.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/trombone.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/trombone.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/trombone.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/trombone.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/Instruments/violin.rsi/meta.json b/Resources/Textures/Objects/Fun/Instruments/violin.rsi/meta.json index b4eb2638bb..2374ac813f 100644 --- a/Resources/Textures/Objects/Fun/Instruments/violin.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/Instruments/violin.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/bikehorn.rsi/meta.json b/Resources/Textures/Objects/Fun/bikehorn.rsi/meta.json index f6d7eebf1b..d414b626c2 100644 --- a/Resources/Textures/Objects/Fun/bikehorn.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/bikehorn.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Fun/caps.rsi/meta.json b/Resources/Textures/Objects/Fun/caps.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Fun/caps.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/caps.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Fun/dice.rsi/meta.json b/Resources/Textures/Objects/Fun/dice.rsi/meta.json index f94f9afadb..7b23c3e5f6 100644 --- a/Resources/Textures/Objects/Fun/dice.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/dice.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "d10010", "directions": 1, "delays": [[1.0]]}, {"name": "d100100", "directions": 1, "delays": [[1.0]]}, {"name": "d10020", "directions": 1, "delays": [[1.0]]}, {"name": "d10030", "directions": 1, "delays": [[1.0]]}, {"name": "d10040", "directions": 1, "delays": [[1.0]]}, {"name": "d10050", "directions": 1, "delays": [[1.0]]}, {"name": "d10060", "directions": 1, "delays": [[1.0]]}, {"name": "d10070", "directions": 1, "delays": [[1.0]]}, {"name": "d10080", "directions": 1, "delays": [[1.0]]}, {"name": "d10090", "directions": 1, "delays": [[1.0]]}, {"name": "d101", "directions": 1, "delays": [[1.0]]}, {"name": "d1010", "directions": 1, "delays": [[1.0]]}, {"name": "d102", "directions": 1, "delays": [[1.0]]}, {"name": "d103", "directions": 1, "delays": [[1.0]]}, {"name": "d104", "directions": 1, "delays": [[1.0]]}, {"name": "d105", "directions": 1, "delays": [[1.0]]}, {"name": "d106", "directions": 1, "delays": [[1.0]]}, {"name": "d107", "directions": 1, "delays": [[1.0]]}, {"name": "d108", "directions": 1, "delays": [[1.0]]}, {"name": "d109", "directions": 1, "delays": [[1.0]]}, {"name": "d121", "directions": 1, "delays": [[1.0]]}, {"name": "d1210", "directions": 1, "delays": [[1.0]]}, {"name": "d1211", "directions": 1, "delays": [[1.0]]}, {"name": "d1212", "directions": 1, "delays": [[1.0]]}, {"name": "d122", "directions": 1, "delays": [[1.0]]}, {"name": "d123", "directions": 1, "delays": [[1.0]]}, {"name": "d124", "directions": 1, "delays": [[1.0]]}, {"name": "d125", "directions": 1, "delays": [[1.0]]}, {"name": "d126", "directions": 1, "delays": [[1.0]]}, {"name": "d127", "directions": 1, "delays": [[1.0]]}, {"name": "d128", "directions": 1, "delays": [[1.0]]}, {"name": "d129", "directions": 1, "delays": [[1.0]]}, {"name": "d201", "directions": 1, "delays": [[1.0]]}, {"name": "d2010", "directions": 1, "delays": [[1.0]]}, {"name": "d2011", "directions": 1, "delays": [[1.0]]}, {"name": "d2012", "directions": 1, "delays": [[1.0]]}, {"name": "d2013", "directions": 1, "delays": [[1.0]]}, {"name": "d2014", "directions": 1, "delays": [[1.0]]}, {"name": "d2015", "directions": 1, "delays": [[1.0]]}, {"name": "d2016", "directions": 1, "delays": [[1.0]]}, {"name": "d2017", "directions": 1, "delays": [[1.0]]}, {"name": "d2018", "directions": 1, "delays": [[1.0]]}, {"name": "d2019", "directions": 1, "delays": [[1.0]]}, {"name": "d202", "directions": 1, "delays": [[1.0]]}, {"name": "d2020", "directions": 1, "delays": [[1.0]]}, {"name": "d203", "directions": 1, "delays": [[1.0]]}, {"name": "d204", "directions": 1, "delays": [[1.0]]}, {"name": "d205", "directions": 1, "delays": [[1.0]]}, {"name": "d206", "directions": 1, "delays": [[1.0]]}, {"name": "d207", "directions": 1, "delays": [[1.0]]}, {"name": "d208", "directions": 1, "delays": [[1.0]]}, {"name": "d209", "directions": 1, "delays": [[1.0]]}, {"name": "d41", "directions": 1, "delays": [[1.0]]}, {"name": "d42", "directions": 1, "delays": [[1.0]]}, {"name": "d43", "directions": 1, "delays": [[1.0]]}, {"name": "d44", "directions": 1, "delays": [[1.0]]}, {"name": "d61", "directions": 1, "delays": [[1.0]]}, {"name": "d62", "directions": 1, "delays": [[1.0]]}, {"name": "d63", "directions": 1, "delays": [[1.0]]}, {"name": "d64", "directions": 1, "delays": [[1.0]]}, {"name": "d65", "directions": 1, "delays": [[1.0]]}, {"name": "d66", "directions": 1, "delays": [[1.0]]}, {"name": "d81", "directions": 1, "delays": [[1.0]]}, {"name": "d82", "directions": 1, "delays": [[1.0]]}, {"name": "d83", "directions": 1, "delays": [[1.0]]}, {"name": "d84", "directions": 1, "delays": [[1.0]]}, {"name": "d85", "directions": 1, "delays": [[1.0]]}, {"name": "d86", "directions": 1, "delays": [[1.0]]}, {"name": "d87", "directions": 1, "delays": [[1.0]]}, {"name": "d88", "directions": 1, "delays": [[1.0]]}, {"name": "dicebag", "directions": 1, "delays": [[1.0]]}, {"name": "magicdicebag", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "d10010", "delays": [[1.0]]}, {"name": "d100100", "delays": [[1.0]]}, {"name": "d10020", "delays": [[1.0]]}, {"name": "d10030", "delays": [[1.0]]}, {"name": "d10040", "delays": [[1.0]]}, {"name": "d10050", "delays": [[1.0]]}, {"name": "d10060", "delays": [[1.0]]}, {"name": "d10070", "delays": [[1.0]]}, {"name": "d10080", "delays": [[1.0]]}, {"name": "d10090", "delays": [[1.0]]}, {"name": "d101", "delays": [[1.0]]}, {"name": "d1010", "delays": [[1.0]]}, {"name": "d102", "delays": [[1.0]]}, {"name": "d103", "delays": [[1.0]]}, {"name": "d104", "delays": [[1.0]]}, {"name": "d105", "delays": [[1.0]]}, {"name": "d106", "delays": [[1.0]]}, {"name": "d107", "delays": [[1.0]]}, {"name": "d108", "delays": [[1.0]]}, {"name": "d109", "delays": [[1.0]]}, {"name": "d121", "delays": [[1.0]]}, {"name": "d1210", "delays": [[1.0]]}, {"name": "d1211", "delays": [[1.0]]}, {"name": "d1212", "delays": [[1.0]]}, {"name": "d122", "delays": [[1.0]]}, {"name": "d123", "delays": [[1.0]]}, {"name": "d124", "delays": [[1.0]]}, {"name": "d125", "delays": [[1.0]]}, {"name": "d126", "delays": [[1.0]]}, {"name": "d127", "delays": [[1.0]]}, {"name": "d128", "delays": [[1.0]]}, {"name": "d129", "delays": [[1.0]]}, {"name": "d201", "delays": [[1.0]]}, {"name": "d2010", "delays": [[1.0]]}, {"name": "d2011", "delays": [[1.0]]}, {"name": "d2012", "delays": [[1.0]]}, {"name": "d2013", "delays": [[1.0]]}, {"name": "d2014", "delays": [[1.0]]}, {"name": "d2015", "delays": [[1.0]]}, {"name": "d2016", "delays": [[1.0]]}, {"name": "d2017", "delays": [[1.0]]}, {"name": "d2018", "delays": [[1.0]]}, {"name": "d2019", "delays": [[1.0]]}, {"name": "d202", "delays": [[1.0]]}, {"name": "d2020", "delays": [[1.0]]}, {"name": "d203", "delays": [[1.0]]}, {"name": "d204", "delays": [[1.0]]}, {"name": "d205", "delays": [[1.0]]}, {"name": "d206", "delays": [[1.0]]}, {"name": "d207", "delays": [[1.0]]}, {"name": "d208", "delays": [[1.0]]}, {"name": "d209", "delays": [[1.0]]}, {"name": "d41", "delays": [[1.0]]}, {"name": "d42", "delays": [[1.0]]}, {"name": "d43", "delays": [[1.0]]}, {"name": "d44", "delays": [[1.0]]}, {"name": "d61", "delays": [[1.0]]}, {"name": "d62", "delays": [[1.0]]}, {"name": "d63", "delays": [[1.0]]}, {"name": "d64", "delays": [[1.0]]}, {"name": "d65", "delays": [[1.0]]}, {"name": "d66", "delays": [[1.0]]}, {"name": "d81", "delays": [[1.0]]}, {"name": "d82", "delays": [[1.0]]}, {"name": "d83", "delays": [[1.0]]}, {"name": "d84", "delays": [[1.0]]}, {"name": "d85", "delays": [[1.0]]}, {"name": "d86", "delays": [[1.0]]}, {"name": "d87", "delays": [[1.0]]}, {"name": "d88", "delays": [[1.0]]}, {"name": "dicebag", "delays": [[1.0]]}, {"name": "magicdicebag", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Fun/toys.rsi/meta.json b/Resources/Textures/Objects/Fun/toys.rsi/meta.json index 3d31fd265e..429a74f6d6 100644 --- a/Resources/Textures/Objects/Fun/toys.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/toys.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "carpplush", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "narplush", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "plushie_h", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "plushie_lizard", - "directions": 1, "delays": [ [ 1 @@ -45,7 +41,6 @@ }, { "name": "plushie_nuke", - "directions": 1, "delays": [ [ 1 @@ -54,7 +49,6 @@ }, { "name": "plushie_slime", - "directions": 1, "delays": [ [ 1 @@ -63,7 +57,6 @@ }, { "name": "plushie_snake", - "directions": 1, "delays": [ [ 1 @@ -72,7 +65,6 @@ }, { "name": "doll", - "directions": 1, "delays": [ [ 1 @@ -153,7 +145,6 @@ }, { "name": "AI", - "directions": 1, "delays": [ [ 1 @@ -162,7 +153,6 @@ }, { "name": "base", - "directions": 1, "delays": [ [ 1 @@ -171,7 +161,6 @@ }, { "name": "bolt-closed", - "directions": 1, "delays": [ [ 1 @@ -180,7 +169,6 @@ }, { "name": "bolt-open", - "directions": 1, "delays": [ [ 1 @@ -189,7 +177,6 @@ }, { "name": "deathripleytoy", - "directions": 1, "delays": [ [ 1 @@ -198,7 +185,6 @@ }, { "name": "durandprize", - "directions": 1, "delays": [ [ 1 @@ -207,7 +193,6 @@ }, { "name": "fireripleytoy", - "directions": 1, "delays": [ [ 1 @@ -216,7 +201,6 @@ }, { "name": "foamblade", - "directions": 1, "delays": [ [ 1 @@ -225,7 +209,6 @@ }, { "name": "foamcrossbow", - "directions": 1, "delays": [ [ 1 @@ -234,7 +217,6 @@ }, { "name": "foamdart", - "directions": 1, "delays": [ [ 1 @@ -243,7 +225,6 @@ }, { "name": "griffinprize", - "directions": 1, "delays": [ [ 1 @@ -252,7 +233,6 @@ }, { "name": "foambox", - "directions": 1, "delays": [ [ 1 @@ -261,7 +241,6 @@ }, { "name": "gygaxtoy", - "directions": 1, "delays": [ [ 1 @@ -270,7 +249,6 @@ }, { "name": "honkprize", - "directions": 1, "delays": [ [ 1 @@ -279,7 +257,6 @@ }, { "name": "ian", - "directions": 1, "delays": [ [ 1 @@ -288,7 +265,6 @@ }, { "name": "marauderprize", - "directions": 1, "delays": [ [ 1 @@ -297,7 +273,6 @@ }, { "name": "maulerprize", - "directions": 1, "delays": [ [ 1 @@ -306,7 +281,6 @@ }, { "name": "nuketoy", - "directions": 1, "delays": [ [ 0.1, @@ -316,7 +290,6 @@ }, { "name": "odysseusprize", - "directions": 1, "delays": [ [ 1 @@ -325,7 +298,6 @@ }, { "name": "owlprize", - "directions": 1, "delays": [ [ 1 @@ -334,7 +306,6 @@ }, { "name": "phazonprize", - "directions": 1, "delays": [ [ 1 @@ -343,7 +314,6 @@ }, { "name": "reticenceprize", - "directions": 1, "delays": [ [ 1 @@ -352,7 +322,6 @@ }, { "name": "ripleytoy", - "directions": 1, "delays": [ [ 1 @@ -361,7 +330,6 @@ }, { "name": "seraphprize", - "directions": 1, "delays": [ [ 1 @@ -370,7 +338,6 @@ }, { "name": "skeletonprize", - "directions": 1, "delays": [ [ 1 @@ -379,7 +346,6 @@ }, { "name": "snappop", - "directions": 1, "delays": [ [ 1 @@ -388,7 +354,6 @@ }, { "name": "spbox", - "directions": 1, "delays": [ [ 1 @@ -397,7 +362,6 @@ }, { "name": "toy_mouse", - "directions": 1, "delays": [ [ 1 @@ -406,7 +370,6 @@ }, { "name": "capbullet", - "directions": 1, "delays": [ [ 1 @@ -595,7 +558,6 @@ }, { "name": "synb", - "directions": 1, "delays": [ [ 1 @@ -604,7 +566,6 @@ }, { "name": "corgib", - "directions": 1, "delays": [ [ 1 @@ -613,7 +574,6 @@ }, { "name": "football", - "directions": 1, "delays": [ [ 1 @@ -658,7 +618,6 @@ }, { "name": "basketball", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Materials/Shards/piece.rsi/meta.json b/Resources/Textures/Objects/Materials/Shards/piece.rsi/meta.json index 9ef15adc64..fa4f51f793 100644 --- a/Resources/Textures/Objects/Materials/Shards/piece.rsi/meta.json +++ b/Resources/Textures/Objects/Materials/Shards/piece.rsi/meta.json @@ -9,30 +9,15 @@ "states": [ { "name": "piecelarge", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "piecemedium", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "piecesmall", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Materials/Shards/shard.rsi/meta.json b/Resources/Textures/Objects/Materials/Shards/shard.rsi/meta.json index 117b0d53ca..ef1623228e 100644 --- a/Resources/Textures/Objects/Materials/Shards/shard.rsi/meta.json +++ b/Resources/Textures/Objects/Materials/Shards/shard.rsi/meta.json @@ -45,30 +45,15 @@ }, { "name": "shard3", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shard2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shard1", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Materials/Shards/shrapnel.rsi/meta.json b/Resources/Textures/Objects/Materials/Shards/shrapnel.rsi/meta.json index d585dca469..2517b87f9c 100644 --- a/Resources/Textures/Objects/Materials/Shards/shrapnel.rsi/meta.json +++ b/Resources/Textures/Objects/Materials/Shards/shrapnel.rsi/meta.json @@ -9,30 +9,15 @@ "states": [ { "name": "shrapnellarge", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shrapnelmedium", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "shrapnelsmall", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Materials/Shards/splinters.rsi/meta.json b/Resources/Textures/Objects/Materials/Shards/splinters.rsi/meta.json index c81a36f2cb..1dbe1b6279 100644 --- a/Resources/Textures/Objects/Materials/Shards/splinters.rsi/meta.json +++ b/Resources/Textures/Objects/Materials/Shards/splinters.rsi/meta.json @@ -9,30 +9,15 @@ "states": [ { "name": "splinterslarge", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "splintersmedium", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "splinterssmall", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Materials/materials.rsi/meta.json b/Resources/Textures/Objects/Materials/materials.rsi/meta.json index 65b920d118..a6277d2a5c 100644 --- a/Resources/Textures/Objects/Materials/materials.rsi/meta.json +++ b/Resources/Textures/Objects/Materials/materials.rsi/meta.json @@ -8,92 +8,70 @@ }, "states": [ { - "name": "alienhide", - "directions": 1 + "name": "alienhide" }, { - "name": "cathide", - "directions": 1 + "name": "cathide" }, { - "name": "corgihide", - "directions": 1 + "name": "corgihide" }, { - "name": "liggerhide", - "directions": 1 + "name": "liggerhide" }, { - "name": "monkeyhide", - "directions": 1 + "name": "monkeyhide" }, { - "name": "banananium", - "directions": 1 + "name": "banananium" }, { - "name": "diamond", - "directions": 1 + "name": "diamond" }, { - "name": "uranium", - "directions": 1 + "name": "uranium" }, { - "name": "wood_plank", - "directions": 1 + "name": "wood_plank" }, { - "name": "wool", - "directions": 1 + "name": "wool" }, { - "name": "copperbar_single", - "directions": 1 + "name": "copperbar_single" }, { - "name": "goldbar_10", - "directions": 1 + "name": "goldbar_10" }, { - "name": "goldbar_20", - "directions": 1 + "name": "goldbar_20" }, { - "name": "goldbar_30", - "directions": 1 + "name": "goldbar_30" }, { - "name": "leadbar_single", - "directions": 1 + "name": "leadbar_single" }, { - "name": "steelbar_single", - "directions": 1 + "name": "steelbar_single" }, { - "name": "tinbar_single", - "directions": 1 + "name": "tinbar_single" }, { - "name": "phoron_ore", - "directions": 1 + "name": "phoron_ore" }, { - "name": "phoron_sheet", - "directions": 1 + "name": "phoron_sheet" }, { - "name": "phoron_gem", - "directions": 1 + "name": "phoron_gem" }, { - "name": "spent_phoron_gem", - "directions": 1 + "name": "spent_phoron_gem" }, { - "name": "rods", - "directions": 1 + "name": "rods" } ] } diff --git a/Resources/Textures/Objects/Materials/sheets.rsi/meta.json b/Resources/Textures/Objects/Materials/sheets.rsi/meta.json index 3f5c791c9c..7dd54c1780 100644 --- a/Resources/Textures/Objects/Materials/sheets.rsi/meta.json +++ b/Resources/Textures/Objects/Materials/sheets.rsi/meta.json @@ -7,179 +7,61 @@ "states": [ { "name": "metal-inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "metal-inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "glass-inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "glass-inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { - "name": "glass", - "directions": 1 + "name": "glass" }, { "name": "phoron-inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "phoron-inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { - "name": "phoron", - "directions": 1 + "name": "phoron" }, { - "name": "metal", - "directions": 1 + "name": "metal" }, { "name": "plasteel-inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "plasteel-inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { - "name": "plasteel", - "directions": 1 + "name": "plasteel" }, { - "name": "rglass", - "directions": 1 + "name": "rglass" }, { - "name": "rglass-inhand-left", - "directions": 4 + "name": "rglass-inhand-left", + "directions": 4 }, { - "name": "rglass-inhand-right", - "directions": 4 + "name": "rglass-inhand-right", + "directions": 4 }, { - "name": "researchicon", - "directions": 1 + "name": "researchicon" } ] } diff --git a/Resources/Textures/Objects/Misc/bedsheets.rsi/meta.json b/Resources/Textures/Objects/Misc/bedsheets.rsi/meta.json index feb8440112..4d311b1034 100644 --- a/Resources/Textures/Objects/Misc/bedsheets.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/bedsheets.rsi/meta.json @@ -1,114 +1,47 @@ { "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/0ec86b44b11f5e2f45137d9f6c851b8942a26aa3", "size": { "x": 32, "y": 32 }, - "license": "CCBYNA3", - "copyright": "https://github.com/tgstation/tgstation", "states": [ { - "name": "random_bedsheet", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "random_bedsheet" }, { - "name": "sheetNT", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetNT" }, { - "name": "sheetUSA", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetUSA" }, { - "name": "sheetblack", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetblack" }, { - "name": "sheetblue", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetblue" }, { - "name": "sheetbrown", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetbrown" }, { - "name": "sheetcaptain", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetcaptain" }, { - "name": "sheetce", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetce" }, { - "name": "sheetcentcom", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetcentcom" }, { - "name": "sheetclown", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetclown" }, { - "name": "sheetcmo", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetcmo" }, { "name": "sheetcosmos", - "directions": 1, "delays": [ [ 0.2, @@ -121,166 +54,58 @@ ] }, { - "name": "sheetcult", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetcult" }, { - "name": "sheetgreen", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetgreen" }, { - "name": "sheetgrey", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetgrey" }, { - "name": "sheethop", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheethop" }, { - "name": "sheethos", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheethos" }, { - "name": "sheetian", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetian" }, { - "name": "sheetmedical", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetmedical" }, { - "name": "sheetmime", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetmime" }, { - "name": "sheetorange", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetorange" }, { - "name": "sheetpurple", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetpurple" }, { - "name": "sheetqm", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetqm" }, { - "name": "sheetrainbow", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetrainbow" }, { - "name": "sheetrd", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetrd" }, { - "name": "sheetred", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetred" }, { - "name": "sheetsyndie", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetsyndie" }, { - "name": "sheetwhite", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetwhite" }, { - "name": "sheetwiz", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetwiz" }, { - "name": "sheetyellow", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "name": "sheetyellow" } ] } diff --git a/Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json b/Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json index fe906267be..c1ebfc79f9 100644 --- a/Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from LINKTOCODEBASE", "states": [{"name": "chestdrawer", "directions": 1, "delays": [[1.0]]}, {"name": "chestdrawer-open", "directions": 1, "delays": [[0.5, 0.1]]}, {"name": "clipboard", "directions": 1, "delays": [[1.0]]}, {"name": "clipboard_over", "directions": 1, "delays": [[1.0]]}, {"name": "clipboard_pen", "directions": 1, "delays": [[1.0]]}, {"name": "envelope_closed", "directions": 1, "delays": [[1.0]]}, {"name": "envelope_open", "directions": 1, "delays": [[1.0]]}, {"name": "envelope_open_overlay", "directions": 1, "delays": [[1.0]]}, {"name": "envelope_torn", "directions": 1, "delays": [[1.0]]}, {"name": "envelope_torn_overlay", "directions": 1, "delays": [[1.0]]}, {"name": "filingcabinet", "directions": 1, "delays": [[1.0]]}, {"name": "filingcabinet-open", "directions": 1, "delays": [[0.5, 0.1]]}, {"name": "folder", "directions": 1, "delays": [[1.0]]}, {"name": "folder_blue", "directions": 1, "delays": [[1.0]]}, {"name": "folder_paper", "directions": 1, "delays": [[1.0]]}, {"name": "folder_red", "directions": 1, "delays": [[1.0]]}, {"name": "folder_white", "directions": 1, "delays": [[1.0]]}, {"name": "folder_yellow", "directions": 1, "delays": [[1.0]]}, {"name": "label_cart", "directions": 1, "delays": [[1.0]]}, {"name": "labeler0", "directions": 1, "delays": [[1.0]]}, {"name": "labeler1", "directions": 1, "delays": [[1.0]]}, {"name": "labeler_e", "directions": 1, "delays": [[1.0]]}, {"name": "nano_paper", "directions": 1, "delays": [[1.0]]}, {"name": "nano_paper_words", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "newspaper", "directions": 1, "delays": [[1.0]]}, {"name": "np_dispenser", "directions": 1, "delays": [[1.0]]}, {"name": "np_dispenser_empty", "directions": 1, "delays": [[1.0]]}, {"name": "pamphlet", "directions": 1, "delays": [[1.0]]}, {"name": "paper", "directions": 1, "delays": [[1.0]]}, {"name": "paper_bin0", "directions": 1, "delays": [[1.0]]}, {"name": "paper_bin1", "directions": 1, "delays": [[1.0]]}, {"name": "paper_bin2", "directions": 1, "delays": [[1.0]]}, {"name": "paper_bin3", "directions": 1, "delays": [[1.0]]}, {"name": "paper_plane", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-cap", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-ce", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-cent", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-chaplain", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-clown", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-cmo", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-deny", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-hop", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-hos", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-iaa", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-mime", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-qm", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-rd", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-trader", "directions": 1, "delays": [[1.0]]}, {"name": "paper_stamp-warden", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_armor", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_blind", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_communicate", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_conceal", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_deafen", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_emp", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_newtome", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_revealrunes", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_runestun", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_supply", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_travel", "directions": 1, "delays": [[1.0]]}, {"name": "paper_talisman_travel_unused", "directions": 1, "delays": [[1.0]]}, {"name": "paper_words", "directions": 1, "delays": [[1.0]]}, {"name": "paper_words-blood", "directions": 1, "delays": [[1.0]]}, {"name": "pen", "directions": 1, "delays": [[1.0]]}, {"name": "pen_blue", "directions": 1, "delays": [[1.0]]}, {"name": "pen_red", "directions": 1, "delays": [[1.0]]}, {"name": "scrap", "directions": 1, "delays": [[1.0]]}, {"name": "scrap_bloodied", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-cap", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-ce", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-cent", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-chaplain", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-clown", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-cmo", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-deny", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-hop", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-hos", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-iaa", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-mime", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-qm", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-rd", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-trader", "directions": 1, "delays": [[1.0]]}, {"name": "stamp-warden", "directions": 1, "delays": [[1.0]]}, {"name": "tallcabinet", "directions": 1, "delays": [[1.0]]}, {"name": "tallcabinet-open", "directions": 1, "delays": [[0.5, 0.1]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from LINKTOCODEBASE", "states": [{"name": "chestdrawer", "delays": [[1.0]]}, {"name": "chestdrawer-open", "delays": [[0.5, 0.1]]}, {"name": "clipboard", "delays": [[1.0]]}, {"name": "clipboard_over", "delays": [[1.0]]}, {"name": "clipboard_pen", "delays": [[1.0]]}, {"name": "envelope_closed", "delays": [[1.0]]}, {"name": "envelope_open", "delays": [[1.0]]}, {"name": "envelope_open_overlay", "delays": [[1.0]]}, {"name": "envelope_torn", "delays": [[1.0]]}, {"name": "envelope_torn_overlay", "delays": [[1.0]]}, {"name": "filingcabinet", "delays": [[1.0]]}, {"name": "filingcabinet-open", "delays": [[0.5, 0.1]]}, {"name": "folder", "delays": [[1.0]]}, {"name": "folder_blue", "delays": [[1.0]]}, {"name": "folder_paper", "delays": [[1.0]]}, {"name": "folder_red", "delays": [[1.0]]}, {"name": "folder_white", "delays": [[1.0]]}, {"name": "folder_yellow", "delays": [[1.0]]}, {"name": "label_cart", "delays": [[1.0]]}, {"name": "labeler0", "delays": [[1.0]]}, {"name": "labeler1", "delays": [[1.0]]}, {"name": "labeler_e", "delays": [[1.0]]}, {"name": "nano_paper", "delays": [[1.0]]}, {"name": "nano_paper_words", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "newspaper", "delays": [[1.0]]}, {"name": "np_dispenser", "delays": [[1.0]]}, {"name": "np_dispenser_empty", "delays": [[1.0]]}, {"name": "pamphlet", "delays": [[1.0]]}, {"name": "paper", "delays": [[1.0]]}, {"name": "paper_bin0", "delays": [[1.0]]}, {"name": "paper_bin1", "delays": [[1.0]]}, {"name": "paper_bin2", "delays": [[1.0]]}, {"name": "paper_bin3", "delays": [[1.0]]}, {"name": "paper_plane", "delays": [[1.0]]}, {"name": "paper_stamp-cap", "delays": [[1.0]]}, {"name": "paper_stamp-ce", "delays": [[1.0]]}, {"name": "paper_stamp-cent", "delays": [[1.0]]}, {"name": "paper_stamp-chaplain", "delays": [[1.0]]}, {"name": "paper_stamp-clown", "delays": [[1.0]]}, {"name": "paper_stamp-cmo", "delays": [[1.0]]}, {"name": "paper_stamp-deny", "delays": [[1.0]]}, {"name": "paper_stamp-hop", "delays": [[1.0]]}, {"name": "paper_stamp-hos", "delays": [[1.0]]}, {"name": "paper_stamp-iaa", "delays": [[1.0]]}, {"name": "paper_stamp-mime", "delays": [[1.0]]}, {"name": "paper_stamp-qm", "delays": [[1.0]]}, {"name": "paper_stamp-rd", "delays": [[1.0]]}, {"name": "paper_stamp-trader", "delays": [[1.0]]}, {"name": "paper_stamp-warden", "delays": [[1.0]]}, {"name": "paper_talisman", "delays": [[1.0]]}, {"name": "paper_talisman_armor", "delays": [[1.0]]}, {"name": "paper_talisman_blind", "delays": [[1.0]]}, {"name": "paper_talisman_communicate", "delays": [[1.0]]}, {"name": "paper_talisman_conceal", "delays": [[1.0]]}, {"name": "paper_talisman_deafen", "delays": [[1.0]]}, {"name": "paper_talisman_emp", "delays": [[1.0]]}, {"name": "paper_talisman_newtome", "delays": [[1.0]]}, {"name": "paper_talisman_revealrunes", "delays": [[1.0]]}, {"name": "paper_talisman_runestun", "delays": [[1.0]]}, {"name": "paper_talisman_supply", "delays": [[1.0]]}, {"name": "paper_talisman_travel", "delays": [[1.0]]}, {"name": "paper_talisman_travel_unused", "delays": [[1.0]]}, {"name": "paper_words", "delays": [[1.0]]}, {"name": "paper_words-blood", "delays": [[1.0]]}, {"name": "pen", "delays": [[1.0]]}, {"name": "pen_blue", "delays": [[1.0]]}, {"name": "pen_red", "delays": [[1.0]]}, {"name": "scrap", "delays": [[1.0]]}, {"name": "scrap_bloodied", "delays": [[1.0]]}, {"name": "stamp-cap", "delays": [[1.0]]}, {"name": "stamp-ce", "delays": [[1.0]]}, {"name": "stamp-cent", "delays": [[1.0]]}, {"name": "stamp-chaplain", "delays": [[1.0]]}, {"name": "stamp-clown", "delays": [[1.0]]}, {"name": "stamp-cmo", "delays": [[1.0]]}, {"name": "stamp-deny", "delays": [[1.0]]}, {"name": "stamp-hop", "delays": [[1.0]]}, {"name": "stamp-hos", "delays": [[1.0]]}, {"name": "stamp-iaa", "delays": [[1.0]]}, {"name": "stamp-mime", "delays": [[1.0]]}, {"name": "stamp-qm", "delays": [[1.0]]}, {"name": "stamp-rd", "delays": [[1.0]]}, {"name": "stamp-trader", "delays": [[1.0]]}, {"name": "stamp-warden", "delays": [[1.0]]}, {"name": "tallcabinet", "delays": [[1.0]]}, {"name": "tallcabinet-open", "delays": [[0.5, 0.1]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Misc/cablecuffs.rsi/meta.json b/Resources/Textures/Objects/Misc/cablecuffs.rsi/meta.json index 071dcf8cba..1c8825ac38 100644 --- a/Resources/Textures/Objects/Misc/cablecuffs.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/cablecuffs.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "cuff", - "directions": 1, "delays": [ [ 1 @@ -16,7 +15,6 @@ }, { "name": "cuff-broken", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Misc/carvings.rsi/meta.json b/Resources/Textures/Objects/Misc/carvings.rsi/meta.json index 27b5298363..0800118bd7 100644 --- a/Resources/Textures/Objects/Misc/carvings.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/carvings.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "hello", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "help_me", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "thank_you", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "im_sorry", - "directions": 1, "delays": [ [ 1 @@ -45,7 +41,6 @@ }, { "name": "very_good", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Misc/crayons.rsi/meta.json b/Resources/Textures/Objects/Misc/crayons.rsi/meta.json index 5092e3ce7b..9f0e8eb20c 100644 --- a/Resources/Textures/Objects/Misc/crayons.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/crayons.rsi/meta.json @@ -7,345 +7,155 @@ "states": [ { "name": "black", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "blue", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "clowncan", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "clowncan2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "clowncan2_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "clowncan_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonblack", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonblue", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonbox", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayongreen", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonmime", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonorange", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonpurple", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonrainbow", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonred", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonwhite", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "crayonyellow", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "deathcan", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "deathcan2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "deathcan2_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "deathcan_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "green", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mimecan", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mimecan2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mimecan2_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "mimecan_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "orange", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "purple", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rainbowcan", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rainbowcan2", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rainbowcan2_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rainbowcan_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "red", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spraycan", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spraycan_cap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spraycan_cap_colors", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "spraycan_colors", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "yellow", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Misc/fire_extinguisher.rsi/meta.json b/Resources/Textures/Objects/Misc/fire_extinguisher.rsi/meta.json index d4447ddf98..e88075b5d2 100644 --- a/Resources/Textures/Objects/Misc/fire_extinguisher.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/fire_extinguisher.rsi/meta.json @@ -9,21 +9,11 @@ "states": [ { "name": "fire_extinguisher_open", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "fire_extinguisher_closed", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Misc/flare.rsi/meta.json b/Resources/Textures/Objects/Misc/flare.rsi/meta.json index fa0ca8e540..cc48e04a1a 100644 --- a/Resources/Textures/Objects/Misc/flare.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/flare.rsi/meta.json @@ -1,134 +1,50 @@ { - "version": 1, - "size": { - "x": 32, - "y": 32 + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0f6496a55ceefa0f1bf1668fcef49b5182471695", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" }, - "license": "CC-BY-SA-3.0", - "copyright": "Sprites created by https://github.com/nuke-makes-games", - "states": - [ - { - "name": "off-inhand-left", - "directions": 4, - "delays": [ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] - }, - { - "name": "off-inhand-right", - "directions": 4, - "delays": [ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] - }, - { - "name": "on-inhand-left", - "directions": 4, - "delays": [ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] - }, - { - "name": "on-inhand-right", - "directions": 4, - "delays": [ - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ], - [ - 1.0 - ] - ] - }, - { - "name": "flare_burn", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 0.05, - 0.05, - 0.05, - 0.05 - ] - ] - }, - { - "name": "flare_spent", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "flare_base", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "flare_unlit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "icon", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - } - ] + { + "name": "flare_base" + }, + { + "name": "flare_spent", + }, + { + "name": "flare_unlit", + }, + { + "name": "flare_burn", + "delays": [ + [ + 0.05, + 0.05, + 0.05, + 0.05 + ] + ] + }, + { + "name": "on-inhand-left", + "directions": 4 + }, + { + "name": "on-inhand-right", + "directions": 4 + }, + { + "name": "off-inhand-left", + "directions": 4 + }, + { + "name": "off-inhand-right", + "directions": 4 + } + ] } diff --git a/Resources/Textures/Objects/Misc/glowstick.rsi/meta.json b/Resources/Textures/Objects/Misc/glowstick.rsi/meta.json index f6822ba045..21818fedc7 100644 --- a/Resources/Textures/Objects/Misc/glowstick.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/glowstick.rsi/meta.json @@ -82,39 +82,19 @@ }, { "name": "glowstick_base", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "glowstick_lit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "glowstick_glow", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "glowstick_unlit", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Objects/Misc/hand_tele.rsi/meta.json b/Resources/Textures/Objects/Misc/hand_tele.rsi/meta.json index 64e209f934..8c79ac2a59 100644 --- a/Resources/Textures/Objects/Misc/hand_tele.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/hand_tele.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "charging", - "directions": 1, "delays": [ [ 1.0, @@ -21,7 +20,6 @@ }, { "name": "ready", - "directions": 1, "delays": [ [ 5.0, diff --git a/Resources/Textures/Objects/Misc/handcuffs.rsi/meta.json b/Resources/Textures/Objects/Misc/handcuffs.rsi/meta.json index c6533225fe..d17c557035 100644 --- a/Resources/Textures/Objects/Misc/handcuffs.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/handcuffs.rsi/meta.json @@ -1,7 +1,7 @@ {"version": 1, "size": {"x": 32, "y": 32}, "states": [ {"name": "body-overlay-2", "directions": 4, "delays": [[1.0],[1.0],[1.0],[1.0]]}, {"name": "body-overlay-4", "directions": 4, "delays": [[1.0],[1.0],[1.0],[1.0]]}, -{"name": "handcuff", "directions": 1, "delays": [[1.0]]}, +{"name": "handcuff", "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "equipped-BELT", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]} diff --git a/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json b/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json index 0fc51bd2b7..e4e35b6ec9 100644 --- a/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json @@ -8,216 +8,163 @@ }, "states": [ { - "name": "default", - "directions": 1 + "name": "default" }, { - "name": "centcom", - "directions": 1 + "name": "centcom" }, { - "name": "ert_chaplain", - "directions": 1 + "name": "ert_chaplain" }, { - "name": "ert_commander", - "directions": 1 + "name": "ert_commander" }, { - "name": "ert_engineer", - "directions": 1 + "name": "ert_engineer" }, { - "name": "ert_janitor", - "directions": 1 + "name": "ert_janitor" }, { - "name": "ert_medic", - "directions": 1 + "name": "ert_medic" }, { - "name": "ert_security", - "directions": 1 + "name": "ert_security" }, { - "name": "gold", - "directions": 1 + "name": "gold" }, { - "name": "idassistant", - "directions": 1 + "name": "idassistant" }, { - "name": "idatmospherictechnician", - "directions": 1 + "name": "idatmospherictechnician" }, { - "name": "idbartender", - "directions": 1 + "name": "idbartender" }, { - "name": "idbotanist", - "directions": 1 + "name": "idbotanist" }, { - "name": "idcaptain", - "directions": 1 + "name": "idcaptain" }, { - "name": "idcargotechnician", - "directions": 1 + "name": "idcargotechnician" }, { - "name": "idcentcom", - "directions": 1 + "name": "idcentcom" }, { - "name": "idchaplain", - "directions": 1 + "name": "idchaplain" }, { - "name": "idchemist", - "directions": 1 + "name": "idchemist" }, { - "name": "idchiefengineer", - "directions": 1 + "name": "idchiefengineer" }, { - "name": "idchiefmedicalofficer", - "directions": 1 + "name": "idchiefmedicalofficer" }, { - "name": "idclown", - "directions": 1 + "name": "idclown" }, { - "name": "idcook", - "directions": 1 + "name": "idcook" }, { - "name": "idcurator", - "directions": 1 + "name": "idcurator" }, { - "name": "iddetective", - "directions": 1 + "name": "iddetective" }, { - "name": "idgeneticist", - "directions": 1 + "name": "idgeneticist" }, { - "name": "idheadofpersonnel", - "directions": 1 + "name": "idheadofpersonnel" }, { - "name": "idheadofsecurity", - "directions": 1 + "name": "idheadofsecurity" }, { - "name": "idjanitor", - "directions": 1 + "name": "idjanitor" }, { - "name": "idlawyer", - "directions": 1 + "name": "idlawyer" }, { - "name": "idmedicaldoctor", - "directions": 1 + "name": "idmedicaldoctor" }, { - "name": "idmime", - "directions": 1 + "name": "idmime" }, { - "name": "idparamedic", - "directions": 1 + "name": "idparamedic" }, { - "name": "idprisoner", - "directions": 1 + "name": "idprisoner" }, { - "name": "idquartermaster", - "directions": 1 + "name": "idquartermaster" }, { - "name": "idresearchdirector", - "directions": 1 + "name": "idresearchdirector" }, { - "name": "idroboticist", - "directions": 1 + "name": "idroboticist" }, { - "name": "idscientist", - "directions": 1 + "name": "idscientist" }, { - "name": "idsecurityofficer", - "directions": 1 + "name": "idsecurityofficer" }, { - "name": "idshaftminer", - "directions": 1 + "name": "idshaftminer" }, { - "name": "idstationengineer", - "directions": 1 + "name": "idstationengineer" }, { - "name": "idunknown", - "directions": 1 + "name": "idunknown" }, { - "name": "idvirologist", - "directions": 1 + "name": "idvirologist" }, { - "name": "idwarden", - "directions": 1 + "name": "idwarden" }, { - "name": "orange", - "directions": 1 + "name": "orange" }, { - "name": "prisoner_001", - "directions": 1 + "name": "prisoner_001" }, { - "name": "prisoner_002", - "directions": 1 + "name": "prisoner_002" }, { - "name": "prisoner_003", - "directions": 1 + "name": "prisoner_003" }, { - "name": "prisoner_004", - "directions": 1 + "name": "prisoner_004" }, { - "name": "prisoner_005", - "directions": 1 + "name": "prisoner_005" }, { - "name": "prisoner_006", - "directions": 1 + "name": "prisoner_006" }, { - "name": "prisoner_007", - "directions": 1 + "name": "prisoner_007" }, { - "name": "silver", - "directions": 1 + "name": "silver" }, { - "name": "syndie", - "directions": 1 + "name": "syndie" }, { "name": "gold-inhand-left", diff --git a/Resources/Textures/Objects/Misc/lights.rsi/meta.json b/Resources/Textures/Objects/Misc/lights.rsi/meta.json index d956793e53..65e68c5fef 100644 --- a/Resources/Textures/Objects/Misc/lights.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/lights.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "bananalamp", - "directions": 1, "delays": [ [ 1 @@ -16,7 +15,6 @@ }, { "name": "bananalamp_on", - "directions": 1, "delays": [ [ 1 @@ -25,7 +23,6 @@ }, { "name": "floodlight", - "directions": 1, "delays": [ [ 1 @@ -34,7 +31,6 @@ }, { "name": "floodlight_on", - "directions": 1, "delays": [ [ 1 @@ -43,7 +39,6 @@ }, { "name": "floodlight_burned", - "directions": 1, "delays": [ [ 1 @@ -52,7 +47,6 @@ }, { "name": "floodlight_broken", - "directions": 1, "delays": [ [ 1 @@ -61,7 +55,6 @@ }, { "name": "lamp", - "directions": 1, "delays": [ [ 1 @@ -70,7 +63,6 @@ }, { "name": "lamp_on", - "directions": 1, "delays": [ [ 1 @@ -79,7 +71,6 @@ }, { "name": "lampgreen", - "directions": 1, "delays": [ [ 1 @@ -88,7 +79,6 @@ }, { "name": "lampgreen_on", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Misc/markers.rsi/meta.json b/Resources/Textures/Objects/Misc/markers.rsi/meta.json index 43f08e0452..a44f1e7a62 100644 --- a/Resources/Textures/Objects/Misc/markers.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/markers.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "markerbronze", - "directions": 1, "delays": [ [ 1 @@ -16,7 +15,6 @@ }, { "name": "markerbronze-on", - "directions": 1, "delays": [ [ 1 @@ -25,7 +23,6 @@ }, { "name": "markerburgundy", - "directions": 1, "delays": [ [ 1 @@ -34,7 +31,6 @@ }, { "name": "markerburgundy-on", - "directions": 1, "delays": [ [ 1 @@ -43,7 +39,6 @@ }, { "name": "markercerulean", - "directions": 1, "delays": [ [ 1 @@ -52,7 +47,6 @@ }, { "name": "markercerulean-on", - "directions": 1, "delays": [ [ 1 @@ -61,7 +55,6 @@ }, { "name": "markerfuchsia", - "directions": 1, "delays": [ [ 1 @@ -70,7 +63,6 @@ }, { "name": "markerfuchsia-on", - "directions": 1, "delays": [ [ 1 @@ -79,7 +71,6 @@ }, { "name": "markerindigo", - "directions": 1, "delays": [ [ 1 @@ -88,7 +79,6 @@ }, { "name": "markerindigo-on", - "directions": 1, "delays": [ [ 1 @@ -97,7 +87,6 @@ }, { "name": "markerjade", - "directions": 1, "delays": [ [ 1 @@ -106,7 +95,6 @@ }, { "name": "markerjade-on", - "directions": 1, "delays": [ [ 1 @@ -115,7 +103,6 @@ }, { "name": "markerlime", - "directions": 1, "delays": [ [ 1 @@ -124,7 +111,6 @@ }, { "name": "markerlime-on", - "directions": 1, "delays": [ [ 1 @@ -133,7 +119,6 @@ }, { "name": "markerolive", - "directions": 1, "delays": [ [ 1 @@ -142,7 +127,6 @@ }, { "name": "markerolive-on", - "directions": 1, "delays": [ [ 1 @@ -151,7 +135,6 @@ }, { "name": "markerpurple", - "directions": 1, "delays": [ [ 1 @@ -160,7 +143,6 @@ }, { "name": "markerpurple-on", - "directions": 1, "delays": [ [ 1 @@ -169,7 +151,6 @@ }, { "name": "markerrandom", - "directions": 1, "delays": [ [ 1 @@ -178,7 +159,6 @@ }, { "name": "markerteal", - "directions": 1, "delays": [ [ 1 @@ -187,7 +167,6 @@ }, { "name": "markerteal-on", - "directions": 1, "delays": [ [ 1 @@ -196,7 +175,6 @@ }, { "name": "markerviolet", - "directions": 1, "delays": [ [ 1 @@ -205,7 +183,6 @@ }, { "name": "markerviolet-on", - "directions": 1, "delays": [ [ 1 @@ -214,7 +191,6 @@ }, { "name": "markeryellow", - "directions": 1, "delays": [ [ 1 @@ -223,7 +199,6 @@ }, { "name": "markeryellow-on", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Misc/nukedisk.rsi/meta.json b/Resources/Textures/Objects/Misc/nukedisk.rsi/meta.json index 81c0661e3c..ddbeb7ced1 100644 --- a/Resources/Textures/Objects/Misc/nukedisk.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/nukedisk.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Misc/skub.rsi/meta.json b/Resources/Textures/Objects/Misc/skub.rsi/meta.json index 6d9510462d..fb2bcc3dab 100644 --- a/Resources/Textures/Objects/Misc/skub.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/skub.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation", "states": [{"name": "icon", "directions": 1, "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation", "states": [{"name": "icon", "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} diff --git a/Resources/Textures/Objects/Misc/torch.rsi/meta.json b/Resources/Textures/Objects/Misc/torch.rsi/meta.json index 1ef7db6594..72ebd77c8a 100644 --- a/Resources/Textures/Objects/Misc/torch.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/torch.rsi/meta.json @@ -106,25 +106,14 @@ }, { "name": "torch", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "torch_empty", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "torch_on", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Power/AME/ame_jar.rsi/meta.json b/Resources/Textures/Objects/Power/AME/ame_jar.rsi/meta.json index 38c5df1bfe..3b1665413a 100644 --- a/Resources/Textures/Objects/Power/AME/ame_jar.rsi/meta.json +++ b/Resources/Textures/Objects/Power/AME/ame_jar.rsi/meta.json @@ -9,12 +9,7 @@ "states": [ { "name": "jar", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/AME/ame_part.rsi/meta.json b/Resources/Textures/Objects/Power/AME/ame_part.rsi/meta.json index 423746d2a2..617023b270 100644 --- a/Resources/Textures/Objects/Power/AME/ame_part.rsi/meta.json +++ b/Resources/Textures/Objects/Power/AME/ame_part.rsi/meta.json @@ -9,12 +9,7 @@ "states": [ { "name": "box", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/potato_battery.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/potato_battery.rsi/meta.json index 273a0a949b..71a7f31af1 100644 --- a/Resources/Textures/Objects/Power/PowerCells/potato_battery.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/potato_battery.rsi/meta.json @@ -9,12 +9,7 @@ "states": [ { "name": "potato_battery", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hi.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hi.rsi/meta.json index 42532664e4..2d9343f885 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hi.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hi.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "l_hi", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hi_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "l_hi_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hi_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hi_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hi_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hy.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hy.rsi/meta.json index f81f46f26b..53734ad567 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hy.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_hy.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "l_hy", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hy_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "l_hy_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hy_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hy_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_hy_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_st.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_st.rsi/meta.json index f70ce1df73..e1ef25e8ad 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_st.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_st.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "l_st", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_st_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "l_st_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_st_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_st_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_st_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_sup.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_sup.rsi/meta.json index e61dbb4cb9..be0c0e1ed1 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_large_sup.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_large_sup.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "l_sup", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_sup_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "l_sup_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_sup_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_sup_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "l_sup_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hi.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hi.rsi/meta.json index 65521cece4..6f99c41d68 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hi.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hi.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "m_hi", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hi_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "m_hi_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hi_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hi_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hi_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hy.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hy.rsi/meta.json index 9c2c5af5e3..d5b2771be5 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hy.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_hy.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "m_hy", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hy_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "m_hy_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hy_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hy_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_hy_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_st.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_st.rsi/meta.json index 3ada43a2e9..e6f88e7e5d 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_st.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_st.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "m_st", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_st_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "m_st_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_st_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_st_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_st_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_sup.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_sup.rsi/meta.json index ba4e9c2c2a..9eee5bb770 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_sup.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_medium_sup.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "m_sup", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_sup_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "m_sup_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_sup_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_sup_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "m_sup_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_autorecharge.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_autorecharge.rsi/meta.json index 711a1300f4..ef93a794cf 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_autorecharge.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_autorecharge.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "s_ar", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "s_ar_0", - "directions": 1, "delays": [ [ 0.2, @@ -28,39 +22,19 @@ }, { "name": "s_ar_100", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "s_ar_25", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "s_ar_50", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "s_ar_75", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hi.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hi.rsi/meta.json index 2622a6cb7a..68e2ca9153 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hi.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hi.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_hi", "directions": 1, "delays": [[1.0]]}, {"name": "s_hi_0", "directions": 1, "delays": [[0.2, 0.2]]}, {"name": "s_hi_100", "directions": 1, "delays": [[1.0]]}, {"name": "s_hi_25", "directions": 1, "delays": [[1.0]]}, {"name": "s_hi_50", "directions": 1, "delays": [[1.0]]}, {"name": "s_hi_75", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_hi", "delays": [[1.0]]}, {"name": "s_hi_0", "delays": [[0.2, 0.2]]}, {"name": "s_hi_100", "delays": [[1.0]]}, {"name": "s_hi_25", "delays": [[1.0]]}, {"name": "s_hi_50", "delays": [[1.0]]}, {"name": "s_hi_75", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hy.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hy.rsi/meta.json index b1d106c64b..f5694ced90 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hy.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_hy.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_hy", "directions": 1, "delays": [[1.0]]}, {"name": "s_hy_0", "directions": 1, "delays": [[0.2, 0.2]]}, {"name": "s_hy_100", "directions": 1, "delays": [[1.0]]}, {"name": "s_hy_25", "directions": 1, "delays": [[1.0]]}, {"name": "s_hy_50", "directions": 1, "delays": [[1.0]]}, {"name": "s_hy_75", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_hy", "delays": [[1.0]]}, {"name": "s_hy_0", "delays": [[0.2, 0.2]]}, {"name": "s_hy_100", "delays": [[1.0]]}, {"name": "s_hy_25", "delays": [[1.0]]}, {"name": "s_hy_50", "delays": [[1.0]]}, {"name": "s_hy_75", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_st.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_st.rsi/meta.json index 7730f019c9..de99aab706 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_st.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_st.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_st", "directions": 1, "delays": [[1.0]]}, {"name": "s_st_0", "directions": 1, "delays": [[0.2, 0.2]]}, {"name": "s_st_100", "directions": 1, "delays": [[1.0]]}, {"name": "s_st_25", "directions": 1, "delays": [[1.0]]}, {"name": "s_st_50", "directions": 1, "delays": [[1.0]]}, {"name": "s_st_75", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_st", "delays": [[1.0]]}, {"name": "s_st_0", "delays": [[0.2, 0.2]]}, {"name": "s_st_100", "delays": [[1.0]]}, {"name": "s_st_25", "delays": [[1.0]]}, {"name": "s_st_50", "delays": [[1.0]]}, {"name": "s_st_75", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_sup.rsi/meta.json b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_sup.rsi/meta.json index 7d8749b953..79ed6e45a2 100644 --- a/Resources/Textures/Objects/Power/PowerCells/power_cell_small_sup.rsi/meta.json +++ b/Resources/Textures/Objects/Power/PowerCells/power_cell_small_sup.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_sup", "directions": 1, "delays": [[1.0]]}, {"name": "s_sup_0", "directions": 1, "delays": [[0.2, 0.2]]}, {"name": "s_sup_100", "directions": 1, "delays": [[1.0]]}, {"name": "s_sup_25", "directions": 1, "delays": [[1.0]]}, {"name": "s_sup_50", "directions": 1, "delays": [[1.0]]}, {"name": "s_sup_75", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit 9a3a3a180344460263e8df7ea2565128e07b86b5", "states": [{"name": "s_sup", "delays": [[1.0]]}, {"name": "s_sup_0", "delays": [[0.2, 0.2]]}, {"name": "s_sup_100", "delays": [[1.0]]}, {"name": "s_sup_25", "delays": [[1.0]]}, {"name": "s_sup_50", "delays": [[1.0]]}, {"name": "s_sup_75", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Power/light_bulb.rsi/meta.json b/Resources/Textures/Objects/Power/light_bulb.rsi/meta.json index e5ffb23a14..7b642e3d2c 100644 --- a/Resources/Textures/Objects/Power/light_bulb.rsi/meta.json +++ b/Resources/Textures/Objects/Power/light_bulb.rsi/meta.json @@ -8,37 +8,16 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit ad7c8621e5567b1b3b2b609f699b3b80cca785f2", "states": [ { - "name": "normal", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "normal" + }, { - "name": "burned", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "burned" + }, { - "name": "broken", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "broken" + } ] } diff --git a/Resources/Textures/Objects/Power/light_tube.rsi/meta.json b/Resources/Textures/Objects/Power/light_tube.rsi/meta.json index e5ffb23a14..7b642e3d2c 100644 --- a/Resources/Textures/Objects/Power/light_tube.rsi/meta.json +++ b/Resources/Textures/Objects/Power/light_tube.rsi/meta.json @@ -8,37 +8,16 @@ "copyright": "Taken from https://github.com/discordia-space/CEV-Eris at commit ad7c8621e5567b1b3b2b609f699b3b80cca785f2", "states": [ { - "name": "normal", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "normal" + }, { - "name": "burned", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "burned" + }, { - "name": "broken", - "select": [], - "flags": {}, - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "broken" + } ] } diff --git a/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json index e1dd064c9a..bdb4163887 100644 --- a/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json @@ -7,16 +7,10 @@ "states": [ { "name": "icon", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "working", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Specific/Chemistry/autoinjector.rsi/meta.json b/Resources/Textures/Objects/Specific/Chemistry/autoinjector.rsi/meta.json index ef6407ddf0..c14ea7be4d 100644 --- a/Resources/Textures/Objects/Specific/Chemistry/autoinjector.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Chemistry/autoinjector.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "directions": 1, "delays": [[1.0]]}, {"name": "1", "directions": 1, "delays": [[1.0]]}, {"name": "10", "directions": 1, "delays": [[1.0]]}, {"name": "15", "directions": 1, "delays": [[1.0]]}, {"name": "5", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector0", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_black", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_black0", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_red", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_red0", "directions": 1, "delays": [[1.0]]}, {"name": "borghypo", "directions": 1, "delays": [[1.0]]}, {"name": "borghypo_s", "directions": 1, "delays": [[1.0]]}, {"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "combat_hypo", "directions": 1, "delays": [[1.0]]}, {"name": "draw", "directions": 1, "delays": [[1.0]]}, {"name": "hypo", "directions": 1, "delays": [[1.0]]}, {"name": "inject", "directions": 1, "delays": [[1.0]]}, {"name": "syringeproj", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "delays": [[1.0]]}, {"name": "1", "delays": [[1.0]]}, {"name": "10", "delays": [[1.0]]}, {"name": "15", "delays": [[1.0]]}, {"name": "5", "delays": [[1.0]]}, {"name": "autoinjector", "delays": [[1.0]]}, {"name": "autoinjector0", "delays": [[1.0]]}, {"name": "autoinjector_black", "delays": [[1.0]]}, {"name": "autoinjector_black0", "delays": [[1.0]]}, {"name": "autoinjector_red", "delays": [[1.0]]}, {"name": "autoinjector_red0", "delays": [[1.0]]}, {"name": "borghypo", "delays": [[1.0]]}, {"name": "borghypo_s", "delays": [[1.0]]}, {"name": "broken", "delays": [[1.0]]}, {"name": "combat_hypo", "delays": [[1.0]]}, {"name": "draw", "delays": [[1.0]]}, {"name": "hypo", "delays": [[1.0]]}, {"name": "inject", "delays": [[1.0]]}, {"name": "syringeproj", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Chemistry/fillings.rsi/meta.json b/Resources/Textures/Objects/Specific/Chemistry/fillings.rsi/meta.json index 5fd73d8ec2..6c4037add0 100644 --- a/Resources/Textures/Objects/Specific/Chemistry/fillings.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Chemistry/fillings.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "backpack1", "directions": 1, "delays": [[1.0]]}, {"name": "backpack2", "directions": 1, "delays": [[1.0]]}, {"name": "backpackmob1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "backpackmob2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "beaker1", "directions": 1, "delays": [[1.0]]}, {"name": "beaker2", "directions": 1, "delays": [[1.0]]}, {"name": "beaker3", "directions": 1, "delays": [[1.0]]}, {"name": "beaker4", "directions": 1, "delays": [[1.0]]}, {"name": "beaker5", "directions": 1, "delays": [[1.0]]}, {"name": "beaker6", "directions": 1, "delays": [[1.0]]}, {"name": "beakerlarge1", "directions": 1, "delays": [[1.0]]}, {"name": "beakerlarge2", "directions": 1, "delays": [[1.0]]}, {"name": "beakerlarge3", "directions": 1, "delays": [[1.0]]}, {"name": "beakerlarge4", "directions": 1, "delays": [[1.0]]}, {"name": "beakerlarge5", "directions": 1, "delays": [[1.0]]}, {"name": "beakerlarge6", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-1-1", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-1-2", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-1-3", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-1-4", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-1-5", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-1-6", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-2-1", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-2-2", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-2-3", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-2-4", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-2-5", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-2-6", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-3-1", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-3-2", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-3-3", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-3-4", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-3-5", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-3-6", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-4-1", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-4-2", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-4-3", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-4-4", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-4-5", "directions": 1, "delays": [[1.0]]}, {"name": "bottle-4-6", "directions": 1, "delays": [[1.0]]}, {"name": "dropper1", "directions": 1, "delays": [[1.0]]}, {"name": "glass1", "directions": 1, "delays": [[1.0]]}, {"name": "glass2", "directions": 1, "delays": [[1.0]]}, {"name": "glass3", "directions": 1, "delays": [[1.0]]}, {"name": "glass4", "directions": 1, "delays": [[1.0]]}, {"name": "glass5", "directions": 1, "delays": [[1.0]]}, {"name": "glass6", "directions": 1, "delays": [[1.0]]}, {"name": "largebottle1", "directions": 1, "delays": [[1.0]]}, {"name": "largebottle2", "directions": 1, "delays": [[1.0]]}, {"name": "largebottle3", "directions": 1, "delays": [[1.0]]}, {"name": "largebottle4", "directions": 1, "delays": [[1.0]]}, {"name": "largebottle5", "directions": 1, "delays": [[1.0]]}, {"name": "largebottle6", "directions": 1, "delays": [[1.0]]}, {"name": "smallbottle1", "directions": 1, "delays": [[1.0]]}, {"name": "smallbottle2", "directions": 1, "delays": [[1.0]]}, {"name": "smallbottle3", "directions": 1, "delays": [[1.0]]}, {"name": "smallbottle4", "directions": 1, "delays": [[1.0]]}, {"name": "smallbottle5", "directions": 1, "delays": [[1.0]]}, {"name": "smallbottle6", "directions": 1, "delays": [[1.0]]}, {"name": "syringe1", "directions": 1, "delays": [[1.0]]}, {"name": "syringe2", "directions": 1, "delays": [[1.0]]}, {"name": "syringe3", "directions": 1, "delays": [[1.0]]}, {"name": "syringe4", "directions": 1, "delays": [[1.0]]}, {"name": "vial1", "directions": 1, "delays": [[1.0]]}, {"name": "vial2", "directions": 1, "delays": [[1.0]]}, {"name": "vial3", "directions": 1, "delays": [[1.0]]}, {"name": "vial4", "directions": 1, "delays": [[1.0]]}, {"name": "vial5", "directions": 1, "delays": [[1.0]]}, {"name": "vial6", "directions": 1, "delays": [[1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "backpack1", "delays": [[1.0]]}, {"name": "backpack2", "delays": [[1.0]]}, {"name": "backpackmob1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "backpackmob2", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "beaker1", "delays": [[1.0]]}, {"name": "beaker2", "delays": [[1.0]]}, {"name": "beaker3", "delays": [[1.0]]}, {"name": "beaker4", "delays": [[1.0]]}, {"name": "beaker5", "delays": [[1.0]]}, {"name": "beaker6", "delays": [[1.0]]}, {"name": "beakerlarge1", "delays": [[1.0]]}, {"name": "beakerlarge2", "delays": [[1.0]]}, {"name": "beakerlarge3", "delays": [[1.0]]}, {"name": "beakerlarge4", "delays": [[1.0]]}, {"name": "beakerlarge5", "delays": [[1.0]]}, {"name": "beakerlarge6", "delays": [[1.0]]}, {"name": "bottle-1-1", "delays": [[1.0]]}, {"name": "bottle-1-2", "delays": [[1.0]]}, {"name": "bottle-1-3", "delays": [[1.0]]}, {"name": "bottle-1-4", "delays": [[1.0]]}, {"name": "bottle-1-5", "delays": [[1.0]]}, {"name": "bottle-1-6", "delays": [[1.0]]}, {"name": "bottle-2-1", "delays": [[1.0]]}, {"name": "bottle-2-2", "delays": [[1.0]]}, {"name": "bottle-2-3", "delays": [[1.0]]}, {"name": "bottle-2-4", "delays": [[1.0]]}, {"name": "bottle-2-5", "delays": [[1.0]]}, {"name": "bottle-2-6", "delays": [[1.0]]}, {"name": "bottle-3-1", "delays": [[1.0]]}, {"name": "bottle-3-2", "delays": [[1.0]]}, {"name": "bottle-3-3", "delays": [[1.0]]}, {"name": "bottle-3-4", "delays": [[1.0]]}, {"name": "bottle-3-5", "delays": [[1.0]]}, {"name": "bottle-3-6", "delays": [[1.0]]}, {"name": "bottle-4-1", "delays": [[1.0]]}, {"name": "bottle-4-2", "delays": [[1.0]]}, {"name": "bottle-4-3", "delays": [[1.0]]}, {"name": "bottle-4-4", "delays": [[1.0]]}, {"name": "bottle-4-5", "delays": [[1.0]]}, {"name": "bottle-4-6", "delays": [[1.0]]}, {"name": "dropper1", "delays": [[1.0]]}, {"name": "glass1", "delays": [[1.0]]}, {"name": "glass2", "delays": [[1.0]]}, {"name": "glass3", "delays": [[1.0]]}, {"name": "glass4", "delays": [[1.0]]}, {"name": "glass5", "delays": [[1.0]]}, {"name": "glass6", "delays": [[1.0]]}, {"name": "largebottle1", "delays": [[1.0]]}, {"name": "largebottle2", "delays": [[1.0]]}, {"name": "largebottle3", "delays": [[1.0]]}, {"name": "largebottle4", "delays": [[1.0]]}, {"name": "largebottle5", "delays": [[1.0]]}, {"name": "largebottle6", "delays": [[1.0]]}, {"name": "smallbottle1", "delays": [[1.0]]}, {"name": "smallbottle2", "delays": [[1.0]]}, {"name": "smallbottle3", "delays": [[1.0]]}, {"name": "smallbottle4", "delays": [[1.0]]}, {"name": "smallbottle5", "delays": [[1.0]]}, {"name": "smallbottle6", "delays": [[1.0]]}, {"name": "syringe1", "delays": [[1.0]]}, {"name": "syringe2", "delays": [[1.0]]}, {"name": "syringe3", "delays": [[1.0]]}, {"name": "syringe4", "delays": [[1.0]]}, {"name": "vial1", "delays": [[1.0]]}, {"name": "vial2", "delays": [[1.0]]}, {"name": "vial3", "delays": [[1.0]]}, {"name": "vial4", "delays": [[1.0]]}, {"name": "vial5", "delays": [[1.0]]}, {"name": "vial6", "delays": [[1.0]]}]} diff --git a/Resources/Textures/Objects/Specific/Chemistry/hypospray.rsi/meta.json b/Resources/Textures/Objects/Specific/Chemistry/hypospray.rsi/meta.json index ef6407ddf0..c14ea7be4d 100644 --- a/Resources/Textures/Objects/Specific/Chemistry/hypospray.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Chemistry/hypospray.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "directions": 1, "delays": [[1.0]]}, {"name": "1", "directions": 1, "delays": [[1.0]]}, {"name": "10", "directions": 1, "delays": [[1.0]]}, {"name": "15", "directions": 1, "delays": [[1.0]]}, {"name": "5", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector0", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_black", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_black0", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_red", "directions": 1, "delays": [[1.0]]}, {"name": "autoinjector_red0", "directions": 1, "delays": [[1.0]]}, {"name": "borghypo", "directions": 1, "delays": [[1.0]]}, {"name": "borghypo_s", "directions": 1, "delays": [[1.0]]}, {"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "combat_hypo", "directions": 1, "delays": [[1.0]]}, {"name": "draw", "directions": 1, "delays": [[1.0]]}, {"name": "hypo", "directions": 1, "delays": [[1.0]]}, {"name": "inject", "directions": 1, "delays": [[1.0]]}, {"name": "syringeproj", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "delays": [[1.0]]}, {"name": "1", "delays": [[1.0]]}, {"name": "10", "delays": [[1.0]]}, {"name": "15", "delays": [[1.0]]}, {"name": "5", "delays": [[1.0]]}, {"name": "autoinjector", "delays": [[1.0]]}, {"name": "autoinjector0", "delays": [[1.0]]}, {"name": "autoinjector_black", "delays": [[1.0]]}, {"name": "autoinjector_black0", "delays": [[1.0]]}, {"name": "autoinjector_red", "delays": [[1.0]]}, {"name": "autoinjector_red0", "delays": [[1.0]]}, {"name": "borghypo", "delays": [[1.0]]}, {"name": "borghypo_s", "delays": [[1.0]]}, {"name": "broken", "delays": [[1.0]]}, {"name": "combat_hypo", "delays": [[1.0]]}, {"name": "draw", "delays": [[1.0]]}, {"name": "hypo", "delays": [[1.0]]}, {"name": "inject", "delays": [[1.0]]}, {"name": "syringeproj", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Chemistry/syringe.rsi/meta.json b/Resources/Textures/Objects/Specific/Chemistry/syringe.rsi/meta.json index 65f3e06506..d1df4d8152 100644 --- a/Resources/Textures/Objects/Specific/Chemistry/syringe.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Chemistry/syringe.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "directions": 1, "delays": [[1.0]]}, {"name": "1", "directions": 1, "delays": [[1.0]]}, {"name": "10", "directions": 1, "delays": [[1.0]]}, {"name": "15", "directions": 1, "delays": [[1.0]]}, {"name": "5", "directions": 1, "delays": [[1.0]]}, {"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "syringeproj", "directions": 1, "delays": [[1.0]]}]} +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "0", "delays": [[1.0]]}, {"name": "1", "delays": [[1.0]]}, {"name": "10", "delays": [[1.0]]}, {"name": "15", "delays": [[1.0]]}, {"name": "5", "delays": [[1.0]]}, {"name": "broken", "delays": [[1.0]]}, {"name": "syringeproj", "delays": [[1.0]]}]} diff --git a/Resources/Textures/Objects/Specific/Hydroponics/apple.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/apple.rsi/meta.json index bf938ef176..5c1437d0d7 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/apple.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/apple.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}, {"name": "stage-5", "delays": [[1.0]]}, {"name": "stage-6", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/meta.json index 071061f671..2ab19e9f40 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/meta.json @@ -1 +1,128 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "peel", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/6be7633abca9f1a51cab1020500cf0776ce78e5c", + "states": [ + { + "name": "dead", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "harvest", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "produce", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "peel", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "peel2", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "peel3", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "seed", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "stage-1", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "stage-2", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "stage-3", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "stage-4", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "stage-5", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + }, + { + "name": "stage-6", + "directions": 1, + "delays": [ + [ + 1 + ] + ] + } + ] +} diff --git a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel.png b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel.png index 043e44b8b5..8cfedd0a9d 100644 Binary files a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel.png and b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel.png differ diff --git a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel2.png b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel2.png new file mode 100644 index 0000000000..66eb184a21 Binary files /dev/null and b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel2.png differ diff --git a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel3.png b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel3.png new file mode 100644 index 0000000000..e0239c2588 Binary files /dev/null and b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/peel3.png differ diff --git a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/produce.png b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/produce.png index 6fff5385e8..b9a55fa6db 100644 Binary files a/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/produce.png and b/Resources/Textures/Objects/Specific/Hydroponics/banana.rsi/produce.png differ diff --git a/Resources/Textures/Objects/Specific/Hydroponics/carrot.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/carrot.rsi/meta.json index f2e9246eb4..e84d781385 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/carrot.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/carrot.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/chanterelle.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/chanterelle.rsi/meta.json index f2e9246eb4..e84d781385 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/chanterelle.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/chanterelle.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/corn.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/corn.rsi/meta.json index eac1c3ca61..92b1223eb2 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/corn.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/corn.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "cob", "directions": 1, "delays": [[1.0]]}, {"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "produce_big", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "cob", "delays": [[1.0]]}, {"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "produce_big", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/eggplant.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/eggplant.rsi/meta.json index bf938ef176..5c1437d0d7 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/eggplant.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/eggplant.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}, {"name": "stage-5", "delays": [[1.0]]}, {"name": "stage-6", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/eggy.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/eggy.rsi/meta.json index bf938ef176..5c1437d0d7 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/eggy.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/eggy.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}, {"name": "stage-5", "delays": [[1.0]]}, {"name": "stage-6", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/lemon.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/lemon.rsi/meta.json index bf938ef176..5c1437d0d7 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/lemon.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/lemon.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}, {"name": "stage-5", "delays": [[1.0]]}, {"name": "stage-6", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/potato.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/potato.rsi/meta.json index 9d25171028..6eadfb0fcd 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/potato.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/potato.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/seeds.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/seeds.rsi/meta.json index dddedb1162..7088511946 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/seeds.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/seeds.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "mycelium-empty", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "seed-alien1", "directions": 1, "delays": [[1.0]]}, {"name": "seed-alien2", "directions": 1, "delays": [[1.0]]}, {"name": "seed-alien3", "directions": 1, "delays": [[1.0]]}, {"name": "seed-alien4", "directions": 1, "delays": [[1.0]]}, {"name": "seed-synthbrain", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "mycelium-empty", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "seed-alien1", "delays": [[1.0]]}, {"name": "seed-alien2", "delays": [[1.0]]}, {"name": "seed-alien3", "delays": [[1.0]]}, {"name": "seed-alien4", "delays": [[1.0]]}, {"name": "seed-synthbrain", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/sugarcane.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/sugarcane.rsi/meta.json index f2e9246eb4..e84d781385 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/sugarcane.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/sugarcane.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/tomato.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/tomato.rsi/meta.json index bf938ef176..5c1437d0d7 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/tomato.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/tomato.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}, {"name": "stage-5", "delays": [[1.0]]}, {"name": "stage-6", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/towercap.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/towercap.rsi/meta.json index f2e9246eb4..e84d781385 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/towercap.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/towercap.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Hydroponics/wheat.rsi/meta.json b/Resources/Textures/Objects/Specific/Hydroponics/wheat.rsi/meta.json index bf938ef176..5c1437d0d7 100644 --- a/Resources/Textures/Objects/Specific/Hydroponics/wheat.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Hydroponics/wheat.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "directions": 1, "delays": [[1.0]]}, {"name": "harvest", "directions": 1, "delays": [[1.0]]}, {"name": "produce", "directions": 1, "delays": [[1.0]]}, {"name": "seed", "directions": 1, "delays": [[1.0]]}, {"name": "stage-1", "directions": 1, "delays": [[1.0]]}, {"name": "stage-2", "directions": 1, "delays": [[1.0]]}, {"name": "stage-3", "directions": 1, "delays": [[1.0]]}, {"name": "stage-4", "directions": 1, "delays": [[1.0]]}, {"name": "stage-5", "directions": 1, "delays": [[1.0]]}, {"name": "stage-6", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA 3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068", "states": [{"name": "dead", "delays": [[1.0]]}, {"name": "harvest", "delays": [[1.0]]}, {"name": "produce", "delays": [[1.0]]}, {"name": "seed", "delays": [[1.0]]}, {"name": "stage-1", "delays": [[1.0]]}, {"name": "stage-2", "delays": [[1.0]]}, {"name": "stage-3", "delays": [[1.0]]}, {"name": "stage-4", "delays": [[1.0]]}, {"name": "stage-5", "delays": [[1.0]]}, {"name": "stage-6", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json index b0eeb48a4b..dcce0b948e 100644 --- a/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "bucket", - "directions": 1, "delays": [ [ 1 @@ -16,7 +15,6 @@ }, { "name": "bucket_water", - "directions": 1, "delays": [ [ 1 @@ -25,7 +23,6 @@ }, { "name": "cleaner", - "directions": 1, "delays": [ [ 1 @@ -34,7 +31,6 @@ }, { "name": "mopbucket", - "directions": 1, "delays": [ [ 1 @@ -43,7 +39,6 @@ }, { "name": "mopbucket_water", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Specific/Janitorial/mop.rsi/meta.json b/Resources/Textures/Objects/Specific/Janitorial/mop.rsi/meta.json index 284a18f42c..4301060d22 100644 --- a/Resources/Textures/Objects/Specific/Janitorial/mop.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Janitorial/mop.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mop", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mop", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Janitorial/soap.rsi/meta.json b/Resources/Textures/Objects/Specific/Janitorial/soap.rsi/meta.json index 73934a51bf..83b857de0a 100644 --- a/Resources/Textures/Objects/Specific/Janitorial/soap.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Janitorial/soap.rsi/meta.json @@ -9,57 +9,27 @@ "states": [ { "name": "soap", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "soapdeluxe", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "soapgibs", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "soapnt", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "soapomega", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "soapsyndie", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Janitorial/wet_floor_sign.rsi/meta.json b/Resources/Textures/Objects/Specific/Janitorial/wet_floor_sign.rsi/meta.json index 3bbf803a8b..4f52b31a49 100644 --- a/Resources/Textures/Objects/Specific/Janitorial/wet_floor_sign.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Janitorial/wet_floor_sign.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "caution", "directions": 1, "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "caution", "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/meta.json b/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/meta.json deleted file mode 100644 index 36d0f22970..0000000000 --- a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/meta.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "version": 1, - "license": "CC BY-SA 3.0", - "copyright": "Taken from https://github.com/tgstation/tgstation at commit 9bebd81ae0b0a7f952b59886a765c681205de31f", - "size": { - "x": 32, - "y": 32 - }, - "states": [ - { - "name": "pod_0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "scanner", - "directions": 1, - "delays": [ - [ - 0.2, - 0.2 - ] - ] - }, - { - "name": "scanner_maintenance", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "scanner_occupied", - "directions": 1, - "delays": [ - [ - 0.1, - 0.1, - 0.1, - 0.1 - ] - ] - }, - { - "name": "scanner_open", - "directions": 1, - "delays": [ - [ - 0.2, - 0.2 - ] - ] - }, - { - "name": "scanner_open_maintenance", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "scanner_open_unpowered", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "scanner_unpowered", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - } - ] -} diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner.png b/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner.png deleted file mode 100644 index 01b9c37f9e..0000000000 Binary files a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner.png and /dev/null differ diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_maintenance.png b/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_maintenance.png deleted file mode 100644 index b659cb7f35..0000000000 Binary files a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_maintenance.png and /dev/null differ diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open.png b/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open.png deleted file mode 100644 index 4af3b01611..0000000000 Binary files a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open.png and /dev/null differ diff --git a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open_maintenance.png b/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open_maintenance.png deleted file mode 100644 index 513eb24d71..0000000000 Binary files a/Resources/Textures/Objects/Specific/Medical/BodyScanner.rsi/scanner_open_maintenance.png and /dev/null differ diff --git a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/meta.json b/Resources/Textures/Objects/Specific/Medical/cloning.rsi/meta.json deleted file mode 100644 index ac8957b3fe..0000000000 --- a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/meta.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "version": 1, - "size": { - "x": 32, - "y": 32 - }, - "license": "CC BY-SA 3.0", - "copyright": "Taken from https://github.com/tgstation/tgstation at commit 9bebd81ae0b0a7f952b59886a765c681205de31f", - "states": [ - { - "name": "pod_0", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] - }, - { - "name": "pod_1", - "directions": 1, - "delays": [ - [ - 0.2, - 0.2, - 0.2, - 0.2 - ] - ] - }, - { - "name": "pod_e", - "directions": 1, - "delays": [ - [ - 0.2, - 0.2, - 0.2, - 0.2 - ] - ] - }, - { - "name": "pod_g", - "directions": 1, - "delays": [ - [ - 0.2, - 0.2, - 0.2, - 0.2 - ] - ] - } - ] -} \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_0.png b/Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_0.png deleted file mode 100644 index 13d289fd6c..0000000000 Binary files a/Resources/Textures/Objects/Specific/Medical/cloning.rsi/pod_0.png and /dev/null differ diff --git a/Resources/Textures/Objects/Specific/Medical/medical.rsi/meta.json b/Resources/Textures/Objects/Specific/Medical/medical.rsi/meta.json index d353161614..52db031b86 100644 --- a/Resources/Textures/Objects/Specific/Medical/medical.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Medical/medical.rsi/meta.json @@ -6,46 +6,22 @@ }, "states": [ { - "name": "brutepack", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "brutepack" }, { - "name": "cast", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "cast" }, { - "name": "gauze", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "gauze" }, { - "name": "medkit_r", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "medkit_r" }, { - "name": "morphine", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "morphine" }, { - "name": "ointment", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "ointment" } ] } diff --git a/Resources/Textures/Objects/Specific/Medical/surgery_tools.rsi/meta.json b/Resources/Textures/Objects/Specific/Medical/surgery_tools.rsi/meta.json index 065ba43164..e5e2f55219 100644 --- a/Resources/Textures/Objects/Specific/Medical/surgery_tools.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Medical/surgery_tools.rsi/meta.json @@ -1,51 +1,27 @@ { - "version": 1, + "version": 1, "size": { - "x": 32, + "x": 32, "y": 32 - }, + }, "states": [ { - "name": "scalpel", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "scalpel" }, { - "name": "retractor", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "retractor" }, { - "name": "bone_saw", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "bone_saw" }, { - "name": "hemostat", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "hemostat" }, { - "name": "drill", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "drill" }, { - "name": "cautery", - "directions": 1, - "delays": [ - [1.0] - ] + "name": "cautery" } ] -} \ No newline at end of file +} diff --git a/Resources/Textures/Objects/Specific/Morgue/bodybags.rsi/meta.json b/Resources/Textures/Objects/Specific/Morgue/bodybags.rsi/meta.json index 9eaad9e7d7..0f08d50f9d 100644 --- a/Resources/Textures/Objects/Specific/Morgue/bodybags.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Morgue/bodybags.rsi/meta.json @@ -9,39 +9,19 @@ "states": [ { "name": "bag", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "item", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "label_overlay", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "open_overlay", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Storage/boxes.rsi/meta.json b/Resources/Textures/Objects/Storage/boxes.rsi/meta.json index bce379dc40..26a7b55bb0 100644 --- a/Resources/Textures/Objects/Storage/boxes.rsi/meta.json +++ b/Resources/Textures/Objects/Storage/boxes.rsi/meta.json @@ -8,128 +8,97 @@ }, "states": [ { - "name": "beaker", - "directions": 1 + "name": "beaker" }, { - "name": "bodybags", - "directions": 1 + "name": "bodybags" }, { - "name": "clown", - "directions": 1 + "name": "clown" }, { - "name": "heart", - "directions": 1 + "name": "heart" }, { - "name": "meson", - "directions": 1 + "name": "meson" }, { - "name": "sechud", - "directions": 1 + "name": "sechud" }, { - "name": "box", - "directions": 1 + "name": "box" }, { - "name": "box_hug", - "directions": 1 + "name": "box_hug" }, { - "name": "box_donk_pocket", - "directions": 1 + "name": "box_donk_pocket" }, { - "name": "box_id", - "directions": 1 + "name": "box_id" }, { - "name": "box_of_doom", - "directions": 1 + "name": "box_of_doom" }, { - "name": "box_of_doom_big", - "directions": 1 + "name": "box_of_doom_big" }, { - "name": "box_security", - "directions": 1 + "name": "box_security" }, { - "name": "circuit", - "directions": 1 + "name": "circuit" }, { - "name": "disk", - "directions": 1 + "name": "disk" }, { - "name": "flashbang", - "directions": 1 + "name": "flashbang" }, { - "name": "glasses", - "directions": 1 + "name": "glasses" }, { - "name": "handcuff", - "directions": 1 + "name": "handcuff" }, { - "name": "implant", - "directions": 1 + "name": "implant" }, { - "name": "latex", - "directions": 1 + "name": "latex" }, { - "name": "light", - "directions": 1 + "name": "light" }, { - "name": "lightmixed", - "directions": 1 + "name": "lightmixed" }, { - "name": "lighttube", - "directions": 1 + "name": "lighttube" }, { - "name": "mousetraps", - "directions": 1 + "name": "mousetraps" }, { - "name": "pda", - "directions": 1 + "name": "pda" }, { - "name": "pillbox", - "directions": 1 + "name": "pillbox" }, { - "name": "solution_trays", - "directions": 1 + "name": "solution_trays" }, { - "name": "sterile", - "directions": 1 + "name": "sterile" }, { - "name": "syringe", - "directions": 1 + "name": "syringe" }, { - "name": "writing", - "directions": 1 + "name": "writing" }, { - "name": "writing_of_doom", - "directions": 1 + "name": "writing_of_doom" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Storage/boxicons.rsi/meta.json b/Resources/Textures/Objects/Storage/boxicons.rsi/meta.json index 7e5c5370c1..9542d5e2fd 100644 --- a/Resources/Textures/Objects/Storage/boxicons.rsi/meta.json +++ b/Resources/Textures/Objects/Storage/boxicons.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "beaker", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "bodybags", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "meson", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "sechud", - "directions": 1, "delays": [ [ 1 @@ -45,7 +41,6 @@ }, { "name": "box", - "directions": 1, "delays": [ [ 1 @@ -54,7 +49,6 @@ }, { "name": "box_of_doom", - "directions": 1, "delays": [ [ 1 @@ -63,7 +57,6 @@ }, { "name": "circuit", - "directions": 1, "delays": [ [ 1 @@ -72,7 +65,6 @@ }, { "name": "disk_kit", - "directions": 1, "delays": [ [ 1 @@ -81,7 +73,6 @@ }, { "name": "donk_kit", - "directions": 1, "delays": [ [ 1 @@ -90,7 +81,6 @@ }, { "name": "flashbang", - "directions": 1, "delays": [ [ 1 @@ -99,7 +89,6 @@ }, { "name": "glasses", - "directions": 1, "delays": [ [ 1 @@ -108,7 +97,6 @@ }, { "name": "handcuff", - "directions": 1, "delays": [ [ 1 @@ -117,7 +105,6 @@ }, { "name": "implant", - "directions": 1, "delays": [ [ 1 @@ -126,7 +113,6 @@ }, { "name": "latex", - "directions": 1, "delays": [ [ 1 @@ -135,7 +121,6 @@ }, { "name": "light", - "directions": 1, "delays": [ [ 1 @@ -144,7 +129,6 @@ }, { "name": "lightmixed", - "directions": 1, "delays": [ [ 1 @@ -153,7 +137,6 @@ }, { "name": "lighttube", - "directions": 1, "delays": [ [ 1 @@ -162,7 +145,6 @@ }, { "name": "mousetraps", - "directions": 1, "delays": [ [ 1 @@ -171,7 +153,6 @@ }, { "name": "pda", - "directions": 1, "delays": [ [ 1 @@ -180,7 +161,6 @@ }, { "name": "pillbox", - "directions": 1, "delays": [ [ 1 @@ -189,7 +169,6 @@ }, { "name": "solution_trays", - "directions": 1, "delays": [ [ 1 @@ -198,7 +177,6 @@ }, { "name": "sterile", - "directions": 1, "delays": [ [ 1 @@ -207,7 +185,6 @@ }, { "name": "syringe", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Storage/donkpocket.rsi/meta.json b/Resources/Textures/Objects/Storage/donkpocket.rsi/meta.json index a48e79dae2..e1d4788838 100644 --- a/Resources/Textures/Objects/Storage/donkpocket.rsi/meta.json +++ b/Resources/Textures/Objects/Storage/donkpocket.rsi/meta.json @@ -45,7 +45,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tanks/anesthetic.rsi/meta.json b/Resources/Textures/Objects/Tanks/anesthetic.rsi/meta.json index 5fdc78ab33..dd8c5dafbc 100644 --- a/Resources/Textures/Objects/Tanks/anesthetic.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/anesthetic.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Objects/Tanks/emergency.rsi/meta.json b/Resources/Textures/Objects/Tanks/emergency.rsi/meta.json index 6575e1e487..845b9b8b62 100644 --- a/Resources/Textures/Objects/Tanks/emergency.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/emergency.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Objects/Tanks/emergency_double.rsi/meta.json b/Resources/Textures/Objects/Tanks/emergency_double.rsi/meta.json index 6575e1e487..845b9b8b62 100644 --- a/Resources/Textures/Objects/Tanks/emergency_double.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/emergency_double.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Objects/Tanks/emergency_yellow.rsi/meta.json b/Resources/Textures/Objects/Tanks/emergency_yellow.rsi/meta.json index 6575e1e487..845b9b8b62 100644 --- a/Resources/Textures/Objects/Tanks/emergency_yellow.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/emergency_yellow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Objects/Tanks/generic.rsi/meta.json b/Resources/Textures/Objects/Tanks/generic.rsi/meta.json index 19e8d88681..58fb2d8bc3 100644 --- a/Resources/Textures/Objects/Tanks/generic.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/generic.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Objects/Tanks/oxygen.rsi/meta.json b/Resources/Textures/Objects/Tanks/oxygen.rsi/meta.json index 19e8d88681..58fb2d8bc3 100644 --- a/Resources/Textures/Objects/Tanks/oxygen.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/oxygen.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Objects/Tanks/phoron.rsi/meta.json b/Resources/Textures/Objects/Tanks/phoron.rsi/meta.json index 6575e1e487..845b9b8b62 100644 --- a/Resources/Textures/Objects/Tanks/phoron.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/phoron.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BELT", diff --git a/Resources/Textures/Objects/Tanks/plasmaman.rsi/meta.json b/Resources/Textures/Objects/Tanks/plasmaman.rsi/meta.json index 6331b3935e..e08f741dd9 100644 --- a/Resources/Textures/Objects/Tanks/plasmaman.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/plasmaman.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Objects/Tanks/red.rsi/meta.json b/Resources/Textures/Objects/Tanks/red.rsi/meta.json index 5fdc78ab33..dd8c5dafbc 100644 --- a/Resources/Textures/Objects/Tanks/red.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/red.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Objects/Tanks/yellow.rsi/meta.json b/Resources/Textures/Objects/Tanks/yellow.rsi/meta.json index 5fdc78ab33..dd8c5dafbc 100644 --- a/Resources/Textures/Objects/Tanks/yellow.rsi/meta.json +++ b/Resources/Textures/Objects/Tanks/yellow.rsi/meta.json @@ -8,8 +8,7 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "equipped-BACKPACK", diff --git a/Resources/Textures/Objects/Tiles/cevtile.rsi/meta.json b/Resources/Textures/Objects/Tiles/cevtile.rsi/meta.json index 92e296e950..653ddb2574 100644 --- a/Resources/Textures/Objects/Tiles/cevtile.rsi/meta.json +++ b/Resources/Textures/Objects/Tiles/cevtile.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "", "directions": 1, "delays": [[1.0]]}, {"name": "tile", "directions": 1, "delays": [[1.0]]}, {"name": "tile-white-techfloor", "directions": 1, "delays": [[1.0]]}, {"name": "tile_bcarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_blucarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_cafe", "directions": 1, "delays": [[1.0]]}, {"name": "tile_carpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_bluecorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_brownperforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_brownplatform", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_cargo", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_cyancorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_danger", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_golden", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_grayperforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_grayplatform", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_monofloor", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_orangecorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_panels", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_techfloor", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_techfloor_grid", "directions": 1, "delays": [[1.0]]}, {"name": "tile_dark_violetcorener", "directions": 1, "delays": [[1.0]]}, {"name": "tile_gaycarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_grass", "directions": 1, "delays": [[1.0]]}, {"name": "tile_oracarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_purcarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_sblucarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_bar_dance", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_bar_flat", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_bar_light", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_bluecorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_brownperforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_brownplatform", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_cargo", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_cyancorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_danger", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_golden", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_grayperforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_grayplatform", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_monofloor", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_orangecorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_panels", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_techfloor", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_techfloor_grid", "directions": 1, "delays": [[1.0]]}, {"name": "tile_steel_violetcorener", "directions": 1, "delays": [[1.0]]}, {"name": "tile_techmaint", "directions": 1, "delays": [[1.0]]}, {"name": "tile_techmaint_cargo", "directions": 1, "delays": [[1.0]]}, {"name": "tile_techmaint_panels", "directions": 1, "delays": [[1.0]]}, {"name": "tile_techmaint_perforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_turcarpet", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_bluecorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_brownperforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_brownplatform", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_cargo", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_cyancorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_danger", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_golden", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_grayperforated", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_grayplatform", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_monofloor", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_orangecorner", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_panels", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_techfloor_grid", "directions": 1, "delays": [[1.0]]}, {"name": "tile_white_violetcorener", "directions": 1, "delays": [[1.0]]}, {"name": "tile_wood", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "", "delays": [[1.0]]}, {"name": "tile", "delays": [[1.0]]}, {"name": "tile-white-techfloor", "delays": [[1.0]]}, {"name": "tile_bcarpet", "delays": [[1.0]]}, {"name": "tile_blucarpet", "delays": [[1.0]]}, {"name": "tile_cafe", "delays": [[1.0]]}, {"name": "tile_carpet", "delays": [[1.0]]}, {"name": "tile_dark", "delays": [[1.0]]}, {"name": "tile_dark_bluecorner", "delays": [[1.0]]}, {"name": "tile_dark_brownperforated", "delays": [[1.0]]}, {"name": "tile_dark_brownplatform", "delays": [[1.0]]}, {"name": "tile_dark_cargo", "delays": [[1.0]]}, {"name": "tile_dark_cyancorner", "delays": [[1.0]]}, {"name": "tile_dark_danger", "delays": [[1.0]]}, {"name": "tile_dark_golden", "delays": [[1.0]]}, {"name": "tile_dark_grayperforated", "delays": [[1.0]]}, {"name": "tile_dark_grayplatform", "delays": [[1.0]]}, {"name": "tile_dark_monofloor", "delays": [[1.0]]}, {"name": "tile_dark_orangecorner", "delays": [[1.0]]}, {"name": "tile_dark_panels", "delays": [[1.0]]}, {"name": "tile_dark_techfloor", "delays": [[1.0]]}, {"name": "tile_dark_techfloor_grid", "delays": [[1.0]]}, {"name": "tile_dark_violetcorener", "delays": [[1.0]]}, {"name": "tile_gaycarpet", "delays": [[1.0]]}, {"name": "tile_grass", "delays": [[1.0]]}, {"name": "tile_oracarpet", "delays": [[1.0]]}, {"name": "tile_purcarpet", "delays": [[1.0]]}, {"name": "tile_sblucarpet", "delays": [[1.0]]}, {"name": "tile_steel", "delays": [[1.0]]}, {"name": "tile_steel_bar_dance", "delays": [[1.0]]}, {"name": "tile_steel_bar_flat", "delays": [[1.0]]}, {"name": "tile_steel_bar_light", "delays": [[1.0]]}, {"name": "tile_steel_bluecorner", "delays": [[1.0]]}, {"name": "tile_steel_brownperforated", "delays": [[1.0]]}, {"name": "tile_steel_brownplatform", "delays": [[1.0]]}, {"name": "tile_steel_cargo", "delays": [[1.0]]}, {"name": "tile_steel_cyancorner", "delays": [[1.0]]}, {"name": "tile_steel_danger", "delays": [[1.0]]}, {"name": "tile_steel_golden", "delays": [[1.0]]}, {"name": "tile_steel_grayperforated", "delays": [[1.0]]}, {"name": "tile_steel_grayplatform", "delays": [[1.0]]}, {"name": "tile_steel_monofloor", "delays": [[1.0]]}, {"name": "tile_steel_orangecorner", "delays": [[1.0]]}, {"name": "tile_steel_panels", "delays": [[1.0]]}, {"name": "tile_steel_techfloor", "delays": [[1.0]]}, {"name": "tile_steel_techfloor_grid", "delays": [[1.0]]}, {"name": "tile_steel_violetcorener", "delays": [[1.0]]}, {"name": "tile_techmaint", "delays": [[1.0]]}, {"name": "tile_techmaint_cargo", "delays": [[1.0]]}, {"name": "tile_techmaint_panels", "delays": [[1.0]]}, {"name": "tile_techmaint_perforated", "delays": [[1.0]]}, {"name": "tile_turcarpet", "delays": [[1.0]]}, {"name": "tile_white", "delays": [[1.0]]}, {"name": "tile_white_bluecorner", "delays": [[1.0]]}, {"name": "tile_white_brownperforated", "delays": [[1.0]]}, {"name": "tile_white_brownplatform", "delays": [[1.0]]}, {"name": "tile_white_cargo", "delays": [[1.0]]}, {"name": "tile_white_cyancorner", "delays": [[1.0]]}, {"name": "tile_white_danger", "delays": [[1.0]]}, {"name": "tile_white_golden", "delays": [[1.0]]}, {"name": "tile_white_grayperforated", "delays": [[1.0]]}, {"name": "tile_white_grayplatform", "delays": [[1.0]]}, {"name": "tile_white_monofloor", "delays": [[1.0]]}, {"name": "tile_white_orangecorner", "delays": [[1.0]]}, {"name": "tile_white_panels", "delays": [[1.0]]}, {"name": "tile_white_techfloor_grid", "delays": [[1.0]]}, {"name": "tile_white_violetcorener", "delays": [[1.0]]}, {"name": "tile_wood", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Tiles/tile.rsi/meta.json b/Resources/Textures/Objects/Tiles/tile.rsi/meta.json index 41e23286c5..15b10a134d 100644 --- a/Resources/Textures/Objects/Tiles/tile.rsi/meta.json +++ b/Resources/Textures/Objects/Tiles/tile.rsi/meta.json @@ -7,7 +7,6 @@ "states": [ { "name": "tile_dark", - "directions": 1, "delays": [ [ 1 @@ -16,7 +15,6 @@ }, { "name": "tile_dirty", - "directions": 1, "delays": [ [ 1 @@ -25,7 +23,6 @@ }, { "name": "tile_gcircuit", - "directions": 1, "delays": [ [ 1 @@ -34,7 +31,6 @@ }, { "name": "tile_hydro", - "directions": 1, "delays": [ [ 1 @@ -43,7 +39,6 @@ }, { "name": "tile_plating", - "directions": 1, "delays": [ [ 1 @@ -52,7 +47,6 @@ }, { "name": "tile_reinforced", - "directions": 1, "delays": [ [ 1 @@ -61,7 +55,6 @@ }, { "name": "tile_rockvault", - "directions": 1, "delays": [ [ 1 @@ -70,7 +63,6 @@ }, { "name": "tile_gold", - "directions": 1, "delays": [ [ 1 @@ -79,7 +71,6 @@ }, { "name": "tile_showroom", - "directions": 1, "delays": [ [ 1 @@ -88,7 +79,6 @@ }, { "name": "tile_snow", - "directions": 1, "delays": [ [ 1 @@ -97,7 +87,6 @@ }, { "name": "tile_steel", - "directions": 1, "delays": [ [ 1 @@ -106,7 +95,6 @@ }, { "name": "tile_steel_techfloor_grid", - "directions": 1, "delays": [ [ 1 @@ -115,7 +103,6 @@ }, { "name": "tile_dark_techfloor_grid", - "directions": 1, "delays": [ [ 1 @@ -124,7 +111,6 @@ }, { "name": "tile_white", - "directions": 1, "delays": [ [ 1 @@ -133,7 +119,6 @@ }, { "name": "tile_white_monofloor", - "directions": 1, "delays": [ [ 1 @@ -142,7 +127,6 @@ }, { "name": "tile_wood", - "directions": 1, "delays": [ [ 1 @@ -151,7 +135,6 @@ }, { "name": "tile_carpet", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/cow_toolbox.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/cow_toolbox.rsi/meta.json index 94b3388890..5648d0aa86 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/cow_toolbox.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/cow_toolbox.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "cow_toolbox", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/cowbar.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/cowbar.rsi/meta.json index 318293e0c8..bbb318d5c4 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/cowbar.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/cowbar.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "cowbar", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/cowelder.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/cowelder.rsi/meta.json index 95b8edcb83..532b168218 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/cowelder.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/cowelder.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "welder_flame", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Objects/Tools/Cowtools/haycutters.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/haycutters.rsi/meta.json index d2ca7a62f3..768e8db038 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/haycutters.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/haycutters.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "haycutters", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/milkalyzer.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/milkalyzer.rsi/meta.json index cad6b5845e..ac2cf5ca22 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/milkalyzer.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/milkalyzer.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "milkalyzer", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/moodriver.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/moodriver.rsi/meta.json index 0740de2d83..24b3f6c744 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/moodriver.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/moodriver.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "moodriver", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/mooltitool.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/mooltitool.rsi/meta.json index 9556cd908d..d95dc135f3 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/mooltitool.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/mooltitool.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "mooltitool", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Cowtools/wronch.rsi/meta.json b/Resources/Textures/Objects/Tools/Cowtools/wronch.rsi/meta.json index dbf17a9658..dfc779928f 100644 --- a/Resources/Textures/Objects/Tools/Cowtools/wronch.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Cowtools/wronch.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "wronch", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_blue.rsi/meta.json b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_blue.rsi/meta.json index 649baaf1b0..484d5b8cc6 100644 --- a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_blue.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_blue.rsi/meta.json @@ -44,7 +44,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_gold.rsi/meta.json b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_gold.rsi/meta.json index 1fa6dbf895..45e9836290 100644 --- a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_gold.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_gold.rsi/meta.json @@ -44,7 +44,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_green.rsi/meta.json b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_green.rsi/meta.json index 649baaf1b0..484d5b8cc6 100644 --- a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_green.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_green.rsi/meta.json @@ -44,7 +44,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_red.rsi/meta.json b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_red.rsi/meta.json index 649baaf1b0..484d5b8cc6 100644 --- a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_red.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_red.rsi/meta.json @@ -44,7 +44,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_syn.rsi/meta.json b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_syn.rsi/meta.json index 649baaf1b0..484d5b8cc6 100644 --- a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_syn.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_syn.rsi/meta.json @@ -44,7 +44,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_yellow.rsi/meta.json b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_yellow.rsi/meta.json index 649baaf1b0..484d5b8cc6 100644 --- a/Resources/Textures/Objects/Tools/Toolboxes/toolbox_yellow.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/Toolboxes/toolbox_yellow.rsi/meta.json @@ -44,7 +44,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/cables.rsi/meta.json b/Resources/Textures/Objects/Tools/cables.rsi/meta.json index c5724138d5..a8ec21f293 100644 --- a/Resources/Textures/Objects/Tools/cables.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/cables.rsi/meta.json @@ -117,7 +117,6 @@ }, { "name": "coil-30", - "directions": 1, "delays": [ [ 1 @@ -126,7 +125,6 @@ }, { "name": "coil-20", - "directions": 1, "delays": [ [ 1 @@ -135,7 +133,6 @@ }, { "name": "coil-10", - "directions": 1, "delays": [ [ 1 @@ -144,7 +141,6 @@ }, { "name": "coilhv-30", - "directions": 1, "delays": [ [ 1 @@ -153,7 +149,6 @@ }, { "name": "coilhv-20", - "directions": 1, "delays": [ [ 1 @@ -162,7 +157,6 @@ }, { "name": "coilhv-10", - "directions": 1, "delays": [ [ 1 @@ -171,7 +165,6 @@ }, { "name": "coilmv-30", - "directions": 1, "delays": [ [ 1 @@ -180,7 +173,6 @@ }, { "name": "coilmv-20", - "directions": 1, "delays": [ [ 1 @@ -189,7 +181,6 @@ }, { "name": "coilmv-10", - "directions": 1, "delays": [ [ 1 @@ -198,7 +189,6 @@ }, { "name": "coillv-30", - "directions": 1, "delays": [ [ 1 @@ -207,7 +197,6 @@ }, { "name": "coillv-20", - "directions": 1, "delays": [ [ 1 @@ -216,7 +205,6 @@ }, { "name": "coillv-10", - "directions": 1, "delays": [ [ 1 @@ -225,7 +213,6 @@ }, { "name": "coilall-30", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/crowbar.rsi/meta.json b/Resources/Textures/Objects/Tools/crowbar.rsi/meta.json index 6b1b30d612..0164b302ca 100644 --- a/Resources/Textures/Objects/Tools/crowbar.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/crowbar.rsi/meta.json @@ -43,7 +43,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/crowbar_red.rsi/meta.json b/Resources/Textures/Objects/Tools/crowbar_red.rsi/meta.json index 6b1b30d612..0164b302ca 100644 --- a/Resources/Textures/Objects/Tools/crowbar_red.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/crowbar_red.rsi/meta.json @@ -43,7 +43,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/drill.rsi/meta.json b/Resources/Textures/Objects/Tools/drill.rsi/meta.json index 8ad8570034..01160cc149 100644 --- a/Resources/Textures/Objects/Tools/drill.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/drill.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "drill_bolt", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "drill_screw", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/flashlight.rsi/meta.json b/Resources/Textures/Objects/Tools/flashlight.rsi/meta.json index e2ed8c31da..fb3c96e435 100644 --- a/Resources/Textures/Objects/Tools/flashlight.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/flashlight.rsi/meta.json @@ -6,103 +6,29 @@ }, "states": [ { - "name": "lantern_off", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "lantern_off" }, { - "name": "lantern_on", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "lantern_on" }, { - "name": "HandheldLightOnOverlay", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + "name": "HandheldLightOnOverlay" }, { "name": "off-inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "off-inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "on-inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "on-inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] - }, + "directions": 4 + } ] } diff --git a/Resources/Textures/Objects/Tools/jaws_of_life.rsi/meta.json b/Resources/Textures/Objects/Tools/jaws_of_life.rsi/meta.json index 5ee04603b1..876c03d464 100644 --- a/Resources/Textures/Objects/Tools/jaws_of_life.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/jaws_of_life.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "jaws_cutter", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "jaws_pry", - "directions": 1, "delays": [ [ 1 @@ -27,7 +25,6 @@ }, { "name": "syn_jaws_cutter", - "directions": 1, "delays": [ [ 1 @@ -36,7 +33,6 @@ }, { "name": "syn_jaws_pry", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/lantern.rsi/meta.json b/Resources/Textures/Objects/Tools/lantern.rsi/meta.json index 745406c95d..749a8fda9c 100644 --- a/Resources/Textures/Objects/Tools/lantern.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/lantern.rsi/meta.json @@ -9,21 +9,11 @@ "states": [ { "name": "lantern", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "lantern-on", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "off-inhand-left", diff --git a/Resources/Textures/Objects/Tools/matches.rsi/match_burnt.png b/Resources/Textures/Objects/Tools/matches.rsi/match_burnt.png new file mode 100644 index 0000000000..de3e0b1e58 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/match_burnt.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/match_lit.png b/Resources/Textures/Objects/Tools/matches.rsi/match_lit.png new file mode 100644 index 0000000000..c307e67472 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/match_lit.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/match_unlit.png b/Resources/Textures/Objects/Tools/matches.rsi/match_unlit.png new file mode 100644 index 0000000000..32cc706734 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/match_unlit.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/matchbox.png b/Resources/Textures/Objects/Tools/matches.rsi/matchbox.png new file mode 100644 index 0000000000..dfd12b3a08 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/matchbox.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/matchbox_almostempty.png b/Resources/Textures/Objects/Tools/matches.rsi/matchbox_almostempty.png new file mode 100644 index 0000000000..3d3035ea85 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/matchbox_almostempty.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/matchbox_almostfull.png b/Resources/Textures/Objects/Tools/matches.rsi/matchbox_almostfull.png new file mode 100644 index 0000000000..b7a9a6e846 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/matchbox_almostfull.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/matchbox_e.png b/Resources/Textures/Objects/Tools/matches.rsi/matchbox_e.png new file mode 100644 index 0000000000..ba9a9fe405 Binary files /dev/null and b/Resources/Textures/Objects/Tools/matches.rsi/matchbox_e.png differ diff --git a/Resources/Textures/Objects/Tools/matches.rsi/meta.json b/Resources/Textures/Objects/Tools/matches.rsi/meta.json new file mode 100644 index 0000000000..514276e19b --- /dev/null +++ b/Resources/Textures/Objects/Tools/matches.rsi/meta.json @@ -0,0 +1,39 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bfc9c6ba8126ee8c41564d68c4bfb9ce37faa8f8", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "match_burnt" + }, + { + "name": "match_lit", + "delays": [ + [ + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "match_unlit" + }, + { + "name": "matchbox" + }, + { + "name": "matchbox_almostempty" + }, + { + "name": "matchbox_almostfull" + }, + { + "name": "matchbox_e" + } + ] +} diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/green-inhand-left.png b/Resources/Textures/Objects/Tools/multitool.rsi/green-inhand-left.png new file mode 100644 index 0000000000..7bad24cbcf Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/green-inhand-left.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/green-inhand-right.png b/Resources/Textures/Objects/Tools/multitool.rsi/green-inhand-right.png new file mode 100644 index 0000000000..a7f84f65f5 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/green-inhand-right.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/green-unlit.png b/Resources/Textures/Objects/Tools/multitool.rsi/green-unlit.png new file mode 100644 index 0000000000..fccc17e919 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/green-unlit.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/icon.png b/Resources/Textures/Objects/Tools/multitool.rsi/icon.png new file mode 100644 index 0000000000..6e16a3f7eb Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/meta.json b/Resources/Textures/Objects/Tools/multitool.rsi/meta.json index 2b499a45c1..403505ee39 100644 --- a/Resources/Textures/Objects/Tools/multitool.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/multitool.rsi/meta.json @@ -1,72 +1,59 @@ { "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/94f27c7b25bbde39c1412e24fb32bf6470fcc394", "size": { "x": 32, "y": 32 }, "states": [ + { + "name": "icon" + }, + { + "name": "green-unlit" + }, + { + "name": "yellow-unlit" + }, + { + "name": "red-unlit" + }, { "name": "inhand-left", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 }, { "name": "inhand-right", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] + "directions": 4 + }, + { + "name": "green-inhand-left", + "directions": 4 + }, + { + "name": "green-inhand-right", + "directions": 4 + }, + { + "name": "yellow-inhand-left", + "directions": 4 + }, + { + "name": "yellow-inhand-right", + "directions": 4 + }, + { + "name": "red-inhand-left", + "directions": 4 + }, + { + "name": "red-inhand-right", + "directions": 4 }, { "name": "equipped-BELT", - "directions": 4, - "delays": [ - [ - 1 - ], - [ - 1 - ], - [ - 1 - ], - [ - 1 - ] - ] - }, - { - "name": "multitool", - "directions": 1, - "delays": [ - [ - 1 - ] - ] + "directions": 4 } ] } diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/multitool.png b/Resources/Textures/Objects/Tools/multitool.rsi/multitool.png deleted file mode 100644 index 0a89791312..0000000000 Binary files a/Resources/Textures/Objects/Tools/multitool.rsi/multitool.png and /dev/null differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/red-inhand-left.png b/Resources/Textures/Objects/Tools/multitool.rsi/red-inhand-left.png new file mode 100644 index 0000000000..6273a48953 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/red-inhand-left.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/red-inhand-right.png b/Resources/Textures/Objects/Tools/multitool.rsi/red-inhand-right.png new file mode 100644 index 0000000000..91f633ea38 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/red-inhand-right.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/red-unlit.png b/Resources/Textures/Objects/Tools/multitool.rsi/red-unlit.png new file mode 100644 index 0000000000..a141fec4bf Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/red-unlit.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/yellow-inhand-left.png b/Resources/Textures/Objects/Tools/multitool.rsi/yellow-inhand-left.png new file mode 100644 index 0000000000..62c6be8d20 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/yellow-inhand-left.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/yellow-inhand-right.png b/Resources/Textures/Objects/Tools/multitool.rsi/yellow-inhand-right.png new file mode 100644 index 0000000000..66334a3b62 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/yellow-inhand-right.png differ diff --git a/Resources/Textures/Objects/Tools/multitool.rsi/yellow-unlit.png b/Resources/Textures/Objects/Tools/multitool.rsi/yellow-unlit.png new file mode 100644 index 0000000000..f890dbd413 Binary files /dev/null and b/Resources/Textures/Objects/Tools/multitool.rsi/yellow-unlit.png differ diff --git a/Resources/Textures/Objects/Tools/rcd.rsi/meta.json b/Resources/Textures/Objects/Tools/rcd.rsi/meta.json index 41da78bc42..4092920809 100644 --- a/Resources/Textures/Objects/Tools/rcd.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/rcd.rsi/meta.json @@ -62,21 +62,11 @@ }, { "name": "icon", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "rcd_ammo", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + } ] } diff --git a/Resources/Textures/Objects/Tools/rcl.rsi/meta.json b/Resources/Textures/Objects/Tools/rcl.rsi/meta.json index 7217b76768..5434f36e8e 100644 --- a/Resources/Textures/Objects/Tools/rcl.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/rcl.rsi/meta.json @@ -81,7 +81,6 @@ }, { "name": "rcl-0", - "directions": 1, "delays": [ [ 1 @@ -90,7 +89,6 @@ }, { "name": "rcl-10", - "directions": 1, "delays": [ [ 1 @@ -99,7 +97,6 @@ }, { "name": "rcl-20", - "directions": 1, "delays": [ [ 1 @@ -108,7 +105,6 @@ }, { "name": "rcl-30", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Tools/screwdriver.rsi/meta.json b/Resources/Textures/Objects/Tools/screwdriver.rsi/meta.json index 3d7726dd8b..63eb6345a2 100644 --- a/Resources/Textures/Objects/Tools/screwdriver.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/screwdriver.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "screwdriver", "directions": 1, "delays": [[1.0]]}, {"name": "screwdriver-map", "directions": 1, "delays": [[1.0]]}, {"name": "screwdriver-screwybits", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "screwdriver", "delays": [[1.0]]}, {"name": "screwdriver-map", "delays": [[1.0]]}, {"name": "screwdriver-screwybits", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Tools/welder.rsi/meta.json b/Resources/Textures/Objects/Tools/welder.rsi/meta.json index c18016dab0..f52b463cd2 100644 --- a/Resources/Textures/Objects/Tools/welder.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/welder.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "welder_flame", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Objects/Tools/welder_experimental.rsi/meta.json b/Resources/Textures/Objects/Tools/welder_experimental.rsi/meta.json index ed824e60cf..22b97853f9 100644 --- a/Resources/Textures/Objects/Tools/welder_experimental.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/welder_experimental.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 0.2, @@ -21,7 +20,6 @@ }, { "name": "welder_flame", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Objects/Tools/welder_mini.rsi/meta.json b/Resources/Textures/Objects/Tools/welder_mini.rsi/meta.json index 0c308b9e1d..36b25cbbc0 100644 --- a/Resources/Textures/Objects/Tools/welder_mini.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/welder_mini.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [ 1 @@ -18,7 +17,6 @@ }, { "name": "welder_flame", - "directions": 1, "delays": [ [ 0.2, diff --git a/Resources/Textures/Objects/Tools/wrench.rsi/meta.json b/Resources/Textures/Objects/Tools/wrench.rsi/meta.json index 6b1b30d612..0164b302ca 100644 --- a/Resources/Textures/Objects/Tools/wrench.rsi/meta.json +++ b/Resources/Textures/Objects/Tools/wrench.rsi/meta.json @@ -43,7 +43,6 @@ }, { "name": "icon", - "directions": 1, "delays": [ [ 1 diff --git a/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-0.png b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-0.png new file mode 100644 index 0000000000..16e1f3ccc8 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-0.png differ diff --git a/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-1.png b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-1.png new file mode 100644 index 0000000000..f6f6a52f5b Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-1.png differ diff --git a/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-2.png b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-2.png new file mode 100644 index 0000000000..208ad4c9e8 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-2.png differ diff --git a/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-3.png b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-3.png new file mode 100644 index 0000000000..18a1d3042c Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/base-3.png differ diff --git a/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/meta.json new file mode 100644 index 0000000000..55dc82377a --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Grenades/clusterbang.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/29c0ed1b000619cb5398ef921000a8d4502ba0b6 and modified by Swept", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "base-0", + "directions": 1 + }, + { + "name": "base-1", + "directions": 1 + }, + { + "name": "base-2", + "directions": 1 + }, + { + "name": "base-3", + "directions": 1 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Grenades/flashbang.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/flashbang.rsi/meta.json index 8611d9cd90..aa77965306 100644 --- a/Resources/Textures/Objects/Weapons/Grenades/flashbang.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Grenades/flashbang.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/tgstation/tgstation/raw/6d8ea1e75ccbd236230b2ed71b6e0bf16d41fc09/icons/obj/grenade.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "primed", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Weapons/Grenades/grenade.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/grenade.rsi/meta.json index 198dbe1347..384230a57d 100644 --- a/Resources/Textures/Objects/Weapons/Grenades/grenade.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Grenades/grenade.rsi/meta.json @@ -9,14 +9,12 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [1.0] ] }, { "name": "primed", - "directions": 1, "delays": [ [0.2, 0.2] ] diff --git a/Resources/Textures/Objects/Weapons/Grenades/nukenade.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/nukenade.rsi/meta.json index 198dbe1347..384230a57d 100644 --- a/Resources/Textures/Objects/Weapons/Grenades/nukenade.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Grenades/nukenade.rsi/meta.json @@ -9,14 +9,12 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [1.0] ] }, { "name": "primed", - "directions": 1, "delays": [ [0.2, 0.2] ] diff --git a/Resources/Textures/Objects/Weapons/Grenades/syndgrenade.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/syndgrenade.rsi/meta.json index acb14eea1a..4b97cd883e 100644 --- a/Resources/Textures/Objects/Weapons/Grenades/syndgrenade.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Grenades/syndgrenade.rsi/meta.json @@ -9,14 +9,12 @@ "states": [ { "name": "icon", - "directions": 1, "delays": [ [1.0] ] }, { "name": "primed", - "directions": 1, "delays": [ [0.2, 0.2, 0.2] ] diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/AntiMaterial/anti_material.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/AntiMaterial/anti_material.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/AntiMaterial/anti_material.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/AntiMaterial/anti_material.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/10x24_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/10x24_box.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/10x24_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/10x24_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box_rubber.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_big_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_flash.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_hv.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_practice.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_rubber.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/ClRifle/cl_rifle_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_big_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_big_box.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_big_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_big_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_hv.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_practice.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_rubber.rsi/meta.json index 40000b4fb0..0835ac8f77 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/LRifle/l_rifle_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/983ad377d25729357b7ff8025f8014bd2f6ae9f7/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_flash.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_hv.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_practice.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_rubber.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Magnum/magnum_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_flash.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_hv.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_practice.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_rubber.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/Pistol/pistol_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box_rubber.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_big_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_flash.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_hv.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_practice.rsi/meta.json index be1e92d993..0f38c5191a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_rubber.rsi/meta.json index 34908262bb..3b7e34c5cc 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/SRifle/s_rifle_box_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/89456d18dd3e7c330839121e3c6bc8c609700137/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/ammo_casing.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/ammo_casing.rsi/meta.json index 200af9fe84..0736b42558 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/ammo_casing.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/ammo_casing.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/blob/0b3ab17dbad632ddf738b63900ef8df1926bba47/icons/obj/ammo.dmi, modified by Topy", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/large_casing.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/large_casing.rsi/meta.json index 4f4121d24a..5c4b9859ce 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/large_casing.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/large_casing.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/8a848cde3e8610455f77704e861e5a06315a3b0e/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/rocket_shell.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/rocket_shell.rsi/meta.json index 53f2cfab01..eb5f2da45c 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/rocket_shell.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/rocket_shell.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_beanbag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_beanbag.rsi/meta.json index d134798630..059a7d46bd 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_beanbag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_beanbag.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/79b16e252e29d5a223a2b928fba25e2e6f9644ee/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/shotgun_shell_beanbag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/shotgun_shell_beanbag.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/shotgun_shell_beanbag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_blank.rsi/shotgun_shell_beanbag.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_flash.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_flash.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_incendiary.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_incendiary.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_incendiary.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_incendiary.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_practice.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_practice.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_slug.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_slug.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_slug.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell_slug.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_baton.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_baton.rsi/meta.json index d134798630..059a7d46bd 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_baton.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_baton.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/79b16e252e29d5a223a2b928fba25e2e6f9644ee/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_blast.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_blast.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_blast.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_blast.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_flash.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_flash.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_frag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_frag.rsi/meta.json index 6a22b562fa..8fe2966bee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_frag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/grenade_frag.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/ammo.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "spent", - "directions": 1 + "name": "spent" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/rpg.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/rpg.rsi/meta.json index 310a348520..3e7d56798e 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/rpg.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Explosives/rpg.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/guns/projectile/rocket.dmi", "states": [ { - "name": "frag", - "directions": 1 + "name": "frag" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/10x24.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/10x24.rsi/meta.json index 49902da186..ba03633bbe 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/10x24.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/10x24.rsi/meta.json @@ -8,40 +8,31 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" }, { - "name": "mag-7", - "directions": 1 + "name": "mag-7" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag.rsi/meta.json index 4e66ae10bc..3dc3400363 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_base.rsi/meta.json index 4e66ae10bc..3dc3400363 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_base.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_hv.rsi/meta.json index 4e66ae10bc..3dc3400363 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_hv.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_practice.rsi/meta.json index 4e66ae10bc..3dc3400363 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_practice.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_rubber.rsi/meta.json index 4e66ae10bc..3dc3400363 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_pistol_mag_rubber.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_base.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_base.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_flash.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_hv.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_practice.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_rubber.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_base.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_base.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_flash.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_hv.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_practice.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_rubber.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/ClRifle/cl_rifle_mag_short_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Dart/darts.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Dart/darts.rsi/meta.json index 867dbe75ec..4640cfd2ed 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Dart/darts.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Dart/darts.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { - "name": "mag-unshaded-5", - "directions": 1 + "name": "mag-unshaded-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_box.rsi/meta.json index 49902da186..ba03633bbe 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_box.rsi/meta.json @@ -8,40 +8,31 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" }, { - "name": "mag-7", - "directions": 1 + "name": "mag-7" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_base.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_base.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_flash.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_hv.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_practice.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_rubber.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/l_rifle_mag_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/maxim.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/maxim.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/maxim.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/maxim.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/pk_box.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/pk_box.rsi/meta.json index a3103d255e..40941d1bf1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/pk_box.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/LRifle/pk_box.rsi/meta.json @@ -8,40 +8,31 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/237d8f7894617007d75c71d5d9feb4354c78debd/icons/obj/ammo.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" }, { - "name": "mag-7", - "directions": 1 + "name": "mag-7" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_base.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_base.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_flash.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_flash.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_hv.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_hv.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_practice.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_practice.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_rubber.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_mag_rubber.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_base.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_base.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_hv.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_practice.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_rubber.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Magnum/magnum_smg_mag_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag.rsi/meta.json index 9090eaf12f..4e596816bc 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_base.rsi/meta.json index 9090eaf12f..4e596816bc 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_base.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_hv.rsi/meta.json index 9090eaf12f..4e596816bc 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_hv.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_practice.rsi/meta.json index 9090eaf12f..4e596816bc 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_practice.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_rubber.rsi/meta.json index 9090eaf12f..4e596816bc 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_hc_mag_rubber.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_base.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_base.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_flash.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_flash.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h.rsi/meta.json index 13039c2391..c2ea42f1c9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_base.rsi/meta.json index 13039c2391..c2ea42f1c9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_base.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_flash.rsi/meta.json index 13039c2391..c2ea42f1c9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_flash.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_hv.rsi/meta.json index 13039c2391..c2ea42f1c9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_hv.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_practice.rsi/meta.json index 13039c2391..c2ea42f1c9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_practice.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_rubber.rsi/meta.json index 13039c2391..c2ea42f1c9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_h_rubber.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_hv.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_hv.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_practice.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_practice.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_rubber.rsi/meta.json index 4f37e727e1..43b96fbef7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/pistol_mag_rubber.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_base.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_base.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_flash.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_hv.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_practice.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_rubber.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_top_mounted.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_top_mounted.rsi/meta.json index ea37dbcb54..3c247876eb 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_top_mounted.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/smg_mag_top_mounted.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { - "name": "mag-unshaded-5", - "directions": 1 + "name": "mag-unshaded-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_base.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_base.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_base.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_base.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_flash.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_flash.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_hv.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_hv.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_practice.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_practice.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_rubber.rsi/meta.json index e4f2abdee0..f05246b95f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/SRifle/s_rifle_mag_rubber.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_beanbag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_beanbag.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_beanbag.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_beanbag.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_pellets.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_pellets.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_pellets.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_pellets.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_slug.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_slug.rsi/meta.json index a2043e384e..8b190de6f1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_slug.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12_slug.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/831c7c2743530e8a31910d781bae9dc34f3f1ec8/icons/obj/ammo_mags.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/LRifle/l_rifle_sl.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/LRifle/l_rifle_sl.rsi/meta.json index cf7cac37c5..ea52c0128f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/LRifle/l_rifle_sl.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/LRifle/l_rifle_sl.rsi/meta.json @@ -8,32 +8,25 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/d1120fc8287cca2632e834069b5019bf941a0170/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_flash.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_flash.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_hv.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_hv.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_practice.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_practice.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_rubber.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Magnum/magnum_sl_rubber.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_flash.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_flash.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_hv.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_hv.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_hv.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_hv.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_practice.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_practice.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_practice.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_practice.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_rubber.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_rubber.rsi/meta.json index 100948b512..147ceca10f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_rubber.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_sl_rubber.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_speed.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { - "name": "mag-6", - "directions": 1 + "name": "mag-6" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/laser_cannon.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Battery/laser_cannon.rsi/meta.json index f9798003c7..277149a2d8 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Battery/laser_cannon.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Battery/laser_cannon.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at commit 125c975f1b3bf9826b37029e9ab5a5f89e975a7e", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/laser_retro.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Battery/laser_retro.rsi/meta.json index 8049744345..358791df47 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Battery/laser_retro.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Battery/laser_retro.rsi/meta.json @@ -3,77 +3,70 @@ "size": { "x": 32, "y": 32 - }, - "license": "CC-BY-SA-3.0", - "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at commit 125c975f1b3bf9826b37029e9ab5a5f89e975a7e", + }, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at commit 125c975f1b3bf9826b37029e9ab5a5f89e975a7e", "states": [ { - "name": "icon", - "directions": 1 - }, - { - "name": "base", - "directions": 1 - }, - { - "name": "mag-unshaded-0", - "directions": 1 + "name": "icon" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "base" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-0" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "inhand-left-0", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "inhand-right-0", - "directions": 1 + "name": "mag-unshaded-4" }, { - "name": "inhand-left-1", - "directions": 1 - }, - { - "name": "inhand-right-1", - "directions": 1 - }, - { - "name": "inhand-left-2", - "directions": 1 - }, - { - "name": "inhand-right-2", - "directions": 1 - }, - { - "name": "inhand-left-3", - "directions": 1 - }, - { - "name": "inhand-right-3", - "directions": 1 - }, - { - "name": "inhand-left", + "name": "inhand-left-0", "directions": 4 }, { - "name": "inhand-right", + "name": "inhand-right-0", + "directions": 4 + }, + { + "name": "inhand-left-1", + "directions": 4 + }, + { + "name": "inhand-right-1", + "directions": 4 + }, + { + "name": "inhand-left-2", + "directions": 4 + }, + { + "name": "inhand-right-2", + "directions": 4 + }, + { + "name": "inhand-left-3", + "directions": 4 + }, + { + "name": "inhand-right-3", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", "directions": 4 } ] -} \ No newline at end of file +} diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/taser.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Battery/taser.rsi/meta.json index 6e2fe195a4..dd69029018 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Battery/taser.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Battery/taser.rsi/meta.json @@ -6,16 +6,13 @@ }, "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { "name": "mag-unshaded-0", - "directions": 1, "delays": [ [ 0.3, @@ -24,20 +21,16 @@ ] }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { "name": "taser0-inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/xray.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Battery/xray.rsi/meta.json index e2af81237c..7c47ce9eae 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Battery/xray.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Battery/xray.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/167a810bc8534a56c74ffa8f1373acd3b1ac70ee/icons/obj/guns/energy/xray.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { "name": "mag-unshaded-0", - "directions": 1, "delays": [ [ 0.3, @@ -26,20 +23,16 @@ ] }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/LMGs/l6.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/LMGs/l6.rsi/meta.json index a2c1c15790..1c83729b6a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/LMGs/l6.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/LMGs/l6.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/237d8f7894617007d75c71d5d9feb4354c78debd/icons/obj/guns/lmg.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/LMGs/pk.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/LMGs/pk.rsi/meta.json index 9b1f40df53..377da92a04 100644 --- a/Resources/Textures/Objects/Weapons/Guns/LMGs/pk.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/LMGs/pk.rsi/meta.json @@ -8,44 +8,34 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/blob/237d8f7894617007d75c71d5d9feb4354c78debd/icons/obj/guns/lmg.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "mag-1", - "directions": 1 + "name": "mag-1" }, { - "name": "mag-2", - "directions": 1 + "name": "mag-2" }, { - "name": "mag-3", - "directions": 1 + "name": "mag-3" }, { - "name": "mag-4", - "directions": 1 + "name": "mag-4" }, { - "name": "mag-5", - "directions": 1 + "name": "mag-5" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Launchers/china_lake.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Launchers/china_lake.rsi/meta.json index a50f1e74ab..d84b2c302c 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Launchers/china_lake.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Launchers/china_lake.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/chinalake.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Launchers/rocket.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Launchers/rocket.rsi/meta.json index 69eaa07a35..267b0e8f43 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Launchers/rocket.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Launchers/rocket.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/guns/projectile/rocket.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "rocket0-inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/clarissa.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/clarissa.rsi/meta.json index ae0fe69106..52e7516fdf 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/clarissa.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/clarissa.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/clarissa.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/colt.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/colt.rsi/meta.json index 92d1385f04..1e25889f6a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/colt.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/colt.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/colt.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/giskard.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/giskard.rsi/meta.json index 0f80341882..90e00d22c2 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/giskard.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/giskard.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "suppressor", - "directions": 1 + "name": "suppressor" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/gyro_pistol.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/gyro_pistol.rsi/meta.json index f93283c4a1..f621410e9b 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/gyro_pistol.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/gyro_pistol.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/gyropistol.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/hm_pistol.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/hm_pistol.rsi/meta.json index e9663d81f0..0a30fe5c37 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/hm_pistol.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/hm_pistol.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/hm_pistol.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/lamia.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/lamia.rsi/meta.json index ac22c64f2e..9f1b66babf 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/lamia.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/lamia.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "base-unshaded", - "directions": 1 + "name": "base-unshaded" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/mandella.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/mandella.rsi/meta.json index bd92c94d9d..b46b116eee 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/mandella.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/mandella.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/mandella.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58.rsi/meta.json index c1f957d2b6..cc4600d356 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58_wood.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58_wood.rsi/meta.json index c1f957d2b6..cc4600d356 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58_wood.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/mk58_wood.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/molly.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/molly.rsi/meta.json index 5397bc1bbd..3a19acc7bd 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/molly.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/molly.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/molly.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "suppressor", - "directions": 1 + "name": "suppressor" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/olivaw_civil.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/olivaw_civil.rsi/meta.json index cff83b950e..4ee625b268 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/olivaw_civil.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/olivaw_civil.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Pistols/paco.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Pistols/paco.rsi/meta.json index 4df90a8240..7caadb88ec 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Pistols/paco.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Pistols/paco.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/paco.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "suppressor", - "directions": 1 + "name": "suppressor" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Projectiles/buckshot.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Projectiles/buckshot.rsi/meta.json index 608fd7f7f7..8d92fddcc9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Projectiles/buckshot.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Projectiles/buckshot.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/2acc4d34a894dbcc9dbf3779b696ddf296aa2c56/icons/obj/projectiles.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Projectiles/bullet.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Projectiles/bullet.rsi/meta.json index 6e7940bc1a..9debc86be7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Projectiles/bullet.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Projectiles/bullet.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "bullet", - "directions": 1, "delays": [ [ 0.05, diff --git a/Resources/Textures/Objects/Weapons/Guns/Projectiles/grenade.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Projectiles/grenade.rsi/meta.json index 45446bc434..4ccea521c8 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Projectiles/grenade.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Projectiles/grenade.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "grenade", - "directions": 1, "delays": [ [ 0.05, diff --git a/Resources/Textures/Objects/Weapons/Guns/Projectiles/rocket.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Projectiles/rocket.rsi/meta.json index cb29fe71ba..ff0cf14a45 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Projectiles/rocket.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Projectiles/rocket.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1d495c3faf4642b6ec1c4be8acc7cd5bc51d785/icons/obj/guns/projectile/rocket.dmi", "states": [ { - "name": "frag", - "directions": 1 + "name": "frag" }, { - "name": "smallfrag", - "directions": 1 + "name": "smallfrag" } ] } diff --git a/Resources/Textures/Objects/Weapons/Guns/Projectiles/slug.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Projectiles/slug.rsi/meta.json index 608fd7f7f7..8d92fddcc9 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Projectiles/slug.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Projectiles/slug.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/2acc4d34a894dbcc9dbf3779b696ddf296aa2c56/icons/obj/projectiles.dmi", "states": [ { - "name": "base", - "directions": 1 + "name": "base" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Projectiles/spark.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Projectiles/spark.rsi/meta.json index 89b4a9b47e..61576c16ca 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Projectiles/spark.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Projectiles/spark.rsi/meta.json @@ -9,7 +9,6 @@ "states": [ { "name": "spark", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Weapons/Guns/Revolvers/deckard.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Revolvers/deckard.rsi/meta.json index 5b99a397bd..0abcdda366 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Revolvers/deckard.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Revolvers/deckard.rsi/meta.json @@ -8,36 +8,28 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-unshaded-0", - "directions": 1 + "name": "mag-unshaded-0" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Revolvers/inspector.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Revolvers/inspector.rsi/meta.json index 7e2369001c..cd602b9efd 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Revolvers/inspector.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Revolvers/inspector.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Revolvers/mateba.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Revolvers/mateba.rsi/meta.json index 7e2369001c..cd602b9efd 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Revolvers/mateba.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Revolvers/mateba.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/ak.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/ak.rsi/meta.json index 29026e680b..d2a35cc0b4 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/ak.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/ak.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/black_ak.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/black_ak.rsi/meta.json index 29026e680b..d2a35cc0b4 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/black_ak.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/black_ak.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json index f061c8a636..8b395bb06c 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "Yeeye", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/carbine.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/carbine.rsi/meta.json index d6f6cc25c6..6d45904d38 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/carbine.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/carbine.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/carabine.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/dallas.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/dallas.rsi/meta.json index 29026e680b..d2a35cc0b4 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/dallas.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/dallas.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/sts.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/sts.rsi/meta.json index 7e99a9afa6..98e690a4b1 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/sts.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/sts.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/vintorez.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/vintorez.rsi/meta.json index 5f16983ab2..338a557144 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/vintorez.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/vintorez.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/167a810bc8534a56c74ffa8f1373acd3b1ac70ee/icons/obj/guns/projectile/vintorez.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/wintermute.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/wintermute.rsi/meta.json index a9bf6e1e06..6607a59045 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Rifles/wintermute.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/wintermute.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/wintermute.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/SMGs/atreides.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/SMGs/atreides.rsi/meta.json index 2c138e791b..215e350405 100644 --- a/Resources/Textures/Objects/Weapons/Guns/SMGs/atreides.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/SMGs/atreides.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/atreides.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "suppressor", - "directions": 1 + "name": "suppressor" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/SMGs/c20r.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/SMGs/c20r.rsi/meta.json index 0b353cb836..dc0327f6fe 100644 --- a/Resources/Textures/Objects/Weapons/Guns/SMGs/c20r.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/SMGs/c20r.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/d1120fc8287cca2632e834069b5019bf941a0170/icons/obj/guns/projectile/cr20.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "suppressor", - "directions": 1 + "name": "suppressor" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/SMGs/drozd.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/SMGs/drozd.rsi/meta.json index 264561a698..c699d438e5 100644 --- a/Resources/Textures/Objects/Weapons/Guns/SMGs/drozd.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/SMGs/drozd.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/drozd.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { - "name": "suppressor", - "directions": 1 + "name": "suppressor" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/SMGs/wt550.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/SMGs/wt550.rsi/meta.json index 90e48734f0..9af093356b 100644 --- a/Resources/Textures/Objects/Weapons/Guns/SMGs/wt550.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/SMGs/wt550.rsi/meta.json @@ -8,12 +8,10 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/e1a3cbe9ba2e6e29b7f1cad1bb456b390aac936d/icons/obj/guns/projectile.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "base", - "directions": 1, "delays": [ [ 0.1, @@ -23,7 +21,6 @@ }, { "name": "base-unshaded", - "directions": 1, "delays": [ [ 0.1, @@ -33,7 +30,6 @@ }, { "name": "mag-0", - "directions": 1, "delays": [ [ 0.1, @@ -43,7 +39,6 @@ }, { "name": "mag-unshaded-0", - "directions": 1, "delays": [ [ 0.1, @@ -53,7 +48,6 @@ }, { "name": "mag-1", - "directions": 1, "delays": [ [ 0.1, @@ -63,7 +57,6 @@ }, { "name": "mag-unshaded-1", - "directions": 1, "delays": [ [ 0.1, @@ -73,7 +66,6 @@ }, { "name": "mag-2", - "directions": 1, "delays": [ [ 0.1, @@ -83,7 +75,6 @@ }, { "name": "mag-unshaded-2", - "directions": 1, "delays": [ [ 0.1, @@ -93,7 +84,6 @@ }, { "name": "mag-3", - "directions": 1, "delays": [ [ 0.1, @@ -103,7 +93,6 @@ }, { "name": "mag-unshaded-3", - "directions": 1, "delays": [ [ 0.1, @@ -113,7 +102,6 @@ }, { "name": "mag-4", - "directions": 1, "delays": [ [ 0.1, @@ -123,7 +111,6 @@ }, { "name": "mag-unshaded-4", - "directions": 1, "delays": [ [ 0.1, @@ -133,7 +120,6 @@ }, { "name": "mag-5", - "directions": 1, "delays": [ [ 0.1, @@ -143,7 +129,6 @@ }, { "name": "mag-unshaded-5", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Weapons/Guns/SMGs/zoric.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/SMGs/zoric.rsi/meta.json index ead4cd15ac..89fb68686c 100644 --- a/Resources/Textures/Objects/Weapons/Guns/SMGs/zoric.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/SMGs/zoric.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/167a810bc8534a56c74ffa8f1373acd3b1ac70ee/icons/obj/guns/projectile/zoric.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/bojevic.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/bojevic.rsi/meta.json index 6135f1fcce..d255715bbe 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/bojevic.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/bojevic.rsi/meta.json @@ -8,24 +8,19 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/d1120fc8287cca2632e834069b5019bf941a0170/icons/obj/guns/projectile/bojevic.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { - "name": "mag-0", - "directions": 1 + "name": "mag-0" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/bull.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/bull.rsi/meta.json index c5af0f5ee2..7535c07f6f 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/bull.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/bull.rsi/meta.json @@ -8,28 +8,22 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/bull.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "mag-unshaded-1", - "directions": 1 + "name": "mag-unshaded-1" }, { - "name": "mag-unshaded-2", - "directions": 1 + "name": "mag-unshaded-2" }, { - "name": "mag-unshaded-3", - "directions": 1 + "name": "mag-unshaded-3" }, { - "name": "mag-unshaded-4", - "directions": 1 + "name": "mag-unshaded-4" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/db_shotgun.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/db_shotgun.rsi/meta.json index 4a63c4c35c..04ac247095 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/db_shotgun.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/db_shotgun.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/dshotgun.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/gladstone.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/gladstone.rsi/meta.json index 225bbe87bb..acacf92772 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/gladstone.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/gladstone.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/gladstone.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json index 1629eb9816..dbfd6dd398 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/c4f3f5c97c361e66cc93219702ea11f49b9d41bb/icons/obj/guns/projectile/shotgun.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/regulator.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/regulator.rsi/meta.json index 3158b7d0a7..ce9338bfb7 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/regulator.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/regulator.rsi/meta.json @@ -8,8 +8,7 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/regulator.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/sawn.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/sawn.rsi/meta.json index d84344ec44..1372df90c6 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/sawn.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/sawn.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/d1120fc8287cca2632e834069b5019bf941a0170/icons/obj/guns/projectile/sawnshotgun.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun.rsi/meta.json index a3ccfb634d..59c0a6467a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/boltgun.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun_wood.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun_wood.rsi/meta.json index a3ccfb634d..59c0a6467a 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun_wood.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Snipers/bolt_gun_wood.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/boltgun.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Guns/Snipers/heavy_sniper.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Snipers/heavy_sniper.rsi/meta.json index 2d598be59c..9e3b8f2a5e 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Snipers/heavy_sniper.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Snipers/heavy_sniper.rsi/meta.json @@ -8,20 +8,16 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/56cbafd6ad8c013ccd5472d6c4a0db790f7f872a/icons/obj/guns/projectile/heavysniper.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "base", - "directions": 1 + "name": "base" }, { - "name": "bolt-closed", - "directions": 1 + "name": "bolt-closed" }, { - "name": "bolt-open", - "directions": 1 + "name": "bolt-open" }, { "name": "inhand-left", diff --git a/Resources/Textures/Objects/Weapons/Melee/cleaver.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/cleaver.rsi/meta.json index e295b94b1f..3928d83f59 100644 --- a/Resources/Textures/Objects/Weapons/Melee/cleaver.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/cleaver.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at commit 125c975f1b3bf9826b37029e9ab5a5f89e975a7e", "states": [{"name": "butch", "directions": 1, "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at commit 125c975f1b3bf9826b37029e9ab5a5f89e975a7e", "states": [{"name": "butch", "delays": [[1.0]]}, {"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Melee/flash.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/flash.rsi/meta.json index c0299aa63d..ec97fea7b7 100644 --- a/Resources/Textures/Objects/Weapons/Melee/flash.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/flash.rsi/meta.json @@ -9,16 +9,10 @@ "states": [ { "name": "flash", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "flashing", - "directions": 1, "delays": [ [ 0.1, @@ -29,12 +23,7 @@ }, { "name": "burnt", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "inhand-right", diff --git a/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/icon.png b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/icon.png new file mode 100644 index 0000000000..03da75b454 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/inhand-left.png new file mode 100644 index 0000000000..b2f253c30b Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/inhand-left.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/inhand-right.png new file mode 100644 index 0000000000..ac3aec2247 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/inhand-right.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/meta.json new file mode 100644 index 0000000000..c4fc80f1e6 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/kitchen_knife.rsi/meta.json @@ -0,0 +1,22 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/baeadc0388aba2e74106f99b1551a465b825e3b1", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/pickaxe.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/pickaxe.rsi/meta.json index dfd0153568..ed0f963111 100644 --- a/Resources/Textures/Objects/Weapons/Melee/pickaxe.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/pickaxe.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pickaxe", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "inhand-left", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "inhand-right", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "pickaxe", "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Melee/spear.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/spear.rsi/meta.json index 0828bd95af..794b8a3835 100644 --- a/Resources/Textures/Objects/Weapons/Melee/spear.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/spear.rsi/meta.json @@ -42,8 +42,7 @@ ] }, { - "name": "spear", - "directions": 1 + "name": "spear" } ] } diff --git a/Resources/Textures/Objects/Weapons/Melee/stunbaton.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/stunbaton.rsi/meta.json index f01ac01f35..47921de483 100644 --- a/Resources/Textures/Objects/Weapons/Melee/stunbaton.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/stunbaton.rsi/meta.json @@ -124,25 +124,14 @@ }, { "name": "stunbaton_off", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "stunbaton_nocell", - "directions": 1, - "delays": [ - [ - 1.0 - ] - ] + }, { "name": "stunbaton_on", - "directions": 1, "delays": [ [ 0.1, diff --git a/Resources/Textures/Objects/Weapons/Melee/xeno_claw.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/xeno_claw.rsi/meta.json index bce8d4e9b0..85017ada93 100644 --- a/Resources/Textures/Objects/Weapons/Melee/xeno_claw.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/xeno_claw.rsi/meta.json @@ -8,16 +8,13 @@ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/7344da18b5e3dd0b1994a84e9c9c0774d71b93a5/icons/mob/alien.dmi", "states": [ { - "name": "icon", - "directions": 1 + "name": "icon" }, { - "name": "inhand-left", - "directions": 1 + "name": "inhand-left" }, { - "name": "inhand-right", - "directions": 1 + "name": "inhand-right" } ] } \ No newline at end of file diff --git a/Resources/keybinds.yml b/Resources/keybinds.yml index 1a3b1ff275..3d6f5db215 100644 --- a/Resources/keybinds.yml +++ b/Resources/keybinds.yml @@ -164,11 +164,13 @@ binds: key: Left mod1: Control canRepeat: true + allowSubCombs: true - function: TextCursorWordRight type: State key: Right mod1: Control canRepeat: true + allowSubCombs: true - function: TextCursorBegin type: State key: Home @@ -181,32 +183,38 @@ binds: key: Left mod1: Shift canRepeat: true + allowSubCombs: true - function: TextCursorSelectRight type: State key: Right mod1: Shift canRepeat: true + allowSubCombs: true - function: TextCursorSelectWordLeft type: State key: Left mod1: Shift mod2: Control canRepeat: true + allowSubCombs: true - function: TextCursorSelectWordRight type: State key: Right mod1: Shift mod2: Control canRepeat: true + allowSubCombs: true - function: TextCursorSelectBegin type: State mod1: Shift key: Home + allowSubCombs: true - function: TextCursorSelectEnd type: State mod1: Shift key: End canRepeat: true + allowSubCombs: true - function: TextBackspace type: State key: BackSpace @@ -221,18 +229,22 @@ binds: type: State key: A mod1: Control + allowSubCombs: true - function: TextCopy type: State key: C mod1: Control + allowSubCombs: true - function: TextCut type: State key: X mod1: Control + allowSubCombs: true - function: TextPaste type: State key: V mod1: Control + allowSubCombs: true - function: TextHistoryPrev type: State key: Up @@ -303,7 +315,7 @@ binds: key: Z - function: OpenAbilitiesMenu type: State - key: Equal + key: K - function: Hotbar0 type: State key: Num0 diff --git a/RobustToolbox b/RobustToolbox index 1f95fe6782..b205a14f69 160000 --- a/RobustToolbox +++ b/RobustToolbox @@ -1 +1 @@ -Subproject commit 1f95fe67823e3fa8bed0635c5eb597038763a7c9 +Subproject commit b205a14f69d585f04ff2b2eba27a76926b7ba51b diff --git a/SpaceStation14.sln.DotSettings b/SpaceStation14.sln.DotSettings index 29ca78c389..c8f876874b 100644 --- a/SpaceStation14.sln.DotSettings +++ b/SpaceStation14.sln.DotSettings @@ -103,6 +103,7 @@ True True True + True True True True