diff --git a/Content.Client/Entry/EntryPoint.cs b/Content.Client/Entry/EntryPoint.cs index 102204bbbbcd74..cff8bd326d5732 100644 --- a/Content.Client/Entry/EntryPoint.cs +++ b/Content.Client/Entry/EntryPoint.cs @@ -8,6 +8,7 @@ using Content.Client.DebugMon; using Content.Client.Eui; using Content.Client.Fullscreen; +using Content.Client.GameTicking.Managers; using Content.Client.GhostKick; using Content.Client.Guidebook; using Content.Client.Input; @@ -79,6 +80,7 @@ public sealed class EntryPoint : GameClient [Dependency] private readonly ILogManager _logManager = default!; [Dependency] private readonly DiscordPlayerInfoManager _discordPlayerInfoManager = default!; // SS220 discord info manager [Dependency] private readonly DebugMonitorManager _debugMonitorManager = default!; + [Dependency] private readonly TitleWindowManager _titleWindowManager = default!; public override void Init() { @@ -149,6 +151,12 @@ public override void Init() _configManager.SetCVar("interface.resolutionAutoScaleMinimum", 0.5f); } + public override void Shutdown() + { + base.Shutdown(); + _titleWindowManager.Shutdown(); + } + public override void PostInit() { base.PostInit(); @@ -172,7 +180,8 @@ public override void PostInit() _discordAuthManager.Initialize(); // Corvax-DiscordAuth _userInterfaceManager.SetActiveTheme(_configManager.GetCVar(CVars.InterfaceTheme)); _documentParsingManager.Initialize(); - _discordPlayerInfoManager.Initialize(); + _discordPlayerInfoManager.Initialize(); // SS220 tier info + _titleWindowManager.Initialize(); _baseClient.RunLevelChanged += (_, args) => { diff --git a/Content.Client/GameTicking/Managers/TitleWindowManager.cs b/Content.Client/GameTicking/Managers/TitleWindowManager.cs new file mode 100644 index 00000000000000..18ce16f634ceee --- /dev/null +++ b/Content.Client/GameTicking/Managers/TitleWindowManager.cs @@ -0,0 +1,62 @@ +using Content.Shared.CCVar; +using Robust.Client; +using Robust.Client.Graphics; +using Robust.Shared; +using Robust.Shared.Configuration; + +namespace Content.Client.GameTicking.Managers; + +public sealed class TitleWindowManager +{ + [Dependency] private readonly IBaseClient _client = default!; + [Dependency] private readonly IClyde _clyde = default!; + [Dependency] private readonly IConfigurationManager _cfg = default!; + [Dependency] private readonly IGameController _gameController = default!; + + public void Initialize() + { + _cfg.OnValueChanged(CVars.GameHostName, OnHostnameChange, true); + _cfg.OnValueChanged(CCVars.GameHostnameInTitlebar, OnHostnameTitleChange, true); + + _client.RunLevelChanged += OnRunLevelChangedChange; + } + + public void Shutdown() + { + _cfg.UnsubValueChanged(CVars.GameHostName, OnHostnameChange); + _cfg.UnsubValueChanged(CCVars.GameHostnameInTitlebar, OnHostnameTitleChange); + } + + private void OnHostnameChange(string hostname) + { + var defaultWindowTitle = _gameController.GameTitle(); + + // Since the game assumes the server name is MyServer and that GameHostnameInTitlebar CCVar is true by default + // Lets just... not show anything. This also is used to revert back to just the game title on disconnect. + if (_client.RunLevel == ClientRunLevel.Initialize) + { + _clyde.SetWindowTitle(defaultWindowTitle); + return; + } + + if (_cfg.GetCVar(CCVars.GameHostnameInTitlebar)) + // If you really dislike the dash I guess change it here + _clyde.SetWindowTitle(hostname + " - " + defaultWindowTitle); + else + _clyde.SetWindowTitle(defaultWindowTitle); + } + + // Clients by default assume game.hostname_in_titlebar is true + // but we need to clear it as soon as we join and actually receive the servers preference on this. + // This will ensure we rerun OnHostnameChange and set the correct title bar name. + private void OnHostnameTitleChange(bool colonthree) + { + OnHostnameChange(_cfg.GetCVar(CVars.GameHostName)); + } + + // This is just used we can rerun the hostname change function when we disconnect to revert back to just the games title. + private void OnRunLevelChangedChange(object? sender, RunLevelChangedEventArgs runLevelChangedEventArgs) + { + OnHostnameChange(_cfg.GetCVar(CVars.GameHostName)); + } +} diff --git a/Content.Client/IoC/ClientContentIoC.cs b/Content.Client/IoC/ClientContentIoC.cs index 6a717859f03d34..b670f9225702ea 100644 --- a/Content.Client/IoC/ClientContentIoC.cs +++ b/Content.Client/IoC/ClientContentIoC.cs @@ -8,6 +8,7 @@ using Content.Client.DebugMon; using Content.Client.Eui; using Content.Client.Fullscreen; +using Content.Client.GameTicking.Managers; using Content.Client.GhostKick; using Content.Client.Guidebook; using Content.Client.Launcher; @@ -65,6 +66,7 @@ public static void Register() collection.Register(); collection.Register(); collection.Register(); + collection.Register(); } } } diff --git a/Content.Client/VendingMachines/UI/VendingMachineMenu.xaml b/Content.Client/VendingMachines/UI/VendingMachineMenu.xaml index 913b07a8f65670..44b1ff95e7feab 100644 --- a/Content.Client/VendingMachines/UI/VendingMachineMenu.xaml +++ b/Content.Client/VendingMachines/UI/VendingMachineMenu.xaml @@ -2,7 +2,8 @@ xmlns="https://spacestation14.io" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls" - xmlns:co="clr-namespace:Content.Client.UserInterface.Controls"> + xmlns:co="clr-namespace:Content.Client.UserInterface.Controls" + MinHeight="210"> diff --git a/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs b/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs index e4554d7d83e07c..d81699c82d0dfa 100644 --- a/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs +++ b/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs @@ -95,9 +95,10 @@ private void AddSmiteVerbs(GetVerbsEvent args) if (HasComp(args.Target) || HasComp(args.Target)) return; + var explodeName = Loc.GetString("admin-smite-explode-name").ToLowerInvariant(); Verb explode = new() { - Text = "admin-smite-explode-name", + Text = explodeName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/smite.svg.192dpi.png")), Act = () => @@ -111,13 +112,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _bodySystem.GibBody(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-explode-description") + Message = string.Join(": ", explodeName, Loc.GetString("admin-smite-explode-description")) // we do this so the description tells admins the Text to run it via console. }; args.Verbs.Add(explode); + var chessName = Loc.GetString("admin-smite-chess-dimension-name").ToLowerInvariant(); Verb chess = new() { - Text = "admin-smite-chess-dimension-name", + Text = chessName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/Tabletop/chessboard.rsi"), "chessboard"), Act = () => @@ -137,12 +139,13 @@ private void AddSmiteVerbs(GetVerbsEvent args) xform.WorldRotation = Angle.Zero; }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-chess-dimension-description") + Message = string.Join(": ", chessName, Loc.GetString("admin-smite-chess-dimension-description")) }; args.Verbs.Add(chess); if (TryComp(args.Target, out var flammable)) { + var flamesName = Loc.GetString("admin-smite-set-alight-name").ToLowerInvariant(); Verb flames = new() { Text = "admin-smite-set-alight-name", @@ -160,14 +163,15 @@ private void AddSmiteVerbs(GetVerbsEvent args) Filter.PvsExcept(args.Target), true, PopupType.MediumCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-set-alight-description") + Message = string.Join(": ", flamesName, Loc.GetString("admin-smite-set-alight-description")) }; args.Verbs.Add(flames); } + var monkeyName = Loc.GetString("admin-smite-monkeyify-name").ToLowerInvariant(); Verb monkey = new() { - Text = "admin-smite-monkeyify-name", + Text = monkeyName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Animals/monkey.rsi"), "monkey"), Act = () => @@ -175,13 +179,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _polymorphSystem.PolymorphEntity(args.Target, "AdminMonkeySmite"); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-monkeyify-description") + Message = string.Join(": ", monkeyName, Loc.GetString("admin-smite-monkeyify-description")) }; args.Verbs.Add(monkey); + var disposalBinName = Loc.GetString("admin-smite-garbage-can-name").ToLowerInvariant(); Verb disposalBin = new() { - Text = "admin-smite-electrocute-name", + Text = disposalBinName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Structures/Piping/disposal.rsi"), "disposal"), Act = () => @@ -189,16 +194,17 @@ private void AddSmiteVerbs(GetVerbsEvent args) _polymorphSystem.PolymorphEntity(args.Target, "AdminDisposalsSmite"); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-garbage-can-description") + Message = string.Join(": ", disposalBinName, Loc.GetString("admin-smite-garbage-can-description")) }; args.Verbs.Add(disposalBin); if (TryComp(args.Target, out var damageable) && HasComp(args.Target)) { + var hardElectrocuteName = Loc.GetString("admin-smite-electrocute-name").ToLowerInvariant(); Verb hardElectrocute = new() { - Text = "admin-smite-creampie-name", + Text = hardElectrocuteName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Hands/Gloves/Color/yellow.rsi"), "icon"), Act = () => @@ -234,16 +240,17 @@ private void AddSmiteVerbs(GetVerbsEvent args) TimeSpan.FromSeconds(30), refresh: true, ignoreInsulation: true); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-electrocute-description") + Message = string.Join(": ", hardElectrocuteName, Loc.GetString("admin-smite-electrocute-description")) }; args.Verbs.Add(hardElectrocute); } if (TryComp(args.Target, out var creamPied)) { + var creamPieName = Loc.GetString("admin-smite-creampie-name").ToLowerInvariant(); Verb creamPie = new() { - Text = "admin-smite-remove-blood-name", + Text = creamPieName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Consumable/Food/Baked/pie.rsi"), "plain-slice"), Act = () => @@ -251,16 +258,17 @@ private void AddSmiteVerbs(GetVerbsEvent args) _creamPieSystem.SetCreamPied(args.Target, creamPied, true); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-creampie-description") + Message = string.Join(": ", creamPieName, Loc.GetString("admin-smite-creampie-description")) }; args.Verbs.Add(creamPie); } if (TryComp(args.Target, out var bloodstream)) { + var bloodRemovalName = Loc.GetString("admin-smite-remove-blood-name").ToLowerInvariant(); Verb bloodRemoval = new() { - Text = "admin-smite-vomit-organs-name", + Text = bloodRemovalName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Fluids/tomato_splat.rsi"), "puddle-1"), Act = () => @@ -273,7 +281,7 @@ private void AddSmiteVerbs(GetVerbsEvent args) Filter.PvsExcept(args.Target), true, PopupType.MediumCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-remove-blood-description") + Message = string.Join(": ", bloodRemovalName, Loc.GetString("admin-smite-remove-blood-description")) }; args.Verbs.Add(bloodRemoval); } @@ -281,9 +289,10 @@ private void AddSmiteVerbs(GetVerbsEvent args) // bobby... if (TryComp(args.Target, out var body)) { + var vomitOrgansName = Loc.GetString("admin-smite-vomit-organs-name").ToLowerInvariant(); Verb vomitOrgans = new() { - Text = "admin-smite-remove-hands-name", + Text = vomitOrgansName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new("/Textures/Fluids/vomit_toxin.rsi"), "vomit_toxin-1"), Act = () => @@ -305,13 +314,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) Filter.PvsExcept(args.Target), true, PopupType.MediumCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-vomit-organs-description") + Message = string.Join(": ", vomitOrgansName, Loc.GetString("admin-smite-vomit-organs-description")) }; args.Verbs.Add(vomitOrgans); + var handsRemovalName = Loc.GetString("admin-smite-remove-hands-name").ToLowerInvariant(); Verb handsRemoval = new() { - Text = "admin-smite-remove-hand-name", + Text = handsRemovalName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/remove-hands.png")), Act = () => @@ -327,13 +337,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) Filter.PvsExcept(args.Target), true, PopupType.Medium); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-remove-hands-description") + Message = string.Join(": ", handsRemovalName, Loc.GetString("admin-smite-remove-hands-description")) }; args.Verbs.Add(handsRemoval); + var handRemovalName = Loc.GetString("admin-smite-remove-hand-name").ToLowerInvariant(); Verb handRemoval = new() { - Text = "admin-smite-pinball-name", + Text = handRemovalName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/remove-hand.png")), Act = () => @@ -350,13 +361,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) Filter.PvsExcept(args.Target), true, PopupType.Medium); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-remove-hand-description") + Message = string.Join(": ", handRemovalName, Loc.GetString("admin-smite-remove-hand-description")) }; args.Verbs.Add(handRemoval); + var stomachRemovalName = Loc.GetString("admin-smite-stomach-removal-name").ToLowerInvariant(); Verb stomachRemoval = new() { - Text = "admin-smite-yeet-name", + Text = stomachRemovalName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Species/Human/organs.rsi"), "stomach"), Act = () => @@ -370,13 +382,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) args.Target, PopupType.LargeCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-stomach-removal-description"), + Message = string.Join(": ", stomachRemovalName, Loc.GetString("admin-smite-stomach-removal-description")) }; args.Verbs.Add(stomachRemoval); + var lungRemovalName = Loc.GetString("admin-smite-lung-removal-name").ToLowerInvariant(); Verb lungRemoval = new() { - Text = "admin-smite-become-bread-name", + Text = lungRemovalName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Species/Human/organs.rsi"), "lung-r"), Act = () => @@ -390,16 +403,17 @@ private void AddSmiteVerbs(GetVerbsEvent args) args.Target, PopupType.LargeCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-lung-removal-description"), + Message = string.Join(": ", lungRemovalName, Loc.GetString("admin-smite-lung-removal-description")) }; args.Verbs.Add(lungRemoval); } if (TryComp(args.Target, out var physics)) { + var pinballName = Loc.GetString("admin-smite-pinball-name").ToLowerInvariant(); Verb pinball = new() { - Text = "admin-smite-ghostkick-name", + Text = pinballName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/toys.rsi"), "basketball"), Act = () => @@ -427,13 +441,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _physics.SetAngularDamping(args.Target, physics, 0f); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-pinball-description") + Message = string.Join(": ", pinballName, Loc.GetString("admin-smite-pinball-description")) }; args.Verbs.Add(pinball); + var yeetName = Loc.GetString("admin-smite-yeet-name").ToLowerInvariant(); Verb yeet = new() { - Text = "admin-smite-nyanify-name", + Text = yeetName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/eject.svg.192dpi.png")), Act = () => @@ -457,11 +472,12 @@ private void AddSmiteVerbs(GetVerbsEvent args) _physics.SetAngularDamping(args.Target, physics, 0f); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-yeet-description") + Message = string.Join(": ", yeetName, Loc.GetString("admin-smite-yeet-description")) }; args.Verbs.Add(yeet); } + var breadName = Loc.GetString("admin-smite-become-bread-name").ToLowerInvariant(); // Will I get cancelled for breadName-ing you? Verb bread = new() { Text = "admin-smite-kill-sign-name", @@ -472,10 +488,11 @@ private void AddSmiteVerbs(GetVerbsEvent args) _polymorphSystem.PolymorphEntity(args.Target, "AdminBreadSmite"); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-become-bread-description") + Message = string.Join(": ", breadName, Loc.GetString("admin-smite-become-bread-description")) }; args.Verbs.Add(bread); + var mouseName = Loc.GetString("admin-smite-become-mouse-name").ToLowerInvariant(); Verb mouse = new() { Text = "admin-smite-cluwne-name", @@ -486,15 +503,16 @@ private void AddSmiteVerbs(GetVerbsEvent args) _polymorphSystem.PolymorphEntity(args.Target, "AdminMouseSmite"); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-become-mouse-description") + Message = string.Join(": ", mouseName, Loc.GetString("admin-smite-become-mouse-description")) }; args.Verbs.Add(mouse); if (TryComp(args.Target, out var actorComponent)) { + var ghostKickName = Loc.GetString("admin-smite-ghostkick-name").ToLowerInvariant(); Verb ghostKick = new() { - Text = "admin-smite-anger-pointing-arrows-name", + Text = ghostKickName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/gavel.svg.192dpi.png")), Act = () => @@ -502,15 +520,18 @@ private void AddSmiteVerbs(GetVerbsEvent args) _ghostKickManager.DoDisconnect(actorComponent.PlayerSession.Channel, "Smitten."); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-ghostkick-description") + Message = string.Join(": ", ghostKickName, Loc.GetString("admin-smite-ghostkick-description")) + }; args.Verbs.Add(ghostKick); } - if (TryComp(args.Target, out var inventory)) { + if (TryComp(args.Target, out var inventory)) + { + var nyanifyName = Loc.GetString("admin-smite-nyanify-name").ToLowerInvariant(); Verb nyanify = new() { - Text = "admin-smite-dust-name", + Text = nyanifyName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Head/Hats/catears.rsi"), "icon"), Act = () => @@ -521,13 +542,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _inventorySystem.TryEquip(args.Target, ears, "head", true, true, false, inventory); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-nyanify-description") + Message = string.Join(": ", nyanifyName, Loc.GetString("admin-smite-nyanify-description")) }; args.Verbs.Add(nyanify); + var killSignName = Loc.GetString("admin-smite-kill-sign-name").ToLowerInvariant(); Verb killSign = new() { - Text = "admin-smite-buffering-name", + Text = killSignName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Misc/killsign.rsi"), "icon"), Act = () => @@ -535,13 +557,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-kill-sign-description") + Message = string.Join(": ", killSignName, Loc.GetString("admin-smite-kill-sign-description")) }; args.Verbs.Add(killSign); + var cluwneName = Loc.GetString("admin-smite-cluwne-name").ToLowerInvariant(); Verb cluwne = new() { - Text = "admin-smite-become-instrument-name", + Text = cluwneName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Mask/cluwne.rsi"), "icon"), @@ -551,13 +574,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-cluwne-description") + Message = string.Join(": ", cluwneName, Loc.GetString("admin-smite-cluwne-description")) }; args.Verbs.Add(cluwne); + var maidenName = Loc.GetString("admin-smite-maid-name").ToLowerInvariant(); Verb maiden = new() { - Text = "admin-smite-remove-gravity-name", + Text = maidenName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Uniforms/Jumpskirt/janimaid.rsi"), "icon"), Act = () => @@ -570,14 +594,15 @@ private void AddSmiteVerbs(GetVerbsEvent args) }); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-maid-description") + Message = string.Join(": ", maidenName, Loc.GetString("admin-smite-maid-description")) }; args.Verbs.Add(maiden); } + var angerPointingArrowsName = Loc.GetString("admin-smite-anger-pointing-arrows-name").ToLowerInvariant(); Verb angerPointingArrows = new() { - Text = "admin-smite-reptilian-species-swap-name", + Text = angerPointingArrowsName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Interface/Misc/pointing.rsi"), "pointing"), Act = () => @@ -585,13 +610,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-anger-pointing-arrows-description") + Message = string.Join(": ", angerPointingArrowsName, Loc.GetString("admin-smite-anger-pointing-arrows-description")) }; args.Verbs.Add(angerPointingArrows); + var dustName = Loc.GetString("admin-smite-dust-name").ToLowerInvariant(); Verb dust = new() { - Text = "admin-smite-locker-stuff-name", + Text = dustName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Materials/materials.rsi"), "ash"), Act = () => @@ -601,13 +627,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _popupSystem.PopupEntity(Loc.GetString("admin-smite-turned-ash-other", ("name", args.Target)), args.Target, PopupType.LargeCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-dust-description"), + Message = string.Join(": ", dustName, Loc.GetString("admin-smite-dust-description")) }; args.Verbs.Add(dust); + var youtubeVideoSimulationName = Loc.GetString("admin-smite-buffering-name").ToLowerInvariant(); Verb youtubeVideoSimulation = new() { - Text = "admin-smite-headstand-name", + Text = youtubeVideoSimulationName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/Misc/buffering_smite_icon.png")), Act = () => @@ -615,10 +642,11 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-buffering-description"), + Message = string.Join(": ", youtubeVideoSimulationName, Loc.GetString("admin-smite-buffering-description")) }; args.Verbs.Add(youtubeVideoSimulation); + var instrumentationName = Loc.GetString("admin-smite-become-instrument-name").ToLowerInvariant(); Verb instrumentation = new() { Text = "admin-smite-become-mouse-name", @@ -629,13 +657,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _polymorphSystem.PolymorphEntity(args.Target, "AdminInstrumentSmite"); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-become-instrument-description"), + Message = string.Join(": ", instrumentationName, Loc.GetString("admin-smite-become-instrument-description")) }; args.Verbs.Add(instrumentation); + var noGravityName = Loc.GetString("admin-smite-remove-gravity-name").ToLowerInvariant(); Verb noGravity = new() { - Text = "admin-smite-maid-name", + Text = noGravityName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new("/Textures/Structures/Machines/gravity_generator.rsi"), "off"), Act = () => @@ -646,13 +675,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) Dirty(args.Target, grav); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-remove-gravity-description"), + Message = string.Join(": ", noGravityName, Loc.GetString("admin-smite-remove-gravity-description")) }; args.Verbs.Add(noGravity); + var reptilianName = Loc.GetString("admin-smite-reptilian-species-swap-name").ToLowerInvariant(); Verb reptilian = new() { - Text = "admin-smite-zoom-in-name", + Text = reptilianName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/toys.rsi"), "plushie_lizard"), Act = () => @@ -660,13 +690,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _polymorphSystem.PolymorphEntity(args.Target, "AdminLizardSmite"); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-reptilian-species-swap-description"), + Message = string.Join(": ", reptilianName, Loc.GetString("admin-smite-reptilian-species-swap-description")) }; args.Verbs.Add(reptilian); + var lockerName = Loc.GetString("admin-smite-locker-stuff-name").ToLowerInvariant(); Verb locker = new() { - Text = "admin-smite-flip-eye-name", + Text = lockerName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new ("/Textures/Structures/Storage/closet.rsi"), "generic"), Act = () => @@ -682,10 +713,11 @@ private void AddSmiteVerbs(GetVerbsEvent args) _weldableSystem.SetWeldedState(locker, true); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-locker-stuff-description"), + Message = string.Join(": ", lockerName, Loc.GetString("admin-smite-locker-stuff-description")) }; args.Verbs.Add(locker); + var headstandName = Loc.GetString("admin-smite-headstand-name").ToLowerInvariant(); Verb headstand = new() { Text = "admin-smite-run-walk-swap-name", @@ -696,13 +728,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-headstand-description"), + Message = string.Join(": ", headstandName, Loc.GetString("admin-smite-headstand-description")) }; args.Verbs.Add(headstand); + var zoomInName = Loc.GetString("admin-smite-zoom-in-name").ToLowerInvariant(); Verb zoomIn = new() { - Text = "admin-smite-super-speed-name", + Text = zoomInName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/zoom.png")), Act = () => @@ -711,13 +744,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _eyeSystem.SetZoom(args.Target, eye.TargetZoom * 0.2f, ignoreLimits: true); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-zoom-in-description"), + Message = string.Join(": ", zoomInName, Loc.GetString("admin-smite-zoom-in-description")) }; args.Verbs.Add(zoomIn); + var flipEyeName = Loc.GetString("admin-smite-flip-eye-name").ToLowerInvariant(); Verb flipEye = new() { - Text = "admin-smite-stomach-removal-name", + Text = flipEyeName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/flip.png")), Act = () => @@ -726,13 +760,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) _eyeSystem.SetZoom(args.Target, eye.TargetZoom * -1, ignoreLimits: true); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-flip-eye-description"), + Message = string.Join(": ", flipEyeName, Loc.GetString("admin-smite-flip-eye-description")) }; args.Verbs.Add(flipEye); + var runWalkSwapName = Loc.GetString("admin-smite-run-walk-swap-name").ToLowerInvariant(); Verb runWalkSwap = new() { - Text = "admin-smite-speak-backwards-name", + Text = runWalkSwapName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/run-walk-swap.png")), Act = () => @@ -746,13 +781,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) args.Target, PopupType.LargeCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-run-walk-swap-description"), + Message = string.Join(": ", runWalkSwapName, Loc.GetString("admin-smite-run-walk-swap-description")) }; args.Verbs.Add(runWalkSwap); + var backwardsAccentName = Loc.GetString("admin-smite-speak-backwards-name").ToLowerInvariant(); Verb backwardsAccent = new() { - Text = "admin-smite-lung-removal-name", + Text = backwardsAccentName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/help-backwards.png")), Act = () => @@ -760,13 +796,14 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-speak-backwards-description"), + Message = string.Join(": ", backwardsAccentName, Loc.GetString("admin-smite-speak-backwards-description")) }; args.Verbs.Add(backwardsAccent); + var disarmProneName = Loc.GetString("admin-smite-disarm-prone-name").ToLowerInvariant(); Verb disarmProne = new() { - Text = "admin-smite-disarm-prone-name", + Text = disarmProneName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/Actions/disarm.png")), Act = () => @@ -774,10 +811,11 @@ private void AddSmiteVerbs(GetVerbsEvent args) EnsureComp(args.Target); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-disarm-prone-description"), + Message = string.Join(": ", disarmProneName, Loc.GetString("admin-smite-disarm-prone-description")) }; args.Verbs.Add(disarmProne); + var superSpeedName = Loc.GetString("admin-smite-super-speed-name").ToLowerInvariant(); Verb superSpeed = new() { Text = "admin-smite-garbage-can-name", @@ -792,41 +830,45 @@ private void AddSmiteVerbs(GetVerbsEvent args) args.Target, PopupType.LargeCaution); }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-super-speed-description"), + Message = string.Join(": ", superSpeedName, Loc.GetString("admin-smite-super-speed-description")) }; args.Verbs.Add(superSpeed); //Bonk + var superBonkLiteName = Loc.GetString("admin-smite-super-bonk-lite-name").ToLowerInvariant(); Verb superBonkLite = new() { - Text = "admin-smite-super-bonk-name", + Text = superBonkLiteName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new("Structures/Furniture/Tables/glass.rsi"), "full"), Act = () => { _superBonkSystem.StartSuperBonk(args.Target, stopWhenDead: true); }, - Message = Loc.GetString("admin-smite-super-bonk-lite-description"), Impact = LogImpact.Extreme, + Message = string.Join(": ", superBonkLiteName, Loc.GetString("admin-smite-super-bonk-lite-description")) }; args.Verbs.Add(superBonkLite); + + var superBonkName = Loc.GetString("admin-smite-super-bonk-name").ToLowerInvariant(); Verb superBonk= new() { - Text = "admin-smite-super-bonk-lite-name", + Text = superBonkName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new("Structures/Furniture/Tables/generic.rsi"), "full"), Act = () => { _superBonkSystem.StartSuperBonk(args.Target); }, - Message = Loc.GetString("admin-smite-super-bonk-description"), Impact = LogImpact.Extreme, + Message = string.Join(": ", superBonkName, Loc.GetString("admin-smite-super-bonk-description")) }; args.Verbs.Add(superBonk); + var superslipName = Loc.GetString("admin-smite-super-slip-name").ToLowerInvariant(); Verb superslip = new() { - Text = "admin-smite-super-slip-name", + Text = superslipName, Category = VerbCategory.Smite, Icon = new SpriteSpecifier.Rsi(new("Objects/Specific/Janitorial/soap.rsi"), "omega-4"), Act = () => @@ -846,7 +888,7 @@ private void AddSmiteVerbs(GetVerbsEvent args) } }, Impact = LogImpact.Extreme, - Message = Loc.GetString("admin-smite-super-slip-description") + Message = string.Join(": ", superslipName, Loc.GetString("admin-smite-super-slip-description")) }; args.Verbs.Add(superslip); } diff --git a/Content.Server/Antag/AntagRandomObjectivesSystem.cs b/Content.Server/Antag/AntagRandomObjectivesSystem.cs index 8091c3d8857b96..079f2c3dc58a81 100644 --- a/Content.Server/Antag/AntagRandomObjectivesSystem.cs +++ b/Content.Server/Antag/AntagRandomObjectivesSystem.cs @@ -1,4 +1,5 @@ using Content.Server.Antag.Components; +using Content.Server.GameTicking.Rules.Components; using Content.Server.Objectives; using Content.Server.Traitor.Components; using Content.Shared.Mind; @@ -26,18 +27,16 @@ public override void Initialize() private void OnAntagSelected(Entity ent, ref AfterAntagEntitySelectedEvent args) { - if (!_mind.TryGetMind(args.Session, out var mindId, out var mind)) - { - Log.Error($"Antag {ToPrettyString(args.EntityUid):player} was selected by {ToPrettyString(ent):rule} but had no mind attached!"); + //ss220 reinforcement objective fix begin + if (!ent.Comp.Enabled) return; - } + //ss220 reinforcement objective fix end - //ss220 reinforcement objective fix start - if (TryComp(mind.OwnedEntity, out var autoTraitorComponent) && !autoTraitorComponent.GiveObjectives) + if (!_mind.TryGetMind(args.Session, out var mindId, out var mind)) { + Log.Error($"Antag {ToPrettyString(args.EntityUid):player} was selected by {ToPrettyString(ent):rule} but had no mind attached!"); return; } - //ss220 reinforcement objective fix end var difficulty = 0f; foreach (var set in ent.Comp.Sets) diff --git a/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs b/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs index 9a551acc499034..a9c11162622c69 100644 --- a/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs +++ b/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs @@ -21,6 +21,11 @@ public sealed partial class AntagRandomObjectivesComponent : Component /// [DataField(required: true)] public float MaxDifficulty; + + // SS220 reinforcement objective fix begin + [DataField] + public bool Enabled = true; + // SS220 reinforcement objective fix end } /// diff --git a/Content.Server/Body/Systems/BloodstreamSystem.cs b/Content.Server/Body/Systems/BloodstreamSystem.cs index 92b04ef812325d..198123cc5fd578 100644 --- a/Content.Server/Body/Systems/BloodstreamSystem.cs +++ b/Content.Server/Body/Systems/BloodstreamSystem.cs @@ -472,7 +472,7 @@ public void ChangeBloodReagent(EntityUid uid, string reagent, BloodstreamCompone return; } - var currentVolume = bloodSolution.RemoveReagent(component.BloodReagent, bloodSolution.Volume, null, true); //ss220 zombie blood fix + var currentVolume = bloodSolution.RemoveReagent(component.BloodReagent, bloodSolution.Volume, ignoreReagentData: true); component.BloodReagent = reagent; diff --git a/Content.Server/Botany/Components/PlantHolderComponent.cs b/Content.Server/Botany/Components/PlantHolderComponent.cs index 8218bead72cbae..f0661e4a301f8f 100644 --- a/Content.Server/Botany/Components/PlantHolderComponent.cs +++ b/Content.Server/Botany/Components/PlantHolderComponent.cs @@ -1,5 +1,6 @@ using Content.Shared.Chemistry.Components; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; +using Robust.Shared.Audio; namespace Content.Server.Botany.Components; @@ -23,6 +24,9 @@ public sealed partial class PlantHolderComponent : Component [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] public TimeSpan LastCycle = TimeSpan.Zero; + [DataField] + public SoundSpecifier? WateringSound; + [DataField] public bool UpdateSpriteAfterUpdate; diff --git a/Content.Server/Botany/Systems/PlantHolderSystem.cs b/Content.Server/Botany/Systems/PlantHolderSystem.cs index 1d5c894419225a..d9c63af58bf350 100644 --- a/Content.Server/Botany/Systems/PlantHolderSystem.cs +++ b/Content.Server/Botany/Systems/PlantHolderSystem.cs @@ -1,6 +1,5 @@ using Content.Server.Atmos.EntitySystems; using Content.Server.Botany.Components; -using Content.Server.Fluids.Components; using Content.Server.Kitchen.Components; using Content.Server.Popups; using Content.Shared.Chemistry.EntitySystems; @@ -18,7 +17,6 @@ using Content.Shared.Random; using Content.Shared.Tag; using Robust.Server.GameObjects; -using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; using Robust.Shared.Player; using Robust.Shared.Prototypes; @@ -37,7 +35,6 @@ public sealed class PlantHolderSystem : EntitySystem [Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly PopupSystem _popup = default!; [Dependency] private readonly IGameTiming _gameTiming = default!; - [Dependency] private readonly SharedPointLightSystem _pointLight = default!; [Dependency] private readonly SharedSolutionContainerSystem _solutionContainerSystem = default!; [Dependency] private readonly TagSystem _tagSystem = default!; [Dependency] private readonly RandomHelperSystem _randomHelper = default!; @@ -53,6 +50,7 @@ public override void Initialize() SubscribeLocalEvent(OnExamine); SubscribeLocalEvent(OnInteractUsing); SubscribeLocalEvent(OnInteractHand); + SubscribeLocalEvent(OnSolutionTransferred); } public override void Update(float frameTime) @@ -158,6 +156,7 @@ private void OnInteractUsing(Entity entity, ref InteractUs if (!_botany.TryGetSeed(seeds, out var seed)) return; + args.Handled = true; var name = Loc.GetString(seed.Name); var noun = Loc.GetString(seed.Noun); _popup.PopupCursor(Loc.GetString("plant-holder-component-plant-success-message", @@ -185,6 +184,7 @@ private void OnInteractUsing(Entity entity, ref InteractUs return; } + args.Handled = true; _popup.PopupCursor(Loc.GetString("plant-holder-component-already-seeded-message", ("name", Comp(uid).EntityName)), args.User, PopupType.Medium); return; @@ -192,6 +192,7 @@ private void OnInteractUsing(Entity entity, ref InteractUs if (_tagSystem.HasTag(args.Used, "Hoe")) { + args.Handled = true; if (component.WeedLevel > 0) { _popup.PopupCursor(Loc.GetString("plant-holder-component-remove-weeds-message", @@ -211,6 +212,7 @@ private void OnInteractUsing(Entity entity, ref InteractUs if (HasComp(args.Used)) { + args.Handled = true; if (component.Seed != null) { _popup.PopupCursor(Loc.GetString("plant-holder-component-remove-plant-message", @@ -228,39 +230,9 @@ private void OnInteractUsing(Entity entity, ref InteractUs return; } - if (_solutionContainerSystem.TryGetDrainableSolution(args.Used, out var solution, out _) - && _solutionContainerSystem.ResolveSolution(uid, component.SoilSolutionName, ref component.SoilSolution) - && TryComp(args.Used, out SprayComponent? spray)) - { - var amount = FixedPoint2.New(1); - - var targetEntity = uid; - var solutionEntity = args.Used; - - _audio.PlayPvs(spray.SpraySound, args.Used, AudioParams.Default.WithVariation(0.125f)); - - var split = _solutionContainerSystem.Drain(solutionEntity, solution.Value, amount); - - if (split.Volume == 0) - { - _popup.PopupCursor(Loc.GetString("plant-holder-component-no-plant-message", - ("owner", args.Used)), args.User); - return; - } - - _popup.PopupCursor(Loc.GetString("plant-holder-component-spray-message", - ("owner", uid), - ("amount", split.Volume)), args.User, PopupType.Medium); - - _solutionContainerSystem.TryAddSolution(component.SoilSolution.Value, split); - - ForceUpdateByExternalCause(uid, component); - - return; - } - if (_tagSystem.HasTag(args.Used, "PlantSampleTaker")) { + args.Handled = true; if (component.Seed == null) { _popup.PopupCursor(Loc.GetString("plant-holder-component-nothing-to-sample-message"), args.User); @@ -316,10 +288,15 @@ private void OnInteractUsing(Entity entity, ref InteractUs } if (HasComp(args.Used)) + { + args.Handled = true; DoHarvest(uid, args.User, component); + return; + } if (TryComp(args.Used, out var produce)) { + args.Handled = true; _popup.PopupCursor(Loc.GetString("plant-holder-component-compost-message", ("owner", uid), ("usingItem", args.Used)), args.User, PopupType.Medium); @@ -351,6 +328,10 @@ private void OnInteractUsing(Entity entity, ref InteractUs } } + private void OnSolutionTransferred(Entity ent, ref SolutionTransferredEvent args) + { + _audio.PlayPvs(ent.Comp.WateringSound, ent.Owner); + } private void OnInteractHand(Entity entity, ref InteractHandEvent args) { DoHarvest(entity, args.User, entity.Comp); diff --git a/Content.Server/Chat/Managers/ChatSanitizationManager.cs b/Content.Server/Chat/Managers/ChatSanitizationManager.cs index 2de9cc18b81f48..7d12c54ee84967 100644 --- a/Content.Server/Chat/Managers/ChatSanitizationManager.cs +++ b/Content.Server/Chat/Managers/ChatSanitizationManager.cs @@ -1,5 +1,4 @@ using System.Diagnostics.CodeAnalysis; -using System.Globalization; using System.Linq; using System.Text.RegularExpressions; using Content.Shared.CCVar; @@ -7,11 +6,14 @@ namespace Content.Server.Chat.Managers; +/// +/// Sanitizes messages! +/// It currently ony removes the shorthands for emotes (like "lol" or "^-^") from a chat message and returns the last +/// emote in their message +/// public sealed class ChatSanitizationManager : IChatSanitizationManager { - [Dependency] private readonly IConfigurationManager _configurationManager = default!; - - private static readonly Dictionary SmileyToEmote = new() + private static readonly Dictionary ShorthandToEmote = new() { // SS220 Fard emote :DD { "пук", "chatsan-farts" }, @@ -93,7 +95,7 @@ public sealed class ChatSanitizationManager : IChatSanitizationManager { "kek", "chatsan-laughs" }, { "rofl", "chatsan-laughs" }, { "o7", "chatsan-salutes" }, - { ";_;7", "chatsan-tearfully-salutes"}, + { ";_;7", "chatsan-tearfully-salutes" }, { "idk", "chatsan-shrugs" }, { ";)", "chatsan-winks" }, { ";]", "chatsan-winks" }, @@ -106,9 +108,12 @@ public sealed class ChatSanitizationManager : IChatSanitizationManager { "(':", "chatsan-tearfully-smiles" }, { "[':", "chatsan-tearfully-smiles" }, { "('=", "chatsan-tearfully-smiles" }, - { "['=", "chatsan-tearfully-smiles" }, + { "['=", "chatsan-tearfully-smiles" } }; + [Dependency] private readonly IConfigurationManager _configurationManager = default!; + [Dependency] private readonly ILocalizationManager _loc = default!; + private bool _doSanitize; public void Initialize() @@ -116,28 +121,60 @@ public void Initialize() _configurationManager.OnValueChanged(CCVars.ChatSanitizerEnabled, x => _doSanitize = x, true); } - public bool TrySanitizeOutSmilies(string input, EntityUid speaker, out string sanitized, [NotNullWhen(true)] out string? emote) + /// + /// Remove the shorthands from the message, returning the last one found as the emote + /// + /// The pre-sanitized message + /// The speaker + /// The sanitized message with shorthands removed + /// The localized emote + /// True if emote has been sanitized out + public bool TrySanitizeEmoteShorthands(string message, + EntityUid speaker, + out string sanitized, + [NotNullWhen(true)] out string? emote) { - input = input.TrimEnd(); - sanitized = input; emote = null; + sanitized = message; if (!_doSanitize) return false; - var emoteSanitized = false; + // -1 is just a canary for nothing found yet + var lastEmoteIndex = -1; - foreach (var (smiley, replacement) in SmileyToEmote) + foreach (var (shorthand, emoteKey) in ShorthandToEmote) { - if (input.EndsWith(smiley, true, CultureInfo.InvariantCulture)) + // We have to escape it because shorthands like ":)" or "-_-" would break the regex otherwise. + var escaped = Regex.Escape(shorthand); + + // So there are 2 cases: + // - If there is whitespace before it and after it is either punctuation, whitespace, or the end of the line + // Delete the word and the whitespace before + // - If it is at the start of the string and is followed by punctuation, whitespace, or the end of the line + // Delete the word and the punctuation if it exists. + var pattern = + $@"\s{escaped}(?=\p{{P}}|\s|$)|^{escaped}(?:\p{{P}}|(?=\s|$))"; + + var r = new Regex(pattern, RegexOptions.RightToLeft | RegexOptions.IgnoreCase); + + // We're using sanitized as the original message until the end so that we can make sure the indices of + // the emotes are accurate. + var lastMatch = r.Match(sanitized); + + if (!lastMatch.Success) + continue; + + if (lastMatch.Index > lastEmoteIndex) { - sanitized = input.Remove(input.Length - smiley.Length).TrimEnd(); - emote = Loc.GetString(replacement, ("ent", speaker)); - emoteSanitized = true; - break; + lastEmoteIndex = lastMatch.Index; + emote = _loc.GetString(emoteKey, ("ent", speaker)); } + + message = r.Replace(message, string.Empty); } + // SS220 no English begin var ntAllowed = sanitized.Replace("NanoTrasen", string.Empty, StringComparison.OrdinalIgnoreCase); ntAllowed = ntAllowed.Replace("nt", string.Empty, StringComparison.OrdinalIgnoreCase); @@ -148,7 +185,9 @@ public bool TrySanitizeOutSmilies(string input, EntityUid speaker, out string sa emote = "кашляет"; return true; } + // SS220 no English end - return emoteSanitized; + sanitized = message.Trim(); + return emote is not null; } } diff --git a/Content.Server/Chat/Managers/IChatSanitizationManager.cs b/Content.Server/Chat/Managers/IChatSanitizationManager.cs index c067cf02ee78ab..ac85d4b4a7a5f5 100644 --- a/Content.Server/Chat/Managers/IChatSanitizationManager.cs +++ b/Content.Server/Chat/Managers/IChatSanitizationManager.cs @@ -6,5 +6,8 @@ public interface IChatSanitizationManager { public void Initialize(); - public bool TrySanitizeOutSmilies(string input, EntityUid speaker, out string sanitized, [NotNullWhen(true)] out string? emote); + public bool TrySanitizeEmoteShorthands(string input, + EntityUid speaker, + out string sanitized, + [NotNullWhen(true)] out string? emote); } diff --git a/Content.Server/Chat/Systems/ChatSystem.cs b/Content.Server/Chat/Systems/ChatSystem.cs index f4ded23330250f..5e980803a75e03 100644 --- a/Content.Server/Chat/Systems/ChatSystem.cs +++ b/Content.Server/Chat/Systems/ChatSystem.cs @@ -809,6 +809,9 @@ private string SanitizeInGameICMessage(EntityUid source, string message, out str newMessage = ReplaceWords(newMessage); // Corvax-ChatSanitize newMessage = SanitizeMessageReplaceWords(newMessage); + // Sanitize it first as it might change the word order + _sanitizer.TrySanitizeEmoteShorthands(newMessage, source, out newMessage, out emoteStr); + if (capitalize) newMessage = SanitizeMessageCapital(newMessage); if (capitalizeTheWordI) @@ -816,8 +819,6 @@ private string SanitizeInGameICMessage(EntityUid source, string message, out str if (punctuate) newMessage = SanitizeMessagePeriod(newMessage); - _sanitizer.TrySanitizeOutSmilies(newMessage, source, out newMessage, out emoteStr); - return newMessage; } diff --git a/Content.Server/Corvax/HiddenDescription/HiddenDescriptionSystem.cs b/Content.Server/Corvax/HiddenDescription/HiddenDescriptionSystem.cs index ca9ef54cec93c5..a822e55720ad75 100644 --- a/Content.Server/Corvax/HiddenDescription/HiddenDescriptionSystem.cs +++ b/Content.Server/Corvax/HiddenDescription/HiddenDescriptionSystem.cs @@ -10,7 +10,8 @@ public sealed partial class HiddenDescriptionSystem : EntitySystem { [Dependency] private readonly MindSystem _mind = default!; - [Dependency] private readonly EntityWhitelistSystem _whitelist = default!; //SS220 + [Dependency] private readonly EntityWhitelistSystem _whitelis = default!; + [Dependency] private readonly SharedRoleSystem _roles = default!; public override void Initialize() { @@ -22,13 +23,18 @@ public override void Initialize() private void OnExamine(Entity hiddenDesc, ref ExaminedEvent args) { _mind.TryGetMind(args.Examiner, out var mindId, out var mindComponent); - _mind.TryGetRole(args.Examiner, out var role); foreach (var item in hiddenDesc.Comp.Entries) { - var isJobAllow = role?.JobPrototype != null && item.JobRequired.Contains(role.JobPrototype.Value); - var isMindWhitelistPassed = _whitelist.IsValid(item.WhitelistMind, mindId); - var isBodyWhitelistPassed = _whitelist.IsValid(item.WhitelistMind, args.Examiner); + var isJobAllow = false; + if (_roles.MindHasRole((mindId, mindComponent), out var jobRole)) + { + isJobAllow = jobRole.Value.Comp1.JobPrototype != null && + item.JobRequired.Contains(jobRole.Value.Comp1.JobPrototype.Value); + } + + var isMindWhitelistPassed = _whitelis.IsValid(item.WhitelistMind, mindId); + var isBodyWhitelistPassed = _whitelis.IsValid(item.WhitelistMind, args.Examiner); var passed = item.NeedAllCheck ? isMindWhitelistPassed && isBodyWhitelistPassed && isJobAllow : isMindWhitelistPassed || isBodyWhitelistPassed || isJobAllow; diff --git a/Content.Server/Database/ServerDbBase.cs b/Content.Server/Database/ServerDbBase.cs index 702800a5f2549e..0ebaea23f36506 100644 --- a/Content.Server/Database/ServerDbBase.cs +++ b/Content.Server/Database/ServerDbBase.cs @@ -883,10 +883,41 @@ public async Task UpdateAdminRankAsync(AdminRank rank, CancellationToken cancel) public async Task AddAdminLogs(List logs) { + const int maxRetryAttempts = 5; + var initialRetryDelay = TimeSpan.FromSeconds(5); + DebugTools.Assert(logs.All(x => x.RoundId > 0), "Adding logs with invalid round ids."); - await using var db = await GetDb(); - db.DbContext.AdminLog.AddRange(logs); - await db.DbContext.SaveChangesAsync(); + + var attempt = 0; + var retryDelay = initialRetryDelay; + + while (attempt < maxRetryAttempts) + { + try + { + await using var db = await GetDb(); + db.DbContext.AdminLog.AddRange(logs); + await db.DbContext.SaveChangesAsync(); + _opsLog.Debug($"Successfully saved {logs.Count} admin logs."); + break; + } + catch (Exception ex) + { + attempt += 1; + _opsLog.Error($"Attempt {attempt} failed to save logs: {ex}"); + + if (attempt >= maxRetryAttempts) + { + _opsLog.Error($"Max retry attempts reached. Failed to save {logs.Count} admin logs."); + return; + } + + _opsLog.Warning($"Retrying in {retryDelay.TotalSeconds} seconds..."); + await Task.Delay(retryDelay); + + retryDelay *= 2; + } + } } protected abstract IQueryable StartAdminLogsQuery(ServerDbContext db, LogFilter? filter = null); diff --git a/Content.Server/GameTicking/Rules/Components/TraitorRuleComponent.cs b/Content.Server/GameTicking/Rules/Components/TraitorRuleComponent.cs index 62f92963aa7b5d..6f82aa042f01d3 100644 --- a/Content.Server/GameTicking/Rules/Components/TraitorRuleComponent.cs +++ b/Content.Server/GameTicking/Rules/Components/TraitorRuleComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.Dataset; +using Content.Shared.FixedPoint; using Content.Shared.NPC.Prototypes; using Content.Shared.Random; using Content.Shared.Roles; @@ -31,6 +32,24 @@ public sealed partial class TraitorRuleComponent : Component [DataField] public ProtoId ObjectiveIssuers = "TraitorCorporations"; + /// + /// Give this traitor an Uplink on spawn. + /// + [DataField] + public bool GiveUplink = true; + + /// + /// Give this traitor the codewords. + /// + [DataField] + public bool GiveCodewords = true; + + /// + /// Give this traitor a briefing in chat. + /// + [DataField] + public bool GiveBriefing = true; + public int TotalTraitors => TraitorMinds.Count; public string[] Codewords = new string[3]; @@ -68,5 +87,5 @@ public enum SelectionState /// The amount of TC traitors start with. /// [DataField] - public int StartingBalance = 20; + public FixedPoint2 StartingBalance = 20; } diff --git a/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs b/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs index 1213616c72a366..09dae7f4bc2b06 100644 --- a/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs +++ b/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs @@ -7,6 +7,7 @@ using Content.Server.Roles; using Content.Server.Traitor.Uplink; using Content.Shared.Database; +using Content.Shared.FixedPoint; using Content.Shared.GameTicking.Components; using Content.Shared.Mind; using Content.Shared.NPC.Systems; @@ -18,8 +19,6 @@ using Robust.Shared.Random; using System.Linq; using System.Text; -using Content.Shared.GameTicking.Components; -using Content.Server.SS220.MindSlave; namespace Content.Server.GameTicking.Rules; @@ -92,41 +91,46 @@ public string[] GenerateTraitorCodewords(TraitorRuleComponent component) return codewords; } - public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component, bool giveUplink = true, bool giveObjectives = true) + public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) { //Grab the mind if it wasn't provided if (!_mindSystem.TryGetMind(traitor, out var mindId, out var mind)) return false; - var briefing = Loc.GetString("traitor-role-codewords-short", ("codewords", string.Join(", ", component.Codewords))); + var briefing = ""; + + if (component.GiveCodewords) + briefing = Loc.GetString("traitor-role-codewords-short", ("codewords", string.Join(", ", component.Codewords))); + var issuer = _random.Pick(_prototypeManager.Index(component.ObjectiveIssuers).Values); + // Uplink code will go here if applicable, but we still need the variable if there aren't any Note[]? code = null; - if (giveUplink) + + if (component.GiveUplink) { // Calculate the amount of currency on the uplink. var startingBalance = component.StartingBalance; if (_jobs.MindTryGetJob(mindId, out var prototype)) - startingBalance = Math.Max(startingBalance - prototype.AntagAdvantage, 0); - - // creadth: we need to create uplink for the antag. - // PDA should be in place already - var pda = _uplink.FindUplinkTarget(traitor); - - //ss220 fix no codewords for traitor w/o pda start - if (pda != null && _uplink.AddUplink(traitor, startingBalance, giveDiscounts: true)) { - // Give traitors their codewords and uplink code to keep in their character info menu - code = EnsureComp(pda.Value).Code; - - // If giveUplink is false the uplink code part is omitted - briefing = string.Format("{0}\n{1}", briefing, - Loc.GetString("traitor-role-uplink-code-short", ("code", string.Join("-", code).Replace("sharp", "#")))); + if (startingBalance < prototype.AntagAdvantage) // Can't use Math functions on FixedPoint2 + startingBalance = 0; + else + startingBalance = startingBalance - prototype.AntagAdvantage; } - //ss220 fix no codewords for traitor w/o pda end + + // Choose and generate an Uplink, and return the uplink code if applicable + var uplinkParams = RequestUplink(traitor, startingBalance, briefing); + code = uplinkParams.Item1; + briefing = uplinkParams.Item2; } - _antag.SendBriefing(traitor, GenerateBriefing(component.Codewords, code, issuer), null, component.GreetSoundNotification); + string[]? codewords = null; + if (component.GiveCodewords) + codewords = component.Codewords; + + if (component.GiveBriefing) + _antag.SendBriefing(traitor, GenerateBriefing(codewords, code, issuer), null, component.GreetSoundNotification); component.TraitorMinds.Add(mindId); @@ -154,19 +158,50 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component, bool return true; } + private (Note[]?, string) RequestUplink(EntityUid traitor, FixedPoint2 startingBalance, string briefing) + { + var pda = _uplink.FindUplinkTarget(traitor); + Note[]? code = null; + + var uplinked = _uplink.AddUplink(traitor, startingBalance, pda, true); + + if (pda is not null && uplinked) + { + // Codes are only generated if the uplink is a PDA + code = EnsureComp(pda.Value).Code; + + // If giveUplink is false the uplink code part is omitted + briefing = string.Format("{0}\n{1}", + briefing, + Loc.GetString("traitor-role-uplink-code-short", ("code", string.Join("-", code).Replace("sharp", "#")))); + return (code, briefing); + } + else if (pda is null && uplinked) + { + briefing += "\n" + Loc.GetString("traitor-role-uplink-implant-short"); + } + + return (null, briefing); + } + + // TODO: AntagCodewordsComponent private void OnObjectivesTextPrepend(EntityUid uid, TraitorRuleComponent comp, ref ObjectivesTextPrependEvent args) { args.Text += "\n" + Loc.GetString("traitor-round-end-codewords", ("codewords", string.Join(", ", comp.Codewords))); } // TODO: figure out how to handle this? add priority to briefing event? - private string GenerateBriefing(string[] codewords, Note[]? uplinkCode, string? objectiveIssuer = null) + private string GenerateBriefing(string[]? codewords, Note[]? uplinkCode, string? objectiveIssuer = null) { var sb = new StringBuilder(); sb.AppendLine(Loc.GetString("traitor-role-greeting", ("corporation", objectiveIssuer ?? Loc.GetString("objective-issuer-unknown")))); - sb.AppendLine(Loc.GetString("traitor-role-codewords", ("codewords", string.Join(", ", codewords)))); + if (codewords != null) + sb.AppendLine(Loc.GetString("traitor-role-codewords", ("codewords", string.Join(", ", codewords)))); if (uplinkCode != null) sb.AppendLine(Loc.GetString("traitor-role-uplink-code", ("code", string.Join("-", uplinkCode).Replace("sharp", "#")))); + else + sb.AppendLine(Loc.GetString("traitor-role-uplink-implant")); + return sb.ToString(); } diff --git a/Content.Server/Holosign/HolosignSystem.cs b/Content.Server/Holosign/HolosignSystem.cs index a36603b01dd3d0..b63a5459898316 100644 --- a/Content.Server/Holosign/HolosignSystem.cs +++ b/Content.Server/Holosign/HolosignSystem.cs @@ -45,7 +45,7 @@ private void OnBeforeInteract(EntityUid uid, HolosignProjectorComponent componen if (args.Handled || !args.CanReach // prevent placing out of range || HasComp(args.Target) // if it's a storage component like a bag, we ignore usage so it can be stored - || !_powerCell.TryUseCharge(uid, component.ChargeUse) // if no battery or no charge, doesn't work + || !_powerCell.TryUseCharge(uid, component.ChargeUse, user: args.User) // if no battery or no charge, doesn't work ) return; diff --git a/Content.Server/Ninja/Systems/SpiderChargeSystem.cs b/Content.Server/Ninja/Systems/SpiderChargeSystem.cs index c916d568d5f1df..6594d7883bcf81 100644 --- a/Content.Server/Ninja/Systems/SpiderChargeSystem.cs +++ b/Content.Server/Ninja/Systems/SpiderChargeSystem.cs @@ -1,14 +1,12 @@ using Content.Server.Explosion.EntitySystems; -using Content.Server.GameTicking.Rules.Components; using Content.Server.Mind; using Content.Server.Objectives.Components; using Content.Server.Popups; using Content.Server.Roles; -using Content.Shared.Interaction; using Content.Shared.Ninja.Components; using Content.Shared.Ninja.Systems; +using Content.Shared.Roles; using Content.Shared.Sticky; -using Robust.Shared.GameObjects; namespace Content.Server.Ninja.Systems; @@ -19,6 +17,7 @@ public sealed class SpiderChargeSystem : SharedSpiderChargeSystem { [Dependency] private readonly MindSystem _mind = default!; [Dependency] private readonly PopupSystem _popup = default!; + [Dependency] private readonly SharedRoleSystem _role = default!; [Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly SpaceNinjaSystem _ninja = default!; @@ -41,7 +40,10 @@ private void OnAttemptStick(EntityUid uid, SpiderChargeComponent comp, ref Attem var user = args.User; - if (!_mind.TryGetRole(user, out var _)) + if (!_mind.TryGetMind(args.User, out var mind, out _)) + return; + + if (!_role.MindHasRole(mind)) { _popup.PopupEntity(Loc.GetString("spider-charge-not-ninja"), user, user); args.Cancelled = true; diff --git a/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs b/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs index e3df3cb9162285..126fb599020f8a 100644 --- a/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs +++ b/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs @@ -334,7 +334,7 @@ private void OnDoAfter(Entity entity, ref ConsumeDoAfterEvent ar _adminLogger.Add(LogType.Ingestion, LogImpact.Low, $"{ToPrettyString(args.User):target} drank {ToPrettyString(entity.Owner):drink}"); } - _audio.PlayPvs(entity.Comp.UseSound, args.Target.Value, AudioParams.Default.WithVolume(-2f)); + _audio.PlayPvs(entity.Comp.UseSound, args.Target.Value, AudioParams.Default.WithVolume(-2f).WithVariation(0.25f)); _reaction.DoEntityReaction(args.Target.Value, solution, ReactionMethod.Ingestion); _stomach.TryTransferSolution(firstStomach.Value.Owner, drained, firstStomach.Value.Comp1); diff --git a/Content.Server/Nutrition/EntitySystems/FoodSystem.cs b/Content.Server/Nutrition/EntitySystems/FoodSystem.cs index d7daf632d661c8..158c7f4955c5ad 100644 --- a/Content.Server/Nutrition/EntitySystems/FoodSystem.cs +++ b/Content.Server/Nutrition/EntitySystems/FoodSystem.cs @@ -296,7 +296,7 @@ private void OnDoAfter(Entity entity, ref ConsumeDoAfterEvent arg _adminLogger.Add(LogType.Ingestion, LogImpact.Low, $"{ToPrettyString(args.User):target} ate {ToPrettyString(entity.Owner):food}"); } - _audio.PlayPvs(entity.Comp.UseSound, args.Target.Value, AudioParams.Default.WithVolume(-1f)); + _audio.PlayPvs(entity.Comp.UseSound, args.Target.Value, AudioParams.Default.WithVolume(-1f).WithVariation(0.20f)); // Try to break all used utensils foreach (var utensil in utensils) diff --git a/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs b/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs index b4de15f2b9a6cc..8dcbf191b36632 100644 --- a/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs +++ b/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs @@ -1,9 +1,9 @@ using Content.Server.Objectives.Components; +using Content.Server.Revolutionary.Components; using Content.Server.Shuttles.Systems; using Content.Shared.CCVar; using Content.Shared.Mind; using Content.Shared.Objectives.Components; -using Content.Shared.Roles.Jobs; using Robust.Shared.Configuration; using Robust.Shared.Random; @@ -17,7 +17,6 @@ public sealed class KillPersonConditionSystem : EntitySystem [Dependency] private readonly EmergencyShuttleSystem _emergencyShuttle = default!; [Dependency] private readonly IConfigurationManager _config = default!; [Dependency] private readonly IRobustRandom _random = default!; - [Dependency] private readonly SharedJobSystem _job = default!; [Dependency] private readonly SharedMindSystem _mind = default!; [Dependency] private readonly TargetObjectiveSystem _target = default!; @@ -86,11 +85,10 @@ private void OnHeadAssigned(EntityUid uid, PickRandomHeadComponent comp, ref Obj } var allHeads = new List(); - foreach (var mind in allHumans) + foreach (var person in allHumans) { - // RequireAdminNotify used as a cheap way to check for command department - if (_job.MindTryGetJob(mind, out var prototype) && prototype.RequireAdminNotify) - allHeads.Add(mind); + if (TryComp(person, out var mind) && mind.OwnedEntity is { } ent && HasComp(ent)) + allHeads.Add(person); } if (allHeads.Count == 0) diff --git a/Content.Server/Objectives/Systems/NotCommandRequirementSystem.cs b/Content.Server/Objectives/Systems/NotCommandRequirementSystem.cs index 50d747c1a2a022..0808dc5bcfdcf4 100644 --- a/Content.Server/Objectives/Systems/NotCommandRequirementSystem.cs +++ b/Content.Server/Objectives/Systems/NotCommandRequirementSystem.cs @@ -1,13 +1,11 @@ using Content.Server.Objectives.Components; +using Content.Server.Revolutionary.Components; using Content.Shared.Objectives.Components; -using Content.Shared.Roles.Jobs; namespace Content.Server.Objectives.Systems; public sealed class NotCommandRequirementSystem : EntitySystem { - [Dependency] private readonly SharedJobSystem _job = default!; - public override void Initialize() { base.Initialize(); @@ -20,8 +18,7 @@ private void OnCheck(EntityUid uid, NotCommandRequirementComponent comp, ref Req if (args.Cancelled) return; - // cheap equivalent to checking that job department is command, since all command members require admin notification when leaving - if (_job.MindTryGetJob(args.MindId, out var prototype) && prototype.RequireAdminNotify) + if (args.Mind.OwnedEntity is { } ent && HasComp(ent)) args.Cancelled = true; } } diff --git a/Content.Server/Revolutionary/Components/CommandStaffComponent.cs b/Content.Server/Revolutionary/Components/CommandStaffComponent.cs index dc16b87300e5f1..79349b25da7bd3 100644 --- a/Content.Server/Revolutionary/Components/CommandStaffComponent.cs +++ b/Content.Server/Revolutionary/Components/CommandStaffComponent.cs @@ -1,11 +1,9 @@ -using Content.Server.GameTicking.Rules; - namespace Content.Server.Revolutionary.Components; /// -/// Given to heads at round start for Revs. Used for tracking if heads died or not. +/// Given to heads at round start. Used for assigning traitors to kill heads and for revs to check if the heads died or not. /// -[RegisterComponent, Access(typeof(RevolutionaryRuleSystem))] +[RegisterComponent] public sealed partial class CommandStaffComponent : Component { diff --git a/Content.Server/Shuttles/Commands/FTLDiskCommand.cs b/Content.Server/Shuttles/Commands/FTLDiskCommand.cs new file mode 100644 index 00000000000000..b17c7c11a716df --- /dev/null +++ b/Content.Server/Shuttles/Commands/FTLDiskCommand.cs @@ -0,0 +1,183 @@ +using Content.Server.Administration; +using Content.Server.Labels; +using Content.Shared.Administration; +using Content.Shared.Hands.Components; +using Content.Shared.Hands.EntitySystems; +using Content.Shared.Shuttles.Components; +using Content.Shared.Storage; +using Content.Shared.Storage.EntitySystems; +using Robust.Shared.Console; +using Robust.Shared.Map.Components; +using Robust.Shared.Prototypes; +using Robust.Shared.Utility; + +namespace Content.Server.Shuttles.Commands; + +/// +/// Creates FTL disks, to maps, grids, or entities. +/// +[AdminCommand(AdminFlags.Fun)] + +public sealed class FTLDiskCommand : LocalizedCommands +{ + [Dependency] private readonly IEntityManager _entManager = default!; + [Dependency] private readonly IEntitySystemManager _entSystemManager = default!; + + public override string Command => "ftldisk"; + + [ValidatePrototypeId] + public const string CoordinatesDisk = "CoordinatesDisk"; + + [ValidatePrototypeId] + public const string DiskCase = "DiskCase"; + public override void Execute(IConsoleShell shell, string argStr, string[] args) + { + if (args.Length == 0) + { + shell.WriteError(Loc.GetString("shell-need-minimum-one-argument")); + return; + } + + var player = shell.Player; + + if (player == null) + { + shell.WriteLine(Loc.GetString("shell-only-players-can-run-this-command")); + return; + } + + if (player.AttachedEntity == null) + { + shell.WriteLine(Loc.GetString("shell-must-be-attached-to-entity")); + return; + } + + EntityUid entity = player.AttachedEntity.Value; + var coords = _entManager.GetComponent(entity).Coordinates; + + var handsSystem = _entSystemManager.GetEntitySystem(); + var labelSystem = _entSystemManager.GetEntitySystem(); + var mapSystem = _entSystemManager.GetEntitySystem(); + var storageSystem = _entSystemManager.GetEntitySystem(); + + foreach (var destinations in args) + { + DebugTools.AssertNotNull(destinations); + + // make sure destination is an id. + EntityUid dest; + + if (_entManager.TryParseNetEntity(destinations, out var nullableDest)) + { + DebugTools.AssertNotNull(nullableDest); + + dest = (EntityUid) nullableDest; + + // we need to go to a map, so check if the EntID is something else then try for its map + if (!_entManager.HasComponent(dest)) + { + if (!_entManager.TryGetComponent(dest, out var entTransform)) + { + shell.WriteLine(Loc.GetString("cmd-ftldisk-no-transform", ("destination", destinations))); + continue; + } + + if (!mapSystem.TryGetMap(entTransform.MapID, out var mapDest)) + { + shell.WriteLine(Loc.GetString("cmd-ftldisk-no-map", ("destination", destinations))); + continue; + } + + DebugTools.AssertNotNull(mapDest); + dest = mapDest!.Value; // explicit cast here should be fine since the previous if should catch it. + } + + // find and verify the map is not somehow unusable. + if (!_entManager.TryGetComponent(dest, out var mapComp)) // We have to check for a MapComponent here and above since we could have changed our dest entity. + { + shell.WriteLine(Loc.GetString("cmd-ftldisk-no-map-comp", ("destination", destinations), ("map", dest))); + continue; + } + if (mapComp.MapInitialized == false) + { + shell.WriteLine(Loc.GetString("cmd-ftldisk-map-not-init", ("destination", destinations), ("map", dest))); + continue; + } + if (mapComp.MapPaused == true) + { + shell.WriteLine(Loc.GetString("cmd-ftldisk-map-paused", ("destination", destinations), ("map", dest))); + continue; + } + + // check if our destination works already, if not, make it. + if (!_entManager.TryGetComponent(dest, out var ftlDestComp)) + { + FTLDestinationComponent ftlDest = _entManager.AddComponent(dest); + ftlDest.RequireCoordinateDisk = true; + + if (_entManager.HasComponent(dest)) + { + ftlDest.BeaconsOnly = true; + + shell.WriteLine(Loc.GetString("cmd-ftldisk-planet", ("destination", destinations), ("map", dest))); + } + } + else + { + // we don't do these automatically, since it isn't clear what the correct resolution is. Instead we provide feedback to the user and carry on like they know what theyre doing. + if (ftlDestComp.Enabled == false) + shell.WriteLine(Loc.GetString("cmd-ftldisk-already-dest-not-enabled", ("destination", destinations), ("map", dest))); + + if (ftlDestComp.BeaconsOnly == true) + shell.WriteLine(Loc.GetString("cmd-ftldisk-requires-ftl-point", ("destination", destinations), ("map", dest))); + } + + // create the FTL disk + EntityUid cdUid = _entManager.SpawnEntity(CoordinatesDisk, coords); + var cd = _entManager.EnsureComponent(cdUid); + cd.Destination = dest; + _entManager.Dirty(cdUid, cd); + + // create disk case + EntityUid cdCaseUid = _entManager.SpawnEntity(DiskCase, coords); + + // apply labels + if (_entManager.TryGetComponent(dest, out var meta) && meta != null && meta.EntityName != null) + { + labelSystem.Label(cdUid, meta.EntityName); + labelSystem.Label(cdCaseUid, meta.EntityName); + } + + // if the case has a storage, try to place the disk in there and then the case inhand + + if (_entManager.TryGetComponent(cdCaseUid, out var storage) && storageSystem.Insert(cdCaseUid, cdUid, out _, storageComp: storage, playSound: false)) + { + if (_entManager.TryGetComponent(entity, out var handsComponent) && handsSystem.TryGetEmptyHand(entity, out var emptyHand, handsComponent)) + { + handsSystem.TryPickup(entity, cdCaseUid, emptyHand, checkActionBlocker: false, handsComp: handsComponent); + } + } + else // the case was messed up, put disk inhand + { + _entManager.DeleteEntity(cdCaseUid); // something went wrong so just yeet the chaf + + if (_entManager.TryGetComponent(entity, out var handsComponent) && handsSystem.TryGetEmptyHand(entity, out var emptyHand, handsComponent)) + { + handsSystem.TryPickup(entity, cdUid, emptyHand, checkActionBlocker: false, handsComp: handsComponent); + } + } + } + else + { + shell.WriteLine(Loc.GetString("shell-invalid-entity-uid", ("uid", destinations))); + } + } + } + + public override CompletionResult GetCompletion(IConsoleShell shell, string[] args) + { + if (args.Length >= 1) + return CompletionResult.FromHintOptions(CompletionHelper.MapUids(_entManager), Loc.GetString("cmd-ftldisk-hint")); + return CompletionResult.Empty; + } +} diff --git a/Content.Server/Silicons/Laws/SiliconLawSystem.cs b/Content.Server/Silicons/Laws/SiliconLawSystem.cs index 34cf53323be233..b0bf8fa950623e 100644 --- a/Content.Server/Silicons/Laws/SiliconLawSystem.cs +++ b/Content.Server/Silicons/Laws/SiliconLawSystem.cs @@ -315,6 +315,8 @@ protected override void OnUpdaterInsert(Entity ent, while (query.MoveNext(out var update)) { SetLaws(lawset, update); + if (provider.LawUploadSound != null && _mind.TryGetMind(update, out var mindId, out _)) + _roles.MindPlaySound(mindId, provider.LawUploadSound); } } } diff --git a/Content.Server/Traitor/Components/AutoTraitorComponent.cs b/Content.Server/Traitor/Components/AutoTraitorComponent.cs index ab4bee2f267a74..a4710afd8ebf2b 100644 --- a/Content.Server/Traitor/Components/AutoTraitorComponent.cs +++ b/Content.Server/Traitor/Components/AutoTraitorComponent.cs @@ -1,4 +1,5 @@ using Content.Server.Traitor.Systems; +using Robust.Shared.Prototypes; namespace Content.Server.Traitor.Components; @@ -9,14 +10,8 @@ namespace Content.Server.Traitor.Components; public sealed partial class AutoTraitorComponent : Component { /// - /// Whether to give the traitor an uplink or not. + /// The traitor profile to use /// - [DataField("giveUplink"), ViewVariables(VVAccess.ReadWrite)] - public bool GiveUplink = true; - - /// - /// Whether to give the traitor objectives or not. - /// - [DataField("giveObjectives"), ViewVariables(VVAccess.ReadWrite)] - public bool GiveObjectives = true; + [DataField] + public EntProtoId Profile = "Traitor"; } diff --git a/Content.Server/Traitor/Systems/AutoTraitorSystem.cs b/Content.Server/Traitor/Systems/AutoTraitorSystem.cs index e9307effbc645c..d5a4db591a7063 100644 --- a/Content.Server/Traitor/Systems/AutoTraitorSystem.cs +++ b/Content.Server/Traitor/Systems/AutoTraitorSystem.cs @@ -12,9 +12,6 @@ public sealed class AutoTraitorSystem : EntitySystem { [Dependency] private readonly AntagSelectionSystem _antag = default!; - [ValidatePrototypeId] - private const string DefaultTraitorRule = "Traitor"; - public override void Initialize() { base.Initialize(); @@ -24,6 +21,6 @@ public override void Initialize() private void OnMindAdded(EntityUid uid, AutoTraitorComponent comp, MindAddedMessage args) { - _antag.ForceMakeAntag(args.Mind.Comp.Session, DefaultTraitorRule); + _antag.ForceMakeAntag(args.Mind.Comp.Session, comp.Profile); } } diff --git a/Content.Server/Traitor/Uplink/UplinkSystem.cs b/Content.Server/Traitor/Uplink/UplinkSystem.cs index ae809dc4d774c4..4c0a990b148b85 100644 --- a/Content.Server/Traitor/Uplink/UplinkSystem.cs +++ b/Content.Server/Traitor/Uplink/UplinkSystem.cs @@ -1,97 +1,136 @@ using System.Linq; using Content.Server.Store.Systems; using Content.Server.StoreDiscount.Systems; +using Content.Shared.FixedPoint; using Content.Shared.Hands.EntitySystems; +using Content.Shared.Implants; using Content.Shared.Inventory; using Content.Shared.PDA; -using Content.Shared.FixedPoint; using Content.Shared.Store; using Content.Shared.Store.Components; +using Robust.Shared.Prototypes; + +namespace Content.Server.Traitor.Uplink; -namespace Content.Server.Traitor.Uplink +public sealed class UplinkSystem : EntitySystem { - public sealed class UplinkSystem : EntitySystem + [Dependency] private readonly InventorySystem _inventorySystem = default!; + [Dependency] private readonly SharedHandsSystem _handsSystem = default!; + [Dependency] private readonly IPrototypeManager _proto = default!; + [Dependency] private readonly StoreSystem _store = default!; + [Dependency] private readonly SharedSubdermalImplantSystem _subdermalImplant = default!; + + [ValidatePrototypeId] + public const string TelecrystalCurrencyPrototype = "Telecrystal"; + private const string FallbackUplinkImplant = "UplinkImplant"; + private const string FallbackUplinkCatalog = "UplinkUplinkImplanter"; + + /// + /// Adds an uplink to the target + /// + /// The person who is getting the uplink + /// The amount of currency on the uplink. If null, will just use the amount specified in the preset. + /// The entity that will actually have the uplink functionality. Defaults to the PDA if null. + /// Marker that enables discounts for uplink items. + /// Whether or not the uplink was added successfully + public bool AddUplink( + EntityUid user, + FixedPoint2 balance, + EntityUid? uplinkEntity = null, + bool giveDiscounts = false) { - [Dependency] private readonly InventorySystem _inventorySystem = default!; - [Dependency] private readonly SharedHandsSystem _handsSystem = default!; - [Dependency] private readonly StoreSystem _store = default!; - - [ValidatePrototypeId] - public const string TelecrystalCurrencyPrototype = "Telecrystal"; - - /// - /// Adds an uplink to the target - /// - /// The person who is getting the uplink - /// The amount of currency on the uplink. If null, will just use the amount specified in the preset. - /// The entity that will actually have the uplink functionality. Defaults to the PDA if null. - /// Marker that enables discounts for uplink items. - /// Whether or not the uplink was added successfully - public bool AddUplink( - EntityUid user, - FixedPoint2? balance, - EntityUid? uplinkEntity = null, - bool giveDiscounts = false - ) - { - // Try to find target item if none passed - uplinkEntity ??= FindUplinkTarget(user); - if (uplinkEntity == null) - { - return false; - } + // Try to find target item if none passed - EnsureComp(uplinkEntity.Value); - var store = EnsureComp(uplinkEntity.Value); + uplinkEntity ??= FindUplinkTarget(user); - store.AccountOwner = user; - store.Balance.Clear(); - if (balance != null) - { - store.Balance.Clear(); - _store.TryAddCurrency(new Dictionary { { TelecrystalCurrencyPrototype, balance.Value } }, uplinkEntity.Value, store); - } + if (uplinkEntity == null) + return ImplantUplink(user, balance, giveDiscounts); - var uplinkInitializedEvent = new StoreInitializedEvent( - TargetUser: user, - Store: uplinkEntity.Value, - UseDiscounts: giveDiscounts, - Listings: _store.GetAvailableListings(user, uplinkEntity.Value, store) - .ToArray() - ); - RaiseLocalEvent(ref uplinkInitializedEvent); - // TODO add BUI. Currently can't be done outside of yaml -_- - - return true; - } + EnsureComp(uplinkEntity.Value); + + SetUplink(user, uplinkEntity.Value, balance, giveDiscounts); + + // TODO add BUI. Currently can't be done outside of yaml -_- + // ^ What does this even mean? + + return true; + } + + /// + /// Configure TC for the uplink + /// + private void SetUplink(EntityUid user, EntityUid uplink, FixedPoint2 balance, bool giveDiscounts) + { + var store = EnsureComp(uplink); + store.AccountOwner = user; + + store.Balance.Clear(); + _store.TryAddCurrency(new Dictionary { { TelecrystalCurrencyPrototype, balance } }, + uplink, + store); - /// - /// Finds the entity that can hold an uplink for a user. - /// Usually this is a pda in their pda slot, but can also be in their hands. (but not pockets or inside bag, etc.) - /// - public EntityUid? FindUplinkTarget(EntityUid user) + var uplinkInitializedEvent = new StoreInitializedEvent( + TargetUser: user, + Store: uplink, + UseDiscounts: giveDiscounts, + Listings: _store.GetAvailableListings(user, uplink, store) + .ToArray()); + RaiseLocalEvent(ref uplinkInitializedEvent); + } + + /// + /// Implant an uplink as a fallback measure if the traitor had no PDA + /// + private bool ImplantUplink(EntityUid user, FixedPoint2 balance, bool giveDiscounts) + { + var implantProto = new string(FallbackUplinkImplant); + + if (!_proto.TryIndex(FallbackUplinkCatalog, out var catalog)) + return false; + + if (!catalog.Cost.TryGetValue(TelecrystalCurrencyPrototype, out var cost)) + return false; + + if (balance < cost) // Can't use Math functions on FixedPoint2 + balance = 0; + else + balance = balance - cost; + + var implant = _subdermalImplant.AddImplant(user, implantProto); + + if (!HasComp(implant)) + return false; + + SetUplink(user, implant.Value, balance, giveDiscounts); + return true; + } + + /// + /// Finds the entity that can hold an uplink for a user. + /// Usually this is a pda in their pda slot, but can also be in their hands. (but not pockets or inside bag, etc.) + /// + public EntityUid? FindUplinkTarget(EntityUid user) + { + // Try to find PDA in inventory + if (_inventorySystem.TryGetContainerSlotEnumerator(user, out var containerSlotEnumerator)) { - // Try to find PDA in inventory - if (_inventorySystem.TryGetContainerSlotEnumerator(user, out var containerSlotEnumerator)) + while (containerSlotEnumerator.MoveNext(out var pdaUid)) { - while (containerSlotEnumerator.MoveNext(out var pdaUid)) - { - if (!pdaUid.ContainedEntity.HasValue) - continue; - - if (HasComp(pdaUid.ContainedEntity.Value) || HasComp(pdaUid.ContainedEntity.Value)) - return pdaUid.ContainedEntity.Value; - } - } + if (!pdaUid.ContainedEntity.HasValue) + continue; - // Also check hands - foreach (var item in _handsSystem.EnumerateHeld(user)) - { - if (HasComp(item) || HasComp(item)) - return item; + if (HasComp(pdaUid.ContainedEntity.Value) || HasComp(pdaUid.ContainedEntity.Value)) + return pdaUid.ContainedEntity.Value; } + } - return null; + // Also check hands + foreach (var item in _handsSystem.EnumerateHeld(user)) + { + if (HasComp(item) || HasComp(item)) + return item; } + + return null; } } diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index 25797920476e18..28ca6f837b1c85 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -448,6 +448,12 @@ public static readonly CVarDef public static readonly CVarDef GameEntityMenuLookup = CVarDef.Create("game.entity_menu_lookup", 0.25f, CVar.CLIENTONLY | CVar.ARCHIVE); + /// + /// Should the clients window show the server hostname in the title? + /// + public static readonly CVarDef GameHostnameInTitlebar = + CVarDef.Create("game.hostname_in_titlebar", true, CVar.SERVER | CVar.REPLICATED); + /* * Discord */ diff --git a/Content.Shared/Ghost/SpectralComponent.cs b/Content.Shared/Ghost/SpectralComponent.cs new file mode 100644 index 00000000000000..3799951152e969 --- /dev/null +++ b/Content.Shared/Ghost/SpectralComponent.cs @@ -0,0 +1,9 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared.Ghost; + +/// +/// Marker component to identify "ghostly" entities. +/// +[RegisterComponent, NetworkedComponent] +public sealed partial class SpectralComponent : Component { } diff --git a/Content.Shared/Implants/SharedSubdermalImplantSystem.cs b/Content.Shared/Implants/SharedSubdermalImplantSystem.cs index fd0692960222da..7cadb90206c0ba 100644 --- a/Content.Shared/Implants/SharedSubdermalImplantSystem.cs +++ b/Content.Shared/Implants/SharedSubdermalImplantSystem.cs @@ -125,20 +125,36 @@ private void OnRemove(EntityUid uid, SubdermalImplantComponent component, EntGot /// public void AddImplants(EntityUid uid, IEnumerable implants) { - var coords = Transform(uid).Coordinates; foreach (var id in implants) { - var ent = Spawn(id, coords); - if (TryComp(ent, out var implant)) - { - ForceImplant(uid, ent, implant); - } - else - { - Log.Warning($"Found invalid starting implant '{id}' on {uid} {ToPrettyString(uid):implanted}"); - Del(ent); - } + AddImplant(uid, id); + } + } + + /// + /// Adds a single implant to a person, and returns the implant. + /// Logs any implant ids that don't have . + /// + /// + /// The implant, if it was successfully created. Otherwise, null. + /// > + public EntityUid? AddImplant(EntityUid uid, String implantId) + { + var coords = Transform(uid).Coordinates; + var ent = Spawn(implantId, coords); + + if (TryComp(ent, out var implant)) + { + ForceImplant(uid, ent, implant); + } + else + { + Log.Warning($"Found invalid starting implant '{implantId}' on {uid} {ToPrettyString(uid):implanted}"); + Del(ent); + return null; } + + return ent; } /// diff --git a/Content.Shared/Interaction/SharedInteractionSystem.cs b/Content.Shared/Interaction/SharedInteractionSystem.cs index 8b51d726e8e4e8..03d36dd39d9fec 100644 --- a/Content.Shared/Interaction/SharedInteractionSystem.cs +++ b/Content.Shared/Interaction/SharedInteractionSystem.cs @@ -1439,7 +1439,8 @@ public void DoContactInteraction(EntityUid uidA, EntityUid? uidB, HandledEntityE if (uidB == null || args?.Handled == false) return; - DebugTools.AssertNotEqual(uidA, uidB.Value); + if (uidA == uidB.Value) + return; if (!TryComp(uidA, out MetaDataComponent? metaA) || metaA.EntityPaused) return; diff --git a/Content.Shared/Mind/SharedMindSystem.cs b/Content.Shared/Mind/SharedMindSystem.cs index a05e30d1350aa6..3b4144946b1e10 100644 --- a/Content.Shared/Mind/SharedMindSystem.cs +++ b/Content.Shared/Mind/SharedMindSystem.cs @@ -490,19 +490,6 @@ public bool TryGetMind( return false; } - /// - /// Gets a role component from a player's mind. - /// - /// Whether a role was found - public bool TryGetRole(EntityUid user, [NotNullWhen(true)] out T? role) where T : IComponent - { - role = default; - if (!TryComp(user, out var mindContainer) || mindContainer.Mind == null) - return false; - - return TryComp(mindContainer.Mind, out role); - } - /// /// Sets the Mind's UserId, Session, and updates the player's PlayerData. This should have no direct effect on the /// entity that any mind is connected to, except as a side effect of the fact that it may change a player's diff --git a/Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs b/Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs index 8c5baf93f5df40..67af4cc900a581 100644 --- a/Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs +++ b/Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs @@ -42,10 +42,12 @@ private void OnGetVerb(Entity entity, ref GetVerbsEvent [DataField, ViewVariables(VVAccess.ReadWrite)] public SiliconLawset? Lawset; + + /// + /// The sound that plays for the Silicon player + /// when the particular lawboard has been inserted. + /// + [DataField] + public SoundSpecifier? LawUploadSound = new SoundPathSpecifier("/Audio/Misc/cryo_warning.ogg"); + } diff --git a/Content.Shared/Storage/EntitySystems/SecretStashSystem.cs b/Content.Shared/Storage/EntitySystems/SecretStashSystem.cs index 08a69c345f0919..af9b768e98be0e 100644 --- a/Content.Shared/Storage/EntitySystems/SecretStashSystem.cs +++ b/Content.Shared/Storage/EntitySystems/SecretStashSystem.cs @@ -14,6 +14,8 @@ using Content.Shared.IdentityManagement; using Content.Shared.Tools.EntitySystems; using Content.Shared.Whitelist; +using Content.Shared.Materials; +using Robust.Shared.Map; namespace Content.Shared.Storage.EntitySystems; @@ -35,6 +37,7 @@ public override void Initialize() base.Initialize(); SubscribeLocalEvent(OnInit); SubscribeLocalEvent(OnDestroyed); + SubscribeLocalEvent(OnReclaimed); SubscribeLocalEvent(OnInteractUsing, after: new[] { typeof(ToolOpenableSystem) }); SubscribeLocalEvent(OnInteractHand); SubscribeLocalEvent>(OnGetVerb); @@ -47,12 +50,12 @@ private void OnInit(Entity entity, ref ComponentInit args) private void OnDestroyed(Entity entity, ref DestructionEventArgs args) { - var storedInside = _containerSystem.EmptyContainer(entity.Comp.ItemContainer); - if (storedInside != null && storedInside.Count >= 1) - { - var popup = Loc.GetString("comp-secret-stash-on-destroyed-popup", ("stashname", GetStashName(entity))); - _popupSystem.PopupEntity(popup, storedInside[0], PopupType.MediumCaution); - } + DropContentsAndAlert(entity); + } + + private void OnReclaimed(Entity entity, ref GotReclaimedEvent args) + { + DropContentsAndAlert(entity, args.ReclaimerCoordinates); } private void OnInteractUsing(Entity entity, ref InteractUsingEvent args) @@ -211,5 +214,18 @@ private bool HasItemInside(Entity entity) return entity.Comp.ItemContainer.ContainedEntity != null; } + /// + /// Drop the item stored in the stash and alert all nearby players with a popup. + /// + private void DropContentsAndAlert(Entity entity, EntityCoordinates? cords = null) + { + var storedInside = _containerSystem.EmptyContainer(entity.Comp.ItemContainer, true, cords); + if (storedInside != null && storedInside.Count >= 1) + { + var popup = Loc.GetString("comp-secret-stash-on-destroyed-popup", ("stashname", GetStashName(entity))); + _popupSystem.PopupPredicted(popup, storedInside[0], null, PopupType.MediumCaution); + } + } + #endregion } diff --git a/Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs b/Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs index 5c1e2bcfad1966..fee4c1a0fb6eae 100644 --- a/Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs +++ b/Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs @@ -666,7 +666,7 @@ private void OnInsertItemIntoLocation(StorageInsertItemIntoLocationEvent msg, En private void OnSaveItemLocation(StorageSaveItemLocationEvent msg, EntitySessionEventArgs args) { - if (!ValidateInput(args, msg.Storage, msg.Item, out var player, out var storage, out var item, held: true)) + if (!ValidateInput(args, msg.Storage, msg.Item, out var player, out var storage, out var item)) return; SaveItemLocation(storage!, item.Owner); diff --git a/Content.Shared/Strip/SharedStrippableSystem.cs b/Content.Shared/Strip/SharedStrippableSystem.cs index e1c3d8ef0d86c8..7afe503275a1d2 100644 --- a/Content.Shared/Strip/SharedStrippableSystem.cs +++ b/Content.Shared/Strip/SharedStrippableSystem.cs @@ -103,7 +103,7 @@ private void OnStripButtonPressed(Entity strippable, ref St if (userHands.ActiveHandEntity != null && !hasEnt) StartStripInsertInventory((user, userHands), strippable.Owner, userHands.ActiveHandEntity.Value, args.Slot); - else if (userHands.ActiveHandEntity == null && hasEnt) + else if (hasEnt) StartStripRemoveInventory(user, strippable.Owner, held!.Value, args.Slot); } @@ -135,7 +135,7 @@ private void StripHand( if (user.Comp.ActiveHandEntity != null && handSlot.HeldEntity == null) StartStripInsertHand(user, target, user.Comp.ActiveHandEntity.Value, handId, targetStrippable); - else if (user.Comp.ActiveHandEntity == null && handSlot.HeldEntity != null) + else if (handSlot.HeldEntity != null) StartStripRemoveHand(user, target, handSlot.HeldEntity.Value, handId, targetStrippable); } diff --git a/Content.Shared/VendingMachines/VendingMachineComponent.cs b/Content.Shared/VendingMachines/VendingMachineComponent.cs index a0d350d0d1eadd..9e8529c30e66c4 100644 --- a/Content.Shared/VendingMachines/VendingMachineComponent.cs +++ b/Content.Shared/VendingMachines/VendingMachineComponent.cs @@ -97,12 +97,13 @@ public sealed partial class VendingMachineComponent : Component /// Sound that plays when ejecting an item /// [DataField("soundVend")] - // Grabbed from: https://github.com/discordia-space/CEV-Eris/blob/f702afa271136d093ddeb415423240a2ceb212f0/sound/machines/vending_drop.ogg + // Grabbed from: https://github.com/tgstation/tgstation/blob/d34047a5ae911735e35cd44a210953c9563caa22/sound/machines/machine_vend.ogg public SoundSpecifier SoundVend = new SoundPathSpecifier("/Audio/Machines/machine_vend.ogg") { Params = new AudioParams { - Volume = -2f + Volume = -4f, + Variation = 0.15f } }; diff --git a/Content.Shared/Weapons/Misc/SharedGrapplingGunSystem.cs b/Content.Shared/Weapons/Misc/SharedGrapplingGunSystem.cs index d2f0333b8332d6..e790973538ffb6 100644 --- a/Content.Shared/Weapons/Misc/SharedGrapplingGunSystem.cs +++ b/Content.Shared/Weapons/Misc/SharedGrapplingGunSystem.cs @@ -114,19 +114,14 @@ private void OnWeightlessMove(ref CanWeightlessMoveEvent ev) private void OnGunActivate(EntityUid uid, GrapplingGunComponent component, ActivateInWorldEvent args) { - if (!Timing.IsFirstTimePredicted || args.Handled || !args.Complex) - return; - - if (Deleted(component.Projectile)) + if (!Timing.IsFirstTimePredicted || args.Handled || !args.Complex || component.Projectile is not {} projectile) return; _audio.PlayPredicted(component.CycleSound, uid, args.User); _appearance.SetData(uid, SharedTetherGunSystem.TetherVisualsStatus.Key, true); if (_netManager.IsServer) - { - QueueDel(component.Projectile.Value); - } + QueueDel(projectile); component.Projectile = null; SetReeling(uid, component, false, args.User); diff --git a/Resources/Audio/Ambience/Antag/attributions.yml b/Resources/Audio/Ambience/Antag/attributions.yml index 25917a5da2bb6d..0d3d278a627d73 100644 --- a/Resources/Audio/Ambience/Antag/attributions.yml +++ b/Resources/Audio/Ambience/Antag/attributions.yml @@ -18,3 +18,7 @@ license: "CC-BY-SA-3.0" copyright: "Made by @ps3moira on github" source: https://www.youtube.com/watch?v=4-R-_DiqiLo +- files: ["silicon_lawboard_antimov.ogg"] + license: "CC-BY-SA-3.0" + copyright: "Made by @ps3moira on Discord for SS14" + source: "https://www.youtube.com/watch?v=jf1sYGYVLsw" diff --git a/Resources/Audio/Ambience/Antag/silicon_lawboard_antimov.ogg b/Resources/Audio/Ambience/Antag/silicon_lawboard_antimov.ogg new file mode 100644 index 00000000000000..911a34532d60c3 Binary files /dev/null and b/Resources/Audio/Ambience/Antag/silicon_lawboard_antimov.ogg differ diff --git a/Resources/Audio/Machines/attributions.yml b/Resources/Audio/Machines/attributions.yml index 1b4ea7474160bf..7675162a04d506 100644 --- a/Resources/Audio/Machines/attributions.yml +++ b/Resources/Audio/Machines/attributions.yml @@ -163,6 +163,7 @@ - chime.ogg - buzz-sigh.ogg - buzztwo.ogg + - machine_vend.gg license: "CC-BY-SA-3.0" copyright: "Taken from TG station." source: "https://github.com/tgstation/tgstation/tree/d4f678a1772007ff8d7eddd21cf7218c8e07bfc0" diff --git a/Resources/Audio/Machines/machine_vend.ogg b/Resources/Audio/Machines/machine_vend.ogg index 8f7c187d0c37c1..92867a1f3d3bd6 100644 Binary files a/Resources/Audio/Machines/machine_vend.ogg and b/Resources/Audio/Machines/machine_vend.ogg differ diff --git a/Resources/Audio/MidiCustom/space-station-14.sf2 b/Resources/Audio/MidiCustom/space-station-14.sf2 index 8dcfce94729b68..54c6eb619633b5 100644 Binary files a/Resources/Audio/MidiCustom/space-station-14.sf2 and b/Resources/Audio/MidiCustom/space-station-14.sf2 differ diff --git a/Resources/Audio/Misc/attributions.yml b/Resources/Audio/Misc/attributions.yml index 3bd116cb825452..133c7b0b26f0a3 100644 --- a/Resources/Audio/Misc/attributions.yml +++ b/Resources/Audio/Misc/attributions.yml @@ -28,6 +28,11 @@ copyright: "Taken from TG station." source: "https://github.com/tgstation/tgstation/blob/2f63c779cb43543cfde76fa7ddaeacfde185fded/sound/effects/ratvar_reveal.ogg" +- files: ["cryo_warning.ogg"] + license: "CC-BY-SA-3.0" + copyright: "Taken from TG station." + source: "https://github.com/tgstation/tgstation/blob/00cf2da5f785c110b9930077b3202f1a4638e1fd/sound/machines/cryo_warning.ogg" + - files: ["epsilon.ogg"] license: "CC-BY-SA-3.0" copyright: "Made by dj-34 (https://github.com/dj-34)" diff --git a/Resources/Audio/Misc/cryo_warning.ogg b/Resources/Audio/Misc/cryo_warning.ogg new file mode 100644 index 00000000000000..06cdebc9447fcc Binary files /dev/null and b/Resources/Audio/Misc/cryo_warning.ogg differ diff --git a/Resources/Audio/Voice/Reptilian/attritbutions.yml b/Resources/Audio/Voice/Reptilian/attritbutions.yml index 7e8b2a0ce39bbe..7fa86b2ebfcbd9 100644 --- a/Resources/Audio/Voice/Reptilian/attritbutions.yml +++ b/Resources/Audio/Voice/Reptilian/attritbutions.yml @@ -2,3 +2,8 @@ copyright: '"scream_lizard.ogg" by Skyrat-SS13' license: source: https://github.com/Skyrat-SS13/Skyrat-tg/pull/892 + +- files: [reptilian_tailthump.ogg] + copyright: "Taken from https://freesound.org/" + license: "CC0-1.0" + source: https://freesound.org/people/TylerAM/sounds/389665/ \ No newline at end of file diff --git a/Resources/Audio/Voice/Reptilian/reptilian_tailthump.ogg b/Resources/Audio/Voice/Reptilian/reptilian_tailthump.ogg new file mode 100644 index 00000000000000..e4bf25f7b8d1e7 Binary files /dev/null and b/Resources/Audio/Voice/Reptilian/reptilian_tailthump.ogg differ diff --git a/Resources/Changelog/Admin.yml b/Resources/Changelog/Admin.yml index 63fd6cabd2a57a..2c4db6e82b830d 100644 --- a/Resources/Changelog/Admin.yml +++ b/Resources/Changelog/Admin.yml @@ -559,5 +559,13 @@ Entries: id: 69 time: '2024-10-09T11:55:49.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32531 +- author: IProduceWidgets + changes: + - message: invokeverb should work with smite names now. Find the names in the smite + tab on mouse hover. + type: Fix + id: 70 + time: '2024-10-16T22:24:31.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32844 Name: Admin Order: 1 diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index e0fb02f0095937..8ebc4bf413ff02 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,182 +1,4 @@ Entries: -- author: TheShuEd - changes: - - message: industrial ore processor can now process diamonds - type: Fix - id: 7015 - time: '2024-07-30T14:41:15.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30499 -- author: PJB3005 - changes: - - message: CLF3 is now called "chlorine trifluoride" - type: Tweak - id: 7016 - time: '2024-07-31T00:14:23.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30510 -- author: slarticodefast - changes: - - message: Fixed the mouse position when it is over a singularity distortion effect - while zoomed in or out. - type: Fix - id: 7017 - time: '2024-07-31T00:14:49.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30509 -- author: metalgearsloth - changes: - - message: Add a button to the lobby so you can export a .png of your characters - type: Add - id: 7018 - time: '2024-07-31T15:14:20.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29874 -- author: slarticodefast - changes: - - message: Skeletons no longer have fingerprints. - type: Tweak - id: 7019 - time: '2024-07-31T16:08:20.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30530 -- author: themias - changes: - - message: Pens can be clicked cathartically - type: Tweak - id: 7020 - time: '2024-07-31T17:57:41.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30531 -- author: Plykiya - changes: - - message: Meteors now leave behind asteroid rocks on impact. - type: Add - id: 7021 - time: '2024-08-01T02:55:02.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30419 -- author: PixelTheAertist - changes: - - message: The Social Anxiety trait is now renamed to "Stutter" - type: Tweak - id: 7022 - time: '2024-08-01T02:58:16.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29898 -- author: Plykiya - changes: - - message: Adds hand labelers to the PTech, ChemDrobe, and LawDrobe. - type: Add - id: 7023 - time: '2024-08-01T02:59:54.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29958 -- author: Ko4erga - changes: - - message: Added a cutter machine for crafting patterned steel tiles, concrete and - wooden tiles. - type: Add - - message: After rip off patterned tiles you get current pattern, not just steel - tile. - type: Tweak - id: 7024 - time: '2024-08-01T10:26:32.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30431 -- author: NakataRin - changes: - - message: Added paramedic to the train station. - type: Add - id: 7025 - time: '2024-08-01T19:59:43.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30556 -- author: marbow - changes: - - message: Rejoice, detectives! Hand labeler has been added to your closet! - type: Add - id: 7026 - time: '2024-08-01T20:01:05.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30501 -- author: metalgearsloth - changes: - - message: Fix some popups playing twice. - type: Fix - id: 7027 - time: '2024-08-02T01:33:20.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30452 -- author: WarMechanic - changes: - - message: Adjusted meteors to have less lethal blast fragments. - type: Tweak - id: 7028 - time: '2024-08-02T05:43:41.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29199 -- author: slarticodefast - changes: - - message: Fixed borgs not being able to state laws or open other UIs without an - active module. - type: Fix - id: 7029 - time: '2024-08-02T05:44:59.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30299 -- author: TropicalHibi - changes: - - message: Now fs (for sure) and wru (where are you) are changed to their full version - in text - type: Add - id: 7030 - time: '2024-08-02T05:57:50.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30508 -- author: Plykiya - changes: - - message: Rechargers now show the percent charged of the item it is charging. - type: Add - id: 7031 - time: '2024-08-02T06:05:38.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/28500 -- author: ShadowCommander - changes: - - message: Rollerbeds now deploy when holding them in hand and clicking on the ground. - type: Add - id: 7032 - time: '2024-08-02T07:05:12.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30000 -- author: slarticodefast - changes: - - message: The digital audio workstation can now be rotated. - type: Tweak - id: 7033 - time: '2024-08-02T10:02:16.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30571 -- author: slarticodefast - changes: - - message: Added potassium iodide. It gives you short term radiation protection - and can be found in radiation treatment kits. - type: Add - - message: Added haloperidol. It removes most stimulating/hallucinogenic drugs from - the body and makes you drowsy. - type: Add - - message: Added the drowsiness status effect. It blurs your vision and makes you - randomly fall asleep. Drink some coffee or cola to remove it. - type: Add - - message: Chloral hydrate now makes you drowsy instead of forcing you to sleep - instantly. - type: Tweak - id: 7034 - time: '2024-08-02T17:12:08.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/27454 -- author: Blackern5000 - changes: - - message: Winter boots no longer have ugly outlines - type: Tweak - id: 7035 - time: '2024-08-02T23:05:19.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30350 -- author: lzk228 - changes: - - message: Figurines will say phrases on activation. - type: Add - id: 7036 - time: '2024-08-03T14:06:04.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30455 -- author: JoelZimmerman - changes: - - message: Dank pizza is now cooked with cannabis leaves instead of ambrosia vulgaris. - type: Tweak - id: 7037 - time: '2024-08-03T14:07:21.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30430 - author: Ian321 changes: - message: Help menus now include the linked guides. @@ -3944,3 +3766,182 @@ id: 7514 time: '2024-10-15T08:28:28.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32565 +- author: slarticodefast + changes: + - message: Fixed inconsistent solution transfer amounts from spray bottles to plant + holders. + type: Fix + id: 7515 + time: '2024-10-16T03:57:30.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32813 +- author: Minemoder, ArtisticRoomba, Sarahon + changes: + - message: Reptiles and Kobolds can now thump their tail. + type: Add + id: 7516 + time: '2024-10-16T10:04:55.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32064 +- author: deltanedas + changes: + - message: Fixed grappling hooks sometimes getting bricked. + type: Fix + id: 7517 + time: '2024-10-16T22:32:32.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32738 +- author: SlamBamActionman + changes: + - message: The Microphone instrument has a new vocal style "Kweh". + type: Add + id: 7518 + time: '2024-10-17T01:57:43.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32848 +- author: deltanedas + changes: + - message: You can now eject biomass from a biogenerator without having to deconstruct + it. + type: Tweak + id: 7519 + time: '2024-10-17T03:12:30.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32854 +- author: lzk228 + changes: + - message: Fixed holosign projectors power cell popups. + type: Fix + id: 7520 + time: '2024-10-17T03:21:04.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32808 +- author: Kickguy223 + changes: + - message: As an AI, Having a Lawboard inserted into your AI Upload Computer will + now Play a sound cue + type: Add + - message: As an AI, Having the Antimov Lawboard uploaded will play an appropriate + sound cue + type: Add + id: 7521 + time: '2024-10-17T03:41:07.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32625 +- author: Callmore + changes: + - message: Prefered item quick store locations can be created again. + type: Fix + id: 7522 + time: '2024-10-17T04:00:52.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32480 +- author: Myra + changes: + - message: The game's title bar window will display the name of the server you have + joined (unless disabled). + type: Add + id: 7523 + time: '2024-10-17T11:06:07.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32547 +- author: Aeshus + changes: + - message: Emote shorthands (like "lol" or ":)") sent in chat are detected throughout + the whole message. Note that only the last shorthand in the message will be + emoted. + type: Tweak + id: 7524 + time: '2024-10-17T14:01:32.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/28645 +- author: slarticodefast + changes: + - message: Fixed the playtime stats window not showing entries correctly. + type: Fix + id: 7525 + time: '2024-10-17T21:32:59.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32856 +- author: Thatonestomf + changes: + - message: Smile no longer has a ghost role raffle attached to her + type: Fix + id: 7526 + time: '2024-10-18T02:42:50.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32837 +- author: Catofquestionableethics + changes: + - message: Spacemans cake now contains Polypyrylium Oligomers instead of Omnizine. + type: Tweak + - message: Slime, Brain and Christmas cakes can now be eaten by Lizards. + type: Fix + id: 7527 + time: '2024-10-18T03:08:32.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32830 +- author: Plykiya + changes: + - message: You can no longer print flares or shotgun flares. + type: Remove + id: 7528 + time: '2024-10-18T03:28:30.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32563 +- author: pheenty + changes: + - message: QM is now considered an important job. + type: Tweak + - message: QM is now correctly considered head for traitor's kill head objective, + while warden now isn't. + type: Fix + id: 7529 + time: '2024-10-18T09:43:05.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32721 +- author: JIPDawg + changes: + - message: On Salamander the round will now restart after 5 minutes from when the + Evac shuttle arrives at CentCom. + type: Tweak + id: 7530 + time: '2024-10-18T10:03:12.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32776 +- author: Errant + changes: + - message: Players becoming Traitor without a PDA now correctly get the text and + audio notifications, and the code words. They are also given an Uplink Implant, + with the price taken from their starting TC. + type: Fix + id: 7531 + time: '2024-10-18T12:55:43.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/30359 +- author: Beck Thompson + changes: + - message: Plushies will now eject their contents when recycled in the recycler! + type: Fix + id: 7532 + time: '2024-10-18T12:58:07.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32838 +- author: Ilya246 + changes: + - message: Spectral locator, rare maintenance loot that lets you know if any ghosts + are nearby. + type: Add + id: 7533 + time: '2024-10-18T13:42:13.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32323 +- author: PJB3005 + changes: + - message: You can now start removing items via stripping while holding something. + type: Tweak + id: 7534 + time: '2024-10-18T19:20:05.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32750 +- author: Beck Thompson + changes: + - message: Scalpels and shivs now work as knives! + type: Add + id: 7535 + time: '2024-10-19T02:40:17.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32858 +- author: PJB3005 + changes: + - message: Fix more performance issues on long-running game servers, hopefully. + type: Fix + id: 7536 + time: '2024-10-19T14:51:29.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32897 +- author: insoPL + changes: + - message: Zombies once again have zombie blood. + type: Fix + id: 7537 + time: '2024-10-19T15:31:45.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32532 diff --git a/Resources/ConfigPresets/WizardsDen/salamander.toml b/Resources/ConfigPresets/WizardsDen/salamander.toml index 676deec96dafea..e233dd95ca2e52 100644 --- a/Resources/ConfigPresets/WizardsDen/salamander.toml +++ b/Resources/ConfigPresets/WizardsDen/salamander.toml @@ -3,6 +3,7 @@ [game] desc = "Official English Space Station 14 servers. Medium roleplay ruleset. you must be whitelisted by playing on other Wizard's Den servers if there are more than 15 online players." hostname = "[EN] Wizard's Den Salamander [US West RP]" +round_restart_time = 300 [server] rules_file = "MRPRuleset" diff --git a/Resources/Locale/en-US/administration/smites.ftl b/Resources/Locale/en-US/administration/smites.ftl index e77725765befb2..57d8660fae09fe 100644 --- a/Resources/Locale/en-US/administration/smites.ftl +++ b/Resources/Locale/en-US/administration/smites.ftl @@ -20,42 +20,42 @@ admin-smite-explode-name = Explode admin-smite-chess-dimension-name = Chess Dimension admin-smite-set-alight-name = Set Alight admin-smite-monkeyify-name = Monkeyify -admin-smite-electrocute-name = Garbage Can -admin-smite-creampie-name = Electrocute -admin-smite-remove-blood-name = Creampie -admin-smite-vomit-organs-name = Remove blood -admin-smite-remove-hands-name = Vomit organs -admin-smite-remove-hand-name = Remove hands -admin-smite-pinball-name = Remove hand -admin-smite-yeet-name = Stomach Removal -admin-smite-become-bread-name = Lungs Removal -admin-smite-ghostkick-name = Pinball -admin-smite-nyanify-name = Yeet -admin-smite-kill-sign-name = Become Bread -admin-smite-cluwne-name = Become Mouse -admin-smite-anger-pointing-arrows-name = Ghostkick -admin-smite-dust-name = Nyanify -admin-smite-buffering-name = Kill sign -admin-smite-become-instrument-name = Cluwne -admin-smite-remove-gravity-name = Maid -admin-smite-reptilian-species-swap-name = Anger Pointing Arrows -admin-smite-locker-stuff-name = Dust -admin-smite-headstand-name = Buffering -admin-smite-become-mouse-name = Become Instrument -admin-smite-maid-name = Remove gravity -admin-smite-zoom-in-name = Reptilian Species Swap -admin-smite-flip-eye-name = Locker stuff -admin-smite-run-walk-swap-name = Headstand -admin-smite-super-speed-name = Zoom in -admin-smite-stomach-removal-name = Flip eye -admin-smite-speak-backwards-name = Run Walk Swap -admin-smite-lung-removal-name = Speak Backwards +admin-smite-garbage-can-name = Garbage Can +admin-smite-electrocute-name = Electrocute +admin-smite-remove-blood-name = Remove blood +admin-smite-remove-hands-name = Remove hands +admin-smite-remove-hand-name = Remove hand +admin-smite-pinball-name = Pinball +admin-smite-yeet-name = Yeet +admin-smite-become-bread-name = Become Bread +admin-smite-cluwne-name = Cluwne +admin-smite-anger-pointing-arrows-name = Anger Pointing Arrows +admin-smite-dust-name = Dust +admin-smite-buffering-name = Buffering +admin-smite-become-instrument-name = Become Instrument +admin-smite-remove-gravity-name = Remove Gravity +admin-smite-reptilian-species-swap-name = Become Reptilian +admin-smite-locker-stuff-name = Locker Stuff +admin-smite-headstand-name = Headstand +admin-smite-become-mouse-name = Become Mouse +admin-smite-maid-name = Cat Maid +admin-smite-zoom-in-name = Zoom In +admin-smite-flip-eye-name = Flip Eye +admin-smite-run-walk-swap-name = Run Walk Swap +admin-smite-super-speed-name = Run Up +admin-smite-stomach-removal-name = Stomach Removal +admin-smite-speak-backwards-name = Speak Backwards +admin-smite-lung-removal-name = Lungs Removal admin-smite-disarm-prone-name = Disarm Prone -admin-smite-garbage-can-name = Super speed -admin-smite-super-bonk-name = Super Bonk Lite -admin-smite-super-bonk-lite-name = Super Bonk +admin-smite-super-bonk-name = Super Bonk +admin-smite-super-bonk-lite-name = Super Bonk Lite admin-smite-terminate-name = Terminate admin-smite-super-slip-name = Super Slip +admin-smite-creampie-name = Cream +admin-smite-vomit-organs-name = Vomit Organs +admin-smite-ghostkick-name = Ghost Kick +admin-smite-nyanify-name = Cat Ears +admin-smite-kill-sign-name = Kill Sign ## Smite descriptions diff --git a/Resources/Locale/en-US/botany/components/plant-holder-component.ftl b/Resources/Locale/en-US/botany/components/plant-holder-component.ftl index 0e8c4137f4ed65..ca20c277f5314b 100644 --- a/Resources/Locale/en-US/botany/components/plant-holder-component.ftl +++ b/Resources/Locale/en-US/botany/components/plant-holder-component.ftl @@ -8,8 +8,6 @@ plant-holder-component-no-weeds-message = This plot is devoid of weeds! It doesn plant-holder-component-remove-plant-message = You remove the plant from the {$name}. plant-holder-component-remove-plant-others-message = {$name} removes the plant. plant-holder-component-no-plant-message = There is no plant to remove. -plant-holder-component-empty-message = {$owner} is empty! -plant-holder-component-spray-message = You spray {$owner}. plant-holder-component-transfer-message = You transfer {$amount}u to {$owner}. plant-holder-component-nothing-to-sample-message = There is nothing to take a sample of! plant-holder-component-already-sampled-message = This plant has already been sampled. diff --git a/Resources/Locale/en-US/chat/emotes.ftl b/Resources/Locale/en-US/chat/emotes.ftl index cccb33a1f17b4e..8c74acafca2422 100644 --- a/Resources/Locale/en-US/chat/emotes.ftl +++ b/Resources/Locale/en-US/chat/emotes.ftl @@ -8,6 +8,7 @@ chat-emote-name-crying = Crying chat-emote-name-squish = Squish chat-emote-name-chitter = Chitter chat-emote-name-squeak = Squeak +chat-emote-name-thump = Thump Tail chat-emote-name-click = Click chat-emote-name-clap = Clap chat-emote-name-snap = Snap @@ -40,6 +41,7 @@ chat-emote-msg-crying = cries. chat-emote-msg-squish = squishes. chat-emote-msg-chitter = chitters. chat-emote-msg-squeak = squeaks. +chat-emote-msg-thump = thumps {POSS-ADJ($entity)} tail. chat-emote-msg-click = clicks. chat-emote-msg-clap = claps! chat-emote-msg-snap = snaps {POSS-ADJ($entity)} fingers. diff --git a/Resources/Locale/en-US/forensics/fibers.ftl b/Resources/Locale/en-US/forensics/fibers.ftl index 53cfe5e7c1214f..72eae55e3801f1 100644 --- a/Resources/Locale/en-US/forensics/fibers.ftl +++ b/Resources/Locale/en-US/forensics/fibers.ftl @@ -25,3 +25,7 @@ fibers-white = white fibers-yellow = yellow fibers-regal-blue = regal blue fibers-olive = olive +fibers-silver = silver +fibers-gold = gold +fibers-maroon = maroon +fibers-pink = pink diff --git a/Resources/Locale/en-US/game-ticking/game-presets/preset-traitor.ftl b/Resources/Locale/en-US/game-ticking/game-presets/preset-traitor.ftl index fd3e6b82aa7900..cf2f2b11308c3f 100644 --- a/Resources/Locale/en-US/game-ticking/game-presets/preset-traitor.ftl +++ b/Resources/Locale/en-US/game-ticking/game-presets/preset-traitor.ftl @@ -26,7 +26,7 @@ traitor-death-match-end-round-description-entry = {$originalName}'s PDA, with {$ traitor-role-greeting = You are an agent sent by {$corporation} on behalf of [color = darkred]The Syndicate.[/color] Your objectives and codewords are listed in the character menu. - Use the uplink loaded into your PDA to buy the tools you'll need for this mission. + Use your uplink to buy the tools you'll need for this mission. Death to Nanotrasen! traitor-role-codewords = The codewords are: [color = lightgray] @@ -36,9 +36,13 @@ traitor-role-codewords = traitor-role-uplink-code = Set your ringtone to the notes [color = lightgray]{$code}[/color] to lock or unlock your uplink. Remember to lock it after, or the stations crew will easily open it too! +traitor-role-uplink-implant = + Your uplink implant has been activated, access it from your hotbar. + The uplink is secure unless someone removes it from your body. # don't need all the flavour text for character menu traitor-role-codewords-short = The codewords are: {$codewords}. traitor-role-uplink-code-short = Your uplink code is {$code}. Set it as your PDA ringtone to access uplink. +traitor-role-uplink-implant-short = Your uplink was implanted. Access it from your hotbar. diff --git a/Resources/Locale/en-US/reagents/meta/elements.ftl b/Resources/Locale/en-US/reagents/meta/elements.ftl index 6d6439565ba239..b5ef028bed9d34 100644 --- a/Resources/Locale/en-US/reagents/meta/elements.ftl +++ b/Resources/Locale/en-US/reagents/meta/elements.ftl @@ -61,8 +61,5 @@ reagent-desc-sodium = A silvery-white alkali metal. Highly reactive in its pure reagent-name-uranium = uranium reagent-desc-uranium = A grey metallic chemical element in the actinide series, weakly radioactive. -reagent-name-bananium = bananium -reagent-desc-bananium = A yellow radioactive organic solid. - reagent-name-zinc = zinc -reagent-desc-zinc = A silvery, brittle metal, often used in batteries to carry charge. \ No newline at end of file +reagent-desc-zinc = A silvery, brittle metal, often used in batteries to carry charge. diff --git a/Resources/Locale/en-US/shuttles/commands.ftl b/Resources/Locale/en-US/shuttles/commands.ftl new file mode 100644 index 00000000000000..37583568e7ccac --- /dev/null +++ b/Resources/Locale/en-US/shuttles/commands.ftl @@ -0,0 +1,14 @@ +# FTLdiskburner +cmd-ftldisk-desc = Creates an FTL coordinates disk to sail to the map the given EntityID is/on +cmd-ftldisk-help = ftldisk [EntityID] + +cmd-ftldisk-no-transform = Entity {$destination} has no Transform Component! +cmd-ftldisk-no-map = Entity {$destination} has no map! +cmd-ftldisk-no-map-comp = Entity {$destination} is somehow on map {$map} with no map component. +cmd-ftldisk-map-not-init = Entity {$destination} is on map {$map} which is not initialized! Check it's safe to initialize, then initialize the map first or the players will be stuck in place! +cmd-ftldisk-map-paused = Entity {$desintation} is on map {$map} which is paused! Please unpause the map first or the players will be stuck in place. +cmd-ftldisk-planet = Entity {$desintation} is on planet map {$map} and will require an FTL point. It may already exist. +cmd-ftldisk-already-dest-not-enabled = Entity {$destination} is on map {$map} that already has an FTLDestinationComponent, but it is not Enabled! Set this manually for safety. +cmd-ftldisk-requires-ftl-point = Entity {$destination} is on map {$map} that requires a FTL point to travel to! It may already exist. + +cmd-ftldisk-hint = Map netID diff --git a/Resources/Locale/en-US/store/uplink-catalog.ftl b/Resources/Locale/en-US/store/uplink-catalog.ftl index df213b69d23896..37e38cd5f5bc94 100644 --- a/Resources/Locale/en-US/store/uplink-catalog.ftl +++ b/Resources/Locale/en-US/store/uplink-catalog.ftl @@ -451,5 +451,5 @@ uplink-cameraBug-desc = A portable device that allows you to view the station's uplink-combat-bakery-name = Combat Bakery Kit uplink-combat-bakery-desc = A kit of clandestine baked weapons. Contains a baguette sword, a pair of throwing croissants, and a syndicate microwave board for making more. Once the job is done, eat the evidence. -uplink-business-card-name = Syndicate business card. +uplink-business-card-name = Syndicate Business Card uplink-business-card-desc = A business card that you can give to someone to demonstrate your involvement in the syndicate or leave at the crime scene in order to make fun of the detective. You can buy no more than three of them. diff --git a/Resources/Maps/cog.yml b/Resources/Maps/cog.yml index 30b4730a57d5e8..e5ec7d76dbedf9 100644 --- a/Resources/Maps/cog.yml +++ b/Resources/Maps/cog.yml @@ -81,7 +81,7 @@ entities: chunks: 0,0: ind: 0,0 - tiles: EgAAAAAAEgAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAEgAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAABYAAAAAAAYAAAAAACYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAABYAAAAAACYAAAAAABYAAAAAACYAAAAAAAYAAAAAADYAAAAAAAYAAAAAABYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA + tiles: EgAAAAAAEgAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEgAAAAAAEgAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAABYAAAAAAAYAAAAAACYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAABYAAAAAACYAAAAAABYAAAAAACYAAAAAAAYAAAAAADYAAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA version: 6 -1,0: ind: -1,0 @@ -89,19 +89,19 @@ entities: version: 6 -1,-1: ind: -1,-1 - tiles: YAAAAAABYAAAAAAAgQAAAAAAIwAAAAAAJAAAAAAAIwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAOQAAAAAAOQAAAAAAYAAAAAACYAAAAAACgQAAAAAAIwAAAAAAIwAAAAAAJAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAACOQAAAAAAOQAAAAAAYAAAAAACYAAAAAACgQAAAAAAJAAAAAAAIwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAACgQAAAAAAIAAAAAABIAAAAAACYAAAAAADYAAAAAACgQAAAAAAJAAAAAAAIwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAIAAAAAADIAAAAAABIAAAAAACIAAAAAACIAAAAAACYAAAAAABYAAAAAADgQAAAAAAIwAAAAAEgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAIAAAAAABIAAAAAADIAAAAAADIAAAAAACIAAAAAADYAAAAAABYAAAAAAAgQAAAAAAJAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAIAAAAAAAIAAAAAADIAAAAAADIAAAAAAAIAAAAAABgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAADYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAABYAAAAAACYAAAAAACYAAAAAABYAAAAAACYAAAAAABYAAAAAABYAAAAAADYAAAAAACYAAAAAADYAAAAAAAYAAAAAAAYAAAAAABYAAAAAAAYAAAAAADIAAAAAABUQAAAAADYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAADYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAUQAAAAADYAAAAAADYAAAAAADYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAABIAAAAAADUQAAAAADYAAAAAAAYAAAAAAAYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAAAIAAAAAACIAAAAAAC + tiles: YAAAAAABYAAAAAAAgQAAAAAAIwAAAAAAJAAAAAAAIwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAOQAAAAAAOQAAAAAAYAAAAAACYAAAAAACgQAAAAAAIwAAAAAAIwAAAAAAJAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAACOQAAAAAAOQAAAAAAYAAAAAACYAAAAAACgQAAAAAAJAAAAAAAIwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACgQAAAAAAIAAAAAABIAAAAAACYAAAAAADYAAAAAACgQAAAAAAJAAAAAAAIwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAIAAAAAADIAAAAAABIAAAAAACIAAAAAACIAAAAAACYAAAAAABYAAAAAADgQAAAAAAIwAAAAAEgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAIAAAAAABIAAAAAADIAAAAAADIAAAAAACIAAAAAADYAAAAAABYAAAAAAAgQAAAAAAJAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAIAAAAAAAIAAAAAADIAAAAAADIAAAAAAAIAAAAAABgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAADYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAABYAAAAAACYAAAAAACYAAAAAABYAAAAAACYAAAAAABYAAAAAABYAAAAAADYAAAAAACYAAAAAADYAAAAAAAYAAAAAAAYAAAAAABYAAAAAAAYAAAAAADIAAAAAABUQAAAAADYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAADYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAUQAAAAADYAAAAAADYAAAAAADYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAABIAAAAAADUQAAAAADYAAAAAAAYAAAAAAAYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAAAIAAAAAACIAAAAAAC version: 6 0,-1: ind: 0,-1 - tiles: OQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAABYAAAAAADgQAAAAAAOQAAAAAAIAAAAAABIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAAAgQAAAAAAIAAAAAADgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAACIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAADIAAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAIAAAAAABIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAACIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAIAAAAAADIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAACIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA + tiles: OQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAOQAAAAAAIAAAAAABIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAACIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAADIAAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAIAAAAAABIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAACIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAIAAAAAADIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAACIAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA version: 6 -1,-2: ind: -1,-2 - tiles: YAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAABYAAAAAADYAAAAAADYAAAAAACYAAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAAAYAAAAAADgQAAAAAAYAAAAAABYAAAAAABYAAAAAADYAAAAAACYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAABYAAAAAABYAAAAAAAYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAACYAAAAAADYAAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAAAYAAAAAABYAAAAAACYAAAAAABcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAADYAAAAAAABwAAAAAACwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAADgQAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAADgQAAAAAABwAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA + tiles: YAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAABYAAAAAADYAAAAAADYAAAAAACYAAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAAAYAAAAAADgQAAAAAAYAAAAAABYAAAAAABYAAAAAADYAAAAAACYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAABYAAAAAABYAAAAAAAYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAACYAAAAAADYAAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAAAYAAAAAABYAAAAAACYAAAAAABcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAADYAAAAAAABwAAAAAACwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAADgQAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAADgQAAAAAABwAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA version: 6 0,-2: ind: 0,-2 - tiles: gQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABgQAAAAAAYAAAAAABYAAAAAADYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAABYAAAAAADYAAAAAABYAAAAAADYAAAAAAAYAAAAAADYAAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAABYAAAAAADYAAAAAADYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAABYAAAAAABYAAAAAADYAAAAAABYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAACYAAAAAACYAAAAAADYAAAAAACgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAABYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAACYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAADYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAADYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAADCwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAA + tiles: gQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAASgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABgQAAAAAAYAAAAAABYAAAAAADYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAABYAAAAAADYAAAAAABYAAAAAADYAAAAAAAYAAAAAADYAAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAABYAAAAAADYAAAAAADYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAABYAAAAAABYAAAAAADYAAAAAABYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAACYAAAAAACYAAAAAADYAAAAAACgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAABYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAACYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAADYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAADYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAADCwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAA version: 6 -2,-1: ind: -2,-1 @@ -177,7 +177,7 @@ entities: version: 6 1,-1: ind: 1,-1 - tiles: YAAAAAAAYAAAAAACYAAAAAACgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAADYAAAAAADgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAACYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAAB + tiles: YAAAAAAAYAAAAAACYAAAAAACgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAADYAAAAAADgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAACYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAAB version: 6 1,0: ind: 1,0 @@ -189,11 +189,11 @@ entities: version: 6 2,0: ind: 2,0 - tiles: gQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAYAAAAAAAYAAAAAACgQAAAAAAAwAAAAACBwAAAAAABwAAAAAAAwAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAIAAAAAACIAAAAAABgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAIAAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAAgAAAAABgQAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAABIAAAAAADIAAAAAABgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAAAIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAIAAAAAABIAAAAAADgQAAAAAAYAAAAAABYAAAAAACgQAAAAAAIAAAAAAAIAAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAAIAAAAAADIAAAAAACCwAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAAwAAAAACBwAAAAAAYAAAAAABgQAAAAAAYAAAAAAABwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAAgAAAAABAwAAAAABgQAAAAAAAgAAAAABBwAAAAAAAgAAAAAABwAAAAAABwAAAAAAYAAAAAACYAAAAAABgQAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADBwAAAAAAgQAAAAAABwAAAAAAAwAAAAACgQAAAAAABwAAAAAAYAAAAAABYAAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAAwAAAAACgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAwAAAAABBwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAwAAAAACYAAAAAAABwAAAAAABwAAAAAABwAAAAAAgQAAAAAAAgAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAAwAAAAAABwAAAAAAgQAAAAAABwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAgAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAYAAAAAABAwAAAAAEgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA + tiles: gQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAYAAAAAAAYAAAAAACgQAAAAAAAwAAAAACBwAAAAAABwAAAAAAAwAAAAACBwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAIAAAAAACIAAAAAABgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAIAAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAAgAAAAABgQAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAABIAAAAAADIAAAAAABgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAAIAAAAAACIAAAAAAAIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAADgQAAAAAAIAAAAAABIAAAAAADgQAAAAAAYAAAAAABYAAAAAACgQAAAAAAIAAAAAAAIAAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAAIAAAAAADIAAAAAACCwAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAAwAAAAACBwAAAAAAYAAAAAABgQAAAAAAYAAAAAAABwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAAgAAAAABAwAAAAABgQAAAAAAAgAAAAABBwAAAAAAAgAAAAAABwAAAAAABwAAAAAAYAAAAAACYAAAAAABgQAAAAAAYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADBwAAAAAAgQAAAAAABwAAAAAAAwAAAAACgQAAAAAABwAAAAAAYAAAAAABYAAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAAwAAAAACgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAwAAAAABBwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAwAAAAACYAAAAAAABwAAAAAABwAAAAAABwAAAAAAgQAAAAAAAgAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAAwAAAAAABwAAAAAAgQAAAAAABwAAAAAABwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAgAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAYAAAAAABAwAAAAAEgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA version: 6 2,-2: ind: 2,-2 - tiles: gQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAABYAAAAAACYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAYAAAAAACgQAAAAAAYAAAAAADgQAAAAAAYAAAAAADYAAAAAABDgAAAAACDgAAAAAADgAAAAACYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABDgAAAAADUQAAAAABDgAAAAABYAAAAAACYAAAAAABgQAAAAAAYAAAAAADYAAAAAACYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAACgQAAAAAAYAAAAAADYAAAAAABDgAAAAACDgAAAAADDgAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAABYAAAAAADYAAAAAAAYAAAAAABYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAADYAAAAAAAYAAAAAADYAAAAAACYAAAAAADYAAAAAACYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAABgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAABYAAAAAADYAAAAAABYAAAAAAAYAAAAAACgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADAgAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAAgAAAAABBwAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAACYAAAAAABYAAAAAACYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAAwAAAAABgQAAAAAAYAAAAAABYAAAAAABYAAAAAACYAAAAAAAYAAAAAAAYAAAAAACYAAAAAACYAAAAAABgQAAAAAAYAAAAAADBwAAAAAAgQAAAAAAYAAAAAADYAAAAAADgQAAAAAAgQAAAAAACwAAAAAACwAAAAAAYAAAAAACgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAABwAAAAAABwAAAAAAYAAAAAABYAAAAAACgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAACgQAAAAAABwAAAAAAgQAAAAAAAgAAAAABgQAAAAAACwAAAAAACwAAAAAAYAAAAAACYAAAAAABYAAAAAABYAAAAAADgQAAAAAABwAAAAAAYAAAAAACYAAAAAACAwAAAAACgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAADYAAAAAABYAAAAAABgQAAAAAABwAAAAAABwAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAAwAAAAADBwAAAAAAgQAAAAAAYAAAAAADYAAAAAADgQAAAAAAYAAAAAACYAAAAAAAYAAAAAABgQAAAAAABwAAAAAAYAAAAAAAAgAAAAAABwAAAAAAgQAAAAAABwAAAAAABwAAAAAAgQAAAAAAgQAAAAAACwAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAABwAAAAAAgQAAAAAAYAAAAAACYAAAAAAA + tiles: gQAAAAAAgQAAAAAAgQAAAAAAEwAAAAAAEwAAAAAAEwAAAAAAYAAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAABYAAAAAACYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEwAAAAAAEwAAAAAAEwAAAAAAYAAAAAAAgQAAAAAAYAAAAAADYAAAAAABDgAAAAACDgAAAAAADgAAAAACYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEwAAAAAAEwAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABDgAAAAADUQAAAAABDgAAAAABYAAAAAACYAAAAAABgQAAAAAAYAAAAAADYAAAAAACYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAACgQAAAAAAYAAAAAADYAAAAAABDgAAAAACDgAAAAADDgAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAABYAAAAAADYAAAAAAAYAAAAAABYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAADYAAAAAAAYAAAAAADYAAAAAACYAAAAAADYAAAAAACYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAABgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAABYAAAAAADYAAAAAABYAAAAAAAYAAAAAACgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADAgAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAAAgAAAAABBwAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAACYAAAAAABYAAAAAACYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAAwAAAAABgQAAAAAAYAAAAAABYAAAAAABYAAAAAACYAAAAAAAYAAAAAAAYAAAAAACYAAAAAACYAAAAAABgQAAAAAAYAAAAAADBwAAAAAAgQAAAAAAYAAAAAADYAAAAAADgQAAAAAAgQAAAAAACwAAAAAACwAAAAAAYAAAAAACgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAABwAAAAAABwAAAAAAYAAAAAABYAAAAAACgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAACgQAAAAAABwAAAAAAgQAAAAAAAgAAAAABgQAAAAAACwAAAAAACwAAAAAAYAAAAAACYAAAAAABYAAAAAABYAAAAAADgQAAAAAABwAAAAAAYAAAAAACYAAAAAACAwAAAAACgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAADYAAAAAABYAAAAAABgQAAAAAABwAAAAAABwAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAAwAAAAADBwAAAAAAgQAAAAAAYAAAAAADYAAAAAADgQAAAAAAYAAAAAACYAAAAAAAYAAAAAABgQAAAAAABwAAAAAAYAAAAAAAAgAAAAAABwAAAAAAgQAAAAAABwAAAAAABwAAAAAAgQAAAAAAgQAAAAAACwAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAABwAAAAAABwAAAAAAgQAAAAAAYAAAAAACYAAAAAAA version: 6 1,-3: ind: 1,-3 @@ -205,7 +205,7 @@ entities: version: 6 2,-3: ind: 2,-3 - tiles: gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAADQAAAAABgQAAAAAAYAAAAAABYAAAAAADgQAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAUQAAAAABCwAAAAAAYAAAAAAAYAAAAAABgQAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAAAYAAAAAADgQAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAACYAAAAAADgQAAAAAA + tiles: gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAADQAAAAABgQAAAAAAYAAAAAABYAAAAAADgQAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAUQAAAAABCwAAAAAAYAAAAAAAYAAAAAABgQAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAAAYAAAAAADgQAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAEwAAAAAAEwAAAAAAEwAAAAAAYAAAAAAAgQAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAAAYAAAAAACYAAAAAADgQAAAAAA version: 6 2,-4: ind: 2,-4 @@ -229,7 +229,7 @@ entities: version: 6 3,-1: ind: 3,-1 - tiles: YAAAAAACYAAAAAABYAAAAAACYAAAAAADYAAAAAABYAAAAAADCwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAACwAAAAAAYAAAAAABYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAABYAAAAAABYAAAAAACYAAAAAADYAAAAAACYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAACwAAAAAAYAAAAAABYAAAAAACYAAAAAAAfQAAAAABfQAAAAADYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAfQAAAAACfQAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAACYAAAAAACYAAAAAAAYAAAAAAAYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAADfQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAADYAAAAAABYAAAAAADgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAfQAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAfQAAAAADfQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAfQAAAAABfQAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAABYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABIAAAAAAAIAAAAAADIAAAAAACIAAAAAAAYAAAAAAAgQAAAAAAIAAAAAACIAAAAAABIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAIAAAAAAAIAAAAAACUQAAAAAAIAAAAAABYAAAAAABIAAAAAADIAAAAAAAIAAAAAABIAAAAAAAIAAAAAACBwAAAAAABwAAAAAABwAAAAAABwAAAAAAYAAAAAAAYAAAAAACIAAAAAABUQAAAAADIAAAAAABIAAAAAADYAAAAAABIAAAAAACIAAAAAAAIAAAAAADIAAAAAABIAAAAAADBwAAAAAABwAAAAAABwAAAAAABwAAAAAAYAAAAAAAYAAAAAACIAAAAAACIAAAAAAAIAAAAAACIAAAAAABYAAAAAADgQAAAAAAIAAAAAABIAAAAAAAIAAAAAACgQAAAAAA + tiles: YAAAAAACYAAAAAABYAAAAAACYAAAAAADYAAAAAABYAAAAAADCwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAACwAAAAAAYAAAAAABYAAAAAAAYAAAAAADYAAAAAABYAAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAACYAAAAAACYAAAAAACYAAAAAAAYAAAAAABYAAAAAABYAAAAAACYAAAAAADYAAAAAACYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAADYAAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAACwAAAAAAYAAAAAABYAAAAAACYAAAAAAAfQAAAAABfQAAAAADYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAfQAAAAACfQAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAACYAAAAAACYAAAAAAAYAAAAAAAYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAADfQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAADYAAAAAABYAAAAAADgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAfQAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAfQAAAAADfQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAfQAAAAABfQAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAABYAAAAAADYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABIAAAAAAAIAAAAAADIAAAAAACIAAAAAAAYAAAAAAAgQAAAAAAIAAAAAACIAAAAAABIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAIAAAAAAAIAAAAAACUQAAAAAAIAAAAAABYAAAAAABIAAAAAADIAAAAAAAIAAAAAABIAAAAAAAIAAAAAACBwAAAAAABwAAAAAABwAAAAAABwAAAAAAYAAAAAAAYAAAAAACIAAAAAABUQAAAAADIAAAAAABIAAAAAADYAAAAAABIAAAAAACIAAAAAAAIAAAAAADIAAAAAABIAAAAAADBwAAAAAAgQAAAAAABwAAAAAABwAAAAAAYAAAAAAAYAAAAAACIAAAAAACIAAAAAAAIAAAAAACIAAAAAABYAAAAAADgQAAAAAAIAAAAAABIAAAAAAAIAAAAAACgQAAAAAA version: 6 4,-2: ind: 4,-2 @@ -297,7 +297,7 @@ entities: version: 6 3,0: ind: 3,0 - tiles: gQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAACYAAAAAADYAAAAAADYAAAAAADYAAAAAACgQAAAAAAIAAAAAAAIAAAAAADIAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAABYAAAAAACgQAAAAAAgQAAAAAABwAAAAAAgQAAAAAAIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAABYAAAAAADYAAAAAADgQAAAAAAIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAYAAAAAACIAAAAAADIAAAAAABIAAAAAACIAAAAAABYAAAAAAAgQAAAAAACwAAAAAACwAAAAAAgQAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAIAAAAAACIAAAAAABgQAAAAAAYAAAAAAAIAAAAAACIAAAAAACIAAAAAACIAAAAAACYAAAAAACgQAAAAAAEgAAAAAACwAAAAAAgQAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAIAAAAAACIAAAAAAAgQAAAAAAYAAAAAAAIAAAAAACIAAAAAACIAAAAAADIAAAAAACYAAAAAABgQAAAAAACwAAAAAACwAAAAAAgQAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAIAAAAAAAIAAAAAAAgQAAAAAAYAAAAAACYAAAAAADYAAAAAACYAAAAAADYAAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAADYAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + tiles: gQAAAAAABwAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAACYAAAAAADYAAAAAADYAAAAAADYAAAAAACgQAAAAAAIAAAAAAAIAAAAAADIAAAAAACgQAAAAAABwAAAAAAgQAAAAAABwAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAABYAAAAAACgQAAAAAAgQAAAAAABwAAAAAAgQAAAAAAIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAAAYAAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAABYAAAAAABYAAAAAADYAAAAAADgQAAAAAAIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAgQAAAAAAgQAAAAAAYAAAAAACIAAAAAADIAAAAAABIAAAAAACIAAAAAABYAAAAAAAgQAAAAAACwAAAAAACwAAAAAAgQAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAIAAAAAACIAAAAAABgQAAAAAAYAAAAAAAIAAAAAACIAAAAAACIAAAAAACIAAAAAACYAAAAAACgQAAAAAAEgAAAAAACwAAAAAAgQAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAIAAAAAACIAAAAAAAgQAAAAAAYAAAAAAAIAAAAAACIAAAAAACIAAAAAADIAAAAAACYAAAAAABgQAAAAAACwAAAAAACwAAAAAAgQAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAIAAAAAAAIAAAAAAAgQAAAAAAYAAAAAACYAAAAAADYAAAAAACYAAAAAADYAAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAACgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAADYAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 3,1: ind: 3,1 @@ -333,11 +333,11 @@ entities: version: 6 3,3: ind: 3,3 - tiles: YAAAAAACYAAAAAACYAAAAAABYAAAAAADYAAAAAAAYAAAAAACYAAAAAADYAAAAAACYAAAAAABYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAAAYAAAAAADgQAAAAAAYAAAAAAAYAAAAAABgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAACYAAAAAADYAAAAAAAYAAAAAACYAAAAAACYAAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAADgQAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAADYAAAAAACYAAAAAACYAAAAAADgQAAAAAAYAAAAAADYAAAAAADYAAAAAADYAAAAAADgQAAAAAAYAAAAAAAYAAAAAACYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAABgQAAAAAADAAAAAACDAAAAAABDAAAAAADfQAAAAACfQAAAAADCwAAAAAADAAAAAAADAAAAAAADAAAAAACDAAAAAAAYAAAAAACgQAAAAAAYAAAAAACYAAAAAACgQAAAAAAgQAAAAAADAAAAAAADAAAAAACDAAAAAADfQAAAAACfQAAAAABfQAAAAAADAAAAAABDAAAAAAADAAAAAADCAAAAAACgQAAAAAAgQAAAAAAYAAAAAACYAAAAAADYAAAAAADYAAAAAADCAAAAAAACAAAAAABCAAAAAADfQAAAAADfQAAAAACfQAAAAAACAAAAAADCAAAAAABCAAAAAABCAAAAAADYAAAAAAAYAAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAABCAAAAAACCAAAAAAACAAAAAADfQAAAAADfQAAAAACfQAAAAADCAAAAAADCAAAAAABCAAAAAADCAAAAAAAYAAAAAAAYAAAAAADYAAAAAADYAAAAAAAYAAAAAADgQAAAAAADAAAAAAADAAAAAACDAAAAAAAfQAAAAABfQAAAAADfQAAAAABDAAAAAADDAAAAAACDAAAAAADDAAAAAADYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAAAgQAAAAAADAAAAAACDAAAAAACDAAAAAABfQAAAAAAfQAAAAABfQAAAAADDAAAAAADDAAAAAACDAAAAAADDAAAAAADYAAAAAACYAAAAAACYAAAAAABYAAAAAABYAAAAAABgQAAAAAADAAAAAAADAAAAAACDAAAAAABfQAAAAAAfQAAAAACfQAAAAABDAAAAAACDAAAAAABDAAAAAACDAAAAAABYAAAAAACYAAAAAABYAAAAAACYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAYAAAAAACYAAAAAADYAAAAAABYAAAAAACYAAAAAABgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAYAAAAAADYAAAAAADYAAAAAADYAAAAAACYAAAAAACgQAAAAAAYAAAAAADYAAAAAACYAAAAAADYAAAAAACYAAAAAADgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAYAAAAAAAYAAAAAABYAAAAAADYAAAAAACYAAAAAACgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAYAAAAAABYAAAAAAAYAAAAAADYAAAAAAAYAAAAAACYAAAAAABYAAAAAADYAAAAAADYAAAAAACYAAAAAADgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAA + tiles: YAAAAAACYAAAAAACYAAAAAABYAAAAAADYAAAAAAAYAAAAAACYAAAAAADYAAAAAACYAAAAAABYAAAAAACYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAADYAAAAAAAYAAAAAADgQAAAAAAYAAAAAAAYAAAAAABgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAACYAAAAAADYAAAAAAAYAAAAAACYAAAAAACYAAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAADgQAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAADYAAAAAACYAAAAAACYAAAAAADgQAAAAAAYAAAAAADYAAAAAADYAAAAAADYAAAAAADgQAAAAAAYAAAAAAAYAAAAAACYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAABgQAAAAAADAAAAAACDAAAAAABDAAAAAADfQAAAAACfQAAAAADCwAAAAAADAAAAAAADAAAAAAADAAAAAACDAAAAAAAYAAAAAACgQAAAAAAYAAAAAACYAAAAAACgQAAAAAAgQAAAAAADAAAAAAADAAAAAACDAAAAAADfQAAAAACfQAAAAABfQAAAAAADAAAAAABDAAAAAAADAAAAAADCAAAAAACgQAAAAAAgQAAAAAAYAAAAAACYAAAAAADYAAAAAADYAAAAAADCAAAAAAACAAAAAABCAAAAAADfQAAAAADfQAAAAACfQAAAAAACAAAAAADCAAAAAABCAAAAAABCAAAAAADYAAAAAAAYAAAAAAAYAAAAAACYAAAAAACYAAAAAABYAAAAAABCAAAAAACCAAAAAAACAAAAAADfQAAAAADfQAAAAACfQAAAAADCAAAAAADCAAAAAABCAAAAAADCAAAAAAAYAAAAAAAYAAAAAADYAAAAAADYAAAAAAAYAAAAAADgQAAAAAADAAAAAAADAAAAAACDAAAAAAAfQAAAAABfQAAAAADfQAAAAABDAAAAAADDAAAAAACDAAAAAADDAAAAAADYAAAAAAAgQAAAAAAYAAAAAACYAAAAAAAYAAAAAAAgQAAAAAADAAAAAACDAAAAAACDAAAAAABfQAAAAAAfQAAAAABfQAAAAADDAAAAAADDAAAAAACDAAAAAADDAAAAAADYAAAAAAAgQAAAAAAYAAAAAABYAAAAAABYAAAAAABgQAAAAAADAAAAAAADAAAAAACDAAAAAABfQAAAAAAfQAAAAACfQAAAAABDAAAAAACDAAAAAABDAAAAAACDAAAAAABYAAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAYAAAAAACYAAAAAADYAAAAAABYAAAAAACYAAAAAABgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAACYAAAAAACgQAAAAAAYAAAAAADYAAAAAACYAAAAAADYAAAAAACYAAAAAADgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAYAAAAAAAYAAAAAABYAAAAAADYAAAAAACYAAAAAACgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAYAAAAAABYAAAAAAAYAAAAAADYAAAAAAAYAAAAAACYAAAAAABYAAAAAADYAAAAAADYAAAAAACYAAAAAADgQAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAA version: 6 2,3: ind: 2,3 - tiles: gQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAAAQgAAAAAAgQAAAAAAIAAAAAADIAAAAAADIAAAAAADIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAADQgAAAAAAIAAAAAADIAAAAAAAIAAAAAAAIAAAAAADIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAACYAAAAAAAQgAAAAAAgQAAAAAAIAAAAAABIAAAAAADIAAAAAADIAAAAAABIAAAAAADBAAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAABgQAAAAAABAAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAACFQAAAAACgQAAAAAAIAAAAAACIAAAAAABIAAAAAACIAAAAAAAgQAAAAAACwAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAAAFQAAAAADIAAAAAACIAAAAAABIAAAAAACIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAACgQAAAAAAIAAAAAACIAAAAAADIAAAAAAAIAAAAAADIAAAAAADIAAAAAADIAAAAAADYAAAAAACYAAAAAABYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAABYAAAAAADFQAAAAAAgQAAAAAAIAAAAAADIAAAAAABIAAAAAACIAAAAAABIAAAAAABIAAAAAACIAAAAAABgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABYAAAAAAAYAAAAAACYAAAAAACFQAAAAAAgQAAAAAAIAAAAAADIAAAAAACIAAAAAACIAAAAAABIAAAAAAAIAAAAAACIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAACgQAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAADQAAAAADcAAAAAAAgQAAAAAAFQAAAAACgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAABDQAAAAACcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAADQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAABgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcwAAAAAAYAAAAAADYAAAAAABYAAAAAADYAAAAAABYAAAAAADgQAAAAAAgQAAAAAADQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAcwAAAAABcwAAAAACgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAYAAAAAABYAAAAAADgQAAAAAA + tiles: gQAAAAAAgQAAAAAAIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAADYAAAAAABYAAAAAACYAAAAAAAQgAAAAAAgQAAAAAAIAAAAAADIAAAAAADIAAAAAADIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAABYAAAAAABYAAAAAAAYAAAAAADQgAAAAAAIAAAAAADIAAAAAAAIAAAAAAAIAAAAAADIAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAACYAAAAAAAQgAAAAAAgQAAAAAAIAAAAAABIAAAAAADIAAAAAADIAAAAAABIAAAAAADBAAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABYAAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAABgQAAAAAABAAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAACYAAAAAACFQAAAAACgQAAAAAAIAAAAAACIAAAAAABIAAAAAACIAAAAAAAgQAAAAAACwAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAACYAAAAAAAFQAAAAADIAAAAAACIAAAAAABIAAAAAACIAAAAAADIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAACgQAAAAAAIAAAAAACIAAAAAADIAAAAAAAIAAAAAADIAAAAAADIAAAAAADIAAAAAADYAAAAAACYAAAAAABYAAAAAAAYAAAAAAAYAAAAAAAYAAAAAABYAAAAAADFQAAAAAAgQAAAAAAIAAAAAADIAAAAAABIAAAAAACIAAAAAABIAAAAAABIAAAAAACIAAAAAABgQAAAAAAYAAAAAABYAAAAAAAYAAAAAABYAAAAAAAYAAAAAACYAAAAAACFQAAAAAAgQAAAAAAIAAAAAADIAAAAAACIAAAAAACIAAAAAABIAAAAAAAIAAAAAACIAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAACgQAAAAAAIAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAYAAAAAAAFQAAAAACgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAABDQAAAAACcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAACwAAAAAAgQAAAAAAYAAAAAAAcAAAAAAAgQAAAAAADQAAAAABgQAAAAAAcAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcwAAAAAAYAAAAAADYAAAAAABYAAAAAADYAAAAAABYAAAAAADgQAAAAAAgQAAAAAADQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAcwAAAAABcwAAAAACgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAYAAAAAABYAAAAAADgQAAAAAA version: 6 1,3: ind: 1,3 @@ -409,7 +409,7 @@ entities: version: 6 -2,3: ind: -2,3 - tiles: CwAAAAAAYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAEwAAAAACEwAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAABgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAADQAAAAAAcAAAAAAAgQAAAAAAfQAAAAAAYAAAAAADYAAAAAADYAAAAAADYAAAAAAAgQAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAACYAAAAAABYAAAAAAAYAAAAAACYAAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAAAYAAAAAADYAAAAAADgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAAAYAAAAAADgQAAAAAAYAAAAAACgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAADYAAAAAACgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAABYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAADgQAAAAAAYAAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAACYAAAAAABYAAAAAABYAAAAAACYAAAAAADYAAAAAAAYAAAAAACYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAADQAAAAABgQAAAAAAYAAAAAACYAAAAAADYAAAAAAAYAAAAAACgQAAAAAAYAAAAAACYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAADYAAAAAAAYAAAAAADYAAAAAACgQAAAAAACwAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAAAYAAAAAAAYAAAAAADgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAABgQAAAAAAYAAAAAAD + tiles: CwAAAAAAYAAAAAAAYAAAAAAAYAAAAAACYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAEwAAAAACEwAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAABgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAADQAAAAAAcAAAAAAAgQAAAAAAfQAAAAAAYAAAAAADYAAAAAADYAAAAAADYAAAAAAAgQAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAACYAAAAAABYAAAAAAAYAAAAAACYAAAAAAABAAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfQAAAAAAgQAAAAAAYAAAAAAAYAAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADYAAAAAAAYAAAAAADYAAAAAADgQAAAAAAcwAAAAAAcwAAAAAAgQAAAAAAcwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAAAgQAAAAAAYAAAAAABYAAAAAACYAAAAAAAYAAAAAADgQAAAAAAgQAAAAAAcwAAAAAAcwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAAAYAAAAAADYAAAAAACYAAAAAABYAAAAAADYAAAAAACgQAAAAAAcwAAAAAAcwAAAAAAgQAAAAAAcwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAABYAAAAAADYAAAAAABYAAAAAABYAAAAAAAYAAAAAADgQAAAAAAcwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAFQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAYAAAAAADgQAAAAAAYAAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAAAYAAAAAACYAAAAAABYAAAAAABYAAAAAACYAAAAAADYAAAAAAAYAAAAAACYAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAADQAAAAABgQAAAAAAYAAAAAACYAAAAAADYAAAAAAAYAAAAAACgQAAAAAAYAAAAAACYAAAAAABYAAAAAACgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAABYAAAAAADYAAAAAAAYAAAAAADYAAAAAACgQAAAAAACwAAAAAAgQAAAAAAcAAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAgQAAAAAAYAAAAAACYAAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAAAgQAAAAAAYAAAAAACgQAAAAAAgQAAAAAAYAAAAAACYAAAAAACYAAAAAAAYAAAAAAAYAAAAAADgQAAAAAAYAAAAAABgQAAAAAAgQAAAAAAcAAAAAAAgQAAAAAADQAAAAABgQAAAAAAYAAAAAAD version: 6 -4,4: ind: -4,4 @@ -526,11 +526,13 @@ entities: decals: 8199: 30,-15 8200: 30,-9 - 8721: 57,11 - 8722: 58,11 8961: 9,17 8962: 10,17 8963: 16,17 + 8985: 57,11 + 8986: 58,11 + 8987: 61,11 + 8988: 62,11 - node: angle: 4.71238898038469 rad color: '#FFFFFFFF' @@ -792,7 +794,6 @@ entities: 5553: -26,58 5554: -27,58 5555: -28,58 - 5779: 31,-8 5786: 31,-2 6198: 3,-46 6200: 3,-40 @@ -830,10 +831,6 @@ entities: 7598: -26,47 7599: -31,46 7600: -9,-36 - 7700: 3,-21 - 7701: 4,-21 - 7704: 3,-19 - 7705: 4,-19 7726: 24,7 7764: 50,-2 7765: 50,-1 @@ -847,7 +844,15 @@ entities: 8210: 40,4 8253: 31,6 8912: 51,-11 - 8970: 8,-14 + 8981: 61,12 + 8982: 62,12 + 8983: 58,12 + 8984: 57,12 + 8997: 12,-13 + 8998: 13,-13 + 8999: 14,-13 + 9005: 27,-15 + 9107: 32,-29 - node: cleanable: True color: '#FFFFFFFF' @@ -887,7 +892,6 @@ entities: id: Bot decals: 2956: 51,59 - 2957: 50,59 2958: 48,65 2959: 50,65 7999: 8,-9 @@ -896,8 +900,6 @@ entities: color: '#FFFFFFFF' id: Bot decals: - 8726: 57,12 - 8727: 58,12 8730: 62,-4 8731: 60,-4 - node: @@ -941,14 +943,6 @@ entities: 7716: 27,6 7717: 27,7 8680: 27,8 - - node: - angle: 1.5707963267948966 rad - color: '#FFFF00FF' - id: BotGreyscale - decals: - 7996: 10,-12 - 7997: 11,-12 - 7998: 12,-12 - node: color: '#FFFFFFFF' id: BotGreyscale @@ -960,9 +954,6 @@ entities: color: '#FFFFFFFF' id: Box decals: - 713: 29,-22 - 714: 29,-23 - 715: 29,-24 716: 31,-19 1265: 53,-25 1306: 61,-31 @@ -1371,6 +1362,8 @@ entities: 7944: 56,-1 7977: 59,5 7978: 60,5 + 9122: 37,-30 + 9123: 36,-30 - node: color: '#FFFFFFFF' id: BrickTileSteelLineS @@ -1426,6 +1419,9 @@ entities: 7975: 59,3 7976: 60,3 8595: 29,21 + 9114: 35,-33 + 9115: 36,-33 + 9125: 37,-33 - node: color: '#FFFFFFFF' id: BrickTileSteelLineW @@ -1764,7 +1760,6 @@ entities: 6666: -22,-3 8358: 24,-15 8359: 25,-15 - 8360: 26,-15 8708: -38,66 8709: -38,67 8711: -38,68 @@ -1913,8 +1908,6 @@ entities: 7498: -66,-20 7499: -65,-20 7500: -61,-31 - 8175: 3,-21 - 8176: 4,-19 8320: 36,1 8321: 37,-3 8322: 31,0 @@ -1945,6 +1938,10 @@ entities: 8918: 46,-4 8958: -5,-62 8959: -9,-63 + 9203: -25,54 + 9204: -23,52 + 9205: -24,55 + 9206: -26,56 - node: cleanable: True zIndex: 1 @@ -1984,7 +1981,6 @@ entities: 7036: 28,14 8099: 29,6 8129: 44,-1 - 8130: 47,-4 8168: 42,4 8169: 45,0 8401: 5,68 @@ -2065,7 +2061,6 @@ entities: 1481: 19,5 1482: 22,5 1484: 19,6 - 1489: 31,-12 1490: 30,-14 1491: 32,-16 1492: 27,-18 @@ -2079,10 +2074,7 @@ entities: 1502: 10,-24 1503: 12,-23 1504: 9,-20 - 1505: 13,-16 - 1506: 9,-16 1507: 9,-14 - 1508: 13,-17 1552: 49,19 1553: 48,20 1554: 48,19 @@ -2188,7 +2180,6 @@ entities: 4154: 10,-27 4155: 15,-23 4156: 11,-21 - 4157: 13,-16 4158: 18,-18 4159: 25,-18 4160: 26,-17 @@ -2682,9 +2673,7 @@ entities: 6536: 44,-6 6542: 29,-4 6543: 29,-1 - 6544: 31,-9 6545: 30,-11 - 6546: 29,-9 6547: 36,-7 6548: 34,-6 6549: 34,-8 @@ -2850,18 +2839,13 @@ entities: 7494: -66,-30 7495: -65,-29 7496: -63,-29 - 8170: 4,-21 8171: 2,-20 - 8172: 3,-19 - 8173: 1,-21 - 8174: 1,-19 8317: 34,-2 8318: 40,-3 8319: 38,-2 8633: 54,60 8634: 54,62 8635: 52,61 - 8636: 49,61 8637: -57,-31 8638: -58,-30 8639: -57,-30 @@ -2894,23 +2878,9 @@ entities: 8688: -62,-54 8689: -63,-53 8690: -62,-53 - 8805: 35,-33 - 8806: 35,-32 - 8807: 36,-32 - 8808: 36,-31 - 8809: 37,-32 - 8810: 37,-33 - 8811: 38,-32 - 8812: 38,-33 - 8813: 36,-32 - 8814: 36,-32 - 8815: 35,-32 - 8816: 35,-32 - 8817: 34,-31 8818: 39,-36 8819: 41,-36 8820: 43,-36 - 8821: 36,-29 8822: 32,-26 8823: 39,-19 8824: 61,-3 @@ -2929,20 +2899,14 @@ entities: 8837: 58,7 8838: 61,9 8839: 59,10 - 8840: 58,11 - 8841: 60,12 8842: 60,11 - 8843: 61,10 8844: 59,10 - 8845: 58,11 8846: 57,10 - 8847: 58,10 8848: 62,7 8849: 62,-3 8892: 47,0 8893: 48,1 8894: 50,1 - 8895: 49,0 8899: -22,-32 8900: -21,-31 8901: -26,-30 @@ -3045,7 +3009,6 @@ entities: 8122: 45,-1 8123: 43,-2 8124: 47,-2 - 8125: 48,-1 8126: 44,-1 8127: 43,1 8128: 42,2 @@ -3405,11 +3368,9 @@ entities: 3261: 43,62 3262: 44,59 3263: 45,58 - 3264: 46,59 3265: 45,60 3266: 45,59 3267: 43,55 - 3268: 46,56 3269: 38,56 3270: 35,53 3271: 36,51 @@ -3427,7 +3388,6 @@ entities: 3283: 40,49 3284: 40,47 3286: 32,46 - 3287: 31,45 3288: 29,46 3289: 35,50 3290: 31,49 @@ -3451,7 +3411,6 @@ entities: 3310: 28,55 3311: 30,57 3312: 27,59 - 3313: 47,56 3314: 51,55 3315: 50,54 3316: 51,50 @@ -3548,8 +3507,6 @@ entities: 3411: 47,10 3412: 43,7 3426: 10,0 - 3430: 13,-16 - 3432: 11,-16 3433: 9,-21 3434: 10,-22 3435: 11,-23 @@ -3560,7 +3517,6 @@ entities: 3443: 26,-17 3444: 26,-22 3445: 27,-23 - 3446: 29,-23 3447: 32,-22 3448: 32,-23 3449: 34,-19 @@ -4221,15 +4177,12 @@ entities: 8616: 54,63 8617: 52,62 8618: 49,62 - 8619: 48,61 8620: 50,63 8621: 52,64 8622: 48,63 8623: 49,62 8624: 58,64 8625: 49,59 - 8626: 50,57 - 8627: 48,55 8628: 56,62 8629: 56,62 8630: 56,62 @@ -4256,6 +4209,54 @@ entities: 8949: 49,1 8950: 49,1 8951: 49,1 + 9155: -14,-42 + 9156: -18,-39 + 9157: -14,-29 + 9158: -16,-25 + 9159: -17,-21 + 9160: -17,-26 + 9161: -6,-27 + 9162: 3,-28 + 9163: 6,-27 + 9164: 10,-27 + 9165: 17,-28 + 9166: 21,-27 + 9167: 31,-28 + 9168: 31,-23 + 9169: 26,-16 + 9170: 25,-18 + 9171: 11,-17 + 9172: 9,-16 + 9173: 10,-15 + 9174: 8,-15 + 9175: 32,-16 + 9176: 31,-15 + 9177: 30,-15 + 9178: 31,-12 + 9179: 29,-9 + 9180: 30,-8 + 9181: 29,-4 + 9182: 30,-2 + 9183: 13,-13 + 9184: 15,-13 + 9185: 17,-13 + 9186: 19,-13 + 9187: 18,-10 + 9188: 15,-9 + 9189: 49,0 + 9190: 48,1 + 9191: 47,1 + 9192: 46,0 + 9193: 46,0 + 9194: 46,0 + 9195: 46,0 + 9196: 53,1 + 9197: 61,11 + 9198: 62,11 + 9199: 57,12 + 9200: 62,5 + 9201: 57,6 + 9202: 48,3 - node: cleanable: True zIndex: 1 @@ -4631,6 +4632,8 @@ entities: 1154: 49,-23 1335: 48,-21 5765: 33,-5 + 9129: 48,-31 + 9130: 49,-31 - node: color: '#D381C996' id: FullTileOverlayGreyscale @@ -4648,6 +4651,8 @@ entities: 3943: -19,-21 3944: -19,-20 5762: 36,-5 + 9153: 47,60 + 9154: 48,60 - node: zIndex: 1 color: '#D381C996' @@ -4721,6 +4726,10 @@ entities: 8860: 49,48 8861: 49,46 8862: 48,46 + 9056: 29,-8 + 9057: 29,-7 + 9058: 32,-16 + 9059: 33,-16 - node: cleanable: True color: '#5CCD74FF' @@ -4997,7 +5006,6 @@ entities: decals: 2454: -12,66 2873: 57,45 - 2874: 56,45 2875: 55,45 2876: 54,45 2877: 53,45 @@ -5104,6 +5112,8 @@ entities: 3939: -22,-20 3940: -21,-20 3941: -20,-20 + 9146: 49,56 + 9147: 47,56 - node: color: '#D4D4D428' id: HalfTileOverlayGreyscale @@ -5137,8 +5147,6 @@ entities: 5873: 5,45 5929: 44,56 5930: 45,56 - 5931: 46,56 - 5932: 47,56 5935: -23,29 5936: -24,29 5937: -25,29 @@ -5240,7 +5248,6 @@ entities: 776: 11,-20 777: 12,-20 778: 13,-20 - 801: 27,-16 858: 26,-21 1364: 32,-14 1393: -24,-3 @@ -5252,7 +5259,6 @@ entities: 2790: 48,45 2791: 47,45 2792: 46,45 - 2793: 45,45 2794: 44,45 2795: 43,45 2796: 39,43 @@ -5262,8 +5268,6 @@ entities: 2802: 34,43 2804: 29,43 2805: 30,43 - 2806: 31,43 - 2807: 32,43 2808: 33,43 2811: 34,47 4724: 35,43 @@ -5287,7 +5291,6 @@ entities: 6622: 17,-16 6623: 18,-16 6629: 27,-26 - 7844: 48,-1 7863: 53,2 7865: 57,0 7866: 56,0 @@ -5298,6 +5301,16 @@ entities: 8346: 38,-2 8802: 2,20 8803: 3,20 + 8991: 48,1 + 8993: 46,0 + 9006: 26,-15 + 9024: 8,-14 + 9025: 9,-14 + 9030: 11,-15 + 9044: 2,-19 + 9045: 3,-19 + 9046: 4,-19 + 9069: 29,-9 - node: zIndex: 1 color: '#EFB34196' @@ -5346,6 +5359,7 @@ entities: decals: 8008: 17,-14 8009: 18,-14 + 9007: 15,-13 - node: color: '#43990996' id: HalfTileOverlayGreyscale180 @@ -5655,13 +5669,6 @@ entities: 708: 32,-24 709: 31,-24 710: 30,-24 - 711: 29,-24 - 729: 38,-29 - 730: 37,-29 - 731: 36,-29 - 732: 35,-29 - 733: 34,-29 - 734: 33,-29 735: 31,-29 736: 30,-29 737: 29,-29 @@ -5677,9 +5684,6 @@ entities: 754: 17,-29 755: 19,-29 756: 18,-29 - 769: 12,-16 - 770: 13,-16 - 771: 14,-16 783: 10,-24 784: 9,-24 785: 11,-24 @@ -5694,14 +5698,10 @@ entities: 817: 24,-18 859: 26,-24 1362: 30,-17 - 1363: 31,-17 1391: -23,-8 1392: -22,-8 2401: -48,24 - 2784: 45,47 2785: 44,47 - 2809: 32,45 - 2810: 31,45 6038: 30,45 6040: 33,45 6041: 34,45 @@ -5724,6 +5724,14 @@ entities: 8907: 55,-6 8908: 56,-6 8909: 57,-6 + 9027: 9,-17 + 9028: 10,-17 + 9048: 2,-21 + 9051: 3,-21 + 9052: 4,-21 + 9068: 29,-11 + 9104: 33,-29 + 9127: 34,-29 - node: color: '#FA750096' id: HalfTileOverlayGreyscale180 @@ -5905,6 +5913,10 @@ entities: 4506: -27,-31 4728: -18,-24 6090: -27,-30 + 9148: 50,57 + 9149: 50,58 + 9151: 50,59 + 9152: 47,59 - node: color: '#D4D4D428' id: HalfTileOverlayGreyscale270 @@ -5930,9 +5942,6 @@ entities: 5881: 18,28 5882: 18,29 5883: 18,30 - 5925: 48,57 - 5926: 48,58 - 5927: 48,59 5961: 33,-7 5962: 33,-6 6432: -17,-16 @@ -5976,7 +5985,6 @@ entities: 2327: -18,36 2328: -18,37 2329: -19,39 - 2330: -19,40 2331: -18,42 2332: -18,43 2333: -18,44 @@ -6009,8 +6017,6 @@ entities: 743: 20,-32 744: 20,-33 757: 20,-30 - 767: 11,-15 - 768: 11,-14 779: 8,-20 780: 8,-21 781: 8,-22 @@ -6065,6 +6071,9 @@ entities: 8785: 1,14 8786: 1,13 8787: 1,12 + 8994: 29,-22 + 8995: 29,-23 + 9055: 1,-20 - node: color: '#FA750096' id: HalfTileOverlayGreyscale270 @@ -6199,6 +6208,9 @@ entities: 7570: -58,31 8369: 72,48 8370: 72,49 + 9101: 38,-31 + 9102: 38,-32 + 9103: 38,-33 - node: color: '#A4610696' id: HalfTileOverlayGreyscale90 @@ -6363,7 +6375,6 @@ entities: 2293: -34,48 2309: -33,37 2321: -21,39 - 2322: -21,40 2781: 23,57 2782: 23,58 4217: -33,32 @@ -6437,6 +6448,13 @@ entities: 8230: 40,0 8234: 40,2 8235: 40,3 + 9039: 11,-16 + 9061: 31,-16 + 9062: 31,-9 + 9063: 31,-10 + 9065: 31,-13 + 9067: 31,-7 + 9070: 31,-12 - node: angle: -1.5707963267948966 rad color: '#FFFFFFFF' @@ -6719,6 +6737,7 @@ entities: 130: -28,-22 635: -7,-27 5605: -32,-38 + 9144: 50,56 - node: color: '#D4D4D428' id: QuarterTileOverlayGreyscale @@ -6726,7 +6745,6 @@ entities: 1883: -18,11 5851: -4,45 5852: -11,45 - 5933: 48,56 - node: color: '#D4D4D496' id: QuarterTileOverlayGreyscale @@ -6789,7 +6807,6 @@ entities: 6485: -28,-4 6486: -28,-3 7830: 42,-8 - 7846: 49,-1 7847: 44,0 7917: 57,-4 7923: 56,-2 @@ -6805,6 +6822,7 @@ entities: 8885: 61,7 8886: 62,-3 8887: 61,-2 + 8989: 47,0 - node: zIndex: 1 color: '#EFB34196' @@ -7049,13 +7067,7 @@ entities: id: QuarterTileOverlayGreyscale180 decals: 759: 23,-29 - 1367: 31,-11 - 1368: 31,-12 - 1369: 31,-13 1389: -21,-7 - 5768: 31,-10 - 5769: 31,-9 - 5770: 31,-7 7840: 43,-2 7914: 54,-1 7918: 56,-1 @@ -7077,6 +7089,7 @@ entities: 8799: 13,12 8888: 60,-1 8889: 61,-2 + 9106: 38,-29 - node: color: '#FA750096' id: QuarterTileOverlayGreyscale180 @@ -7101,6 +7114,11 @@ entities: 6468: -12,27 6469: -11,27 6470: -10,27 + - node: + color: '#3EB38896' + id: QuarterTileOverlayGreyscale270 + decals: + 9008: 16,-13 - node: color: '#52B4E956' id: QuarterTileOverlayGreyscale270 @@ -7283,16 +7301,12 @@ entities: 2620: 17,60 2621: 17,61 2824: 50,55 - 5774: 29,-11 - 5775: 29,-10 - 5776: 29,-9 - 5777: 29,-8 - 5778: 29,-7 6620: 19,-18 7838: 42,3 7845: 49,-2 7931: 57,-1 8891: 62,-1 + 9128: 35,-29 - node: color: '#334E6DC8' id: QuarterTileOverlayGreyscale90 @@ -7496,6 +7510,9 @@ entities: 7932: 54,-4 8238: 10,-20 8890: 60,-3 + 9009: 27,-16 + 9042: 10,-15 + 9066: 31,-14 - node: color: '#FFFFFFFF' id: Rock01 @@ -7685,6 +7702,8 @@ entities: 7860: 52,2 8042: 53,-3 8801: 1,20 + 8990: 47,1 + 9053: 1,-19 - node: color: '#FA750096' id: ThreeQuarterTileOverlayGreyscale @@ -7784,6 +7803,8 @@ entities: 2830: 48,47 6039: 35,45 8231: 40,-3 + 9040: 11,-17 + 9060: 31,-17 - node: color: '#FA750096' id: ThreeQuarterTileOverlayGreyscale180 @@ -7849,6 +7870,7 @@ entities: decals: 118: -39,-36 4517: -27,-32 + 9131: 47,58 - node: color: '#D4D4D428' id: ThreeQuarterTileOverlayGreyscale270 @@ -7873,7 +7895,6 @@ entities: color: '#EFB34196' id: ThreeQuarterTileOverlayGreyscale270 decals: - 766: 11,-16 773: 8,-24 792: 16,-18 793: 25,-19 @@ -7885,6 +7906,8 @@ entities: 8041: 52,0 8800: 1,11 8910: 53,-6 + 8996: 29,-24 + 9054: 1,-21 - node: color: '#FA750096' id: ThreeQuarterTileOverlayGreyscale270 @@ -7992,6 +8015,8 @@ entities: 1387: -20,-3 2829: 48,53 7864: 55,2 + 8992: 50,1 + 9041: 10,-14 - node: color: '#FA750096' id: ThreeQuarterTileOverlayGreyscale90 @@ -8119,7 +8144,6 @@ entities: id: WarnCornerSmallNE decals: 886: 13,-22 - 902: 10,-17 2746: 25,82 - node: color: '#FFFFFFFF' @@ -8141,9 +8165,14 @@ entities: color: '#FFFFFFFF' id: WarnCornerSmallSW decals: - 905: 9,-15 1253: 57,-25 2744: 11,77 + - node: + zIndex: 1 + color: '#FFFFFFFF' + id: WarnCornerSmallSW + decals: + 9034: 9,-15 - node: color: '#439909FF' id: WarnEndE @@ -8213,9 +8242,6 @@ entities: 877: 23,-21 878: 13,-21 879: 13,-20 - 895: 10,-16 - 896: 10,-15 - 897: 10,-14 1259: 57,-38 2069: -15,5 2070: -15,6 @@ -8265,6 +8291,9 @@ entities: 8718: -38,66 8719: -38,67 8720: -38,68 + 9036: 11,-17 + 9037: 11,-16 + 9038: 11,-15 - node: color: '#FFFFFFFF' id: WarnLineN @@ -8291,7 +8320,6 @@ entities: 215: -45,-34 576: -4,-44 577: 0,-44 - 906: 8,-15 973: -1,-14 1244: 59,-15 1252: 56,-25 @@ -8325,6 +8353,16 @@ entities: 8735: 61,9 8736: 62,9 8737: 57,9 + 9000: 12,-12 + 9001: 11,-12 + 9002: 10,-12 + 9003: 9,-12 + - node: + zIndex: 1 + color: '#FFFFFFFF' + id: WarnLineN + decals: + 9035: 8,-15 - node: zIndex: 2 color: '#FFFFFFFF' @@ -8352,8 +8390,6 @@ entities: 872: 20,-22 873: 20,-21 884: 18,-21 - 903: 9,-17 - 904: 9,-16 1431: -37,-11 1715: 36,17 2060: -13,5 @@ -8407,6 +8443,8 @@ entities: 8715: -33,66 8716: -33,67 8717: -33,68 + 9032: 9,-17 + 9033: 9,-16 - node: color: '#FFFFFFFF' id: WarnLineW @@ -8430,10 +8468,6 @@ entities: 881: 16,-22 882: 15,-22 883: 17,-22 - 898: 11,-17 - 899: 12,-17 - 900: 13,-17 - 901: 14,-17 974: -1,-14 1249: 59,-15 1417: -32,-10 @@ -8867,9 +8901,9 @@ entities: 0: 51404 3,2: 2: 817 - 0: 36040 + 0: 3272 3,3: - 0: 65467 + 0: 65399 3,-1: 2: 4096 0: 52479 @@ -8880,10 +8914,10 @@ entities: 4,1: 0: 43775 4,2: - 0: 816 + 0: 4912 2: 52416 4,3: - 0: 4353 + 0: 4369 2: 52428 -4,0: 0: 32767 @@ -8957,14 +8991,16 @@ entities: 2: 32768 -3,-5: 0: 44687 + -2,-4: + 0: 32819 -2,-3: 2: 61440 0: 136 -2,-2: 0: 240 2: 61440 - -2,-4: - 0: 32768 + -2,-5: + 0: 4794 -1,-4: 0: 64989 -1,-3: @@ -8986,7 +9022,7 @@ entities: 1,-3: 0: 25668 2,-4: - 0: 4095 + 0: 2047 2,-3: 0: 65535 2,-2: @@ -8994,7 +9030,7 @@ entities: 2,-5: 0: 62079 3,-4: - 0: 57463 + 0: 61559 3,-3: 0: 65535 3,-2: @@ -9039,19 +9075,16 @@ entities: 0: 63931 -2,-9: 0: 56829 - -2,-5: - 2: 8192 -1,-8: 0: 28912 -1,-7: 0: 2047 -1,-6: - 0: 33023 - 2: 8192 + 0: 45567 + -1,-5: + 0: 51 -1,-9: 0: 56829 - -1,-5: - 2: 50 0,-8: 0: 14576 0,-7: @@ -9663,7 +9696,7 @@ entities: 6,-6: 0: 61166 6,-4: - 0: 127 + 0: 255 1: 12288 2: 49152 6,-9: @@ -9681,7 +9714,7 @@ entities: 7,-4: 0: 61133 8,-8: - 0: 61917 + 0: 61883 8,-7: 0: 4095 8,-6: @@ -9792,13 +9825,13 @@ entities: 11,-3: 0: 57565 11,-2: - 0: 12046 + 0: 28430 11,-1: - 0: 65439 + 0: 65431 11,-5: 0: 56797 11,0: - 0: 58023 + 0: 58031 12,-4: 0: 65535 12,-3: @@ -9836,7 +9869,7 @@ entities: 11,4: 0: 63487 12,0: - 0: 12401 + 0: 12407 12,1: 0: 3003 12,2: @@ -9844,9 +9877,9 @@ entities: 12,3: 0: 44943 8,-9: - 0: 54783 + 0: 47615 9,-8: - 0: 28791 + 0: 29559 9,-7: 0: 1919 9,-6: @@ -10751,11 +10784,13 @@ entities: 11,13: 0: 61695 12,14: - 0: 65535 + 0: 56799 11,14: - 0: 30479 + 0: 47887 12,15: - 0: 65532 + 0: 65481 + 11,15: + 0: 30491 12,16: 0: 634 13,13: @@ -10811,8 +10846,6 @@ entities: 10,16: 0: 12 2: 8720 - 11,15: - 0: 30487 11,16: 0: 7 2: 41472 @@ -11215,8 +11248,7 @@ entities: -7,13: 0: 56784 -7,14: - 0: 63233 - 2: 4 + 0: 63237 -7,15: 0: 29431 -7,16: @@ -11438,6 +11470,13 @@ entities: container: 12708 - proto: ActionToggleBlock entities: + - uid: 11047 + components: + - type: Transform + parent: 4565 + - type: InstantAction + originalIconColor: '#FFFFFFFF' + container: 4565 - uid: 19882 components: - type: Transform @@ -11560,6 +11599,20 @@ entities: container: 28698 - proto: ActionToggleLight entities: + - uid: 5528 + components: + - type: Transform + parent: 26655 + - type: InstantAction + originalIconColor: '#FFFFFFFF' + container: 26655 + - uid: 5542 + components: + - type: Transform + parent: 26694 + - type: InstantAction + originalIconColor: '#FFFFFFFF' + container: 26694 - uid: 5596 components: - type: Transform @@ -11943,18 +11996,6 @@ entities: - 26312 - 28364 - 29393 - - uid: 4887 - components: - - type: Transform - pos: 14.5,-13.5 - parent: 12 - - type: DeviceList - devices: - - 28375 - - 9321 - - 5255 - - 5316 - - 5305 - uid: 4906 components: - type: Transform @@ -12268,11 +12309,11 @@ entities: - type: DeviceList devices: - 11341 - - 9488 - 6735 - 2516 - 2604 - 3702 + - 1537 - uid: 13076 components: - type: Transform @@ -12443,6 +12484,19 @@ entities: - 26327 - 26569 - 8461 + - uid: 22005 + components: + - type: Transform + pos: 11.5,-13.5 + parent: 12 + - type: DeviceList + devices: + - 7529 + - 9321 + - 7229 + - 5316 + - 28375 + - 4938 - uid: 22248 components: - type: Transform @@ -12884,7 +12938,7 @@ entities: parent: 12 - type: DeviceList devices: - - 26949 + - 2501 - 2020 - 26923 - 609 @@ -12936,13 +12990,16 @@ entities: parent: 12 - type: DeviceList devices: - - 24083 - - 24082 - 28272 - - 23940 + - 4523 - 23941 - - 14474 + - 24083 + - 24082 + - 23943 + - 14476 - 14475 + - 26899 + - 14472 - 14471 - uid: 28328 components: @@ -12952,9 +13009,7 @@ entities: - type: DeviceList devices: - 23093 - - 23092 - 28329 - - 14474 - 14475 - 12055 - uid: 28330 @@ -13972,6 +14027,12 @@ entities: parent: 12 - proto: AirlockEngineeringGlassLocked entities: + - uid: 80 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 29.5,-16.5 + parent: 12 - uid: 1346 components: - type: Transform @@ -13982,12 +14043,6 @@ entities: - type: Transform pos: 30.5,-5.5 parent: 12 - - uid: 5434 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 15.5,-16.5 - parent: 12 - uid: 5435 components: - type: Transform @@ -14019,6 +14074,11 @@ entities: rot: 3.141592653589793 rad pos: -23.5,-8.5 parent: 12 + - uid: 79 + components: + - type: Transform + pos: 15.5,-16.5 + parent: 12 - uid: 494 components: - type: Transform @@ -14069,11 +14129,6 @@ entities: - type: Transform pos: 23.5,-19.5 parent: 12 - - uid: 5865 - components: - - type: Transform - pos: 29.5,-16.5 - parent: 12 - uid: 5866 components: - type: Transform @@ -14273,41 +14328,29 @@ entities: linkedPorts: 25549: - DoorStatus: InputB - - uid: 1537 + - uid: 2246 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,13.5 + pos: 59.5,-1.5 parent: 12 - type: DeviceLinkSink invokeCounter: 1 - type: DeviceLinkSource linkedPorts: - 1552: - - DoorStatus: DoorBolt - - uid: 1552 + 25549: + - DoorStatus: InputA + - uid: 4629 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,11.5 + rot: 3.141592653589793 rad + pos: 16.5,13.5 parent: 12 - type: DeviceLinkSink invokeCounter: 1 - type: DeviceLinkSource linkedPorts: - 1537: + 14474: - DoorStatus: DoorBolt - - uid: 2246 - components: - - type: Transform - pos: 59.5,-1.5 - parent: 12 - - type: DeviceLinkSink - invokeCounter: 1 - - type: DeviceLinkSource - linkedPorts: - 25549: - - DoorStatus: InputA - uid: 6350 components: - type: Transform @@ -14712,6 +14755,18 @@ entities: linkedPorts: 25550: - DoorStatus: InputB + - uid: 14474 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,11.5 + parent: 12 + - type: DeviceLinkSink + invokeCounter: 1 + - type: DeviceLinkSource + linkedPorts: + 4629: + - DoorStatus: DoorBolt - uid: 16347 components: - type: Transform @@ -15464,12 +15519,6 @@ entities: rot: -1.5707963267948966 rad pos: 32.5,44.5 parent: 12 - - uid: 24218 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 50.5,60.5 - parent: 12 - uid: 24219 components: - type: Transform @@ -15738,16 +15787,16 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,-33.5 parent: 12 - - uid: 9663 + - uid: 24134 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 34.5,-33.5 + pos: 45.5,46.5 parent: 12 - - uid: 24134 + - uid: 26727 components: - type: Transform - pos: 45.5,46.5 + rot: -1.5707963267948966 rad + pos: 35.5,-33.5 parent: 12 - proto: AirlockMaintAtmoLocked entities: @@ -16784,6 +16833,12 @@ entities: - type: Transform pos: -50.5,-22.5 parent: 12 + - uid: 11039 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 48.5,57.5 + parent: 12 - proto: AirlockScienceLocked entities: - uid: 486 @@ -17268,7 +17323,7 @@ entities: parent: 12 - type: DeviceNetwork deviceLists: - - 4887 + - 22005 - uid: 7350 components: - type: Transform @@ -18424,7 +18479,8 @@ entities: - uid: 5894 components: - type: Transform - pos: 29.66415,-23.535322 + rot: -43.98229715025713 rad + pos: 33.353954,-19.804523 parent: 12 - type: GasTank toggleActionEntity: 3128 @@ -18437,7 +18493,8 @@ entities: - uid: 5895 components: - type: Transform - pos: 29.333408,-23.36321 + rot: -43.98229715025713 rad + pos: 33.696545,-19.883226 parent: 12 - type: GasTank toggleActionEntity: 4142 @@ -18504,6 +18561,13 @@ entities: parent: 12 - proto: AnomalyScanner entities: + - uid: 9548 + components: + - type: Transform + parent: 9298 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 13796 components: - type: Transform @@ -18622,6 +18686,12 @@ entities: - type: Transform pos: -21.5,-48.5 parent: 12 + - uid: 3132 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 15.5,13.5 + parent: 12 - uid: 3146 components: - type: Transform @@ -18639,8 +18709,6 @@ entities: rot: -1.5707963267948966 rad pos: -9.5,-21.5 parent: 12 - - type: Apc - hasAccess: True - uid: 5600 components: - type: Transform @@ -18696,11 +18764,6 @@ entities: - type: Transform pos: 59.5,-27.5 parent: 12 - - uid: 9541 - components: - - type: Transform - pos: 16.5,13.5 - parent: 12 - uid: 9899 components: - type: Transform @@ -19001,12 +19064,6 @@ entities: rot: -1.5707963267948966 rad pos: -27.5,7.5 parent: 12 - - uid: 26652 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 51.5,0.5 - parent: 12 - uid: 26780 components: - type: Transform @@ -20401,10 +20458,10 @@ entities: - type: Transform pos: 18.5,-25.5 parent: 12 - - uid: 5542 + - uid: 5620 components: - type: Transform - pos: 44.5,0.5 + pos: 50.5,1.5 parent: 12 - proto: BannerGreen entities: @@ -21981,11 +22038,6 @@ entities: - type: Transform pos: -8.5,-35.5 parent: 12 - - uid: 5253 - components: - - type: Transform - pos: 33.5,-15.5 - parent: 12 - uid: 7509 components: - type: Transform @@ -22052,6 +22104,12 @@ entities: - 0 - 0 - 0 + - uid: 26715 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 27.5,-14.5 + parent: 12 - uid: 27093 components: - type: Transform @@ -22356,6 +22414,14 @@ entities: - type: Transform pos: -29.430593,58.567467 parent: 12 +- proto: BoxInflatable + entities: + - uid: 26848 + components: + - type: Transform + rot: -43.98229715025713 rad + pos: 33.488213,-20.573042 + parent: 12 - proto: BoxingBell entities: - uid: 12634 @@ -22700,6 +22766,12 @@ entities: rot: 1.5707963267948966 rad pos: -2.5,-13.5 parent: 12 + - uid: 213 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-17.5 + parent: 12 - uid: 495 components: - type: Transform @@ -22736,6 +22808,12 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,29.5 parent: 12 + - uid: 14211 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 10.5,-12.5 + parent: 12 - uid: 15861 components: - type: Transform @@ -22831,11 +22909,6 @@ entities: - type: Transform pos: 51.5,-12.5 parent: 12 - - uid: 68 - components: - - type: Transform - pos: 35.5,-31.5 - parent: 12 - uid: 72 components: - type: Transform @@ -22851,10 +22924,10 @@ entities: - type: Transform pos: -10.5,4.5 parent: 12 - - uid: 79 + - uid: 97 components: - type: Transform - pos: 34.5,-32.5 + pos: 14.5,12.5 parent: 12 - uid: 98 components: @@ -22886,15 +22959,15 @@ entities: - type: Transform pos: 4.5,20.5 parent: 12 - - uid: 190 + - uid: 194 components: - type: Transform - pos: 37.5,-31.5 + pos: 14.5,-3.5 parent: 12 - - uid: 194 + - uid: 203 components: - type: Transform - pos: 14.5,-3.5 + pos: 35.5,-33.5 parent: 12 - uid: 253 components: @@ -22906,21 +22979,11 @@ entities: - type: Transform pos: 1.5,68.5 parent: 12 - - uid: 271 - components: - - type: Transform - pos: 34.5,-31.5 - parent: 12 - uid: 272 components: - type: Transform pos: 40.5,-13.5 parent: 12 - - uid: 273 - components: - - type: Transform - pos: 36.5,-31.5 - parent: 12 - uid: 317 components: - type: Transform @@ -24261,6 +24324,11 @@ entities: - type: Transform pos: 17.5,17.5 parent: 12 + - uid: 2120 + components: + - type: Transform + pos: 48.5,58.5 + parent: 12 - uid: 2136 components: - type: Transform @@ -25851,6 +25919,11 @@ entities: - type: Transform pos: 7.5,-51.5 parent: 12 + - uid: 4188 + components: + - type: Transform + pos: 12.5,-15.5 + parent: 12 - uid: 4190 components: - type: Transform @@ -26316,6 +26389,11 @@ entities: - type: Transform pos: -28.5,8.5 parent: 12 + - uid: 5067 + components: + - type: Transform + pos: 36.5,-31.5 + parent: 12 - uid: 5080 components: - type: Transform @@ -26411,6 +26489,16 @@ entities: - type: Transform pos: 42.5,-39.5 parent: 12 + - uid: 5253 + components: + - type: Transform + pos: 35.5,-31.5 + parent: 12 + - uid: 5255 + components: + - type: Transform + pos: 37.5,-31.5 + parent: 12 - uid: 5322 components: - type: Transform @@ -26791,16 +26879,6 @@ entities: - type: Transform pos: 14.5,-16.5 parent: 12 - - uid: 5725 - components: - - type: Transform - pos: 13.5,-16.5 - parent: 12 - - uid: 5726 - components: - - type: Transform - pos: 12.5,-16.5 - parent: 12 - uid: 5727 components: - type: Transform @@ -27201,6 +27279,11 @@ entities: - type: Transform pos: 15.5,-3.5 parent: 12 + - uid: 5914 + components: + - type: Transform + pos: 14.5,13.5 + parent: 12 - uid: 5927 components: - type: Transform @@ -27326,11 +27409,6 @@ entities: - type: Transform pos: 37.5,4.5 parent: 12 - - uid: 6287 - components: - - type: Transform - pos: 13.5,13.5 - parent: 12 - uid: 6703 components: - type: Transform @@ -27341,16 +27419,6 @@ entities: - type: Transform pos: 35.5,0.5 parent: 12 - - uid: 6732 - components: - - type: Transform - pos: 13.5,14.5 - parent: 12 - - uid: 6739 - components: - - type: Transform - pos: 14.5,14.5 - parent: 12 - uid: 6778 components: - type: Transform @@ -29046,6 +29114,11 @@ entities: - type: Transform pos: 43.5,-9.5 parent: 12 + - uid: 8447 + components: + - type: Transform + pos: 15.5,13.5 + parent: 12 - uid: 8463 components: - type: Transform @@ -29396,11 +29469,6 @@ entities: - type: Transform pos: 34.5,-34.5 parent: 12 - - uid: 9178 - components: - - type: Transform - pos: 34.5,-33.5 - parent: 12 - uid: 9179 components: - type: Transform @@ -30111,11 +30179,6 @@ entities: - type: Transform pos: 11.5,12.5 parent: 12 - - uid: 11047 - components: - - type: Transform - pos: 15.5,14.5 - parent: 12 - uid: 11129 components: - type: Transform @@ -34376,11 +34439,6 @@ entities: - type: Transform pos: 16.5,12.5 parent: 12 - - uid: 16339 - components: - - type: Transform - pos: 15.5,12.5 - parent: 12 - uid: 16344 components: - type: Transform @@ -34391,6 +34449,11 @@ entities: - type: Transform pos: 11.5,21.5 parent: 12 + - uid: 16349 + components: + - type: Transform + pos: 16.5,11.5 + parent: 12 - uid: 16351 components: - type: Transform @@ -36151,16 +36214,6 @@ entities: - type: Transform pos: 49.5,63.5 parent: 12 - - uid: 18642 - components: - - type: Transform - pos: 49.5,60.5 - parent: 12 - - uid: 18643 - components: - - type: Transform - pos: 48.5,60.5 - parent: 12 - uid: 18741 components: - type: Transform @@ -36381,6 +36434,16 @@ entities: - type: Transform pos: -0.5,-15.5 parent: 12 + - uid: 19560 + components: + - type: Transform + pos: 13.5,-15.5 + parent: 12 + - uid: 19561 + components: + - type: Transform + pos: 14.5,-15.5 + parent: 12 - uid: 19643 components: - type: Transform @@ -36426,11 +36489,6 @@ entities: - type: Transform pos: 52.5,64.5 parent: 12 - - uid: 19861 - components: - - type: Transform - pos: 48.5,61.5 - parent: 12 - uid: 19885 components: - type: Transform @@ -38151,11 +38209,6 @@ entities: - type: Transform pos: -23.5,54.5 parent: 12 - - uid: 22059 - components: - - type: Transform - pos: -23.5,53.5 - parent: 12 - uid: 22060 components: - type: Transform @@ -38166,6 +38219,11 @@ entities: - type: Transform pos: -46.5,53.5 parent: 12 + - uid: 22160 + components: + - type: Transform + pos: 38.5,-31.5 + parent: 12 - uid: 22217 components: - type: Transform @@ -40091,6 +40149,11 @@ entities: - type: Transform pos: -23.5,-12.5 parent: 12 + - uid: 25532 + components: + - type: Transform + pos: 35.5,-32.5 + parent: 12 - uid: 25568 components: - type: Transform @@ -40256,16 +40319,6 @@ entities: - type: Transform pos: 59.5,-48.5 parent: 12 - - uid: 26425 - components: - - type: Transform - pos: 1.5,-21.5 - parent: 12 - - uid: 26434 - components: - - type: Transform - pos: 51.5,0.5 - parent: 12 - uid: 26444 components: - type: Transform @@ -40376,21 +40429,6 @@ entities: - type: Transform pos: 15.5,7.5 parent: 12 - - uid: 26589 - components: - - type: Transform - pos: 3.5,-21.5 - parent: 12 - - uid: 26599 - components: - - type: Transform - pos: 4.5,-21.5 - parent: 12 - - uid: 26600 - components: - - type: Transform - pos: 2.5,-21.5 - parent: 12 - uid: 26615 components: - type: Transform @@ -40406,6 +40444,16 @@ entities: - type: Transform pos: 26.5,7.5 parent: 12 + - uid: 26750 + components: + - type: Transform + pos: 48.5,59.5 + parent: 12 + - uid: 26751 + components: + - type: Transform + pos: 48.5,60.5 + parent: 12 - uid: 26766 components: - type: Transform @@ -40461,6 +40509,11 @@ entities: - type: Transform pos: 28.5,10.5 parent: 12 + - uid: 26803 + components: + - type: Transform + pos: 48.5,57.5 + parent: 12 - uid: 26812 components: - type: Transform @@ -40526,6 +40579,51 @@ entities: - type: Transform pos: 65.5,-2.5 parent: 12 + - uid: 26875 + components: + - type: Transform + pos: -21.5,-29.5 + parent: 12 + - uid: 26876 + components: + - type: Transform + pos: -20.5,-29.5 + parent: 12 + - uid: 26877 + components: + - type: Transform + pos: -20.5,-28.5 + parent: 12 + - uid: 26878 + components: + - type: Transform + pos: -21.5,-30.5 + parent: 12 + - uid: 26879 + components: + - type: Transform + pos: -21.5,-31.5 + parent: 12 + - uid: 26880 + components: + - type: Transform + pos: -21.5,-32.5 + parent: 12 + - uid: 26881 + components: + - type: Transform + pos: -17.5,-33.5 + parent: 12 + - uid: 26882 + components: + - type: Transform + pos: -18.5,-33.5 + parent: 12 + - uid: 26886 + components: + - type: Transform + pos: 57.5,6.5 + parent: 12 - uid: 26922 components: - type: Transform @@ -41686,11 +41784,6 @@ entities: - type: Transform pos: 55.5,5.5 parent: 12 - - uid: 28890 - components: - - type: Transform - pos: 58.5,7.5 - parent: 12 - uid: 28908 components: - type: Transform @@ -42541,11 +42634,6 @@ entities: - type: Transform pos: 11.5,-24.5 parent: 12 - - uid: 29980 - components: - - type: Transform - pos: 14.5,-24.5 - parent: 12 - uid: 29983 components: - type: Transform @@ -43801,11 +43889,6 @@ entities: - type: Transform pos: 43.47266,63.509254 parent: 12 - - uid: 22062 - components: - - type: Transform - pos: -22.412212,55.392742 - parent: 12 - uid: 31067 components: - type: Transform @@ -43819,6 +43902,11 @@ entities: parent: 12 - proto: CableApcStack10 entities: + - uid: 3011 + components: + - type: Transform + pos: -25.504803,56.737953 + parent: 12 - uid: 17622 components: - type: Transform @@ -43826,10 +43914,10 @@ entities: parent: 12 - proto: Cablecuffs entities: - - uid: 22063 + - uid: 5820 components: - type: Transform - pos: -24.345606,55.376434 + pos: -24.5,54.5 parent: 12 - uid: 31135 components: @@ -43879,6 +43967,11 @@ entities: - type: Transform pos: 38.5,-1.5 parent: 12 + - uid: 212 + components: + - type: Transform + pos: 21.5,-8.5 + parent: 12 - uid: 230 components: - type: Transform @@ -44164,11 +44257,6 @@ entities: - type: Transform pos: 43.5,-3.5 parent: 12 - - uid: 1350 - components: - - type: Transform - pos: 13.5,-12.5 - parent: 12 - uid: 1353 components: - type: Transform @@ -44339,6 +44427,11 @@ entities: - type: Transform pos: 14.5,-15.5 parent: 12 + - uid: 2575 + components: + - type: Transform + pos: 21.5,-7.5 + parent: 12 - uid: 2669 components: - type: Transform @@ -44569,6 +44662,11 @@ entities: - type: Transform pos: -9.5,-28.5 parent: 12 + - uid: 3238 + components: + - type: Transform + pos: 21.5,-3.5 + parent: 12 - uid: 3517 components: - type: Transform @@ -44579,6 +44677,11 @@ entities: - type: Transform pos: 16.5,5.5 parent: 12 + - uid: 3940 + components: + - type: Transform + pos: 21.5,-6.5 + parent: 12 - uid: 3945 components: - type: Transform @@ -44689,6 +44792,21 @@ entities: - type: Transform pos: 12.5,-18.5 parent: 12 + - uid: 4466 + components: + - type: Transform + pos: 21.5,-1.5 + parent: 12 + - uid: 4467 + components: + - type: Transform + pos: 21.5,-4.5 + parent: 12 + - uid: 4470 + components: + - type: Transform + pos: 21.5,-2.5 + parent: 12 - uid: 4480 components: - type: Transform @@ -44909,6 +45027,16 @@ entities: - type: Transform pos: 12.5,-16.5 parent: 12 + - uid: 4551 + components: + - type: Transform + pos: 13.5,-13.5 + parent: 12 + - uid: 4552 + components: + - type: Transform + pos: 14.5,-13.5 + parent: 12 - uid: 4600 components: - type: Transform @@ -44979,6 +45107,11 @@ entities: - type: Transform pos: -14.5,-23.5 parent: 12 + - uid: 4709 + components: + - type: Transform + pos: 10.5,-14.5 + parent: 12 - uid: 4713 components: - type: Transform @@ -44999,11 +45132,6 @@ entities: - type: Transform pos: 0.5,16.5 parent: 12 - - uid: 4785 - components: - - type: Transform - pos: 14.5,-12.5 - parent: 12 - uid: 4799 components: - type: Transform @@ -45259,6 +45387,16 @@ entities: - type: Transform pos: 1.5,15.5 parent: 12 + - uid: 5483 + components: + - type: Transform + pos: 21.5,2.5 + parent: 12 + - uid: 5487 + components: + - type: Transform + pos: 15.5,-11.5 + parent: 12 - uid: 5638 components: - type: Transform @@ -45279,6 +45417,11 @@ entities: - type: Transform pos: 17.5,-16.5 parent: 12 + - uid: 5725 + components: + - type: Transform + pos: 13.5,-14.5 + parent: 12 - uid: 5759 components: - type: Transform @@ -47079,6 +47222,11 @@ entities: - type: Transform pos: 43.5,-0.5 parent: 12 + - uid: 10803 + components: + - type: Transform + pos: 22.5,3.5 + parent: 12 - uid: 10814 components: - type: Transform @@ -47259,6 +47407,11 @@ entities: - type: Transform pos: 27.5,10.5 parent: 12 + - uid: 10874 + components: + - type: Transform + pos: 38.5,-14.5 + parent: 12 - uid: 10878 components: - type: Transform @@ -47419,6 +47572,11 @@ entities: - type: Transform pos: 18.5,20.5 parent: 12 + - uid: 11323 + components: + - type: Transform + pos: 21.5,3.5 + parent: 12 - uid: 11330 components: - type: Transform @@ -47614,6 +47772,11 @@ entities: - type: Transform pos: -2.5,34.5 parent: 12 + - uid: 11944 + components: + - type: Transform + pos: 12.5,-14.5 + parent: 12 - uid: 11955 components: - type: Transform @@ -50759,6 +50922,11 @@ entities: - type: Transform pos: -49.5,46.5 parent: 12 + - uid: 21032 + components: + - type: Transform + pos: 14.5,-14.5 + parent: 12 - uid: 21077 components: - type: Transform @@ -50829,6 +50997,11 @@ entities: - type: Transform pos: -10.5,-2.5 parent: 12 + - uid: 21906 + components: + - type: Transform + pos: 12.5,-15.5 + parent: 12 - uid: 21912 components: - type: Transform @@ -50854,6 +51027,11 @@ entities: - type: Transform pos: 15.5,5.5 parent: 12 + - uid: 21935 + components: + - type: Transform + pos: 13.5,-15.5 + parent: 12 - uid: 21937 components: - type: Transform @@ -50894,6 +51072,11 @@ entities: - type: Transform pos: 31.5,-7.5 parent: 12 + - uid: 22063 + components: + - type: Transform + pos: 41.5,-14.5 + parent: 12 - uid: 22109 components: - type: Transform @@ -51474,6 +51657,11 @@ entities: - type: Transform pos: -24.5,-46.5 parent: 12 + - uid: 24565 + components: + - type: Transform + pos: 21.5,-0.5 + parent: 12 - uid: 24633 components: - type: Transform @@ -51554,6 +51742,11 @@ entities: - type: Transform pos: 58.5,5.5 parent: 12 + - uid: 25534 + components: + - type: Transform + pos: 11.5,-14.5 + parent: 12 - uid: 25535 components: - type: Transform @@ -51569,6 +51762,11 @@ entities: - type: Transform pos: 30.5,14.5 parent: 12 + - uid: 25613 + components: + - type: Transform + pos: 9.5,-14.5 + parent: 12 - uid: 25763 components: - type: Transform @@ -51969,11 +52167,21 @@ entities: - type: Transform pos: -9.5,-19.5 parent: 12 + - uid: 26552 + components: + - type: Transform + pos: 14.5,-11.5 + parent: 12 - uid: 26583 components: - type: Transform pos: 30.5,-2.5 parent: 12 + - uid: 26589 + components: + - type: Transform + pos: 12.5,-13.5 + parent: 12 - uid: 26606 components: - type: Transform @@ -52049,6 +52257,11 @@ entities: - type: Transform pos: 44.5,-0.5 parent: 12 + - uid: 26680 + components: + - type: Transform + pos: 40.5,-14.5 + parent: 12 - uid: 26690 components: - type: Transform @@ -52069,6 +52282,16 @@ entities: - type: Transform pos: 65.5,0.5 parent: 12 + - uid: 26713 + components: + - type: Transform + pos: 39.5,-14.5 + parent: 12 + - uid: 26714 + components: + - type: Transform + pos: 42.5,-14.5 + parent: 12 - uid: 26719 components: - type: Transform @@ -52119,6 +52342,21 @@ entities: - type: Transform pos: 45.5,8.5 parent: 12 + - uid: 26752 + components: + - type: Transform + pos: 22.5,4.5 + parent: 12 + - uid: 26757 + components: + - type: Transform + pos: 21.5,0.5 + parent: 12 + - uid: 26763 + components: + - type: Transform + pos: 21.5,1.5 + parent: 12 - uid: 26805 components: - type: Transform @@ -52129,6 +52367,51 @@ entities: - type: Transform pos: 40.5,-1.5 parent: 12 + - uid: 26853 + components: + - type: Transform + pos: 21.5,-9.5 + parent: 12 + - uid: 26855 + components: + - type: Transform + pos: 21.5,-10.5 + parent: 12 + - uid: 26857 + components: + - type: Transform + pos: 21.5,-5.5 + parent: 12 + - uid: 26859 + components: + - type: Transform + pos: 21.5,-11.5 + parent: 12 + - uid: 26860 + components: + - type: Transform + pos: 22.5,-11.5 + parent: 12 + - uid: 26862 + components: + - type: Transform + pos: 22.5,-12.5 + parent: 12 + - uid: 26863 + components: + - type: Transform + pos: 22.5,-13.5 + parent: 12 + - uid: 26864 + components: + - type: Transform + pos: 22.5,-14.5 + parent: 12 + - uid: 26867 + components: + - type: Transform + pos: 21.5,-14.5 + parent: 12 - uid: 26893 components: - type: Transform @@ -55179,6 +55462,11 @@ entities: - type: Transform pos: 0.5,2.5 parent: 12 + - uid: 211 + components: + - type: Transform + pos: 15.5,13.5 + parent: 12 - uid: 278 components: - type: Transform @@ -56459,6 +56747,11 @@ entities: - type: Transform pos: -1.5,-1.5 parent: 12 + - uid: 4012 + components: + - type: Transform + pos: 54.5,-0.5 + parent: 12 - uid: 4258 components: - type: Transform @@ -56509,6 +56802,36 @@ entities: - type: Transform pos: 55.5,5.5 parent: 12 + - uid: 4412 + components: + - type: Transform + pos: 54.5,-1.5 + parent: 12 + - uid: 4434 + components: + - type: Transform + pos: 55.5,-1.5 + parent: 12 + - uid: 4459 + components: + - type: Transform + pos: 56.5,-1.5 + parent: 12 + - uid: 4464 + components: + - type: Transform + pos: 57.5,-1.5 + parent: 12 + - uid: 4472 + components: + - type: Transform + pos: 54.5,1.5 + parent: 12 + - uid: 4473 + components: + - type: Transform + pos: 54.5,0.5 + parent: 12 - uid: 4602 components: - type: Transform @@ -56614,11 +56937,6 @@ entities: - type: Transform pos: -11.5,-31.5 parent: 12 - - uid: 4969 - components: - - type: Transform - pos: 15.5,11.5 - parent: 12 - uid: 4977 components: - type: Transform @@ -57054,6 +57372,11 @@ entities: - type: Transform pos: 28.5,-8.5 parent: 12 + - uid: 6739 + components: + - type: Transform + pos: 61.5,9.5 + parent: 12 - uid: 6756 components: - type: Transform @@ -57064,6 +57387,16 @@ entities: - type: Transform pos: 9.5,-21.5 parent: 12 + - uid: 6775 + components: + - type: Transform + pos: 61.5,8.5 + parent: 12 + - uid: 6777 + components: + - type: Transform + pos: -49.5,55.5 + parent: 12 - uid: 6891 components: - type: Transform @@ -57084,6 +57417,16 @@ entities: - type: Transform pos: 10.5,-39.5 parent: 12 + - uid: 7101 + components: + - type: Transform + pos: 61.5,7.5 + parent: 12 + - uid: 7114 + components: + - type: Transform + pos: 14.5,-15.5 + parent: 12 - uid: 7124 components: - type: Transform @@ -57124,11 +57467,6 @@ entities: - type: Transform pos: 15.5,5.5 parent: 12 - - uid: 7276 - components: - - type: Transform - pos: 52.5,-0.5 - parent: 12 - uid: 7328 components: - type: Transform @@ -57919,11 +58257,6 @@ entities: - type: Transform pos: 54.5,11.5 parent: 12 - - uid: 9503 - components: - - type: Transform - pos: 15.5,12.5 - parent: 12 - uid: 9505 components: - type: Transform @@ -57984,11 +58317,6 @@ entities: - type: Transform pos: 37.5,-1.5 parent: 12 - - uid: 9711 - components: - - type: Transform - pos: 51.5,0.5 - parent: 12 - uid: 9720 components: - type: Transform @@ -58309,11 +58637,6 @@ entities: - type: Transform pos: -0.5,-18.5 parent: 12 - - uid: 10144 - components: - - type: Transform - pos: 52.5,0.5 - parent: 12 - uid: 10196 components: - type: Transform @@ -58334,11 +58657,6 @@ entities: - type: Transform pos: -54.5,13.5 parent: 12 - - uid: 10305 - components: - - type: Transform - pos: 58.5,7.5 - parent: 12 - uid: 10307 components: - type: Transform @@ -58579,11 +58897,6 @@ entities: - type: Transform pos: -47.5,15.5 parent: 12 - - uid: 11323 - components: - - type: Transform - pos: 13.5,-16.5 - parent: 12 - uid: 11331 components: - type: Transform @@ -60604,10 +60917,10 @@ entities: - type: Transform pos: -0.5,3.5 parent: 12 - - uid: 16546 + - uid: 16586 components: - type: Transform - pos: 52.5,1.5 + pos: 16.5,11.5 parent: 12 - uid: 16644 components: @@ -62619,11 +62932,6 @@ entities: - type: Transform pos: -48.5,55.5 parent: 12 - - uid: 20539 - components: - - type: Transform - pos: -49.5,56.5 - parent: 12 - uid: 20544 components: - type: Transform @@ -63104,6 +63412,11 @@ entities: - type: Transform pos: -56.5,61.5 parent: 12 + - uid: 23884 + components: + - type: Transform + pos: -50.5,55.5 + parent: 12 - uid: 24661 components: - type: Transform @@ -64119,6 +64432,11 @@ entities: - type: Transform pos: 58.5,4.5 parent: 12 + - uid: 26531 + components: + - type: Transform + pos: 16.5,10.5 + parent: 12 - uid: 26545 components: - type: Transform @@ -64234,11 +64552,6 @@ entities: - type: Transform pos: 63.5,2.5 parent: 12 - - uid: 26831 - components: - - type: Transform - pos: 52.5,2.5 - parent: 12 - uid: 26844 components: - type: Transform @@ -64259,36 +64572,21 @@ entities: - type: Transform pos: 54.5,2.5 parent: 12 - - uid: 26848 + - uid: 26884 components: - type: Transform - pos: 53.5,2.5 + pos: 62.5,9.5 parent: 12 - - uid: 26900 + - uid: 26885 components: - type: Transform - pos: 55.5,2.5 - parent: 12 - - uid: 27019 - components: - - type: Transform - pos: 54.5,-0.5 - parent: 12 - - uid: 27113 - components: - - type: Transform - pos: 51.5,-0.5 + pos: 57.5,6.5 parent: 12 - uid: 27114 components: - type: Transform pos: 54.5,13.5 parent: 12 - - uid: 27115 - components: - - type: Transform - pos: 53.5,-0.5 - parent: 12 - uid: 27253 components: - type: Transform @@ -64299,11 +64597,6 @@ entities: - type: Transform pos: -33.5,-35.5 parent: 12 - - uid: 27325 - components: - - type: Transform - pos: 54.5,0.5 - parent: 12 - uid: 27358 components: - type: Transform @@ -64779,11 +65072,6 @@ entities: - type: Transform pos: 5.5,-47.5 parent: 12 - - uid: 28888 - components: - - type: Transform - pos: 54.5,1.5 - parent: 12 - uid: 28986 components: - type: Transform @@ -66156,6 +66444,24 @@ entities: rot: 1.5707963267948966 rad pos: 49.5,-44.5 parent: 12 + - uid: 10305 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 13.5,-15.5 + parent: 12 + - uid: 10561 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 12.5,-15.5 + parent: 12 + - uid: 10605 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-15.5 + parent: 12 - uid: 14271 components: - type: Transform @@ -69419,6 +69725,11 @@ entities: - type: Transform pos: 54.5,10.5 parent: 12 + - uid: 4477 + components: + - type: Transform + pos: -46.5,44.5 + parent: 12 - uid: 4593 components: - type: Transform @@ -69571,6 +69882,12 @@ entities: rot: 3.141592653589793 rad pos: 6.5,-12.5 parent: 12 + - uid: 5273 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 14.5,-15.5 + parent: 12 - uid: 5319 components: - type: Transform @@ -70279,6 +70596,12 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,-0.5 parent: 12 + - uid: 7276 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 14.5,-16.5 + parent: 12 - uid: 7621 components: - type: Transform @@ -70775,6 +71098,12 @@ entities: - type: Transform pos: 65.5,10.5 parent: 12 + - uid: 8928 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-16.5 + parent: 12 - uid: 8937 components: - type: Transform @@ -71191,6 +71520,12 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,29.5 parent: 12 + - uid: 14175 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-16.5 + parent: 12 - uid: 14294 components: - type: Transform @@ -71461,10 +71796,10 @@ entities: - type: Transform pos: 51.5,76.5 parent: 12 - - uid: 15115 + - uid: 15007 components: - type: Transform - rot: 3.141592653589793 rad + rot: 1.5707963267948966 rad pos: 6.5,-16.5 parent: 12 - uid: 15678 @@ -71542,6 +71877,12 @@ entities: rot: 1.5707963267948966 rad pos: 5.5,6.5 parent: 12 + - uid: 16870 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 6.5,-14.5 + parent: 12 - uid: 17226 components: - type: Transform @@ -71791,6 +72132,12 @@ entities: - type: Transform pos: -67.5,53.5 parent: 12 + - uid: 19278 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-15.5 + parent: 12 - uid: 19559 components: - type: Transform @@ -72879,11 +73226,6 @@ entities: - type: Transform pos: -46.5,45.5 parent: 12 - - uid: 24673 - components: - - type: Transform - pos: -46.5,44.5 - parent: 12 - uid: 24674 components: - type: Transform @@ -73144,6 +73486,12 @@ entities: rot: 3.141592653589793 rad pos: 29.5,10.5 parent: 12 + - uid: 26797 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-15.5 + parent: 12 - uid: 27064 components: - type: Transform @@ -73162,12 +73510,6 @@ entities: rot: 3.141592653589793 rad pos: 6.5,-13.5 parent: 12 - - uid: 27318 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 6.5,-14.5 - parent: 12 - uid: 27319 components: - type: Transform @@ -74875,12 +75217,6 @@ entities: - type: Transform pos: 31.5,-3.5 parent: 12 - - uid: 6151 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,-3.5 - parent: 12 - uid: 6266 components: - type: Transform @@ -74974,12 +75310,22 @@ entities: rot: -1.5707963267948966 rad pos: 54.5,-24.5 parent: 12 + - uid: 9664 + components: + - type: Transform + pos: 48.5,1.5 + parent: 12 - uid: 9706 components: - type: Transform rot: 1.5707963267948966 rad pos: 39.5,36.5 parent: 12 + - uid: 9784 + components: + - type: Transform + pos: 49.5,1.5 + parent: 12 - uid: 9962 components: - type: Transform @@ -75202,6 +75548,12 @@ entities: - type: Transform pos: -42.5,62.5 parent: 12 + - uid: 19619 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 29.5,-10.5 + parent: 12 - uid: 20875 components: - type: Transform @@ -75441,6 +75793,11 @@ entities: rot: 1.5707963267948966 rad pos: -11.5,55.5 parent: 12 + - uid: 22141 + components: + - type: Transform + pos: 29.5,-8.5 + parent: 12 - uid: 22171 components: - type: Transform @@ -75939,18 +76296,6 @@ entities: rot: -1.5707963267948966 rad pos: 46.5,56.5 parent: 12 - - uid: 25933 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,57.5 - parent: 12 - - uid: 25934 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,58.5 - parent: 12 - uid: 26001 components: - type: Transform @@ -75997,6 +76342,18 @@ entities: rot: -1.5707963267948966 rad pos: -17.5,70.5 parent: 12 + - uid: 26887 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 50.5,59.5 + parent: 12 + - uid: 26888 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 50.5,58.5 + parent: 12 - uid: 28037 components: - type: Transform @@ -76054,40 +76411,17 @@ entities: rot: 3.141592653589793 rad pos: 29.5,-3.5 parent: 12 - - uid: 29351 - components: - - type: Transform - pos: 29.5,-7.5 - parent: 12 - - uid: 29352 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 29.5,-9.5 - parent: 12 - uid: 29838 components: - type: Transform pos: -38.5,60.5 parent: 12 - - uid: 29972 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 13.5,-12.5 - parent: 12 - uid: 29973 components: - type: Transform rot: 3.141592653589793 rad pos: 15.5,-12.5 parent: 12 - - uid: 29974 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 14.5,-12.5 - parent: 12 - uid: 31264 components: - type: Transform @@ -76527,6 +76861,12 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,21.5 parent: 12 + - uid: 4780 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 17.5,-15.5 + parent: 12 - uid: 5970 components: - type: Transform @@ -76670,11 +77010,6 @@ entities: - type: Transform pos: -25.366394,45.399204 parent: 12 - - uid: 22064 - components: - - type: Transform - pos: -23.224808,54.359283 - parent: 12 - proto: CheapRollerBedSpawnFolded entities: - uid: 13865 @@ -77009,11 +77344,6 @@ entities: - type: Transform pos: -13.5,-19.5 parent: 12 - - uid: 9567 - components: - - type: Transform - pos: 16.5,12.5 - parent: 12 - uid: 9819 components: - type: Transform @@ -77169,16 +77499,21 @@ entities: - type: Transform pos: -0.5,10.5 parent: 12 - - uid: 26205 + - uid: 26473 components: - type: Transform - pos: 1.5,-23.5 + pos: -6.5,-14.5 parent: 12 - uid: 26682 components: - type: Transform pos: 14.5,7.5 parent: 12 + - uid: 26728 + components: + - type: Transform + pos: 33.5,-31.5 + parent: 12 - uid: 27016 components: - type: Transform @@ -77289,10 +77624,10 @@ entities: - type: Transform pos: 41.5,59.5 parent: 12 - - uid: 28947 + - uid: 26683 components: - type: Transform - pos: 4.5,-23.5 + pos: -6.5,-15.5 parent: 12 - uid: 31273 components: @@ -77361,11 +77696,6 @@ entities: - type: Transform pos: 52.5,52.5 parent: 12 - - uid: 24223 - components: - - type: Transform - pos: 46.5,60.5 - parent: 12 - uid: 24236 components: - type: Transform @@ -77451,6 +77781,11 @@ entities: - type: Transform pos: -45.5,30.5 parent: 12 + - uid: 26796 + components: + - type: Transform + pos: 45.5,60.5 + parent: 12 - uid: 27833 components: - type: Transform @@ -77843,6 +78178,21 @@ entities: - type: Transform pos: 4.5,64.5 parent: 12 + - uid: 26634 + components: + - type: Transform + pos: -6.5,-17.5 + parent: 12 + - uid: 26784 + components: + - type: Transform + pos: 33.5,-30.5 + parent: 12 + - uid: 26786 + components: + - type: Transform + pos: -4.5,-23.5 + parent: 12 - uid: 27327 components: - type: Transform @@ -77884,11 +78234,6 @@ entities: - type: Transform pos: 29.5,8.5 parent: 12 - - uid: 29165 - components: - - type: Transform - pos: -2.5,-23.5 - parent: 12 - uid: 29638 components: - type: Transform @@ -77921,11 +78266,6 @@ entities: - type: Transform pos: -33.5,-39.5 parent: 12 - - uid: 6771 - components: - - type: Transform - pos: 29.5,-6.5 - parent: 12 - uid: 17199 components: - type: Transform @@ -78128,7 +78468,8 @@ entities: - uid: 25378 components: - type: Transform - pos: 11.527891,-16.45502 + rot: -100.53096491487331 rad + pos: 9.531616,-13.506657 parent: 12 - proto: ClothingBeltUtilityFilled entities: @@ -78276,15 +78617,15 @@ entities: - type: Transform pos: 33.68242,-17.632181 parent: 12 - - uid: 5909 + - uid: 9236 components: - type: Transform - pos: 33.729294,-18.522806 + pos: 42.52788,-37.64374 parent: 12 - - uid: 9236 + - uid: 19204 components: - type: Transform - pos: 42.52788,-37.64374 + pos: 21.5,-23.5 parent: 12 - uid: 23685 components: @@ -78293,6 +78634,13 @@ entities: parent: 12 - proto: ClothingHandsGlovesLatex entities: + - uid: 9488 + components: + - type: Transform + parent: 9298 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 13266 components: - type: Transform @@ -78449,6 +78797,14 @@ entities: - type: Transform pos: -15.479212,51.570213 parent: 12 +- proto: ClothingHeadHatSurgcapBlue + entities: + - uid: 5726 + components: + - type: Transform + rot: -12.566370614359172 rad + pos: -22.27849,52.449715 + parent: 12 - proto: ClothingHeadHatTophat entities: - uid: 23553 @@ -78669,6 +79025,13 @@ entities: rot: -25.132741228718352 rad pos: 17.825888,-13.641907 parent: 12 +- proto: ClothingMaskMuzzle + entities: + - uid: 26829 + components: + - type: Transform + pos: -24.5,53.5 + parent: 12 - proto: ClothingMaskSterile entities: - uid: 8888 @@ -78676,6 +79039,13 @@ entities: - type: Transform pos: -12.50767,-45.32497 parent: 12 + - uid: 9503 + components: + - type: Transform + parent: 9298 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 13276 components: - type: Transform @@ -78773,6 +79143,13 @@ entities: actions: !type:Container ents: - 4711 +- proto: ClothingOuterApronBar + entities: + - uid: 19822 + components: + - type: Transform + pos: 38.296032,-30.817263 + parent: 12 - proto: ClothingOuterApronBotanist entities: - uid: 21363 @@ -79407,12 +79784,6 @@ entities: - type: Transform pos: 42.5,64.5 parent: 12 - - uid: 25038 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 46.5,58.5 - parent: 12 - uid: 25835 components: - type: Transform @@ -79509,11 +79880,6 @@ entities: rot: 3.141592653589793 rad pos: 24.5,65.5 parent: 12 - - uid: 30196 - components: - - type: Transform - pos: -22.5,53.5 - parent: 12 - proto: ComfyChair entities: - uid: 887 @@ -79727,10 +80093,11 @@ entities: rot: 1.5707963267948966 rad pos: 25.5,-20.5 parent: 12 - - uid: 4012 + - uid: 4785 components: - type: Transform - pos: 17.5,-15.5 + rot: -1.5707963267948966 rad + pos: 18.5,-15.5 parent: 12 - uid: 29966 components: @@ -80025,11 +80392,6 @@ entities: rot: 1.5707963267948966 rad pos: -49.5,27.5 parent: 12 - - uid: 4732 - components: - - type: Transform - pos: 18.5,-15.5 - parent: 12 - uid: 5474 components: - type: Transform @@ -80058,6 +80420,12 @@ entities: - type: Transform pos: -6.5,36.5 parent: 12 + - uid: 25831 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,-16.5 + parent: 12 - proto: ComputerRadar entities: - uid: 2447 @@ -80963,6 +81331,11 @@ entities: - 0 - 0 - 0 + - uid: 22064 + components: + - type: Transform + pos: 47.5,60.5 + parent: 12 - proto: CrateBaseSecure entities: - uid: 6770 @@ -81043,13 +81416,6 @@ entities: - type: Transform pos: -8.5,13.5 parent: 12 -- proto: CrateEmergencyRadiation - entities: - - uid: 5983 - components: - - type: Transform - pos: 25.5,-18.5 - parent: 12 - proto: CrateEmptySpawner entities: - uid: 436 @@ -81208,8 +81574,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -81227,8 +81593,90 @@ entities: occludes: True ents: - 5888 - - 5886 + - 4851 + - 4887 - 5885 + - 5886 + paper_label: !type:ContainerSlot + showEnts: False + occludes: True + ent: null +- proto: CrateEngineeringTeslaCoil + entities: + - uid: 24085 + components: + - type: Transform + pos: 62.5,12.5 + parent: 12 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - type: ContainerContainer + containers: + entity_storage: !type:Container + showEnts: False + occludes: True + ents: + - 24193 + - 24218 + - 24223 + - 24224 + - 24225 + paper_label: !type:ContainerSlot + showEnts: False + occludes: True + ent: null +- proto: CrateEngineeringTeslaGroundingRod + entities: + - uid: 24702 + components: + - type: Transform + pos: 61.5,12.5 + parent: 12 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - type: ContainerContainer + containers: + entity_storage: !type:Container + showEnts: False + occludes: True + ents: + - 25027 + - 25038 + - 25101 + - 25104 + - 25195 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -81971,6 +82419,16 @@ entities: text: Pool - type: WarpPoint location: Pool + - uid: 26754 + components: + - type: Transform + pos: 47.5,59.5 + parent: 12 + - type: NavMapBeacon + color: '#D381C993' + text: Science checkpoint + - type: WarpPoint + location: Science checkpoint - proto: DefaultStationBeaconAI entities: - uid: 115 @@ -82284,10 +82742,10 @@ entities: parent: 12 - proto: DefaultStationBeaconPowerBank entities: - - uid: 8968 + - uid: 4476 components: - type: Transform - pos: 13.5,-16.5 + pos: 13.5,-15.5 parent: 12 - proto: DefaultStationBeaconQMRoom entities: @@ -82408,10 +82866,10 @@ entities: parent: 12 - proto: DefaultStationBeaconTEG entities: - - uid: 26552 + - uid: 4013 components: - type: Transform - pos: 11.5,14.5 + pos: 7.5,15.5 parent: 12 - proto: DefaultStationBeaconTelecoms entities: @@ -82725,11 +83183,6 @@ entities: rot: 1.5707963267948966 rad pos: 7.5,-47.5 parent: 12 - - uid: 5131 - components: - - type: Transform - pos: -23.5,53.5 - parent: 12 - uid: 5173 components: - type: Transform @@ -83259,12 +83712,6 @@ entities: rot: 3.141592653589793 rad pos: -47.5,28.5 parent: 12 - - uid: 17773 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 37.5,-30.5 - parent: 12 - uid: 18671 components: - type: Transform @@ -83981,6 +84428,12 @@ entities: - type: Transform pos: 23.5,-17.5 parent: 12 + - uid: 5186 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 26.5,-16.5 + parent: 12 - uid: 5810 components: - type: Transform @@ -84168,6 +84621,12 @@ entities: rot: -1.5707963267948966 rad pos: 8.5,-27.5 parent: 12 + - uid: 5190 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 27.5,-16.5 + parent: 12 - uid: 5892 components: - type: Transform @@ -85274,12 +85733,6 @@ entities: rot: 3.141592653589793 rad pos: 30.5,-11.5 parent: 12 - - uid: 4695 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -24.5,53.5 - parent: 12 - uid: 4697 components: - type: Transform @@ -85398,6 +85851,18 @@ entities: rot: -1.5707963267948966 rad pos: 44.5,-5.5 parent: 12 + - uid: 5131 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 15.5,10.5 + parent: 12 + - uid: 5304 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 26.5,-15.5 + parent: 12 - uid: 5323 components: - type: Transform @@ -86855,12 +87320,6 @@ entities: rot: -1.5707963267948966 rad pos: 17.5,10.5 parent: 12 - - uid: 10874 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,10.5 - parent: 12 - uid: 10875 components: - type: Transform @@ -89694,12 +90153,6 @@ entities: rot: -1.5707963267948966 rad pos: 34.5,-26.5 parent: 12 - - uid: 22107 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 26.5,-16.5 - parent: 12 - uid: 22108 components: - type: Transform @@ -91991,12 +92444,6 @@ entities: rot: -1.5707963267948966 rad pos: -33.5,-38.5 parent: 12 - - uid: 29368 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 27.5,-16.5 - parent: 12 - uid: 29369 components: - type: Transform @@ -92654,12 +93101,6 @@ entities: parent: 12 - proto: DisposalPipeBroken entities: - - uid: 2704 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 37.5,-31.5 - parent: 12 - uid: 4901 components: - type: Transform @@ -92795,12 +93236,6 @@ entities: - type: Transform pos: -27.5,-18.5 parent: 12 - - uid: 2031 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 38.5,-30.5 - parent: 12 - uid: 3387 components: - type: Transform @@ -92858,18 +93293,6 @@ entities: - type: Transform pos: 43.5,39.5 parent: 12 - - uid: 4709 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -23.5,52.5 - parent: 12 - - uid: 5067 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -25.5,53.5 - parent: 12 - uid: 5209 components: - type: Transform @@ -92970,11 +93393,6 @@ entities: rot: 3.141592653589793 rad pos: 35.5,-23.5 parent: 12 - - uid: 9773 - components: - - type: Transform - pos: 27.5,-15.5 - parent: 12 - uid: 10413 components: - type: Transform @@ -93142,6 +93560,11 @@ entities: - type: Transform pos: -14.5,45.5 parent: 12 + - uid: 22158 + components: + - type: Transform + pos: 26.5,-14.5 + parent: 12 - uid: 22414 components: - type: Transform @@ -93370,21 +93793,11 @@ entities: - type: Transform pos: 8.5,-52.5 parent: 12 - - uid: 4613 - components: - - type: Transform - pos: 27.5,-15.5 - parent: 12 - uid: 4669 components: - type: Transform pos: 35.5,-23.5 parent: 12 - - uid: 4708 - components: - - type: Transform - pos: -23.5,52.5 - parent: 12 - uid: 5110 components: - type: Transform @@ -93467,6 +93880,11 @@ entities: - type: Transform pos: 47.5,17.5 parent: 12 + - uid: 12697 + components: + - type: Transform + pos: 26.5,-14.5 + parent: 12 - uid: 12703 components: - type: Transform @@ -93651,12 +94069,6 @@ entities: rot: 3.141592653589793 rad pos: 8.5,-31.5 parent: 12 - - uid: 9784 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 27.5,-16.5 - parent: 12 - uid: 13964 components: - type: Transform @@ -93741,6 +94153,14 @@ entities: - type: Transform pos: -22.413641,-10.548397 parent: 12 +- proto: DoorElectronicsMaintenance + entities: + - uid: 8428 + components: + - type: Transform + rot: -43.98229715025713 rad + pos: 56.495026,-7.6256537 + parent: 12 - proto: DoubleEmergencyNitrogenTankFilled entities: - uid: 16510 @@ -93811,6 +94231,23 @@ entities: - type: Transform pos: -36.5,-19.5 parent: 12 +- proto: Drill + entities: + - uid: 5618 + components: + - type: Transform + pos: -4.3746023,-32.230583 + parent: 12 + - uid: 22072 + components: + - type: Transform + pos: -23.010513,52.69631 + parent: 12 + - uid: 26825 + components: + - type: Transform + pos: -5.369359,-38.283527 + parent: 12 - proto: DrinkBeerBottleFull entities: - uid: 21456 @@ -93946,6 +94383,16 @@ entities: parent: 12 - proto: DrinkGlass entities: + - uid: 5365 + components: + - type: Transform + pos: 38.69985,-31.605726 + parent: 12 + - uid: 5434 + components: + - type: Transform + pos: 38.520466,-31.39358 + parent: 12 - uid: 7306 components: - type: Transform @@ -93961,6 +94408,11 @@ entities: - type: Transform pos: -55.19366,-13.542469 parent: 12 + - uid: 11435 + components: + - type: Transform + pos: 38.313904,-31.611166 + parent: 12 - uid: 17626 components: - type: Transform @@ -94150,49 +94602,54 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage -- proto: DrinkJar +- proto: DrinkIceCreamGlass entities: - - uid: 22881 + - uid: 11795 components: - type: Transform - pos: 28.464611,58.561584 + rot: -106.81415022205287 rad + pos: 35.761303,-30.34728 parent: 12 - - uid: 22882 +- proto: DrinkIcedTeaGlass + entities: + - uid: 19267 components: - type: Transform - pos: 30.54954,56.766605 + rot: -94.24777960769374 rad + pos: 35.519463,-30.544924 parent: 12 -- proto: DrinkMilkCarton +- proto: DrinkJar entities: - - uid: 21399 + - uid: 22881 components: - type: Transform - pos: -31.864534,44.26396 + pos: 28.464611,58.561584 parent: 12 - - uid: 24117 + - uid: 22882 components: - type: Transform - rot: -12.566370614359172 rad - pos: 57.68418,56.94676 + pos: 30.54954,56.766605 parent: 12 -- proto: DrinkMopwataBottleRandom +- proto: DrinkLemonadeGlass entities: - - uid: 2120 + - uid: 19203 components: - type: Transform - pos: 34.4878,-30.348785 + rot: -94.24777960769374 rad + pos: 35.28798,-30.34108 parent: 12 - - uid: 25532 +- proto: DrinkMilkCarton + entities: + - uid: 21399 components: - type: Transform - rot: -12.566370614359172 rad - pos: 38.32821,-31.26264 + pos: -31.864534,44.26396 parent: 12 - - uid: 25534 + - uid: 24117 components: - type: Transform rot: -12.566370614359172 rad - pos: 38.66251,-31.572699 + pos: 57.68418,56.94676 parent: 12 - proto: DrinkMugBlue entities: @@ -94424,6 +94881,12 @@ entities: - type: Transform pos: 60.5,12.5 parent: 12 + - uid: 218 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 31.5,-28.5 + parent: 12 - uid: 274 components: - type: Transform @@ -94692,12 +95155,6 @@ entities: rot: 3.141592653589793 rad pos: 42.5,-32.5 parent: 12 - - uid: 10561 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 33.5,-28.5 - parent: 12 - uid: 10562 components: - type: Transform @@ -95052,10 +95509,11 @@ entities: - type: Transform pos: -32.5,30.5 parent: 12 - - uid: 22336 + - uid: 23940 components: - type: Transform - pos: 47.5,-0.5 + rot: 3.141592653589793 rad + pos: 46.5,-1.5 parent: 12 - uid: 25296 components: @@ -95315,6 +95773,20 @@ entities: parent: 12 - proto: EmitterFlatpack entities: + - uid: 4851 + components: + - type: Transform + parent: 5883 + - type: Physics + canCollide: False + - type: InsideEntityStorage + - uid: 4887 + components: + - type: Transform + parent: 5883 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 5885 components: - type: Transform @@ -95436,11 +95908,6 @@ entities: rot: -1.5707963267948966 rad pos: -14.5,31.5 parent: 12 - - uid: 7229 - components: - - type: Transform - pos: 12.5,-12.5 - parent: 12 - uid: 9238 components: - type: Transform @@ -95663,6 +96130,11 @@ entities: - type: Transform pos: 58.5,44.5 parent: 12 + - uid: 26633 + components: + - type: Transform + pos: 11.5,-12.5 + parent: 12 - uid: 29963 components: - type: Transform @@ -96147,12 +96619,14 @@ entities: parent: 12 - type: DeviceList devices: - - 14471 - - 14472 - - 14474 - - 14475 - - 14476 + - 24083 + - 24082 - 23943 + - 14476 + - 14475 + - 26899 + - 14472 + - 14471 - uid: 24244 components: - type: Transform @@ -97296,6 +97770,14 @@ entities: - 23929 - 28367 - 8914 + - uid: 7529 + components: + - type: Transform + pos: 7.5,-14.5 + parent: 12 + - type: DeviceNetwork + deviceLists: + - 22005 - uid: 7560 components: - type: Transform @@ -97568,7 +98050,7 @@ entities: - type: DeviceNetwork deviceLists: - 28376 - - 4887 + - 22005 - uid: 9322 components: - type: Transform @@ -97994,6 +98476,7 @@ entities: - type: DeviceNetwork deviceLists: - 23942 + - 28271 - uid: 14473 components: - type: Transform @@ -98002,16 +98485,6 @@ entities: - type: DeviceNetwork deviceLists: - 30452 - - uid: 14474 - components: - - type: Transform - pos: 50.5,60.5 - parent: 12 - - type: DeviceNetwork - deviceLists: - - 23942 - - 28271 - - 28328 - uid: 14475 components: - type: Transform @@ -98031,6 +98504,7 @@ entities: deviceLists: - 23942 - 24187 + - 28271 - uid: 14477 components: - type: Transform @@ -99573,6 +100047,7 @@ entities: deviceLists: - 23942 - 24187 + - 28271 - uid: 24082 components: - type: Transform @@ -99583,6 +100058,7 @@ entities: - 24244 - 23643 - 28271 + - 23942 - uid: 24083 components: - type: Transform @@ -99593,6 +100069,7 @@ entities: - 24244 - 23643 - 28271 + - 23942 - uid: 24427 components: - type: Transform @@ -99691,6 +100168,33 @@ entities: deviceLists: - 4906 - 2682 + - uid: 26671 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 16.5,13.5 + parent: 12 + - uid: 26739 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 37.5,-29.5 + parent: 12 + - uid: 26749 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 36.5,-29.5 + parent: 12 + - uid: 26899 + components: + - type: Transform + pos: 48.5,57.5 + parent: 12 + - type: DeviceNetwork + deviceLists: + - 28271 + - 23942 - uid: 26923 components: - type: Transform @@ -99790,7 +100294,7 @@ entities: - type: DeviceNetwork deviceLists: - 10019 - - 4887 + - 22005 - uid: 28904 components: - type: Transform @@ -99867,11 +100371,6 @@ entities: - type: DeviceNetwork deviceLists: - 9972 - - uid: 29872 - components: - - type: Transform - pos: 15.5,13.5 - parent: 12 - uid: 29981 components: - type: Transform @@ -100132,13 +100631,43 @@ entities: - uid: 26655 components: - type: Transform - pos: 29.65808,-22.442064 + rot: -43.98229715025713 rad + pos: 33.316917,-19.378597 parent: 12 + - type: HandheldLight + toggleActionEntity: 5528 + - type: ContainerContainer + containers: + cell_slot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + actions: !type:Container + showEnts: False + occludes: True + ents: + - 5528 + - type: ActionsContainer - uid: 26694 components: - type: Transform - pos: 29.33193,-22.287144 + rot: -43.98229715025713 rad + pos: 33.599323,-19.174892 parent: 12 + - type: HandheldLight + toggleActionEntity: 5542 + - type: ContainerContainer + containers: + cell_slot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + actions: !type:Container + showEnts: False + occludes: True + ents: + - 5542 + - type: ActionsContainer - proto: FlippoLighter entities: - uid: 13633 @@ -100796,14 +101325,6 @@ entities: rot: -1.5707963267948966 rad pos: 38.5,55.5 parent: 12 -- proto: FoodCheeseSlice - entities: - - uid: 9224 - components: - - type: Transform - rot: -6.283185307179586 rad - pos: -24.51083,53.52161 - parent: 12 - proto: FoodCondimentBottleEnzyme entities: - uid: 11791 @@ -101204,11 +101725,6 @@ entities: parent: 12 - proto: FoodTinPeachesMaint entities: - - uid: 19822 - components: - - type: Transform - pos: 50.425446,1.6118504 - parent: 12 - uid: 21597 components: - type: Transform @@ -101290,15 +101806,11 @@ entities: parent: 12 - proto: GasAnalyzer entities: - - uid: 5918 - components: - - type: Transform - pos: 33.823044,-20.694681 - parent: 12 - uid: 5919 components: - type: Transform - pos: 33.83867,-19.804056 + rot: -43.98229715025713 rad + pos: 33.728954,-18.568962 parent: 12 - proto: GasFilter entities: @@ -101457,11 +101969,6 @@ entities: - type: Transform pos: 16.5,21.5 parent: 12 - - uid: 19263 - components: - - type: Transform - pos: -24.5,54.5 - parent: 12 - proto: GasPassiveVent entities: - uid: 1705 @@ -101498,12 +102005,6 @@ entities: rot: 3.141592653589793 rad pos: 25.5,1.5 parent: 12 - - uid: 4763 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -25.5,54.5 - parent: 12 - uid: 4962 components: - type: Transform @@ -101560,11 +102061,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,31.5 parent: 12 - - uid: 22005 - components: - - type: Transform - pos: -25.5,56.5 - parent: 12 - uid: 30469 components: - type: Transform @@ -101916,22 +102412,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 3109 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 49.5,63.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - - uid: 3111 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 49.5,61.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 3502 components: - type: Transform @@ -102182,12 +102662,6 @@ entities: - type: Transform pos: 25.5,-9.5 parent: 12 - - uid: 4694 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -24.5,53.5 - parent: 12 - uid: 4759 components: - type: Transform @@ -102349,13 +102823,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 5487 - components: - - type: Transform - pos: 13.5,-15.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 5504 components: - type: Transform @@ -102419,6 +102886,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 6287 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-16.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 6900 components: - type: Transform @@ -102549,6 +103024,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 8446 + components: + - type: Transform + pos: 14.5,-15.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 8531 components: - type: Transform @@ -103189,14 +103671,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 15007 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 52.5,1.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 15413 components: - type: Transform @@ -103646,18 +104120,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 21906 - components: - - type: Transform - pos: -22.5,53.5 - parent: 12 - - uid: 22072 - components: - - type: Transform - pos: 53.5,1.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 22105 components: - type: Transform @@ -104154,6 +104616,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 23515 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,10.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 23637 components: - type: Transform @@ -104854,6 +105324,20 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 564 + components: + - type: Transform + pos: 16.5,11.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' + - uid: 566 + components: + - type: Transform + pos: 16.5,12.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 631 components: - type: Transform @@ -106507,13 +106991,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 2964 - components: - - type: Transform - pos: 15.5,11.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 3009 components: - type: Transform @@ -106522,13 +106999,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 3011 - components: - - type: Transform - pos: 15.5,12.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 3016 components: - type: Transform @@ -106543,14 +107013,6 @@ entities: rot: 3.141592653589793 rad pos: 13.5,19.5 parent: 12 - - uid: 3079 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 50.5,63.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 3096 components: - type: Transform @@ -108053,13 +108515,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 3940 - components: - - type: Transform - pos: 15.5,13.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 3955 components: - type: Transform @@ -108193,13 +108648,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 4412 - components: - - type: Transform - pos: 49.5,62.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 4453 components: - type: Transform @@ -108551,14 +108999,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 4803 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 11.5,-15.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 4804 components: - type: Transform @@ -109146,14 +109586,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 5263 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,-16.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 5264 components: - type: Transform @@ -109338,14 +109770,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 5304 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 7.5,-16.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 5306 components: - type: Transform @@ -109733,14 +110157,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 5483 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 46.5,3.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 5486 components: - type: Transform @@ -109869,6 +110285,21 @@ entities: rot: 1.5707963267948966 rad pos: 22.5,-7.5 parent: 12 + - uid: 5909 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-15.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' + - uid: 5913 + components: + - type: Transform + pos: 53.5,1.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 5937 components: - type: Transform @@ -109966,6 +110397,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 5957 + components: + - type: Transform + pos: 16.5,13.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 5958 components: - type: Transform @@ -110110,6 +110548,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 6732 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 8.5,-15.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 6769 components: - type: Transform @@ -110982,6 +111428,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 7111 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 45.5,3.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 7115 components: - type: Transform @@ -110998,6 +111452,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#FFA500FF' + - uid: 7118 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 8.5,-16.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 7119 components: - type: Transform @@ -111088,6 +111550,21 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,19.5 parent: 12 + - uid: 7152 + components: + - type: Transform + pos: 50.5,62.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' + - uid: 7155 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 26.5,-16.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 7169 components: - type: Transform @@ -111503,6 +111980,11 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 7838 + components: + - type: Transform + pos: -46.5,44.5 + parent: 12 - uid: 7846 components: - type: Transform @@ -111533,6 +112015,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 8457 + components: + - type: Transform + pos: 50.5,61.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 8492 components: - type: Transform @@ -112726,6 +113215,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 9144 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 7.5,-14.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 9168 components: - type: Transform @@ -119306,6 +119803,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 19540 + components: + - type: Transform + pos: 6.5,-16.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 19541 components: - type: Transform @@ -121429,14 +121933,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 21032 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,55.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 21033 components: - type: Transform @@ -124602,13 +125098,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 23884 - components: - - type: Transform - pos: 6.5,-14.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 23949 components: - type: Transform @@ -125022,14 +125511,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 25195 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 47.5,3.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 25389 components: - type: Transform @@ -125221,12 +125702,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 25831 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 17.5,14.5 - parent: 12 - uid: 25959 components: - type: Transform @@ -125720,6 +126195,30 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 26890 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 48.5,56.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' + - uid: 26892 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 48.5,57.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' + - uid: 26896 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 48.5,58.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 26925 components: - type: Transform @@ -126187,14 +126686,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 29162 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 48.5,3.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 29262 components: - type: Transform @@ -128113,22 +128604,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 4540 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 45.5,3.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - - uid: 4701 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 13.5,-16.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 4811 components: - type: Transform @@ -128190,14 +128665,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 5104 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,10.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 5144 components: - type: Transform @@ -128237,14 +128704,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 5302 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 8.5,-16.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 5308 components: - type: Transform @@ -128345,6 +128804,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 5918 + components: + - type: Transform + pos: 50.5,63.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 5940 components: - type: Transform @@ -128368,6 +128834,22 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 6151 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-15.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' + - uid: 6741 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 48.5,55.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 6751 components: - type: Transform @@ -128376,6 +128858,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 6771 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 6.5,-14.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 6794 components: - type: Transform @@ -128473,6 +128963,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 7116 + components: + - type: Transform + pos: 15.5,10.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 7138 components: - type: Transform @@ -128489,6 +128986,14 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 7156 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 50.5,57.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 7184 components: - type: Transform @@ -128607,14 +129112,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 7838 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 50.5,61.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 7839 components: - type: Transform @@ -128631,6 +129128,13 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' + - uid: 8427 + components: + - type: Transform + pos: 8.5,-14.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 8505 components: - type: Transform @@ -130018,22 +130522,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 19540 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 26.5,-16.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - - uid: 19852 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 50.5,57.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - uid: 19853 components: - type: Transform @@ -130661,14 +131149,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 27985 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 6.5,-16.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 27992 components: - type: Transform @@ -130896,17 +131376,6 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,-18.5 parent: 12 - - uid: 4938 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -22.5,52.5 - parent: 12 - - uid: 9059 - components: - - type: Transform - pos: 26.5,-14.5 - parent: 12 - uid: 9813 components: - type: Transform @@ -131152,12 +131621,6 @@ entities: rot: -1.5707963267948966 rad pos: 20.5,-3.5 parent: 12 - - uid: 4696 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -23.5,53.5 - parent: 12 - uid: 4743 components: - type: Transform @@ -131241,13 +131704,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 26418 - components: - - type: Transform - pos: 26.5,-15.5 - parent: 12 - - type: AtmosPipeColor - color: '#990000FF' - proto: GasThermoMachineFreezer entities: - uid: 2356 @@ -131324,13 +131780,6 @@ entities: targetTemperature: 330 - proto: GasValve entities: - - uid: 4780 - components: - - type: Transform - pos: -25.5,55.5 - parent: 12 - - type: GasValve - open: False - uid: 13519 components: - type: Transform @@ -131345,11 +131794,6 @@ entities: parent: 12 - type: GasValve open: False - - uid: 18267 - components: - - type: Transform - pos: -46.5,44.5 - parent: 12 - uid: 28754 components: - type: Transform @@ -131621,16 +132065,6 @@ entities: - 27296 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 5305 - components: - - type: Transform - pos: 8.5,-15.5 - parent: 12 - - type: DeviceNetwork - deviceLists: - - 4887 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 5309 components: - type: Transform @@ -131749,6 +132183,17 @@ entities: - 32066 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 7229 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 9.5,-14.5 + parent: 12 + - type: DeviceNetwork + deviceLists: + - 22005 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 7327 components: - type: Transform @@ -133151,6 +133596,13 @@ entities: - 2682 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 26897 + components: + - type: Transform + pos: 48.5,59.5 + parent: 12 + - type: AtmosPipeColor + color: '#0055CCFF' - uid: 26994 components: - type: Transform @@ -133201,14 +133653,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#0055CCFF' - - uid: 29150 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 49.5,3.5 - parent: 12 - - type: AtmosPipeColor - color: '#0055CCFF' - uid: 29258 components: - type: Transform @@ -133520,6 +133964,26 @@ entities: - 25448 - type: AtmosPipeColor color: '#990000FF' + - uid: 1537 + components: + - type: Transform + pos: 16.5,14.5 + parent: 12 + - type: DeviceNetwork + deviceLists: + - 12273 + - type: AtmosPipeColor + color: '#990000FF' + - uid: 2501 + components: + - type: Transform + pos: 53.5,2.5 + parent: 12 + - type: DeviceNetwork + deviceLists: + - 27311 + - type: AtmosPipeColor + color: '#990000FF' - uid: 2673 components: - type: Transform @@ -133621,6 +134085,17 @@ entities: - 27296 - type: AtmosPipeColor color: '#990000FF' + - uid: 4523 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 51.5,57.5 + parent: 12 + - type: DeviceNetwork + deviceLists: + - 28271 + - type: AtmosPipeColor + color: '#990000FF' - uid: 4723 components: - type: Transform @@ -133632,26 +134107,25 @@ entities: - 27296 - type: AtmosPipeColor color: '#990000FF' - - uid: 5254 + - uid: 4938 components: - type: Transform - rot: 3.141592653589793 rad - pos: 11.5,-22.5 + pos: 11.5,-14.5 parent: 12 - type: DeviceNetwork deviceLists: - - 28376 + - 22005 - type: AtmosPipeColor color: '#990000FF' - - uid: 5255 + - uid: 5254 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 12.5,-16.5 + rot: 3.141592653589793 rad + pos: 11.5,-22.5 parent: 12 - type: DeviceNetwork deviceLists: - - 4887 + - 28376 - type: AtmosPipeColor color: '#990000FF' - uid: 5280 @@ -133705,6 +134179,14 @@ entities: - 28366 - type: AtmosPipeColor color: '#990000FF' + - uid: 5873 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 49.5,63.5 + parent: 12 + - type: AtmosPipeColor + color: '#990000FF' - uid: 5887 components: - type: Transform @@ -133903,16 +134385,6 @@ entities: - 448 - type: AtmosPipeColor color: '#990000FF' - - uid: 9488 - components: - - type: Transform - pos: 15.5,14.5 - parent: 12 - - type: DeviceNetwork - deviceLists: - - 12273 - - type: AtmosPipeColor - color: '#990000FF' - uid: 10006 components: - type: Transform @@ -134691,16 +135163,6 @@ entities: - 23632 - type: AtmosPipeColor color: '#990000FF' - - uid: 23092 - components: - - type: Transform - pos: 50.5,62.5 - parent: 12 - - type: DeviceNetwork - deviceLists: - - 28328 - - type: AtmosPipeColor - color: '#990000FF' - uid: 23192 components: - type: Transform @@ -134765,17 +135227,6 @@ entities: - 28360 - type: AtmosPipeColor color: '#990000FF' - - uid: 23940 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 49.5,57.5 - parent: 12 - - type: DeviceNetwork - deviceLists: - - 28271 - - type: AtmosPipeColor - color: '#990000FF' - uid: 23996 components: - type: Transform @@ -134901,16 +135352,6 @@ entities: parent: 12 - type: AtmosPipeColor color: '#990000FF' - - uid: 26949 - components: - - type: Transform - pos: 52.5,2.5 - parent: 12 - - type: DeviceNetwork - deviceLists: - - 27311 - - type: AtmosPipeColor - color: '#990000FF' - uid: 27249 components: - type: Transform @@ -135154,11 +135595,6 @@ entities: rot: 3.141592653589793 rad pos: 49.5,-4.5 parent: 12 - - uid: 7155 - components: - - type: Transform - pos: 46.5,0.5 - parent: 12 - uid: 10918 components: - type: Transform @@ -135226,6 +135662,11 @@ entities: rot: 1.5707963267948966 rad pos: 47.5,-2.5 parent: 12 + - uid: 26755 + components: + - type: Transform + pos: 46.5,-4.5 + parent: 12 - uid: 27148 components: - type: Transform @@ -136808,6 +137249,16 @@ entities: - type: Transform pos: 61.5,-22.5 parent: 12 + - uid: 3109 + components: + - type: Transform + pos: 12.5,-13.5 + parent: 12 + - uid: 3111 + components: + - type: Transform + pos: 13.5,-13.5 + parent: 12 - uid: 3126 components: - type: Transform @@ -136894,12 +137345,6 @@ entities: rot: 1.5707963267948966 rad pos: 11.5,-24.5 parent: 12 - - uid: 4423 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,-24.5 - parent: 12 - uid: 4424 components: - type: Transform @@ -136954,39 +137399,16 @@ entities: rot: 1.5707963267948966 rad pos: 8.5,-17.5 parent: 12 - - uid: 4464 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 10.5,-17.5 - parent: 12 - uid: 4465 components: - type: Transform rot: 1.5707963267948966 rad pos: 13.5,-18.5 parent: 12 - - uid: 4466 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 16.5,-18.5 - parent: 12 - - uid: 4467 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 17.5,-18.5 - parent: 12 - - uid: 4476 - components: - - type: Transform - pos: 15.5,-17.5 - parent: 12 - uid: 4524 components: - type: Transform - pos: 7.5,-16.5 + pos: 49.5,57.5 parent: 12 - uid: 4598 components: @@ -137009,6 +137431,11 @@ entities: - type: Transform pos: 21.5,3.5 parent: 12 + - uid: 4695 + components: + - type: Transform + pos: -6.5,-19.5 + parent: 12 - uid: 4758 components: - type: Transform @@ -137165,6 +137592,12 @@ entities: rot: 3.141592653589793 rad pos: 25.5,-19.5 parent: 12 + - uid: 5513 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 50.5,60.5 + parent: 12 - uid: 5715 components: - type: Transform @@ -138218,12 +138651,6 @@ entities: - type: Transform pos: -63.5,-23.5 parent: 12 - - uid: 8446 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -7.5,-16.5 - parent: 12 - uid: 8479 components: - type: Transform @@ -138244,6 +138671,11 @@ entities: - type: Transform pos: -47.5,0.5 parent: 12 + - uid: 8713 + components: + - type: Transform + pos: 49.5,59.5 + parent: 12 - uid: 8984 components: - type: Transform @@ -139890,12 +140322,6 @@ entities: - type: Transform pos: 17.5,14.5 parent: 12 - - uid: 12697 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 47.5,-3.5 - parent: 12 - uid: 12699 components: - type: Transform @@ -140017,17 +140443,10 @@ entities: rot: -1.5707963267948966 rad pos: 24.5,44.5 parent: 12 - - uid: 14175 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 49.5,60.5 - parent: 12 - uid: 14176 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 48.5,60.5 + pos: 49.5,58.5 parent: 12 - uid: 14184 components: @@ -141040,6 +141459,11 @@ entities: rot: 3.141592653589793 rad pos: -11.5,79.5 parent: 12 + - uid: 16546 + components: + - type: Transform + pos: 49.5,-2.5 + parent: 12 - uid: 16662 components: - type: Transform @@ -141449,12 +141873,6 @@ entities: - type: Transform pos: -42.5,54.5 parent: 12 - - uid: 19182 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -49.5,56.5 - parent: 12 - uid: 19191 components: - type: Transform @@ -141521,6 +141939,11 @@ entities: rot: 3.141592653589793 rad pos: -42.5,60.5 parent: 12 + - uid: 19263 + components: + - type: Transform + pos: 35.5,-29.5 + parent: 12 - uid: 19324 components: - type: Transform @@ -142590,6 +143013,11 @@ entities: rot: 1.5707963267948966 rad pos: -57.5,-21.5 parent: 12 + - uid: 26600 + components: + - type: Transform + pos: 14.5,-13.5 + parent: 12 - uid: 26610 components: - type: Transform @@ -142614,15 +143042,10 @@ entities: rot: -1.5707963267948966 rad pos: 24.5,10.5 parent: 12 - - uid: 26632 - components: - - type: Transform - pos: 4.5,-21.5 - parent: 12 - - uid: 26633 + - uid: 26675 components: - type: Transform - pos: 3.5,-21.5 + pos: 14.5,11.5 parent: 12 - uid: 26676 components: @@ -142642,11 +143065,22 @@ entities: rot: 3.141592653589793 rad pos: 28.5,6.5 parent: 12 + - uid: 26717 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 29.5,-15.5 + parent: 12 - uid: 26747 components: - type: Transform pos: 63.5,3.5 parent: 12 + - uid: 26756 + components: + - type: Transform + pos: 29.5,-29.5 + parent: 12 - uid: 26758 components: - type: Transform @@ -143169,22 +143603,6 @@ entities: - type: Transform pos: 6.5,82.5 parent: 12 - - uid: 28435 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -2.5,-21.5 - parent: 12 - - uid: 28436 - components: - - type: Transform - pos: 1.5,-21.5 - parent: 12 - - uid: 28437 - components: - - type: Transform - pos: 2.5,-21.5 - parent: 12 - uid: 29089 components: - type: Transform @@ -144501,16 +144919,6 @@ entities: - type: Transform pos: 48.5,-2.5 parent: 12 - - uid: 19561 - components: - - type: Transform - pos: 48.5,0.5 - parent: 12 - - uid: 25388 - components: - - type: Transform - pos: 34.5,-32.5 - parent: 12 - uid: 28921 components: - type: Transform @@ -144941,14 +145349,14 @@ entities: - uid: 11709 components: - type: Transform - rot: -43.98229715025713 rad - pos: -4.5419416,-32.28253 + rot: -12.566370614359172 rad + pos: -4.6762905,-32.320335 parent: 12 - uid: 12709 components: - type: Transform rot: -12.566370614359172 rad - pos: -5.5166283,-38.43235 + pos: -5.6384325,-38.454876 parent: 12 - uid: 13831 components: @@ -145077,6 +145485,11 @@ entities: parent: 12 - proto: Hemostat entities: + - uid: 5104 + components: + - type: Transform + pos: -22.46475,53.106586 + parent: 12 - uid: 13872 components: - type: Transform @@ -145148,6 +145561,12 @@ entities: - type: Transform pos: -1.5,-37.5 parent: 12 + - uid: 26883 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -22.5,-28.5 + parent: 12 - uid: 27283 components: - type: Transform @@ -145420,13 +145839,6 @@ entities: rot: 3.141592653589793 rad pos: -52.5,-15.5 parent: 12 -- proto: InflatableWall - entities: - - uid: 10617 - components: - - type: Transform - pos: 49.5,0.5 - parent: 12 - proto: IngotGold entities: - uid: 17438 @@ -145504,6 +145916,12 @@ entities: rot: 3.141592653589793 rad pos: -5.5,-29.5 parent: 12 + - uid: 9666 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 33.5,-29.5 + parent: 12 - uid: 12063 components: - type: Transform @@ -145527,12 +145945,6 @@ entities: rot: -1.5707963267948966 rad pos: 23.5,66.5 parent: 12 - - uid: 25613 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 34.5,-29.5 - parent: 12 - uid: 27832 components: - type: Transform @@ -145564,10 +145976,11 @@ entities: - type: Transform pos: 21.5,-19.5 parent: 12 - - uid: 7156 + - uid: 8833 components: - type: Transform - pos: 46.5,1.5 + rot: 3.141592653589793 rad + pos: 45.5,-2.5 parent: 12 - uid: 9247 components: @@ -145659,6 +146072,12 @@ entities: rot: 1.5707963267948966 rad pos: -45.5,-37.5 parent: 12 + - uid: 19202 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 46.5,59.5 + parent: 12 - uid: 25523 components: - type: Transform @@ -145989,6 +146408,11 @@ entities: parent: 12 - proto: KitchenReagentGrinder entities: + - uid: 215 + components: + - type: Transform + pos: 38.5,-30.5 + parent: 12 - uid: 1949 components: - type: Transform @@ -146444,10 +146868,10 @@ entities: parent: 12 - proto: LockerElectricalSuppliesFilled entities: - - uid: 4523 + - uid: 4803 components: - type: Transform - pos: 16.5,-19.5 + pos: 17.5,-17.5 parent: 12 - uid: 5949 components: @@ -146506,22 +146930,20 @@ entities: - type: Transform pos: 32.5,-21.5 parent: 12 -- proto: LockerEngineerFilledHardsuit - entities: - - uid: 2501 + - uid: 17599 components: - type: Transform - pos: 13.5,-14.5 + pos: 29.5,-23.5 parent: 12 - - uid: 2515 + - uid: 17773 components: - type: Transform - pos: 12.5,-14.5 + pos: 29.5,-21.5 parent: 12 - - uid: 3238 + - uid: 18267 components: - type: Transform - pos: 14.5,-14.5 + pos: 29.5,-22.5 parent: 12 - proto: LockerEvidence entities: @@ -146719,6 +147141,28 @@ entities: - type: Transform pos: -42.5,-30.5 parent: 12 +- proto: LockerScientist + entities: + - uid: 9298 + components: + - type: Transform + pos: 47.5,58.5 + parent: 12 + - type: ContainerContainer + containers: + entity_storage: !type:Container + showEnts: False + occludes: True + ents: + - 9548 + - 9541 + - 9503 + - 9488 + - 9567 + paper_label: !type:ContainerSlot + showEnts: False + occludes: True + ent: null - proto: LockerSecurityFilled entities: - uid: 8719 @@ -147018,11 +147462,26 @@ entities: - type: Transform pos: 47.5,53.5 parent: 12 + - uid: 8968 + components: + - type: Transform + pos: 16.5,-17.5 + parent: 12 - uid: 26203 components: - type: Transform pos: 4.5,-14.5 parent: 12 + - uid: 26712 + components: + - type: Transform + pos: -2.5,-18.5 + parent: 12 + - uid: 26783 + components: + - type: Transform + pos: 33.5,-32.5 + parent: 12 - uid: 27154 components: - type: Transform @@ -147033,6 +147492,7 @@ entities: - uid: 25547 components: - type: Transform + anchored: True rot: 3.141592653589793 rad pos: 62.5,-2.5 parent: 12 @@ -147048,9 +147508,13 @@ entities: - Output: DoorBolt 12692: - Output: DoorBolt + - type: Physics + canCollide: False + bodyType: Static - uid: 25549 components: - type: Transform + anchored: True pos: 60.5,-2.5 parent: 12 - type: DeviceLinkSink @@ -147059,9 +147523,13 @@ entities: linkedPorts: 25560: - Output: InputB + - type: Physics + canCollide: False + bodyType: Static - uid: 25550 components: - type: Transform + anchored: True rot: -1.5707963267948966 rad pos: 60.5,-1.5 parent: 12 @@ -147071,9 +147539,13 @@ entities: linkedPorts: 25560: - Output: InputA + - type: Physics + canCollide: False + bodyType: Static - uid: 25560 components: - type: Transform + anchored: True pos: 61.5,-2.5 parent: 12 - type: DeviceLinkSink @@ -147084,6 +147556,9 @@ entities: - Output: DoorBolt 9169: - Output: DoorBolt + - type: Physics + canCollide: False + bodyType: Static - proto: LootSpawnerCableCoil entities: - uid: 9665 @@ -147286,6 +147761,17 @@ entities: - type: Transform pos: -43.5,-35.5 parent: 12 + - uid: 15115 + components: + - type: Transform + anchored: False + rot: 1.5707963267948966 rad + pos: 48.5,60.5 + parent: 12 + - type: ApcPowerReceiver + powerLoad: 1 + - type: Physics + bodyType: Dynamic - proto: MachineArtifactAnalyzer entities: - uid: 1696 @@ -147376,11 +147862,6 @@ entities: ents: [] - proto: MachineFrameDestroyed entities: - - uid: 2575 - components: - - type: Transform - pos: 35.5,-30.5 - parent: 12 - uid: 13522 components: - type: Transform @@ -147511,11 +147992,6 @@ entities: rot: 1.5707963267948966 rad pos: -2.5,68.5 parent: 12 - - uid: 5957 - components: - - type: Transform - pos: 50.5,1.5 - parent: 12 - uid: 11490 components: - type: Transform @@ -147608,10 +148084,10 @@ entities: - type: Transform pos: 44.5,63.5 parent: 12 - - uid: 10605 + - uid: 10923 components: - type: Transform - pos: 49.5,-3.5 + pos: 51.5,-4.5 parent: 12 - uid: 11240 components: @@ -147648,15 +148124,15 @@ entities: - type: Transform pos: -7.5,23.5 parent: 12 - - uid: 27827 + - uid: 26677 components: - type: Transform - pos: -47.5,-50.5 + pos: -4.5,-18.5 parent: 12 - - uid: 28049 + - uid: 27827 components: - type: Transform - pos: 2.5,-23.5 + pos: -47.5,-50.5 parent: 12 - uid: 30520 components: @@ -147690,10 +148166,10 @@ entities: - type: Transform pos: 33.5,67.5 parent: 12 - - uid: 9298 + - uid: 9711 components: - type: Transform - pos: 48.5,-3.5 + pos: 48.5,1.5 parent: 12 - uid: 13004 components: @@ -147790,20 +148266,15 @@ entities: - type: Transform pos: 28.5,14.5 parent: 12 - - uid: 28274 - components: - - type: Transform - pos: -28.5,-16.5 - parent: 12 - - uid: 28418 + - uid: 26891 components: - type: Transform - pos: 49.5,61.5 + pos: 48.5,62.5 parent: 12 - - uid: 28419 + - uid: 28274 components: - type: Transform - pos: 48.5,61.5 + pos: -28.5,-16.5 parent: 12 - uid: 31567 components: @@ -147842,8 +148313,17 @@ entities: - uid: 4565 components: - type: Transform - pos: 47.514965,1.5594273 + rot: -37.69911184307754 rad + pos: 49.4561,-3.4684215 parent: 12 + - type: Blocking + blockingToggleActionEntity: 11047 + - type: ActionsContainer + - type: ContainerContainer + containers: + actions: !type:Container + ents: + - 11047 - proto: Matchbox entities: - uid: 6885 @@ -148080,11 +148560,6 @@ entities: - type: Transform pos: 3.3725653,-32.354176 parent: 12 - - uid: 6777 - components: - - type: Transform - pos: 28.47894,-15.335911 - parent: 12 - proto: MedkitToxinFilled entities: - uid: 8893 @@ -148159,20 +148634,8 @@ entities: - type: Transform pos: -12.5,52.5 parent: 12 -- proto: ModularReceiver - entities: - - uid: 19823 - components: - - type: Transform - pos: 51.5,-3.5 - parent: 12 - proto: MonkeyCubeWrapped entities: - - uid: 19619 - components: - - type: Transform - pos: -22.51786,53.46946 - parent: 12 - uid: 21391 components: - type: Transform @@ -148185,11 +148648,6 @@ entities: parent: 12 - proto: MopBucket entities: - - uid: 25384 - components: - - type: Transform - pos: 36.5,-32.5 - parent: 12 - uid: 28404 components: - type: Transform @@ -148204,12 +148662,6 @@ entities: parent: 12 - proto: MopItem entities: - - uid: 8427 - components: - - type: Transform - rot: -12.566370614359172 rad - pos: 37.37422,-32.282562 - parent: 12 - uid: 12262 components: - type: Transform @@ -148368,11 +148820,6 @@ entities: - type: Transform pos: -32.59243,-21.422949 parent: 12 - - uid: 5914 - components: - - type: Transform - pos: 33.771404,-18.223875 - parent: 12 - uid: 5915 components: - type: Transform @@ -148678,6 +149125,13 @@ entities: - 31737 - proto: NodeScanner entities: + - uid: 9567 + components: + - type: Transform + parent: 9298 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 32092 components: - type: Transform @@ -148759,6 +149213,11 @@ entities: - type: Transform pos: -10.5,-62.5 parent: 12 + - uid: 5263 + components: + - type: Transform + pos: -24.5,54.5 + parent: 12 - uid: 9439 components: - type: Transform @@ -148800,6 +149259,11 @@ entities: - type: Transform pos: 38.5,6.5 parent: 12 + - uid: 149 + components: + - type: Transform + pos: 14.5,12.5 + parent: 12 - uid: 755 components: - type: Transform @@ -148835,11 +149299,6 @@ entities: - type: Transform pos: 81.5,-32.5 parent: 12 - - uid: 10631 - components: - - type: Transform - pos: 13.5,12.5 - parent: 12 - uid: 16456 components: - type: Transform @@ -149543,6 +150002,17 @@ entities: - type: Transform pos: -8.548462,5.6872296 parent: 12 + - uid: 24321 + components: + - type: Transform + pos: 61.5,-3.5 + parent: 12 + - uid: 25200 + components: + - type: Transform + rot: -6.283185307179586 rad + pos: 59.62378,12.4487915 + parent: 12 - proto: Pen entities: - uid: 1841 @@ -149997,6 +150467,11 @@ entities: - type: Transform pos: 24.5,-6.5 parent: 12 + - uid: 12047 + components: + - type: Transform + pos: 13.5,12.5 + parent: 12 - uid: 25479 components: - type: Transform @@ -150235,11 +150710,6 @@ entities: parent: 12 - proto: PortableGeneratorJrPacman entities: - - uid: 149 - components: - - type: Transform - pos: 2.5,-23.5 - parent: 12 - uid: 2978 components: - type: Transform @@ -150265,6 +150735,11 @@ entities: - type: Transform pos: 40.5,10.5 parent: 12 + - uid: 12332 + components: + - type: Transform + pos: -7.5,-16.5 + parent: 12 - uid: 17963 components: - type: Transform @@ -150336,6 +150811,15 @@ entities: parent: 12 - type: Physics bodyType: Static + - uid: 25388 + components: + - type: Transform + pos: 62.5,9.5 + parent: 12 + - type: PowerSupplier + voltage: Medium + - type: PowerSwitchable + activeIndex: 1 - proto: PortableGeneratorSuperPacman entities: - uid: 2465 @@ -150383,11 +150867,6 @@ entities: - type: Transform pos: -11.5,24.5 parent: 12 - - uid: 16586 - components: - - type: Transform - pos: 26.5,-14.5 - parent: 12 - uid: 18161 components: - type: Transform @@ -150722,10 +151201,11 @@ entities: - type: Transform pos: -25.5,-10.5 parent: 12 - - uid: 9144 + - uid: 11304 components: - type: Transform - pos: 29.5,-15.5 + rot: 1.5707963267948966 rad + pos: 28.5,-14.5 parent: 12 - uid: 22542 components: @@ -150760,6 +151240,11 @@ entities: - type: Transform pos: -41.5,-40.5 parent: 12 + - uid: 19182 + components: + - type: Transform + pos: 47.5,61.5 + parent: 12 - proto: PosterLegitSecWatch entities: - uid: 10271 @@ -151062,11 +151547,6 @@ entities: - type: Transform pos: 52.5,59.5 parent: 12 - - uid: 24085 - components: - - type: Transform - pos: 48.5,59.5 - parent: 12 - uid: 24114 components: - type: Transform @@ -151388,16 +151868,6 @@ entities: rot: -56.54866776461632 rad pos: -9.513435,-49.592167 parent: 12 - - uid: 4481 - components: - - type: Transform - pos: 10.430595,-16.35749 - parent: 12 - - uid: 4525 - components: - - type: Transform - pos: 10.601824,-16.4962 - parent: 12 - uid: 31574 components: - type: Transform @@ -151559,12 +152029,6 @@ entities: - type: Transform pos: -26.5,-41.5 parent: 12 - - uid: 2459 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 13.5,13.5 - parent: 12 - uid: 2460 components: - type: Transform @@ -151782,12 +152246,6 @@ entities: rot: 3.141592653589793 rad pos: 36.5,-15.5 parent: 12 - - uid: 5186 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 11.5,-16.5 - parent: 12 - uid: 5216 components: - type: Transform @@ -153069,18 +153527,6 @@ entities: rot: 1.5707963267948966 rad pos: 54.5,53.5 parent: 12 - - uid: 16869 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,57.5 - parent: 12 - - uid: 16870 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 49.5,55.5 - parent: 12 - uid: 16871 components: - type: Transform @@ -153527,12 +153973,30 @@ entities: rot: 1.5707963267948966 rad pos: 29.5,-11.5 parent: 12 + - uid: 26669 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 14.5,13.5 + parent: 12 - uid: 26746 components: - type: Transform rot: -1.5707963267948966 rad pos: 57.5,-5.5 parent: 12 + - uid: 26787 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 45.5,55.5 + parent: 12 + - uid: 26850 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,-15.5 + parent: 12 - uid: 26976 components: - type: Transform @@ -153800,12 +154264,6 @@ entities: rot: -1.5707963267948966 rad pos: 62.5,11.5 parent: 12 - - uid: 2739 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 34.5,-31.5 - parent: 12 - uid: 2855 components: - type: Transform @@ -153902,6 +154360,12 @@ entities: rot: -1.5707963267948966 rad pos: 25.5,-4.5 parent: 12 + - uid: 5521 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,12.5 + parent: 12 - uid: 5833 components: - type: Transform @@ -154142,11 +154606,6 @@ entities: rot: 1.5707963267948966 rad pos: 60.5,-0.5 parent: 12 - - uid: 9548 - components: - - type: Transform - pos: 16.5,12.5 - parent: 12 - uid: 9853 components: - type: Transform @@ -154170,12 +154629,6 @@ entities: rot: 3.141592653589793 rad pos: -34.5,-10.5 parent: 12 - - uid: 10803 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 28.5,-17.5 - parent: 12 - uid: 10886 components: - type: Transform @@ -154299,11 +154752,22 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,53.5 parent: 12 + - uid: 15687 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 47.5,58.5 + parent: 12 - uid: 16209 components: - type: Transform pos: 57.5,-13.5 parent: 12 + - uid: 16369 + components: + - type: Transform + pos: 28.5,-15.5 + parent: 12 - uid: 16554 components: - type: Transform @@ -154472,12 +154936,6 @@ entities: rot: 1.5707963267948966 rad pos: -25.5,54.5 parent: 12 - - uid: 22160 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 49.5,-1.5 - parent: 12 - uid: 22163 components: - type: Transform @@ -154490,6 +154948,12 @@ entities: rot: -1.5707963267948966 rad pos: 41.5,11.5 parent: 12 + - uid: 22336 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 36.5,-32.5 + parent: 12 - uid: 22709 components: - type: Transform @@ -154542,6 +155006,11 @@ entities: rot: -1.5707963267948966 rad pos: 8.5,-41.5 parent: 12 + - uid: 25201 + components: + - type: Transform + pos: 49.5,1.5 + parent: 12 - uid: 25368 components: - type: Transform @@ -154592,11 +155061,6 @@ entities: rot: 1.5707963267948966 rad pos: 7.5,-3.5 parent: 12 - - uid: 26853 - components: - - type: Transform - pos: 16.5,10.5 - parent: 12 - uid: 27067 components: - type: Transform @@ -154895,20 +155359,15 @@ entities: - type: Transform pos: -11.5,-21.5 parent: 12 - - uid: 4551 - components: - - type: Transform - pos: 10.5,-16.5 - parent: 12 - - uid: 4552 + - uid: 4608 components: - type: Transform - pos: 11.5,-16.5 + pos: 11.5,-2.5 parent: 12 - - uid: 4608 + - uid: 4613 components: - type: Transform - pos: 11.5,-2.5 + pos: -25.5,56.5 parent: 12 - uid: 4943 components: @@ -154921,21 +155380,6 @@ entities: rot: 3.141592653589793 rad pos: 9.5,-13.5 parent: 12 - - uid: 5873 - components: - - type: Transform - pos: 29.5,-23.5 - parent: 12 - - uid: 5874 - components: - - type: Transform - pos: 29.5,-21.5 - parent: 12 - - uid: 5875 - components: - - type: Transform - pos: 29.5,-22.5 - parent: 12 - uid: 5890 components: - type: Transform @@ -154962,11 +155406,6 @@ entities: rot: 1.5707963267948966 rad pos: 55.5,-49.5 parent: 12 - - uid: 8713 - components: - - type: Transform - pos: 50.5,1.5 - parent: 12 - uid: 8868 components: - type: Transform @@ -155016,6 +155455,12 @@ entities: rot: 1.5707963267948966 rad pos: -20.5,-21.5 parent: 12 + - uid: 9590 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 35.5,-30.5 + parent: 12 - uid: 9599 components: - type: Transform @@ -155097,11 +155542,6 @@ entities: - type: Transform pos: 35.5,-9.5 parent: 12 - - uid: 16369 - components: - - type: Transform - pos: 34.5,-30.5 - parent: 12 - uid: 16451 components: - type: Transform @@ -155274,6 +155714,11 @@ entities: rot: -1.5707963267948966 rad pos: 3.5,-32.5 parent: 12 + - uid: 24673 + components: + - type: Transform + pos: 59.5,12.5 + parent: 12 - uid: 25008 components: - type: Transform @@ -155291,6 +155736,11 @@ entities: rot: -1.5707963267948966 rad pos: 2.5,-32.5 parent: 12 + - uid: 25531 + components: + - type: Transform + pos: 62.5,10.5 + parent: 12 - uid: 25684 components: - type: Transform @@ -155390,18 +155840,6 @@ entities: - type: Transform pos: 42.5,56.5 parent: 12 - - uid: 25935 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,61.5 - parent: 12 - - uid: 25936 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 49.5,61.5 - parent: 12 - uid: 25962 components: - type: Transform @@ -155484,6 +155922,12 @@ entities: rot: 1.5707963267948966 rad pos: -37.5,64.5 parent: 12 + - uid: 26889 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 48.5,62.5 + parent: 12 - uid: 27397 components: - type: Transform @@ -155655,6 +156099,12 @@ entities: - type: Transform pos: -25.836569,50.923958 parent: 12 + - uid: 26793 + components: + - type: Transform + rot: -100.53096491487331 rad + pos: 38.712696,-30.803366 + parent: 12 - proto: Railing entities: - uid: 365 @@ -156171,14 +156621,6 @@ entities: rot: 1.5707963267948966 rad pos: -20.5,24.5 parent: 12 -- proto: RailingRound - entities: - - uid: 25531 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 35.5,-32.5 - parent: 12 - proto: RandomArcade entities: - uid: 16926 @@ -156235,6 +156677,11 @@ entities: - type: Transform pos: 21.5,51.5 parent: 12 + - uid: 20539 + components: + - type: Transform + pos: 29.5,-9.5 + parent: 12 - uid: 25714 components: - type: Transform @@ -156250,11 +156697,6 @@ entities: - type: Transform pos: -55.5,-14.5 parent: 12 - - uid: 29353 - components: - - type: Transform - pos: 29.5,-8.5 - parent: 12 - proto: RandomFoodMeal entities: - uid: 23547 @@ -156400,6 +156842,11 @@ entities: parent: 12 - proto: RandomPosterContraband entities: + - uid: 1350 + components: + - type: Transform + pos: 33.5,-33.5 + parent: 12 - uid: 5245 components: - type: Transform @@ -156435,18 +156882,6 @@ entities: - type: Transform pos: -3.5,36.5 parent: 12 - - uid: 24321 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 37.5,-33.5 - parent: 12 - - uid: 24322 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 37.5,-33.5 - parent: 12 - uid: 24323 components: - type: Transform @@ -156940,11 +157375,6 @@ entities: parent: 12 - proto: RandomSpawner entities: - - uid: 97 - components: - - type: Transform - pos: 4.5,-23.5 - parent: 12 - uid: 5858 components: - type: Transform @@ -156975,6 +157405,11 @@ entities: - type: Transform pos: -1.5,15.5 parent: 12 + - uid: 9622 + components: + - type: Transform + pos: 11.5,-21.5 + parent: 12 - uid: 12045 components: - type: Transform @@ -157411,11 +157846,6 @@ entities: - type: Transform pos: 16.5,-22.5 parent: 12 - - uid: 24434 - components: - - type: Transform - pos: 13.5,-22.5 - parent: 12 - uid: 24435 components: - type: Transform @@ -157873,7 +158303,8 @@ entities: - uid: 26775 components: - type: Transform - pos: 29.510424,-21.430777 + rot: -43.98229715025713 rad + pos: 33.26136,-18.774406 parent: 12 - proto: ReagentContainerFlour entities: @@ -158151,6 +158582,11 @@ entities: - type: Transform pos: -1.5,1.5 parent: 12 + - uid: 68 + components: + - type: Transform + pos: 12.5,-13.5 + parent: 12 - uid: 69 components: - type: Transform @@ -158190,6 +158626,11 @@ entities: - type: Transform pos: -6.5,-7.5 parent: 12 + - uid: 273 + components: + - type: Transform + pos: 14.5,11.5 + parent: 12 - uid: 275 components: - type: Transform @@ -158989,12 +159430,6 @@ entities: rot: 1.5707963267948966 rad pos: 11.5,-24.5 parent: 12 - - uid: 4434 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,-24.5 - parent: 12 - uid: 4449 components: - type: Transform @@ -159013,31 +159448,16 @@ entities: rot: 1.5707963267948966 rad pos: 19.5,-22.5 parent: 12 - - uid: 4459 - components: - - type: Transform - pos: 7.5,-16.5 - parent: 12 - uid: 4468 components: - type: Transform pos: 8.5,-17.5 parent: 12 - - uid: 4470 - components: - - type: Transform - pos: 10.5,-17.5 - parent: 12 - uid: 4471 components: - type: Transform pos: 13.5,-18.5 parent: 12 - - uid: 4477 - components: - - type: Transform - pos: 15.5,-17.5 - parent: 12 - uid: 4581 components: - type: Transform @@ -159260,6 +159680,11 @@ entities: - type: Transform pos: 13.5,-0.5 parent: 12 + - uid: 5874 + components: + - type: Transform + pos: 49.5,59.5 + parent: 12 - uid: 5880 components: - type: Transform @@ -159271,6 +159696,11 @@ entities: - type: Transform pos: -28.5,-5.5 parent: 12 + - uid: 5983 + components: + - type: Transform + pos: 49.5,58.5 + parent: 12 - uid: 5992 components: - type: Transform @@ -160072,12 +160502,6 @@ entities: rot: 3.141592653589793 rad pos: 49.5,-9.5 parent: 12 - - uid: 8457 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -2.5,-21.5 - parent: 12 - uid: 8480 components: - type: Transform @@ -160209,6 +160633,11 @@ entities: rot: 1.5707963267948966 rad pos: -30.5,-13.5 parent: 12 + - uid: 9773 + components: + - type: Transform + pos: 29.5,-29.5 + parent: 12 - uid: 9868 components: - type: Transform @@ -160679,6 +161108,11 @@ entities: rot: 1.5707963267948966 rad pos: -13.5,10.5 parent: 12 + - uid: 10631 + components: + - type: Transform + pos: 13.5,-13.5 + parent: 12 - uid: 10682 components: - type: Transform @@ -160777,6 +161211,11 @@ entities: - type: Transform pos: 0.5,1.5 parent: 12 + - uid: 11019 + components: + - type: Transform + pos: 49.5,57.5 + parent: 12 - uid: 11029 components: - type: Transform @@ -162453,6 +162892,11 @@ entities: rot: -1.5707963267948966 rad pos: -54.5,47.5 parent: 12 + - uid: 18642 + components: + - type: Transform + pos: 14.5,-13.5 + parent: 12 - uid: 18650 components: - type: Transform @@ -162614,18 +163058,6 @@ entities: rot: 3.141592653589793 rad pos: -45.5,60.5 parent: 12 - - uid: 19270 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -7.5,-16.5 - parent: 12 - - uid: 19278 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -49.5,56.5 - parent: 12 - uid: 19281 components: - type: Transform @@ -162987,11 +163419,6 @@ entities: - type: Transform pos: -1.5,-29.5 parent: 12 - - uid: 24565 - components: - - type: Transform - pos: 3.5,-21.5 - parent: 12 - uid: 24655 components: - type: Transform @@ -163109,11 +163536,6 @@ entities: - type: Transform pos: 33.5,-3.5 parent: 12 - - uid: 26619 - components: - - type: Transform - pos: 4.5,-21.5 - parent: 12 - uid: 26641 components: - type: Transform @@ -163311,16 +163733,6 @@ entities: - type: Transform pos: -49.5,-18.5 parent: 12 - - uid: 28438 - components: - - type: Transform - pos: 1.5,-21.5 - parent: 12 - - uid: 28439 - components: - - type: Transform - pos: 2.5,-21.5 - parent: 12 - uid: 28559 components: - type: Transform @@ -164088,14 +164500,19 @@ entities: - uid: 9964 components: - type: Transform - rot: -43.98229715025713 rad - pos: -4.5002747,-32.689064 + rot: -12.566370614359172 rad + pos: -4.4072175,-32.679348 parent: 12 - uid: 26050 components: - type: Transform pos: -42.5,-45.5 parent: 12 + - uid: 26810 + components: + - type: Transform + pos: -23.417446,52.500484 + parent: 12 - proto: SawElectric entities: - uid: 11312 @@ -164160,6 +164577,11 @@ entities: parent: 12 - proto: ScalpelShiv entities: + - uid: 3079 + components: + - type: Transform + pos: -22.51911,53.492798 + parent: 12 - uid: 11945 components: - type: Transform @@ -164444,6 +164866,11 @@ entities: - type: Transform pos: -0.5,20.5 parent: 12 + - uid: 4763 + components: + - type: Transform + pos: -22.533438,55.35212 + parent: 12 - uid: 7009 components: - type: Transform @@ -164522,6 +164949,11 @@ entities: count: 5 - proto: SheetPlasma10 entities: + - uid: 24434 + components: + - type: Transform + pos: 62.5,10.5 + parent: 12 - uid: 28215 components: - type: Transform @@ -164650,6 +165082,12 @@ entities: rot: -18.84955592153876 rad pos: 29.572147,2.9947028 parent: 12 + - uid: 25384 + components: + - type: Transform + rot: -6.283185307179586 rad + pos: 59.433964,12.527496 + parent: 12 - uid: 26547 components: - type: Transform @@ -164695,11 +165133,6 @@ entities: parent: 12 - proto: Shiv entities: - - uid: 25201 - components: - - type: Transform - pos: 36.293972,-30.4844 - parent: 12 - uid: 30493 components: - type: Transform @@ -164833,10 +165266,10 @@ entities: parent: 12 - proto: ShuttersNormalOpen entities: - - uid: 7529 + - uid: 2721 components: - type: Transform - pos: 51.5,-4.5 + pos: 13.5,-13.5 parent: 12 - uid: 8470 components: @@ -164848,6 +165281,16 @@ entities: - type: Transform pos: 49.5,-9.5 parent: 12 + - uid: 9613 + components: + - type: Transform + pos: 14.5,-13.5 + parent: 12 + - uid: 9645 + components: + - type: Transform + pos: 13.5,-18.5 + parent: 12 - uid: 10382 components: - type: Transform @@ -164913,6 +165356,11 @@ entities: rot: -1.5707963267948966 rad pos: -13.5,8.5 parent: 12 + - uid: 16869 + components: + - type: Transform + pos: 8.5,-17.5 + parent: 12 - uid: 18665 components: - type: Transform @@ -165013,6 +165461,21 @@ entities: rot: -1.5707963267948966 rad pos: -57.5,25.5 parent: 12 + - uid: 19823 + components: + - type: Transform + pos: 12.5,-13.5 + parent: 12 + - uid: 19852 + components: + - type: Transform + pos: 14.5,-18.5 + parent: 12 + - uid: 19861 + components: + - type: Transform + pos: 12.5,-18.5 + parent: 12 - uid: 21916 components: - type: Transform @@ -165489,6 +165952,36 @@ entities: - Pressed: Toggle 18857: - Pressed: Toggle + - uid: 22059 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-17.5 + parent: 12 + - type: DeviceLinkSource + linkedPorts: + 16869: + - Pressed: Toggle + 19861: + - Pressed: Toggle + 9645: + - Pressed: Toggle + 19852: + - Pressed: Toggle + - uid: 22062 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 10.5,-12.5 + parent: 12 + - type: DeviceLinkSource + linkedPorts: + 19823: + - Pressed: Toggle + 2721: + - Pressed: Toggle + 9613: + - Pressed: Toggle - uid: 23446 components: - type: Transform @@ -166639,6 +167132,12 @@ entities: rot: -1.5707963267948966 rad pos: -25.5,50.5 parent: 12 + - uid: 26738 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 37.5,-32.5 + parent: 12 - uid: 32027 components: - type: Transform @@ -166659,11 +167158,6 @@ entities: rot: 1.5707963267948966 rad pos: 7.5,-29.5 parent: 12 - - uid: 8428 - components: - - type: Transform - pos: 37.5,-30.5 - parent: 12 - proto: SinkWide entities: - uid: 288 @@ -166851,6 +167345,21 @@ entities: - type: Transform pos: 38.5,-6.5 parent: 12 + - uid: 26871 + components: + - type: Transform + pos: 14.5,-14.5 + parent: 12 + - uid: 26872 + components: + - type: Transform + pos: 13.5,-14.5 + parent: 12 + - uid: 26873 + components: + - type: Transform + pos: 12.5,-14.5 + parent: 12 - uid: 32042 components: - type: Transform @@ -166920,6 +167429,12 @@ entities: rot: -1.5707963267948966 rad pos: 27.5,47.5 parent: 12 + - uid: 16339 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 38.5,-32.5 + parent: 12 - proto: SodaDispenserEmpty entities: - uid: 23451 @@ -169267,16 +169782,6 @@ entities: parent: 12 - proto: SpawnPointStationEngineer entities: - - uid: 3469 - components: - - type: Transform - pos: 14.5,-15.5 - parent: 12 - - uid: 4629 - components: - - type: Transform - pos: 13.5,-15.5 - parent: 12 - uid: 5501 components: - type: Transform @@ -169297,10 +169802,10 @@ entities: - type: Transform pos: 31.5,-19.5 parent: 12 - - uid: 9174 + - uid: 19270 components: - type: Transform - pos: 12.5,-15.5 + pos: 13.5,-23.5 parent: 12 - proto: SpawnPointTechnicalAssistant entities: @@ -170475,6 +170980,16 @@ entities: parent: 12 - proto: StorageCanister entities: + - uid: 240 + components: + - type: Transform + pos: 13.5,-12.5 + parent: 12 + - uid: 271 + components: + - type: Transform + pos: 12.5,-12.5 + parent: 12 - uid: 397 components: - type: Transform @@ -170495,25 +171010,15 @@ entities: - type: Transform pos: 24.5,1.5 parent: 12 - - uid: 20776 - components: - - type: Transform - pos: 10.5,-11.5 - parent: 12 - - uid: 20782 - components: - - type: Transform - pos: 11.5,-11.5 - parent: 12 - - uid: 20876 + - uid: 26601 components: - type: Transform - pos: 12.5,-11.5 + pos: 3.5,-18.5 parent: 12 - - uid: 26601 + - uid: 26874 components: - type: Transform - pos: 3.5,-18.5 + pos: 14.5,-12.5 parent: 12 - uid: 31052 components: @@ -170679,11 +171184,21 @@ entities: parent: 12 - proto: SuitStorageEngi entities: + - uid: 214 + components: + - type: Transform + pos: 33.5,-15.5 + parent: 12 - uid: 2287 components: - type: Transform pos: 62.5,-3.5 parent: 12 + - uid: 4525 + components: + - type: Transform + pos: 29.5,-6.5 + parent: 12 - uid: 4553 components: - type: Transform @@ -170699,11 +171214,21 @@ entities: - type: Transform pos: 29.5,-13.5 parent: 12 + - uid: 4708 + components: + - type: Transform + pos: 29.5,-7.5 + parent: 12 - uid: 9173 components: - type: Transform pos: 60.5,-3.5 parent: 12 + - uid: 26851 + components: + - type: Transform + pos: 32.5,-15.5 + parent: 12 - proto: SuitStorageEVA entities: - uid: 22129 @@ -171042,16 +171567,6 @@ entities: - SurveillanceCameraCommand nameSet: True id: Server room - - uid: 28865 - components: - - type: Transform - pos: -0.5,-15.5 - parent: 12 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraCommand - nameSet: True - id: AI upload 2 - uid: 31748 components: - type: Transform @@ -171681,17 +172196,6 @@ entities: - SurveillanceCameraGeneral nameSet: True id: Toolshed - - uid: 24193 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 48.5,58.5 - parent: 12 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraGeneral - nameSet: True - id: Hallway NE 1 - uid: 24200 components: - type: Transform @@ -171725,6 +172229,16 @@ entities: - SurveillanceCameraGeneral nameSet: True id: Disposals + - uid: 26895 + components: + - type: Transform + pos: 49.5,62.5 + parent: 12 + - type: SurveillanceCamera + setupAvailableNetworks: + - SurveillanceCameraGeneral + nameSet: True + id: Northeast evac pod - uid: 28427 components: - type: Transform @@ -172152,6 +172666,17 @@ entities: - SurveillanceCameraScience nameSet: True id: Robotics + - uid: 26799 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 48.5,59.5 + parent: 12 + - type: SurveillanceCamera + setupAvailableNetworks: + - SurveillanceCameraScience + nameSet: True + id: Science checkpoint - uid: 28803 components: - type: Transform @@ -172328,16 +172853,6 @@ entities: - SurveillanceCameraSecurity nameSet: True id: Shooting range - - uid: 29288 - components: - - type: Transform - pos: -26.5,58.5 - parent: 12 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraSecurity - nameSet: True - id: Prisoner EVA storage - uid: 29289 components: - type: Transform @@ -172624,17 +173139,6 @@ entities: - SurveillanceCameraService nameSet: True id: Zookeeper's room - - uid: 28817 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -11.5,-12.5 - parent: 12 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraService - nameSet: True - id: Penguin zoo - uid: 28818 components: - type: Transform @@ -172877,6 +173381,12 @@ entities: parent: 12 - proto: Table entities: + - uid: 219 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 36.5,-29.5 + parent: 12 - uid: 508 components: - type: Transform @@ -173176,6 +173686,12 @@ entities: rot: 1.5707963267948966 rad pos: 13.5,-24.5 parent: 12 + - uid: 4540 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 29.5,-9.5 + parent: 12 - uid: 4556 components: - type: Transform @@ -173212,11 +173728,6 @@ entities: - type: Transform pos: 8.5,-11.5 parent: 12 - - uid: 4851 - components: - - type: Transform - pos: 29.5,-8.5 - parent: 12 - uid: 4913 components: - type: Transform @@ -173272,11 +173783,6 @@ entities: - type: Transform pos: 12.5,-19.5 parent: 12 - - uid: 5513 - components: - - type: Transform - pos: 28.5,-15.5 - parent: 12 - uid: 5515 components: - type: Transform @@ -173297,6 +173803,12 @@ entities: - type: Transform pos: 21.5,-23.5 parent: 12 + - uid: 5865 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -23.5,52.5 + parent: 12 - uid: 5897 components: - type: Transform @@ -173353,6 +173865,12 @@ entities: - type: Transform pos: -0.5,-15.5 parent: 12 + - uid: 7717 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -22.5,53.5 + parent: 12 - uid: 8224 components: - type: Transform @@ -173399,11 +173917,6 @@ entities: - type: Transform pos: 2.5,11.5 parent: 12 - - uid: 9077 - components: - - type: Transform - pos: 38.5,-31.5 - parent: 12 - uid: 9405 components: - type: Transform @@ -173875,6 +174388,12 @@ entities: rot: 3.141592653589793 rad pos: -48.5,36.5 parent: 12 + - uid: 18643 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 37.5,-29.5 + parent: 12 - uid: 18868 components: - type: Transform @@ -174042,6 +174561,12 @@ entities: - type: Transform pos: -42.5,56.5 parent: 12 + - uid: 20876 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 38.5,-30.5 + parent: 12 - uid: 20879 components: - type: Transform @@ -174285,6 +174810,11 @@ entities: - type: Transform pos: 3.5,57.5 parent: 12 + - uid: 23092 + components: + - type: Transform + pos: 49.5,-30.5 + parent: 12 - uid: 23421 components: - type: Transform @@ -174631,6 +175161,24 @@ entities: - type: Transform pos: -22.5,-9.5 parent: 12 + - uid: 26732 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 38.5,-32.5 + parent: 12 + - uid: 26748 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 38.5,-31.5 + parent: 12 + - uid: 26831 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -22.5,52.5 + parent: 12 - uid: 27252 components: - type: Transform @@ -174956,11 +175504,6 @@ entities: parent: 12 - proto: TableFrame entities: - - uid: 17599 - components: - - type: Transform - pos: 38.5,-32.5 - parent: 12 - uid: 30485 components: - type: Transform @@ -175227,11 +175770,6 @@ entities: rot: 3.141592653589793 rad pos: 79.5,-38.5 parent: 12 - - uid: 8930 - components: - - type: Transform - pos: 49.5,-30.5 - parent: 12 - uid: 8938 components: - type: Transform @@ -176427,26 +176965,26 @@ entities: parent: 12 - proto: TegCenter entities: - - uid: 12047 + - uid: 4969 components: - type: Transform - rot: -1.5707963267948966 rad + rot: 1.5707963267948966 rad pos: 11.5,15.5 parent: 12 - proto: TegCirculator entities: - - uid: 3132 + - uid: 23175 components: - type: Transform - rot: 3.141592653589793 rad - pos: 10.5,15.5 + pos: 12.5,15.5 parent: 12 - type: PointLight color: '#FF3300FF' - - uid: 11944 + - uid: 26652 components: - type: Transform - pos: 12.5,15.5 + rot: 3.141592653589793 rad + pos: 10.5,15.5 parent: 12 - type: PointLight color: '#FF3300FF' @@ -176518,119 +177056,87 @@ entities: - type: Transform pos: 36.5,-7.5 parent: 12 -- proto: TeslaCoil +- proto: TeslaCoilFlatpack entities: - - uid: 6741 - components: - - type: Transform - anchored: False - rot: 1.5707963267948966 rad - pos: 62.5,10.5 - parent: 12 - - type: Physics - bodyType: Dynamic - - uid: 7152 + - uid: 24193 components: - type: Transform - anchored: False - rot: 1.5707963267948966 rad - pos: 62.5,12.5 - parent: 12 + parent: 24085 - type: Physics - bodyType: Dynamic - - uid: 10923 + canCollide: False + - type: InsideEntityStorage + - uid: 24218 components: - type: Transform - anchored: False - rot: 1.5707963267948966 rad - pos: 61.5,11.5 - parent: 12 + parent: 24085 - type: Physics - bodyType: Dynamic - - uid: 11019 + canCollide: False + - type: InsideEntityStorage + - uid: 24223 components: - type: Transform - anchored: False - rot: 1.5707963267948966 rad - pos: 62.5,11.5 - parent: 12 + parent: 24085 - type: Physics - bodyType: Dynamic - - uid: 11039 + canCollide: False + - type: InsideEntityStorage + - uid: 24224 components: - type: Transform - anchored: False - rot: 1.5707963267948966 rad - pos: 61.5,10.5 - parent: 12 + parent: 24085 - type: Physics - bodyType: Dynamic - - uid: 11435 + canCollide: False + - type: InsideEntityStorage + - uid: 24225 components: - type: Transform - anchored: False - rot: 1.5707963267948966 rad - pos: 61.5,12.5 - parent: 12 + parent: 24085 - type: Physics - bodyType: Dynamic + canCollide: False + - type: InsideEntityStorage - proto: TeslaGenerator entities: - - uid: 26531 + - uid: 24322 components: - type: Transform - pos: 57.5,10.5 + pos: 60.5,12.5 parent: 12 -- proto: TeslaGroundingRod +- proto: TeslaGroundingRodFlatpack entities: - - uid: 5528 - components: - - type: Transform - anchored: False - pos: 59.5,12.5 - parent: 12 - - type: Physics - bodyType: Dynamic - - uid: 11304 + - uid: 25027 components: - type: Transform - anchored: False - pos: 59.5,11.5 - parent: 12 + parent: 24702 - type: Physics - bodyType: Dynamic - - uid: 15687 + canCollide: False + - type: InsideEntityStorage + - uid: 25038 components: - type: Transform - anchored: False - pos: 60.5,12.5 - parent: 12 + parent: 24702 - type: Physics - bodyType: Dynamic - - uid: 16349 + canCollide: False + - type: InsideEntityStorage + - uid: 25101 components: - type: Transform - anchored: False - pos: 60.5,11.5 - parent: 12 + parent: 24702 - type: Physics - bodyType: Dynamic - - uid: 26153 + canCollide: False + - type: InsideEntityStorage + - uid: 25104 components: - type: Transform - anchored: False - pos: 59.5,10.5 - parent: 12 + parent: 24702 - type: Physics - bodyType: Dynamic - - uid: 26530 + canCollide: False + - type: InsideEntityStorage + - uid: 25195 components: - type: Transform - anchored: False - pos: 60.5,10.5 - parent: 12 + parent: 24702 - type: Physics - bodyType: Dynamic + canCollide: False + - type: InsideEntityStorage - proto: ThermomachineFreezerMachineCircuitBoard entities: - uid: 11244 @@ -176710,12 +177216,6 @@ entities: parent: 12 - proto: ToiletDirtyWater entities: - - uid: 2845 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 38.5,-30.5 - parent: 12 - uid: 4218 components: - type: Transform @@ -176837,11 +177337,6 @@ entities: - type: Transform pos: 33.354294,-17.272806 parent: 12 - - uid: 5911 - components: - - type: Transform - pos: 33.33867,-18.366556 - parent: 12 - uid: 8880 components: - type: Transform @@ -176923,6 +177418,11 @@ entities: - type: Transform pos: 9.344754,68.50202 parent: 12 + - uid: 26804 + components: + - type: Transform + pos: -25.567787,56.37359 + parent: 12 - proto: ToolboxGoldFilled entities: - uid: 15844 @@ -176957,12 +177457,8 @@ entities: - uid: 5912 components: - type: Transform - pos: 33.30742,-20.257181 - parent: 12 - - uid: 5913 - components: - - type: Transform - pos: 33.24492,-19.304056 + rot: -43.98229715025713 rad + pos: 33.372475,-18.152294 parent: 12 - uid: 8875 components: @@ -178334,10 +178830,10 @@ entities: parent: 12 - proto: VendingMachineEngivend entities: - - uid: 5521 + - uid: 10144 components: - type: Transform - pos: 8.5,-16.5 + pos: 16.5,-19.5 parent: 12 - uid: 27006 components: @@ -178587,6 +179083,11 @@ entities: parent: 12 - proto: VendingMachineSovietSoda entities: + - uid: 4481 + components: + - type: Transform + pos: 47.5,1.5 + parent: 12 - uid: 14953 components: - type: Transform @@ -178613,15 +179114,10 @@ entities: parent: 12 - proto: VendingMachineTankDispenserEngineering entities: - - uid: 26669 - components: - - type: Transform - pos: 11.5,-13.5 - parent: 12 - - uid: 27384 + - uid: 26870 components: - type: Transform - pos: 58.5,-4.5 + pos: 10.5,-13.5 parent: 12 - proto: VendingMachineTankDispenserEVA entities: @@ -178645,6 +179141,11 @@ entities: - type: Transform pos: -44.5,50.5 parent: 12 + - uid: 25933 + components: + - type: Transform + pos: 58.5,-4.5 + parent: 12 - uid: 27024 components: - type: Transform @@ -178917,11 +179418,6 @@ entities: - type: Transform pos: -31.5,12.5 parent: 12 - - uid: 80 - components: - - type: Transform - pos: -9.5,-16.5 - parent: 12 - uid: 95 components: - type: Transform @@ -179274,12 +179770,6 @@ entities: rot: 1.5707963267948966 rad pos: 2.5,-16.5 parent: 12 - - uid: 203 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -2.5,-17.5 - parent: 12 - uid: 204 components: - type: Transform @@ -179297,54 +179787,6 @@ entities: - type: Transform pos: 7.5,27.5 parent: 12 - - uid: 211 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -1.5,-21.5 - parent: 12 - - uid: 212 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -1.5,-20.5 - parent: 12 - - uid: 213 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -1.5,-19.5 - parent: 12 - - uid: 214 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -1.5,-18.5 - parent: 12 - - uid: 215 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 0.5,-20.5 - parent: 12 - - uid: 216 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 0.5,-19.5 - parent: 12 - - uid: 217 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 0.5,-18.5 - parent: 12 - - uid: 219 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 0.5,-21.5 - parent: 12 - uid: 227 components: - type: Transform @@ -179355,11 +179797,6 @@ entities: - type: Transform pos: -55.5,13.5 parent: 12 - - uid: 240 - components: - - type: Transform - pos: -7.5,-19.5 - parent: 12 - uid: 249 components: - type: Transform @@ -179543,18 +179980,6 @@ entities: - type: Transform pos: -13.5,-25.5 parent: 12 - - uid: 564 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -5.5,-17.5 - parent: 12 - - uid: 566 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -5.5,-14.5 - parent: 12 - uid: 569 components: - type: Transform @@ -180125,6 +180550,11 @@ entities: - type: Transform pos: 26.5,-6.5 parent: 12 + - uid: 1552 + components: + - type: Transform + pos: 15.5,12.5 + parent: 12 - uid: 1556 components: - type: Transform @@ -180490,6 +180920,11 @@ entities: - type: Transform pos: -10.5,3.5 parent: 12 + - uid: 3469 + components: + - type: Transform + pos: 15.5,13.5 + parent: 12 - uid: 3516 components: - type: Transform @@ -180524,12 +180959,6 @@ entities: rot: -1.5707963267948966 rad pos: 6.5,-2.5 parent: 12 - - uid: 4013 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,11.5 - parent: 12 - uid: 4103 components: - type: Transform @@ -180583,10 +181012,15 @@ entities: - type: Transform pos: -41.5,-54.5 parent: 12 + - uid: 4423 + components: + - type: Transform + pos: -49.5,56.5 + parent: 12 - uid: 4478 components: - type: Transform - pos: 14.5,-13.5 + pos: 7.5,-16.5 parent: 12 - uid: 4526 components: @@ -180957,11 +181391,6 @@ entities: rot: 3.141592653589793 rad pos: 23.5,-5.5 parent: 12 - - uid: 5190 - components: - - type: Transform - pos: 12.5,-12.5 - parent: 12 - uid: 5220 components: - type: Transform @@ -181020,23 +181449,12 @@ entities: rot: 1.5707963267948966 rad pos: 34.5,-16.5 parent: 12 - - uid: 5273 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-17.5 - parent: 12 - uid: 5313 components: - type: Transform rot: -1.5707963267948966 rad pos: 11.5,-50.5 parent: 12 - - uid: 5365 - components: - - type: Transform - pos: 13.5,-13.5 - parent: 12 - uid: 5391 components: - type: Transform @@ -181172,18 +181590,6 @@ entities: - type: Transform pos: 35.5,-16.5 parent: 12 - - uid: 5618 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -4.5,-17.5 - parent: 12 - - uid: 5620 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -5.5,-15.5 - parent: 12 - uid: 5628 components: - type: Transform @@ -181218,11 +181624,6 @@ entities: - type: Transform pos: 13.5,6.5 parent: 12 - - uid: 5820 - components: - - type: Transform - pos: 12.5,-13.5 - parent: 12 - uid: 5830 components: - type: Transform @@ -181257,6 +181658,17 @@ entities: rot: 1.5707963267948966 rad pos: 60.5,-47.5 parent: 12 + - uid: 5911 + components: + - type: Transform + pos: -6.5,-13.5 + parent: 12 + - uid: 5916 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 15.5,11.5 + parent: 12 - uid: 5950 components: - type: Transform @@ -182102,11 +182514,6 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,2.5 parent: 12 - - uid: 8447 - components: - - type: Transform - pos: -6.5,-19.5 - parent: 12 - uid: 8450 components: - type: Transform @@ -182173,6 +182580,11 @@ entities: - type: Transform pos: 26.5,4.5 parent: 12 + - uid: 8930 + components: + - type: Transform + pos: 10.5,-17.5 + parent: 12 - uid: 8958 components: - type: Transform @@ -182230,6 +182642,11 @@ entities: rot: -1.5707963267948966 rad pos: 59.5,-17.5 parent: 12 + - uid: 9077 + components: + - type: Transform + pos: 15.5,-17.5 + parent: 12 - uid: 9120 components: - type: Transform @@ -182364,24 +182781,6 @@ entities: rot: 3.141592653589793 rad pos: -51.5,54.5 parent: 12 - - uid: 9590 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 14.5,12.5 - parent: 12 - - uid: 9613 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 14.5,13.5 - parent: 12 - - uid: 9622 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,13.5 - parent: 12 - uid: 9624 components: - type: Transform @@ -182406,12 +182805,6 @@ entities: rot: -1.5707963267948966 rad pos: 17.5,12.5 parent: 12 - - uid: 9645 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 14.5,11.5 - parent: 12 - uid: 9652 components: - type: Transform @@ -185613,21 +186006,6 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,-0.5 parent: 12 - - uid: 19202 - components: - - type: Transform - pos: -7.5,-17.5 - parent: 12 - - uid: 19203 - components: - - type: Transform - pos: -5.5,-19.5 - parent: 12 - - uid: 19204 - components: - - type: Transform - pos: -7.5,-18.5 - parent: 12 - uid: 19206 components: - type: Transform @@ -185778,16 +186156,6 @@ entities: rot: 3.141592653589793 rad pos: -45.5,54.5 parent: 12 - - uid: 19267 - components: - - type: Transform - pos: -7.5,-14.5 - parent: 12 - - uid: 19268 - components: - - type: Transform - pos: -7.5,-15.5 - parent: 12 - uid: 19272 components: - type: Transform @@ -186941,8 +187309,7 @@ entities: - uid: 25889 components: - type: Transform - rot: 3.141592653589793 rad - pos: 5.5,-14.5 + pos: 11.5,-13.5 parent: 12 - uid: 25902 components: @@ -186970,11 +187337,6 @@ entities: rot: 3.141592653589793 rad pos: 63.5,-27.5 parent: 12 - - uid: 26131 - components: - - type: Transform - pos: 5.5,-20.5 - parent: 12 - uid: 26167 components: - type: Transform @@ -187032,16 +187394,6 @@ entities: rot: -1.5707963267948966 rad pos: 16.5,6.5 parent: 12 - - uid: 26472 - components: - - type: Transform - pos: 3.5,-17.5 - parent: 12 - - uid: 26473 - components: - - type: Transform - pos: 5.5,-18.5 - parent: 12 - uid: 26475 components: - type: Transform @@ -187096,12 +187448,6 @@ entities: rot: -1.5707963267948966 rad pos: 18.5,6.5 parent: 12 - - uid: 26634 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 1.5,-17.5 - parent: 12 - uid: 26822 components: - type: Transform @@ -187114,11 +187460,6 @@ entities: rot: -1.5707963267948966 rad pos: 28.5,13.5 parent: 12 - - uid: 26850 - components: - - type: Transform - pos: 5.5,-21.5 - parent: 12 - uid: 26854 components: - type: Transform @@ -187234,11 +187575,6 @@ entities: - type: Transform pos: 5.5,-9.5 parent: 12 - - uid: 27980 - components: - - type: Transform - pos: 5.5,-13.5 - parent: 12 - uid: 27981 components: - type: Transform @@ -187254,16 +187590,6 @@ entities: - type: Transform pos: 5.5,-10.5 parent: 12 - - uid: 28046 - components: - - type: Transform - pos: -4.5,-19.5 - parent: 12 - - uid: 28047 - components: - - type: Transform - pos: -3.5,-19.5 - parent: 12 - uid: 28088 components: - type: Transform @@ -187290,11 +187616,6 @@ entities: - type: Transform pos: 30.5,34.5 parent: 12 - - uid: 28146 - components: - - type: Transform - pos: -3.5,-20.5 - parent: 12 - uid: 28158 components: - type: Transform @@ -187337,11 +187658,6 @@ entities: rot: -1.5707963267948966 rad pos: -58.5,-13.5 parent: 12 - - uid: 28166 - components: - - type: Transform - pos: -3.5,-21.5 - parent: 12 - uid: 28169 components: - type: Transform @@ -187401,12 +187717,6 @@ entities: rot: 1.5707963267948966 rad pos: -42.5,-14.5 parent: 12 - - uid: 28327 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 27.5,-14.5 - parent: 12 - uid: 28422 components: - type: Transform @@ -188261,6 +188571,11 @@ entities: - type: Transform pos: -51.5,-35.5 parent: 12 + - uid: 25935 + components: + - type: Transform + pos: -2.5,-17.5 + parent: 12 - uid: 26086 components: - type: Transform @@ -188288,6 +188603,51 @@ entities: rot: -1.5707963267948966 rad pos: -20.5,70.5 parent: 12 + - uid: 26480 + components: + - type: Transform + pos: -5.5,-17.5 + parent: 12 + - uid: 26530 + components: + - type: Transform + pos: -5.5,-14.5 + parent: 12 + - uid: 26599 + components: + - type: Transform + pos: 4.5,-17.5 + parent: 12 + - uid: 26619 + components: + - type: Transform + pos: -4.5,-17.5 + parent: 12 + - uid: 26632 + components: + - type: Transform + pos: -5.5,-15.5 + parent: 12 + - uid: 26684 + components: + - type: Transform + pos: 5.5,-14.5 + parent: 12 + - uid: 26693 + components: + - type: Transform + pos: 3.5,-17.5 + parent: 12 + - uid: 26700 + components: + - type: Transform + pos: 1.5,-17.5 + parent: 12 + - uid: 26707 + components: + - type: Transform + pos: 5.5,-13.5 + parent: 12 - uid: 27035 components: - type: Transform @@ -188602,11 +188962,16 @@ entities: rot: 3.141592653589793 rad pos: -18.5,-6.5 parent: 12 - - uid: 218 + - uid: 216 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -0.5,-21.5 + rot: -1.5707963267948966 rad + pos: 34.5,-33.5 + parent: 12 + - uid: 217 + components: + - type: Transform + pos: 34.5,-32.5 parent: 12 - uid: 287 components: @@ -189360,6 +189725,11 @@ entities: - type: Transform pos: -52.5,-40.5 parent: 12 + - uid: 2031 + components: + - type: Transform + pos: 49.5,60.5 + parent: 12 - uid: 2040 components: - type: Transform @@ -189491,6 +189861,11 @@ entities: rot: -1.5707963267948966 rad pos: 33.5,49.5 parent: 12 + - uid: 2459 + components: + - type: Transform + pos: 48.5,61.5 + parent: 12 - uid: 2467 components: - type: Transform @@ -189509,6 +189884,12 @@ entities: rot: 3.141592653589793 rad pos: 42.5,10.5 parent: 12 + - uid: 2515 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 2.5,-21.5 + parent: 12 - uid: 2596 components: - type: Transform @@ -189614,6 +189995,12 @@ entities: - type: Transform pos: -7.5,-58.5 parent: 12 + - uid: 2704 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 1.5,-21.5 + parent: 12 - uid: 2710 components: - type: Transform @@ -189702,6 +190089,11 @@ entities: - type: Transform pos: 5.5,-37.5 parent: 12 + - uid: 2964 + components: + - type: Transform + pos: 14.5,-24.5 + parent: 12 - uid: 2965 components: - type: Transform @@ -189995,12 +190387,6 @@ entities: - type: Transform pos: 10.5,-35.5 parent: 12 - - uid: 4188 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 29.5,-15.5 - parent: 12 - uid: 4206 components: - type: Transform @@ -190130,6 +190516,21 @@ entities: rot: -1.5707963267948966 rad pos: 14.5,-35.5 parent: 12 + - uid: 4694 + components: + - type: Transform + pos: -7.5,-19.5 + parent: 12 + - uid: 4696 + components: + - type: Transform + pos: 46.5,59.5 + parent: 12 + - uid: 4732 + components: + - type: Transform + pos: 46.5,60.5 + parent: 12 - uid: 4959 components: - type: Transform @@ -190179,6 +190580,12 @@ entities: rot: -1.5707963267948966 rad pos: -11.5,-32.5 parent: 12 + - uid: 5305 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 34.5,-29.5 + parent: 12 - uid: 5385 components: - type: Transform @@ -190200,7 +190607,7 @@ entities: components: - type: Transform rot: 3.141592653589793 rad - pos: 24.5,-18.5 + pos: 38.5,-29.5 parent: 12 - uid: 5447 components: @@ -190499,12 +190906,6 @@ entities: - type: Transform pos: -17.5,69.5 parent: 12 - - uid: 7101 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 35.5,-33.5 - parent: 12 - uid: 7105 components: - type: Transform @@ -190529,36 +190930,12 @@ entities: rot: 3.141592653589793 rad pos: 39.5,-25.5 parent: 12 - - uid: 7111 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 33.5,-31.5 - parent: 12 - uid: 7113 components: - type: Transform rot: -1.5707963267948966 rad pos: 33.5,-29.5 parent: 12 - - uid: 7114 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 34.5,-29.5 - parent: 12 - - uid: 7116 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 36.5,-29.5 - parent: 12 - - uid: 7118 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 38.5,-29.5 - parent: 12 - uid: 7122 components: - type: Transform @@ -190919,6 +191296,11 @@ entities: - type: Transform pos: 35.5,10.5 parent: 12 + - uid: 9059 + components: + - type: Transform + pos: 17.5,-18.5 + parent: 12 - uid: 9133 components: - type: Transform @@ -190934,6 +191316,11 @@ entities: - type: Transform pos: 54.5,-7.5 parent: 12 + - uid: 9224 + components: + - type: Transform + pos: 49.5,61.5 + parent: 12 - uid: 9366 components: - type: Transform @@ -190966,17 +191353,11 @@ entities: rot: -1.5707963267948966 rad pos: -25.5,24.5 parent: 12 - - uid: 9664 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 35.5,-29.5 - parent: 12 - - uid: 9666 + - uid: 9663 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 37.5,-29.5 + rot: 1.5707963267948966 rad + pos: 4.5,-21.5 parent: 12 - uid: 9736 components: @@ -192789,18 +193170,6 @@ entities: rot: -1.5707963267948966 rad pos: 46.5,61.5 parent: 12 - - uid: 14210 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 47.5,59.5 - parent: 12 - - uid: 14211 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 47.5,58.5 - parent: 12 - uid: 14212 components: - type: Transform @@ -194201,6 +194570,11 @@ entities: rot: 1.5707963267948966 rad pos: -23.5,42.5 parent: 12 + - uid: 19268 + components: + - type: Transform + pos: -5.5,-19.5 + parent: 12 - uid: 19269 components: - type: Transform @@ -194233,12 +194607,6 @@ entities: - type: Transform pos: -4.5,-59.5 parent: 12 - - uid: 19560 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 50.5,0.5 - parent: 12 - uid: 19567 components: - type: Transform @@ -195146,11 +195514,6 @@ entities: - type: Transform pos: -10.5,-20.5 parent: 12 - - uid: 23175 - components: - - type: Transform - pos: 48.5,-4.5 - parent: 12 - uid: 23363 components: - type: Transform @@ -195176,12 +195539,6 @@ entities: - type: Transform pos: 19.5,-29.5 parent: 12 - - uid: 23515 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 47.5,60.5 - parent: 12 - uid: 23531 components: - type: Transform @@ -195474,11 +195831,6 @@ entities: - type: Transform pos: -15.5,-59.5 parent: 12 - - uid: 25200 - components: - - type: Transform - pos: 46.5,-4.5 - parent: 12 - uid: 25243 components: - type: Transform @@ -195668,6 +196020,11 @@ entities: - type: Transform pos: -2.5,70.5 parent: 12 + - uid: 25936 + components: + - type: Transform + pos: -1.5,-21.5 + parent: 12 - uid: 25937 components: - type: Transform @@ -195713,6 +196070,11 @@ entities: - type: Transform pos: -21.5,-9.5 parent: 12 + - uid: 26131 + components: + - type: Transform + pos: -1.5,-20.5 + parent: 12 - uid: 26155 components: - type: Transform @@ -195748,6 +196110,11 @@ entities: rot: 3.141592653589793 rad pos: -43.5,62.5 parent: 12 + - uid: 26205 + components: + - type: Transform + pos: -1.5,-18.5 + parent: 12 - uid: 26238 components: - type: Transform @@ -195765,15 +196132,22 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,16.5 parent: 12 + - uid: 26418 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 0.5,-20.5 + parent: 12 - uid: 26449 components: - type: Transform pos: 11.5,90.5 parent: 12 - - uid: 26480 + - uid: 26472 components: - type: Transform - pos: 29.5,-29.5 + rot: 1.5707963267948966 rad + pos: 0.5,-21.5 parent: 12 - uid: 26618 components: @@ -195781,12 +196155,48 @@ entities: rot: 3.141592653589793 rad pos: 32.5,9.5 parent: 12 + - uid: 26691 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 5.5,-20.5 + parent: 12 - uid: 26698 components: - type: Transform rot: 3.141592653589793 rad pos: 31.5,9.5 parent: 12 + - uid: 26718 + components: + - type: Transform + pos: 24.5,-18.5 + parent: 12 + - uid: 26759 + components: + - type: Transform + pos: 47.5,-4.5 + parent: 12 + - uid: 26782 + components: + - type: Transform + pos: 36.5,-33.5 + parent: 12 + - uid: 26785 + components: + - type: Transform + pos: 46.5,58.5 + parent: 12 + - uid: 26794 + components: + - type: Transform + pos: 34.5,-30.5 + parent: 12 + - uid: 26798 + components: + - type: Transform + pos: 16.5,-18.5 + parent: 12 - uid: 26830 components: - type: Transform @@ -196343,12 +196753,22 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,18.5 parent: 12 + - uid: 2739 + components: + - type: Transform + pos: 3.5,-21.5 + parent: 12 - uid: 3465 components: - type: Transform rot: -1.5707963267948966 rad pos: -8.5,-32.5 parent: 12 + - uid: 4701 + components: + - type: Transform + pos: -6.5,-16.5 + parent: 12 - uid: 5123 components: - type: Transform @@ -196361,24 +196781,12 @@ entities: rot: 1.5707963267948966 rad pos: -60.5,-21.5 parent: 12 - - uid: 6775 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 49.5,-2.5 - parent: 12 - uid: 7322 components: - type: Transform rot: 1.5707963267948966 rad pos: -0.5,18.5 parent: 12 - - uid: 7717 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 47.5,-4.5 - parent: 12 - uid: 7794 components: - type: Transform @@ -196396,6 +196804,16 @@ entities: - type: Transform pos: 47.5,-40.5 parent: 12 + - uid: 9174 + components: + - type: Transform + pos: -5.5,-18.5 + parent: 12 + - uid: 9178 + components: + - type: Transform + pos: 47.5,-3.5 + parent: 12 - uid: 9631 components: - type: Transform @@ -196747,16 +197165,16 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,63.5 parent: 12 - - uid: 21608 + - uid: 20776 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 10.5,64.5 + pos: 34.5,-31.5 parent: 12 - - uid: 22141 + - uid: 21608 components: - type: Transform - pos: 47.5,0.5 + rot: -1.5707963267948966 rad + pos: 10.5,64.5 parent: 12 - uid: 22145 components: @@ -196822,23 +197240,11 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,-33.5 parent: 12 - - uid: 24702 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 37.5,-33.5 - parent: 12 - uid: 24982 components: - type: Transform pos: -21.5,51.5 parent: 12 - - uid: 25027 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 36.5,-33.5 - parent: 12 - uid: 25035 components: - type: Transform @@ -196850,18 +197256,6 @@ entities: rot: 1.5707963267948966 rad pos: 33.5,-33.5 parent: 12 - - uid: 25101 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 33.5,-32.5 - parent: 12 - - uid: 25104 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 33.5,-30.5 - parent: 12 - uid: 25142 components: - type: Transform @@ -196970,11 +197364,21 @@ entities: rot: -1.5707963267948966 rad pos: 1.5,65.5 parent: 12 + - uid: 25934 + components: + - type: Transform + pos: -9.5,-16.5 + parent: 12 - uid: 26071 components: - type: Transform pos: 48.5,15.5 parent: 12 + - uid: 26153 + components: + - type: Transform + pos: -1.5,-19.5 + parent: 12 - uid: 26244 components: - type: Transform @@ -197010,6 +197414,16 @@ entities: - type: Transform pos: -51.5,-47.5 parent: 12 + - uid: 26425 + components: + - type: Transform + pos: 0.5,-19.5 + parent: 12 + - uid: 26434 + components: + - type: Transform + pos: 0.5,-18.5 + parent: 12 - uid: 26567 components: - type: Transform @@ -197020,11 +197434,47 @@ entities: - type: Transform pos: -24.5,-13.5 parent: 12 + - uid: 26678 + components: + - type: Transform + pos: -7.5,-17.5 + parent: 12 + - uid: 26697 + components: + - type: Transform + pos: 5.5,-18.5 + parent: 12 + - uid: 26706 + components: + - type: Transform + pos: 5.5,-21.5 + parent: 12 + - uid: 26716 + components: + - type: Transform + pos: -0.5,-21.5 + parent: 12 - uid: 26725 components: - type: Transform pos: -25.5,-12.5 parent: 12 + - uid: 26753 + components: + - type: Transform + pos: 48.5,-4.5 + parent: 12 + - uid: 26781 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 37.5,-33.5 + parent: 12 + - uid: 26788 + components: + - type: Transform + pos: -2.5,-21.5 + parent: 12 - uid: 26816 components: - type: Transform @@ -197852,15 +198302,15 @@ entities: - type: Transform pos: -7.5,19.5 parent: 12 - - uid: 23655 + - uid: 22107 components: - type: Transform - pos: 48.5,49.5 + pos: -2.5,-19.5 parent: 12 - - uid: 24225 + - uid: 23655 components: - type: Transform - pos: 46.5,59.5 + pos: 48.5,49.5 parent: 12 - uid: 25047 components: @@ -197882,15 +198332,15 @@ entities: - type: Transform pos: 58.5,52.5 parent: 12 - - uid: 27328 + - uid: 26795 components: - type: Transform - pos: -50.5,-19.5 + pos: 45.5,59.5 parent: 12 - - uid: 28652 + - uid: 27328 components: - type: Transform - pos: -3.5,-23.5 + pos: -50.5,-19.5 parent: 12 - uid: 28842 components: @@ -198161,6 +198611,13 @@ entities: - type: Transform pos: 8.550257,-23.095434 parent: 12 +- proto: WelderMini + entities: + - uid: 5875 + components: + - type: Transform + pos: -22.4267,53.76478 + parent: 12 - proto: WeldingFuelTankFull entities: - uid: 1765 @@ -198168,6 +198625,11 @@ entities: - type: Transform pos: -50.5,-32.5 parent: 12 + - uid: 2845 + components: + - type: Transform + pos: 45.5,58.5 + parent: 12 - uid: 4243 components: - type: Transform @@ -198238,11 +198700,6 @@ entities: - type: Transform pos: 46.5,-3.5 parent: 12 - - uid: 24224 - components: - - type: Transform - pos: 46.5,58.5 - parent: 12 - uid: 25044 components: - type: Transform @@ -198273,15 +198730,15 @@ entities: - type: Transform pos: 52.5,2.5 parent: 12 - - uid: 27846 + - uid: 26681 components: - type: Transform - pos: -15.5,69.5 + pos: -2.5,-20.5 parent: 12 - - uid: 28651 + - uid: 27846 components: - type: Transform - pos: -4.5,-23.5 + pos: -15.5,69.5 parent: 12 - uid: 28750 components: @@ -198310,11 +198767,6 @@ entities: parent: 12 - proto: WetFloorSign entities: - - uid: 2721 - components: - - type: Transform - pos: 36.92181,-30.370167 - parent: 12 - uid: 12247 components: - type: Transform @@ -198325,11 +198777,6 @@ entities: - type: Transform pos: 48.600037,20.622837 parent: 12 - - uid: 22158 - components: - - type: Transform - pos: 36.62012,-30.786295 - parent: 12 - uid: 25014 components: - type: Transform @@ -198392,16 +198839,6 @@ entities: - type: Transform pos: -38.5,-21.5 parent: 12 - - uid: 8833 - components: - - type: Transform - pos: 49.5,-29.5 - parent: 12 - - uid: 8928 - components: - - type: Transform - pos: 48.5,-29.5 - parent: 12 - uid: 12577 components: - type: Transform @@ -198839,6 +199276,12 @@ entities: parent: 12 - proto: Window entities: + - uid: 190 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 50.5,60.5 + parent: 12 - uid: 291 components: - type: Transform @@ -199003,24 +199446,18 @@ entities: rot: 3.141592653589793 rad pos: -1.5,19.5 parent: 12 - - uid: 4472 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 16.5,-18.5 - parent: 12 - - uid: 4473 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 17.5,-18.5 - parent: 12 - uid: 4702 components: - type: Transform rot: -1.5707963267948966 rad pos: -1.5,-37.5 parent: 12 + - uid: 5302 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 29.5,-15.5 + parent: 12 - uid: 7088 components: - type: Transform @@ -199099,6 +199536,11 @@ entities: rot: 1.5707963267948966 rad pos: -14.5,14.5 parent: 12 + - uid: 10617 + components: + - type: Transform + pos: 35.5,-29.5 + parent: 12 - uid: 10653 components: - type: Transform @@ -199139,12 +199581,6 @@ entities: - type: Transform pos: 48.5,17.5 parent: 12 - - uid: 11795 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 49.5,60.5 - parent: 12 - uid: 11824 components: - type: Transform @@ -199226,12 +199662,6 @@ entities: - type: Transform pos: -24.5,-61.5 parent: 12 - - uid: 12332 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 48.5,60.5 - parent: 12 - uid: 12524 components: - type: Transform @@ -199716,6 +200146,11 @@ entities: rot: -1.5707963267948966 rad pos: 55.5,-12.5 parent: 12 + - uid: 20782 + components: + - type: Transform + pos: 49.5,-2.5 + parent: 12 - uid: 22292 components: - type: Transform @@ -199953,30 +200388,6 @@ entities: rot: 3.141592653589793 rad pos: -8.5,-49.5 parent: 12 - - uid: 30340 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -24.5,54.5 - parent: 12 - - uid: 30341 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -25.5,54.5 - parent: 12 - - uid: 30342 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -24.5,54.5 - parent: 12 - - uid: 30343 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -24.5,53.5 - parent: 12 - uid: 30346 components: - type: Transform @@ -200803,11 +201214,6 @@ entities: rot: 3.141592653589793 rad pos: -52.5,37.5 parent: 12 - - uid: 21935 - components: - - type: Transform - pos: -25.5,56.5 - parent: 12 - uid: 21965 components: - type: Transform @@ -201056,17 +201462,11 @@ entities: - 31202 - proto: Wrench entities: - - uid: 5916 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 33.541794,-20.507181 - parent: 12 - uid: 5917 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 33.52617,-19.538431 + rot: -43.98229715025713 rad + pos: 33.474327,-18.568962 parent: 12 - uid: 7197 components: @@ -201080,6 +201480,13 @@ entities: rot: -50.265482457436725 rad pos: 46.516457,-16.390417 parent: 12 + - uid: 9541 + components: + - type: Transform + parent: 9298 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 12655 components: - type: Transform @@ -201106,12 +201513,6 @@ entities: - type: Transform pos: -23.775642,-15.327034 parent: 12 - - uid: 29302 - components: - - type: Transform - rot: -12.566370614359172 rad - pos: 9.636911,-13.368637 - parent: 12 - proto: Zipties entities: - uid: 13512 diff --git a/Resources/Maps/fland.yml b/Resources/Maps/fland.yml index c1534496c40089..b6ccea098677b1 100644 --- a/Resources/Maps/fland.yml +++ b/Resources/Maps/fland.yml @@ -50444,12 +50444,12 @@ entities: - uid: 30017 components: - type: Transform - pos: 97.5,49.5 + pos: 101.5,44.5 parent: 13329 - uid: 30018 components: - type: Transform - pos: 98.5,49.5 + pos: 101.5,45.5 parent: 13329 - uid: 30019 components: diff --git a/Resources/Prototypes/Entities/Clothing/Multiple/towel.yml b/Resources/Prototypes/Entities/Clothing/Multiple/towel.yml new file mode 100644 index 00000000000000..acd6f002d0e39c --- /dev/null +++ b/Resources/Prototypes/Entities/Clothing/Multiple/towel.yml @@ -0,0 +1,763 @@ +- type: entity + id: BaseTowel + name: base towel + abstract: true + description: If you want to survive out here, you gotta know where your towel is. + parent: [ UnsensoredClothingUniformBase, ClothingHeadBase, ClothingBeltBase ] + components: + - type: Sprite + sprite: Clothing/Multiple/towel.rsi + - type: Clothing + sprite: Clothing/Multiple/towel.rsi + slots: + - BELT + - INNERCLOTHING + - HEAD + femaleMask: UniformTop + equipSound: + unequipSound: + - type: Spillable + solution: absorbed + - type: Absorbent + pickupAmount: 15 + - type: SolutionContainerManager + solutions: + food: + maxVol: 30 + reagents: + - ReagentId: Fiber + Quantity: 30 + absorbed: + maxVol: 30 + - type: Fiber + fiberColor: fibers-white + - type: DnaSubstanceTrace + - type: Item + size: Small + +- type: entity + id: TowelColorWhite + name: white towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#EAE8E8" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#EAE8E8" + right: + - state: inhand-right + color: "#EAE8E8" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#EAE8E8" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#EAE8E8" + belt: + - state: equipped-BELT + color: "#EAE8E8" + - type: Fiber + fiberColor: fibers-white + +- type: entity + id: TowelColorPurple + name: purple towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#9C0DE1" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#9C0DE1" + right: + - state: inhand-right + color: "#9C0DE1" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#9C0DE1" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#9C0DE1" + belt: + - state: equipped-BELT + color: "#9C0DE1" + - type: Fiber + fiberColor: fibers-purple + +- type: entity + id: TowelColorRed + name: red towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#940000" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#940000" + right: + - state: inhand-right + color: "#940000" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#940000" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#940000" + belt: + - state: equipped-BELT + color: "#940000" + - type: Fiber + fiberColor: fibers-red + +- type: entity + id: TowelColorBlue + name: blue towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#0089EF" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#0089EF" + right: + - state: inhand-right + color: "#0089EF" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#0089EF" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#0089EF" + belt: + - state: equipped-BELT + color: "#0089EF" + - type: Fiber + fiberColor: fibers-blue + +- type: entity + id: TowelColorDarkBlue + name: dark blue towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#3285ba" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#3285ba" + right: + - state: inhand-right + color: "#3285ba" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#3285ba" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#3285ba" + belt: + - state: equipped-BELT + color: "#3285ba" + - type: Fiber + fiberColor: fibers-blue + +- type: entity + id: TowelColorLightBlue + name: light blue towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#58abcc" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#58abcc" + right: + - state: inhand-right + color: "#58abcc" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#58abcc" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#58abcc" + belt: + - state: equipped-BELT + color: "#58abcc" + - type: Fiber + fiberColor: fibers-blue + +- type: entity + id: TowelColorTeal + name: teal towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#3CB57C" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#3CB57C" + right: + - state: inhand-right + color: "#3CB57C" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#3CB57C" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#3CB57C" + belt: + - state: equipped-BELT + color: "#3CB57C" + - type: Fiber + fiberColor: fibers-teal + +- type: entity + id: TowelColorBrown + name: brown towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#723A02" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#723A02" + right: + - state: inhand-right + color: "#723A02" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#723A02" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#723A02" + belt: + - state: equipped-BELT + color: "#723A02" + - type: Fiber + fiberColor: fibers-brown + +- type: entity + id: TowelColorLightBrown + name: light brown towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#c59431" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#c59431" + right: + - state: inhand-right + color: "#c59431" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#c59431" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#c59431" + belt: + - state: equipped-BELT + color: "#c59431" + - type: Fiber + fiberColor: fibers-brown + +- type: entity + id: TowelColorGray + name: gray towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#999999" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#999999" + right: + - state: inhand-right + color: "#999999" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#999999" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#999999" + belt: + - state: equipped-BELT + color: "#999999" + - type: Fiber + fiberColor: fibers-grey + +- type: entity + id: TowelColorGreen + name: green towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#5ABF2F" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#5ABF2F" + right: + - state: inhand-right + color: "#5ABF2F" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#5ABF2F" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#5ABF2F" + belt: + - state: equipped-BELT + color: "#5ABF2F" + - type: Fiber + fiberColor: fibers-green + +- type: entity + id: TowelColorDarkGreen + name: dark green towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#79CC26" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#79CC26" + right: + - state: inhand-right + color: "#79CC26" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#79CC26" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#79CC26" + belt: + - state: equipped-BELT + color: "#79CC26" + - type: Fiber + fiberColor: fibers-green + +- type: entity + id: TowelColorGold + name: gold towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#F7C430" + - state: iconstripe + color: "#535353" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#F7C430" + right: + - state: inhand-right + color: "#F7C430" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#F7C430" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#F7C430" + belt: + - state: equipped-BELT + color: "#F7C430" + - type: Fiber + fiberColor: fibers-gold + +- type: entity + id: TowelColorOrange + name: orange towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#EF8100" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#EF8100" + right: + - state: inhand-right + color: "#EF8100" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#EF8100" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#EF8100" + belt: + - state: equipped-BELT + color: "#EF8100" + - type: Fiber + fiberColor: fibers-orange + +- type: entity + id: TowelColorBlack + name: black towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#535353" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#535353" + right: + - state: inhand-right + color: "#535353" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#535353" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#535353" + belt: + - state: equipped-BELT + color: "#535353" + - type: Fiber + fiberColor: fibers-black + +- type: entity + id: TowelColorPink + name: pink towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#ffa69b" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#ffa69b" + right: + - state: inhand-right + color: "#ffa69b" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#ffa69b" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#ffa69b" + belt: + - state: equipped-BELT + color: "#ffa69b" + - type: Fiber + fiberColor: fibers-pink + +- type: entity + id: TowelColorYellow + name: yellow towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#ffe14d" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#ffe14d" + right: + - state: inhand-right + color: "#ffe14d" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#ffe14d" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#ffe14d" + belt: + - state: equipped-BELT + color: "#ffe14d" + - type: Fiber + fiberColor: fibers-yellow + +- type: entity + id: TowelColorMaroon + name: maroon towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#cc295f" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#cc295f" + right: + - state: inhand-right + color: "#cc295f" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#cc295f" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#cc295f" + belt: + - state: equipped-BELT + color: "#cc295f" + - type: Fiber + fiberColor: fibers-maroon + +- type: entity + id: TowelColorSilver + name: silver towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#d0d0d0" + - state: iconstripe + color: "#F7C430" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#d0d0d0" + right: + - state: inhand-right + color: "#d0d0d0" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#d0d0d0" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#d0d0d0" + belt: + - state: equipped-BELT + color: "#d0d0d0" + - type: Fiber + fiberColor: fibers-silver + +- type: entity + id: TowelColorMime + name: silent towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#EAE8E8" + - state: iconstripe + color: "#535353" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#EAE8E8" + right: + - state: inhand-right + color: "#EAE8E8" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#EAE8E8" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#EAE8E8" + belt: + - state: equipped-BELT + color: "#EAE8E8" + - type: Fiber + fiberColor: fibers-white + +- type: entity + id: TowelColorNT + name: NanoTrasen brand towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#004787" + - state: iconstripe + color: "#EAE8E8" + - state: NTmono + color: "#EAE8E8" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#004787" + right: + - state: inhand-right + color: "#004787" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#004787" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#004787" + belt: + - state: equipped-BELT + color: "#004787" + - type: Fiber + fiberColor: fibers-regal-blue + +- type: entity + id: TowelColorCentcom + name: centcom towel + parent: BaseTowel + components: + - type: Sprite + layers: + - state: icon + color: "#29722e" + - state: iconstripe + color: "#F7C430" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#29722e" + right: + - state: inhand-right + color: "#29722e" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#29722e" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#29722e" + belt: + - state: equipped-BELT + color: "#29722e" + - type: Fiber + fiberColor: fibers-green + +- type: entity + id: TowelColorSyndicate + name: syndicate towel + parent: [ BaseTowel ] + components: + - type: Sprite + layers: + - state: icon + color: "#535353" + - state: iconstripe + color: "#940000" + - type: Item + inhandVisuals: + left: + - state: inhand-left + color: "#535353" + right: + - state: inhand-right + color: "#535353" + - type: Clothing + clothingVisuals: + head: + - state: equipped-HELMET + color: "#535353" + jumpsuit: + - state: equipped-INNERCLOTHING + color: "#535353" + belt: + - state: equipped-BELT + color: "#535353" + - type: Fiber + fiberColor: fibers-black diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml index af2e498f9efc57..d08c9405038f51 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml @@ -207,6 +207,8 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepSpurs + params: + variation: 0.09 - type: entity parent: ClothingShoesBootsCowboyBrown diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml b/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml index 26c1e9e102f836..801221a88c4cae 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml @@ -40,6 +40,8 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepClown + params: + variation: 0.17 # for H.O.N.K. construction - type: Tag tags: @@ -59,6 +61,8 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepSlip + params: + variation: 0.10 - type: Construction graph: BananaClownShoes node: shoes @@ -79,6 +83,8 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepClown + params: + variation: 0.17 - type: PointLight enabled: true radius: 3 @@ -273,6 +279,8 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepJester + params: + variation: 0.07 - type: entity parent: ClothingShoesClown @@ -333,3 +341,5 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepSkates + params: + variation: 0.08 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml index 3ea767c5988335..17b07142daa981 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml @@ -316,6 +316,8 @@ - id: DrinkBankateJarFull prob: 0.20 #SS220 Maint-Drinks End + - id: DrinkMopwataBottleRandom + - id: SpectralLocator - id: LidSalami weight: 0.05 diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml index 1a7f4799fa2b1c..89ea62aac87de6 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml @@ -1405,8 +1405,7 @@ components: # make the player a traitor once its taken - type: AutoTraitor - giveUplink: false - giveObjectives: false + profile: TraitorReinforcement - type: entity id: MobMonkeySyndicateAgentNukeops # Reinforcement exclusive to nukeops uplink @@ -1430,11 +1429,14 @@ - type: Speech speechSounds: Lizard speechVerb: Reptilian + allowedEmotes: ['Thump'] - type: Vocal sounds: Male: MaleReptilian Female: FemaleReptilian Unsexed: MaleReptilian + - type: BodyEmotes + soundsId: ReptilianBodyEmotes - type: TypingIndicator proto: lizard - type: InteractionPopup @@ -1564,8 +1566,7 @@ components: # make the player a traitor once its taken - type: AutoTraitor - giveUplink: false - giveObjectives: false + profile: TraitorReinforcement - type: entity id: MobKoboldSyndicateAgentNukeops # Reinforcement exclusive to nukeops uplink diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml b/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml index 60ce8ec6c863d0..960c95f9e72f38 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml @@ -811,6 +811,7 @@ name: ghost-role-information-smile-name description: ghost-role-information-smile-description rules: ghost-role-information-nonantagonist-rules + raffle: null - type: Grammar attributes: proper: true diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml b/Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml index 99782f1bd4a05d..921020aa6667d9 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml @@ -8,6 +8,7 @@ components: - type: Input context: "ghost" + - type: Spectral - type: MovementSpeedModifier baseWalkSpeed: 6 baseSprintSpeed: 6 diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml index 67693a830ef826..ab3edde3c57214 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml @@ -167,6 +167,8 @@ maxInterval: 12 sound: collection: BikeHorn + params: + variation: 0.125 - type: Sprite sprite: Mobs/Silicon/Bots/honkbot.rsi state: honkbot @@ -211,6 +213,8 @@ interactFailureString: petting-failure-honkbot interactSuccessSound: path: /Audio/Items/bikehorn.ogg + params: + variation: 0.125 - type: entity parent: MobHonkBot @@ -221,6 +225,8 @@ - type: SpamEmitSound sound: collection: CluwneHorn + params: + variation: 0.125 - type: Sprite state: jonkbot - type: Construction @@ -236,6 +242,8 @@ - type: InteractionPopup interactSuccessSound: path: /Audio/Items/brokenbikehorn.ogg + params: + variation: 0.125 - type: Vocal sounds: Unsexed: Cluwne diff --git a/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml b/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml index 9f181ec44653d7..f12201626bf976 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml @@ -1,5 +1,5 @@ - type: entity - parent: [MobObserver, InventoryBase] + parent: [MobObserverBase, InventoryBase] id: AdminObserver name: admin observer categories: [ HideSpawnMenu ] diff --git a/Resources/Prototypes/Entities/Mobs/Player/human.yml b/Resources/Prototypes/Entities/Mobs/Player/human.yml index 704a1f5eb7d6e4..ce01159a057a13 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/human.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/human.yml @@ -31,8 +31,7 @@ components: # make the player a traitor once its taken - type: AutoTraitor - giveUplink: false - giveObjectives: false + profile: TraitorReinforcement - type: entity parent: MobHumanSyndicateAgent diff --git a/Resources/Prototypes/Entities/Mobs/Player/observer.yml b/Resources/Prototypes/Entities/Mobs/Player/observer.yml index 047739cf6179f0..299d341e35bd0b 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/observer.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/observer.yml @@ -28,11 +28,13 @@ layer: - GhostImpassable +# shared parent between aghosts, replay spectators and normal observers - type: entity parent: - Incorporeal - BaseMob - id: MobObserver + id: MobObserverBase + abstract: true name: observer description: Boo! categories: [ HideSpawnMenu ] @@ -71,6 +73,13 @@ tags: - BypassInteractionRangeChecks +# proto for player ghosts specifically +- type: entity + parent: MobObserverBase + id: MobObserver + components: + - type: Spectral + - type: entity id: ActionGhostBoo name: Boo! diff --git a/Resources/Prototypes/Entities/Mobs/Player/replay_observer.yml b/Resources/Prototypes/Entities/Mobs/Player/replay_observer.yml index ffbc46e94c3380..8a01de40809c11 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/replay_observer.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/replay_observer.yml @@ -1,5 +1,5 @@ - type: entity - parent: MobObserver + parent: MobObserverBase id: ReplayObserver categories: [ HideSpawnMenu ] save: false diff --git a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml index 70736a7ecd5f9b..9776291139de9e 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml @@ -241,6 +241,7 @@ state: std_mod - type: SiliconLawProvider laws: AntimovLawset + lawUploadSound: /Audio/Ambience/Antag/silicon_lawboard_antimov.ogg - type: entity id: NutimovCircuitBoard diff --git a/Resources/Prototypes/Entities/Mobs/Species/reptilian.yml b/Resources/Prototypes/Entities/Mobs/Species/reptilian.yml index 067c98c94b2b2a..4e3e7515219c8a 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/reptilian.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/reptilian.yml @@ -30,7 +30,7 @@ - type: Speech speechSounds: Lizard speechVerb: Reptilian - allowedEmotes: ['Hiss', 'Growl'] # 220 emotesMenuFix + allowedEmotes: ['Thump', 'Hiss', 'Growl'] # 220 emotesMenuFix - type: TypingIndicator proto: lizard - type: Vocal @@ -38,6 +38,8 @@ Male: MaleReptilian Female: FemaleReptilian Unsexed: MaleReptilian + - type: BodyEmotes + soundsId: ReptilianBodyEmotes - type: Damageable damageContainer: Biological damageModifierSet: Scale diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml index fea4546f89faac..241f8bf227466d 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml @@ -135,6 +135,10 @@ Quantity: 5 - ReagentId: Vitamin Quantity: 5 + - type: Tag + tags: + - Cake + - Vegetable - type: entity name: slice of carrot cake @@ -155,6 +159,11 @@ Quantity: 1 - ReagentId: Vitamin Quantity: 1 + - type: Tag + tags: + - Cake + - Vegetable + - Slice # Tastes like sweetness, cake, carrot. @@ -168,7 +177,10 @@ state: brain - type: SliceableFood slice: FoodCakeBrainSlice - + - type: Tag + tags: + - Cake + - Meat - type: entity name: slice of brain cake @@ -178,6 +190,11 @@ components: - type: Sprite state: brain-slice + - type: Tag + tags: + - Cake + - Meat + - Slice # Tastes like sweetness, cake, brains. - type: entity @@ -429,6 +446,10 @@ state: slime - type: SliceableFood slice: FoodCakeSlimeSlice + - type: Tag + tags: + - Cake + - Meat - type: entity name: slice of slime cake @@ -438,6 +459,11 @@ components: - type: Sprite state: slime-slice + - type: Tag + tags: + - Cake + - Meat + - Slice # Tastes like sweetness, cake, slime. - type: entity @@ -498,6 +524,10 @@ state: christmas - type: SliceableFood slice: FoodCakeChristmasSlice + - type: Tag + tags: + - Cake + - Fruit - type: entity name: slice of christmas cake @@ -506,6 +536,11 @@ components: - type: Sprite state: christmas-slice + - type: Tag + tags: + - Cake + - Fruit + - Slice # Tastes like sweetness, cake, christmas. - type: entity @@ -634,7 +669,7 @@ Quantity: 20 - ReagentId: Vitamin Quantity: 5 - - ReagentId: Omnizine #This is a really rare cake with healing stuff and we don't have any of its chems yet + - ReagentId: PolypyryliumOligomers Quantity: 15 - type: entity @@ -654,7 +689,7 @@ Quantity: 4 - ReagentId: Vitamin Quantity: 1 - - ReagentId: Omnizine + - ReagentId: PolypyryliumOligomers Quantity: 3 # Tastes like sweetness, cake, jam. diff --git a/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_percussion.yml b/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_percussion.yml index aa43605bfe8bb6..f0b1d74ad67c4f 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_percussion.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/Instruments/instruments_percussion.yml @@ -54,6 +54,7 @@ instrumentList: "Aah": {52: 0} "Ooh": {53: 0} + "Kweh": {4: 1} - type: Sprite sprite: Objects/Fun/Instruments/microphone.rsi state: icon diff --git a/Resources/Prototypes/Entities/Objects/Fun/spectral_locator.yml b/Resources/Prototypes/Entities/Objects/Fun/spectral_locator.yml new file mode 100644 index 00000000000000..930b9c4926d1da --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Fun/spectral_locator.yml @@ -0,0 +1,58 @@ +- type: entity + id: SpectralLocatorUnpowered + parent: BaseItem + name: spectral locator + description: Appears to be a modified anomaly locator. Seems very old. + suffix: Unpowered + components: + - type: Sprite + sprite: Objects/Fun/spectrallocator.rsi + layers: + - state: icon + - state: screen + shader: unshaded + visible: false + map: ["enum.ToggleVisuals.Layer"] + - type: Appearance + - type: GenericVisualizer + visuals: + enum.ToggleVisuals.Toggled: + enum.ToggleVisuals.Layer: + True: { visible: true } + False: { visible: false } + - type: ItemToggle + - type: ProximityBeeper + - type: ProximityDetector + range: 12 + criteria: + components: + - Spectral # reacts to AI eye, intentional + - type: Beeper + isMuted: true + minBeepInterval: 0.25 + maxBeepInterval: 0.5 + beepSound: + path: "/Audio/Items/locator_beep.ogg" + params: + maxDistance: 1 + volume: -8 + +- type: entity + id: SpectralLocator + parent: [ SpectralLocatorUnpowered, PowerCellSlotSmallItem ] + suffix: Powered + components: + - type: PowerCellDraw + drawRate: 1 + useRate: 0 + - type: ToggleCellDraw + +- type: entity + id: SpectralLocatorEmpty + parent: SpectralLocator + suffix: Empty + components: + - type: ItemSlots + slots: + cell_slot: + name: power-cell-slot-component-slot-name-default diff --git a/Resources/Prototypes/Entities/Objects/Specific/Mech/mechs.yml b/Resources/Prototypes/Entities/Objects/Specific/Mech/mechs.yml index 1fbde27e71b0e1..4c4e44c28cd29e 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Mech/mechs.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Mech/mechs.yml @@ -167,6 +167,8 @@ - type: FootstepModifier footstepSoundCollection: collection: FootstepClown + params: + variation: 0.17 - type: Mech baseState: honker openState: honker-open diff --git a/Resources/Prototypes/Entities/Objects/Specific/Medical/surgery.yml b/Resources/Prototypes/Entities/Objects/Specific/Medical/surgery.yml index cebcf4522c0d28..9f92f4fdab5cd5 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Medical/surgery.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Medical/surgery.yml @@ -68,6 +68,10 @@ components: - type: Sharp butcherDelayModifier: 1.5 # Butchering with a scalpel, regardless of the type, will take 50% longer + - type: Tool + qualities: + - Slicing + speedModifier: 0.66 # pretend the sixes go on forever :) - type: Utensil types: - Knife diff --git a/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml b/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml index 9baca8b4b6b2bf..e961cf94d3c8d4 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml @@ -60,6 +60,8 @@ collection: Keyboard params: volume: -1 + variation: 0.10 + pitch: 1.10 # low pitch keyboard sounds feel kinda weird - type: ContainerContainer containers: board: !type:Container diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index 39597d7ccb4d5c..14ac963c1a9b54 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -203,11 +203,9 @@ - WetFloorSign - ClothingHeadHatCone - FreezerElectronics - - Flare - type: EmagLatheRecipes emagStaticRecipes: - BoxLethalshot - - BoxShotgunFlare - BoxShotgunSlug - CombatKnife - MagazineBoxLightRifle @@ -755,7 +753,6 @@ runningState: icon staticRecipes: - BoxLethalshot - - BoxShotgunFlare - BoxShotgunPractice - BoxShotgunSlug - ClothingEyesHudSecurity @@ -891,7 +888,6 @@ runningState: icon staticRecipes: - BoxLethalshot - - BoxShotgunFlare - BoxShotgunSlug # - BoxShellTranquilizer - MagazineBoxLightRifle @@ -1242,8 +1238,6 @@ - type: Machine board: BiogeneratorMachineCircuitboard - type: MaterialStorage - insertOnInteract: false - canEjectStoredMaterials: false - type: ProduceMaterialExtractor - type: ItemSlots slots: diff --git a/Resources/Prototypes/Entities/Structures/hydro_tray.yml b/Resources/Prototypes/Entities/Structures/hydro_tray.yml index 689444715f5d40..e6c8b77f001af1 100644 --- a/Resources/Prototypes/Entities/Structures/hydro_tray.yml +++ b/Resources/Prototypes/Entities/Structures/hydro_tray.yml @@ -67,6 +67,11 @@ False: { visible: false } - type: PlantHolder drawWarnings: true + wateringSound: + path: /Audio/Effects/Fluids/slosh.ogg + params: + volume: -6 + variation: 0.20 - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/GameRules/events.yml b/Resources/Prototypes/GameRules/events.yml index d83bc9dffab3e8..e9ee09d8f97bc3 100644 --- a/Resources/Prototypes/GameRules/events.yml +++ b/Resources/Prototypes/GameRules/events.yml @@ -463,6 +463,11 @@ - type: ZombifyOnDeath - type: IncurableZombie - type: InitialInfected + # Corvax-MRP + - type: NpcFactionMember + addFriendlyFactions: + - Zombie + # Corvax mindRoles: - MindRoleInitialInfected diff --git a/Resources/Prototypes/GameRules/roundstart.yml b/Resources/Prototypes/GameRules/roundstart.yml index 9c863272d24630..1493c70ae41306 100644 --- a/Resources/Prototypes/GameRules/roundstart.yml +++ b/Resources/Prototypes/GameRules/roundstart.yml @@ -207,6 +207,19 @@ # components: # - type: SandboxRule +- type: entity + id: TraitorReinforcement + parent: Traitor + components: + - type: TraitorRule + giveUplink: false + giveCodewords: false # It would actually give them a different set of codewords than the regular traitors, anyway + giveBriefing: false + #ss220 reinforcement objective fix begin + - type: AntagRandomObjectives + enabled: false + #ss220 reinforcement objective fix end + - type: entity id: Revolutionary parent: BaseGameRule @@ -264,6 +277,11 @@ - type: ZombifyOnDeath - type: IncurableZombie - type: InitialInfected + # Corvax-MRP + - type: NpcFactionMember + addFriendlyFactions: + - Zombie + # Corvax mindRoles: - MindRoleInitialInfected diff --git a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml index 14c1174a7d06d7..78b5f0bc9ea179 100644 --- a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml +++ b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml @@ -155,3 +155,193 @@ storage: back: - ClothingNeckGoldAutismPin + +# Towels +- type: loadout + id: TowelColorWhite + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:OverallPlaytimeRequirement + time: 36000 # 10hr + storage: + back: + - TowelColorWhite + +- type: loadout + id: TowelColorSilver + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:OverallPlaytimeRequirement + time: 1800000 # 500hr + storage: + back: + - TowelColorSilver + +- type: loadout + id: TowelColorGold + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:OverallPlaytimeRequirement + time: 3600000 # 1000hr + storage: + back: + - TowelColorGold + +- type: loadout + id: TowelColorLightBrown + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Cargo + time: 360000 # 100hr + storage: + back: + - TowelColorLightBrown + +- type: loadout + id: TowelColorGreen + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Civilian + time: 360000 # 100hr + storage: + back: + - TowelColorGreen + +- type: loadout + id: TowelColorDarkBlue + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Command + time: 360000 # 100hr + storage: + back: + - TowelColorDarkBlue + +- type: loadout + id: TowelColorOrange + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Engineering + time: 360000 # 100hr + storage: + back: + - TowelColorOrange + +- type: loadout + id: TowelColorLightBlue + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Medical + time: 360000 # 100hr + storage: + back: + - TowelColorLightBlue + +- type: loadout + id: TowelColorPurple + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Science + time: 360000 # 100hr + storage: + back: + - TowelColorPurple + +- type: loadout + id: TowelColorRed + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Security + time: 360000 # 100hr + storage: + back: + - TowelColorRed + +- type: loadout + id: TowelColorGray + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobPassenger + time: 360000 # 100hr + storage: + back: + - TowelColorGray + +- type: loadout + id: TowelColorBlack + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobChaplain + time: 360000 # 100hr + storage: + back: + - TowelColorBlack + +- type: loadout + id: TowelColorDarkGreen + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobLibrarian + time: 360000 # 100hr + storage: + back: + - TowelColorDarkGreen + +- type: loadout + id: TowelColorMaroon + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobLawyer + time: 360000 # 100hr + storage: + back: + - TowelColorMaroon + +- type: loadout + id: TowelColorYellow + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobClown + time: 360000 # 100hr + storage: + back: + - TowelColorYellow + +- type: loadout + id: TowelColorMime + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobMime + time: 360000 # 100hr + storage: + back: + - TowelColorMime \ No newline at end of file diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 7601e7952fce1f..2680f60e62038d 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -28,6 +28,25 @@ - ClothingNeckTransPin - ClothingNeckAutismPin - ClothingNeckGoldAutismPin + - TowelColorBlack + - TowelColorWhite + # SS220 Too many towels begin +# - TowelColorDarkBlue +# - TowelColorDarkGreen +# - TowelColorGold +# - TowelColorGray +# - TowelColorGreen +# - TowelColorLightBlue +# - TowelColorLightBrown +# - TowelColorMaroon +# - TowelColorMime +# - TowelColorOrange +# - TowelColorPurple +# - TowelColorRed +# - TowelColorSilver +# - TowelColorLightBlue +# - TowelColorYellow + # SS220 Too many towels begin end # SS220 Hand/FootWraps begin - ClothingHandWraps - ClothingFootWraps diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml index 028a75927d0d4c..98d6d7939eaf56 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml @@ -21,6 +21,7 @@ weight: 10 startingGear: QuartermasterGear icon: "JobIconQuarterMaster" + requireAdminNotify: true supervisors: job-supervisors-captain access: - Cargo diff --git a/Resources/Prototypes/Voice/speech_emote_sounds.yml b/Resources/Prototypes/Voice/speech_emote_sounds.yml index 4cf6f29449bf5d..a9065f438651b8 100644 --- a/Resources/Prototypes/Voice/speech_emote_sounds.yml +++ b/Resources/Prototypes/Voice/speech_emote_sounds.yml @@ -569,6 +569,22 @@ path: /Audio/Voice/Diona/diona_salute.ogg params: volume: -5 + +- type: emoteSounds + id: ReptilianBodyEmotes + sounds: + Thump: + path: /Audio/Voice/Reptilian/reptilian_tailthump.ogg + params: + variation: 0.125 + Clap: + collection: Claps + Snap: + collection: Snaps + params: + volume: -6 + Salute: + collection: Salutes # mobs - type: emoteSounds diff --git a/Resources/Prototypes/Voice/speech_emotes.yml b/Resources/Prototypes/Voice/speech_emotes.yml index d9750040a81965..1b6a650693b899 100644 --- a/Resources/Prototypes/Voice/speech_emotes.yml +++ b/Resources/Prototypes/Voice/speech_emotes.yml @@ -326,6 +326,31 @@ - щёлкнула пальцами # Corvax-Localization-End +- type: emote + id: Thump + name: chat-emote-name-thump + category: Hands + available: false + icon: Interface/Emotes/tailslap.png + whitelist: + components: + - Hands + blacklist: + components: + - BorgChassis + chatMessages: ["chat-emote-msg-thump"] + chatTriggers: + - thump + - thumps + - thumping + - thumped + - thump tail + - thumps tail + - thumps their tail + - thumps her tail + - thumps his tail + - thumps its tail + - type: emote id: Salute name: chat-emote-name-salute diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/NTmono.png b/Resources/Textures/Clothing/Multiple/towel.rsi/NTmono.png new file mode 100644 index 00000000000000..e293a0e7e9e23e Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/NTmono.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-BELT.png b/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-BELT.png new file mode 100644 index 00000000000000..6ccb1f26ae0a03 Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-BELT.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-HELMET.png new file mode 100644 index 00000000000000..769f67b9a0ccf9 Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-HELMET.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 00000000000000..6105c8aba12f30 Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/equipped-INNERCLOTHING.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/icon.png b/Resources/Textures/Clothing/Multiple/towel.rsi/icon.png new file mode 100644 index 00000000000000..c5c73e1060da3f Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/iconstripe.png b/Resources/Textures/Clothing/Multiple/towel.rsi/iconstripe.png new file mode 100644 index 00000000000000..334d3f3531e97b Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/iconstripe.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/inhand-left.png b/Resources/Textures/Clothing/Multiple/towel.rsi/inhand-left.png new file mode 100644 index 00000000000000..4c8b4428ae6d16 Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/inhand-right.png b/Resources/Textures/Clothing/Multiple/towel.rsi/inhand-right.png new file mode 100644 index 00000000000000..7ef955ba5f843e Binary files /dev/null and b/Resources/Textures/Clothing/Multiple/towel.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Multiple/towel.rsi/meta.json b/Resources/Textures/Clothing/Multiple/towel.rsi/meta.json new file mode 100644 index 00000000000000..95acda0af39828 --- /dev/null +++ b/Resources/Textures/Clothing/Multiple/towel.rsi/meta.json @@ -0,0 +1,40 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from Baystation12 at commit https://github.com/Baystation12/Baystation12/commit/c5dc6953e6e1fde87c2ded60038144f1d21fbd48", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "iconstripe" + }, + { + "name": "NTmono" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "equipped-BELT", + "directions": 4 + }, + { + "name": "equipped-HELMET", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Interface/Emotes/attributions.yml b/Resources/Textures/Interface/Emotes/attributions.yml index 4cb2faa076e794..55cb19a9d7cf53 100644 --- a/Resources/Textures/Interface/Emotes/attributions.yml +++ b/Resources/Textures/Interface/Emotes/attributions.yml @@ -120,3 +120,8 @@ license: "CC-BY-SA-3.0" copyright: "Created by Sarahon" source: "https://github.com/Sarahon" + +- files: ["tailslap.png"] + license: "CC-BY-SA-3.0" + copyright: "Created by Sarahon" + source: "https://github.com/Sarahon" diff --git a/Resources/Textures/Interface/Emotes/tailslap.png b/Resources/Textures/Interface/Emotes/tailslap.png new file mode 100644 index 00000000000000..75405a67bab223 Binary files /dev/null and b/Resources/Textures/Interface/Emotes/tailslap.png differ diff --git a/Resources/Textures/Objects/Fun/spectrallocator.rsi/icon.png b/Resources/Textures/Objects/Fun/spectrallocator.rsi/icon.png new file mode 100644 index 00000000000000..b18dfd1c29475a Binary files /dev/null and b/Resources/Textures/Objects/Fun/spectrallocator.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Fun/spectrallocator.rsi/inhand-left.png b/Resources/Textures/Objects/Fun/spectrallocator.rsi/inhand-left.png new file mode 100644 index 00000000000000..cb25c6e3cf2ade Binary files /dev/null and b/Resources/Textures/Objects/Fun/spectrallocator.rsi/inhand-left.png differ diff --git a/Resources/Textures/Objects/Fun/spectrallocator.rsi/inhand-right.png b/Resources/Textures/Objects/Fun/spectrallocator.rsi/inhand-right.png new file mode 100644 index 00000000000000..7c34512cb66680 Binary files /dev/null and b/Resources/Textures/Objects/Fun/spectrallocator.rsi/inhand-right.png differ diff --git a/Resources/Textures/Objects/Fun/spectrallocator.rsi/meta.json b/Resources/Textures/Objects/Fun/spectrallocator.rsi/meta.json new file mode 100644 index 00000000000000..1556cd4eb9f5a6 --- /dev/null +++ b/Resources/Textures/Objects/Fun/spectrallocator.rsi/meta.json @@ -0,0 +1,33 @@ +{ + "version": 1, + "license": "CC0-1.0", + "copyright": "Originally created by EmoGarbage404 (github) for Space Station 14, modified by Ilya246 (github) for Space Station 14.", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "screen", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + } + ] +} diff --git a/Resources/Textures/Objects/Fun/spectrallocator.rsi/screen.png b/Resources/Textures/Objects/Fun/spectrallocator.rsi/screen.png new file mode 100644 index 00000000000000..eb4ab6bbbecce4 Binary files /dev/null and b/Resources/Textures/Objects/Fun/spectrallocator.rsi/screen.png differ diff --git a/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json b/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json index f6e29241b62c75..38184d76882247 100644 --- a/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json +++ b/Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b. poster1_legit, poster3_contraband, poster3_legit, poster4_contraband, poster4_legit, poster5_contraband, poster5_legit, poster6_contraband, poster6_legit, poster7_contraband, poster7_legit, poster8_contraband, poster8_legit, poster9_contraband, poster9_legit, poster10_legit, poster11_legit, poster12_legit, poster13_legit, poster14_contraband, poster15_legit, poster16_contraband, poster16_legit, poster17_legit, poster19_legit, poster20_contraband, poster20_legit, poster21_contraband, poster21_legit, poster22_contraband, poster22_legit, poster23_contraband, poster23_legit, poster24_legit, poster25_contraband, poster26_legit, poster28_legit, poster29_contraband, poster29_legit, poster30_contraband, poster31_contraband, poster31_legit, poster32_contraband, poster32_legit, poster33_contraband, poster33_legit, poster34_legit, poster35_contraband, poster36_legit, poster37_legit, poster39_legit, poster43_contraband, poster44_contraband, poster46_contraband, poster48_contraband, poster50_legit, poster51_legit, poster53_contraband, poster55_contraband, poster56_contraband, poster59_contraband, poster60_contraband, poster63_contraband edited and localised by github:lapatison, poster52_legit by SlamBamActionman", + "copyright": "Taken from at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b. poster52_contraband, poster53_contraband and poster54_contraband taken from https://github.com/vgstation-coders/vgstation13/blob/435ed5f2a7926e91cc31abac3a0d47d7e9ad7ed4/icons/obj/posters.dmi. originmap, poster55_contraband, poster56_contraband, poster57_contraband and poster39_legit by discord brainfood#7460, poster63_contraband by discord foboscheshir_, poster52_legit by SlamBamActionman. poster1_legit, poster3_contraband, poster3_legit, poster4_contraband, poster4_legit, poster5_contraband, poster5_legit, poster6_contraband, poster6_legit, poster7_contraband, poster7_legit, poster8_contraband, poster8_legit, poster9_contraband, poster9_legit, poster10_legit, poster11_legit, poster12_legit, poster13_legit, poster14_contraband, poster15_legit, poster16_contraband, poster16_legit, poster17_legit, poster19_legit, poster20_contraband, poster20_legit, poster21_contraband, poster21_legit, poster22_contraband, poster22_legit, poster23_contraband, poster23_legit, poster24_legit, poster25_contraband, poster26_legit, poster28_legit, poster29_contraband, poster29_legit, poster30_contraband, poster31_contraband, poster31_legit, poster32_contraband, poster32_legit, poster33_contraband, poster33_legit, poster34_legit, poster35_contraband, poster36_legit, poster37_legit, poster39_legit, poster43_contraband, poster44_contraband, poster46_contraband, poster48_contraband, poster50_legit, poster51_legit, poster53_contraband, poster55_contraband, poster56_contraband, poster59_contraband, poster60_contraband, poster63_contraband edited and localised by github:lapatison", "size": { "x": 32, "y": 32 diff --git a/RobustToolbox b/RobustToolbox index d1d43f834b8845..32bca7cfd417ed 160000 --- a/RobustToolbox +++ b/RobustToolbox @@ -1 +1 @@ -Subproject commit d1d43f834b8845da698ef1898e8191ab159ee367 +Subproject commit 32bca7cfd417edcad9a60c2b1703eba8675f56af