diff --git a/Content.Benchmarks/ColorInterpolateBenchmark.cs b/Content.Benchmarks/ColorInterpolateBenchmark.cs index 1330549b8a..aaa172f0aa 100644 --- a/Content.Benchmarks/ColorInterpolateBenchmark.cs +++ b/Content.Benchmarks/ColorInterpolateBenchmark.cs @@ -1,15 +1,26 @@ using System; -using System.Collections.Generic; using System.Runtime.CompilerServices; +#if NETCOREAPP +using System.Runtime.Intrinsics; +using System.Runtime.Intrinsics.X86; +#endif using BenchmarkDotNet.Attributes; using Robust.Shared.Maths; using SysVector4 = System.Numerics.Vector4; namespace Content.Benchmarks { + [DisassemblyDiagnoser] public class ColorInterpolateBenchmark { - private readonly List<(Color, Color)> _colors = new List<(Color, Color)>(); +#if NETCOREAPP + private const MethodImplOptions AggressiveOpt = MethodImplOptions.AggressiveOptimization; +#else + private const MethodImplOptions AggressiveOpt = default; +#endif + + private (Color, Color)[] _colors; + private Color[] _output; [Params(100)] public int N { get; set; } @@ -18,6 +29,9 @@ namespace Content.Benchmarks { var random = new Random(3005); + _colors = new (Color, Color)[N]; + _output = new Color[N]; + for (var i = 0; i < N; i++) { var r1 = random.NextFloat(); @@ -30,123 +44,122 @@ namespace Content.Benchmarks var b2 = random.NextFloat(); var a2 = random.NextFloat(); - _colors.Add((new Color(r1, g1, b1, a1), new Color(r2, g2, b2, a2))); + _colors[i] = (new Color(r1, g1, b1, a1), new Color(r2, g2, b2, a2)); } } [Benchmark] public void BenchSimple() { - foreach (var (a, b) in _colors) + for (var i = 0; i < N; i++) { - InterpolateSimple(a, b, 0.5f); + ref var tuple = ref _colors[i]; + _output[i] = InterpolateSimple(tuple.Item1, tuple.Item2, 0.5f); } } - //[Benchmark] - public void BenchSysVector4() - { - foreach (var (a, b) in _colors) - { - InterpolateSysVector4(a, b, 0.5f); - } - } - //[Benchmark] - public void BenchSysVector4Blit() + [Benchmark] + public void BenchSysVector4In() { - foreach (var (a, b) in _colors) + for (var i = 0; i < N; i++) { - InterpolateSysVector4Blit(a, b, 0.5f); - } - } - - //[Benchmark] - public void BenchSysVector4BlitNoException() - { - foreach (var (a, b) in _colors) - { - InterpolateSysVector4BlitNoException(a, b, 0.5f); + ref var tuple = ref _colors[i]; + _output[i] = InterpolateSysVector4In(tuple.Item1, tuple.Item2, 0.5f); } } [Benchmark] - public void BenchSysVector4AsRefNoException() + public void BenchSysVector4() { - foreach (var (a, b) in _colors) + for (var i = 0; i < N; i++) { - InterpolateSysVector4BlitNoExceptionAsRef(a, b, 0.5f); + ref var tuple = ref _colors[i]; + _output[i] = InterpolateSysVector4(tuple.Item1, tuple.Item2, 0.5f); } } - public static Color InterpolateSimple(Color endPoint1, Color endPoint2, float lambda) +#if NETCOREAPP + [Benchmark] + public void BenchSimd() + { + for (var i = 0; i < N; i++) + { + ref var tuple = ref _colors[i]; + _output[i] = InterpolateSimd(tuple.Item1, tuple.Item2, 0.5f); + } + } + + [Benchmark] + public void BenchSimdIn() + { + for (var i = 0; i < N; i++) + { + ref var tuple = ref _colors[i]; + _output[i] = InterpolateSimdIn(tuple.Item1, tuple.Item2, 0.5f); + } + } +#endif + + [MethodImpl(AggressiveOpt)] + public static Color InterpolateSimple(Color a, Color b, float lambda) { - if (lambda < 0 || lambda > 1) - throw new ArgumentOutOfRangeException(nameof(lambda)); return new Color( - endPoint1.R * lambda + endPoint2.R * (1 - lambda), - endPoint1.G * lambda + endPoint2.G * (1 - lambda), - endPoint1.B * lambda + endPoint2.B * (1 - lambda), - endPoint1.A * lambda + endPoint2.A * (1 - lambda) + a.R + (b.R - a.R) * lambda, + a.G + (b.G - a.G) * lambda, + a.B + (b.G - a.B) * lambda, + a.A + (b.A - a.A) * lambda ); } - public static Color InterpolateSysVector4(Color endPoint1, Color endPoint2, float lambda) - { - if (lambda < 0 || lambda > 1) - throw new ArgumentOutOfRangeException(nameof(lambda)); - - var vec1 = new SysVector4(endPoint1.R, endPoint1.G, endPoint1.B, endPoint1.A); - var vec2 = new SysVector4(endPoint2.R, endPoint2.G, endPoint2.B, endPoint2.A); - - var res = SysVector4.Lerp(vec1, vec2, 1 - lambda); - - return new Color( - res.X, res.Y, res.Z, res.W); - } - - public static unsafe Color InterpolateSysVector4Blit(in Color endPoint1, in Color endPoint2, float lambda) - { - if (lambda < 0 || lambda > 1) - throw new ArgumentOutOfRangeException(nameof(lambda)); - - - fixed (Color* p1 = &endPoint1) - fixed (Color* p2 = &endPoint2) - { - var vp1 = (SysVector4*) p1; - var vp2 = (SysVector4*) p2; - - var res = SysVector4.Lerp(*vp1, *vp2, 1 - lambda); - - return *(Color*) (&res); - } - } - - public static unsafe Color InterpolateSysVector4BlitNoException(in Color endPoint1, in Color endPoint2, + [MethodImpl(AggressiveOpt)] + public static Color InterpolateSysVector4(Color a, Color b, float lambda) { - fixed (Color* p1 = &endPoint1) - fixed (Color* p2 = &endPoint2) - { - var vp1 = (SysVector4*) p1; - var vp2 = (SysVector4*) p2; + ref var sva = ref Unsafe.As(ref a); + ref var svb = ref Unsafe.As(ref b); - var res = SysVector4.Lerp(*vp2, *vp1, lambda); - - return *(Color*) (&res); - } - } - - public static unsafe Color InterpolateSysVector4BlitNoExceptionAsRef(in Color endPoint1, in Color endPoint2, - float lambda) - { - ref var sv1 = ref Unsafe.As(ref Unsafe.AsRef(endPoint1)); - ref var sv2 = ref Unsafe.As(ref Unsafe.AsRef(endPoint2)); - - var res = SysVector4.Lerp(sv2, sv1, lambda); + var res = SysVector4.Lerp(sva, svb, lambda); return Unsafe.As(ref res); } + + [MethodImpl(AggressiveOpt)] + public static Color InterpolateSysVector4In(in Color endPoint1, in Color endPoint2, + float lambda) + { + ref var sva = ref Unsafe.As(ref Unsafe.AsRef(endPoint1)); + ref var svb = ref Unsafe.As(ref Unsafe.AsRef(endPoint2)); + + var res = SysVector4.Lerp(svb, sva, lambda); + + return Unsafe.As(ref res); + } + +#if NETCOREAPP + [MethodImpl(AggressiveOpt)] + public static Color InterpolateSimd(Color a, Color b, + float lambda) + { + var vecA = Unsafe.As>(ref a); + var vecB = Unsafe.As>(ref b); + + vecB = Fma.MultiplyAdd(Sse.Subtract(vecB, vecA), Vector128.Create(lambda), vecA); + + return Unsafe.As, Color>(ref vecB); + } + + [MethodImpl(AggressiveOpt)] + public static Color InterpolateSimdIn(in Color a, in Color b, + float lambda) + { + var vecA = Unsafe.As>(ref Unsafe.AsRef(a)); + var vecB = Unsafe.As>(ref Unsafe.AsRef(b)); + + vecB = Fma.MultiplyAdd(Sse.Subtract(vecB, vecA), Vector128.Create(lambda), vecA); + + return Unsafe.As, Color>(ref vecB); + } +#endif } } diff --git a/Content.Client/Chat/ChatBox.cs b/Content.Client/Chat/ChatBox.cs index 50b095833d..eef74bf4f9 100644 --- a/Content.Client/Chat/ChatBox.cs +++ b/Content.Client/Chat/ChatBox.cs @@ -25,12 +25,12 @@ namespace Content.Client.Chat private ILocalizationManager localize = IoCManager.Resolve(); public LineEdit Input { get; private set; } - public OutputPanel contents; + public OutputPanel Contents { get; } // Buttons for filtering - public Button AllButton; - public Button LocalButton; - public Button OOCButton; + public Button AllButton { get; } + public Button LocalButton { get; } + public Button OOCButton { get; } /// /// Index while cycling through the input history. -1 means not going through history. @@ -49,11 +49,9 @@ namespace Content.Client.Chat public bool ReleaseFocusOnEnter { get; set; } = true; - protected override void Initialize() + public ChatBox() { - base.Initialize(); - - MarginLeft = -475.0f; + MarginLeft = -475.0f; MarginTop = 10.0f; MarginRight = -10.0f; MarginBottom = 235.0f; @@ -80,8 +78,8 @@ namespace Content.Client.Chat MarginLeftOverride = 4, MarginRightOverride = 4, SizeFlagsVertical = SizeFlags.FillExpand }; - contents = new OutputPanel(); - contentMargin.AddChild(contents); + Contents = new OutputPanel(); + contentMargin.AddChild(Contents); vBox.AddChild(contentMargin); Input = new LineEdit(); @@ -182,18 +180,6 @@ namespace Content.Client.Chat } } - protected override void Dispose(bool disposing) - { - base.Dispose(disposing); - - if (disposing) - { - TextSubmitted = null; - Input = null; - contents = null; - } - } - public event TextSubmitHandler TextSubmitted; public event FilterToggledHandler FilterToggled; @@ -209,7 +195,7 @@ namespace Content.Client.Chat formatted.PushColor(color); formatted.AddText(message); formatted.Pop(); - contents.AddMessage(formatted); + Contents.AddMessage(formatted); } private void Input_OnTextEntered(LineEdit.LineEditEventArgs args) diff --git a/Content.Client/Chat/ChatManager.cs b/Content.Client/Chat/ChatManager.cs index f99103bba5..70b46b3f4a 100644 --- a/Content.Client/Chat/ChatManager.cs +++ b/Content.Client/Chat/ChatManager.cs @@ -1,7 +1,6 @@ using System.Collections.Generic; using Content.Client.Interfaces.Chat; using Content.Shared.Chat; -using Robust.Client; using Robust.Client.Console; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.Interfaces.UserInterface; @@ -274,7 +273,7 @@ namespace Content.Client.Chat private void RepopulateChat(IEnumerable filteredMessages) { - _currentChatBox.contents.Clear(); + _currentChatBox.Contents.Clear(); foreach (var msg in filteredMessages) { diff --git a/Content.Client/Chat/SpeechBubble.cs b/Content.Client/Chat/SpeechBubble.cs index a796c4e7e8..61aa4e0bbe 100644 --- a/Content.Client/Chat/SpeechBubble.cs +++ b/Content.Client/Chat/SpeechBubble.cs @@ -1,5 +1,4 @@ using Content.Client.Interfaces.Chat; -using Robust.Client; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; @@ -32,14 +31,14 @@ namespace Content.Client.Chat private readonly IEntity _senderEntity; private readonly IChatManager _chatManager; - private Control _panel; + private readonly Control _panel; private float _timeLeft = TotalTime; public float VerticalOffset { get; set; } private float _verticalOffsetAchieved; - public float ContentHeight { get; } + public float ContentHeight { get; private set; } public SpeechBubble(string text, IEntity senderEntity, IEyeManager eyeManager, IChatManager chatManager) { @@ -68,6 +67,8 @@ namespace Content.Client.Chat AddChild(_panel); + ForceRunStyleUpdate(); + _panel.Size = _panel.CombinedMinimumSize; ContentHeight = _panel.Height; Size = (_panel.Width, 0); diff --git a/Content.Client/ClientNotifyManager.cs b/Content.Client/ClientNotifyManager.cs index 2b2b296152..70ffd7e1c9 100644 --- a/Content.Client/ClientNotifyManager.cs +++ b/Content.Client/ClientNotifyManager.cs @@ -85,14 +85,11 @@ namespace Content.Client private float _timeLeft; public Vector2 InitialPos { get; set; } - protected override void Initialize() + public PopupLabel() { - base.Initialize(); - ShadowOffsetXOverride = 1; ShadowOffsetYOverride = 1; FontColorShadowOverride = Color.Black; - } public void Update(FrameEventArgs eventArgs) diff --git a/Content.Client/Construction/ConstructionMenu.cs b/Content.Client/Construction/ConstructionMenu.cs index 15f3d5a8cc..5d7c59e872 100644 --- a/Content.Client/Construction/ConstructionMenu.cs +++ b/Content.Client/Construction/ConstructionMenu.cs @@ -3,62 +3,50 @@ using System.Collections.Generic; using System.Linq; using Content.Client.GameObjects.Components.Construction; using Content.Shared.Construction; -using Robust.Client.GameObjects; using Robust.Client.Graphics; -using Robust.Client.Interfaces.GameObjects; -using Robust.Client.Interfaces.Graphics; using Robust.Client.Interfaces.Placement; using Robust.Client.Interfaces.ResourceManagement; using Robust.Client.Placement; using Robust.Client.ResourceManagement; -using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; using Robust.Client.UserInterface.CustomControls; using Robust.Client.Utility; using Robust.Shared.Enums; using Robust.Shared.Interfaces.GameObjects.Components; using Robust.Shared.IoC; -using Robust.Shared.Log; using Robust.Shared.Maths; using Robust.Shared.Prototypes; -using Robust.Shared.Utility; namespace Content.Client.Construction { public class ConstructionMenu : SS14Window { - #pragma warning disable CS0649 - [Dependency] - readonly IPrototypeManager PrototypeManager; - [Dependency] - readonly IResourceCache ResourceCache; + [Dependency] readonly IPrototypeManager PrototypeManager; + [Dependency] readonly IResourceCache ResourceCache; #pragma warning restore public ConstructorComponent Owner { get; set; } - Button BuildButton; - Button EraseButton; - LineEdit SearchBar; - Tree RecipeList; - TextureRect InfoIcon; - Label InfoLabel; - ItemList StepList; + private readonly Button BuildButton; + private readonly Button EraseButton; + private readonly LineEdit SearchBar; + private readonly Tree RecipeList; + private readonly TextureRect InfoIcon; + private readonly Label InfoLabel; + private readonly ItemList StepList; + + private CategoryNode RootCategory; - CategoryNode RootCategory; // This list is flattened in such a way that the top most deepest category is first. - List FlattenedCategories; - PlacementManager Placement; + private List FlattenedCategories; + private readonly PlacementManager Placement; public ConstructionMenu() { - Size = new Vector2(500.0f, 350.0f); - } + Size = (500, 350); - protected override void Initialize() - { - base.Initialize(); IoCManager.InjectDependencies(this); - Placement = (PlacementManager)IoCManager.Resolve(); + Placement = (PlacementManager) IoCManager.Resolve(); Placement.PlacementCanceled += OnPlacementCanceled; Title = "Construction"; @@ -66,18 +54,18 @@ namespace Content.Client.Construction var hSplitContainer = new HSplitContainer(); // Left side - var recipes = new VBoxContainer("Recipes") {CustomMinimumSize = new Vector2(150.0f, 0.0f)}; - SearchBar = new LineEdit("Search") {PlaceHolder = "Search"}; - RecipeList = new Tree("Tree") {SizeFlagsVertical = SizeFlags.FillExpand, HideRoot = true}; + var recipes = new VBoxContainer {CustomMinimumSize = new Vector2(150.0f, 0.0f)}; + SearchBar = new LineEdit {PlaceHolder = "Search"}; + RecipeList = new Tree {SizeFlagsVertical = SizeFlags.FillExpand, HideRoot = true}; recipes.AddChild(SearchBar); recipes.AddChild(RecipeList); hSplitContainer.AddChild(recipes); // Right side - var guide = new VBoxContainer("Guide"); - var info = new HBoxContainer("Info"); - InfoIcon = new TextureRect("TextureRect"); - InfoLabel = new Label("Label") + var guide = new VBoxContainer(); + var info = new HBoxContainer(); + InfoIcon = new TextureRect(); + InfoLabel = new Label { SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.ShrinkCenter }; @@ -85,7 +73,7 @@ namespace Content.Client.Construction info.AddChild(InfoLabel); guide.AddChild(info); - var stepsLabel = new Label("Label") + var stepsLabel = new Label { SizeFlagsHorizontal = SizeFlags.ShrinkCenter, SizeFlagsVertical = SizeFlags.ShrinkCenter, @@ -93,14 +81,14 @@ namespace Content.Client.Construction }; guide.AddChild(stepsLabel); - StepList = new ItemList("StepsList") + StepList = new ItemList { SizeFlagsVertical = SizeFlags.FillExpand, SelectMode = ItemList.ItemListSelectMode.None }; guide.AddChild(StepList); - var buttonsContainer = new HBoxContainer("Buttons"); - BuildButton = new Button("BuildButton") + var buttonsContainer = new HBoxContainer(); + BuildButton = new Button { SizeFlagsHorizontal = SizeFlags.FillExpand, TextAlign = Button.AlignMode.Center, @@ -108,7 +96,7 @@ namespace Content.Client.Construction Disabled = true, ToggleMode = false }; - EraseButton = new Button("EraseButton") + EraseButton = new Button { TextAlign = Button.AlignMode.Center, Text = "Clear Ghosts", ToggleMode = true }; @@ -140,7 +128,7 @@ namespace Content.Client.Construction void OnItemSelected() { - var prototype = (ConstructionPrototype)RecipeList.Selected.Metadata; + var prototype = (ConstructionPrototype) RecipeList.Selected.Metadata; if (prototype == null) { @@ -163,6 +151,7 @@ namespace Content.Client.Construction { continue; } + Texture icon; string text; switch (forward) @@ -171,20 +160,24 @@ namespace Content.Client.Construction switch (mat.Material) { case ConstructionStepMaterial.MaterialType.Metal: - icon = ResourceCache.GetResource("/Textures/Objects/sheet_metal.png"); + icon = ResourceCache.GetResource( + "/Textures/Objects/sheet_metal.png"); text = $"Metal x{mat.Amount}"; break; case ConstructionStepMaterial.MaterialType.Glass: - icon = ResourceCache.GetResource("/Textures/Objects/sheet_glass.png"); + icon = ResourceCache.GetResource( + "/Textures/Objects/sheet_glass.png"); text = $"Glass x{mat.Amount}"; break; case ConstructionStepMaterial.MaterialType.Cable: - icon = ResourceCache.GetResource("/Textures/Objects/cable_coil.png"); + icon = ResourceCache.GetResource( + "/Textures/Objects/cable_coil.png"); text = $"Cable Coil x{mat.Amount}"; break; default: throw new NotImplementedException(); } + break; case ConstructionStepTool tool: switch (tool.Tool) @@ -198,20 +191,24 @@ namespace Content.Client.Construction text = "Crowbar"; break; case ConstructionStepTool.ToolType.Screwdriver: - icon = ResourceCache.GetResource("/Textures/Objects/screwdriver.png"); + icon = ResourceCache.GetResource( + "/Textures/Objects/screwdriver.png"); text = "Screwdriver"; break; case ConstructionStepTool.ToolType.Welder: - icon = ResourceCache.GetResource("/Textures/Objects/tools.rsi").RSI["welder"].Frame0; + icon = ResourceCache.GetResource("/Textures/Objects/tools.rsi") + .RSI["welder"].Frame0; text = $"Welding tool ({tool.Amount} fuel)"; break; case ConstructionStepTool.ToolType.Wirecutters: - icon = ResourceCache.GetResource("/Textures/Objects/wirecutter.png"); + icon = ResourceCache.GetResource( + "/Textures/Objects/wirecutter.png"); text = "Wirecutters"; break; default: throw new NotImplementedException(); } + break; default: throw new NotImplementedException(); @@ -230,7 +227,7 @@ namespace Content.Client.Construction void OnBuildPressed(Button.ButtonEventArgs args) { - var prototype = (ConstructionPrototype)RecipeList.Selected.Metadata; + var prototype = (ConstructionPrototype) RecipeList.Selected.Metadata; if (prototype == null) { return; @@ -278,6 +275,7 @@ namespace Content.Client.Construction subNode = new CategoryNode(category, currentNode); currentNode.ChildCategories.Add(category, subNode); } + currentNode = subNode; } @@ -356,6 +354,7 @@ namespace Content.Client.Construction continue; } } + var subItem = RecipeList.CreateItem(ItemForNode(node)); subItem.Text = prototype.Name; subItem.Metadata = prototype; @@ -377,7 +376,10 @@ namespace Content.Client.Construction { public readonly string Name; public readonly CategoryNode Parent; - public SortedDictionary ChildCategories = new SortedDictionary(); + + public SortedDictionary + ChildCategories = new SortedDictionary(); + public List Prototypes = new List(); public int FlattenedIndex = -1; diff --git a/Content.Client/EntryPoint.cs b/Content.Client/EntryPoint.cs index a75e275b99..5ae120d742 100644 --- a/Content.Client/EntryPoint.cs +++ b/Content.Client/EntryPoint.cs @@ -11,8 +11,8 @@ using Content.Client.UserInterface; using Content.Shared.GameObjects.Components.Chemistry; using Content.Shared.GameObjects.Components.Markers; using Content.Shared.GameObjects.Components.Research; +using Content.Shared.GameObjects.Components.VendingMachines; using Content.Shared.Interfaces; -using Robust.Client; using Robust.Client.Interfaces; using Robust.Client.Interfaces.Graphics.Overlays; using Robust.Client.Interfaces.Input; @@ -42,6 +42,7 @@ namespace Content.Client var registerIgnore = new[] { + "Breakable", "Interactable", "Destructible", "Temperature", @@ -94,6 +95,7 @@ namespace Content.Client "PowerCell", "AiController", "PlayerInputMover", + "Computer" }; foreach (var ignoreName in registerIgnore) @@ -105,6 +107,8 @@ namespace Content.Client factory.Register(); factory.Register(); + factory.Register(); + prototypes.RegisterIgnore("material"); IoCManager.Register(); diff --git a/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs b/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs new file mode 100644 index 0000000000..1f8f5bfd37 --- /dev/null +++ b/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs @@ -0,0 +1,76 @@ +using Content.Shared.GameObjects.Components; +using Robust.Client.GameObjects; +using Robust.Client.Interfaces.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.Utility; +using YamlDotNet.RepresentationModel; + +namespace Content.Client.GameObjects.Components +{ + public sealed class ComputerVisualizer2D : AppearanceVisualizer + { + private string KeyboardState = "generic_key"; + private string ScreenState = "generic"; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + + if (node.TryGetNode("key", out var scalar)) + { + KeyboardState = scalar.AsString(); + } + + if (node.TryGetNode("screen", out scalar)) + { + ScreenState = scalar.AsString(); + } + } + + public override void InitializeEntity(IEntity entity) + { + base.InitializeEntity(entity); + + var sprite = entity.GetComponent(); + sprite.LayerSetState(Layers.Screen, ScreenState); + sprite.LayerSetState(Layers.Keyboard, $"{KeyboardState}_off"); + sprite.LayerSetState(Layers.KeyboardOn, KeyboardState); + } + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + var sprite = component.Owner.GetComponent(); + + if (!component.TryGetData(ComputerVisuals.Powered, out bool powered)) + { + powered = true; + } + + component.TryGetData(ComputerVisuals.Broken, out bool broken); + + if (broken) + { + sprite.LayerSetState(Layers.Body, "broken"); + sprite.LayerSetState(Layers.Screen, "computer_broken"); + } + else + { + sprite.LayerSetState(Layers.Body, "computer"); + sprite.LayerSetState(Layers.Screen, ScreenState); + } + + sprite.LayerSetVisible(Layers.Screen, powered); + sprite.LayerSetVisible(Layers.KeyboardOn, powered); + } + + public enum Layers + { + Body, + Screen, + Keyboard, + KeyboardOn + } + } +} diff --git a/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs b/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs index 80fbaf6517..22098aa13e 100644 --- a/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs +++ b/Content.Client/GameObjects/Components/HUD/Inventory/HumanInventoryInterfaceController.cs @@ -43,7 +43,7 @@ namespace Content.Client.GameObjects base.Initialize(); _window = new HumanInventoryWindow(_loc, _resourceCache); - + _window.OnClose += () => GameHud.InventoryButtonDown = false; foreach (var (slot, button) in _window.Buttons) { button.OnPressed = AddToInventory; @@ -185,7 +185,7 @@ namespace Content.Client.GameObjects // Right column AddButton(Slots.EARS, "ears", (2 * (size + sep), 0)); - AddButton(Slots.IDCARD, "mask", (2 * (size + sep), size + sep)); + AddButton(Slots.IDCARD, "id", (2 * (size + sep), size + sep)); AddButton(Slots.GLOVES, "gloves", (2 * (size + sep), 2 * (size + sep))); // Far right column. diff --git a/Content.Client/GameObjects/Components/Power/ApcBoundUserInterface.cs b/Content.Client/GameObjects/Components/Power/ApcBoundUserInterface.cs index 3bdc47a5f0..70988ff320 100644 --- a/Content.Client/GameObjects/Components/Power/ApcBoundUserInterface.cs +++ b/Content.Client/GameObjects/Components/Power/ApcBoundUserInterface.cs @@ -1,18 +1,13 @@ using System; using Content.Client.UserInterface; using Content.Shared.GameObjects.Components.Power; -using NJsonSchema.Validation; -using OpenTK.Graphics.OpenGL4; using Robust.Client.GameObjects.Components.UserInterface; using Robust.Client.Graphics.Drawing; -using Robust.Client.Interfaces.Graphics; using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; using Robust.Client.UserInterface.CustomControls; using Robust.Shared.GameObjects.Components.UserInterface; -using Robust.Shared.IoC; using Robust.Shared.Maths; -using Robust.Shared.Utility; namespace Content.Client.GameObjects.Components.Power { @@ -72,34 +67,34 @@ namespace Content.Client.GameObjects.Components.Power _chargeBar.Value = castState.Charge; UpdateChargeBarColor(castState.Charge); - float ChargePercentage = (castState.Charge / _chargeBar.MaxValue) * 100.0f; - _window.ChargePercentage.Text = " " + ChargePercentage.ToString("0.00") + "%"; + var chargePercentage = (castState.Charge / _chargeBar.MaxValue) * 100.0f; + _window.ChargePercentage.Text = " " + chargePercentage.ToString("0.00") + "%"; } private void UpdateChargeBarColor(float charge) { - float normalizedCharge = charge / _chargeBar.MaxValue; + var normalizedCharge = charge / _chargeBar.MaxValue; - float leftHue = 0.0f;// Red - float middleHue = 0.066f;// Orange - float rightHue = 0.33f;// Green - float saturation = 1.0f;// Uniform saturation - float value = 0.8f;// Uniform value / brightness - float alpha = 1.0f;// Uniform alpha + const float leftHue = 0.0f; // Red + const float middleHue = 0.066f; // Orange + const float rightHue = 0.33f; // Green + const float saturation = 1.0f; // Uniform saturation + const float value = 0.8f; // Uniform value / brightness + const float alpha = 1.0f; // Uniform alpha // These should add up to 1.0 or your transition won't be smooth - float leftSideSize = 0.5f;// Fraction of _chargeBar lerped from leftHue to middleHue - float rightSideSize = 0.5f;// Fraction of _chargeBar lerped from middleHue to rightHue + const float leftSideSize = 0.5f; // Fraction of _chargeBar lerped from leftHue to middleHue + const float rightSideSize = 0.5f; // Fraction of _chargeBar lerped from middleHue to rightHue float finalHue; if (normalizedCharge <= leftSideSize) { - normalizedCharge /= leftSideSize;// Adjust range to 0.0 to 1.0 + normalizedCharge /= leftSideSize; // Adjust range to 0.0 to 1.0 finalHue = FloatMath.Lerp(leftHue, middleHue, normalizedCharge); } else { - normalizedCharge = (normalizedCharge - leftSideSize) / rightSideSize;// Adjust range to 0.0 to 1.0. + normalizedCharge = (normalizedCharge - leftSideSize) / rightSideSize; // Adjust range to 0.0 to 1.0. finalHue = FloatMath.Lerp(middleHue, rightHue, normalizedCharge); } @@ -109,7 +104,7 @@ namespace Content.Client.GameObjects.Components.Power _chargeBar.ForegroundStyleBoxOverride = new StyleBoxFlat(); } - var foregroundStyleBoxOverride = (StyleBoxFlat)_chargeBar.ForegroundStyleBoxOverride; + var foregroundStyleBoxOverride = (StyleBoxFlat) _chargeBar.ForegroundStyleBoxOverride; foregroundStyleBoxOverride.BackgroundColor = Color.FromHsv(new Vector4(finalHue, saturation, value, alpha)); } @@ -134,29 +129,29 @@ namespace Content.Client.GameObjects.Components.Power public ApcWindow() { Title = "APC"; - var rows = new VBoxContainer("Rows"); + var rows = new VBoxContainer(); - var statusHeader = new Label("StatusHeader") { Text = "Power Status: " }; + var statusHeader = new Label {Text = "Power Status: "}; rows.AddChild(statusHeader); - var breaker = new HBoxContainer("Breaker"); - var breakerLabel = new Label("Label") { Text = "Main Breaker: " }; - BreakerButton = new CheckButton {Name = "Breaker", Text = "Toggle"}; + var breaker = new HBoxContainer(); + var breakerLabel = new Label {Text = "Main Breaker: "}; + BreakerButton = new CheckButton {Text = "Toggle"}; breaker.AddChild(breakerLabel); breaker.AddChild(BreakerButton); rows.AddChild(breaker); - var externalStatus = new HBoxContainer("ExternalStatus"); - var externalStatusLabel = new Label("Label") { Text = "External Power: " }; - ExternalPowerStateLabel = new Label("Status") { Text = "Good" }; + var externalStatus = new HBoxContainer(); + var externalStatusLabel = new Label {Text = "External Power: "}; + ExternalPowerStateLabel = new Label {Text = "Good"}; ExternalPowerStateLabel.SetOnlyStyleClass(NanoStyle.StyleClassPowerStateGood); externalStatus.AddChild(externalStatusLabel); externalStatus.AddChild(ExternalPowerStateLabel); rows.AddChild(externalStatus); - var charge = new HBoxContainer("Charge"); - var chargeLabel = new Label("Label") { Text = "Charge:" }; - ChargeBar = new ProgressBar("Charge") + var charge = new HBoxContainer(); + var chargeLabel = new Label {Text = "Charge:"}; + ChargeBar = new ProgressBar { SizeFlagsHorizontal = Control.SizeFlags.FillExpand, MinValue = 0.0f, @@ -164,7 +159,7 @@ namespace Content.Client.GameObjects.Components.Power Page = 0.0f, Value = 0.5f }; - ChargePercentage = new Label("ChargePercentage"); + ChargePercentage = new Label(); charge.AddChild(chargeLabel); charge.AddChild(ChargeBar); charge.AddChild(ChargePercentage); diff --git a/Content.Client/GameObjects/Components/Storage/ClientStorageComponent.cs b/Content.Client/GameObjects/Components/Storage/ClientStorageComponent.cs index ad8501cc64..aed0ca9c1c 100644 --- a/Content.Client/GameObjects/Components/Storage/ClientStorageComponent.cs +++ b/Content.Client/GameObjects/Components/Storage/ClientStorageComponent.cs @@ -30,7 +30,7 @@ namespace Content.Client.GameObjects.Components.Storage base.OnAdd(); Window = new StorageWindow() - { StorageEntity = this}; + {StorageEntity = this}; } public override void OnRemove() @@ -44,7 +44,8 @@ namespace Content.Client.GameObjects.Components.Storage base.ExposeData(serializer); } - public override void HandleMessage(ComponentMessage message, INetChannel netChannel = null, IComponent component = null) + public override void HandleMessage(ComponentMessage message, INetChannel netChannel = null, + IComponent component = null) { switch (message) { @@ -108,32 +109,27 @@ namespace Content.Client.GameObjects.Components.Storage public StorageWindow() { - Size = new Vector2(180.0f, 320.0f); - } - - protected override void Initialize() - { - base.Initialize(); + Size = (180, 320); Title = "Storage Item"; RectClipContent = true; - VSplitContainer = new VBoxContainer("VSplitContainer"); - Information = new Label("Information") + VSplitContainer = new VBoxContainer(); + Information = new Label { Text = "Items: 0 Volume: 0/0 Stuff", SizeFlagsVertical = SizeFlags.ShrinkCenter }; VSplitContainer.AddChild(Information); - var listScrollContainer = new ScrollContainer("ListScrollContainer") + var listScrollContainer = new ScrollContainer { SizeFlagsVertical = SizeFlags.FillExpand, SizeFlagsHorizontal = SizeFlags.FillExpand, HScrollEnabled = true, VScrollEnabled = true }; - EntityList = new VBoxContainer("EntityList") + EntityList = new VBoxContainer { SizeFlagsHorizontal = SizeFlags.FillExpand }; @@ -182,7 +178,8 @@ namespace Content.Client.GameObjects.Components.Storage //Sets information about entire storage container current capacity if (StorageEntity.StorageCapacityMax != 0) { - Information.Text = String.Format("Items: {0}, Stored: {1}/{2}", storagelist.Count, StorageEntity.StorageSizeUsed, StorageEntity.StorageCapacityMax); + Information.Text = String.Format("Items: {0}, Stored: {1}/{2}", storagelist.Count, + StorageEntity.StorageSizeUsed, StorageEntity.StorageCapacityMax); } else { @@ -196,7 +193,7 @@ namespace Content.Client.GameObjects.Components.Storage /// private void OnItemButtonToggled(BaseButton.ButtonToggledEventArgs args) { - var control = (EntityButton)args.Button.Parent; + var control = (EntityButton) args.Button.Parent; args.Button.Pressed = false; StorageEntity.Interact(control.EntityuID); } @@ -208,17 +205,15 @@ namespace Content.Client.GameObjects.Components.Storage private class EntityButton : PanelContainer { public EntityUid EntityuID { get; set; } - public Button ActualButton { get; private set; } - public SpriteView EntitySpriteView { get; private set; } - public Control EntityControl { get; private set; } - public Label EntityName { get; private set; } - public Label EntitySize { get; private set; } + public Button ActualButton { get; } + public SpriteView EntitySpriteView { get; } + public Control EntityControl { get; } + public Label EntityName { get; } + public Label EntitySize { get; } - protected override void Initialize() + public EntityButton() { - base.Initialize(); - - ActualButton = new Button("Button") + ActualButton = new Button { SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand, @@ -227,12 +222,12 @@ namespace Content.Client.GameObjects.Components.Storage }; AddChild(ActualButton); - var hBoxContainer = new HBoxContainer("HBoxContainer") {MouseFilter = MouseFilterMode.Ignore}; - EntitySpriteView = new SpriteView("SpriteView") + var hBoxContainer = new HBoxContainer {MouseFilter = MouseFilterMode.Ignore}; + EntitySpriteView = new SpriteView { CustomMinimumSize = new Vector2(32.0f, 32.0f), MouseFilter = MouseFilterMode.Ignore }; - EntityName = new Label("Name") + EntityName = new Label { SizeFlagsVertical = SizeFlags.ShrinkCenter, Text = "Backpack", @@ -241,11 +236,11 @@ namespace Content.Client.GameObjects.Components.Storage hBoxContainer.AddChild(EntitySpriteView); hBoxContainer.AddChild(EntityName); - EntityControl = new Control("Control") + EntityControl = new Control { SizeFlagsHorizontal = SizeFlags.FillExpand, MouseFilter = MouseFilterMode.Ignore }; - EntitySize = new Label("Size") + EntitySize = new Label { SizeFlagsVertical = SizeFlags.ShrinkCenter, Text = "Size 6", diff --git a/Content.Client/GameObjects/Components/VendingMachines/VendingMachineBoundUserInterface.cs b/Content.Client/GameObjects/Components/VendingMachines/VendingMachineBoundUserInterface.cs new file mode 100644 index 0000000000..089c8497f8 --- /dev/null +++ b/Content.Client/GameObjects/Components/VendingMachines/VendingMachineBoundUserInterface.cs @@ -0,0 +1,68 @@ +using Content.Client.VendingMachines; +using Content.Shared.GameObjects.Components.VendingMachines; +using Robust.Client.GameObjects.Components.UserInterface; +using Robust.Shared.GameObjects.Components.UserInterface; +using Robust.Shared.IoC; +using Robust.Shared.Prototypes; +using Robust.Shared.ViewVariables; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Content.Client.GameObjects.Components.VendingMachines +{ + class VendingMachineBoundUserInterface : BoundUserInterface + { + [ViewVariables] + private VendingMachineMenu _menu; + + public SharedVendingMachineComponent VendingMachine { get; private set; } + + public VendingMachineBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey) + { + SendMessage(new SharedVendingMachineComponent.InventorySyncRequestMessage()); + } + + protected override void Open() + { + base.Open(); + + if(!Owner.Owner.TryGetComponent(out SharedVendingMachineComponent vendingMachine)) + { + return; + } + + VendingMachine = vendingMachine; + + _menu = new VendingMachineMenu() { Owner = this, Title = Owner.Owner.Name }; + _menu.Populate(VendingMachine.Inventory); + + _menu.OnClose += Close; + _menu.OpenCentered(); + } + + public void Eject(string ID) + { + SendMessage(new SharedVendingMachineComponent.VendingMachineEjectMessage(ID)); + } + + protected override void ReceiveMessage(BoundUserInterfaceMessage message) + { + switch(message) + { + case SharedVendingMachineComponent.VendingMachineInventoryMessage msg: + _menu.Populate(msg.Inventory); + break; + } + } + + protected override void Dispose(bool disposing) + { + base.Dispose(disposing); + if(!disposing) { return; } + _menu?.Dispose(); + } + } +} diff --git a/Content.Client/GameObjects/Components/VendingMachines/VendingMachineVisualizer2D.cs b/Content.Client/GameObjects/Components/VendingMachines/VendingMachineVisualizer2D.cs new file mode 100644 index 0000000000..f69f711ac7 --- /dev/null +++ b/Content.Client/GameObjects/Components/VendingMachines/VendingMachineVisualizer2D.cs @@ -0,0 +1,99 @@ +using System; +using Content.Client.GameObjects.Components.Doors; +using Robust.Client.Animations; +using Robust.Client.GameObjects; +using Robust.Client.GameObjects.Components.Animations; +using Robust.Client.Interfaces.GameObjects.Components; +using Robust.Shared.Interfaces.GameObjects; +using YamlDotNet.RepresentationModel; +using static Content.Shared.GameObjects.Components.VendingMachines.SharedVendingMachineComponent; + +namespace Content.Client.GameObjects.Components.VendingMachines +{ + public class VendingMachineVisualizer2D : AppearanceVisualizer + { + // TODO: The length of these animations is supposed to be dictated + // by the vending machine's pack prototype's `AnimationDuration` + // but we have no good way of passing that data from the server + // to the client at the moment. Rework Visualizers? + private const string DeniedAnimationKey = "deny"; + private const string EjectAnimationKey = "eject"; + + private Animation _deniedAnimation; + private Animation _ejectAnimation; + + public override void LoadData(YamlMappingNode node) + { + base.LoadData(node); + _deniedAnimation = new Animation {Length = TimeSpan.FromSeconds(1.2f)}; + { + var flick = new AnimationTrackSpriteFlick(); + _deniedAnimation.AnimationTracks.Add(flick); + flick.LayerKey = VendingMachineVisualLayers.Base; + flick.KeyFrames.Add(new AnimationTrackSpriteFlick.KeyFrame("deny", 0f)); + } + + _ejectAnimation = new Animation {Length = TimeSpan.FromSeconds(1.2f)}; + { + var flick = new AnimationTrackSpriteFlick(); + _ejectAnimation.AnimationTracks.Add(flick); + flick.LayerKey = VendingMachineVisualLayers.Base; + flick.KeyFrames.Add(new AnimationTrackSpriteFlick.KeyFrame("eject", 0f)); + } + } + + public override void InitializeEntity(IEntity entity) + { + base.InitializeEntity(entity); + + if (!entity.HasComponent()) + { + entity.AddComponent(); + } + } + + public override void OnChangeData(AppearanceComponent component) + { + var sprite = component.Owner.GetComponent(); + var animPlayer = component.Owner.GetComponent(); + if (!component.TryGetData(VendingMachineVisuals.VisualState, out VendingMachineVisualState state)) + { + state = VendingMachineVisualState.Normal; + } + + switch (state) + { + case VendingMachineVisualState.Normal: + sprite.LayerSetState(VendingMachineVisualLayers.Base, "normal"); + break; + case VendingMachineVisualState.Off: + sprite.LayerSetState(VendingMachineVisualLayers.Base, "off"); + break; + case VendingMachineVisualState.Broken: + sprite.LayerSetState(VendingMachineVisualLayers.Base, "broken"); + break; + case VendingMachineVisualState.Deny: + if (!animPlayer.HasRunningAnimation(DeniedAnimationKey)) + { + animPlayer.Play(_deniedAnimation, DeniedAnimationKey); + } + + break; + case VendingMachineVisualState.Eject: + if (!animPlayer.HasRunningAnimation(EjectAnimationKey)) + { + animPlayer.Play(_ejectAnimation, EjectAnimationKey); + } + + break; + default: + throw new ArgumentOutOfRangeException(); + } + } + + public enum VendingMachineVisualLayers + { + Base, + } + } +} diff --git a/Content.Client/GameObjects/EntitySystems/VerbSystem.cs b/Content.Client/GameObjects/EntitySystems/VerbSystem.cs index 8326b415e7..a323f581b3 100644 --- a/Content.Client/GameObjects/EntitySystems/VerbSystem.cs +++ b/Content.Client/GameObjects/EntitySystems/VerbSystem.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; using Content.Shared.GameObjects; using Content.Shared.GameObjects.EntitySystemMessages; using Content.Shared.Input; @@ -66,7 +65,7 @@ namespace Content.Client.GameObjects.EntitySystems _currentPopup = new Popup(); _currentPopup.UserInterfaceManager.StateRoot.AddChild(_currentPopup); _currentPopup.OnPopupHide += _closeContextMenu; - var vBox = new VBoxContainer("ButtonBox"); + var vBox = new VBoxContainer(); _currentPopup.AddChild(vBox); vBox.AddChild(new Label {Text = "Waiting on Server..."}); @@ -94,7 +93,7 @@ namespace Content.Client.GameObjects.EntitySystems _currentPopup = new Popup(); _currentPopup.OnPopupHide += _closeContextMenu; - var vBox = new VBoxContainer("ButtonBox"); + var vBox = new VBoxContainer(); _currentPopup.AddChild(vBox); foreach (var entity in entities) { diff --git a/Content.Client/Research/LatheMenu.cs b/Content.Client/Research/LatheMenu.cs index 4c11178941..4a0ffbae6e 100644 --- a/Content.Client/Research/LatheMenu.cs +++ b/Content.Client/Research/LatheMenu.cs @@ -2,8 +2,6 @@ using System.Collections.Generic; using Content.Client.GameObjects.Components.Research; using Content.Shared.Materials; using Content.Shared.Research; -using Robust.Client.Interfaces.Graphics; -using Robust.Client.Interfaces.ResourceManagement; using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; using Robust.Client.UserInterface.CustomControls; @@ -19,8 +17,7 @@ namespace Content.Client.Research public class LatheMenu : SS14Window { #pragma warning disable CS0649 - [Dependency] - private IPrototypeManager PrototypeManager; + [Dependency] private IPrototypeManager PrototypeManager; #pragma warning restore private ItemList Items; @@ -37,15 +34,6 @@ namespace Content.Client.Research public LatheMenu() { - } - - public LatheMenu(string name) : base(name) - { - } - - protected override void Initialize() - { - base.Initialize(); IoCManager.InjectDependencies(this); Title = "Lathe Menu"; @@ -62,15 +50,15 @@ namespace Content.Client.Research margin.SetAnchorAndMarginPreset(LayoutPreset.Wide); - var vbox = new VBoxContainer() + var vBox = new VBoxContainer() { SizeFlagsVertical = SizeFlags.FillExpand, SeparationOverride = 5, }; - vbox.SetAnchorAndMarginPreset(LayoutPreset.Wide); + vBox.SetAnchorAndMarginPreset(LayoutPreset.Wide); - var hboxButtons = new HBoxContainer() + var hBoxButtons = new HBoxContainer() { SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand, @@ -93,7 +81,7 @@ namespace Content.Client.Research spacer.SetAnchorAndMarginPreset(LayoutPreset.Wide); - var hboxFilter = new HBoxContainer() + var hBoxFilter = new HBoxContainer() { SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand, @@ -124,8 +112,6 @@ namespace Content.Client.Research SizeFlagsVertical = SizeFlags.FillExpand, }; - - Items.OnItemSelected += ItemSelected; AmountLineEdit = new LineEdit() @@ -143,19 +129,19 @@ namespace Content.Client.Research SizeFlagsStretchRatio = 3 }; - hboxButtons.AddChild(spacer); - hboxButtons.AddChild(QueueButton); + hBoxButtons.AddChild(spacer); + hBoxButtons.AddChild(QueueButton); - hboxFilter.AddChild(SearchBar); - hboxFilter.AddChild(filterButton); + hBoxFilter.AddChild(SearchBar); + hBoxFilter.AddChild(filterButton); - vbox.AddChild(hboxButtons); - vbox.AddChild(hboxFilter); - vbox.AddChild(Items); - vbox.AddChild(AmountLineEdit); - vbox.AddChild(Materials); + vBox.AddChild(hBoxButtons); + vBox.AddChild(hBoxFilter); + vBox.AddChild(Items); + vBox.AddChild(AmountLineEdit); + vBox.AddChild(Materials); - margin.AddChild(vbox); + margin.AddChild(vBox); Contents.AddChild(margin); } diff --git a/Content.Client/Research/LatheQueueMenu.cs b/Content.Client/Research/LatheQueueMenu.cs index 3d1a183bfd..6281a6311a 100644 --- a/Content.Client/Research/LatheQueueMenu.cs +++ b/Content.Client/Research/LatheQueueMenu.cs @@ -1,13 +1,9 @@ using Content.Client.GameObjects.Components.Research; using Content.Shared.Research; using Robust.Client.Graphics; -using Robust.Client.Graphics.Drawing; -using Robust.Client.Interfaces.Graphics; using Robust.Client.UserInterface.Controls; using Robust.Client.UserInterface.CustomControls; using Robust.Client.Utility; -using Robust.Shared.IoC; -using Robust.Shared.Log; using Robust.Shared.Maths; using Robust.Shared.ViewVariables; @@ -25,11 +21,9 @@ namespace Content.Client.Research private Label Description; private TextureRect Icon; - protected override void Initialize() + public LatheQueueMenu() { - base.Initialize(); - - Title = "Lathe Queue"; + Title = "Lathe Queue"; var margin = new MarginContainer() { @@ -41,9 +35,9 @@ namespace Content.Client.Research margin.SetAnchorAndMarginPreset(LayoutPreset.Wide); - var vbox = new VBoxContainer(); + var vBox = new VBoxContainer(); - vbox.SetAnchorAndMarginPreset(LayoutPreset.Wide); + vBox.SetAnchorAndMarginPreset(LayoutPreset.Wide); var descMargin = new MarginContainer() { @@ -55,7 +49,7 @@ namespace Content.Client.Research SizeFlagsStretchRatio = 2, }; - var hbox = new HBoxContainer() + var hBox = new HBoxContainer() { SizeFlagsHorizontal = SizeFlags.FillExpand, }; @@ -66,7 +60,7 @@ namespace Content.Client.Research SizeFlagsStretchRatio = 2, }; - var vboxInfo = new VBoxContainer() + var vBoxInfo = new VBoxContainer() { SizeFlagsVertical = SizeFlags.FillExpand, SizeFlagsStretchRatio = 3, @@ -94,18 +88,18 @@ namespace Content.Client.Research SelectMode = ItemList.ItemListSelectMode.None }; - vboxInfo.AddChild(NameLabel); - vboxInfo.AddChild(Description); + vBoxInfo.AddChild(NameLabel); + vBoxInfo.AddChild(Description); - hbox.AddChild(Icon); - hbox.AddChild(vboxInfo); + hBox.AddChild(Icon); + hBox.AddChild(vBoxInfo); - descMargin.AddChild(hbox); + descMargin.AddChild(hBox); - vbox.AddChild(descMargin); - vbox.AddChild(QueueList); + vBox.AddChild(descMargin); + vBox.AddChild(QueueList); - margin.AddChild(vbox); + margin.AddChild(vBox); Contents.AddChild(margin); diff --git a/Content.Client/UserInterface/HandsGui.cs b/Content.Client/UserInterface/HandsGui.cs index 292da6f617..d474a87275 100644 --- a/Content.Client/UserInterface/HandsGui.cs +++ b/Content.Client/UserInterface/HandsGui.cs @@ -39,14 +39,12 @@ namespace Content.Client.UserInterface private UIBox2i _handL; private UIBox2i _handR; - private SpriteView LeftSpriteView; - private SpriteView RightSpriteView; - private TextureRect ActiveHandRect; + private readonly SpriteView LeftSpriteView; + private readonly SpriteView RightSpriteView; + private readonly TextureRect ActiveHandRect; - protected override void Initialize() + public HandsGui() { - base.Initialize(); - IoCManager.InjectDependencies(this); ToolTip = _loc.GetString("Your hands"); diff --git a/Content.Client/VendingMachines/VendingMachineMenu.cs b/Content.Client/VendingMachines/VendingMachineMenu.cs new file mode 100644 index 0000000000..8d2ff1b257 --- /dev/null +++ b/Content.Client/VendingMachines/VendingMachineMenu.cs @@ -0,0 +1,65 @@ +using Content.Client.GameObjects.Components.VendingMachines; +using Robust.Client.UserInterface.Controls; +using Robust.Client.UserInterface.CustomControls; +using Robust.Shared.IoC; +using Robust.Shared.Maths; +using System.Collections.Generic; +using Robust.Client.GameObjects; +using Robust.Client.Graphics; +using Robust.Client.Interfaces.ResourceManagement; +using Robust.Shared.GameObjects; +using Robust.Shared.Prototypes; +using static Content.Shared.GameObjects.Components.VendingMachines.SharedVendingMachineComponent; + +namespace Content.Client.VendingMachines +{ + class VendingMachineMenu : SS14Window + { + protected override Vector2? CustomSize => (300, 450); + + private readonly ItemList _items; + private List _cachedInventory; + + #pragma warning disable CS0649 + [Dependency] + private IResourceCache _resourceCache; + [Dependency] + private readonly IPrototypeManager _prototypeManager; + #pragma warning restore + public VendingMachineBoundUserInterface Owner { get; set; } + + public VendingMachineMenu() + { + IoCManager.InjectDependencies(this); + + _items = new ItemList() + { + SizeFlagsStretchRatio = 8, + SizeFlagsVertical = SizeFlags.FillExpand, + }; + _items.OnItemSelected += ItemSelected; + + Contents.AddChild(_items); + } + + public void Populate(List inventory) + { + _items.Clear(); + _cachedInventory = inventory; + foreach (VendingMachineInventoryEntry entry in inventory) + { + Texture icon = null; + if(_prototypeManager.TryIndex(entry.ID, out EntityPrototype prototype)) + { + icon = IconComponent.GetPrototypeIcon(prototype, _resourceCache).TextureFor(Direction.South); + } + _items.AddItem($"{entry.ID} ({entry.Amount} left)", icon); + } + } + + public void ItemSelected(ItemList.ItemListSelectedEventArgs args) + { + Owner.Eject(_cachedInventory[args.ItemIndex].ID); + } + } +} diff --git a/Content.Server/GameObjects/Components/ComputerComponent.cs b/Content.Server/GameObjects/Components/ComputerComponent.cs new file mode 100644 index 0000000000..7c1c6765cb --- /dev/null +++ b/Content.Server/GameObjects/Components/ComputerComponent.cs @@ -0,0 +1,34 @@ +using Content.Server.GameObjects.Components.Power; +using Content.Shared.GameObjects.Components; +using Robust.Server.GameObjects; +using Robust.Shared.GameObjects; + +namespace Content.Server.GameObjects.Components +{ + [RegisterComponent] + public sealed class ComputerComponent : SharedComputerComponent + { + public override void Initialize() + { + base.Initialize(); + + if (Owner.TryGetComponent(out PowerDeviceComponent powerDevice)) + { + powerDevice.OnPowerStateChanged += PowerDeviceOnOnPowerStateChanged; + + if (Owner.TryGetComponent(out AppearanceComponent appearance)) + { + appearance.SetData(ComputerVisuals.Powered, powerDevice.Powered); + } + } + } + + private void PowerDeviceOnOnPowerStateChanged(object sender, PowerStateEventArgs e) + { + if (Owner.TryGetComponent(out AppearanceComponent appearance)) + { + appearance.SetData(ComputerVisuals.Powered, e.Powered); + } + } + } +} diff --git a/Content.Server/GameObjects/Components/Damage/BreakableComponent.cs b/Content.Server/GameObjects/Components/Damage/BreakableComponent.cs new file mode 100644 index 0000000000..1f1a87d427 --- /dev/null +++ b/Content.Server/GameObjects/Components/Damage/BreakableComponent.cs @@ -0,0 +1,79 @@ +using System; +using System.Collections.Generic; +using Content.Server.GameObjects.EntitySystems; +using Content.Server.Interfaces; +using Content.Shared.GameObjects; +using Robust.Shared.GameObjects; +using Robust.Shared.Interfaces.GameObjects; +using Robust.Shared.IoC; +using Robust.Shared.Maths; +using Robust.Shared.Serialization; + +namespace Content.Server.GameObjects.Components.Damage +{ + [RegisterComponent] + public class BreakableComponent : Component, IOnDamageBehavior, IExAct + { + + #pragma warning disable 649 + [Dependency] private readonly IEntitySystemManager _entitySystemManager; + #pragma warning restore 649 + /// + public override string Name => "Breakable"; + public DamageThreshold Threshold { get; private set; } + + public DamageType damageType = DamageType.Total; + public int damageValue = 0; + public bool broken = false; + + private ActSystem _actSystem; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(ref damageValue, "thresholdvalue", 100); + serializer.DataField(ref damageType, "thresholdtype", DamageType.Total); + } + + public override void Initialize() + { + base.Initialize(); + _actSystem = _entitySystemManager.GetEntitySystem(); + } + + public List GetAllDamageThresholds() + { + Threshold = new DamageThreshold(damageType, damageValue, ThresholdType.Breakage); + return new List() {Threshold}; + } + + public void OnDamageThresholdPassed(object obj, DamageThresholdPassedEventArgs e) + { + if (e.Passed && e.DamageThreshold == Threshold && broken == false) + { + broken = true; + _actSystem.HandleBreakage(Owner); + } + } + + public void OnExplosion(ExplosionEventArgs eventArgs) + { + var prob = new Random(); + switch (eventArgs.Severity) + { + case ExplosionSeverity.Destruction: + _actSystem.HandleBreakage(Owner); + break; + case ExplosionSeverity.Heavy: + _actSystem.HandleBreakage(Owner); + break; + case ExplosionSeverity.Light: + if(prob.Prob(40)) + _actSystem.HandleBreakage(Owner); + break; + } + } + + } +} diff --git a/Content.Server/GameObjects/Components/Damage/DamageThreshold.cs b/Content.Server/GameObjects/Components/Damage/DamageThreshold.cs index 8e77872692..a7c04238c1 100644 --- a/Content.Server/GameObjects/Components/Damage/DamageThreshold.cs +++ b/Content.Server/GameObjects/Components/Damage/DamageThreshold.cs @@ -43,7 +43,8 @@ namespace Content.Server.GameObjects Destruction, Death, Critical, - HUDUpdate + HUDUpdate, + Breakage, } public class DamageThresholdPassedEventArgs : EventArgs diff --git a/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs b/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs index 4a216d5b12..adc6bd78d9 100644 --- a/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs @@ -43,6 +43,8 @@ namespace Content.Server.GameObjects { base.ExposeData(serializer); + serializer.DataField(ref _clothingEquippedPrefix, "ClothingPrefix", null); + // TODO: Writing. serializer.DataReadFunction("Slots", new List(0), list => { diff --git a/Content.Server/GameObjects/Components/Items/Storage/ItemComponent.cs b/Content.Server/GameObjects/Components/Items/Storage/ItemComponent.cs index a5d61d955d..5cf06c5508 100644 --- a/Content.Server/GameObjects/Components/Items/Storage/ItemComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Storage/ItemComponent.cs @@ -8,6 +8,7 @@ using Robust.Server.Interfaces.GameObjects; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Maths; +using Robust.Shared.Serialization; namespace Content.Server.GameObjects { @@ -50,6 +51,13 @@ namespace Content.Server.GameObjects } } + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(ref _equippedPrefix, "HeldPrefix", null); + } + public bool AttackHand(AttackHandEventArgs eventArgs) { var hands = eventArgs.User.GetComponent(); diff --git a/Content.Server/GameObjects/Components/Projectiles/ProjectileComponent.cs b/Content.Server/GameObjects/Components/Projectiles/ProjectileComponent.cs index 48051aa31d..d2a36ae105 100644 --- a/Content.Server/GameObjects/Components/Projectiles/ProjectileComponent.cs +++ b/Content.Server/GameObjects/Components/Projectiles/ProjectileComponent.cs @@ -20,6 +20,8 @@ namespace Content.Server.GameObjects.Components.Projectiles public Dictionary damages = new Dictionary(); + public float TimeLeft { get; set; } = 10; + /// /// Function that makes the collision of this object ignore a specific entity so we don't collide with ourselves /// diff --git a/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs b/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs new file mode 100644 index 0000000000..67b8763792 --- /dev/null +++ b/Content.Server/GameObjects/Components/VendingMachines/VendingMachineComponent.cs @@ -0,0 +1,194 @@ +using System; +using Content.Server.GameObjects.EntitySystems; +using Content.Shared.GameObjects.Components.VendingMachines; +using Content.Shared.VendingMachines; +using Robust.Server.GameObjects.Components.UserInterface; +using Robust.Server.Interfaces.GameObjects; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components.UserInterface; +using Robust.Shared.IoC; +using Robust.Shared.Prototypes; +using Robust.Shared.Serialization; +using Robust.Shared.Timers; +using Robust.Shared.Utility; +using System.Collections.Generic; +using Content.Server.GameObjects.Components.Power; +using Robust.Server.GameObjects; +using Robust.Shared.Log; + +namespace Content.Server.GameObjects.Components.VendingMachines +{ + [RegisterComponent] + [ComponentReference(typeof(IActivate))] + public class VendingMachineComponent : SharedVendingMachineComponent, IActivate, IExamine, IBreakAct + { + private AppearanceComponent _appearance; + private BoundUserInterface _userInterface; + private PowerDeviceComponent _powerDevice; + + private bool _ejecting = false; + private TimeSpan _animationDuration = TimeSpan.Zero; + private string _packPrototypeId; + private string _description; + private string _spriteName; + + private bool Powered => _powerDevice.Powered; + private bool _broken = false; + + public void Activate(ActivateEventArgs eventArgs) + { + if(!eventArgs.User.TryGetComponent(out IActorComponent actor)) + { + return; + } + + _userInterface.Open(actor.playerSession); + } + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(ref _packPrototypeId, "pack", string.Empty); + } + + private void InitializeFromPrototype() + { + if (string.IsNullOrEmpty(_packPrototypeId)) { return; } + var prototypeManger = IoCManager.Resolve(); + if (!prototypeManger.TryIndex(_packPrototypeId, out VendingMachineInventoryPrototype packPrototype)) + { + return; + } + + Owner.Name = packPrototype.Name; + _description = packPrototype.Description; + _animationDuration = TimeSpan.FromSeconds(packPrototype.AnimationDuration); + _spriteName = packPrototype.SpriteName; + if (!string.IsNullOrEmpty(_spriteName)) + { + var spriteComponent = Owner.GetComponent(); + const string vendingMachineRSIPath = "Buildings/VendingMachines/{0}.rsi"; + spriteComponent.BaseRSIPath = string.Format(vendingMachineRSIPath, _spriteName); + } + + var inventory = new List(); + foreach(var (id, amount) in packPrototype.StartingInventory) + { + inventory.Add(new VendingMachineInventoryEntry(id, amount)); + } + Inventory = inventory; + } + + public override void Initialize() + { + base.Initialize(); + _appearance = Owner.GetComponent(); + _userInterface = Owner.GetComponent() + .GetBoundUserInterface(VendingMachineUiKey.Key); + _userInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; + _powerDevice = Owner.GetComponent(); + _powerDevice.OnPowerStateChanged += UpdatePower; + InitializeFromPrototype(); + } + + public override void OnRemove() + { + _appearance = null; + _powerDevice.OnPowerStateChanged -= UpdatePower; + _powerDevice = null; + base.OnRemove(); + } + + private void UpdatePower(object sender, PowerStateEventArgs args) + { + var state = args.Powered ? VendingMachineVisualState.Normal : VendingMachineVisualState.Off; + TrySetVisualState(state); + } + + private void UserInterfaceOnOnReceiveMessage(BoundUserInterfaceMessage message) + { + switch (message) + { + case VendingMachineEjectMessage msg: + TryEject(msg.ID); + break; + case InventorySyncRequestMessage msg: + _userInterface.SendMessage(new VendingMachineInventoryMessage(Inventory)); + break; + } + } + + public void Examine(FormattedMessage message) + { + if(_description == null) { return; } + message.AddText(_description); + } + + private void TryEject(string id) + { + if (_ejecting || _broken) + { + return; + } + + VendingMachineInventoryEntry entry = Inventory.Find(x => x.ID == id); + if (entry == null) + { + FlickDenyAnimation(); + return; + } + + if (entry.Amount <= 0) + { + FlickDenyAnimation(); + return; + } + + _ejecting = true; + entry.Amount--; + _userInterface.SendMessage(new VendingMachineInventoryMessage(Inventory)); + TrySetVisualState(VendingMachineVisualState.Eject); + + Timer.Spawn(_animationDuration, () => + { + TrySetVisualState(VendingMachineVisualState.Normal); + _ejecting = false; + Owner.EntityManager.SpawnEntityAt(id, Owner.Transform.GridPosition); + }); + } + + private void FlickDenyAnimation() + { + TrySetVisualState(VendingMachineVisualState.Deny); + //TODO: This duration should be a distinct value specific to the deny animation + Timer.Spawn(_animationDuration, () => + { + TrySetVisualState(VendingMachineVisualState.Normal); + }); + } + + private void TrySetVisualState(VendingMachineVisualState state) + { + var finalState = state; + if (_broken) + { + finalState = VendingMachineVisualState.Broken; + } else if (_ejecting) + { + finalState = VendingMachineVisualState.Eject; + } else if (!Powered) + { + finalState = VendingMachineVisualState.Off; + } + _appearance.SetData(VendingMachineVisuals.VisualState, finalState); + } + + public void OnBreak(BreakageEventArgs eventArgs) + { + _broken = true; + TrySetVisualState(VendingMachineVisualState.Broken); + } + } +} + diff --git a/Content.Server/GameObjects/EntitySystems/ActSystem.cs b/Content.Server/GameObjects/EntitySystems/ActSystem.cs index ae83a8788f..9826370d0f 100644 --- a/Content.Server/GameObjects/EntitySystems/ActSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/ActSystem.cs @@ -24,6 +24,19 @@ namespace Content.Server.GameObjects.EntitySystems public bool IsSpawnWreck { get; set; } } + public class BreakageEventArgs : EventArgs + { + public IEntity Owner { get; set; } + } + + public interface IBreakAct + { + /// + /// Called when object is broken + /// + void OnBreak(BreakageEventArgs eventArgs); + } + public interface IExAct { /// @@ -73,6 +86,19 @@ namespace Content.Server.GameObjects.EntitySystems exAct.OnExplosion(eventArgs); } } + + public void HandleBreakage(IEntity owner) + { + var eventArgs = new BreakageEventArgs + { + Owner = owner, + }; + var breakActs = owner.GetAllComponents().ToList(); + foreach (var breakAct in breakActs) + { + breakAct.OnBreak(eventArgs); + } + } } public enum ExplosionSeverity { @@ -80,4 +106,4 @@ namespace Content.Server.GameObjects.EntitySystems Heavy, Light, } -} \ No newline at end of file +} diff --git a/Content.Server/GameObjects/EntitySystems/ProjectileSystem.cs b/Content.Server/GameObjects/EntitySystems/ProjectileSystem.cs new file mode 100644 index 0000000000..a1e4713aa5 --- /dev/null +++ b/Content.Server/GameObjects/EntitySystems/ProjectileSystem.cs @@ -0,0 +1,34 @@ +using Content.Server.GameObjects.Components.Projectiles; +using JetBrains.Annotations; +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Systems; + +namespace Content.Server.GameObjects.EntitySystems +{ + [UsedImplicitly] + internal sealed class ProjectileSystem : EntitySystem + { + public override void Initialize() + { + base.Initialize(); + + EntityQuery = new TypeEntityQuery(typeof(ProjectileComponent)); + } + + public override void Update(float frameTime) + { + base.Update(frameTime); + + foreach (var entity in RelevantEntities) + { + var component = entity.GetComponent(); + component.TimeLeft -= frameTime; + + if (component.TimeLeft <= 0) + { + entity.Delete(); + } + } + } + } +} diff --git a/Content.Shared/GameObjects/Components/SharedComputerComponent.cs b/Content.Shared/GameObjects/Components/SharedComputerComponent.cs new file mode 100644 index 0000000000..a3e5162893 --- /dev/null +++ b/Content.Shared/GameObjects/Components/SharedComputerComponent.cs @@ -0,0 +1,21 @@ +using System; +using Robust.Shared.GameObjects; +using Robust.Shared.Serialization; + +namespace Content.Shared.GameObjects.Components +{ + public class SharedComputerComponent : Component + { + public override string Name => "Computer"; + } + + [Serializable, NetSerializable] + public enum ComputerVisuals + { + // Bool + Powered, + + // Bool + Broken + } +} diff --git a/Content.Shared/GameObjects/Components/VendingMachines/SharedVendingMachineComponent.cs b/Content.Shared/GameObjects/Components/VendingMachines/SharedVendingMachineComponent.cs new file mode 100644 index 0000000000..9ddbfa4b49 --- /dev/null +++ b/Content.Shared/GameObjects/Components/VendingMachines/SharedVendingMachineComponent.cs @@ -0,0 +1,78 @@ +using Robust.Shared.GameObjects; +using Robust.Shared.GameObjects.Components.UserInterface; +using Robust.Shared.IoC; +using Robust.Shared.Prototypes; +using Robust.Shared.Serialization; +using System; +using System.Collections.Generic; +using System.Collections.Specialized; + +namespace Content.Shared.GameObjects.Components.VendingMachines +{ + public class SharedVendingMachineComponent : Component + { + public override string Name => "VendingMachine"; + public override uint? NetID => ContentNetIDs.VENDING_MACHINE; + + public List Inventory = new List(); + + [Serializable, NetSerializable] + public enum VendingMachineVisuals + { + VisualState, + } + + [Serializable, NetSerializable] + public enum VendingMachineVisualState + { + Normal, + Off, + Broken, + Eject, + Deny, + } + + [Serializable, NetSerializable] + public class VendingMachineEjectMessage : BoundUserInterfaceMessage + { + public readonly string ID; + public VendingMachineEjectMessage(string id) + { + ID = id; + } + } + + [Serializable, NetSerializable] + public enum VendingMachineUiKey + { + Key, + } + + [Serializable, NetSerializable] + public class InventorySyncRequestMessage : BoundUserInterfaceMessage + { + } + + [Serializable, NetSerializable] + public class VendingMachineInventoryMessage : BoundUserInterfaceMessage + { + public readonly List Inventory; + public VendingMachineInventoryMessage(List inventory) + { + Inventory = inventory; + } + } + + [Serializable, NetSerializable] + public class VendingMachineInventoryEntry + { + public string ID; + public uint Amount; + public VendingMachineInventoryEntry(string id, uint amount) + { + ID = id; + Amount = amount; + } + } + } +} diff --git a/Content.Shared/GameObjects/ContentNetIDs.cs b/Content.Shared/GameObjects/ContentNetIDs.cs index 166a0cdb0e..ae8692f522 100644 --- a/Content.Shared/GameObjects/ContentNetIDs.cs +++ b/Content.Shared/GameObjects/ContentNetIDs.cs @@ -23,5 +23,6 @@ public const uint LATHE_DATABASE = 1017; public const uint MATERIAL_STORAGE = 1018; public const uint HAND_TELEPORTER = 1019; + public const uint VENDING_MACHINE = 1020; } } diff --git a/Content.Shared/GameObjects/Verb.cs b/Content.Shared/GameObjects/Verb.cs index 4fd3fe288b..0f929a1dce 100644 --- a/Content.Shared/GameObjects/Verb.cs +++ b/Content.Shared/GameObjects/Verb.cs @@ -114,7 +114,7 @@ namespace Content.Shared.GameObjects // This works for now though. public static IEnumerable<(IComponent, Verb)> GetVerbs(IEntity entity) { - foreach (var component in entity.GetComponentInstances()) + foreach (var component in entity.GetAllComponents()) { var type = component.GetType(); foreach (var nestedType in type.GetNestedTypes(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static)) diff --git a/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs b/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs new file mode 100644 index 0000000000..511615337c --- /dev/null +++ b/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs @@ -0,0 +1,41 @@ +using Robust.Shared.Prototypes; +using Robust.Shared.Serialization; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using YamlDotNet.RepresentationModel; + +namespace Content.Shared.VendingMachines +{ + [Serializable, NetSerializable, Prototype("vendingMachineInventory")] + public class VendingMachineInventoryPrototype : IPrototype, IIndexedPrototype + { + private string _id; + private string _name; + private string _description; + private double _animationDuration; + private string _spriteName; + private Dictionary _startingInventory; + + public string ID => _id; + public string Name => _name; + public string Description => _description; + public double AnimationDuration => _animationDuration; + public string SpriteName => _spriteName; + public Dictionary StartingInventory => _startingInventory; + + public void LoadFrom(YamlMappingNode mapping) + { + var serializer = YamlObjectSerializer.NewReader(mapping); + + serializer.DataField(ref _id, "id", string.Empty); + serializer.DataField(ref _name, "name", string.Empty); + serializer.DataField(ref _description, "description", string.Empty); + serializer.DataField(ref _animationDuration, "animationDuration", 0); + serializer.DataField(ref _spriteName, "spriteName", string.Empty); + serializer.DataField(ref _startingInventory, "startingInventory", new Dictionary()); + } + } +} diff --git a/Resources/Maps/stationstation.yml b/Resources/Maps/stationstation.yml index ae95e48979..f3e77331f9 100644 --- a/Resources/Maps/stationstation.yml +++ b/Resources/Maps/stationstation.yml @@ -5,11 +5,59 @@ meta: postmapinit: false tilemap: 0: space - 1: floor_steel - 2: floor_techmaint - 3: floor_white - 4: plating - 5: underplating + 1: floor_carpet + 2: floor_dark + 3: floor_elevator_shaft + 4: floor_freezer + 5: floor_green_circuit + 6: floor_hull_center0 + 7: floor_hull_center1 + 8: floor_hull_center10 + 9: floor_hull_center11 + 10: floor_hull_center12 + 11: floor_hull_center13 + 12: floor_hull_center14 + 13: floor_hull_center15 + 14: floor_hull_center16 + 15: floor_hull_center17 + 16: floor_hull_center18 + 17: floor_hull_center19 + 18: floor_hull_center2 + 19: floor_hull_center20 + 20: floor_hull_center21 + 21: floor_hull_center22 + 22: floor_hull_center23 + 23: floor_hull_center24 + 24: floor_hull_center25 + 25: floor_hull_center26 + 26: floor_hull_center27 + 27: floor_hull_center28 + 28: floor_hull_center29 + 29: floor_hull_center3 + 30: floor_hull_center30 + 31: floor_hull_center31 + 32: floor_hull_center32 + 33: floor_hull_center33 + 34: floor_hull_center34 + 35: floor_hull_center35 + 36: floor_hull_center4 + 37: floor_hull_center5 + 38: floor_hull_center6 + 39: floor_hull_center7 + 40: floor_hull_center8 + 41: floor_hull_center9 + 42: floor_hydro + 43: floor_lino + 44: floor_mono + 45: floor_reinforced + 46: floor_rock_vault + 47: floor_showroom + 48: floor_steel + 49: floor_steel_dirty + 50: floor_techmaint + 51: floor_white + 52: plating + 53: underplating grids: - settings: chunksize: 16 @@ -18,17 +66,17 @@ grids: worldpos: 0,0 chunks: - ind: "-1,0" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAIAAAAFAAAABQAAAAUAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAAFAAAABQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAUAAAAFAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADUAAAA1AAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADIAAAA1AAAANQAAADUAAAA1AAAAMAAAADAAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADUAAAA1AAAANQAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAANQAAADUAAAA1AAAANQAAADUAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "-1,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAABQAAAAUAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAIAAAACAAAAAgAAAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAACAAAAAgAAAAUAAAACAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAABQAAAAUAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAABQAAAAUAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAACAAAABQAAAAUAAAAFAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAgAAAAUAAAACAAAABQAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAIAAAAFAAAABQAAAAUAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAACAAAABQAAAAUAAAAFAAAABQAAAAUAAAAFAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAgAAAAUAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAIAAAAFAAAABQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAACAAAABQAAAAUAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAgAAAAUAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAA== + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADUAAAA1AAAANQAAADUAAAA1AAAANQAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAANQAAADIAAAAyAAAAMgAAADIAAAAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADUAAAAyAAAAMgAAADUAAAAyAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADUAAAA1AAAANQAAADUAAAA1AAAANQAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAAMgAAADIAAAAyAAAAMgAAADIAAAAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADIAAAAyAAAAMgAAADIAAAAyAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADUAAAA1AAAANQAAADUAAAAyAAAAMgAAADIAAAAyAAAAMgAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAAyAAAANQAAADUAAAA1AAAAMgAAADIAAAAyAAAAMgAAADIAAAAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAAMgAAADUAAAAyAAAANQAAADIAAAAyAAAAMgAAADIAAAAyAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADIAAAA1AAAANQAAADUAAAAyAAAAMgAAADIAAAAyAAAAMgAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAAyAAAANQAAADUAAAA1AAAANQAAADUAAAA1AAAANQAAADUAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAAMgAAADUAAAA1AAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADIAAAA1AAAANQAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAAyAAAANQAAADUAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAAMgAAADUAAAA1AAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAA== - ind: "-1,1" tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "0,1" tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "0,0" - tiles: AQAAAAUAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAAAQAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAEAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAAAQAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== + tiles: MAAAADUAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAAMAAAADAAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADAAAAAwAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANQAAADUAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAAMAAAADAAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADAAAAA0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAADQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "0,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAUAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAIAAAACAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAUAAAACAAAAAgAAAAUAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAUAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAIAAAACAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAACAAAAAgAAAAUAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACAAAAAgAAAAIAAAAFAAAAAgAAAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAIAAAACAAAAAgAAAAUAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAIAAAACAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAUAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAANQAAADUAAAA1AAAANQAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyAAAAMgAAADIAAAAyAAAANQAAADUAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMgAAADUAAAAyAAAAMgAAADUAAAA1AAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADUAAAA1AAAANQAAADUAAAA1AAAANQAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyAAAAMgAAADIAAAAyAAAANQAAADUAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMgAAADIAAAAyAAAAMgAAADUAAAA1AAAANQAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIAAAAyAAAAMgAAADIAAAA1AAAAMgAAADIAAAAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyAAAAMgAAADIAAAAyAAAAMgAAADUAAAA1AAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMgAAADIAAAAyAAAAMgAAADIAAAAyAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIAAAAyAAAAMgAAADIAAAAyAAAAMgAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1AAAANQAAADIAAAAyAAAANQAAADUAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADUAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAANQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - ind: "1,-1" tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== entities: @@ -39,7 +87,7 @@ entities: pos: -1.47174,4.550247 rot: -1.5707963267949 rad type: Transform - - charge: 1000 + - charge: 1200 type: HitscanWeaponCapacitor - type: LaserItem uid: 1 @@ -48,7 +96,7 @@ entities: pos: -0.6748645,4.487747 rot: -1.5707963267949 rad type: Transform - - charge: 1000 + - charge: 1200 type: HitscanWeaponCapacitor - type: Brutepack uid: 2 @@ -211,18 +259,12 @@ entities: pos: -1.5,-14.5 rot: -1.5707963267949 rad type: Transform -- type: LightTube +- type: poweredsmalllight uid: 25 components: - - parent: 26 - grid: 0 - type: Transform -- type: poweredlight - uid: 26 - components: - grid: 0 - pos: 4.5,-9.5 - rot: 3.14159265358979 rad + pos: -4.5,-5 + rot: 1.5707963267948966 rad type: Transform - color: '#FFFFFFFF' type: PointLight @@ -231,7 +273,24 @@ entities: - containers: light_bulb: entities: - - 25 + - 29 + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer +- type: poweredlight + uid: 26 + components: + - grid: 0 + pos: -8.5,4 + rot: -1.5707963267948966 rad + type: Transform + - color: '#FFFFFFFF' + type: PointLight + - load: 40 + type: PowerDevice + - containers: + light_bulb: + entities: + - 219 type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer - type: Wire @@ -241,18 +300,12 @@ entities: pos: 8.5,-8.5 rot: -1.5707963267949 rad type: Transform -- type: LightTube +- type: poweredsmalllight uid: 28 components: - - parent: 29 - grid: 0 - type: Transform -- type: poweredlight - uid: 29 - components: - grid: 0 - pos: -0.5,-13.5 - rot: 1.5707963267949 rad + pos: 0.5,-5 + rot: 1.5707963267948966 rad type: Transform - color: '#FFFFFFFF' type: PointLight @@ -261,9 +314,16 @@ entities: - containers: light_bulb: entities: - - 28 + - 171 type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer +- type: LightBulb + uid: 29 + components: + - parent: 25 + grid: 0 + pos: 4.5,5 + type: Transform - type: Wire uid: 30 components: @@ -593,7 +653,7 @@ entities: pos: 1.5,3.5 rot: -1.5707963267949 rad type: Transform - - load: 120 + - load: 220 type: PowerProvider - type: solid_wall uid: 77 @@ -697,6 +757,9 @@ entities: storagebase: entities: [] type: Robust.Server.GameObjects.Components.Container.Container + EntityStorageComponent: + entities: [] + type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: Wire uid: 91 @@ -1076,28 +1139,28 @@ entities: rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 145 + uid: 144 components: - grid: 0 pos: -3.5,-8.5 rot: -1.5707963267949 rad type: Transform - type: SecurityVestClothing - uid: 146 + uid: 145 components: - grid: 0 pos: 0.5223687,7.507263 rot: -1.5707963267949 rad type: Transform - type: HelmetSecurity - uid: 147 + uid: 146 components: - grid: 0 pos: -0.1807563,7.585388 rot: -1.5707963267949 rad type: Transform - type: locker_generic - uid: 148 + uid: 147 components: - grid: 0 pos: 1.5,-10.5 @@ -1110,30 +1173,33 @@ entities: Content.Server.GameObjects.Components.EntityStorageComponent149: entities: [] type: Robust.Server.GameObjects.Components.Container.Container + EntityStorageComponent: + entities: [] + type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: HelmetSecurity - uid: 149 + uid: 148 components: - grid: 0 pos: -0.7432563,7.601013 rot: -1.5707963267949 rad type: Transform - type: Medkit - uid: 150 + uid: 149 components: - grid: 0 pos: -3.209215,-1.486604 rot: -1.5707963267949 rad type: Transform - type: Medkit - uid: 151 + uid: 150 components: - grid: 0 pos: -4.146715,-1.408479 rot: -1.5707963267949 rad type: Transform - type: locker_generic - uid: 152 + uid: 151 components: - grid: 0 pos: 0.5,-10.5 @@ -1146,183 +1212,163 @@ entities: Content.Server.GameObjects.Components.EntityStorageComponent153: entities: [] type: Robust.Server.GameObjects.Components.Container.Container + EntityStorageComponent: + entities: [] + type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: fire_extinguisher - uid: 157 + uid: 152 components: - grid: 0 pos: -1.297692,-5.396082 rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 166 + uid: 153 components: - grid: 0 pos: -0.5,-0.5 rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 167 + uid: 154 components: - grid: 0 pos: -5.5,-0.5 rot: -1.5707963267949 rad type: Transform -- type: poweredsmalllight - uid: 169 +- type: computerPowerMonitoring + uid: 155 components: - grid: 0 pos: 0.5,-5.5 - rot: 1.5707963267949 rad + rot: -1.5707963267948966 rad type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 171 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer -- type: LightTube - uid: 170 +- type: computerAlert + uid: 156 components: - - parent: 189 - grid: 0 - type: Transform -- type: LightBulb - uid: 171 - components: - - parent: 169 - grid: 0 + - grid: 0 + pos: 0.5,0.5 + rot: -1.5707963267948966 rad type: Transform - type: table - uid: 175 + uid: 157 components: - grid: 0 pos: -4.5,-1.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 176 + uid: 158 components: - grid: 0 pos: -1.5,-1.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 177 + uid: 159 components: - grid: 0 pos: -2.5,-1.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 178 + uid: 160 components: - grid: 0 pos: -3.5,-1.5 rot: -1.5707963267949 rad type: Transform - type: WirelessMachine - uid: 179 + uid: 161 components: - grid: 0 pos: -6.5,0.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 180 + uid: 162 components: - grid: 0 pos: 4.5,-13.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 181 + uid: 163 components: - grid: 0 pos: -5.5,-13.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 182 + uid: 164 components: - grid: 0 pos: -6.5,-12.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 183 + uid: 165 components: - grid: 0 pos: -6.5,-13.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 184 + uid: 166 components: - grid: 0 pos: 5.5,-11.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 185 + uid: 167 components: - grid: 0 pos: 5.5,-12.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 186 + uid: 168 components: - grid: 0 pos: 5.5,-13.5 rot: -1.5707963267949 rad type: Transform - type: WiredMachine - uid: 187 + uid: 169 components: - grid: 0 pos: 5.5,-13.5 rot: -1.5707963267949 rad type: Transform - type: WiredMachine - uid: 188 + uid: 170 components: - grid: 0 pos: -6.5,-13.5 rot: -1.5707963267949 rad type: Transform -- type: poweredlight - uid: 189 - components: - - grid: 0 - pos: -6.5,-9.5 - type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 170 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer - type: LightBulb - uid: 190 + uid: 171 components: - - parent: 191 + - parent: 28 grid: 0 + pos: -0.5,5 + type: Transform +- type: LightBulb + uid: 172 + components: + - parent: 173 + grid: 0 + pos: 10,6.5 type: Transform - type: poweredsmalllight - uid: 191 + uid: 173 components: - grid: 0 - pos: -4.5,-5.5 - rot: 1.5707963267949 rad + pos: -10,-6.5 + rot: 3.141592653589793 rad type: Transform - color: '#FFFFFFFF' type: PointLight @@ -1331,295 +1377,302 @@ entities: - containers: light_bulb: entities: - - 190 + - 172 type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer - type: spawn_point_latejoin - uid: 192 + uid: 174 components: - grid: 0 pos: -9.5,-5.5 rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 193 + uid: 175 components: - grid: 0 pos: -0.5,5.5 rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 194 + uid: 176 components: - grid: 0 pos: -5.5,5.5 rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 195 + uid: 177 components: - grid: 0 pos: -0.5,-2.5 rot: -1.5707963267949 rad type: Transform - type: spawn_point_latejoin - uid: 196 + uid: 178 components: - grid: 0 pos: -5.5,-2.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 197 + uid: 179 components: - grid: 0 pos: 9.5,0.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 198 + uid: 180 components: - grid: 0 pos: 9.5,1.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 199 + uid: 181 components: - grid: 0 pos: 9.5,2.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 200 + uid: 182 components: - grid: 0 pos: 9.5,3.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 201 + uid: 183 components: - grid: 0 pos: 9.5,4.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 202 + uid: 184 components: - grid: 0 pos: 9.5,5.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 203 + uid: 185 components: - grid: 0 pos: 9.5,6.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 204 + uid: 186 components: - grid: 0 pos: 9.5,7.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 205 + uid: 187 components: - grid: 0 pos: 9.5,8.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 206 + uid: 188 components: - grid: 0 pos: 9.5,9.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 207 + uid: 189 components: - grid: 0 pos: 9.5,10.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 208 + uid: 190 components: - grid: 0 pos: -6.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 209 + uid: 191 components: - grid: 0 pos: -5.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 210 + uid: 192 components: - grid: 0 pos: -4.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 211 + uid: 193 components: - grid: 0 pos: -3.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 212 + uid: 194 components: - grid: 0 pos: -2.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 213 + uid: 195 components: - grid: 0 pos: -1.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 214 + uid: 196 components: - grid: 0 pos: -0.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 215 + uid: 197 components: - grid: 0 pos: 0.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 216 + uid: 198 components: - grid: 0 pos: 1.5,7.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 217 + uid: 199 components: - grid: 0 pos: -4.5,4.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 218 + uid: 200 components: - grid: 0 pos: -3.5,4.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 219 + uid: 201 components: - grid: 0 pos: -2.5,4.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 220 + uid: 202 components: - grid: 0 pos: -1.5,4.5 rot: -1.5707963267949 rad type: Transform - type: table - uid: 221 + uid: 203 components: - grid: 0 pos: -0.5,4.5 rot: -1.5707963267949 rad type: Transform - type: airlock - uid: 222 + uid: 204 components: - grid: 0 pos: 2.5,8.5 rot: -1.5707963267949 rad type: Transform - type: airlock - uid: 223 + uid: 205 components: - grid: 0 pos: 3.5,8.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 224 + uid: 206 components: - grid: 0 pos: -9.5,0.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 225 + uid: 207 components: - grid: 0 pos: -8.5,-0.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 226 + uid: 208 components: - grid: 0 pos: -8.5,0.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 227 + uid: 209 components: - grid: 0 pos: -9.5,0.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 228 + uid: 210 components: - grid: 0 pos: -9.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 229 + uid: 211 components: - grid: 0 pos: -10.5,-0.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 230 + uid: 212 components: - grid: 0 pos: -10.5,0.5 rot: -1.5707963267949 rad type: Transform - type: airlock - uid: 233 + uid: 213 components: - grid: 0 pos: -9.5,1.5 rot: -1.5707963267949 rad type: Transform -- type: poweredsmalllight - uid: 234 +- type: LightTube + uid: 214 + components: + - parent: 215 + grid: 0 + pos: -0.5,-1 + type: Transform +- type: poweredlight + uid: 215 components: - grid: 0 - pos: -9.5,-6.5 - rot: 3.14159265358979 rad + pos: 0.5,1 + rot: -1.5707963267948966 rad type: Transform - color: '#FFFFFFFF' type: PointLight @@ -1628,335 +1681,294 @@ entities: - containers: light_bulb: entities: - - 235 + - 214 type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer +- type: chairOfficeLight + uid: 216 + components: + - grid: 0 + pos: -3.5,-0.5 + rot: -1.5707963267948966 rad + type: Transform +- type: chairOfficeDark + uid: 217 + components: + - grid: 0 + pos: 0.5,-6.5 + rot: 1.5707963267948966 rad + type: Transform +- type: poweredlight + uid: 218 + components: + - grid: 0 + pos: -6.5,1 + rot: -1.5707963267948966 rad + type: Transform + - color: '#FFFFFFFF' + type: PointLight + - load: 40 + type: PowerDevice + - containers: + light_bulb: + entities: + - 320 + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer +- type: LightTube + uid: 219 + components: + - parent: 26 + grid: 0 + pos: 8.5,-4 + type: Transform +- type: stool + uid: 220 + components: + - grid: 0 + pos: -1.5,-9.5 + rot: 1.5707963267948966 rad + type: Transform +- type: chairOfficeLight + uid: 221 + components: + - grid: 0 + pos: -3.5,-2.5 + rot: 1.5707963267948966 rad + type: Transform +- type: chairOfficeLight + uid: 222 + components: + - grid: 0 + pos: -2.5,-2.5 + rot: 1.5707963267948966 rad + type: Transform +- type: chairOfficeLight + uid: 223 + components: + - grid: 0 + pos: -2.5,-0.5 + rot: -1.5707963267948966 rad + type: Transform +- type: stool + uid: 224 + components: + - grid: 0 + pos: -2.5,-6.5 + rot: 1.5707963267948966 rad + type: Transform - type: LightBulb - uid: 235 + uid: 225 components: - - parent: 234 - grid: 0 - type: Transform -- type: poweredlight - uid: 236 - components: - - grid: 0 - pos: -0.5,0.5 - rot: -1.5707963267949 rad - type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 237 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer -- type: LightTube - uid: 237 - components: - - parent: 236 - grid: 0 - type: Transform -- type: poweredlight - uid: 238 - components: - - grid: 0 - pos: -5.5,0.5 - rot: -1.5707963267949 rad - type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 239 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer -- type: LightTube - uid: 239 - components: - - parent: 238 - grid: 0 - type: Transform -- type: poweredlight - uid: 240 - components: - - grid: 0 - pos: -6.5,5.5 - type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 241 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer -- type: LightTube - uid: 241 - components: - - parent: 240 - grid: 0 - type: Transform -- type: poweredlight - uid: 242 - components: - - grid: 0 - pos: 3.5,5.5 - rot: 3.14159265358979 rad - type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 243 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer -- type: LightTube - uid: 243 - components: - - parent: 242 - grid: 0 - type: Transform -- type: poweredlight - uid: 244 - components: - - grid: 0 - pos: -1.5,7.5 - rot: -1.5707963267949 rad - type: Transform - - color: '#FFFFFFFF' - type: PointLight - - load: 40 - type: PowerDevice - - containers: - light_bulb: - entities: - - 245 - type: Content.Server.GameObjects.ContainerSlot - type: ContainerContainer -- type: LightTube - uid: 245 - components: - - parent: 244 + - parent: 254 grid: 0 + pos: -5,9.5 type: Transform - type: APC - uid: 246 - components: - - grid: 0 - pos: 4.5,-10.5 - rot: -1.5707963267949 rad - type: Transform - - load: 360 - type: PowerProvider -- type: APC - uid: 247 + uid: 226 components: - grid: 0 pos: -6.5,-7.5 rot: -1.5707963267949 rad type: Transform - - load: 120 + - load: 80 type: PowerProvider - type: Wire - uid: 248 + uid: 227 components: - grid: 0 pos: -9.5,2.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 249 + uid: 228 components: - grid: 0 pos: -9.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 250 + uid: 229 components: - grid: 0 pos: -8.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 251 + uid: 230 components: - grid: 0 pos: -7.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 252 + uid: 231 components: - grid: 0 pos: -6.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 253 + uid: 232 components: - grid: 0 pos: -5.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 254 + uid: 233 components: - grid: 0 pos: -4.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 255 + uid: 234 components: - grid: 0 pos: -3.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 256 + uid: 235 components: - grid: 0 pos: -2.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 257 + uid: 236 components: - grid: 0 pos: -1.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 258 + uid: 237 components: - grid: 0 pos: -0.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 259 + uid: 238 components: - grid: 0 pos: 0.5,3.5 rot: -1.5707963267949 rad type: Transform - type: Wire - uid: 260 + uid: 239 components: - grid: 0 pos: 1.5,3.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 261 + uid: 240 components: - grid: 0 pos: 9.5,-0.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 262 + uid: 241 components: - grid: 0 pos: 9.5,-1.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 263 + uid: 242 components: - grid: 0 pos: 9.5,-2.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 264 + uid: 243 components: - grid: 0 pos: 9.5,-3.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 265 + uid: 244 components: - grid: 0 pos: 9.5,-4.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 266 + uid: 245 components: - grid: 0 pos: 9.5,-5.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 267 + uid: 246 components: - grid: 0 pos: 9.5,-6.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 268 + uid: 247 components: - grid: 0 pos: 9.5,-7.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 269 + uid: 248 components: - grid: 0 pos: 9.5,-8.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 270 + uid: 249 components: - grid: 0 pos: 9.5,-9.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 271 + uid: 250 components: - grid: 0 pos: 9.5,-10.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 272 + uid: 251 components: - grid: 0 pos: 9.5,-11.5 rot: -1.5707963267949 rad type: Transform - type: catwalk - uid: 273 + uid: 252 components: - grid: 0 pos: 8.5,-8.5 rot: -1.5707963267949 rad type: Transform -- type: poweredsmalllight - uid: 274 +- type: APC + uid: 253 components: - grid: 0 - pos: 8.5,-7.5 - rot: 3.14159265358979 rad + pos: 4.5,-9.5 + rot: -1.5707963267948966 rad + type: Transform + - load: 380 + type: PowerProvider +- type: poweredsmalllight + uid: 254 + components: + - grid: 0 + pos: 5,-9.5 type: Transform - color: '#FFFFFFFF' type: PointLight @@ -1965,17 +1977,11 @@ entities: - containers: light_bulb: entities: - - 275 + - 225 type: Content.Server.GameObjects.ContainerSlot type: ContainerContainer -- type: LightBulb - uid: 275 - components: - - parent: 274 - grid: 0 - type: Transform - type: APC - uid: 276 + uid: 255 components: - grid: 0 pos: -7.5,3.5 @@ -1984,14 +1990,14 @@ entities: - load: 280 type: PowerProvider - type: solid_wall - uid: 277 + uid: 256 components: - grid: 0 pos: 7.5,-7.5 rot: -1.5707963267949 rad type: Transform - type: YellowToolboxItemFilled - uid: 278 + uid: 257 components: - grid: 0 pos: -0.8099712,-5.21454 @@ -2003,7 +2009,7 @@ entities: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: YellowToolboxItemFilled - uid: 279 + uid: 258 components: - grid: 0 pos: -0.5597038,-5.679647 @@ -2015,49 +2021,59 @@ entities: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: FlashlightLantern - uid: 280 + uid: 259 components: - grid: 0 pos: -1.934832,-5.154238 rot: -1.5707963267949 rad type: Transform + - containers: + flashlight_cell_container: + entities: [] + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer - type: FlashlightLantern - uid: 282 + uid: 260 components: - grid: 0 pos: -2.017696,-5.71715 rot: -1.5707963267949 rad type: Transform + - containers: + flashlight_cell_container: + entities: [] + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer - type: Crowbar - uid: 285 + uid: 261 components: - grid: 0 pos: -2.861032,-5.524786 rot: -1.5707963267949 rad type: Transform - type: UniformEngineering - uid: 286 + uid: 262 components: - grid: 0 pos: -0.6474335,-10.27245 rot: -1.5707963267949 rad type: Transform - type: GasMaskClothing - uid: 287 + uid: 263 components: - grid: 0 pos: -0.2880585,-10.69432 rot: -1.5707963267949 rad type: Transform - type: HazardVestClothing - uid: 288 + uid: 264 components: - grid: 0 pos: -0.9130585,-10.66307 rot: -1.5707963267949 rad type: Transform - type: UtilityBeltClothing - uid: 289 + uid: 265 components: - grid: 0 pos: -1.895102,-10.33495 @@ -2069,7 +2085,7 @@ entities: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: UtilityBeltClothing - uid: 290 + uid: 266 components: - grid: 0 pos: -1.770102,-10.63182 @@ -2081,28 +2097,43 @@ entities: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: magazine_12mm_filled - uid: 291 + uid: 267 components: - grid: 0 pos: -6.605512,7.638151 rot: -1.5707963267949 rad type: Transform + - containers: + magazine_bullet_container: + entities: [] + type: Robust.Server.GameObjects.Components.Container.Container + type: ContainerContainer - type: magazine_12mm_filled - uid: 312 + uid: 268 components: - grid: 0 pos: -6.339887,7.669401 rot: -1.5707963267949 rad type: Transform + - containers: + magazine_bullet_container: + entities: [] + type: Robust.Server.GameObjects.Components.Container.Container + type: ContainerContainer - type: magazine_12mm_filled - uid: 333 + uid: 269 components: - grid: 0 pos: -6.027387,7.622526 rot: -1.5707963267949 rad type: Transform + - containers: + magazine_bullet_container: + entities: [] + type: Robust.Server.GameObjects.Components.Container.Container + type: ContainerContainer - type: BackpackClothing - uid: 354 + uid: 270 components: - grid: 0 pos: -5.089887,7.591276 @@ -2114,7 +2145,7 @@ entities: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: BackpackClothing - uid: 355 + uid: 271 components: - grid: 0 pos: -4.683637,7.606901 @@ -2126,336 +2157,352 @@ entities: type: Robust.Server.GameObjects.Components.Container.Container type: ContainerContainer - type: BlackGloves - uid: 356 + uid: 272 components: - grid: 0 pos: -3.386762,7.466276 rot: -1.5707963267949 rad type: Transform - type: smg_c20r - uid: 357 + uid: 273 components: - grid: 0 pos: -2.524035,7.579326 rot: -1.5707963267949 rad type: Transform + - containers: + ballistics_chamber_0: + entities: [] + type: Content.Server.GameObjects.ContainerSlot + ballistic_gun_magazine: + entities: [] + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer - type: smg_c20r - uid: 379 + uid: 274 components: - grid: 0 pos: -1.94591,7.485576 rot: -1.5707963267949 rad type: Transform + - containers: + ballistics_chamber_0: + entities: [] + type: Content.Server.GameObjects.ContainerSlot + ballistic_gun_magazine: + entities: [] + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer - type: solid_wall - uid: 381 + uid: 275 components: - grid: 0 pos: -10.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 382 + uid: 276 components: - grid: 0 pos: -11.5,4.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 383 + uid: 277 components: - grid: 0 pos: -10.5,4.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 384 + uid: 278 components: - grid: 0 pos: -9.5,4.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 385 + uid: 279 components: - grid: 0 pos: -8.5,4.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 386 + uid: 280 components: - grid: 0 pos: -7.5,4.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 387 + uid: 281 components: - grid: 0 pos: -8.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 388 + uid: 282 components: - grid: 0 pos: -5.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 389 + uid: 283 components: - grid: 0 pos: -6.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 390 + uid: 284 components: - grid: 0 pos: -7.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 391 + uid: 285 components: - grid: 0 pos: -0.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 392 + uid: 286 components: - grid: 0 pos: 0.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 393 + uid: 287 components: - grid: 0 pos: 1.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 394 + uid: 288 components: - grid: 0 pos: 1.5,0.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 395 + uid: 289 components: - grid: 0 pos: 1.5,-3.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 396 + uid: 290 components: - grid: 0 pos: 4.5,-3.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 397 + uid: 291 components: - grid: 0 pos: 4.5,-2.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 398 + uid: 292 components: - grid: 0 pos: 4.5,-1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 399 + uid: 293 components: - grid: 0 pos: 4.5,-0.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 400 + uid: 294 components: - grid: 0 pos: 4.5,0.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 401 + uid: 295 components: - grid: 0 pos: 4.5,1.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 402 + uid: 296 components: - grid: 0 pos: 4.5,2.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 403 + uid: 297 components: - grid: 0 pos: 4.5,3.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 404 + uid: 298 components: - grid: 0 pos: 4.5,4.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 405 + uid: 299 components: - grid: 0 pos: 4.5,5.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 406 + uid: 300 components: - grid: 0 pos: 4.5,6.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 407 + uid: 301 components: - grid: 0 pos: 4.5,7.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 408 + uid: 302 components: - grid: 0 pos: 4.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 409 + uid: 303 components: - grid: 0 pos: 1.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 410 + uid: 304 components: - grid: 0 pos: 0.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 411 + uid: 305 components: - grid: 0 pos: -0.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 412 + uid: 306 components: - grid: 0 pos: -1.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 413 + uid: 307 components: - grid: 0 pos: -2.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 414 + uid: 308 components: - grid: 0 pos: -3.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 415 + uid: 309 components: - grid: 0 pos: -4.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 416 + uid: 310 components: - grid: 0 pos: -5.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 417 + uid: 311 components: - grid: 0 pos: -6.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 418 + uid: 312 components: - grid: 0 pos: -7.5,8.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 419 + uid: 313 components: - grid: 0 pos: -7.5,7.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 420 + uid: 314 components: - grid: 0 pos: -7.5,6.5 rot: -1.5707963267949 rad type: Transform - type: solid_wall - uid: 421 + uid: 315 components: - grid: 0 pos: -7.5,5.5 rot: -1.5707963267949 rad type: Transform - type: LeatherGloves - uid: 422 + uid: 316 components: - grid: 0 pos: -4.332221,4.64238 rot: -1.5707963267949 rad type: Transform - type: LeatherGloves - uid: 423 + uid: 317 components: - grid: 0 pos: -3.519721,4.64238 rot: -1.5707963267949 rad type: Transform - type: LeatherGloves - uid: 424 + uid: 318 components: - grid: 0 pos: -2.597846,4.61113 rot: -1.5707963267949 rad type: Transform - type: LedLightTube - uid: 425 + uid: 319 components: - grid: 0 pos: -3.511025,-10.35149 @@ -2463,4 +2510,72 @@ entities: type: Transform - color: '#EEEEFFFF' type: Sprite +- type: LightTube + uid: 320 + components: + - parent: 218 + grid: 0 + pos: 6.5,-1 + type: Transform +- type: poweredlight + uid: 321 + components: + - grid: 0 + pos: -1.5,8 + rot: -1.5707963267948966 rad + type: Transform + - color: '#FFFFFFFF' + type: PointLight + - load: 40 + type: PowerDevice + - containers: + light_bulb: + entities: + - 322 + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer +- type: LightTube + uid: 322 + components: + - parent: 321 + grid: 0 + pos: 1.5,-8 + type: Transform +- type: poweredlight + uid: 323 + components: + - grid: 0 + pos: 4,3.5 + rot: 3.141592653589793 rad + type: Transform + - color: '#FFFFFFFF' + type: PointLight + - load: 40 + type: PowerDevice + - containers: + light_bulb: + entities: + - 324 + type: Content.Server.GameObjects.ContainerSlot + type: ContainerContainer +- type: LightTube + uid: 324 + components: + - parent: 323 + grid: 0 + pos: -4,-3.5 + type: Transform +- type: wall_light + uid: 325 + components: + - grid: 0 + pos: -7,-10.5 + type: Transform +- type: wall_light + uid: 326 + components: + - grid: 0 + pos: -0.5,-14 + rot: 1.5707963267948966 rad + type: Transform ... diff --git a/Resources/Prototypes/Entities/buildings/computers.yml b/Resources/Prototypes/Entities/buildings/computers.yml new file mode 100644 index 0000000000..4b1cb78cd5 --- /dev/null +++ b/Resources/Prototypes/Entities/buildings/computers.yml @@ -0,0 +1,117 @@ +- type: entity + id: computerBase + name: Computer + components: + - type: Clickable + - type: Collidable + - type: BoundingBox + - type: Icon + sprite: Buildings/computer.rsi + state: computer + + - type: Computer + - type: PowerDevice + priority: High + + - type: Sprite + sprite: Buildings/computer.rsi + layers: + - state: computer + map: ["enum.ComputerVisualizer2D+Layers.Body"] + - state: generic_key_off + map: ["enum.ComputerVisualizer2D+Layers.Keyboard"] + - state: generic + shader: unshaded + map: ["enum.ComputerVisualizer2D+Layers.Screen"] + - state: generic_key + shader: unshaded + map: ["enum.ComputerVisualizer2D+Layers.KeyboardOn"] + + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: generic_key + screen: generic + + +- type: entity + id: computerAlert + parent: computerBase + name: Alerts Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: atmos_key + screen: "alert-2" + + +- type: entity + id: computerPowerMonitoring + parent: computerBase + name: Power Monitoring Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: power_key + screen: power_monitor + + +- type: entity + id: computerSupplyOrdering + parent: computerBase + name: Supply Ordering Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: tech_key + screen: supply + + +- type: entity + id: computerMedicalRecords + parent: computerBase + name: Medical Records Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: med_key + screen: medcomp + + +- type: entity + id: computerResearchAndDevelopment + parent: computerBase + name: R&D Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: rd_key + screen: rdcomp + + +- type: entity + id: computerId + parent: computerBase + name: ID Card Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: id_key + screen: id + +- type: entity + id: computerComms + parent: computerBase + name: Communications Computer + components: + - type: Appearance + visuals: + - type: ComputerVisualizer2D + key: generic_key + screen: comm diff --git a/Resources/Prototypes/Entities/buildings/furniture.yml b/Resources/Prototypes/Entities/buildings/furniture.yml new file mode 100644 index 0000000000..a5c08f096c --- /dev/null +++ b/Resources/Prototypes/Entities/buildings/furniture.yml @@ -0,0 +1,53 @@ +- type: entity + name: Stool + id: stool + components: + - type: Clickable + - type: BoundingBox + - type: Sprite + sprite: Buildings/furniture.rsi + state: stool_base + color: "#8e9799" + - type: Icon + sprite: Buildings/furniture.rsi + state: stool_base + +- type: entity + name: White Office Chair + id: chairOfficeLight + components: + - type: Clickable + - type: BoundingBox + - type: Sprite + sprite: Buildings/furniture.rsi + state: officechair_white + - type: Icon + sprite: Buildings/furniture.rsi + state: officechair_white + +- type: entity + name: Dark Office Chair + id: chairOfficeDark + components: + - type: Clickable + - type: BoundingBox + - type: Sprite + sprite: Buildings/furniture.rsi + state: officechair_dark + - type: Icon + sprite: Buildings/furniture.rsi + state: officechair_dark + +- type: entity + name: Chair + id: chair + components: + - type: Clickable + - type: BoundingBox + - type: Sprite + sprite: Buildings/furniture.rsi + state: chair + color: "#8e9799" + - type: Icon + sprite: Buildings/furniture.rsi + state: chair diff --git a/Resources/Prototypes/Entities/buildings/vending_machines.yml b/Resources/Prototypes/Entities/buildings/vending_machines.yml new file mode 100644 index 0000000000..99942a7597 --- /dev/null +++ b/Resources/Prototypes/Entities/buildings/vending_machines.yml @@ -0,0 +1,338 @@ +- type: entity + id: VendingMachine + name: vending machine + components: + - type: Clickable + - type: Sprite + sprite: Buildings/VendingMachines/empty.rsi + layers: + - state: normal + map: ["enum.VendingMachineVisualLayers.Base"] + - type: Icon + sprite: Buildings/VendingMachines/empty.rsi + state: normal + - type: BoundingBox + - type: Collidable + - type: SnapGrid + offset: Center + - type: Damageable + - type: Breakable + - type: Appearance + visuals: + - type: VendingMachineVisualizer2D + - type: UserInterface + interfaces: + - key: enum.VendingMachineUiKey.Key + type: VendingMachineBoundUserInterface + - type: PowerDevice + priority: Low + +- type: entity + parent: VendingMachine + id: vending_machine_ammo + name: AmmoVend + components: + - type: VendingMachine + pack: AmmoVend + - type: Icon + sprite: Buildings/VendingMachines/ammo.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_booze + name: Booze-O-Mat + components: + - type: VendingMachine + pack: Booze-O-Mat + - type: Icon + sprite: Buildings/VendingMachines/boozeomat.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_cart + name: PTech + components: + - type: VendingMachine + pack: PTech + - type: Icon + sprite: Buildings/VendingMachines/cart.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_chapel + name: PietyVend + components: + - type: VendingMachine + pack: PietyVend + - type: Icon + sprite: Buildings/VendingMachines/chapel.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_cigs + name: Cigarette machine + components: + - type: VendingMachine + pack: Cigarette machine + - type: Icon + sprite: Buildings/VendingMachines/cigs.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_coffee + name: Hot Drinks machine + components: + - type: VendingMachine + pack: Hot Drinks machine + - type: Icon + sprite: Buildings/VendingMachines/dinnerware.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_cola + name: Robust Softdrinks + components: + - type: VendingMachine + pack: Robust Softdrinks + - type: Icon + sprite: Buildings/VendingMachines/discount.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_dinnerware + name: Dinnerware + components: + - type: VendingMachine + pack: Dinnerware + - type: Icon + sprite: Buildings/VendingMachines/dinnerware.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_discount + name: Discount Dan's + components: + - type: VendingMachine + pack: Discount Dan's + - type: Icon + sprite: Buildings/VendingMachines/discount.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_engivend + name: Engi-Vend + components: + - type: VendingMachine + pack: Engi-Vend + - type: Icon + sprite: Buildings/VendingMachines/engivend.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_hats + name: Hatlord 9000 + components: + - type: VendingMachine + pack: Hatlord 9000 + - type: Icon + sprite: Buildings/VendingMachines/hats.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_magivend + name: MagiVend + components: + - type: VendingMachine + pack: MagiVend + - type: Icon + sprite: Buildings/VendingMachines/magivend.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_medical + name: NanoMed Plus + components: + - type: VendingMachine + pack: NanoMed Plus + - type: Icon + sprite: Buildings/VendingMachines/medical.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_mining + name: Dwarven Mining Equipment + components: + - type: VendingMachine + pack: Dwarven Mining Equipment + - type: Icon + sprite: Buildings/VendingMachines/mining.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_nazi + name: Nazivend + components: + - type: VendingMachine + pack: Nazivend + - type: Icon + sprite: Buildings/VendingMachines/nazi.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_nutri + name: NutriMax + components: + - type: VendingMachine + pack: NutriMax + - type: Icon + sprite: Buildings/VendingMachines/nutri.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_robotics + name: Robotech Deluxe + components: + - type: VendingMachine + pack: Robotech Deluxe + - type: Icon + sprite: Buildings/VendingMachines/robotics.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_sales + name: Sales + components: + - type: VendingMachine + pack: Sales + - type: Icon + sprite: Buildings/VendingMachines/sale.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_sec + name: SecTech + components: + - type: VendingMachine + pack: SecTech + - type: Icon + sprite: Buildings/VendingMachines/sec.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_seeds + name: MegaSeed Servitor + components: + - type: VendingMachine + pack: MegaSeed Servitor + - type: Icon + sprite: Buildings/VendingMachines/seeds.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_shoes + name: Shoelord 9000 + components: + - type: VendingMachine + pack: Shoelord 9000 + - type: Icon + sprite: Buildings/VendingMachines/shoes.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_smartfridge + name: SmartFridge + components: + - type: VendingMachine + pack: SmartFridge + - type: Icon + sprite: Buildings/VendingMachines/smartfridge.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_snack + name: Getmore Chocolate Corp + components: + - type: VendingMachine + pack: Getmore Chocolate Corp + - type: Icon + sprite: Buildings/VendingMachines/snack.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_soviet + name: KomradeVendtink + components: + - type: VendingMachine + pack: KomradeVendtink + - type: Icon + sprite: Buildings/VendingMachines/soviet.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_sovietsoda + name: BODA + components: + - type: VendingMachine + pack: BODA + - type: Icon + sprite: Buildings/VendingMachines/sovietsoda.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_suits + name: Suitlord 9000 + components: + - type: VendingMachine + pack: Suitlord 9000 + - type: Icon + sprite: Buildings/VendingMachines/suits.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_theater + name: AutoDrobe + components: + - type: VendingMachine + pack: AutoDrobe + - type: Icon + sprite: Buildings/VendingMachines/theater.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_vendomat + name: Vendomat + components: + - type: VendingMachine + pack: Vendomat + - type: Icon + sprite: Buildings/VendingMachines/vendomat.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_vox + name: Trader Supply + components: + - type: VendingMachine + pack: Trader Supply + - type: Icon + sprite: Buildings/VendingMachines/vox.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_wallmed + name: NanoMed + components: + - type: VendingMachine + pack: NanoMed + - type: Icon + sprite: Buildings/VendingMachines/wallmed.rsi + +- type: entity + parent: VendingMachine + id: vending_machine_youtool + name: YouTool + components: + - type: VendingMachine + pack: YouTool + - type: Icon + sprite: Buildings/VendingMachines/youtool.rsi diff --git a/Resources/Prototypes/Entities/items/clothing/backpacks.yml b/Resources/Prototypes/Entities/items/clothing/backpacks.yml index 7f4651e457..f32e389ab2 100644 --- a/Resources/Prototypes/Entities/items/clothing/backpacks.yml +++ b/Resources/Prototypes/Entities/items/clothing/backpacks.yml @@ -5,17 +5,18 @@ description: A convenient storage pack components: - type: Sprite - sprite: Clothing/backpack.rsi + sprite: Clothing/backpacks.rsi state: backpack - type: Icon - sprite: Clothing/backpack.rsi + sprite: Clothing/backpacks.rsi state: backpack - type: Clothing Size: 9999 QuickEquip: false Slots: - back - sprite: Clothing/backpack.rsi + sprite: Clothing/backpacks.rsi + HeldPrefix: backpack - type: Storage Capacity: 100 @@ -26,15 +27,13 @@ description: It's a backpack made by Honk! Co. components: - type: Sprite - sprite: Clothing/backpack_clown.rsi - state: icon + state: clown - type: Icon - sprite: Clothing/backpack_clown.rsi - state: icon + state: clown - type: Clothing - sprite: Clothing/backpack_clown.rsi + HeldPrefix: clown - type: entity parent: BackpackClothing @@ -43,12 +42,374 @@ description: It's a very robust backpack. components: - type: Sprite - sprite: Clothing/backpack_sec.rsi - state: icon + state: security - type: Icon - sprite: Clothing/backpack_sec.rsi - state: icon + state: security - type: Clothing - sprite: Clothing/backpack_sec.rsi \ No newline at end of file + HeldPrefix: security + + +- type: entity + parent: BackpackClothing + id: BackpackEngineering + name: Engineering Backpack + components: + - type: Sprite + state: engineering + + - type: Icon + state: engineering + + - type: Clothing + HeldPrefix: engineering + + +- type: entity + parent: BackpackClothing + id: BackpackMedical + name: Medical Backpack + components: + - type: Sprite + state: medical + + - type: Icon + state: medical + + - type: Clothing + HeldPrefix: medical + + +- type: entity + parent: BackpackClothing + id: BackpackCaptain + name: Captain's Backpack + components: + - type: Sprite + state: captain + + - type: Icon + state: captain + + - type: Clothing + HeldPrefix: captain + + +- type: entity + parent: BackpackClothing + id: BackpackHolding + name: Bag of Holding + components: + - type: Sprite + layers: + - state: holding + - state: holding-unlit + shader: unshaded + + - type: Icon + state: holding + + - type: Clothing + HeldPrefix: holding + + +- type: entity + parent: BackpackClothing + id: Satchel + name: Satchel + components: + - type: Sprite + state: satchel + + - type: Icon + state: satchel + + - type: Clothing + ClothingPrefix: satchel + + - type: Storage + Capacity: 300 + + +- type: entity + parent: BackpackClothing + id: SatchelEngineering + name: Engineering Satchel + components: + - type: Sprite + state: satchel-engineering + + - type: Icon + state: satchel-engineering + + - type: Clothing + HeldPrefix: engineering + ClothingPrefix: satchel-engineering + + +- type: entity + parent: BackpackClothing + id: SatchelMedical + name: Medical Satchel + components: + - type: Sprite + state: satchel-medical + + - type: Icon + state: satchel-medical + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: satchel-medical + + +- type: entity + parent: BackpackClothing + id: SatchelChemistry + name: Chemistry Satchel + components: + - type: Sprite + state: satchel-chemistry + + - type: Icon + state: satchel-chemistry + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: satchel-chemistry + + +- type: entity + parent: BackpackClothing + id: SatchelGenetics + name: Genetics Satchel + components: + - type: Sprite + state: satchel-genetics + + - type: Icon + state: satchel-genetics + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: satchel-genetics + + +- type: entity + parent: BackpackClothing + id: SatchelVirology + name: Virology Satchel + components: + - type: Sprite + state: satchel-virology + + - type: Icon + state: satchel-virology + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: satchel-virology + + +- type: entity + parent: BackpackClothing + id: SatchelScience + name: Science Satchel + components: + - type: Sprite + state: satchel-science + + - type: Icon + state: satchel-science + + - type: Clothing + ClothingPrefix: satchel-science + + +- type: entity + parent: BackpackClothing + id: SatchelSecurity + name: Security Satchel + components: + - type: Sprite + state: satchel-security + + - type: Icon + state: satchel-security + + - type: Clothing + HeldPrefix: security + ClothingPrefix: satchel-security + + +- type: entity + parent: BackpackClothing + id: SatchelCaptain + name: Captain's Satchel + components: + - type: Sprite + state: satchel-captain + + - type: Icon + state: satchel-captain + + - type: Clothing + HeldPrefix: captain + ClothingPrefix: satchel-captain + + +- type: entity + parent: BackpackClothing + id: SatchelHydroponics + name: Hydroponics Satchel + components: + - type: Sprite + state: satchel-hydroponics + + - type: Icon + state: satchel-hydroponics + + - type: Clothing + ClothingPrefix: satchel-hydroponics + + +- type: entity + parent: BackpackClothing + id: MessengerBag + name: Messenger Bag + components: + - type: Sprite + state: courier + + - type: Icon + state: courier + + - type: Clothing + ClothingPrefix: courier + + +- type: entity + parent: BackpackClothing + id: MessengerBagChemistry + name: Chemistry Messenger Bag + components: + - type: Sprite + state: courier-chemistry + + - type: Icon + state: courier-chemistry + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: courier-chemistry + + +- type: entity + parent: BackpackClothing + id: MessengerBagMedical + name: Medical Messenger Bag + components: + - type: Sprite + state: courier-medical + + - type: Icon + state: courier-medical + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: courier-medical + + +- type: entity + parent: BackpackClothing + id: MessengerBagVirology + name: Virology Messenger Bag + components: + - type: Sprite + state: courier-virology + + - type: Icon + state: courier-virology + + - type: Clothing + HeldPrefix: medical + ClothingPrefix: courier-virology + + +- type: entity + parent: BackpackClothing + id: MessengerBagEngineering + name: Engineering Messenger Bag + components: + - type: Sprite + state: courier-engineering + + - type: Icon + state: courier-engineering + + - type: Clothing + HeldPrefix: engineering + ClothingPrefix: courier-engineering + + +- type: entity + parent: BackpackClothing + id: MessengerBagScience + name: Science Messenger Bag + components: + - type: Sprite + state: courier-science + + - type: Icon + state: courier-science + + - type: Clothing + ClothingPrefix: courier-science + + +- type: entity + parent: BackpackClothing + id: MessengerBagCaptain + name: Captain's Messenger Bag + components: + - type: Sprite + state: courier-captain + + - type: Icon + state: courier-captain + + - type: Clothing + HeldPrefix: captain + ClothingPrefix: courier-captain + + +- type: entity + parent: BackpackClothing + id: MessengerBagHydroponics + name: Hydroponics Messenger Bag + components: + - type: Sprite + state: courier-hydroponics + + - type: Icon + state: courier-hydroponics + + - type: Clothing + ClothingPrefix: courier-hydroponics + + +- type: entity + parent: BackpackClothing + id: MessengerBagSecurity + name: Security Messenger Bag + components: + - type: Sprite + state: courier-security + + - type: Icon + state: courier-security + + - type: Clothing + HeldPrefix: security + ClothingPrefix: courier-security diff --git a/Resources/Prototypes/Entities/items/clothing/belts.yml b/Resources/Prototypes/Entities/items/clothing/belts.yml index 84cb15b8a0..b023279c80 100644 --- a/Resources/Prototypes/Entities/items/clothing/belts.yml +++ b/Resources/Prototypes/Entities/items/clothing/belts.yml @@ -24,5 +24,3 @@ sprite: Clothing/belt_utility.rsi - type: Storage Capacity: 30 - - diff --git a/Resources/Prototypes/Entities/items/clothing/gloves.yml b/Resources/Prototypes/Entities/items/clothing/gloves.yml index af0b3af5a7..a47c382c76 100644 --- a/Resources/Prototypes/Entities/items/clothing/gloves.yml +++ b/Resources/Prototypes/Entities/items/clothing/gloves.yml @@ -53,19 +53,4 @@ state: leather - type: Clothing sprite: Clothing/gloves_leather.rsi - HeatResistance: 1500 - -- type: entity - parent: GlovesBase - id: WhiteGloves - name: White Gloves - description: These look pretty fancy. - components: - - type: Sprite - sprite: Clothing/gloves_white.rsi - state: white - - type: Icon - sprite: Clothing/gloves_white.rsi - state: white - - type: Clothing - sprite: Clothing/gloves_white.rsi \ No newline at end of file + HeatResistance: 1500 \ No newline at end of file diff --git a/Resources/Prototypes/Entities/items/clothing/hats.yml b/Resources/Prototypes/Entities/items/clothing/hats.yml index 423ed9fde7..26aaed52c0 100644 --- a/Resources/Prototypes/Entities/items/clothing/hats.yml +++ b/Resources/Prototypes/Entities/items/clothing/hats.yml @@ -40,37 +40,3 @@ sprite: Clothing/captain_hat.rsi Slots: - helmet - -- type: entity - parent: HatBase - id: HatHOP - name: Head of Personnel's Hat - description: Papers, please. - components: - - type: Sprite - sprite: Clothing/hop_hat.rsi - state: hop - - type: Icon - sprite: Clothing/hop_hat.rsi - state: hop - - type: Clothing - sprite: Clothing/hop_hat.rsi - Slots: - - helmet - -- type: entity - parent: HatBase - id: HatBeret - name: Beret - description: A beret, an artists favorite headwear. - components: - - type: Sprite - sprite: Clothing/beret.rsi - state: beret - - type: Icon - sprite: Clothing/beret.rsi - state: beret - - type: Clothing - sprite: Clothing/beret.rsi - Slots: - - helmet diff --git a/Resources/Prototypes/Entities/items/clothing/masks.yml b/Resources/Prototypes/Entities/items/clothing/masks.yml index 37ed00bff3..9a0c7d2388 100644 --- a/Resources/Prototypes/Entities/items/clothing/masks.yml +++ b/Resources/Prototypes/Entities/items/clothing/masks.yml @@ -47,19 +47,4 @@ sprite: Clothing/mask_clown.rsi state: icon - type: Clothing - sprite: Clothing/mask_clown.rsi - -- type: entity - parent: MasksBase - id: MaskMime - name: Mime Mask - description: The traditional mime's mask. It has an eerie facial posture. - components: - - type: Sprite - sprite: Clothing/mask_mime.rsi - state: mime - - type: Icon - sprite: Clothing/mask_mime.rsi - state: mime - - type: Clothing - sprite: Clothing/mask_mime.rsi \ No newline at end of file + sprite: Clothing/mask_clown.rsi \ No newline at end of file diff --git a/Resources/Prototypes/Entities/items/clothing/shoes.yml b/Resources/Prototypes/Entities/items/clothing/shoes.yml index a046c1d5c8..1d7d2a03be 100644 --- a/Resources/Prototypes/Entities/items/clothing/shoes.yml +++ b/Resources/Prototypes/Entities/items/clothing/shoes.yml @@ -100,21 +100,4 @@ state: brown - type: Clothing - sprite: Clothing/shoes_brown.rsi - -- type: entity - parent: ShoesBase - id: ShoesMime - name: Mime Shoes - description: Comfortable-looking shoes. - components: - - type: Sprite - sprite: Clothing/shoes_mime.rsi - state: mime - - - type: Icon - sprite: Clothing/shoes_mime.rsi - state: mime - - - type: Clothing - sprite: Clothing/shoes_mime.rsi \ No newline at end of file + sprite: Clothing/shoes_brown.rsi \ No newline at end of file diff --git a/Resources/Prototypes/Entities/items/clothing/suits.yml b/Resources/Prototypes/Entities/items/clothing/suits.yml index 991628dcfd..fa6132001a 100644 --- a/Resources/Prototypes/Entities/items/clothing/suits.yml +++ b/Resources/Prototypes/Entities/items/clothing/suits.yml @@ -58,18 +58,3 @@ - type: Clothing sprite: Clothing/chef_apron.rsi - -- type: entity - parent: SuitBase - id: BeltSuspenders - name: Suspenders - description: They suspend the illusion of the mime's play. - components: - - type: Sprite - sprite: Clothing/suspenders.rsi - state: suspenders - - type: Icon - sprite: Clothing/suspenders.rsi - state: suspenders - - type: Clothing - sprite: Clothing/suspenders.rsi \ No newline at end of file diff --git a/Resources/Prototypes/Entities/items/clothing/uniforms.yml b/Resources/Prototypes/Entities/items/clothing/uniforms.yml index d5986f3ef1..fa65553d34 100644 --- a/Resources/Prototypes/Entities/items/clothing/uniforms.yml +++ b/Resources/Prototypes/Entities/items/clothing/uniforms.yml @@ -141,38 +141,4 @@ state: captain - type: Clothing - sprite: Clothing/captain_uniform.rsi - -- type: entity - parent: UniformBase - id: UniformHOP - name: Head of Personnel's Jumpsuit - description: It's a jumpsuit worn by someone who works in the position of "Head of Personnel". - components: - - type: Sprite - sprite: Clothing/hop_jumpsuit.rsi - state: hop - - - type: Icon - sprite: Clothing/hop_jumpsuit.rsi - state: hop - - - type: Clothing - sprite: Clothing/hop_jumpsuit.rsi - -- type: entity - parent: UniformBase - id: UniformMime - name: Mime's Outfit - description: It's not very colourful. - components: - - type: Sprite - sprite: Clothing/mime_outfit.rsi - state: mime - - - type: Icon - sprite: Clothing/mime_outfit.rsi - state: mime - - - type: Clothing - sprite: Clothing/mime_outfit.rsi \ No newline at end of file + sprite: Clothing/captain_uniform.rsi diff --git a/Resources/Prototypes/VendingMachines/ammo.yml b/Resources/Prototypes/VendingMachines/ammo.yml new file mode 100644 index 0000000000..abbb7023d3 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/ammo.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: AmmoVend + name: AmmoVend + description: A generic ammunition vending machine. + spriteName: ammo diff --git a/Resources/Prototypes/VendingMachines/boozeomat.yml b/Resources/Prototypes/VendingMachines/boozeomat.yml new file mode 100644 index 0000000000..267b0b6cc7 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/boozeomat.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Booze-O-Mat + name: Booze-O-Mat + description: A vending machine containing multiple drinks for bartending. + spriteName: boozeomat diff --git a/Resources/Prototypes/VendingMachines/cart.yml b/Resources/Prototypes/VendingMachines/cart.yml new file mode 100644 index 0000000000..56527fad4d --- /dev/null +++ b/Resources/Prototypes/VendingMachines/cart.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: PTech + name: PTech + description: A vending machine containing Personal Data Assistant cartridges. + spriteName: cart diff --git a/Resources/Prototypes/VendingMachines/chapel.yml b/Resources/Prototypes/VendingMachines/chapel.yml new file mode 100644 index 0000000000..54e092966b --- /dev/null +++ b/Resources/Prototypes/VendingMachines/chapel.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: PietyVend + name: PietyVend + description: "A vending machine containing religious supplies and clothing. A label reads: \"A holy vendor for a pious man.\"" + spriteName: chapel diff --git a/Resources/Prototypes/VendingMachines/cigs.yml b/Resources/Prototypes/VendingMachines/cigs.yml new file mode 100644 index 0000000000..ca514bfba2 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/cigs.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: Cigarette machine + name: Cigarette machine + description: A vending machine containing smoking supplies. + animationDuration: 2.1 + spriteName: cigs diff --git a/Resources/Prototypes/VendingMachines/coffee.yml b/Resources/Prototypes/VendingMachines/coffee.yml new file mode 100644 index 0000000000..e348922c0b --- /dev/null +++ b/Resources/Prototypes/VendingMachines/coffee.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: Hot Drinks machine + name: Hot Drinks machine + description: A vending machine that dispenses hot drinks. + animationDuration: 3.4 + spriteName: coffee diff --git a/Resources/Prototypes/VendingMachines/cola.yml b/Resources/Prototypes/VendingMachines/cola.yml new file mode 100644 index 0000000000..f6b1ca09ce --- /dev/null +++ b/Resources/Prototypes/VendingMachines/cola.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: Robust Softdrinks + name: Robust Softdrinks + description: A softdrink vendor provided by Robust Industries, LLC. + animationDuration: 1.1 + spriteName: cola diff --git a/Resources/Prototypes/VendingMachines/dinnerware.yml b/Resources/Prototypes/VendingMachines/dinnerware.yml new file mode 100644 index 0000000000..ce787030d7 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/dinnerware.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Dinnerware + name: Dinnerware + description: A vending machine containing kitchen and restaurant equipment. + spriteName: dinnerware diff --git a/Resources/Prototypes/VendingMachines/discount.yml b/Resources/Prototypes/VendingMachines/discount.yml new file mode 100644 index 0000000000..20a700c23d --- /dev/null +++ b/Resources/Prototypes/VendingMachines/discount.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Discount Dan's + name: Discount Dan's + description: A vending machine containing discount snacks from the infamous 'Discount Dan' franchise. + spriteName: discount diff --git a/Resources/Prototypes/VendingMachines/empty.yml b/Resources/Prototypes/VendingMachines/empty.yml new file mode 100644 index 0000000000..134f3cc2ac --- /dev/null +++ b/Resources/Prototypes/VendingMachines/empty.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: empty vending machine + name: empty vending machine + description: Just add capitalism! + spriteName: empty diff --git a/Resources/Prototypes/VendingMachines/engivend.yml b/Resources/Prototypes/VendingMachines/engivend.yml new file mode 100644 index 0000000000..e891ec7e59 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/engivend.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: Engi-Vend + name: Engi-Vend + description: Spare tool vending. What? Did you expect some witty description? + animationDuration: 2.1 + spriteName: engivend diff --git a/Resources/Prototypes/VendingMachines/hats.yml b/Resources/Prototypes/VendingMachines/hats.yml new file mode 100644 index 0000000000..14f7663fc8 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/hats.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Hatlord 9000 + name: Hatlord 9000 + description: A vending machine containing hats. + spriteName: hats diff --git a/Resources/Prototypes/VendingMachines/magivend.yml b/Resources/Prototypes/VendingMachines/magivend.yml new file mode 100644 index 0000000000..ec7a9abe61 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/magivend.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: MagiVend + name: MagiVend + description: A mystical vending machine containing magical garments and magic supplies. + animationDuration: 1.5 + spriteName: magivend diff --git a/Resources/Prototypes/VendingMachines/medical.yml b/Resources/Prototypes/VendingMachines/medical.yml new file mode 100644 index 0000000000..d0e2376b37 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/medical.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: NanoMed Plus + name: NanoMed Plus + description: A vending machine containing medical supplies. + animationDuration: 1.8 + spriteName: medical diff --git a/Resources/Prototypes/VendingMachines/mining.yml b/Resources/Prototypes/VendingMachines/mining.yml new file mode 100644 index 0000000000..6c8b78d98d --- /dev/null +++ b/Resources/Prototypes/VendingMachines/mining.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Dwarven Mining Equipment + name: Dwarven Mining Equipment + description: Get your mining equipment here, and above all keep digging! + spriteName: mining diff --git a/Resources/Prototypes/VendingMachines/nazi.yml b/Resources/Prototypes/VendingMachines/nazi.yml new file mode 100644 index 0000000000..64927c71ca --- /dev/null +++ b/Resources/Prototypes/VendingMachines/nazi.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Nazivend + name: Nazivend + description: "A vending machine containing Nazi German supplies. A label reads: \"Remember the gorillions lost.\"" + spriteName: nazi diff --git a/Resources/Prototypes/VendingMachines/nutri.yml b/Resources/Prototypes/VendingMachines/nutri.yml new file mode 100644 index 0000000000..ea7b668bb6 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/nutri.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: NutriMax + name: NutriMax + description: A vending machine containing nutritional substances for plants and botanical tools. + spriteName: nutri diff --git a/Resources/Prototypes/VendingMachines/robotics.yml b/Resources/Prototypes/VendingMachines/robotics.yml new file mode 100644 index 0000000000..ed33c75520 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/robotics.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Robotech Deluxe + name: Robotech Deluxe + description: A vending machine containing nutritional substances for plants and botanical tools. + spriteName: robotics diff --git a/Resources/Prototypes/VendingMachines/sale.yml b/Resources/Prototypes/VendingMachines/sale.yml new file mode 100644 index 0000000000..33550713c9 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/sale.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Sales + name: Sales + description: Buy, sell, repeat. + spriteName: sale diff --git a/Resources/Prototypes/VendingMachines/sec.yml b/Resources/Prototypes/VendingMachines/sec.yml new file mode 100644 index 0000000000..65dfe7a5b7 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/sec.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: SecTech + name: SecTech + description: "A vending machine containing Security equipment. A label reads \"SECURITY PERSONNEL ONLY\"." + animationDuration: 1.4 + spriteName: sec diff --git a/Resources/Prototypes/VendingMachines/seeds.yml b/Resources/Prototypes/VendingMachines/seeds.yml new file mode 100644 index 0000000000..2e4e7b63a5 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/seeds.yml @@ -0,0 +1,6 @@ +- type: vendingMachineInventory + id: MegaSeed Servitor + name: MegaSeed Servitor + description: "A vending machine containing Security equipment. A label reads \"SECURITY PERSONNEL ONLY\"." + animationDuration: 1.3 + spriteName: seeds diff --git a/Resources/Prototypes/VendingMachines/shoes.yml b/Resources/Prototypes/VendingMachines/shoes.yml new file mode 100644 index 0000000000..603858242b --- /dev/null +++ b/Resources/Prototypes/VendingMachines/shoes.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Shoelord 9000 + name: Shoelord 9000 + description: A vending machine containing footwear. + spriteName: shoes diff --git a/Resources/Prototypes/VendingMachines/smartfridge.yml b/Resources/Prototypes/VendingMachines/smartfridge.yml new file mode 100644 index 0000000000..39fb27e203 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/smartfridge.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: SmartFridge + name: SmartFridge + description: A refrigerated storage unit for storing medicine and chemicals. + spriteName: smartfridge diff --git a/Resources/Prototypes/VendingMachines/snack.yml b/Resources/Prototypes/VendingMachines/snack.yml new file mode 100644 index 0000000000..fe5d6cd4c5 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/snack.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Getmore Chocolate Corp + name: Getmore Chocolate Corp + description: A vending machine containing snacks. + spriteName: snack diff --git a/Resources/Prototypes/VendingMachines/soviet.yml b/Resources/Prototypes/VendingMachines/soviet.yml new file mode 100644 index 0000000000..c0151f477c --- /dev/null +++ b/Resources/Prototypes/VendingMachines/soviet.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: KomradeVendtink + name: KomradeVendtink + description: Rodina-mat' zovyot! + spriteName: soviet diff --git a/Resources/Prototypes/VendingMachines/sovietsoda.yml b/Resources/Prototypes/VendingMachines/sovietsoda.yml new file mode 100644 index 0000000000..244daf866e --- /dev/null +++ b/Resources/Prototypes/VendingMachines/sovietsoda.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: BODA + name: BODA + description: An old vending machine containing sweet water. + spriteName: sovietsoda diff --git a/Resources/Prototypes/VendingMachines/suits.yml b/Resources/Prototypes/VendingMachines/suits.yml new file mode 100644 index 0000000000..33ebb76916 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/suits.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Suitlord 9000 + name: Suitlord 9000 + description: A vending machine containing jumpsuits and dress garments. + spriteName: suits diff --git a/Resources/Prototypes/VendingMachines/theater.yml b/Resources/Prototypes/VendingMachines/theater.yml new file mode 100644 index 0000000000..74df6265d1 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/theater.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: AutoDrobe + name: AutoDrobe + description: A vending machine containing costumes. + spriteName: theater diff --git a/Resources/Prototypes/VendingMachines/vendomat.yml b/Resources/Prototypes/VendingMachines/vendomat.yml new file mode 100644 index 0000000000..4c6029f722 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/vendomat.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Vendomat + name: Vendomat + description: A vending machine containing generic parts. + spriteName: vendomat diff --git a/Resources/Prototypes/VendingMachines/vox.yml b/Resources/Prototypes/VendingMachines/vox.yml new file mode 100644 index 0000000000..bc01c3f1fa --- /dev/null +++ b/Resources/Prototypes/VendingMachines/vox.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: Trader Supply + name: Trader Supply + description: Make much coin. + spriteName: vox diff --git a/Resources/Prototypes/VendingMachines/wallmed.yml b/Resources/Prototypes/VendingMachines/wallmed.yml new file mode 100644 index 0000000000..5cc0912e28 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/wallmed.yml @@ -0,0 +1,5 @@ +- type: vendingMachineInventory + id: NanoMed + name: NanoMed + description: Wall-mounted medical equipment dispenser. + spriteName: wallmed diff --git a/Resources/Prototypes/VendingMachines/youtool.yml b/Resources/Prototypes/VendingMachines/youtool.yml new file mode 100644 index 0000000000..7d3e2162b4 --- /dev/null +++ b/Resources/Prototypes/VendingMachines/youtool.yml @@ -0,0 +1,13 @@ +- type: vendingMachineInventory + id: YouTool + name: YouTool + description: "A vending machine containing standard tools. A label reads: \"Tools for tools.\"" + animationDuration: 1.1 + spriteName: youtool + startingInventory: + CableStack: 10 + Crowbar: 5 + Welder: 3 + Wirecutter: 5 + Wrench: 5 + Screwdriver: 5 diff --git a/Resources/Textures/Buildings/VendingMachines/ammo.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/broken.png new file mode 100644 index 0000000000..129cdb87e8 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/ammo.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/meta.json new file mode 100644 index 0000000000..8288f2c29d --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/ammo.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/normal.png new file mode 100644 index 0000000000..5016f81e86 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/ammo.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/off.png new file mode 100644 index 0000000000..129cdb87e8 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/ammo.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/broken.png new file mode 100644 index 0000000000..b394ea3fbd Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/deny.png new file mode 100644 index 0000000000..74d3402ded Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/meta.json new file mode 100644 index 0000000000..2ac9594470 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "normal", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/normal.png new file mode 100644 index 0000000000..5dae4ee2a2 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/off.png new file mode 100644 index 0000000000..fe2803b6dc Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/boozeomat.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cart.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/cart.rsi/broken.png new file mode 100644 index 0000000000..9011ed896a Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cart.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cart.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/cart.rsi/deny.png new file mode 100644 index 0000000000..8c3ac65247 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cart.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cart.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/cart.rsi/eject.png new file mode 100644 index 0000000000..346630bdd4 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cart.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cart.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/cart.rsi/meta.json new file mode 100644 index 0000000000..3fd1786893 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/cart.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "eject", "directions": 1, "delays": [[1.0, 0.5, 0.1, 0.1, 0.1, 1.0, 0.1, 0.1, 0.1, 0.3]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/cart.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/cart.rsi/normal.png new file mode 100644 index 0000000000..5e3b16c09f Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cart.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cart.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/cart.rsi/off.png new file mode 100644 index 0000000000..5ad446a4ea Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cart.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/chapel.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/broken.png new file mode 100644 index 0000000000..b301690f9f Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/chapel.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/deny.png new file mode 100644 index 0000000000..8821a295f2 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/chapel.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/meta.json new file mode 100644 index 0000000000..befea40432 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.1, 0.05, 0.1, 0.05, 0.1, 0.05, 0.1, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05]]}, {"name": "normal", "directions": 1, "delays": [[2.0, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 2.0, 0.05, 0.05, 2.0, 0.05, 0.05, 0.05, 2.0, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 2.0, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.5, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 1.0, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/chapel.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/normal.png new file mode 100644 index 0000000000..6053dc5d28 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/chapel.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/off.png new file mode 100644 index 0000000000..1907f2fc41 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/chapel.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cigs.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/broken.png new file mode 100644 index 0000000000..bf6c7193a2 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cigs.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/eject.png new file mode 100644 index 0000000000..9810b6f80a Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cigs.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/meta.json new file mode 100644 index 0000000000..59b45560a0 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[1.0, 0.2, 0.1, 0.1, 0.1, 0.1, 1.0, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/cigs.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/normal.png new file mode 100644 index 0000000000..648b07707b Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cigs.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/off.png new file mode 100644 index 0000000000..1c00c141a7 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cigs.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/coffee.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/broken.png new file mode 100644 index 0000000000..2f2b33484b Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/coffee.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/eject.png new file mode 100644 index 0000000000..4ad833c272 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/coffee.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/meta.json new file mode 100644 index 0000000000..b9afef1fe1 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[0.1, 0.4, 2.0, 0.2, 0.1, 0.1, 0.5, 0.5, 0.1, 0.1, 0.9]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/coffee.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/normal.png new file mode 100644 index 0000000000..1b34b300c7 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/coffee.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/off.png new file mode 100644 index 0000000000..8f3f38d395 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/coffee.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cola.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/cola.rsi/broken.png new file mode 100644 index 0000000000..9e71945651 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cola.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cola.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/cola.rsi/eject.png new file mode 100644 index 0000000000..00b0ac604d Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cola.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cola.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/cola.rsi/meta.json new file mode 100644 index 0000000000..7fbf06ed12 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/cola.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[0.5, 0.1, 1.0, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/cola.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/cola.rsi/normal.png new file mode 100644 index 0000000000..008b06fad0 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cola.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/cola.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/cola.rsi/off.png new file mode 100644 index 0000000000..eb69c479aa Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/cola.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/broken.png new file mode 100644 index 0000000000..8831382360 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/eject.png new file mode 100644 index 0000000000..7d0de068b1 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/meta.json new file mode 100644 index 0000000000..0f01469900 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/normal.png new file mode 100644 index 0000000000..e928a54ca0 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/off.png new file mode 100644 index 0000000000..9553d5135f Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/dinnerware.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/discount.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/discount.rsi/broken.png new file mode 100644 index 0000000000..d3b9cc148a Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/discount.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/discount.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/discount.rsi/meta.json new file mode 100644 index 0000000000..75bf5b7173 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/discount.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[4.0, 0.1, 0.6]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/discount.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/discount.rsi/normal.png new file mode 100644 index 0000000000..96595bdccc Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/discount.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/discount.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/discount.rsi/off.png new file mode 100644 index 0000000000..e940491a3c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/discount.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/empty.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/empty.rsi/broken.png new file mode 100644 index 0000000000..d54cdcf9eb Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/empty.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/empty.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/empty.rsi/meta.json new file mode 100644 index 0000000000..8288f2c29d --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/empty.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/empty.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/empty.rsi/normal.png new file mode 100644 index 0000000000..7e197b073c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/empty.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/empty.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/empty.rsi/off.png new file mode 100644 index 0000000000..fc8e534745 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/empty.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/engivend.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/broken.png new file mode 100644 index 0000000000..155b2b7a36 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/engivend.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/deny.png new file mode 100644 index 0000000000..6136fedddd Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/engivend.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/eject.png new file mode 100644 index 0000000000..84e1aebf48 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/engivend.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/meta.json new file mode 100644 index 0000000000..64e347ac83 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "eject", "directions": 1, "delays": [[0.5, 0.1, 0.1, 0.1, 0.1, 0.1, 0.5, 0.1, 1.0, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/engivend.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/normal.png new file mode 100644 index 0000000000..b630331843 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/engivend.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/off.png new file mode 100644 index 0000000000..70d59a1ccc Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/engivend.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/hats.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/hats.rsi/broken.png new file mode 100644 index 0000000000..d75949c270 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/hats.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/hats.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/hats.rsi/meta.json new file mode 100644 index 0000000000..95aa5778c4 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/hats.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[2.0, 0.1, 0.2, 0.1]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/hats.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/hats.rsi/normal.png new file mode 100644 index 0000000000..6c22e9ca0e Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/hats.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/hats.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/hats.rsi/off.png new file mode 100644 index 0000000000..e00e887597 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/hats.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/magivend.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/broken.png new file mode 100644 index 0000000000..1d06ddbaf7 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/magivend.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/meta.json new file mode 100644 index 0000000000..8288f2c29d --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/magivend.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/normal.png new file mode 100644 index 0000000000..3e626ac04c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/magivend.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/off.png new file mode 100644 index 0000000000..dc0b3e84af Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/magivend.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/medical.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/medical.rsi/broken.png new file mode 100644 index 0000000000..4e431f4066 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/medical.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/medical.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/medical.rsi/deny.png new file mode 100644 index 0000000000..5dc50d852b Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/medical.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/medical.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/medical.rsi/eject.png new file mode 100644 index 0000000000..b7d6d63db7 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/medical.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/medical.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/medical.rsi/meta.json new file mode 100644 index 0000000000..a4f3fc1fc1 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/medical.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.3, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "eject", "directions": 1, "delays": [[0.1, 0.2, 0.2, 0.1, 0.1, 0.1, 1.0, 0.1, 0.1, 0.1, 0.2, 0.2]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/medical.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/medical.rsi/normal.png new file mode 100644 index 0000000000..a9c9deb847 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/medical.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/medical.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/medical.rsi/off.png new file mode 100644 index 0000000000..da657c04cb Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/medical.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/mining.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/mining.rsi/broken.png new file mode 100644 index 0000000000..4ad4c691d4 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/mining.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/mining.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/mining.rsi/deny.png new file mode 100644 index 0000000000..2727014548 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/mining.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/mining.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/mining.rsi/meta.json new file mode 100644 index 0000000000..dc487ded34 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/mining.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/mining.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/mining.rsi/normal.png new file mode 100644 index 0000000000..336cf05372 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/mining.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/mining.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/mining.rsi/off.png new file mode 100644 index 0000000000..02078e5f4d Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/mining.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nazi.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/broken.png new file mode 100644 index 0000000000..59d7b3fe17 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nazi.rsi/dangermode.png b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/dangermode.png new file mode 100644 index 0000000000..0157f38f2b Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/dangermode.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nazi.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/meta.json new file mode 100644 index 0000000000..abd1d5d4e6 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "dangermode", "directions": 1, "delays": [[0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08]]}, {"name": "normal", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/nazi.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/normal.png new file mode 100644 index 0000000000..ab3de9566f Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nazi.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/off.png new file mode 100644 index 0000000000..c9cbb2f699 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nazi.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nutri.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/broken.png new file mode 100644 index 0000000000..86feb557c8 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nutri.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/deny.png new file mode 100644 index 0000000000..770e2092de Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nutri.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/eject.png new file mode 100644 index 0000000000..e7a8d00b38 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nutri.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/meta.json new file mode 100644 index 0000000000..22ee707ea4 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[1.0, 0.1, 0.1, 0.1, 0.1, 0.5, 0.1, 1.0, 0.1, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/nutri.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/normal.png new file mode 100644 index 0000000000..e4f030005c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/nutri.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/off.png new file mode 100644 index 0000000000..74bf182621 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/nutri.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/robotics.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/broken.png new file mode 100644 index 0000000000..e6488fcdd2 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/robotics.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/deny.png new file mode 100644 index 0000000000..c30eca1bc0 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/robotics.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/meta.json new file mode 100644 index 0000000000..8ab345bb1d --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/robotics.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/normal.png new file mode 100644 index 0000000000..ca90dc6242 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/robotics.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/off.png new file mode 100644 index 0000000000..2ca864c020 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/robotics.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sale.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/sale.rsi/broken.png new file mode 100644 index 0000000000..50d487e689 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sale.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sale.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/sale.rsi/meta.json new file mode 100644 index 0000000000..12fa42f831 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/sale.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0, 0.05, 0.1, 0.02]]}, {"name": "normal", "directions": 1, "delays": [[0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/sale.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/sale.rsi/normal.png new file mode 100644 index 0000000000..01cec66b56 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sale.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sale.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/sale.rsi/off.png new file mode 100644 index 0000000000..29308d52c1 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sale.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sec.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/sec.rsi/broken.png new file mode 100644 index 0000000000..13bbe7fa26 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sec.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sec.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/sec.rsi/deny.png new file mode 100644 index 0000000000..d9ce3fd34c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sec.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sec.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/sec.rsi/meta.json new file mode 100644 index 0000000000..d62b3d9fe5 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/sec.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.3, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}, {"name": "vend", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 1.0, 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/Buildings/VendingMachines/sec.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/sec.rsi/normal.png new file mode 100644 index 0000000000..fe3fbe94c9 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sec.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sec.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/sec.rsi/off.png new file mode 100644 index 0000000000..42f571c0e2 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sec.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sec.rsi/vend.png b/Resources/Textures/Buildings/VendingMachines/sec.rsi/vend.png new file mode 100644 index 0000000000..22eeee1674 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sec.rsi/vend.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/seeds.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/broken.png new file mode 100644 index 0000000000..78fee67e75 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/seeds.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/eject.png new file mode 100644 index 0000000000..717c131e38 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/seeds.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/meta.json new file mode 100644 index 0000000000..11edaddccc --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 1.0, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/seeds.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/normal.png new file mode 100644 index 0000000000..29d19452a5 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/seeds.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/off.png new file mode 100644 index 0000000000..1bf7751241 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/seeds.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/shoes.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/broken.png new file mode 100644 index 0000000000..95475da791 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/shoes.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/meta.json new file mode 100644 index 0000000000..69873a4421 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[3.0, 0.2, 0.3, 0.1]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/shoes.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/normal.png new file mode 100644 index 0000000000..d7eb072411 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/shoes.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/off.png new file mode 100644 index 0000000000..23c0cc6903 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/shoes.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/broken.png new file mode 100644 index 0000000000..fbeb65414c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/meta.json new file mode 100644 index 0000000000..8288f2c29d --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/normal.png new file mode 100644 index 0000000000..f9a2e20e6a Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/off.png new file mode 100644 index 0000000000..cd5721a4eb Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/smartfridge.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/snack.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/snack.rsi/broken.png new file mode 100644 index 0000000000..16269f09b7 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/snack.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/snack.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/snack.rsi/eject.png new file mode 100644 index 0000000000..b810de9329 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/snack.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/snack.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/snack.rsi/meta.json new file mode 100644 index 0000000000..06ccea2d4f --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/snack.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[1.0, 0.1, 0.1, 0.1, 0.1, 0.5, 0.1, 1.0, 0.1, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/snack.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/snack.rsi/normal.png new file mode 100644 index 0000000000..c8d12c6ea6 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/snack.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/snack.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/snack.rsi/off.png new file mode 100644 index 0000000000..a7273a7a39 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/snack.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/soviet.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/broken.png new file mode 100644 index 0000000000..5d084d925d Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/soviet.rsi/dangermode.png b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/dangermode.png new file mode 100644 index 0000000000..cd13f3d419 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/dangermode.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/soviet.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/meta.json new file mode 100644 index 0000000000..ee16cfe604 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "dangermode", "directions": 1, "delays": [[0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08]]}, {"name": "normal", "directions": 1, "delays": [[0.5, 0.5]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/soviet.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/normal.png new file mode 100644 index 0000000000..768870dc78 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/soviet.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/off.png new file mode 100644 index 0000000000..7b93a0ce6a Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/soviet.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/broken.png new file mode 100644 index 0000000000..00eced676c Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/eject.png new file mode 100644 index 0000000000..08e4c74ad9 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/meta.json new file mode 100644 index 0000000000..d86e193474 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "eject", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.4, 0.1, 0.1, 0.1, 0.3, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/normal.png new file mode 100644 index 0000000000..1d362218cb Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/off.png new file mode 100644 index 0000000000..7305029413 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/sovietsoda.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/suits.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/suits.rsi/broken.png new file mode 100644 index 0000000000..29f9b1d4fc Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/suits.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/suits.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/suits.rsi/meta.json new file mode 100644 index 0000000000..a435b611e6 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/suits.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[1.9, 0.1, 0.2, 0.05]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/suits.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/suits.rsi/normal.png new file mode 100644 index 0000000000..92bbb8d9ef Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/suits.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/suits.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/suits.rsi/off.png new file mode 100644 index 0000000000..10bb1136e4 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/suits.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/theater.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/theater.rsi/broken.png new file mode 100644 index 0000000000..8aafe495ea Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/theater.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/theater.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/theater.rsi/deny.png new file mode 100644 index 0000000000..4cde8afe53 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/theater.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/theater.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/theater.rsi/meta.json new file mode 100644 index 0000000000..67c1a6ff8f --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/theater.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "normal", "directions": 1, "delays": [[4.5, 0.1, 0.4, 0.1]]}, {"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/theater.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/theater.rsi/normal.png new file mode 100644 index 0000000000..689ae27abf Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/theater.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/theater.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/theater.rsi/off.png new file mode 100644 index 0000000000..94cfa6be97 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/theater.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/broken.png new file mode 100644 index 0000000000..ba41ccb960 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/meta.json new file mode 100644 index 0000000000..bac3fed86a --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[0.2, 0.2, 0.2]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/normal.png new file mode 100644 index 0000000000..72f49dde08 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/off.png new file mode 100644 index 0000000000..d81bf2e651 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/vendomat.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/vox.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/vox.rsi/broken.png new file mode 100644 index 0000000000..fd48b78fe3 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/vox.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/vox.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/vox.rsi/meta.json new file mode 100644 index 0000000000..8288f2c29d --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/vox.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/vox.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/vox.rsi/normal.png new file mode 100644 index 0000000000..8bdb138db0 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/vox.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/vox.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/vox.rsi/off.png new file mode 100644 index 0000000000..3ff4e5394e Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/vox.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/broken.png new file mode 100644 index 0000000000..4f2e2cacc2 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/deny.png new file mode 100644 index 0000000000..55c19da916 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/meta.json new file mode 100644 index 0000000000..b695d522f4 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.3, 0.1, 0.1, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/normal.png new file mode 100644 index 0000000000..418fb06850 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/off.png new file mode 100644 index 0000000000..4d66fd0a43 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/wallmed.rsi/off.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/youtool.rsi/broken.png b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/broken.png new file mode 100644 index 0000000000..9f124eab8d Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/youtool.rsi/deny.png b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/deny.png new file mode 100644 index 0000000000..eb549c5f1e Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/deny.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/youtool.rsi/eject.png b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/eject.png new file mode 100644 index 0000000000..b9e6d82faa Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/eject.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/youtool.rsi/meta.json b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/meta.json new file mode 100644 index 0000000000..64633f4487 --- /dev/null +++ b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "broken", "directions": 1, "delays": [[1.0]]}, {"name": "deny", "directions": 1, "delays": [[0.2, 0.1, 0.2]]}, {"name": "eject", "directions": 1, "delays": [[0.5, 0.1, 1.0, 0.1, 0.1]]}, {"name": "normal", "directions": 1, "delays": [[1.0]]}, {"name": "off", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/VendingMachines/youtool.rsi/normal.png b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/normal.png new file mode 100644 index 0000000000..b13c07f127 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/normal.png differ diff --git a/Resources/Textures/Buildings/VendingMachines/youtool.rsi/off.png b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/off.png new file mode 100644 index 0000000000..909e87ef56 Binary files /dev/null and b/Resources/Textures/Buildings/VendingMachines/youtool.rsi/off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/ai-fixer-404.png b/Resources/Textures/Buildings/computer.rsi/ai-fixer-404.png new file mode 100644 index 0000000000..1bb9234abe Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/ai-fixer-404.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/ai-fixer-empty.png b/Resources/Textures/Buildings/computer.rsi/ai-fixer-empty.png new file mode 100644 index 0000000000..2b9c1c1c95 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/ai-fixer-empty.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/ai-fixer-full.png b/Resources/Textures/Buildings/computer.rsi/ai-fixer-full.png new file mode 100644 index 0000000000..da7937d84d Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/ai-fixer-full.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/ai-fixer-on.png b/Resources/Textures/Buildings/computer.rsi/ai-fixer-on.png new file mode 100644 index 0000000000..bb13f7a7f2 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/ai-fixer-on.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/ai-fixer.png b/Resources/Textures/Buildings/computer.rsi/ai-fixer.png new file mode 100644 index 0000000000..fe98279329 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/ai-fixer.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/aiupload.png b/Resources/Textures/Buildings/computer.rsi/aiupload.png new file mode 100644 index 0000000000..395e5b1e19 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/aiupload.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/aiupload_key.png b/Resources/Textures/Buildings/computer.rsi/aiupload_key.png new file mode 100644 index 0000000000..d2103a9f39 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/aiupload_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/alert-0.png b/Resources/Textures/Buildings/computer.rsi/alert-0.png new file mode 100644 index 0000000000..873d777475 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/alert-0.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/alert-1.png b/Resources/Textures/Buildings/computer.rsi/alert-1.png new file mode 100644 index 0000000000..34bede981f Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/alert-1.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/alert-2.png b/Resources/Textures/Buildings/computer.rsi/alert-2.png new file mode 100644 index 0000000000..5e17be57cc Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/alert-2.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/area_atmos.png b/Resources/Textures/Buildings/computer.rsi/area_atmos.png new file mode 100644 index 0000000000..6baf596d39 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/area_atmos.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/atmos_key.png b/Resources/Textures/Buildings/computer.rsi/atmos_key.png new file mode 100644 index 0000000000..f3990fa5d5 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/atmos_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/atmos_key_off.png b/Resources/Textures/Buildings/computer.rsi/atmos_key_off.png new file mode 100644 index 0000000000..8991691649 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/atmos_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/broken.png b/Resources/Textures/Buildings/computer.rsi/broken.png new file mode 100644 index 0000000000..38d2fd88a3 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/cameras.png b/Resources/Textures/Buildings/computer.rsi/cameras.png new file mode 100644 index 0000000000..b03fae4d99 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/cameras.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/comm.png b/Resources/Textures/Buildings/computer.rsi/comm.png new file mode 100644 index 0000000000..f7339c6c8c Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/comm.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/comm_logs.png b/Resources/Textures/Buildings/computer.rsi/comm_logs.png new file mode 100644 index 0000000000..ecb9dfc0bf Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/comm_logs.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/comm_monitor.png b/Resources/Textures/Buildings/computer.rsi/comm_monitor.png new file mode 100644 index 0000000000..8c694936e0 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/comm_monitor.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/command.png b/Resources/Textures/Buildings/computer.rsi/command.png new file mode 100644 index 0000000000..8c31b07347 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/command.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/computer.png b/Resources/Textures/Buildings/computer.rsi/computer.png new file mode 100644 index 0000000000..c608b2bb4d Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/computer.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/computer_broken.png b/Resources/Textures/Buildings/computer.rsi/computer_broken.png new file mode 100644 index 0000000000..92d52ea770 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/computer_broken.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/crew.png b/Resources/Textures/Buildings/computer.rsi/crew.png new file mode 100644 index 0000000000..6105817423 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/crew.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/dna.png b/Resources/Textures/Buildings/computer.rsi/dna.png new file mode 100644 index 0000000000..723112ebd1 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/dna.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/dron_control_monitor.png b/Resources/Textures/Buildings/computer.rsi/dron_control_monitor.png new file mode 100644 index 0000000000..ba2077dbaf Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/dron_control_monitor.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/engie_cams.png b/Resources/Textures/Buildings/computer.rsi/engie_cams.png new file mode 100644 index 0000000000..169ecc5ca2 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/engie_cams.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/engine.png b/Resources/Textures/Buildings/computer.rsi/engine.png new file mode 100644 index 0000000000..9b3e4af4c9 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/engine.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/entertainment.png b/Resources/Textures/Buildings/computer.rsi/entertainment.png new file mode 100644 index 0000000000..47ca24866e Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/entertainment.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/eris_control.png b/Resources/Textures/Buildings/computer.rsi/eris_control.png new file mode 100644 index 0000000000..ac085b2ca7 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/eris_control.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/error.png b/Resources/Textures/Buildings/computer.rsi/error.png new file mode 100644 index 0000000000..dd065afb8d Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/error.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/explosive.png b/Resources/Textures/Buildings/computer.rsi/explosive.png new file mode 100644 index 0000000000..041060eadf Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/explosive.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/forensic.png b/Resources/Textures/Buildings/computer.rsi/forensic.png new file mode 100644 index 0000000000..b17f42a49e Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/forensic.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/generic.png b/Resources/Textures/Buildings/computer.rsi/generic.png new file mode 100644 index 0000000000..78d80fa952 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/generic.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/generic_key.png b/Resources/Textures/Buildings/computer.rsi/generic_key.png new file mode 100644 index 0000000000..e03c920a72 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/generic_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/generic_key_off.png b/Resources/Textures/Buildings/computer.rsi/generic_key_off.png new file mode 100644 index 0000000000..24428eb4e3 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/generic_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/holocontrol.png b/Resources/Textures/Buildings/computer.rsi/holocontrol.png new file mode 100644 index 0000000000..0bfc9faf00 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/holocontrol.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/id.png b/Resources/Textures/Buildings/computer.rsi/id.png new file mode 100644 index 0000000000..57eea8a6ce Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/id.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/id_key.png b/Resources/Textures/Buildings/computer.rsi/id_key.png new file mode 100644 index 0000000000..2e7c3f757a Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/id_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/id_key_off.png b/Resources/Textures/Buildings/computer.rsi/id_key_off.png new file mode 100644 index 0000000000..3c282a8dd0 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/id_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/mass_driver.png b/Resources/Textures/Buildings/computer.rsi/mass_driver.png new file mode 100644 index 0000000000..f25ad7bd1a Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/mass_driver.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/mecha.png b/Resources/Textures/Buildings/computer.rsi/mecha.png new file mode 100644 index 0000000000..d40a34886c Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/mecha.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/med_key.png b/Resources/Textures/Buildings/computer.rsi/med_key.png new file mode 100644 index 0000000000..a86768b9d2 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/med_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/med_key_off.png b/Resources/Textures/Buildings/computer.rsi/med_key_off.png new file mode 100644 index 0000000000..6bc1ddde6b Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/med_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/medcomp.png b/Resources/Textures/Buildings/computer.rsi/medcomp.png new file mode 100644 index 0000000000..39858ee7c5 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/medcomp.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/meta.json b/Resources/Textures/Buildings/computer.rsi/meta.json new file mode 100644 index 0000000000..397852c32f --- /dev/null +++ b/Resources/Textures/Buildings/computer.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "ai-fixer", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "ai-fixer-404", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "ai-fixer-empty", "directions": 4, "delays": [[0.7, 0.7], [0.7, 0.7], [0.7, 0.7], [0.7, 0.7]]}, {"name": "ai-fixer-full", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "ai-fixer-on", "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": "aiupload", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "aiupload_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "alert-0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "alert-1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "alert-2", "directions": 4, "delays": [[0.1, 0.1], [0.1, 0.1], [0.1, 0.1], [0.1, 0.1]]}, {"name": "area_atmos", "directions": 4, "delays": [[1.0, 1.0], [1.0, 1.0], [1.0, 1.0], [1.0, 1.0]]}, {"name": "atmos_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "atmos_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "broken", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "cameras", "directions": 4, "delays": [[1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1]]}, {"name": "comm", "directions": 4, "delays": [[0.1, 0.1], [0.1, 0.1], [0.1, 0.1], [0.1, 0.1]]}, {"name": "comm_logs", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2], [0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2], [0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2], [0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2]]}, {"name": "comm_monitor", "directions": 4, "delays": [[0.4, 0.4, 0.4], [0.4, 0.4, 0.4], [0.4, 0.4, 0.4], [0.4, 0.4, 0.4]]}, {"name": "command", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "computer", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "computer_broken", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "crew", "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], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 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": "dna", "directions": 4, "delays": [[0.2, 0.2, 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.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2], [0.2, 0.2, 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.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2], [0.2, 0.2, 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.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2], [0.2, 0.2, 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.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2]]}, {"name": "dron_control_monitor", "directions": 4, "delays": [[0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05], [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05], [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05], [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05]]}, {"name": "engie_cams", "directions": 4, "delays": [[1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1]]}, {"name": "engine", "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], [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]]}, {"name": "entertainment", "directions": 1, "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, 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, 0.2, 0.2, 0.2]]}, {"name": "eris_control", "directions": 4, "delays": [[0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5], [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5], [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5], [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5]]}, {"name": "error", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "explosive", "directions": 4, "delays": [[1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1], [1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1], [1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1], [1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1]]}, {"name": "forensic", "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, 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, 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, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "generic", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "generic_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "generic_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "holocontrol", "directions": 4, "delays": [[1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1]]}, {"name": "id", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "id_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "id_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mass_driver", "directions": 1, "delays": [[1.0]]}, {"name": "mecha", "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": "med_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "med_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "medcomp", "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, 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, 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, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "mining", "directions": 4, "delays": [[1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1]]}, {"name": "mining_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mining_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "power_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "power_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "power_monitor", "directions": 4, "delays": [[0.6, 0.6, 0.6, 0.6], [0.6, 0.6, 0.6, 0.6], [0.6, 0.6, 0.6, 0.6], [0.6, 0.6, 0.6, 0.6]]}, {"name": "power_monitor_warn", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "rd_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "rd_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "rdcomp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "recharge_comp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "recharge_comp_on", "directions": 4, "delays": [[0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2], [0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2], [0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2], [0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2]]}, {"name": "request", "directions": 4, "delays": [[0.3, 0.3, 0.3, 0.3, 0.3, 0.3], [0.3, 0.3, 0.3, 0.3, 0.3, 0.3], [0.3, 0.3, 0.3, 0.3, 0.3, 0.3], [0.3, 0.3, 0.3, 0.3, 0.3, 0.3]]}, {"name": "robot", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "security", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "security_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "security_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "shuttle", "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]]}, {"name": "solar_screen", "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]]}, {"name": "supply", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "syndie_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "syndie_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "syndishuttle", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tank", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tcboss", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tech_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tech_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "teleport", "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]]}, {"name": "teleport_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "teleport_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "telesci", "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]]}, {"name": "telesci_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "telesci_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "turbinecomp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} diff --git a/Resources/Textures/Buildings/computer.rsi/mining.png b/Resources/Textures/Buildings/computer.rsi/mining.png new file mode 100644 index 0000000000..bfc225b873 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/mining.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/mining_key.png b/Resources/Textures/Buildings/computer.rsi/mining_key.png new file mode 100644 index 0000000000..910d4d48ba Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/mining_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/mining_key_off.png b/Resources/Textures/Buildings/computer.rsi/mining_key_off.png new file mode 100644 index 0000000000..a467fedba3 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/mining_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/power_key.png b/Resources/Textures/Buildings/computer.rsi/power_key.png new file mode 100644 index 0000000000..3812a38e71 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/power_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/power_key_off.png b/Resources/Textures/Buildings/computer.rsi/power_key_off.png new file mode 100644 index 0000000000..ddf8abd9f0 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/power_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/power_monitor.png b/Resources/Textures/Buildings/computer.rsi/power_monitor.png new file mode 100644 index 0000000000..fa1cb4a2a9 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/power_monitor.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/power_monitor_warn.png b/Resources/Textures/Buildings/computer.rsi/power_monitor_warn.png new file mode 100644 index 0000000000..a80b1ceef5 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/power_monitor_warn.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/rd_key.png b/Resources/Textures/Buildings/computer.rsi/rd_key.png new file mode 100644 index 0000000000..264b572c13 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/rd_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/rd_key_off.png b/Resources/Textures/Buildings/computer.rsi/rd_key_off.png new file mode 100644 index 0000000000..405300276d Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/rd_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/rdcomp.png b/Resources/Textures/Buildings/computer.rsi/rdcomp.png new file mode 100644 index 0000000000..d16b7fa274 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/rdcomp.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/recharge_comp.png b/Resources/Textures/Buildings/computer.rsi/recharge_comp.png new file mode 100644 index 0000000000..cfdeb3a969 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/recharge_comp.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/recharge_comp_on.png b/Resources/Textures/Buildings/computer.rsi/recharge_comp_on.png new file mode 100644 index 0000000000..36759ca933 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/recharge_comp_on.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/request.png b/Resources/Textures/Buildings/computer.rsi/request.png new file mode 100644 index 0000000000..0ddb5f6fa9 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/request.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/robot.png b/Resources/Textures/Buildings/computer.rsi/robot.png new file mode 100644 index 0000000000..4a1cb7beb1 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/robot.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/security.png b/Resources/Textures/Buildings/computer.rsi/security.png new file mode 100644 index 0000000000..d60450aaba Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/security.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/security_key.png b/Resources/Textures/Buildings/computer.rsi/security_key.png new file mode 100644 index 0000000000..7d2b3211a1 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/security_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/security_key_off.png b/Resources/Textures/Buildings/computer.rsi/security_key_off.png new file mode 100644 index 0000000000..b10523c507 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/security_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/shuttle.png b/Resources/Textures/Buildings/computer.rsi/shuttle.png new file mode 100644 index 0000000000..4237a5c62f Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/shuttle.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/solar_screen.png b/Resources/Textures/Buildings/computer.rsi/solar_screen.png new file mode 100644 index 0000000000..90eb9eb5c6 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/solar_screen.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/supply.png b/Resources/Textures/Buildings/computer.rsi/supply.png new file mode 100644 index 0000000000..23146e8d10 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/supply.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/syndie_key.png b/Resources/Textures/Buildings/computer.rsi/syndie_key.png new file mode 100644 index 0000000000..30c43de392 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/syndie_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/syndie_key_off.png b/Resources/Textures/Buildings/computer.rsi/syndie_key_off.png new file mode 100644 index 0000000000..ee6804c9d7 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/syndie_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/syndishuttle.png b/Resources/Textures/Buildings/computer.rsi/syndishuttle.png new file mode 100644 index 0000000000..6acb4f3144 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/syndishuttle.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/tank.png b/Resources/Textures/Buildings/computer.rsi/tank.png new file mode 100644 index 0000000000..da5cf1e7f7 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/tank.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/tcboss.png b/Resources/Textures/Buildings/computer.rsi/tcboss.png new file mode 100644 index 0000000000..3f24f63259 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/tcboss.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/tech_key.png b/Resources/Textures/Buildings/computer.rsi/tech_key.png new file mode 100644 index 0000000000..910d4d48ba Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/tech_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/tech_key_off.png b/Resources/Textures/Buildings/computer.rsi/tech_key_off.png new file mode 100644 index 0000000000..a467fedba3 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/tech_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/teleport.png b/Resources/Textures/Buildings/computer.rsi/teleport.png new file mode 100644 index 0000000000..09b964889a Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/teleport.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/teleport_key.png b/Resources/Textures/Buildings/computer.rsi/teleport_key.png new file mode 100644 index 0000000000..2b6b2b2456 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/teleport_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/teleport_key_off.png b/Resources/Textures/Buildings/computer.rsi/teleport_key_off.png new file mode 100644 index 0000000000..e53b097f1f Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/teleport_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/telesci.png b/Resources/Textures/Buildings/computer.rsi/telesci.png new file mode 100644 index 0000000000..7d974d4c08 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/telesci.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/telesci_key.png b/Resources/Textures/Buildings/computer.rsi/telesci_key.png new file mode 100644 index 0000000000..264b572c13 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/telesci_key.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/telesci_key_off.png b/Resources/Textures/Buildings/computer.rsi/telesci_key_off.png new file mode 100644 index 0000000000..405300276d Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/telesci_key_off.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/turbinecomp.png b/Resources/Textures/Buildings/computer.rsi/turbinecomp.png new file mode 100644 index 0000000000..fd19605cf9 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/turbinecomp.png differ diff --git a/Resources/Textures/Buildings/furniture.rsi/chair.png b/Resources/Textures/Buildings/furniture.rsi/chair.png new file mode 100644 index 0000000000..e41dd742d9 Binary files /dev/null and b/Resources/Textures/Buildings/furniture.rsi/chair.png differ diff --git a/Resources/Textures/Buildings/furniture.rsi/meta.json b/Resources/Textures/Buildings/furniture.rsi/meta.json new file mode 100644 index 0000000000..514c0729fd --- /dev/null +++ b/Resources/Textures/Buildings/furniture.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "chair", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "officechair_dark", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "officechair_white", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "stool_base", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file diff --git a/Resources/Textures/Buildings/furniture.rsi/officechair_dark.png b/Resources/Textures/Buildings/furniture.rsi/officechair_dark.png new file mode 100644 index 0000000000..f99f8464cc Binary files /dev/null and b/Resources/Textures/Buildings/furniture.rsi/officechair_dark.png differ diff --git a/Resources/Textures/Buildings/furniture.rsi/officechair_white.png b/Resources/Textures/Buildings/furniture.rsi/officechair_white.png new file mode 100644 index 0000000000..a2bf296f61 Binary files /dev/null and b/Resources/Textures/Buildings/furniture.rsi/officechair_white.png differ diff --git a/Resources/Textures/Buildings/furniture.rsi/stool_base.png b/Resources/Textures/Buildings/furniture.rsi/stool_base.png new file mode 100644 index 0000000000..04068a1200 Binary files /dev/null and b/Resources/Textures/Buildings/furniture.rsi/stool_base.png differ diff --git a/Resources/Textures/Buildings/light_small.rsi/broken.png b/Resources/Textures/Buildings/light_small.rsi/broken.png index cb77054e03..e0101a39dd 100644 Binary files a/Resources/Textures/Buildings/light_small.rsi/broken.png and b/Resources/Textures/Buildings/light_small.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/light_small.rsi/burned.png b/Resources/Textures/Buildings/light_small.rsi/burned.png index 7a65e4e83d..18b937bffb 100644 Binary files a/Resources/Textures/Buildings/light_small.rsi/burned.png and b/Resources/Textures/Buildings/light_small.rsi/burned.png differ diff --git a/Resources/Textures/Buildings/light_small.rsi/empty.png b/Resources/Textures/Buildings/light_small.rsi/empty.png index 3ca0505a9b..781b969a68 100644 Binary files a/Resources/Textures/Buildings/light_small.rsi/empty.png and b/Resources/Textures/Buildings/light_small.rsi/empty.png differ diff --git a/Resources/Textures/Buildings/light_small.rsi/off.png b/Resources/Textures/Buildings/light_small.rsi/off.png index 884262b5ab..1de87fbca1 100644 Binary files a/Resources/Textures/Buildings/light_small.rsi/off.png and b/Resources/Textures/Buildings/light_small.rsi/off.png differ diff --git a/Resources/Textures/Buildings/light_small.rsi/on.png b/Resources/Textures/Buildings/light_small.rsi/on.png index 558b9ab5cb..adb120e1bb 100644 Binary files a/Resources/Textures/Buildings/light_small.rsi/on.png and b/Resources/Textures/Buildings/light_small.rsi/on.png differ diff --git a/Resources/Textures/Buildings/light_tube.rsi/broken.png b/Resources/Textures/Buildings/light_tube.rsi/broken.png index 2472fbd385..1ff4dc6379 100644 Binary files a/Resources/Textures/Buildings/light_tube.rsi/broken.png and b/Resources/Textures/Buildings/light_tube.rsi/broken.png differ diff --git a/Resources/Textures/Buildings/light_tube.rsi/burned.png b/Resources/Textures/Buildings/light_tube.rsi/burned.png index ede9cc3437..1b3b8f7809 100644 Binary files a/Resources/Textures/Buildings/light_tube.rsi/burned.png and b/Resources/Textures/Buildings/light_tube.rsi/burned.png differ diff --git a/Resources/Textures/Buildings/light_tube.rsi/empty.png b/Resources/Textures/Buildings/light_tube.rsi/empty.png index 2c82a81c49..387d657e83 100644 Binary files a/Resources/Textures/Buildings/light_tube.rsi/empty.png and b/Resources/Textures/Buildings/light_tube.rsi/empty.png differ diff --git a/Resources/Textures/Buildings/light_tube.rsi/off.png b/Resources/Textures/Buildings/light_tube.rsi/off.png index ff5f324785..2ea7f9308d 100644 Binary files a/Resources/Textures/Buildings/light_tube.rsi/off.png and b/Resources/Textures/Buildings/light_tube.rsi/off.png differ diff --git a/Resources/Textures/Buildings/light_tube.rsi/on.png b/Resources/Textures/Buildings/light_tube.rsi/on.png index b8011ba8fe..dd59607b21 100644 Binary files a/Resources/Textures/Buildings/light_tube.rsi/on.png and b/Resources/Textures/Buildings/light_tube.rsi/on.png differ diff --git a/Resources/Textures/Clothing/backpack.png b/Resources/Textures/Clothing/backpack.png deleted file mode 100644 index ace82e6d83..0000000000 Binary files a/Resources/Textures/Clothing/backpack.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack.rsi/backpack.png b/Resources/Textures/Clothing/backpack.rsi/backpack.png deleted file mode 100644 index 98ceb952dc..0000000000 Binary files a/Resources/Textures/Clothing/backpack.rsi/backpack.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/backpack.rsi/equipped-BACKPACK.png deleted file mode 100644 index 7ade6b3a68..0000000000 Binary files a/Resources/Textures/Clothing/backpack.rsi/equipped-BACKPACK.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack.rsi/inhand-left.png b/Resources/Textures/Clothing/backpack.rsi/inhand-left.png deleted file mode 100644 index 819785ed47..0000000000 Binary files a/Resources/Textures/Clothing/backpack.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack.rsi/inhand-right.png b/Resources/Textures/Clothing/backpack.rsi/inhand-right.png deleted file mode 100644 index 223b7060c8..0000000000 Binary files a/Resources/Textures/Clothing/backpack.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack.rsi/meta.json b/Resources/Textures/Clothing/backpack.rsi/meta.json deleted file mode 100644 index b580b338ca..0000000000 --- a/Resources/Textures/Clothing/backpack.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"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": "backpack", "directions": 1, "delays": [[1.0]]}, {"name": "equipped-BACKPACK", "directions": 4, "delays": [[1.0], [1.0], [1.0], [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/Clothing/backpack_clown.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/backpack_clown.rsi/equipped-BACKPACK.png deleted file mode 100644 index df29738999..0000000000 Binary files a/Resources/Textures/Clothing/backpack_clown.rsi/equipped-BACKPACK.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_clown.rsi/icon.png b/Resources/Textures/Clothing/backpack_clown.rsi/icon.png deleted file mode 100644 index 5c3120c882..0000000000 Binary files a/Resources/Textures/Clothing/backpack_clown.rsi/icon.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_clown.rsi/inhand-left.png b/Resources/Textures/Clothing/backpack_clown.rsi/inhand-left.png deleted file mode 100644 index 57814f0f9a..0000000000 Binary files a/Resources/Textures/Clothing/backpack_clown.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_clown.rsi/inhand-right.png b/Resources/Textures/Clothing/backpack_clown.rsi/inhand-right.png deleted file mode 100644 index 9f0b0ad81c..0000000000 Binary files a/Resources/Textures/Clothing/backpack_clown.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_clown.rsi/meta.json b/Resources/Textures/Clothing/backpack_clown.rsi/meta.json deleted file mode 100644 index a29f6c8a12..0000000000 --- a/Resources/Textures/Clothing/backpack_clown.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"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": "equipped-BACKPACK", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"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]]}]} \ No newline at end of file diff --git a/Resources/Textures/Clothing/backpack_sec.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/backpack_sec.rsi/equipped-BACKPACK.png deleted file mode 100644 index 597ad90d3d..0000000000 Binary files a/Resources/Textures/Clothing/backpack_sec.rsi/equipped-BACKPACK.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_sec.rsi/icon.png b/Resources/Textures/Clothing/backpack_sec.rsi/icon.png deleted file mode 100644 index 28761c9708..0000000000 Binary files a/Resources/Textures/Clothing/backpack_sec.rsi/icon.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_sec.rsi/inhand-left.png b/Resources/Textures/Clothing/backpack_sec.rsi/inhand-left.png deleted file mode 100644 index 97996f4e07..0000000000 Binary files a/Resources/Textures/Clothing/backpack_sec.rsi/inhand-left.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_sec.rsi/inhand-right.png b/Resources/Textures/Clothing/backpack_sec.rsi/inhand-right.png deleted file mode 100644 index 818680281b..0000000000 Binary files a/Resources/Textures/Clothing/backpack_sec.rsi/inhand-right.png and /dev/null differ diff --git a/Resources/Textures/Clothing/backpack_sec.rsi/meta.json b/Resources/Textures/Clothing/backpack_sec.rsi/meta.json deleted file mode 100644 index a29f6c8a12..0000000000 --- a/Resources/Textures/Clothing/backpack_sec.rsi/meta.json +++ /dev/null @@ -1 +0,0 @@ -{"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": "equipped-BACKPACK", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"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]]}]} \ No newline at end of file diff --git a/Resources/Textures/Clothing/backpacks.rsi/backpack-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/backpack-equipped-BACKPACK.png new file mode 100644 index 0000000000..b4f0155515 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/backpack-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/backpack-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/backpack-inhand-left.png new file mode 100644 index 0000000000..70956a4e19 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/backpack-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/backpack-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/backpack-inhand-right.png new file mode 100644 index 0000000000..b4c42b207f Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/backpack-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/backpack.png b/Resources/Textures/Clothing/backpacks.rsi/backpack.png new file mode 100644 index 0000000000..d61d4eeb83 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/backpack.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/captain-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/captain-equipped-BACKPACK.png new file mode 100644 index 0000000000..aa9b9fa096 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/captain-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/captain-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/captain-inhand-left.png new file mode 100644 index 0000000000..432b2bb5a5 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/captain-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/captain-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/captain-inhand-right.png new file mode 100644 index 0000000000..ceb964c958 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/captain-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/captain.png b/Resources/Textures/Clothing/backpacks.rsi/captain.png new file mode 100644 index 0000000000..93c823ce08 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/captain.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/clown-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/clown-equipped-BACKPACK.png new file mode 100644 index 0000000000..3923e872a1 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/clown-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/clown-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/clown-inhand-left.png new file mode 100644 index 0000000000..9a1dc27dda Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/clown-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/clown-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/clown-inhand-right.png new file mode 100644 index 0000000000..c7cec5afbc Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/clown-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/clown.png b/Resources/Textures/Clothing/backpacks.rsi/clown.png new file mode 100644 index 0000000000..f5dd61b22c Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/clown.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-black.png b/Resources/Textures/Clothing/backpacks.rsi/courier-black.png new file mode 100644 index 0000000000..304c8e7fc6 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-black.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-captain-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-captain-equipped-BACKPACK.png new file mode 100644 index 0000000000..4429ba7d70 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-captain-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-captain.png b/Resources/Textures/Clothing/backpacks.rsi/courier-captain.png new file mode 100644 index 0000000000..e48aa43062 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-captain.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-chemistry-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-chemistry-equipped-BACKPACK.png new file mode 100644 index 0000000000..7a2a212058 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-chemistry-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-chemistry.png b/Resources/Textures/Clothing/backpacks.rsi/courier-chemistry.png new file mode 100644 index 0000000000..7fc412c33c Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-chemistry.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-engineering-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-engineering-equipped-BACKPACK.png new file mode 100644 index 0000000000..79a06d2b19 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-engineering-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-engineering.png b/Resources/Textures/Clothing/backpacks.rsi/courier-engineering.png new file mode 100644 index 0000000000..f58b5b1e77 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-engineering.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-equipped-BACKPACK.png new file mode 100644 index 0000000000..c4918a47f5 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-hydroponics-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-hydroponics-equipped-BACKPACK.png new file mode 100644 index 0000000000..a81a1468ce Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-hydroponics-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-hydroponics.png b/Resources/Textures/Clothing/backpacks.rsi/courier-hydroponics.png new file mode 100644 index 0000000000..aef9c42255 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-hydroponics.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-medical-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-medical-equipped-BACKPACK.png new file mode 100644 index 0000000000..880bf53439 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-medical-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-medical.png b/Resources/Textures/Clothing/backpacks.rsi/courier-medical.png new file mode 100644 index 0000000000..a6711c1181 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-medical.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-science-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-science-equipped-BACKPACK.png new file mode 100644 index 0000000000..bc6270f519 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-science-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-science.png b/Resources/Textures/Clothing/backpacks.rsi/courier-science.png new file mode 100644 index 0000000000..da1afc33d0 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-science.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-security-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-security-equipped-BACKPACK.png new file mode 100644 index 0000000000..fd076d74bd Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-security-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-security.png b/Resources/Textures/Clothing/backpacks.rsi/courier-security.png new file mode 100644 index 0000000000..ff9a24f4c1 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-security.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-virology-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/courier-virology-equipped-BACKPACK.png new file mode 100644 index 0000000000..4b75c5fbde Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-virology-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier-virology.png b/Resources/Textures/Clothing/backpacks.rsi/courier-virology.png new file mode 100644 index 0000000000..8817a17bd1 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier-virology.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/courier.png b/Resources/Textures/Clothing/backpacks.rsi/courier.png new file mode 100644 index 0000000000..030e579221 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/courier.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/engineering-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/engineering-equipped-BACKPACK.png new file mode 100644 index 0000000000..ee34a4a9c2 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/engineering-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/engineering-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/engineering-inhand-left.png new file mode 100644 index 0000000000..c1b5fe8dd8 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/engineering-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/engineering-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/engineering-inhand-right.png new file mode 100644 index 0000000000..f1259e2f7c Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/engineering-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/engineering.png b/Resources/Textures/Clothing/backpacks.rsi/engineering.png new file mode 100644 index 0000000000..20df264c06 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/engineering.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding-broken-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/holding-broken-equipped-BACKPACK.png new file mode 100644 index 0000000000..2001be0b6b Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding-broken-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding-broken.png b/Resources/Textures/Clothing/backpacks.rsi/holding-broken.png new file mode 100644 index 0000000000..63c658bde9 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding-broken.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/holding-equipped-BACKPACK.png new file mode 100644 index 0000000000..eab75d0759 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/holding-inhand-left.png new file mode 100644 index 0000000000..79c90fc3cb Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/holding-inhand-right.png new file mode 100644 index 0000000000..95b5b9abec Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding-unlit.png b/Resources/Textures/Clothing/backpacks.rsi/holding-unlit.png new file mode 100644 index 0000000000..c3175a50ea Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding-unlit.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/holding.png b/Resources/Textures/Clothing/backpacks.rsi/holding.png new file mode 100644 index 0000000000..bdabcd5805 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/holding.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/medical-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/medical-equipped-BACKPACK.png new file mode 100644 index 0000000000..a7ccb31af6 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/medical-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/medical-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/medical-inhand-left.png new file mode 100644 index 0000000000..4a012706cf Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/medical-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/medical-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/medical-inhand-right.png new file mode 100644 index 0000000000..b9f4171b21 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/medical-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/medical.png b/Resources/Textures/Clothing/backpacks.rsi/medical.png new file mode 100644 index 0000000000..db879acf04 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/medical.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/meta.json b/Resources/Textures/Clothing/backpacks.rsi/meta.json new file mode 100644 index 0000000000..945bc4034c --- /dev/null +++ b/Resources/Textures/Clothing/backpacks.rsi/meta.json @@ -0,0 +1,399 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "engineering", + "directions": 1 + }, + { + "name": "engineering-inhand-left", + "directions": 4 + }, + { + "name": "satchel-hydroponics-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-science", + "directions": 1 + }, + { + "name": "satchel-engineering-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "courier-black", + "directions": 1 + }, + { + "name": "courier-science-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "engineering", + "directions": 1 + }, + { + "name": "engineering-inhand-left", + "directions": 4 + }, + { + "name": "satchel-hydroponics-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-science", + "directions": 1 + }, + { + "name": "satchel-engineering-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "courier-black", + "directions": 1 + }, + { + "name": "courier-science-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "engineering", + "directions": 1 + }, + { + "name": "engineering-inhand-left", + "directions": 4 + }, + { + "name": "satchel-hydroponics-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-science", + "directions": 1 + }, + { + "name": "satchel-engineering-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "courier-black", + "directions": 1 + }, + { + "name": "courier-science-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-security-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "medical-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-chemistry-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "holding-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": "satchel-genetics-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "security-inhand-left", + "directions": 4 + }, + { + "name": "courier-security-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "clown-inhand-right", + "directions": 4 + }, + { + "name": "courier-virology", + "directions": 1 + }, + { + "name": "security-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "medical", + "directions": 1 + }, + { + "name": "medical-inhand-left", + "directions": 4 + }, + { + "name": "courier-captain-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-chemistry", + "directions": 1 + }, + { + "name": "captain-inhand-right", + "directions": 4 + }, + { + "name": "courier-engineering", + "directions": 1 + }, + { + "name": "security", + "directions": 1 + }, + { + "name": "holding-inhand-right", + "directions": 4 + }, + { + "name": "satchel-captain-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "courier-medical-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-security", + "directions": 1 + }, + { + "name": "courier-hydroponics", + "directions": 1 + }, + { + "name": "holding-broken", + "directions": 1 + }, + { + "name": "backpack", + "directions": 1 + }, + { + "name": "satchel-captain", + "directions": 1 + }, + { + "name": "backpack-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "holding", + "directions": 1, + "delays": [[ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ]] + }, + { + "name": "holding-unlit", + "directions": 1, + "delays": [[ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ]] + }, + { + "name": "courier-virology-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "courier-hydroponics-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "security-inhand-right", + "directions": 4 + }, + { + "name": "medical-inhand-right", + "directions": 4 + }, + { + "name": "courier-security", + "directions": 1 + }, + { + "name": "satchel", + "directions": 1 + }, + { + "name": "engineering-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "clown", + "directions": 1 + }, + { + "name": "satchel-virology", + "directions": 1 + }, + { + "name": "courier-medical", + "directions": 1 + }, + { + "name": "satchel-hydroponics", + "directions": 1 + }, + { + "name": "captain", + "directions": 1 + }, + { + "name": "courier-chemistry", + "directions": 1 + }, + { + "name": "captain-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-medical-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "backpack-inhand-left", + "directions": 4 + }, + { + "name": "satchel-science-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "holding-broken-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-engineering", + "directions": 1 + }, + { + "name": "courier-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "backpack-inhand-right", + "directions": 4 + }, + { + "name": "captain-inhand-left", + "directions": 4 + }, + { + "name": "courier-chemistry-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "engineering-inhand-right", + "directions": 4 + }, + { + "name": "satchel-medical", + "directions": 1 + }, + { + "name": "satchel-virology-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "courier-captain", + "directions": 1 + }, + { + "name": "courier", + "directions": 1 + }, + { + "name": "courier-science", + "directions": 1 + }, + { + "name": "courier-engineering-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "satchel-genetics", + "directions": 1 + }, + { + "name": "clown-inhand-left", + "directions": 4 + }, + { + "name": "clown-equipped-BACKPACK", + "directions": 4 + }, + { + "name": "holding-inhand-left", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-captain-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-captain-equipped-BACKPACK.png new file mode 100644 index 0000000000..8332a0c0a9 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-captain-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-captain.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-captain.png new file mode 100644 index 0000000000..a89cee8d79 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-captain.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-chemistry-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-chemistry-equipped-BACKPACK.png new file mode 100644 index 0000000000..d9b5d89404 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-chemistry-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-chemistry.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-chemistry.png new file mode 100644 index 0000000000..ea5838f139 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-chemistry.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-engineering-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-engineering-equipped-BACKPACK.png new file mode 100644 index 0000000000..d5dbd754d5 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-engineering-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-engineering.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-engineering.png new file mode 100644 index 0000000000..ec5b0363cb Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-engineering.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-equipped-BACKPACK.png new file mode 100644 index 0000000000..c24f815bc1 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-genetics-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-genetics-equipped-BACKPACK.png new file mode 100644 index 0000000000..53a3c3c8a6 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-genetics-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-genetics.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-genetics.png new file mode 100644 index 0000000000..ceb3eedb7b Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-genetics.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-hydroponics-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-hydroponics-equipped-BACKPACK.png new file mode 100644 index 0000000000..751ca00978 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-hydroponics-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-hydroponics.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-hydroponics.png new file mode 100644 index 0000000000..19ac83a8b4 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-hydroponics.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-medical-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-medical-equipped-BACKPACK.png new file mode 100644 index 0000000000..90dad45851 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-medical-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-medical.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-medical.png new file mode 100644 index 0000000000..5fd013470e Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-medical.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-science-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-science-equipped-BACKPACK.png new file mode 100644 index 0000000000..2661a05b4c Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-science-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-science.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-science.png new file mode 100644 index 0000000000..53d96698ae Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-science.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-security-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-security-equipped-BACKPACK.png new file mode 100644 index 0000000000..c33aec6307 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-security-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-security.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-security.png new file mode 100644 index 0000000000..7f100adff6 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-security.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-virology-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-virology-equipped-BACKPACK.png new file mode 100644 index 0000000000..49725f781d Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-virology-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel-virology.png b/Resources/Textures/Clothing/backpacks.rsi/satchel-virology.png new file mode 100644 index 0000000000..809f1b86e0 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel-virology.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/satchel.png b/Resources/Textures/Clothing/backpacks.rsi/satchel.png new file mode 100644 index 0000000000..d390ee7c98 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/satchel.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/security-equipped-BACKPACK.png b/Resources/Textures/Clothing/backpacks.rsi/security-equipped-BACKPACK.png new file mode 100644 index 0000000000..6ba1322845 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/security-equipped-BACKPACK.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/security-inhand-left.png b/Resources/Textures/Clothing/backpacks.rsi/security-inhand-left.png new file mode 100644 index 0000000000..de30fff884 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/security-inhand-left.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/security-inhand-right.png b/Resources/Textures/Clothing/backpacks.rsi/security-inhand-right.png new file mode 100644 index 0000000000..117a22ef91 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/security-inhand-right.png differ diff --git a/Resources/Textures/Clothing/backpacks.rsi/security.png b/Resources/Textures/Clothing/backpacks.rsi/security.png new file mode 100644 index 0000000000..47613295e4 Binary files /dev/null and b/Resources/Textures/Clothing/backpacks.rsi/security.png differ diff --git a/Resources/Textures/Clothing/beret.rsi/beret.png b/Resources/Textures/Clothing/beret.rsi/beret.png deleted file mode 100644 index feac165f6d..0000000000 Binary files a/Resources/Textures/Clothing/beret.rsi/beret.png and /dev/null differ diff --git a/Resources/Textures/Clothing/beret.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/beret.rsi/equipped-HELMET.png deleted file mode 100644 index 2918a7d0b3..0000000000 Binary files a/Resources/Textures/Clothing/beret.rsi/equipped-HELMET.png and /dev/null differ diff --git a/Resources/Textures/Clothing/beret.rsi/meta.json b/Resources/Textures/Clothing/beret.rsi/meta.json deleted file mode 100644 index 831fc7e571..0000000000 --- a/Resources/Textures/Clothing/beret.rsi/meta.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "version": 1, - "size": { - "x": 32, - "y": 32 - }, - "license": "CC-BY-SA-3.0", - "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/tree/Bleeding-Edge/icons", - "states": [ - { - "name": "equipped-HELMET", - "directions": 4, - "delays": [ - [ 1.0 ], - [ 1.0 ], - [ 1.0 ], - [ 1.0 ] - ] - }, - { - "name": "beret", - "directions": 1, - "delays": [ [ 1.0 ] ] - } - ] -} diff --git a/Resources/Textures/Clothing/gloves_white.rsi/equipped-HAND.png b/Resources/Textures/Clothing/gloves_white.rsi/equipped-HAND.png deleted file mode 100644 index db6ccef964..0000000000 Binary files a/Resources/Textures/Clothing/gloves_white.rsi/equipped-HAND.png and /dev/null differ diff --git a/Resources/Textures/Clothing/gloves_white.rsi/meta.json b/Resources/Textures/Clothing/gloves_white.rsi/meta.json deleted file mode 100644 index 2a3252cfc8..0000000000 --- a/Resources/Textures/Clothing/gloves_white.rsi/meta.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "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": "white", - "directions": 1, - "delays": [ [ 1.0 ] ] - }, - { - "name": "equipped-HAND", - "directions": 4, - "delays": [ - [ 1.0 ], - [ 1.0 ], - [ 1.0 ], - [ 1.0 ] - ] - } - ] -} diff --git a/Resources/Textures/Clothing/gloves_white.rsi/white.png b/Resources/Textures/Clothing/gloves_white.rsi/white.png deleted file mode 100644 index 4732b24b5b..0000000000 Binary files a/Resources/Textures/Clothing/gloves_white.rsi/white.png and /dev/null differ diff --git a/Resources/Textures/Clothing/hop_coat.rsi/equipped-OUTER.png b/Resources/Textures/Clothing/hop_coat.rsi/equipped-OUTER.png deleted file mode 100644 index 823f77efb1..0000000000 Binary files a/Resources/Textures/Clothing/hop_coat.rsi/equipped-OUTER.png and /dev/null differ diff --git a/Resources/Textures/Clothing/hop_hat.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/hop_hat.rsi/equipped-HELMET.png deleted file mode 100644 index 866e91981a..0000000000 Binary files a/Resources/Textures/Clothing/hop_hat.rsi/equipped-HELMET.png and /dev/null differ diff --git a/Resources/Textures/Clothing/hop_hat.rsi/hop.png b/Resources/Textures/Clothing/hop_hat.rsi/hop.png deleted file mode 100644 index 55e5a58f11..0000000000 Binary files a/Resources/Textures/Clothing/hop_hat.rsi/hop.png and /dev/null differ diff --git a/Resources/Textures/Clothing/hop_hat.rsi/meta.json b/Resources/Textures/Clothing/hop_hat.rsi/meta.json deleted file mode 100644 index 8eb2d55846..0000000000 --- a/Resources/Textures/Clothing/hop_hat.rsi/meta.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "version": 1, - "size": { - "x": 32, - "y": 32 - }, - "license": "CC-BY-SA-3.0", - "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/tree/Bleeding-Edge/icons", - "states": [ - { - "name": "equipped-HELMET", - "directions": 4, - "delays": [ - [ 1.0 ], - [ 1.0 ], - [ 1.0 ], - [ 1.0 ] - ] - }, - { - "name": "hop", - "directions": 1, - "delays": [ [ 1.0 ] ] - } - ] -} diff --git a/SS14.Launcher/Program.cs b/SS14.Launcher/Program.cs index deb6056020..7c693ab4dc 100644 --- a/SS14.Launcher/Program.cs +++ b/SS14.Launcher/Program.cs @@ -186,6 +186,7 @@ namespace SS14.Launcher _interface.StatusLabel.Text = _loc.GetString("Extracting update.."); _interface.ProgressBarVisible = false; + Logger.InfoS("launcher", "Extracting: '{0}' to '{1}'", tmpFile, binPath); await Task.Run(() => { using (var file = File.OpenRead(tmpFile)) @@ -226,7 +227,7 @@ namespace SS14.Launcher $"{JenkinsBaseUrl}/job/{Uri.EscapeUriString(JenkinsJobName)}/{buildNumber}/artifact/release/{Uri.EscapeUriString(fileName)}"); var tmpFile = Path.GetTempFileName(); - Logger.InfoS("launcher", tmpFile); + Logger.InfoS("launcher", "temp download file path: {0}", tmpFile); await _httpClient.DownloadToFile(artifactUri, tmpFile, f => _taskManager.RunOnMainThread(() => { _interface.ProgressBarVisible = true; diff --git a/Tools/package_release_build.py b/Tools/package_release_build.py index d0b3d3e6c3..5dd0208240 100755 --- a/Tools/package_release_build.py +++ b/Tools/package_release_build.py @@ -59,8 +59,11 @@ def main(): nargs="*", help="Which platform to build for. If not provided, all platforms will be built") + parser.add_argument("--core", action="store_true", help="Build with .NET Core instead.") + args = parser.parse_args() platforms = args.platform + core = args.core if not platforms: platforms = ["windows", "mac", "linux"] @@ -73,15 +76,15 @@ def main(): if "windows" in platforms: wipe_bin() - build_windows() + build_windows(core) if "linux" in platforms: wipe_bin() - build_linux() + build_linux(core) if "mac" in platforms: wipe_bin() - build_macos() + build_macos(core) def wipe_bin(): @@ -94,20 +97,25 @@ def wipe_bin(): shutil.rmtree("bin") -def build_windows(): +def build_windows(core): # type: (bool) -> None # Run a full build. print(Fore.GREEN + "Building project for Windows x64..." + Style.RESET_ALL) - subprocess.run(["msbuild", - "SpaceStation14.sln", - "/m", - "/p:Configuration=Release", - "/p:Platform=x64", - "/nologo", - "/v:m", - "/p:TargetOS=Windows", - "/t:Rebuild", - "/p:FullRelease=True" - ], check=True) + command = ["msbuild", + "SpaceStation14.sln", + "/m", + "/p:Configuration=Release", + "/p:Platform=x64", + "/nologo", + "/v:m", + "/p:TargetOS=Windows", + "/t:Rebuild", + "/p:FullRelease=True" + ] + + if core: + command = ["dotnet"] + command + ["/p:UseNetCore=true"] + + subprocess.run(command, check=True) print(Fore.GREEN + "Packaging Windows x64 client..." + Style.RESET_ALL) @@ -139,19 +147,24 @@ def build_windows(): launcher_zip.close() -def build_macos(): +def build_macos(core): # type: (bool) -> None print(Fore.GREEN + "Building project for macOS x64..." + Style.RESET_ALL) - subprocess.run(["msbuild", - "SpaceStation14.sln", - "/m", - "/p:Configuration=Release", - "/p:Platform=x64", - "/nologo", - "/v:m", - "/p:TargetOS=MacOS", - "/t:Rebuild", - "/p:FullRelease=True" - ], check=True) + command = ["msbuild", + "SpaceStation14.sln", + "/m", + "/p:Configuration=Release", + "/p:Platform=x64", + "/nologo", + "/v:m", + "/p:TargetOS=MacOS", + "/t:Rebuild", + "/p:FullRelease=True" + ] + + if core: + command = ["dotnet"] + command + ["/p:UseNetCore=true"] + + subprocess.run(command, check=True) print(Fore.GREEN + "Packaging macOS x64 client..." + Style.RESET_ALL) # Client has to go in an app bundle. @@ -186,20 +199,25 @@ def build_macos(): launcher_zip.close() -def build_linux(): +def build_linux(core): # type: (bool) -> None # Run a full build. print(Fore.GREEN + "Building project for Linux x64..." + Style.RESET_ALL) - subprocess.run(["msbuild", - "SpaceStation14.sln", - "/m", - "/p:Configuration=Release", - "/p:Platform=x64", - "/nologo", - "/v:m", - "/p:TargetOS=Linux", - "/t:Rebuild", - "/p:FullRelease=True" - ], check=True) + command = ["msbuild", + "SpaceStation14.sln", + "/m", + "/p:Configuration=Release", + "/p:Platform=x64", + "/nologo", + "/v:m", + "/p:TargetOS=Linux", + "/t:Rebuild", + "/p:FullRelease=True" + ] + + if core: + command = ["dotnet"] + command + ["/p:UseNetCore=true"] + + subprocess.run(command, check=True) print(Fore.GREEN + "Packaging Linux x64 client..." + Style.RESET_ALL)